Sommario:
- Passaggio 1: codice CircuitPython
- Passaggio 2: collegamento del TinyLiDAR a un Gemma M0
- Passaggio 3: uscita seriale
Video: CircuitPython e TinyLiDAR: semplice esempio: 3 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:03
Il microElectronicDesign tinyLiDAR è un modulo di misurazione del tempo di volo (ToF) basato su ST VL53L0X con una connessione bus i2c. Le schede del microcontrollore Adafruit si collegano facilmente a questo sensore in quanto possono comunicare il protocollo i2c sui loro pin di dati.
Le serie M0/M4 hanno il vantaggio rispetto ad altre schede perché supportano un sottoinsieme di Python che rende la programmazione più accessibile a un pubblico più ampio rispetto al C su Arduino. Questo è un semplice esempio che utilizza CircuitPython su una scheda Gemma M0 per leggere i valori della distanza da un tinyLiDAR e indicare la distanza variando la luminosità del LED RGB integrato. La scheda deve essere la versione M0 per il supporto di Python.
Nota: Adafruit realizza anche varie schede di rilevamento della distanza, inclusa una basata sul VL53L0X.
Passaggio 1: codice CircuitPython
- Scarica lib/adafruit_dotstar.mpy e lib/adafruit_bus_device/i2c_device.mpy se non li hai già. Questi fanno parte del pacchetto di librerie opzionale, vedere la prima sezione di CircuitPython I2C per le note su come installarli. Questi file devono andare nelle directory lib e lib/adafruit_bus_device su Gemma M0.
- Scarica gemma-m0-tinylidar-simple.py, rinominalo in main.py e copialo nella directory principale di Gemma M0.
Il programma scrive l'output sulla console seriale oltre a variare la luminosità del LED Gemma MO RGB in proporzione alla distanza letta. Il led Gemma M0 si alterna tra acceso e spento per le letture, quindi lampeggerà a circa 5Hz e il comportamento predefinito della scheda tinyLiDAR è di far lampeggiare il suo led blu per comando a 10Hz.
Il bus è guidato a 100kHz che funziona bene per questo caso. Come qualsiasi bus, la velocità di comunicazione della velocità di comunicazione è limitata dalle caratteristiche delle linee di trasmissione, quindi è necessario prestare attenzione alla lunghezza, alla capacità e ad altri fattori.
Passaggio 2: collegamento del TinyLiDAR a un Gemma M0
L'immagine mostra una configurazione temporanea efficace ma poco elegante per collegare il tinyLiDAR a una scheda Gemma M0. Il connettore universale a 4 pin "Grove" del tinyLiDAR viene utilizzato tramite un cavo di conversione Seeed Grove, un'intestazione di ricambio e clip a coccodrillo per il collegamento al Gemma M0. Una certa separazione tra i pin sull'intestazione elimina il rischio di un cortocircuito involontario. I collegamenti sono:
- Nero: da terra a terra
- Rosso: da +V a 3Vo
- Bianco: da SDA a D0 (dati)
- Giallo: da SCL a D2 (orologio)
Le schede Adafruit hanno alcuni pin che supportano il protocollo i2c in modo efficiente nell'hardware. Nel caso della Gemma M0 devono essere utilizzati questi, D0 per i dati e D2 per l'orologio.
Un bus i2c richiede una resistenza di pull-up sulle linee dati e di clock. In questo caso, il tinyLiDAR fornisce alcuni resistori integrati da 4,7K. Se questi sono stati rimossi dal circuito tagliando le linee, è necessario aggiungere equivalenti al circuito.
Passaggio 3: uscita seriale
Il programma scrive l'output sulla console seriale mostrando la distanza misurata, ecco uno screenshot di esempio di un terminale che mostra un oggetto che si allontana dal sensore.
Consigliato:
Come creare il tuo sistema operativo! (lotto ed esempio all'interno): 5 passaggi
Come creare il tuo sistema operativo! (batch ed esempio all'interno): fallo ora
Esempio di controller del pad che utilizza Pure Data: 4 passaggi
Controller pad di esempio che utilizza Pure Data: in questo Instructable creerò un controller per consentire ad alcuni vecchi pad del kit di batteria elettronica Roland di attivare i suoni senza il modulo batteria originale fornito con il kit. Userò Pure Data per creare una patch da caricare alcuni file wav e poi p
Esempio di programmazione Arduino MTP: 5 passaggi
Esempio di programmazione Arduino MTP: in questo Instructable viene mostrato come utilizzare lo sketch di programmazione Arduino SLG46824/6 per programmare un dispositivo Dialog SLG46824/6 GreenPAK™ Multiple-Time Programmable (MTP). La maggior parte dei dispositivi GreenPAK sono programmabili una tantum (OTP), il che significa che una volta che il loro Non-V
Esempio moderno, nuovo e più semplice di armadietto con tastiera a matrice Arduino 4x4: 3 passaggi
Esempio moderno, nuovo e più semplice di armadietto con tastiera a matrice Arduino 4x4: un altro esempio di utilizzo di una matrice di tastiera LCD 4x4 con un circuito I2C
IoT Guru Cloud - Esempio di grafico semplice: 4 passaggi
IoT Guru Cloud - Esempio di grafico semplice: IoT Guru Cloud fornisce una serie di servizi di backend tramite l'API REST e puoi integrare facilmente queste chiamate REST nella tua pagina web. Con Highcharts, puoi visualizzare i grafici delle tue misurazioni semplicemente con una chiamata AJAX