Sommario:

Auto RC IoT con telecomando o gateway Smart Lamp: 8 passaggi (con immagini)
Auto RC IoT con telecomando o gateway Smart Lamp: 8 passaggi (con immagini)

Video: Auto RC IoT con telecomando o gateway Smart Lamp: 8 passaggi (con immagini)

Video: Auto RC IoT con telecomando o gateway Smart Lamp: 8 passaggi (con immagini)
Video: THE STYRLOS - CLIENTE INGLESE 2024, Dicembre
Anonim
Image
Image
Auto RC IoT con telecomando o gateway Smart Lamp
Auto RC IoT con telecomando o gateway Smart Lamp
Auto RC IoT con telecomando o gateway Smart Lamp
Auto RC IoT con telecomando o gateway Smart Lamp

Per un progetto non correlato, stavo scrivendo del codice Arduino per parlare con le lampade intelligenti MiLight e i telecomandi delle lampade che ho a casa mia.

Dopo essere riuscito a intercettare i comandi dei telecomandi wireless, ho deciso di realizzare una piccola auto RC per testare il codice. Si scopre che i telecomandi a 2,4 GHz utilizzati in queste lampade hanno un anello tattile a 360 per selezionare le tonalità e funziona sorprendentemente bene per guidare un'auto RC!

Inoltre, utilizzando il gateway MiLight o l'hub MiLight ESP8266, puoi controllare l'auto da uno smartphone o da qualsiasi dispositivo connesso a Internet!

Passaggio 1: l'origine di questo progetto

Questo progetto si basa su una linea di lampadine intelligenti wireless che è arrivata sul mercato alcuni anni fa. Inizialmente sono stati venduti come LimitlessLED, ma da allora sono stati disponibili con nomi alternativi, come EasyBulb o MiLight.

Sebbene queste lampadine siano spesso vendute come compatibili con il WiFi, ma non hanno funzionalità WiFi e si basano invece su un gateway che accetta i comandi inviati tramite WiFi e li traduce in un protocollo wireless proprietario a 2,4 GHz. Se ottieni un gateway, le lampadine possono essere controllate da un'app per smartphone, ma in caso contrario, puoi comunque controllare queste lampade utilizzando telecomandi wireless autonomi.

Queste lampadine e i telecomandi sono proprietari, ma ci sono stati sforzi per decodificare i protocolli e creare alternative open source al gateway WiFi. Ciò consente alcune possibilità interessanti, come l'utilizzo dei telecomandi per i propri progetti Arduino, come dimostrato in questo Instructable.

Passaggio 2: ottenere il telecomando giusto

Ottenere il telecomando giusto
Ottenere il telecomando giusto

Le lampadine e i telecomandi MiLight non sono mai stati pensati per essere aperti e quindi non esiste una documentazione ufficiale sui protocolli. Ci sono state diverse generazioni di lampadine e sicuramente non sono intercambiabili.

Questo progetto utilizza il telecomando per uno dei quattro tipi di lampadine disponibili e sapere come distinguere visivamente i tipi ti aiuterà a comprare il telecomando giusto. I quattro tipi sono:

  • RGB: queste lampadine hanno tonalità e luminosità controllabili; il telecomando ha una ruota dei colori e tre pulsanti di commutazione bianchi.
  • RGBW: queste lampadine ti danno la possibilità di scegliere tra una tonalità e una singola tonalità di bianco; il telecomando ha una ruota dei colori, un cursore della luminosità, tre pulsanti per gli effetti gialli e quattro pulsanti di attivazione/disattivazione del gruppo gialli.
  • CCT: queste lampadine sono solo a luce bianca, ma consentono di variarle dal bianco caldo al bianco freddo; il telecomando ha un anello di controllo nero e pulsanti bianchi.
  • RGB+CCT: le lampadine possono mostrare i colori e possono variare dal bianco caldo al bianco freddo; il telecomando è il più ingombrante dei quattro e può essere distinto da un cursore della temperatura del colore, alcuni strani pulsanti a forma di mezzaluna e una barra luminosa blu attorno ai bordi.

Questo progetto è stato realizzato con il telecomando RGBW e funzionerà solo con quello stile di telecomando. Se vuoi provare a realizzare questo progetto da solo, assicurati di prendere il telecomando giusto in quanto sicuramente non sono intercambiabili*

DISCLAIMER: *Inoltre, non posso assolutamente garantire che questo progetto funzionerà per te. È possibile che il personale di MiLight abbia cambiato il protocollo utilizzato nel telecomando RGBW da quando ho acquistato il mio diversi anni fa. Poiché ciò causerebbe incompatibilità tra i loro prodotti, sospetto che sia improbabile, ma il rischio c'è.

Passaggio 3: utilizzo con un gateway WiFi e uno smartphone

Utilizzo con un gateway WiFi e uno smartphone
Utilizzo con un gateway WiFi e uno smartphone
Utilizzo con un gateway WiFi e uno smartphone
Utilizzo con un gateway WiFi e uno smartphone

Se disponi di un gateway WiFi MiLight, ufficiale o dell'hub MiLight ESP8266 fai-da-te, puoi anche controllare l'auto utilizzando l'app per smartphone MiLight su un telefono o tablet.

Sebbene il protocollo radio utilizzato dalle lampadine MiLight non sia compatibile con il WiFi, l'hub funge da ponte tra una rete WiFi e la rete MiLight. Il buggy RC si comporta come una lampada, quindi l'aggiunta del bridge apre l'interessante possibilità di controllare il buggy RC da uno smartphone o da un PC tramite pacchetti UDP.

Passaggio 4: altri componenti

Altri componenti
Altri componenti

Tre dei componenti provengono dallo SparkFun Inventor's Kit v4.0, questi includono:

  • Motoriduttore Hobby - 140 RPM (coppia)
  • Ruota - 65 mm (pneumatico in gomma, coppia)
  • Sensore di distanza ad ultrasuoni - HC-SR04

Il sensore di distanza non è utilizzato nel mio codice, ma l'ho messo sul mio passeggino perché sembra bello come fari finti, inoltre ho pensato che avrei potuto usarlo in seguito per aggiungere alcune funzionalità di prevenzione delle collisioni.

Gli altri componenti sono:

  • Palla girevole in metallo omnidirezionale
  • Un Arduino Nano
  • Scudo radio Arduino Nano RFM69/95 o NRF24L01+
  • Un driver del motore L9110 da eBay
  • Cavi jumper maschio-femmina

Avrai anche bisogno di un supporto per batterie 4 AA e batterie. Le mie foto mostrano un portabatteria stampato in 3D, ma dovrai acquistare i terminali a molla separatamente e probabilmente non ne vale la pena!

Avrai anche bisogno di una stampante 3D per stampare il telaio (o potresti modellarlo in legno, non è troppo complicato).

Una parola di cautela:

Ho usato un clone economico di Arduino Nano e ho scoperto che faceva molto caldo quando si faceva funzionare l'auto per un periodo di tempo significativo. Sospetto che ciò sia dovuto al fatto che il regolatore 5V sul clone economico è sottovalutato e non può fornire la corrente necessaria per la radio wireless. Ho misurato che l'Arduino e la radio assorbono solo 30 mA, che è ben all'interno delle specifiche per il regolatore di tensione su un vero Arduino Nano. Quindi, se eviti i cloni, sospetto che non avrai problemi (fammelo sapere nei commenti se trovi il contrario!).

Passaggio 5: test di Arduino e Remote

Testare Arduino e Remote
Testare Arduino e Remote
Testare Arduino e Remote
Testare Arduino e Remote

Prima di assemblare il buggy RC, è una buona idea verificare se il telecomando può parlare con Arduino attraverso il modulo radio.

Inizia impilando Arduino Nano sopra lo scudo RF. Se il connettore USB è rivolto a sinistra sul lato superiore, il PCB wireless dovrebbe essere rivolto a destra sul lato inferiore.

Ora collega Arduino Nano al tuo computer usando un cavo USB e carica lo schizzo che ho incluso nel file zip. Apri il monitor seriale e premi un pulsante sul telecomando. La spia dovrebbe accendersi sul telecomando (in caso contrario, controllare le batterie).

Se tutto va bene, dovresti vedere alcuni messaggi nella finestra del terminale ogni volta che premi un pulsante. Fai scorrere il dito intorno alla ruota tattile dei colori e osserva i valori che cambiano di "Tonalità". Questo è ciò che guiderà il veicolo!

Assicurati che questo passaggio funzioni, poiché non ha senso procedere in caso contrario!

Passaggio 6: stampa e assemblaggio dello chassis

Stampa e assemblaggio del telaio
Stampa e assemblaggio del telaio

Ho incluso i file STL per le parti stampate in 3D. Per i file CAD, puoi guardare qui. Ci sono tre parti, una staffa motore sinistra e destra e il telaio.

Le staffe del motore sinistro e destro possono essere fissate ai motori mediante viti per legno. Quindi, le staffe del motore si fissano al telaio usando dadi e bulloni M3 (o colla, se preferisci). La ruota si fissa alla parte anteriore del telaio utilizzando quattro viti e bulloni.

Passaggio 7: aggiunta dell'elettronica

Aggiungere l'elettronica
Aggiungere l'elettronica
Aggiungere l'elettronica
Aggiungere l'elettronica

Avvitare il driver passo-passo sul telaio e collegare i cavi dai motori ai terminali a vite sul driver. Ho utilizzato il seguente cablaggio:

  • Motore sinistro rosso: OB2
  • Motore sinistro nero: OA2
  • Motore destro rosso: OB1
  • Motore destro nero: OA1

Esegui l'alimentazione dal lato positivo delle batterie al Vcc sul PCB del driver passo-passo e Vin sull'Arduino. Esegui il lato negativo delle batterie al GND sul GND sull'Arduino. Dovrai saldare un cavo a Y per farlo.

Infine, completa l'elettronica utilizzando i ponticelli per collegare i seguenti pin dell'Arduino al driver del motore passo-passo:

  • Arduino pin 5 -> Stepper Driver IB1
  • Arduino pin 6 -> Stepper Driver IB2
  • Arduino pin A1 -> Stepper Driver IA1
  • Arduino pin A2 -> Stepper Driver IA2

Passaggio 8: test del robot

Ora premi i pulsanti e vedi se il robot si muove! Se i motori sembrano invertiti, puoi regolare il cablaggio sul robot oppure puoi semplicemente modificare le seguenti linee nello schizzo Arduino:

L9110 sinistra (IB2, IA2); L9110 destra (IA1, IB1);

Se è necessario scambiare i motori sinistro e destro, scambiare i numeri tra parentesi, come tale:

L9110 sinistra (IB1, IA1); L9110 destra (IA2, IB2);

Per invertire solo la direzione del motore sinistro, scambiare le lettere tra parentesi con il motore sinistro, in questo modo:

L9110 sinistra (IA2, IB2);

Per invertire la direzione del motore destro, scambia le lettere tra parentesi con il motore destro, in questo modo:

L9110 destra (IB1, IA1);

È tutto! Buona fortuna e buon divertimento!

Consigliato: