Obsah:
- Krok 1: Hardvér
- Krok 2: Kalibrácia
- Krok 3: Zostavenie
- Krok 4: Blynk
- Krok 5: Softvér
- Krok 6: Budúce kroky
Video: PlotClock, WeMos a Blynk hrajú Vintage AMI Jukebox: 6 krokov (s obrázkami)
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 11:55
Tento projekt umožnili štyri technické inovácie: 1977 Rowe AMI Jukebox, súprava robotického ramena PlotClock, mikrokontrolér WeMos/ESP 8266 a služba Blynk App/Cloud.
POZNÁMKA: Ak nemáte Jukebox po ruke - neprestávajte čítať! Tento projekt sa dá ľahko prijať na ovládanie rôznych vecí ovládaných ľudskými prstami. Jedným z príkladov môže byť robotický prst hrajúci tradičný xylofón - možno ten pokyn pochádza od vás!
Môj 40-ročný Jukebox Rowe AMI R-81 stále dobre funguje pri hraní historických vinylových singlov zo 60., 70. a 80. rokov. S hmotnosťou viac ako 160 kg (360 libier) nie je tento prehrávač tak prenosný ako moderné mp-prehrávače, ale v dobe internetu je teraz možné nosiť jukebox a 200 vinylových platní vo vrecku-samozrejme! A dokonca môžete použiť svoje vlastné zoznamy skladieb uložené v mikrokontroléri!
Úžasný robot PlotClock bol pôvodne navrhnutý tak, aby ukazoval aktuálny čas kreslením číslic času na vymazateľnú dosku. Mojou adaptáciou pre PlotClock je použiť ho ako robotický prst na stlačenie tlačidiel výberu piesne Jukebox.
„Prst“Plotclock poháňa 3 servá ovládané mikrokontrolérom WeMos. Tento zázrak je (takmer) kompatibilný s Arduino Uno a má možnosti WiFi, takže je možné jukebox ovládať bezdrôtovo odkiaľkoľvek na svete.
Krém na torte pochádza z neuveriteľne ľahko použiteľnej aplikácie Blynk a ich servera Blynk Cloud Server, ktoré poskytujú pekné používateľské rozhranie mobilného telefónu/tabletu s plnou mobilitou.
Krok 1: Hardvér
Jukebox
Jukebox projektu je 1977 Rowe AMI R-81. Postačí akýkoľvek starý jukebox s tlačidlami výberu - pričom si povšimnite niekoľkých obmedzení zo strany PlotClock: Pôvodný dizajn ramien PlotClock môže pokrývať plochu asi 5 x 12 cm, takže rozloženie tlačidiel jukeboxu (oblasť vrátane všetkých tlačidiel výberu) musí mať približne túto veľkosť. Tlačidlá starších jukeboxov môžu potrebovať väčšiu tlačnú silu, ako môžu poskytovať servá PlotClock.
AMI R-81 má pamäť, kde je možné uložiť všetkých 200 výberov. Výbery sa prehrávajú podľa poradia, v ktorom sú uložené v záznamovom časopise (typ kolotoča), nie podľa poradia, v ktorom sú vybrané. Viacnásobný výber pre jeden záznam sa prehrá iba raz.
PlotClock
Plotclock je komerčne dostupná sada pre domácich majstrov, ktorá obsahuje mechanické diely, 3 servá, Arduino Uno R3, rozširujúcu dosku Arduino a kábel USB. Za približne 30 USD je to dobrý nákup (napr. Banggood.com). Arduino, rozširujúca doska a kábel USB sa na tento projekt nepoužívajú.
Existuje niekoľko dobrých návodov pre internet/YouTube na zostavenie grafu PTC - napr. toto: Pokyny pre PlotClock
static1.squarespace.com/static/52cb189ee4b012ff9269fa8e/t/5526946be4b0ed8e0b3cd296/1428591723698/plotclock_final_instructions.pdf
WeMos
WeMos D1 R2 je mikrokontrolér na báze ESP8266. Dá sa naprogramovať pomocou Arduino IDE a má možnosti WiFi, takže je to perfektný hardvér pre tento projekt.
Krok 2: Kalibrácia
Kalibrácia je úlohou nájsť presné hodnoty uhlov pre servo uhly (od 0 do 180 stupňov) zodpovedajúce fyzickým polohám pre tlačidlá výberu. Hodnoty uhlov je možné nájsť pomocou trigonometrickej aritemity alebo pomocou softvéru CAD. Približné hodnoty som dostal od svojho priateľa, ktorý vedel, ako používať AutoCad.
Konečná kalibrácia však musela byť vykonaná pokusom a omylom. Použitie rozloženia tlačidiel nakresleného na kus papiera Na zistenie správnych hodnôt uhlov je možné vykonať „testovanie pracovnej plochy“.
Krok 3: Zostavenie
Elektrické vedenie
Pripojenie zo serva Plotclock na Wemos sa vykonáva pomocou 5 vodičov: +5, GND, D4, D5 a D6. Podrobnosti nájdete na obrázkoch a v kóde.
Inštalácia na Jukebox
Nechcel som robiť žiadne otvory pre skrutky do 40 -ročného jukeboxu, ktorý tak dlho prežil bez väčších škôd. Pomocou mäkkého gumového tmelu som pripevnil kus hliníkového zoznamu uhlov pod konzolu jukeboxu. Gumový tmel pevne drží a dá sa odstrániť bez zanechania akýchkoľvek stôp. Telo PlotClock potrebovalo dva malé hliníkové uhly, ktoré mu pomohli namontovať ho na akrylovú dosku. Akrylová doska je potom pripevnená k zoznamu uhlov dvoma pružinovými sponami, čo ponecháva možnosť konečných úprav vertikálne a horizontálne.
Krok 4: Blynk
Blynk je bezplatná aplikácia na diaľkové ovládanie niekoľkých typov mikrokontrolérov. S Blynkom si môžete ľahko vytvoriť pekné používateľské rozhranie pomocou niekoľkých typov widgetov. Na tento projekt je potrebný iba jeden widget: miniaplikácia Tabuľka.
Krok 5: Softvér
Aplikácia Blynk
Na strane aplikácie nie je žiadne kódovanie. „Konverzáciu“medzi aplikáciou (Blynk) a mikrokontrolérom (WeMos) zvládajú „virtuálne piny“, ktoré sú v zásade kanálmi na odosielanie a prijímanie informácií medzi týmito dvoma. Virtuálny pin sa napríklad používa na odoslanie čísla riadku vybranej skladby z aplikácie Blynk na server WeMos a Wemos sa postará o ostatné, tj. odosielanie príkazov na serva Plotclock.
Kód WeMos
/**************************************************************
Tabuľkový widget na V2 ************************************** ****************/ #define BLYNK_PRINT Sériové #include #include #include char auth = "-VÁŠ AUTH KÓD--"; // Projekt jukeboxu char ssid = "--VÁŠ SSID--"; char pass = "-VAŠE WIFI HESLO--"; int c [50]; // Pole pre polohy záznamu jukeboxu (100-299) Servo myservo1; // zdvíhanie Servo myservo2; // ľavá ruka Servo myservo3; // pravá ruka int pos1 = 0; int poz2 = 0; int pos3 = 0; int btn = 0; void setup () {myservo1.attach (2); // pin D4, zdvihni myservo2.attach (14); // pin D5, vľavo myservo3.attach (12); // pin D6, vpravo myservo1.write (140); myservo2.write (90); myservo3.write (90); Serial.begin (115200); Blynk.begin (auth, ssid, pass); // Okamžite upozorniť na spustenie // String msg = "Jukebox WeMos pripojený k:"; //Blynk.notify(msg + ssid); // vymazanie tabuľky na začiatku Blynk.virtualWrite (V2, "clr"); populateTable (); } BLYNK_WRITE (V2) // Prijímanie príkazov z miniaplikácie Table V2 {String cmd = param [0].asStr (); // param [0] = "vybrať" alebo "odznačiť", param [1] = riadok Serial.print ("\ nTabuľka: BLYNK_WRITE (V2) cmd:"); Serial.print (cmd); int výber = c [param [1].asInt ()]; // Číslo vybratého riadka je v parametri [1] Serial.println ("\ nVýber:"); Serial.println (výber); process_selection (výber); } neplatná populateTable () {int i = 0; Serial.println ("Populačná tabuľka …"); Blynk.virtualWrite (V2, „add“, 0, „Be My Baby - The Supremes“, 112); c = 112; Blynk.virtualWrite (V2, „pridať“, 1, „Číslo jedna - Jerry Williams“, 176); i ++; c = 176; Blynk.virtualWrite (V2, „add“, 2, „All My Loving - The Beatles“, 184); i ++; c = 184; Blynk.virtualWrite (V2, „pridať“, 3, „V lete - Mungo Jerry“, 236); i ++; c = 236; Blynk.virtualWrite (V2, „add“, 4, „Black Cloud - Chubby Checker“, 155); i ++; c = 155; Blynk.virtualWrite (V2, "add", 5, "Mamy Blue - Pop -Tops", 260); i ++; c = 260; Blynk.virtualWrite (V2, „add“, 6, „It’s Gonna Be Alright - Gerry & Pacemakers“, 145); i ++; c = 145; Blynk.virtualWrite (V2, „add“, 7, „My Way - Tom Jones“, 193); i ++; c = 193; Blynk.virtualWrite (V2, „pridať“, 8, „San Bernadino - Christie“, 149); i ++; c = 149; Blynk.virtualWrite (V2, „add“, 9, „The Twist - Chubby Checker“, 169); i ++; c = 169;
oneskorenie (1000);
} void process_selection (int selection) {// analyzuje 3-ciferný výber (napr. 178) na 3 tlačidlá: int btn1 = int (selection/100); // prvé tlačidlo Serial.println ("\ nBtn1:"); Serial.println (btn1); if (btn1 == 1 || btn1 == 2) // prvé tlačidlo musí byť 1 alebo 2 - inak vykonajte reset {push_button (btn1); výber = výber - (btn1 * 100); int btn2 = int (výber/10); // druhé tlačidlo Serial.println ("\ nBtn2:"); Serial.println (btn2); tlačidlové tlačidlo (btn2); výber = výber - (btn2 * 10); int btn3 = int (výber); // tretie tlačidlo Serial.println ("\ nBtn3:"); Serial.println (btn3); tlačidlové tlačidlo (btn3); } else {push_button (11); // tlačidlo reset} // vynulovanie pozícií serva, keď je všetko hotové s oneskorením (2000); myservo1.write (140); myservo2.write (90); myservo3.write (90);} void push_button (int btn) {// toto sa volá 3 krát pre každý výber // skutočné stlačenie tlačidla sa vykoná po každom tlačidle (nájsť 'skutočné stlačenie tlačidla') prepínač (btn) {prípad 1: set_servo_angles (134, 136); // 1 prestávka; prípad 2: set_servo_angles (128, 110); // 2 break; prípad 3: set_servo_angles (112, 88); // 3 prestávka; prípad 4: set_servo_angles (89, 68); // 4 prestávka; prípad 5: set_servo_angles (62, 55); // 5 prestávka; prípad 6: set_servo_angles (172, 131); // 6 break; prípad 7: set_servo_angles (163, 106); // 7 break; prípad 8: set_servo_angles (140, 83); // 8 break; prípad 9: set_servo_angles (104, 58); // 9 prestávka; prípad 0: set_servo_angles (75, 36); // 0 prestávka; prípad 11: set_servo_angles (36, 30); // 11 prestávka; } // koncový prepínač} neplatné set_servo_angles (int pos2, int pos3) {myservo2.write (pos2); myservo3.write (pos3); // Polohy servo pripravené - vykonajte aktuálne stlačenie tlačidla: delay (500); myservo1.write (60); // oneskorenie spustenia (500); myservo1.write (140); // oneskorenie up (500); } prázdna slučka () {Blynk.run (); }
Krok 6: Budúce kroky
Miniaplikácia videa - živé video a audio streamy do aplikácie Blynk (už testované - funguje)
Widget Webhook - sťahovanie zoznamu skladieb na požiadanie z cloudu (už testované - funguje)
Miniaplikácia Tabuľka - niektoré malé vylepšenia miniaplikácie sú vítané (návrhy zaslané vývojárom Blynk)
Odporúča:
Cara Menggunakan Wemos D1 R1/ Wemos D1 Mini/ NodeMCU: 7 krokov
Cara Menggunakan Wemos D1 R1/ Wemos D1 Mini/ NodeMCU: Pada tutorial pertama ini, Saya ingin mengajak Anda bagaimana caranya menggunakan papan mikrokontroler yang sudah ada Module WiFi ESP8266 di dalamnya dan juga sering dijumpai (Con: ) začnite používať
Robot riadený Wi-Fi pomocou aplikácie Wemos D1 ESP8266, Arduino IDE a Blynk: 11 krokov (s obrázkami)
Wi-Fi riadený robot pomocou aplikácie Wemos D1 ESP8266, Arduino IDE a Blynk: V tomto návode vám ukážem, ako vytvoriť roboticky ovládanú nádrž ovládanú Wi-Fi ovládanú zo smartfónu pomocou aplikácie Blynk. V tomto projekte bola použitá doska ESP8266 Wemos D1, ale je možné použiť aj iné doskové modely (NodeMCU, Firebeetle atď.) A
Pošlite teplotu a vlhkosť do aplikácie Blynk (Wemos D1 Mini Pro) .: 15 krokov (s obrázkami)
Odoslať teplotu a vlhkosť do aplikácie Blynk (Wemos D1 Mini Pro) .: Tento návod sa zameriava na používanie Wemos D1 Mini Pro na odosielanie údajov (teploty a vlhkosti) do aplikácie Blynk
Vybudujte bootovateľný UFD na flashovanie systému AMI BIOS: 12 krokov
Vybudujte bootovateľný UFD na flashovanie systému AMI BIOS: Notebooky aj stolné počítače príležitostne vyžadujú aktualizáciu systému BIOS. Keď navštívite webovú stránku predajcu (buď PC mfgr alebo BIOS BIOS) a objavíte nový BIOS s požadovanými funkciami alebo upgrady vyžadujú nový BIOS, je načase vložiť všetky potrebné informácie
Detektor pohybu s oznámeniami Blynk (WeMos D1 Mini + HC-SR04): 4 kroky (s obrázkami)
Detektor pohybu s oznámeniami Blynk (WeMos D1 Mini + HC-SR04): HLASUJTE prosím o tomto projekte v súťaži Wireless Network. Ďakujem! Aktualizácia č.2 - Niekoľko vylepšení (verzia 2.2), senzor (rozsah a názov) môžete nastaviť priamo v definícii. Tiež sa niekedy stáva, že senzor prečítal nesprávne hodnoty a odoslal informačné