Sommario:

Rilevamento della distanza con Micro:bit e sonar (modulo HC-SR04): 3 passaggi (con immagini)
Rilevamento della distanza con Micro:bit e sonar (modulo HC-SR04): 3 passaggi (con immagini)

Video: Rilevamento della distanza con Micro:bit e sonar (modulo HC-SR04): 3 passaggi (con immagini)

Video: Rilevamento della distanza con Micro:bit e sonar (modulo HC-SR04): 3 passaggi (con immagini)
Video: УЛЬТРАЗВУКОВОЙ ДАТЧИК РАССТОЯНИЯ HC-SR04 С ADRDUINO ДАТЧИК РАССТОЯНИЯ ПРОЕКТ TURORIAL ARDUINO PROJECTS 2024, Dicembre
Anonim
Rilevamento della distanza con Micro:bit e sonar (modulo HC-SR04)
Rilevamento della distanza con Micro:bit e sonar (modulo HC-SR04)

Questa settimana ho passato un po' di tempo a giocare con il favoloso micro:bit della BBC e un sensore sonoro. Ho provato alcuni moduli diversi (oltre 50 in totale) e ho pensato che sarebbe stato bello, quindi condividi alcuni dei miei risultati.

Il modulo migliore che ho trovato finora è il modulo Sparkfun HC-SR04, il mio l'ho preso da Kitronik nel Regno Unito e negli Stati Uniti sono ovviamente disponibili da posti come Adafruit (sto scherzando con Sparkfun, ecco il tuo link). Il motivo per cui questo è il migliore è che sembra funzionare circa il 95% del tempo con il 3V fornito dal micro: bit BBC, dove può cadere quando hai altri sensori e uscite in esecuzione sulla tua configurazione. Tuttavia, quando si utilizza il display a LED integrato sul micro: bit probabilmente starai bene.

Dato che stavo solo armeggiando, invece di incorporare il sonico in un progetto, ho usato una breakout board e una breadboard che erano incluse nel set di base micro:bit che ho preso da Kitronik nel Regno Unito.

Passaggio 1: configurazione dell'hardware

Configurazione dell'hardware
Configurazione dell'hardware
Configurazione dell'hardware
Configurazione dell'hardware

La configurazione del sensore a ultrasuoni è abbastanza semplice, specialmente con il sensore Sparkfun poiché funziona correttamente a 3V. Ha solo quattro pin. Da sinistra a destra questi sono VCC, Trig, Echo e GND. VCC e GND sono per l'alimentazione e Trig, Echo e GND sono per il segnale. Ho incluso GND con il set di segnali poiché è necessario per una linea di base. Uno dei miei primi errori comuni con i sensori e cose come i LED intelligenti è stato non collegare tutti i componenti a una massa comune. Ho incluso una foto e uno schema del mio set up.

I pin più facili da usare sul micro: bit sono 0, 1 e 2. Quindi ho usato 0 per Trig e 1 per Echo.

Se scopri che non stai ricevendo letture dal tuo HC-SR04, potrebbe essere che non stia ricevendo abbastanza energia, in tal caso puoi aggiungere alimentazione al modulo come mostrato nella seconda immagine. L'uso di 3 batterie AA ti dà 4,5 V, che dovrebbe essere sufficiente. Collegalo come mostrato qui con quel terreno comune. Tuttavia, non collegare il 4.5V al tuo Micro:bit, potrebbe ucciderlo!

Passaggio 2: configurazione del software

Configurazione del software
Configurazione del software
Configurazione del software
Configurazione del software
Configurazione del software
Configurazione del software

Il micro:bit è programmato nel browser, puoi andare su https://makecode.microbit.org/ per iniziare a programmare il tuo sensore sonico. Per prima cosa dovrai aggiungere un nuovo pacchetto al set standard. Ho usato un pacchetto chiamato Sonar.

Aggiungi il pacchetto Sonar ai tuoi blocchi e imposta il tuo codice come mostrato nella quarta immagine.

Qui stiamo usando il comando del grafico a barre per visualizzare i dati del sensore (la variabile chiamata item). Maggiori informazioni sul grafico a barre possono essere trovate qui: https://makecode.microbit.org/reference/led/plot-… Anche se sorprendentemente ho dovuto guardare il codice su GitHub per scoprire che lasciare il valore inferiore come 0 gli permette di regolazione automatica. Puoi cambiarlo per impostare il punto massimo che vuoi misurare. Fornirà dati in numeri interi (interi) e nelle unità selezionate. Credo che il blocco sonar stia facendo i calcoli di conversione per noi. Ho scoperto che passando alla stampa dei dati del sensore sullo schermo (come mostrato nella quinta immagine) sono stato in grado di avere un'idea delle distanze che volevo misurare e codificare. Se stai seguendo avrai notato che ci sono molti valori zero, che causano uno sfarfallio del grafico a barre o altro output. Ho pensato che fosse più semplice filtrarli con un'istruzione if (trovata nella logica). Questo è stato anche il modo più semplice che ho trovato per lavorare usando LED come NeoPixel. Un esempio di ciò è mostrato nella sesta immagine qui.

Passaggio 3: aggiungi altri LED Trova un progetto

Aggiungi altri LED Trova un progetto!
Aggiungi altri LED Trova un progetto!
Aggiungi altri LED Trova un progetto!
Aggiungi altri LED Trova un progetto!
Aggiungi altri LED Trova un progetto!
Aggiungi altri LED Trova un progetto!
Aggiungi altri LED Trova un progetto!
Aggiungi altri LED Trova un progetto!

È bello avere l'uscita LED direttamente sulla scheda, ma per rendere il sensore un po' più utile ho usato un paio di versioni con LED esterni. Alcune immagini e codice sono di seguito. Per questi avevo bisogno di pin extra, quindi la breakout board del connettore Kitronik Edge è stata davvero utile!

Impostando la lavagna come la prima immagine ho deciso di realizzare una sorta di sistema a semaforo per quando le cose si avvicinano troppo. Il LED verde è per sempre, l'ambra per avvicinarsi amico e il rosso è troppo vicino ora, che ne dici di fare marcia indietro. Mi chiedo se questo potrebbe essere un buon uso pratico per passaggi ravvicinati su una bicicletta. Il collegamento a un display sulla parte anteriore della moto darebbe un buon feedback visivo ai conducenti sul fatto che il loro passaggio fosse ok. Le distanze sarebbero cambiate nell'esempio della vita reale, poiché un passaggio di 12 pollici da parte di un ciclista non va bene!!

Consigliato: