Serbatoio robotico – Ultrasuoni

Espandi il tuo Robot Tank con il modulo Ultrasuoni! Collegalo al tuo set di costruzioni esistente e impara a usare il sensore a ultrasuoni per riconoscere gli ostacoli ed evitarli automaticamente: un'aggiunta ideale per sviluppare competenze in robotica, programmazione e pensiero algoritmico.

Descrizione

Il modulo Ultrasuoni è una pratica estensione per un carro armato robotico che consente al carro armato di rilevare gli ostacoli e reagire all'ambiente circostante. Utilizzando un sensore a ultrasuoni, il veicolo può misurare la distanza davanti a sé e fermarsi, rallentare o evitare gli ostacoli in base al comportamento programmato. Il sensore si collega direttamente alla scheda di espansione e si integra facilmente nel design del carro armato esistente.

Questa espansione amplia significativamente le capacità del carro armato e apre le porte a progetti più avanzati come la guida autonoma, i sistemi di sicurezza o gli scenari didattici interattivi. Il modulo è pienamente compatibile con l'ambiente MakeCode e può essere controllato anche in Python o JavaScript. È ideale per gli studenti che hanno già le basi della programmazione e desiderano passare ad algoritmi di controllo robotico reali e all'utilizzo dei sensori.

Cablaggio US-016

MB1

Il sensore ultrasonico è alimentato dalla scheda di espansione tramite pin 3V3 a GNDSuccessivamente, è necessario collegare l'uscita dal sensore a ultrasuoni, ovvero il pin Fuori al pin di ingresso analogico micro:bit. In questo caso abbiamo scelto il pin P2.

ultrasuoni2_mb1

MB2

MB3

ultrasuoni2_mb3

Connessione (TRIG ed ECHO)

Il sensore ultrasonico è alimentato dalla scheda di espansione tramite pin 3V3 a GNDSuccessivamente, è necessario collegare il pin per il trasmettitore (Trig) e il ricevitore (Echo). Nei programmi seguenti, utilizziamo i pin P14 – Eco a P15 – Trigonometria.

MB1

ultrasuoni_mb1

MB2

ultrasuoni_mb2

MB3

ultrasuoni_mb3

Programmi

I programmi differiscono a loro volta in base al tipo di sensore a ultrasuoni. Sono ulteriormente suddivisi in base alla scheda di espansione utilizzata. La scheda MB1 è dotata di una striscia LED integrata, ideale per indicare la distanza misurata dal sensore.

Tuttavia, in linea di principio, i programmi sono gli stessi, differiscono solo nell'uso della libreria Neopixel per la striscia LED.

Sensore US-016

Scheda di espansione MB1

Programma di base

Questo programma utilizza la striscia LED della nostra scheda di espansione MB1. Se si utilizza questo programma su un'altra scheda, funzionerà ugualmente, ma invierà segnali inutili al pin vuoto P16. Pertanto, consigliamo di caricare il codice qui sotto.

Per prima cosa, inizializziamo la striscia LED utilizzando la libreria Neopixel. La striscia integrata ha 8 LED ed è collegata al pin P16 (ecco perché questo pin non è presente sulla scheda MB1).

La distanza viene quindi letta nel ciclo. Se la distanza è inferiore al limite che abbiamo scelto, 10 cm, il carro armato si ferma. Impostiamo il colore della striscia LED su rosso. Se questa condizione è falsa, il carro armato inizia a muoversi alla velocità selezionata e impostiamo la striscia LED su verde. Infine, accendiamo la striscia.

Programma avanzato

Questo programma funziona già con velocità variabile. In base alla distanza misurata, imposta la velocità del carro armato sulla variabile "velocità". Imposta anche il numero di LED accesi.

Scheda di espansione MB2 e MB3

Se si dispone di un carro armato con una scheda di espansione MB2 o MB3, i programmi precedenti funzioneranno esattamente allo stesso modo. La differenza è che invieranno un segnale al pin vuoto P16, che è collegato alla striscia LED sulla scheda MB1. I codici seguenti sono quindi esattamente gli stessi, l'unica differenza è che non contengono il controllo della striscia LED tramite la libreria Neopixel.

Programma di base

Il programma nel ciclo misura la distanza dell'oggetto dal sensore a ultrasuoni. Se questa distanza è superiore a 10 cm, il serbatoio avanza. Altrimenti, si ferma.

Programma avanzato

Questo programma funziona già con velocità variabile. In base alla distanza misurata, imposta la velocità del carro armato sulla variabile "velocità". Modificando il valore della costante DIST_MIN o DIST_MAX È possibile regolare l'intervallo delle distanze misurate.

Sensori comuni (TRIG ed ECHO)

Scheda di espansione MB1

Programma di base

Questo programma utilizza la striscia LED della nostra scheda di espansione MB1. Se si utilizza questo programma su un'altra scheda, funzionerà ugualmente, ma invierà segnali inutili al pin vuoto P16. Pertanto, consigliamo di caricare il codice qui sotto.

Per prima cosa, inizializziamo la striscia LED utilizzando la libreria Neopixel. La striscia integrata ha 8 LED ed è collegata al pin P16 (ecco perché questo pin non è presente sulla scheda MB1).

La distanza viene quindi letta nel ciclo. Se la distanza è inferiore al limite che abbiamo scelto, 10 cm, il carro armato si ferma. Impostiamo il colore della striscia LED su rosso. Se questa condizione è falsa, il carro armato inizia a muoversi alla velocità selezionata e impostiamo la striscia LED su verde. Infine, accendiamo la striscia.

Programma avanzato

Questo programma funziona già con velocità variabile. In base alla distanza misurata, imposta la velocità del carro armato sulla variabile "velocità". Imposta anche il numero di LED accesi.

Scheda di espansione MB2 e MB3

Se si dispone di un carro armato con una scheda di espansione MB2 o MB3, i programmi precedenti funzioneranno esattamente allo stesso modo. La differenza è che invieranno un segnale al pin vuoto P16, che è collegato alla striscia LED sulla scheda MB1. I codici seguenti sono quindi esattamente gli stessi, l'unica differenza è che non contengono il controllo della striscia LED tramite la libreria Neopixel.

Programma di base

Stessa funzione del programma per la scheda MB1, solo senza LED.

Programma avanzato

Stessa funzione del programma per la scheda MB1, solo senza LED.

Compiti

Compito 1: Carro armato obbediente

Trasforma un carro armato robot in un veicolo divertente. Inverti la logica stop-and-go in modo che, se rileva un ostacolo davanti a sé, si muova direttamente dietro di esso. Puoi quindi usare questa logica per controllare il carro armato con le mani. Una volta che rileva la tua mano davanti a sé, la seguirà a comando. Quando alzi la mano, il carro armato si fermerà obbedientemente.

Attività 2: Carro armato sicuro

Crea un programma che aiuti il ​​carro armato a evitare un ostacolo. Quando si avvicina a un ostacolo, si gira di lato e ricomincia a muoversi. Lascia che il carro armato giri abbastanza a lungo da evitare effettivamente l'ostacolo.

Attività 3: Robot aspirapolvere

Probabilmente hai visto come funziona un robot aspirapolvere. Quando incontra un ostacolo, si ferma, torna indietro di un po' e poi sceglie una nuova direzione finché non incontra un altro ostacolo. Prova questa stessa funzione con il tuo serbatoio.

Prova ad usare la libreria matematica, in particolare un blocco di numeri casuali che determinerà di quanto girerà il carro armato quando sceglierà una nuova direzione. Questo darà al tuo carro armato robotico una mente propria!

Galleria