Sommario:
- Passaggio 1: materiali
- Passaggio 2: costruzione dell'auto intelligente
- Passaggio 3: codifica di un semplice programma "Labirinto"
- Passaggio 4: controllo motore di base
Video: La tua Smart Car e oltre HyperDuino+R V3.5R con Funduino/Arduino: 4 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:00
Questa è una copia diretta di questa serie di istruzioni QUI. Per maggiori informazioni vai su HyperDuino.com.
Con HyperDuino+R v4.0R puoi iniziare un percorso di esplorazione in molte direzioni diverse, dal controllo dei motori all'esplorazione dell'elettronica, dalla programmazione (codifica) alla comprensione di come il mondo fisico e quello digitale possono interagire. Con tutto ciò che impari di nuovo, le tue possibilità di invenzione, innovazione e ulteriori scoperte vengono amplificate di dieci volte e oltre.
Questo particolare tutorial prende il percorso di trasformare una scatola di cartone più alcune ruote e motori in una "macchina intelligente". Questo è spesso chiamato robotica, ma è un argomento degno di considerazione su ciò che differenzia un automa (automi), auto intelligenti e un "robot" (vedi anche, origine della parola "robot"). Ad esempio, questo "robot ruzzolante" è davvero un "robot" o semplicemente un automa?
Potrebbe sembrare che le parole non siano importanti, tuttavia per i nostri scopi, riteniamo che le differenze siano che un automa è qualcosa che non cambia il suo comportamento in base a un input esterno. Ripete lo stesso corso delle azioni programmate più e più volte. Un robot è qualcosa che esegue azioni diverse in risposta a input diversi. In forma avanzata, i livelli di più input possono comportare azioni diverse. Cioè, non solo un output per input, ma diverse azioni basate su un'analisi programmata di più input.
La “smart car” esplora questa gamma. Nella forma più semplice, un'auto intelligente è preprogrammata per muoversi in un percorso predefinito. La sfida in questo caso potrebbe essere quella di spostare l'auto attraverso un "labirinto" precostruito. Tuttavia, a quel punto, il successo della missione è determinato totalmente dall'insieme di azioni preprogrammate, ad esempio avanti 10, destra, avanti 5, sinistra, ecc.
Nel livello successivo, un input come quello proveniente da un sensore di distanza può richiedere all'auto di fermarsi prima che tocchi quell'ostacolo e fare una svolta per prendere una nuova direzione. Questo sarebbe un esempio di un input, un'azione. Cioè, lo stesso input (un ostacolo) risulta sempre nello stesso output (un giro di distanza dall'ostacolo).
A un livello più avanzato, il programma può monitorare più input, come il livello della batteria insieme a seguire il percorso e/o evitare gli ostacoli, e combinare tutti questi in un'azione successiva ottimale.
Nel primo caso, il programma è solo una sequenza di mosse. Nel 2° e 3° esempio, il programma include una struttura "if-then" che gli consente di eseguire diverse parti del programma in risposta agli input dei sensori.
Passaggio 1: materiali
Scatola HyperDuino o simile
HyperDuino+R v3.5R + Funduino/Arduino
Pellicola trasparente con retro adesivo (OL175WJ) con motivo stampato. (oppure usa questa guida solo per i motori e le ruote che possono essere stampati su carta)
Scatola batteria 4-AA più 4 batterie AA
2 motoriduttori di riduzione
2 ruote
1 rotella a sfera
4 viti a macchina #4 x 40 1 ½ con rondella e dado #4s
2 viti a macchina #4 x 40 ⅜” con rondella e dado #4s
1 cacciavite philipps/piatto
1 HC SR-04 Sensore di portata ad ultrasuoni
1 servo da 9 g
1 scatola batteria 4xAA
4 batterie AA
1 batteria 9v
1 telecomando IR e ricevitore IR
1 modulo ricevitore SH-HC-08 bluetooth 4.0 BLE
Sensore a ultrasuoni 1HC-SR04
2 cavi di collegamento a 3 fili.
2 cavi di collegamento a 4 fili compatibili con Grove.
1 connettore Grove al cavo delle prese
1 etichetta adesiva bianca vuota
1 cacciavite HyperDuino (o simile)
Passaggio 2: costruzione dell'auto intelligente
(Tutte le immagini fornite sopra)
Prepara la scatola
Sebbene il kit HyperDuino Robotics avrebbe potuto includere una base in plastica chiamata "chassis" (pronunciato "chass-ee"), pensiamo che sia molto più soddisfacente essere il più vicino possibile alla costruzione "da zero" della tua auto intelligente. Per questo motivo, inizieremo riutilizzando la scatola di cartone del kit HyperDuino Robotics stesso.
Nella confezione di HyperDuino+R troverai un pezzo di carta bianca con retro adesivo e un pezzo di materiale trasparente con retro adesivo con contorni che mostrano le posizioni dell'HyperDuino, della scatola della batteria e dei motori.
Ci sono anche cerchi che indicano dove posizionare i cerchi in velcro con retro adesivo.
1. Rimuovere il supporto adesivo dall'etichetta di carta bianca e posizionarlo sopra l'etichetta HyperDuino nella parte superiore della scatola. Nota: questo motivo adesivo viene fornito per fornire una guida al layout per una scatola specifica, la scatola di cartone MakerBit. Una volta utilizzata quella scatola, o se si desidera utilizzare una scatola diversa, è possibile utilizzare questo file modello pdf destinato alla stampa su carta, quindi ritagliare le guide del motore (superiore e inferiore = sinistra e destra) e una delle guide delle ruote piroettanti. Puoi fissare la carta con del nastro adesivo mentre fai i fori, quindi una volta che sono fatti rimuovi il cartamodello.
2. Aprire la scatola HyperDuino+R in modo che possa appiattirsi. Questa è probabilmente la parte più difficile del progetto. Avrai bisogno di premere e sollevare le linguette su ciascun lato della scatola dalle fessure sul fondo della scatola. Potresti scoprire che l'uso del cacciavite HyperDuino per spingere dall'interno dell'aletta verso l'esterno aiuterà a liberare le alette.
3. Rimuovere la metà del supporto adesivo sul materiale trasparente sul lato sinistro (se il logo HyperDuino è "in alto") e posizionarlo all'interno della scatola HyperDuino con i semicontorni delle fessure corrispondenti ai ritagli sul scatola. Fai del tuo meglio per allineare le due linee orizzontali con le pieghe del fondo della scatola HyperDuino+R.
4. Dopo aver posizionato il lato sinistro della pellicola trasparente, rimuovere il supporto di carta dalla metà destra e completare l'applicazione del motivo.
5. Usa la punta a croce del cacciavite HyperDuino incluso nel kit per fare piccoli fori per le viti a macchina che terranno i motori in posizione. Ci sono due fori per ogni motore, più un foro per l'asse del motore.
6. Continua e fai altri due fori per la pallina.
7. Per gli assi dei motori, utilizzare lo strumento per la foratura in plastica blu del kit HyperDuino per eseguire il primo piccolo foro che si allinea con gli assi dei motori. Quindi usa una penna a sfera di plastica o qualcosa di simile per allargare il foro a circa ¼ di pollice di diametro.
8. Metti una rondella su ciascuna delle viti lunghe (1 ½ ) e spingi attraverso i fori per i motori dall'esterno della scatola. (Ci vuole un po' di pressione decisa, ma le viti dovrebbero passare comodamente attraverso i fori.)
9. Montare il motore, che ha 2 piccoli fori che corrispondono alle viti della macchina, sulle viti e fissarlo in posizione con i dadi. Il cacciavite HyperDuino sarà utile per serrare le viti, ma non stringere troppo al punto da schiacciare il cartone.
10. Ripetere per l'altro motore.
11. Individua i cerchi di velcro. Accoppia i cerchi a strappo (sfocati) con il supporto ancora attaccato. Quindi rimuovi il supporto dal cerchio (sfocato) del loop e attacca ogni cerchio dove vedi i 3 contorni ciascuno per la scheda HyperDuino e la scatola della batteria. Dopo aver posizionato, rimuovere il supporto dal cerchio del gancio.
12. Ora posiziona con attenzione l'HyperDuino con il suo supporto in schiuma e la scatola della batteria (chiusa e con il lato dell'interruttore "su") sui cerchi in velcro. Premili verso il basso con una forza sufficiente da farli aderire al retro adesivo dei cerchi.
13. Ora puoi collegare i cavi della batteria e del motore. Se guardi molto da vicino, puoi vedere le etichette accanto a ciascuno degli 8 terminali del motore, etichettati A01, A02, B01 e B02. Collegare il filo nero del motore superiore (“B”) a B02 e il filo rosso a B01. Per il motore inferiore (“A”), collegare il filo rosso del motore inferiore (“A”) ad A02 e il filo nero ad A01. Per effettuare la connessione, inserisci delicatamente il filo nel foro finché non senti che si ferma, quindi solleva la leva arancione e tienila aperta mentre spingi il filo di altri 2 mm circa nel foro. Quindi rilasciare la leva. Se il filo è fissato correttamente, non uscirà quando gli dai un leggero strattone.
14. Per i fili della batteria, collegare il filo rosso a Vm del connettore di alimentazione del motore e il filo nero a Gnd. I piccoli motori possono essere alimentati dalla batteria Arduino 9v, ma una batteria aggiuntiva come il pacco batteria da quattro AA può essere utilizzata per alimentare i motori ed è collegata utilizzando i 2 terminali in alto a sinistra della scheda HyperDuino+R. La scelta spetta a te per la tua particolare applicazione e viene configurata spostando il "jumper" in una posizione o nell'altra. La posizione di default è a destra, per alimentare i motori dalla batteria da 9v. Per queste attività, in cui hai aggiunto la custodia con quattro batterie AA, vorrai spostare il ponticello nella posizione "sinistra".
15. Infine piega la scatola come mostrato in una delle ultime immagini rimanenti.
16. Ora è un buon momento per inserire le due viti da” con rondelle dall'interno della scatola attraverso i fori e fissare il gruppo della sfera con le rondelle.
17. Ora attacca le ruote semplicemente premendole sugli assi. Prestare attenzione alle ruote sugli assi del motore, in modo che le ruote siano ben perpendicolari agli assi e non più angolate di quanto si possa evitare. Le ruote ben allineate daranno all'auto una carreggiata più dritta quando si muove in avanti.
18. L'ultima cosa da fare per ora è fare un buco per il cavo USB. Non è così facile da fare in un modo carino, ma con un po' di determinazione, sarai in grado di portare a termine il lavoro. Guarda il connettore USB sulla scheda HyperDuino e la casella delineata con l'etichetta "Cavo USB". Seguilo visivamente sul lato della scatola e usa la punta Phillips del cacciavite HyperDuino per fare un foro a circa 1 "sopra il fondo della scatola e il più allineato possibile al centro del percorso del cavo USB. Se questo è fuori centro, sarà un po' più difficile in seguito collegare il cavo USB attraverso il foro. Dopo aver avviato il foro con il cacciavite, allargarlo ulteriormente con lo strumento blu per la creazione di fori, quindi un cilindro di plastica per penna, e infine passa a un pennarello o a qualsiasi altro strumento di diametro maggiore che riesci a trovare. Se hai un coltello Xacto, questo sarà il migliore, ma potrebbero non essere disponibili nelle impostazioni della classe.
19. Testare la dimensione del foro con l'estremità quadrata del connettore del cavo USB HyperDuino. Il foro non sarà molto carino, ma dovrai renderlo abbastanza grande da consentire il passaggio del connettore quadrato. Nota: dopo aver praticato il foro, il liquido correttivo ("White-out") è un modo per dipingere sul cartone più scuro esposto dalla creazione del foro.
20. Per far chiudere il coperchio della scatola, dovrai fare 2 tagli con le forbici dove altrimenti il lembo andrebbe a finire nel motore, e piegare leggermente il lembo risultante o tagliarlo completamente.
Passaggio 3: codifica di un semplice programma "Labirinto"
La prima sfida di programmazione sarà quella di creare un programma in grado di "guidare" l'auto attraverso uno schema.
Per fare ciò, dovrai imparare come utilizzare il linguaggio di programmazione a blocchi iForge per creare funzioni che controlleranno i motori all'unisono per spostarsi avanti e indietro e anche per svoltare a sinistra e a destra. La distanza percorsa dall'auto in ogni parte del suo viaggio è determinata da quanto tempo funzionano i motori e a quale velocità, quindi imparerai a controllarli anche.
Nell'interesse dell'efficienza in questo tutorial, ti indirizzeremo ora al documento "Codifica con HyperDuino e iForge".
Questo ti mostrerà come installare l'estensione iForge per Chrome, creare un account e creare programmi di blocco che controllano i pin su HyperDuino.
Quando hai finito, torna qui e continua con questo tutorial e impara a controllare i motori usando HyperDuino.
Passaggio 4: controllo motore di base
Nella parte superiore della scheda HyperDuino "R" sono presenti terminali di facile connessione che consentono di inserire un filo scoperto da un motore o una batteria. In questo modo non sono necessari connettori speciali e hai maggiori probabilità di essere in grado di collegare batterie e motori "fuori dalla scatola".
Nota importante: I nomi "A01" e "A02" per i connettori del motore NON significano che i pin analogici A01 e A02 li controllano. Le lettere “A” e “B” sono usate solo per designare i motori “A” e “B”. I pin I/O digitali da 3 a 9 vengono utilizzati per controllare qualsiasi motore collegato ai terminali della scheda HyperDuino+R.
La batteria deve essere scelta con una capacità di potenza (milliampere-ora) e una tensione adeguata ai motori che si stanno utilizzando. 4 o 6 batterie AA in una scatola come questa sono tipiche:
Esempio da Amazon: Portabatterie 6 AA con connettore da 2,1 mm x 5,5 mm Uscita 9V (Immagine 2)
È importante collegare correttamente la polarità (positivo e negativo) a Vm (positivo) e Gnd ("massa" = negativo). Se si collega il cavo positivo di una fonte di alimentazione all'ingresso negativo (Gnd) della connessione di alimentazione esterna, è presente un diodo di protezione che blocca il cortocircuito e, allo stesso tempo, i motori non si eccitano.
Il controller del motore può controllare:
Quattro motori DC unidirezionali collegati a A01/Gnd, A02/Gnd, B01/Gnd, B02/Gnd
Nota: solo un motore “A” e un motore “B” possono essere accesi contemporaneamente. Non è possibile avere tutti e quattro i motori unidirezionali accesi contemporaneamente.
Pin 8: alto, Pin 9: basso = Motore A01 “acceso”
Pin 8: basso, Pin 9: alto = Motore A02 “acceso”
(Pin 8, 9: basso = entrambi i motori B spenti)
Pin 12: basso, Pin 13: alto = Motore B01 “acceso”
Pin 12: alto, Pin 13: basso = Motore B02 “acceso”
(Pin 12, 13: basso = entrambi i motori B spenti)
Due motori DC bidirezionali collegati a A01/A02 e B01/B02
Pin 8 = alto, pin 9 = basso = Motore A “avanti*”
Pin 8 = basso, pin 9 = alto = Motore A “reverse*”
(Pin 8 = basso, pin 9 = basso = motore A “spento”)
Pin 12 = alto, pin 13 = basso = Motore B “avanti*”
Pin 12 = basso, pin 13 = alto = Motore B “reverse*”
(Pin 12 = basso, pin 13 = basso = Motore B “spento”)
(*soggetto alla polarità del cablaggio del motore e all'orientamento del motore, della ruota e dell'auto robotica.)
Un motore passo passo collegato a A01/A02/B01/B02 e Gnd
I limiti di tensione e corrente del controller motore HyperDuino sono 15 V e 1,2 A (media)/3,2 A (picco) basati sul circuito integrato del controller motore Toshiba TB6612FNG.
Motore "A": collegare a A01 e A02
(Guarda le ultime due foto per dimostrazione)
Velocità del motore
La velocità dei motori A e B è controllata con i pin 10 e 11, rispettivamente:
Velocità del motore A: Pin 10 = PWM 0-255 (o impostare pin 10 = HIGH)
Velocità del motore B: Pin 11 = PWM 0-255 (o set pin 11 = HIGH)
Nel funzionamento unidirezionale (quattro motori), il controllo della velocità del pin 10 funziona per entrambi i motori "A" e il pin 11 per entrambi i motori "B". Non è possibile controllare indipendentemente la velocità di tutti e quattro i motori.
Motori a bassa potenza (meno di 400 mA)
Il controller del motore può utilizzare una fonte di batteria esterna fino a 15 V e 1,5 A (2,5 A momentaneamente). Tuttavia, se stai utilizzando un motore che può funzionare a 5-9 V e utilizza meno di 400 mA, puoi utilizzare il ponticello nero accanto ai connettori di alimentazione del motore e spostarlo in posizione "Vin". La posizione alternativa, "+VM" è per l'alimentazione esterna.
Attività per auto intelligenti
Con la tua smart car assemblata, puoi ora procedere all'attività Smart Car dove imparerai come programmare la tua auto.