Sommario:
- Passaggio 1: elenco delle parti
- Passaggio 2: assemblare il telaio del robot e collegare i motori ad Arduino tramite i driver del motore
- Passaggio 3: collegare il modulo Bluetooth ad Arduino
- Passaggio 4: collega GY-271 ad Arduino
- Passaggio 5: collegare il micro servomotore e il sensore a ultrasuoni HC SR04 ad Arduino
- Passaggio 6: codice, librerie e collegamento per scaricare l'app Andorid
2025 Autore: John Day | [email protected]. Ultima modifica: 2025-01-13 06:57
Questo Instructable spiega come realizzare un Robot Arduino che può essere spostato nella direzione richiesta (Avanti, Indietro, Sinistra, Destra, Est, Ovest, Nord, Sud) Distanza richiesta in centimetri utilizzando il comando vocale. Il robot può essere spostato anche in autonomia tramite comando vocale.
Inserimento tramite comando vocale:
1° parametro - #forward o #reverse o #left o #right o #auto o #angle
2° Parametro - Distanza 100 o Angolo 300
Ad esempio: - 1) Distanza in avanti 100 Angolo 300 – Ruota l'auto di 300 gradi usando GY-271 e vai avanti
100 centimetri
2) Angolo avanti 300 Distanza 100 – I comandi Angolo e Distanza possono essere in qualsiasi sequenza
3) Distanza in avanti 100 – Avanza di 100 centimetri
4) Angolo in avanti 300: ruota l'auto di 300 gradi e muoviti in avanti fino al prossimo
comando
5) auto – Muove l'auto in modalità Autonoma evitando ostacoli
7) angolo 300 -- Ruota l'auto di 300 gradi.
Passaggio 1: elenco delle parti
Di seguito è riportato l'elenco delle parti necessarie per realizzare questo progetto, alcune delle quali sono opzionali.
Puoi creare il tuo telaio o acquistare qualsiasi telaio per auto robot 3Wheel o 4Wheel da Amazon è molto economico.
1. Arduino Uno R3 (è possibile utilizzare anche altre schede Arduino)
2. Modulo Bluetooth HC – 02
3. HMC5883L (GY-271)
4. Sensore a ultrasuoni HC SR04 con piastre di montaggio servo (opzionale: piastre di montaggio)
5. Driver motore L298N (può essere utilizzato anche L293D)
6. Alimentatore per breadboard MB-102 (opzionale: è possibile utilizzare anche il regolatore di tensione 7805)
7. Tagliere di pane
8.2 Motore encoder con sensore ad effetto hall (è possibile utilizzare anche il motore BO con sensore accoppiatore ottico)
9. Batteria da 9 V (Qtà 1) (si consiglia una batteria separata per il motore)
10. Batteria AA da 6 X con portabatteria (per alimentare la scheda Arduino e i sensori)
11. Cavi dei ponticelli
12. Micro servomotore
13. Telaio per auto a 4 o 3 ruote con ruote
Passaggio 2: assemblare il telaio del robot e collegare i motori ad Arduino tramite i driver del motore
Assemblare lo chassis del robot a 3 ruote motrici o a 4 ruote motrici e collegare i motori dell'encoder alla scheda Arduino tramite i driver del motore L298N.
Encoder Motor: Motoriduttore DC dotato di un ulteriore encoder rotativo a quadratura magnetica. Gli encoder in quadratura forniscono due impulsi sfasati, per rilevare il senso di rotazione dell'albero, la velocità e la distanza percorsa.
L'encoder fornisce 540 impulsi per rotazione dell'albero motore che viene conteggiato dal contatore Arduino utilizzando i pin di interruzione di Arduino.
Sto usando solo un'uscita dell'encoder poiché non sono interessato a conoscere la direzione del movimento dell'albero per questo istruibile.
Connessioni:
Inp 1 L298N Motor Driver -- Arduino Pin 6
Inp 2 L298N Motor Driver -- Arduino Pin 7
Inp 3 L298N Driver del motore -- Arduino Pin 8
Inp 4 L298N Motor Driver -- Arduino Pin 9
M1 L298N Driver motore -- Motore encoder sinistro M1
Driver motore M2 L298N -- Motore encoder sinistro M2
Driver motore M1 L298N -- Motore encoder destro M3
Driver motore M2 L298N -- Motore encoder destro M4
Motore encoder CHA sinistro -- Pin Arduino 2
Motore encoder CHA destro -- Pin Arduino 3
Tensione di ingresso Arduino UNO -- 5V regolata
Tensione di ingresso del motore dell'encoder -- 5 V regolata
Driver motore L298N -- Da 5V a 9V
Passaggio 3: collegare il modulo Bluetooth ad Arduino
Collega il modulo Bluetooth alla scheda Arduino che accetterà
input vocali dall'app mobile tramite Bluetooth. L'input vocale ad Arduino sarà sotto forma di stringa con più parole separate da spazio.
Il codice dividerà le parole nella stringa e le assegnerà alle variabili.
Link per scaricare l'app Android:
Per esempio. Input vocale: distanza in avanti 100 angolo 50
Arduino Pin 0 -- HC-02 TX
Arduino Pin 1 -- HC-02 RX
Tensione di ingresso HC-02 -- 5 V regolata
Passaggio 4: collega GY-271 ad Arduino
Collegare GY-271 ad Arduino che può essere utilizzato per ottenere la posizione di prua del robot e per spostare il robot nel grado desiderato da (0 a 365 – 0 e 365 gradi nord, 90 gradi come est, 180 gradi come sud e 270 gradi come ovest)
Connessioni:
GY-271 SCL -- Ingresso analogico Arduino A5
GY-271 SCA -- Ingresso analogico Arduino A4
Tensione di ingresso a GY-271 -- 3,3 V regolata
Nota: utilizzare il codice di esempio fornito nella libreria per testare prima il modulo.
Passaggio 5: collegare il micro servomotore e il sensore a ultrasuoni HC SR04 ad Arduino
Collegare il micro servomotore e il sensore a ultrasuoni HC SR04 a
Arduino. Il sensore a ultrasuoni viene utilizzato per misurare la distanza degli oggetti e il motore del server viene utilizzato per spostare il sensore a ultrasuoni a sinistra e a destra quando l'oggetto è vicino al robot, il che aiuterà il robot a muoversi in qualsiasi direzione senza scontrarsi con oggetti o pareti.
Montare il sensore a ultrasuoni sul servomotore utilizzando la scheda di montaggio.
Connessioni:
Pin segnale micro servo -- Pin Arduino 10
Pin trigger HC SR04 -- Pin Arduino 11
Pin Echo HC SR04 -- Pin Arduino 12
Tensione di ingresso al servomotore -- 5 V regolato
Tensione di ingresso a HC SR04 -- 5 V regolata
Passaggio 6: codice, librerie e collegamento per scaricare l'app Andorid
Il codice è stato allegato. Link per scaricare le librerie
1) TimerOne -
2) QMC5883L -
3) Nuovo Ping -
Collegamento all'app:
Il codice può essere ulteriormente ottimizzato per ridurre il numero di righe.
Grazie e per favore msg me incase se qualcuno ha qualche domanda.