Sommario:

Robot autobilanciato: 6 passaggi (con immagini)
Robot autobilanciato: 6 passaggi (con immagini)

Video: Robot autobilanciato: 6 passaggi (con immagini)

Video: Robot autobilanciato: 6 passaggi (con immagini)
Video: Self Balancing Robot using Arduino | How to Make Self Balancing Robot @XiLiRTechnologies 2024, Dicembre
Anonim
Robot autobilanciante
Robot autobilanciante

In questo Instructable ti mostreremo come costruire il robot autobilanciato che abbiamo realizzato come progetto scolastico. Si basa su altri robot, come nBot e un altro Instructable. Il robot può essere controllato da uno smartphone Android tramite una connessione Bluetooth. Poiché questo Instructable copre solo il processo di costruzione, abbiamo anche scritto un documento per coprire il background tecnico del codice e dell'elettronica. Contiene anche collegamenti alle fonti utilizzate, quindi puoi dare un'occhiata se il documento non è abbastanza completo per te.

Per seguire tutti i passaggi di questo progetto avrai bisogno di alcune abilità di stampa 3D o qualche altro modo intelligente per collegare le ruote ai motori.

Passaggio 1: requisiti

Requisiti
Requisiti
Requisiti
Requisiti
Requisiti
Requisiti

Il robot è basato su una scheda controller gimbal brushless Martinez. Ci sono alcune lievi variazioni di questa scheda, ma finché ne hai una con un chip ATmega328 e controller del motore L6234 dovresti andare bene. Se cerchi "Scheda Martinez" su Google Immagini, vedrai che ci sono alcune schede con un connettore facile per il chip IMU e/o la batteria, invece di intestazioni o fori per pin. Nell'ultimo caso, sarà utile se ordini un pacchetto di perni di intestazione, che puoi quindi saldare nei fori.

Lista delle parti

Alcuni degli articoli in questo elenco contengono collegamenti a negozi online.

  • Controller: Martinez BoardDX.com (viene fornito anche con l'IMU e alcuni pin di intestazione).
  • IMU: MPU6050
  • Batteria (batteria LiPo 3S da 450 mAh) Nota: avrai anche bisogno di un caricabatterie LiPo 3S eBay.com
  • 2x motore: motore brushless 2208, KV100DX.com
  • Ruote (puoi ottenerle da giocattoli esistenti o LEGO)
  • 6x viti M2 5 mm
  • 8 viti M3 (la lunghezza dipende dal materiale per l'esterno, una deve essere extra lunga)
  • Chip Bluetooth HC-05 (assicurati di averne uno con una scheda di interfaccia seriale collegata, non solo un chip nudo) IMPORTANTE: assicurati che il chip abbia un pin etichettato KEY.
  • Fili: DuPont da femmina a femmina L'acquisto di un pacchetto di 20 fili sarà più che sufficiente
  • Nastro in velcro
  • Cavo USB per collegare il controller al PC
  • Opzionale: Header pinsDX.com (puoi tagliarli o spezzarli alla lunghezza desiderata)
  • Rondelle e distanziali in plastica

Infine, hai bisogno di acrilico, legno o cartone - accompagnato da colla o nastro adesivo - per creare una struttura che contenga tutti i componenti.

Passaggio 2: configurazione del chip Bluetooth

Configurazione del chip Bluetooth
Configurazione del chip Bluetooth

Una volta acquisite tutte le parti, è il momento della configurazione del chip Bluetooth. Avrai bisogno di un cavo USB per collegare la scheda controller al tuo computer e l'IDE Arduino per comunicare con i componenti.

Per questo, dovrai scaricare il file:

HC-05_Serial_Interface.ino

Quindi segui questi passaggi:

  1. Collega il controller al computer con un cavo USB.
  2. Apri il file.ino con l'IDE di Arduino.
  3. Nell'IDE, vai su Strumenti, Scheda e assicurati che sia impostato su Arduino/Genuino Uno.
  4. Ora vai su Strumenti, Porta e impostalo sulla porta COM a cui è collegato il controller. Di solito c'è solo una porta. Se ce ne sono più, controlla Gestione dispositivi (in Windows) per scoprire qual è il controller.
  5. Ora, premi il pulsante Carica nell'IDE e attendi il completamento del caricamento. Quindi, scollegare il cavo USB dal computer o dal controller.

Dopo averlo fatto, collega l'HC-05 usando i cavi DuPont come segue:

HC-05 Controller

TASTO +5V GND GND TXD RX RXD TX

Ora collega di nuovo il cavo USB, quindi collega il pin VCC dell'HC-05 a un altro +5V sul controller. Il LED dovrebbe lampeggiare con un intervallo di circa 1 secondo.

Nell'IDE di Arduino, seleziona la porta COM corretta, quindi vai su Strumenti, Serial Monitor.

Impostare l'opzione Fine linea nel monitor seriale su Entrambi NL e CR. Impostare la velocità di trasmissione su 38400. Ora è possibile utilizzare il monitor seriale per inviare comandi di configurazione al chip Bluetooth. Questi sono i comandi:

AT Controllare la connessione

AT+NAME Ottieni/imposta nome visualizzato Bluetooth AT+UART Ottieni/imposta baud rate AT+ORGL Ripristina impostazioni di fabbrica AT+PSWD Ottieni/imposta password Bluetooth

Per modificare nome, password e baud rate del dispositivo Bluetooth, inviare i seguenti comandi:

AT+NAME="Nome esempio"

AT+PSWD="PassWord123" AT+UART="230400, 1, 0"

Le opzioni Nome e Password possono essere impostate su quello che vuoi, assicurati solo di impostare la velocità di trasmissione usando lo stesso identico comando elencato sopra. Questo lo imposta a 230400 baud, con 1 bit di stop e nessuna parità. Dopo aver impostato tutto, ricollega il cavo USB (per uscire dalla modalità di configurazione) e prova ad associare il telefono al chip. Se tutto funziona scollegare il cavo USB e passare al passaggio successivo.

Passaggio 3: collegamento delle ruote ai motori

Fissaggio delle ruote ai motori
Fissaggio delle ruote ai motori
Fissaggio delle ruote ai motori
Fissaggio delle ruote ai motori

Le ruote che sono state utilizzate in questo progetto hanno un'origine sconosciuta (erano in giro in un cassetto con molte altre cose). Per collegare le ruote ai motori, abbiamo stampato in 3D un pezzo che corrispondeva ai fori delle viti sui motori. I pezzi sono stati avvitati utilizzando tre viti da 5 mm 2M per motore. Entrambi i pezzi hanno un perno che si adatta ai fori negli assi delle ruote.

Il modello SolidWorks è incluso. Probabilmente dovrai modificarlo per le tue ruote o trovare una soluzione pratica diversa per montare le ruote. Ad esempio, potresti usare un Dremel per praticare un foro delle stesse dimensioni del motore (o un po' più piccolo per dargli una perfetta aderenza), quindi puoi premere il motore nella ruota. Assicurati solo di ottenere ruote appropriate per questo lavoro se hai intenzione di farlo.

Passaggio 4: creazione dell'esterno

Creare l'esterno
Creare l'esterno

Per l'esterno sono stati utilizzati due pezzi di legno tagliati nella stessa forma. Per iniziare, abbiamo segnato la circonferenza del motore in basso al centro del pezzo. Abbiamo quindi contrassegnato ogni angolo con una linea di 45 gradi, assicurandoci di lasciare spazio sufficiente affinché il motore si trovi in basso al centro. Quindi abbiamo bloccato i due pezzi di legno insieme e abbiamo segato gli angoli. Per finire, abbiamo levigato gli angoli per renderli meno nitidi e rimuovere le schegge.

Ora è il momento di praticare i fori per le viti e l'asse che fuoriesce dalla parte posteriore del motore. Se si bloccano insieme i pezzi di legno durante la foratura, è sufficiente praticare ogni foro una volta.

Per creare il layout per i fori delle viti, abbiamo usato un pezzo di carta e l'abbiamo posizionato sul retro del motore e abbiamo usato una matita per premere nei fori delle viti, proprio attraverso la carta. Il pezzo di carta con i quattro fori per le viti è stato quindi posizionato sul legno in modo da poter segnare la posizione dei fori da praticare. Per eseguire i fori, utilizzare un trapano da 3, 5 mm. Ora, usa una matita e un righello per trovare il centro di questi fori e crea il foro per l'asse usando un trapano da 5 mm. Fissare i motori con viti M3, ma lasciare una delle viti distanziate più larghe da un motore.

Per ottenere il connettore del motore e il cavo all'interno del robot, abbiamo anche praticato un foro di 8 mm poco sopra il motore. Assicurati che ci sia abbastanza spazio per piegare i fili senza stressarli troppo.

È importante lavorare nel modo più preciso possibile per creare un esterno simmetrico (quasi) perfetto

Passaggio 5: montaggio dei componenti

Montaggio dei componenti
Montaggio dei componenti

Segna una linea guida verticale centrale sul legno in modo da poter posizionare i componenti al centro. Puoi attaccare tutto al legno usando del nastro in velcro. Nel nostro robot abbiamo usato piccoli bulloni e dadi per fissare la scheda del controller, ma puoi anche usare del nastro in velcro (non ce l'avevamo ancora quando abbiamo attaccato il controller). Assicurati di poter collegare un cavo USB dopo aver terminato la costruzione.

Abbiamo posizionato il controller al centro con la porta USB rivolta verso il basso, in modo da poter collegare il cavo tra le ruote. Puoi anche puntarlo su uno dei lati.

Posiziona la batteria il più in alto possibile, in modo che il robot diventi pesante. Posiziona anche la porta di ricarica in un luogo facile da raggiungere vicino al bordo.

Chip Bluetooth

Collegare il pin VCC del chip Bluetooth a +5V sul controller e il Bluetooth GND al GND del controller. Il pin TXD del controller va al Bluetooth RX e il pin RXD sul controller va al pin Bluetooth TX. Quindi basta attaccare il chip Bluetooth da qualche parte sul pannello di legno usando del nastro in velcro.

Chip di movimento

Il chip di movimento ha due fori per le viti, quindi abbiamo fissato il chip utilizzando un distanziatore, in modo tale che il centro del chip cada sul centro del motore. L'orientamento non ha importanza, poiché il robot si calibra da solo all'avvio. Assicurarsi di utilizzare una rondella di plastica sotto la testa della vite per evitare di cortocircuitare il circuito.

Quindi utilizzare i cavi DuPont per collegare i pin al controller. Ogni pin è etichettato allo stesso modo sul controller e sul chip di movimento, quindi collegarlo è abbastanza autoesplicativo.

Interruttore di alimentazione

Collegare un interruttore di alimentazione è facile. Ne abbiamo preso uno da un vecchio dispositivo e lo abbiamo dissaldato dal suo circuito. Per usarlo come interruttore di alimentazione per il robot, collega il filo positivo della batteria al pin (supponendo che sia un interruttore a tre pin) sul lato in cui desideri attivare l'interruttore. Quindi, collega il pin centrale all'ingresso di alimentazione positivo del controller. Abbiamo saldato i cavi DuPont all'interruttore, in modo che la batteria stessa non sia collegata in modo permanente all'interruttore.

Collegamento dei lati

Ora conosci la posizione dei componenti e hai i due lati del robot. Il passaggio finale nella costruzione del robot sarà collegare i due lati l'uno con l'altro. abbiamo usato quattro set di tre pezzi di legno incollati insieme e li abbiamo avvitati ai lati in modo che il nostro chip di movimento fosse sull'asse centrale del robot. Va detto che il materiale utilizzato, purché sia sufficientemente resistente, non ha molta importanza. Puoi anche utilizzare una connessione più pesante sulla parte superiore per aumentare ulteriormente l'altezza del baricentro. Ma a differenza della posizione verticale del centro di massa, la posizione orizzontale del centro di massa dovrebbe essere mantenuta il più possibile in posizione, sopra l'asse della ruota, poiché la codifica del codice per il chip di movimento diventerebbe piuttosto difficile se il centro orizzontale di massa spostata.

Ora sei pronto per caricare il codice e mettere a punto il controller.

Passaggio 6: caricamento e messa a punto del codice

Per caricare il codice, è necessario un computer con l'IDE Arduino. Scarica il file.ino qui sotto e aprilo con l'IDE di Arduino. Il caricamento sul controller viene eseguito nello stesso modo in cui hai eseguito il codice dalla configurazione Bluetooth.

Per far funzionare il robot, è necessario scaricare l'app "Joystick bluetooth Commander" dal Play Store. Accendi il robot e posizionalo sul pavimento, davanti o dietro. Avvia l'app e connettiti al chip Bluetooth. Datafield 1 passerà da XXX a READY una volta che il robot si sarà calibrato (5 secondi per posizionarlo su un fianco, seguiti da 10 secondi di calibrazione). Puoi accendere il robot premendo il pulsante 1 nell'app. Ora posiziona il robot verticalmente a terra e rilascia quando senti che i motori si accendono. Questo è quando il robot inizia a bilanciarsi.

Il robot è ora pronto per essere sintonizzato, poiché la sua stabilità probabilmente non è eccezionale. Puoi provare se funziona senza ulteriori regolazioni, ma devi rendere il robot abbastanza identico al nostro per farlo funzionare correttamente. Quindi, nella maggior parte dei casi, dovresti regolare il controller per funzionare al meglio con il tuo robot. È abbastanza facile, nonostante richieda molto tempo. Ecco come farlo:

Regolazione del controller

Da qualche parte nel codice troverai 4 variabili, che iniziano con un k. Questi sono kp, kd, kc e kv. Inizia impostando tutti i valori a zero. Il primo valore da impostare è kp. Il valore kp predefinito è 0,17. Prova a impostarlo su qualcosa di molto più basso come 0,05. Spegni il robot, carica il codice e guarda come cerca di bilanciarsi. Se cade in avanti, aumentare il valore. Il modo più intelligente per farlo è interpolando:

  1. Imposta il valore su qualcosa di basso e provalo
  2. Imposta il valore su qualcosa di alto e provalo
  3. Imposta il valore sulla media dei due e provalo
  4. Ora prova a scoprire se si è bilanciato meglio sul valore basso o alto e fai la media tra il valore corrente e quello a cui ha funzionato meglio.
  5. Continua finché non trovi un punto debole

Il punto debole per il valore kp è quando è al limite della sotto e sovracompensazione. Quindi a volte cadrà in avanti perché non può tenere il passo con la sua velocità di caduta, e altre volte cadrà all'indietro perché sorpassa in una direzione diversa.

Dopo aver impostato il valore kp, imposta il kd. Questo può essere fatto nello stesso modo in cui hai fatto con kp. Aumentare questo valore fino a quando il robot è quasi in equilibrio, in modo che oscilli avanti e indietro fino a cadere. Se lo imposti troppo in alto, puoi farlo bilanciare già abbastanza bene, ma quando l'equilibrio è disturbato troppo, cadrà (come quando gli dai una spinta). Quindi prova a trovare il punto in cui non è abbastanza equilibrato, ma abbastanza vicino.

Come puoi immaginare, la messa a punto del controller potrebbe richiedere diversi tentativi poiché diventa più difficile con ogni nuova variabile introdotta. Quindi, se pensi che non funzionerà, ricomincia da capo.

Ora è il momento di impostare il kv. Interpola questo finché non trovi un valore al quale il robot smette di oscillare, rimane in equilibrio e può sopportare una leggera spinta. Se impostato su un valore troppo alto, influisce negativamente sulla stabilità. Prova a giocare con kv e kp per trovare un punto in cui è più stabile. Questo è il passaggio che richiede più tempo per l'accordatura.

L'ultimo valore è kc. Questo valore fa tornare il robot alla sua ultima posizione dopo aver compensato una spinta o qualcos'altro. Puoi provare lo stesso metodo di interpolazione qui, ma 0,0002 dovrebbe funzionare abbastanza bene nella maggior parte dei casi.

Questo è tutto! Il tuo robot è ora pronto. Usa il joystick del tuo smartphone per controllare il robot. Attenzione, però, perché andare avanti alla massima velocità potrebbe comunque far cadere il robot. Gioca con le variabili del controller per compensare il più possibile. Il passo più logico sarebbe guardare il valore kp per questo, poiché compensa direttamente l'angolo attuale del robot.

Nota importante sulle batterie LiPo

Si consiglia di controllare regolarmente la tensione della batteria LiPo. Le batterie LiPo non devono essere scaricate a meno di 3 volt per cella che misura 9 volt su una LiPo 3S. Se la tensione scende sotto i 3 volt per cella, ci sarà una perdita permanente di capacità della batteria. Se la tensione scende al di sotto di 2,5 volt per cella, smaltire la batteria e acquistarne una nuova. Caricare una cella LiPo con meno di 2,5 volt è pericoloso perché la resistenza interna diventa molto alta, con conseguente batteria calda e potenziale rischio di incendio durante la ricarica.

Consigliato: