Sommario:
Video: Posso usare TinyLiDAR in Scratch?: 3 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:04
Ogni tanto riceviamo richieste per chiedere se tinyLiDAR funzionerà sulla loro particolare piattaforma di elaborazione. Sebbene tinyLiDAR sia stato progettato come un sensore LiDAR semplice da usare per Arduino UNO, non c'è nulla che gli impedisca di essere utilizzato su altre piattaforme come Raspberry Pi (come mostrato nella precedente istruzione qui). Cioè, se la piattaforma ha un bus I2C e può supportare la funzione di allungamento del clock delle specifiche I2C. Quindi, cosa succede se la tua scheda non supporta nemmeno I2C? - lasciamo perdere le cose che allungano l'orologio… Beh, sarebbe uno scenario impegnativo, ma in realtà esiste per l'ultra popolare linguaggio di programmazione visuale chiamato "Scratch".
Cercalo su Google se non ne hai mai sentito parlare prima, ma in poche parole, è un ottimo primo linguaggio per chiunque voglia portare la propria mente nel regno della programmazione. Scratch è stato creato dal MIT Media Lab ed è in circolazione da oltre 16 anni. È la lingua di riferimento per insegnare ai bambini a programmare in tutto il mondo. Chiunque può iniziare a usarlo gratuitamente, poiché normalmente viene eseguito sul desktop in un browser web. Dai un'occhiata qui se ti va.
TL;versione DR
SÌ! Con una nuova funzionalità chiamata "Ultrasonic Emulation Mode" in tinyLiDAR f/w versione 1.3.9
Passaggio 1: gratta cosa?
Ci sono molti gusti di Scratch in natura ora. Gli appassionati di robotica tendono a utilizzare le versioni focalizzate su GPIO come ScratchGPIO o altre versioni modificate come ScratchX che possono essere realizzate per supportare qualsiasi "hardware sperimentale". Tutti questi sono ottimi per gli utenti avanzati, ma le versioni mainstream installate di default sul pi saranno il nostro obiettivo per questo istruibile in quanto hanno opzioni hardware piuttosto limitate.
Il Raspbian Stretch Desktop di pi viene fornito con due versioni di Scratch preinstallate. Vale a dire, "Scratch" e "Scratch 2". Useremo il primo alias "Scratch 1.4 (NuScratch)" e lo useremo "offline" in modo da poter utilizzare la funzione del server GPIO.
Puoi scaricare l'immagine desktop pi ufficiale qui.
Per qualsiasi motivo, i creatori di Scratch hanno deciso di supportare solo alcuni dei sensori più comunemente disponibili di grandi aziende come Lego, ecc. È interessante notare che hanno anche deciso di aggiungere il supporto per HC-SR04. Questo è, ovviamente, l'onnipresente sensore di distanza ad ultrasuoni che emette semplicemente una singola larghezza di impulso proporzionale alla distanza misurata.
La precisione della misurazione può variare leggermente a seconda della temperatura dell'aria, dell'umidità e del materiale target, come menzionato qui, qui e qui. Ma in generale, quasi tutte le piattaforme possono misurare l'uscita della larghezza di impulso di questo dispositivo.
Passaggio 2: nuova funzionalità
L'emissione di impulsi precisi in scala di microsecondi non è un problema per noi su tinyLiDAR poiché abbiamo timer hardware ad alta risoluzione di riserva all'interno del micro a 32 bit integrato. tinyLiDAR si calibra sempre automaticamente per la temperatura all'accensione, quindi non sono necessarie ulteriori regolazioni per l'ambiente operativo.
Facciamolo
Ok, potremmo, quindi abbiamo appena aggiunto una nuova funzionalità a tinyLiDAR (a partire dal firmware 1.3.9) chiamata "Modalità di emulazione ultrasonica". Puoi accedervi utilizzando il comando "u" dal terminale GUI di tinyLiDAR aggiornato.
Il suo utilizzo cambierà le impostazioni nella memoria non volatile in modo che tinyLiDAR assomigli a un generico sensore a ultrasuoni anche dopo averlo scollegato. Puoi riportarlo alla normale modalità I2C premendo il pulsante di ripristino ed emettendo il comando "az". Ulteriori dettagli sono nel manuale utente.
Per rendere la vita ancora più semplice, stiamo rendendo disponibile il sensore tinyLiDAR preimpostato per questa nuova modalità di emulazione ad ultrasuoni dal nostro sito web. Basta ordinare la versione "-u".
Guarda mamma, niente saldatura
Non è necessaria alcuna saldatura e nemmeno breadboard poiché i cavi "Grove to Female 4pin" inclusi si inseriranno direttamente nei pin dell'intestazione Raspberry pi. Il pin di attivazione è il filo giallo e il pin dell'eco è il filo bianco. Il nero e il rosso sono ovviamente per il potere. Fare riferimento all'immagine principale sopra per i dettagli.
A proposito, siamo andati oltre e abbiamo fatto sì che il pin giallo si comportasse come il sensore PING))) che utilizza un singolo filo sia per i segnali di trigger che di eco.
Per questo motivo, ora puoi eseguire misurazioni con tinyLiDAR utilizzando lo schizzo ultrasonico "PING" predefinito fornito con ogni IDE Arduino senza modifiche al codice! Puoi provarlo anche senza indugio.
Ovviamente, puoi impostare parametri come alta precisione, lunga distanza, ecc.
Pericolo, Will Robinson
Nota che il sensore a ultrasuoni SR04 necessita di alcuni resistori per evitare che l'alimentazione +5v danneggi il tuo pi. Ma poiché tinyLiDAR funziona nativamente da +3.3v, non c'è bisogno di resistori per interfacciarsi con il pi:)
Passaggio 3: codificarlo
Allora, qual è esattamente il codice di cui abbiamo bisogno per far funzionare tinyLiDAR in Scratch?
Felice che tu l'abbia chiesto!
È solo questione di trascinare alcuni semplici blocchi di trasmissione come mostrato nelle immagini sopra.
Per abilitare i pin GPIO possiamo emettere il "broadcast gpioserveron" Quindi per configurare il pin di trigger emettere il "broadcast config16out" Successivamente possiamo configurare il pin dell'eco tramite "broadcast config26in" e quindi avviare le misurazioni tramite "broadcast ultrasonictrigger16echo26". Ciò farà sì che le misurazioni vengano eseguite continuamente a una cadenza di circa 140 ms. È possibile leggere i dati misurati utilizzando il blocco di rilevamento "valore del sensore di distanza ad ultrasuoni".
Bene, per ora è tutto, grazie per la lettura e assicurati di dare un'occhiata al divertente piccolo programma demo di Scratch (condiviso qui) che abbiamo creato chiamato "tinyLiDAR_catch_me" e … Scratch On!;)
Consigliato:
Come Riciclare Telefoni Android per BOINC o Rig Pieghevole Senza Usare le Batterie: 8 Passaggi
Come Riciclare Telefoni Android per BOINC o Rig Pieghevole Senza Usare le Batterie: ATTENZIONE: NON SONO IN ALCUN MODO RESPONSABILE PER EVENTUALI DANNI ALL'HARDWARE SEGUENDO QUESTA GUIDA. Questa guida è più efficace per gli utenti BOINC (scelta personale/motivi), può essere utilizzato anche per PIEGARE Visto che non ho molto tempo, farò
Come Usare Fritzing per Creare un PCB: 3 Passaggi
Come usare Fritzing per creare un PCB: in questo Instructable, ti mostrerò come usare Fritzing. In questo esempio, realizzerò uno scudo di alimentazione per arduino che può essere utilizzato per alimentare l'arduino con una batteria
Usare Python per imparare i layout di tastiera non inglesi: 8 passaggi
Utilizzo di Python per imparare i layout di tastiera non inglesi: Ciao, sono Julien! Sono uno studente di informatica e oggi ti mostrerò come puoi usare Python per imparare da solo il layout della tastiera di una lingua non inglese. Oggigiorno si impara molto online e una cosa che le persone possono capire
Come posso riparare il mio laptop morto da oltre due anni: 8 passaggi
Come risolvo il mio laptop morto da oltre due anni: Nota ** per favore vota se apprezzi questo progetto, grazie Ho stupido questo laptop gateway NE522 nel mio cassetto per circa due anni probabilmente perché ne ho avuto un altro da usare, quindi quando ho visto questo concorso So che vale la pena ripararlo e condividere tutta la riparazione
Tutti gli altri stanno facendo un supporto per laptop, quindi perché non posso?: 8 passaggi (con immagini)
Tutti gli altri stanno realizzando un supporto per laptop, quindi perché non posso?: O come ho trasformato un vassoio in un supporto per laptop. Non abbiamo la TV, ma ci piace sdraiarci su una coperta e guardare i DVD sul portatile. Questo supporto per laptop assicurerà una buona stabilità e flusso d'aria