Acquista dagli OSOYOO Acquista da US Acquista da UK Acquista da DE Acquista da IT Acquista da FR Acquista da ES Acquista da JP


In questo progetto, realizzeremo un dito robotico intelligente e lo utilizzeremo per trasferire una pallina da ping-pong in un altro luogo. Utilizzeremo un sensore di ostacoli (rilevatore di distanza a ultrasuoni) per rilevare la pallina in arrivo. Quando viene rilevata una pallina, il dito la prenderà e la macchina la lascerà cadere in un altro posto, poi la macchina tornerà al suo posto originale per aspettare un’altra pallina.

Preparate le seguenti parti per completare questo progetto
NOTA:
1. il colore del blocco di costruzione è soggetto al prodotto reale, che non influisce sul suo utilizzo.
2. TUTTI I PRODOTTI OSOYOO PER ARDUINO SONO SCHEDE DI TERZE PARTI PIENAMENTE COMPATIBILI CON ARDUINO.

Prima di costruire il robot con i blocchi, installare 【OSOYOO basic board】 per Arduino sotto 【OSOYOO Magic I/O shield】 come segue (attenzione: i pin dello scudo I/O sono allineati con la porta della scheda di base, quindi premere lo scudo saldamente sulla scheda UNO).

Seguite i passi per costruire questa macchina robot, se volete ottenere i passi chiari per la costruzione in PDF, scaricateli da: https://osoyoo.com/picture/Building_Robot_Car/lesson5/LESSON5.pdf

Nota: se avete costruito l’auto robot per la lezione 1, saltate al passo 35 di questo PDF.

Collegare i motori e la batteria da 9V come nella lezione 1.

Collegare quindi il servomotore SG90 alla porta D4 di 【OSOYOO Magic I/O shield】, il sensore del modulo a ultrasuoni alla porta D7D8 di 【Magic I/O shield】 con un cavo PNP a 4 pin come indicato di seguito:

Nota: in questo kit, utilizziamo mblock come strumento di programmazione; se volete saperne di più su mblock, visitate la pagina di preparazione prima della lezione 1: https://osoyoo.com/it/2021/12/01/preparation-before-class-1

Passo 1) Scaricare la versione di mBlock per PC da https://mblock.makeblock.com/en-us/download/, e selezionare il file di download in base al tipo di sistema operativo del computer (non utilizzare la versione del browser):

Passo 2) Scaricare il file del dispositivo OSOYOO_UNO.mext da https://osoyoo.com/driver/mblock/osoyoo_uno.mext

Passo 3) Eseguire il software mBlock PC facendo doppio clic sull’icona dell’adorabile Panda. Si vedrà l’interfaccia utente di mBlock come nell’immagine seguente. Eliminare il dispositivo predefinito CyberPi facendo clic sulla croce nel cerchio rosso.

Passo 4) Trascinare e rilasciare il file osoyoo_uno_mext (scaricato al passo 2) sul software mBlock come segue:

Ora si vedrà un nuovo firmware del dispositivo in mBlock, vedi l’immagine seguente:

Ora il software mBlock e il firmware del dispositivo OSOYOO_UNO sono stati installati con successo nel nostro PC!

Ora vi mostreremo come utilizzare i blocchi per trasformare l’idea di cui sopra in realtà.

Passo 5: fare clic su [Events], aggiungere il blocco [when Arduino Uno starts up] all’inizio:

Passo 6: fare clic su [Action], quindi trascinare il blocco [set servo pin angle as] nell’area di programmazione, modificare il pin 9 in 4, 90 in 30 come segue;

Passo 7: fare clic su [Control], quindi trascinare il blocco [wait seconds] nell’area di programmazione e impostare il valore su 0,5 secondi come segue:

Passo 8: fare nuovamente clic su [Action], quindi trascinare e rilasciare il blocco [set servo pin angle as] nell’area di programmazione, da 30 a 0 come segue;

Passo 9: ripetere il passo 7 come segue:

Passo 10: Fare clic su [Action], quindi trascinare e rilasciare il blocco [set servo pin angle as] nell’area di programmazione, modificare da 0 a 30 come segue;

Passo 11: Fare clic su [Control], quindi trascinare il blocco [wait seconds] nell’area di programmazione e scrivere 1 secondo come segue:

Passo 12: Fare clic su [Control], quindi trascinare il blocco [forever] nell’area di programmazione come segue:

Passo 13: Fare nuovamente clic su [Control], quindi trascinare il blocco [if then else] nell’area di programmazione come segue:

Passo 14: Fare clic su [Operation], quindi trascinare il blocco [0<0] nell’area di programmazione e modificare il valore da 0 a 7 come segue:

Passo 15: Fare clic su [Sensor], quindi trascinare il blocco [read ultrasonic sensor trig pin echo pin] nell’area di programmazione, impostare i pin 7 e 8 come segue;

Passo 16: Fare clic su [Action], quindi trascinare e rilasciare il blocco [Stop Moving] nell’area di programmazione come segue;

Passo 17: Fare clic su [Control], quindi trascinare il blocco [wait seconds] nell’area di programmazione e scrivere 0,5 secondi come segue:

Passo 18: Fare clic su [Action], quindi trascinare e rilasciare il blocco [set servo pin angle as] nell’area di programmazione, modificare da 0 a 25 come segue;

Passo 19: Fare clic con il pulsante destro del mouse sul blocco [Wait seconds], fare clic su [duplicate] dal blocco [digital write pin to]. Si otterrà un blocco duplicato, da posizionare dietro il blocco [Set servo pin angle as]. Modificare il valore dell’angolo come indicato nella figura seguente.

Passo 20: Fare clic su [Control], quindi trascinare il blocco [wait seconds] nell’area di programmazione e scrivere 0,5 secondi come segue:

Passo 21: Fare clic su [Action], quindi trascinare e rilasciare il blocco [Turn Left Speed for] nell’area di programmazione, modificare il valore di 1 secondo in 0,4 secondi come segue;

Passo 22: Fare clic su [Action], quindi trascinare il blocco [Stop Mowing] nell’area di programmazione come segue;

Passo 23: Fare nuovamente clic su [Action], quindi trascinare e rilasciare il blocco [set servo pin angle as] nell’area di programmazione, modificando 90 a 0 come segue;

Passo 24: Fare clic su [Control], quindi trascinare il blocco [wait seconds] nell’area di programmazione, scrivere 0,5 secondi come segue:

Passo 25: Ripetere il passo 23, cambiando il valore da 90 a 15 come segue

Passo 26: Fare clic su [Control], quindi trascinare il blocco [wait seconds] nell’area di programmazione e scrivere 0,5 secondi come segue:

Passo 27: Fare di nuovo clic su [Action], quindi trascinare e rilasciare il blocco [set servo pin angle as] nell’area di programmazione, modificando 90 in 30 come segue;

Passo 28: Fare clic su [Action], quindi trascinare e rilasciare il blocco Move [Backward at speed for sec] nell’area di programmazione e modificare la velocità da 100 a 50 come segue;

Passo 29: Sempre in [Action], trascinare e rilasciare il blocco [Turn Right at speed for sec] nell’area di programmazione, cambiare la velocità da 100 a 50 e passare da 1 sec a 0,5 sec come segue;

Passo 30: Trascinare il blocco [Move Forward at speed for sec] nell’area di programmazione, modificare la velocità da 100 a 50 come segue;

Passo 31: Trascinare il blocco [Forward Left speed Right speed] nell’area di programmazione e modificare la velocità da 100 a 30 come segue;

Ora abbiamo completato la programmazione dei blocchi. I blocchi finali hanno il seguente aspetto:
Ora tutti i blocchi di programmazione sono stati completati! Dall’immagine precedente, la logica è piuttosto semplice:

Quando Arduino viene avviato, il computer entra in un ciclo morto che controlla lo stato del pulsante; quando il pulsante non viene premuto, il servo si ferma nella sua posizione originale (nel mio servo a 0 gradi) e l’ascensore è a terra; quando il pulsante viene premuto, il braccio del servo ruota da 0 gradi a 180 gradi e l’ascensore viene sollevato in aria.

Passo 32 Caricare il programma su [OSOYOO basic board].

1) Collegare prima la [OSOYOO basic board] al PC con un cavo USB. Quindi fare clic sul pulsante Connect (Connetti) nella parte inferiore del software mBlock; si aprirà una finestra USB,
2) selezionare la casella [Show all connectable device], quindi apparirà un menu a discesa dei dispositivi,
3) selezionare la propria porta dal menu a discesa del dispositivo
4) fare clic sul pulsante [Connect] per collegare il PC a [OSOYOO basic board].

5) Dopo che il PC è stato collegato a [OSOYOO basic board], fare clic sul pulsante [Upload] nella parte inferiore del software, quindi il codice verrà caricato su [OSOYOO basic board]:

Questa lezione non utilizza nuovi blocchi di programma. Se non si comprende il significato del blocco, si consiglia di rivedere le lezioni precedenti.
La spiegazione della logica di programmazione è riportata nel grafico seguente:

Innanzitutto, il programma farà ruotare il servo da 30 gradi a 0 gradi e poi si fermerà a 30 gradi. In questo modo il dito passa dallo stato di apertura a quello di chiusura e poi a quello di apertura. Se il dito non funziona in questo modo, è necessario prima regolare il dito.
Poi il sensore a ultrasuoni entra in un ciclo eterno che controlla se c’è un ostacolo o meno sul percorso dell’auto.
Se il sensore a ultrasuoni rileva un ostacolo entro 7 cm, l’auto si ferma per 0,5 secondi. Il servo ruota lentamente dallo stato aperto a quello chiuso per far sì che il dito afferri l’ostacolo, quindi l’auto robot gira a sinistra a velocità 100 per 0,4 secondi, quindi si ferma. Il servo ruota lentamente dallo stato di chiusura a quello di apertura per far sì che il dito abbassi l’ostacolo, quindi l’auto robot si muove all’indietro a velocità 50 per 1 secondo, poi gira a destra a velocità 50 per 0,5 secondi, quindi avanza a velocità 50 per 1 secondo.
Se il sensore a ultrasuoni non rileva alcun ostacolo, l’auto si muove in avanti a velocità 30.
I blocchi di programma di cui sopra vengono eseguiti come un ciclo continuo, a meno che non si spenga l’alimentazione.

Regolare la posizione delle dita:

Con il manuale:

Dopo l’accensione, il dito si apre, si chiude, si riapre e rimane in posizione aperta per circa 1 secondo. Se il dito non si ferma nella posizione di apertura, spegnere l’alimentazione, quindi estrarre il servoingranaggio e posizionarlo in modo che entrambe le dita siano in posizione aperta.

Dopo aver regolato il dito nella giusta posizione, riaccendere il dispositivo. Quindi inserire una pallina nel dito aperto. Una volta che il sensore a ultrasuoni ha rilevato la palla, la cattura e la sposta nella posizione di sinistra. Dopo aver trasferito la palla, la macchina tornerà alla sua posizione originale.

Per codice:

Caricare il seguente codice su Arduino. Accendere l’alimentazione e verificare se il dito è in posizione aperta o meno.
In caso contrario, regolare “30” su un altro grado e ripetere l’operazione fino a ottenere il valore corretto.

Caricare il seguente codice su Arduino. Accendere l’alimentazione e verificare se il dito è in posizione ravvicinata o meno.
In caso contrario, regolare “0” su un altro grado e ripetere l’operazione fino a ottenere il valore corretto.

Registrate i gradi del vostro dito robotico e sostituite i gradi del codice di esempio con il valore corretto, in modo che il codice funzioni perfettamente.

Risultato di lavoro:

Quando si accende la macchina e la si mette a terra, la macchina va avanti, quando c’è un ostacolo (si prega di selezionare l’ostacolo adatto in base alle dimensioni del dito) sulla sua strada, il dito lo cattura e lo mette via) poi andare avanti. Come nel video seguente:

No. Immagine Dispositivo Collegamento
1 Scheda OSOYOO Basic R3 per Arduino Clicca qui per acquistare
2 OSOYOO Magic I/O Shield per Arduino Clicca qui per acquistare
3 Modulo rilevatore ad ultrasuoni OSOYOO Clicca qui per acquistare
4 Modulo ricevitore IR OSOYOO Clicca qui per acquistare
5 Modulo pulsante rosso OSOYOO Clicca qui per acquistare
6 Telecomando IR Clicca qui per acquistare
7 Portabatteria 9V Clicca qui per acquistare
8 Batteria 9V  Clicca qui per acquistare
9 Servo Clicca qui per acquistare
10 Motore Clicca qui per acquistare
11 Modulo sensore di tracciamento OSOYOO Clicca qui per acquistare
12 Modulo fotoresitore OSOYOO Clicca qui per acquistare
13 OSOYOO DHT11 Sensore di temperatura/umidità Clicca qui per acquistare
14 Supporto per sensore ad ultrasuoni OSOYOO Clicca qui per acquistare
15 Modulo ESP OSOYOO Clicca qui per acquistare
16 Cavo PnP 3 pin 20cm Clicca qui per acquistare
17 Cavo PnP 4 pin 20cm Clicca qui per acquistare
18 B117 Clicca qui per acquistare
19 B115 Clicca qui per acquistare
20 B113 Clicca qui per acquistare
21 B111 Clicca qui per acquistare
22 B109 Clicca qui per acquistare
23 B107 Clicca qui per acquistare
24 B105 Clicca qui per acquistare
25 B103 Clicca qui per acquistare
26 T024 Clicca qui per acquistare
27 T016 Clicca qui per acquistare
28 L024 Clicca qui per acquistare
29 X064 Clicca qui per acquistare
30 L035 Clicca qui per acquistare
31 X044 Clicca qui per acquistare
32 F057 Clicca qui per acquistare
33 T033 Clicca qui per acquistare
34 PS11 Clicca qui per acquistare
35 P021 Clicca qui per acquistare
36 P011 Clicca qui per acquistare
37 Z005 Clicca qui per acquistare
38 Z010 Clicca qui per acquistare
39 Z101 Clicca qui per acquistare
40 Z1S1 Clicca qui per acquistare
41 A024 Clicca qui per acquistare
42 A013 Clicca qui per acquistare
43 A050 Clicca qui per acquistare
44 A05S Clicca qui per acquistare
45 A08S Clicca qui per acquistare
46 A060 Clicca qui per acquistare
47 A03S Clicca qui per acquistare
48 Z121 Clicca qui per acquistare
49 X275 Clicca qui per acquistare
50 X073 Clicca qui per acquistare
51 Y001 Clicca qui per acquistare
52 Z102 Clicca qui per acquistare
53 P012 Clicca qui per acquistare
54 P011 Clicca qui per acquistare
55 ruota Clicca qui per acquistare
56 ruota universale Clicca qui per acquistare