Sommario:

Tinku: un robot personale: 9 passaggi (con immagini)
Tinku: un robot personale: 9 passaggi (con immagini)

Video: Tinku: un robot personale: 9 passaggi (con immagini)

Video: Tinku: un robot personale: 9 passaggi (con immagini)
Video: Основные ошибки при шпатлевке стен и потолка. #35 2024, Dicembre
Anonim
Tinku: un robot personale
Tinku: un robot personale

Di sw4pFollow Altro dell'autore:

Superficie immateriale
Superficie immateriale
Superficie immateriale
Superficie immateriale
Instructable cancellato
Instructable cancellato
Instructable cancellato
Instructable cancellato
Pianoforte in cartone
Pianoforte in cartone
Pianoforte in cartone
Pianoforte in cartone

Ciao, Tinku non è solo un robot; è un robot personale. È un pacchetto tutto in uno. Può vedere, ascoltare, parlare e reagire alla situazione. Può esprimere emozioni e l'elenco delle cose che può fare continua. Gli ho dato un nome; Lo chiamo Tinku.

Una breve introduzione di ciò che può fare è

  1. Visione computerizzata
    • Riconoscimento facciale
    • Riconoscimento volto
    • Scatta foto e registra video
    • Riconoscere i marcatori ArUco
  2. Elaborazione del parlato

    • Elaborazione vocale offline (rilevamento hotword)
    • Può capire cosa stai dicendo rilevando Hotwords.
  3. Esprimere Emozioni

    • Muove la testa per le comunicazioni non verbali e per esprimere sentimenti.
    • Visualizza immagini e-g.webp" />
  4. Muoviti

    Può correre usando le sue ruote e identificare i luoghi usando i marcatori ArUco

  5. Evitare gli ostacoli

    Dispone di sensori sonar, quindi è sempre consapevole di ciò che lo circonda e può evitare gli ostacoli

Può fare molte più cose. Puoi anche implementare le nuove funzionalità che desideri.

Basta chiacchiere, facciamo.

EDIT: Il corpo di Tinku ha iniziato a rompersi, quindi ho dovuto ridisegnarlo completamente. Ecco le nuove immagini, completamente fresche e migliori di Tinku. Mi dispiace, non ho le immagini dei passaggi di riprogettazione di Tinku.

Passaggio 1: cose di cui avrai bisogno

Cose di cui avrai bisogno
Cose di cui avrai bisogno
Cose di cui avrai bisogno
Cose di cui avrai bisogno
Cose di cui avrai bisogno
Cose di cui avrai bisogno
Cose di cui avrai bisogno
Cose di cui avrai bisogno

Il corpo del robot

  1. Foglio acrilico
  2. pannello MDF
  3. Morsetti a L piccoli
  4. Confezione di dadi e viti

Servi, motori e ruote

  1. Dynamixel AX-12A (3 pezzi)
  2. Set di bulloni e dadi Bioloid
  3. Motori (2 pezzi)
  4. Brani (2 confezioni)
  5. Ruote da cingoli (4 pezzi)
  6. Morsetti a L per motori (2 pezzi)
  7. Morsetto a L per albero ruota fittizia (2 pezzi)
  8. Perno ruota fittizia (2 pezzi)
  9. Telaio Bioloid F8
  10. Telaio Bioloid F3 (2 pezzi)
  11. Telaio Bioloid F2
  12. Telaio Bioloid F10

Elettronica

  1. Arduino
  2. Raspberry Pi o Udoo Quad
  3. Autista del motore
  4. Logitech webcam-c270 (ha un microfono integrato)
  5. Sensori di distanza ad ultrasuoni (6 pezzi)
  6. Batteria Lipo (3300 Mah 3S)
  7. Regolatore di tensione elevatore (DC-DC)
  8. Regolatore di tensione step-down (DC-DC)
  9. Schermo tattile (7 pollici)
  10. Hub USB (Solo se stai usando Udoo Quad perché ha solo 2 porte USB)
  11. 7404 esadecimale inverter IC
  12. 74HC244 IC
  13. Base CI a 14 pin
  14. Base CI a 20 pin

Connettori e cavi

  1. Connettore batteria maschio T-plug
  2. Cavo HDMI flessibile (solo se lo schermo ha un connettore HDMI)
  3. Cavo micro USB
  4. Cavo relimate femmina-femmina a tre pin (6 pezzi)
  5. Spina di alimentazione maschio DC barile jack (2 pezzi)
  6. Connettori servo Dynamixel (3 pezzi)
  7. Cavo USB da A a B (solo se non è fornito con Arduino)
  8. Ponticelli
  9. Fili per tagliere
  10. Strisce di Burg

Per realizzare PCB

  1. Laminato rivestito di rame
  2. incisore PCB (Fecl3)
  3. PCB perforato
  4. Punta da trapano da 1 mm

Varie

  1. Colla
  2. Tubi del dissipatore di calore
  3. situazioni di stallo

Nota: qui sto usando la scheda Udoo perché ha una velocità di calcolo migliore rispetto al mio raspberry pi 2. Sto usando un Arduino esterno anziché l'Arduino integrato della scheda Udoo perché tutti i miei sensori e moduli sono compatibili con 5v e Arduino in La scheda Udoo è compatibile con 3v.

Passaggio 2: corpo del robot

Corpo del Robot
Corpo del Robot
Corpo del Robot
Corpo del Robot
Corpo del Robot
Corpo del Robot
Corpo del Robot
Corpo del Robot

Per preparare il corpo del robot, ho usato il foglio acrilico e l'ho tagliato nella dimensione specificata per creare una struttura simile a una scatola. Ho menzionato la dimensione di ciascun lato del corpo nell'immagine.

  1. Tagliare il foglio acrilico secondo la dimensione specificata.
  2. Praticare dei fori in punti specifici per montare i motori, i sensori, i distanziatori e per unire ogni piastra insieme.
  3. Praticare un foro più grande nella piastra di base e nella piastra superiore per far passare i cavi.
  4. Praticare una piccola tacca sul lato inferiore del pannello anteriore e posteriore in modo che i fili provenienti dal sensore a ultrasuoni possano passare.

È ora di preparare e montare i motori e i cingoli.

  1. Saldare i fili extra ai pin del motore in modo che il filo possa raggiungere i driver del motore.
  2. Montare i morsetti del motore e i morsetti dell'albero della ruota fittizia sulla piastra di base del robot.
  3. Collegare i motori e l'albero della ruota fittizia ai morsetti, quindi collegare le ruote.
  4. Assemblare le tracce e creare un loop.
  5. Traccia cinghia sulle ruote. Tieni presente che la pista non si allenta e ha abbastanza tensione su di essa.

Ora unisci il pannello anteriore, posteriore e uno laterale sul pannello di base utilizzando piccoli morsetti a L. Non montare il pannello superiore e un pannello laterale in modo da avere spazio sufficiente per montare l'elettronica sul robot.

Passaggio 3: testa e volto del robot

Image
Image
Testa e faccia del robot
Testa e faccia del robot
Testa e faccia del robot
Testa e faccia del robot
Testa e faccia del robot
Testa e faccia del robot

Abbiamo già dato corpo e ruote al nostro robot. Ora è il momento di dargli una testa, un collo e una faccia.

Collo:

La parte più complicata nella testa del robot è il collo. Quindi lo prepareremo prima. I servi Dynamixel sono un po' confusi con cui lavorare, ma sono affidabili e durevoli. Ci sono tonnellate di morsetti di montaggio disponibili per questo in modo da poterli collegare insieme in qualsiasi modo.

Guarda questo video per una migliore spiegazione su come collegare i servi dynamixel insieme.

  1. Inserire i dadi nei servi dynamixel per montarli con i telai.
  2. Posizionare il telaio bioloide F8 al centro del pannello superiore e segnare i fori e forarli.
  3. Fissare il telaio bioloid F8 a uno dei servi, quindi montare il telaio bioloid F8 sul pannello superiore.
  4. Unisci ogni servo insieme usando diversi telai e prepara il collo.
  5. Collegare i servi l'uno all'altro utilizzando i connettori dei servi dynamixel a tre pin.

Occhio e orecchio:

Sto usando la webcam Logitech-c270 come occhio per il mio robot. È una buona fotocamera che può scattare foto e registrare video a 720p. Ha anche un microfono integrato, quindi diventa orecchio anche per il mio robot. Dopo un lungo brainstorming, ho scoperto che il posto migliore per montare la fotocamera è sopra lo schermo. Ma per montare la telecamera, ho bisogno di un supporto per telecamera. Quindi facciamone uno.

  1. Rimuovere i pezzi di metallo dalla webcam che sono forniti per dargli un po' di peso.
  2. Taglia due pezzi dal pannello MDF, uno quadrato e uno triangolare con le dimensioni mostrate nell'immagine.
  3. Praticare un foro nella base della webcam e sul pezzo quadrato in MDF. Fai una tacca sul pezzo quadrato per inserire il cavo della webcam.
  4. Incolla i pezzi di MDF insieme per formare una forma a T. Il supporto per fotocamera è pronto.
  5. Prima di collegare insieme il supporto della fotocamera e la fotocamera, preparare prima la testa.

Capo:

La testa del robot è collegata ai servi. Deve essere il più leggero possibile in modo che la testa non applichi molto carico sui servi. Pertanto ho usato il pannello MDF al posto del foglio acrilico.

  1. Taglia un pezzo di pannello MDF di dimensioni (18 cm x 13 cm) e pratica dei fori per montare lo schermo.
  2. Posizionare il telaio bioloid F10 al centro del pannello MDF e segnare i fori e forarli.
  3. Impostare il telaio bioloid F10 e il telaio bioloid F2 su ciascun lato del pannello MDF e unirli insieme utilizzando dado e vite.
  4. Ora incolla il supporto della fotocamera sul lato posteriore della scheda.
  5. Unire il telaio bioloid F2 con la fine della configurazione del servo.
  6. Montare lo schermo sulla scheda MDF utilizzando i distanziatori.
  7. Attacca la webcam al supporto della fotocamera.

Ora la nostra testa e la faccia del robot sono complete.

Passaggio 4: PCB personalizzati

PCB personalizzati
PCB personalizzati
PCB personalizzati
PCB personalizzati
PCB personalizzati
PCB personalizzati

Ora è il momento di sciogliere un po' di fecl3 e incidere dei PCB.

Perché ho realizzato PCB personalizzati?

  • Non ho il servo controller Dynamixel, quindi devo crearne uno.
  • Devo collegare molti sensori ad Arduino in modo più pulito, quindi ho creato uno scudo per Arduino.

Facciamo.

  1. Scarica i file PCB e stampali sul laminato rivestito di rame.
  2. Incidi il laminato rivestito di rame usando fecl3
  3. Praticare fori da 1 mm per il montaggio di circuiti integrati e burg strip.
  4. Per fare in modo che le intestazioni di impilamento degli schermi scorrano verso il basso i tappi di plastica della striscia di protezione verso l'estremità dei perni.
  5. Saldare le basi IC e la striscia burg sui PCB.
  6. Ho fornito gli schemi a scopo di riferimento.

Nota: utilizzare il software Express PCB per aprire il.pcb e il software Express SCH per aprire il file.sch.

Passaggio 5: alimentazione

Alimentazione elettrica
Alimentazione elettrica
Alimentazione elettrica
Alimentazione elettrica

È molto necessario mantenere una potenza costante tra i diversi moduli elettronici e motori del robot. Se la potenza scende al di sotto del valore limite in qualsiasi modulo, ciò causerà un problema tecnico ed è molto difficile identificare il motivo alla base.

La principale fonte di energia in questo robot è una batteria Lipo 3S da 2200mAh. Questa batteria ha tre celle e l'uscita di tensione è di 11,1 volt. La scheda Udoo necessita di alimentazione a 12v e la scheda Arduino necessita di alimentazione a 5v. Quindi scelgo di usare due regolatori di tensione, uno è step-up e l'altro è step-down. Uno manterrà l'alimentazione di corrente a tutti i moduli da 12 V e l'altro manterrà l'alimentazione di corrente a tutti i moduli da 5 V.

L'immagine contiene schemi disegnati a mano.

  • Saldare i regolatori di tensione sulle schede PCB perforate.
  • Saldare il connettore maschio della batteria con spina a T all'ingresso di entrambi i regolatori di tensione.
  • Collegare l'uscita 'Ground' di entrambi i regolatori.
  • Collegare i jack CC a cilindro a ciascuna uscita del regolatore. Mantieni la lunghezza dei cavi abbastanza lunga in modo che possa raggiungere la scheda Udoo/Raspberry Pi e Arduino.
  • Saldare la striscia burg a ciascuna uscita del regolatore come potenza aggiuntiva nel caso in cui ne avessimo bisogno in una futura modifica.
  • Prima di collegare l'alimentatore a uno qualsiasi dei moduli elettronici, calibrare l'uscita di ciascun regolatore utilizzando il potenziometro di trim fornito esattamente a 12v e 5v.

Passaggio 6: assemblaggio finale

Assemblea finale
Assemblea finale
Assemblea finale
Assemblea finale
Assemblea finale
Assemblea finale

È ora. Dopo tanti passaggi è il momento di assemblare ogni modulo insieme. Emozionato? Bene, lo sono.

  • Taglia un pezzo rettangolare del pannello MDF con le dimensioni (30 cm x 25 cm). Questa scheda è la base per il montaggio dei moduli elettronici. Non voglio praticare molti fori nella piastra acrilica di base, quindi sto usando il pannello MDF. Aiuta anche a nascondere i fili sotto di esso per rendere il nostro robot pulito e ordinato.
  • Posizionare i moduli sulla scheda MDF e contrassegnare i fori di montaggio e forarli. Fai dei fori extra per far passare i fili sotto la scheda MDF.
  • Ho assegnato dei numeri ad alcuni fori, quindi diventa facile per me riferirli e per te capire gli schemi di cablaggio.

Alimentazione elettrica:

  • Montare il modulo di alimentazione sulla scheda e far passare il jack 12v e 5v attraverso il foro numero 1 ed estrarre il jack 12v attraverso il foro numero 2 ed estrarre il jack 5v attraverso il foro numero 3.
  • Ho lasciato la batteria libera per ora perché ho bisogno di rimuoverla e caricarla a volte.

Driver del motore:

  • Estrarre i fili collegati ai motori attraverso il foro numero 4 e collegarli alla scheda driver del motore.
  • I motori necessitano dell'alimentazione a 12 V per funzionare correttamente, quindi collegare i pin 12 V e GND del driver con l'uscita del regolatore di tensione 12 V.
  • Collega i pin del driver del motore ad Arduino secondo il codice.

Arduino:

  • Prima di montare l'Arduino far passare i fili dei tre sensori ad ultrasuoni attraverso il pannello posteriore e far passare i fili dei restanti tre sensori ad ultrasuoni attraverso il pannello frontale ed estrarli attraverso il foro numero 3.
  • Monta l'Arduino e attaccaci lo scudo del sensore.
  • Ho dato i numeri a tutti i fili del sensore a ultrasuoni in modo che sia facile eseguire il debug in caso di bug. Collegare i pin del sensore allo schermo partendo dal numero 1 fino a 6 consecutivamente.
  • Collega il jack di alimentazione 5v ad Arduino.

Servocontrollore Dynamixel:

  • Montare il servocontrollore dynamixel sulla scheda.
  • Collegare i pin 12v e GND del servocontrollore con l'uscita del regolatore di tensione 12v.
  • Collegare i pin 5v e GND del servocontrollore con l'uscita del regolatore di tensione 5v.
  • Collegare i pin del servocontrollore e Arduino secondo il codice.
  • Lascia il pin di uscita del servo scollegato per ora. Collegalo dopo aver montato il pannello superiore del robot.

Udoo / Raspberry Pi:

Nota: prima di seguire i passaggi seguenti, assicurati di aver già installato il sistema operativo sulla scheda MicroSD e di averlo inserito nella scheda Udoo / Raspberry Pi. In caso contrario, segui i collegamenti per l'installazione di Raspbian sul Raspberry Pi o Udoobuntu sulla scheda Udoo.

  • Montare l'Udoo / Raspberry Pi sulla scheda e collegarvi il jack di alimentazione.
  • Se stai utilizzando Udoo, collega l'hub USB a uno dei suoi jack USB.
  • Collega il cavo HDMI e il cavo micro USB ad esso. Questi pin vengono utilizzati per fornire dati e alimentazione allo schermo.
  • Collega Arduino a Udoo / Raspberry Pi usando il cavo USB da A a B.

Pannello superiore:

  • Fissare il pannello superiore ai pannelli laterale, anteriore e posteriore del robot utilizzando i morsetti a L.
  • Collega il cavo HDMI, il cavo micro USB allo schermo e la webcam alla scheda Udoo / Raspberry Pi.
  • Collegare il connettore del servo a tre pin proveniente dal servo dynamixel di base con il servo controller. Si prega di fare attenzione a quale pin è DATA, GND e +12v. Fare riferimento alle immagini nella sezione "Testa e volto del robot" per una migliore consultazione. Se si collegano i cavi nell'ordine opposto, si potrebbero danneggiare i servi.

Sensori di distanza ad ultrasuoni:

L'ultimo pezzo del puzzle. Dopo questo, la nostra assemblea è quasi finita.

  • Taglia sei pezzi rettangolari del pannello MDF/foglio acrilico con dimensioni (6 cm x 5 cm).
  • Praticare dei fori in essi nei punti richiesti.
  • Attacca i sensori a ultrasuoni a ciascuna scheda e collega tutte le schede con il pannello di base del robot.
  • Collegare i sensori con connettori.

Finalmente è fatto. Collega la batteria e avvia Udoo/Raspberry Pi

Passaggio 7: software

L'hardware è completo, ma senza software questo robot è solo una scatola. L'elenco del software di cui abbiamo bisogno è

  • StrettoVNC
  • Pitone
  • OpenCV
  • ragazzo delle nevi
  • Alcuni pacchetti Python

    • Pyautogui
    • insensibile
    • pyserial
    • piaudio

StrettoVNC:

TightVNC è un pacchetto software di controllo remoto gratuito. Con TightVNC, puoi vedere il desktop di una macchina remota e controllarlo con il mouse e la tastiera locali, proprio come lo faresti seduto davanti a quel computer.

Se hai tastiera e mouse extra, va bene. In caso contrario, installa TightVNC sul tuo laptop e segui questi passaggi.

Per la prima volta collega tastiera e mouse a Udoo / Raspberry Pi. Connettiti a una rete Wi-Fi. Apri Terminale e digita

$ ifconfig

  • Annotare l'indirizzo IP del robot.
  • Apri TightVNC sul tuo laptop. Inserisci l'indirizzo IP nel campo richiesto e premi Invio. Ecco! Ora sei connesso. Usa il touchpad e la tastiera del tuo laptop per accedere al robot.

Pitone:

Python è un linguaggio molto popolare e versatile ed è per questo che lo sto usando come linguaggio di programmazione principale per questo robot.

Qui sto usando python 2.7 ma se vuoi puoi anche usare python 3. Fortunatamente Python viene preinstallato sia nel sistema operativo Udoobuntu che Raspbian. Quindi non abbiamo bisogno di installarlo.

OpenCV:

OpenCV è una libreria open source principalmente finalizzata alla visione artificiale in tempo reale. OpenCV con Python è molto facile da usare. L'installazione di OpenCV è un po' macchinosa, ma sono disponibili molte guide molto facili da seguire. Il mio preferito è questo. Questa guida è per Raspberry Pi, ma puoi usarla anche per la scheda Udoo.

pupazzo di neve:

Snowboy è una libreria scritta dai ragazzi di Kitt.ai, principalmente finalizzata all'elaborazione del parlato offline/rilevamento di hotword. È molto facile da usare. Segui questo link per installare snowboy sul Raspberry Pi. Se stai usando la scheda Udoo, vai a questo progetto, scritto da me per installare snowboy in Udoo.

Pacchetti Python:

Segui queste guide facili da usare per installare alcuni pacchetti Python.

  1. Pyautogui - Pyautogui è un pacchetto per simulare le sequenze di tasti di una tastiera o il movimento del mouse.
  2. Numpy - digita "pip install numpy" nella shell di Linux e premi invio. È così semplice.
  3. Pyserial - Pyserial è un pacchetto finalizzato alla comunicazione seriale tramite Python. Lo useremo per comunicare con Arduino.

Passaggio 8: codici

La parte hardware è completa. La parte software è completa. Ora è il momento di dare un'anima a questo robot.

Codifichiamo.

Il codice per questo robot è alquanto complicato e attualmente sto aggiungendo più funzionalità. Pertanto, ho ospitato i codici nel mio repository Github. Puoi verificarlo e clonare/scaricare i codici da lì.

Ora non è solo un robot; ora è Tinku.

Passaggio 9: dimostrazione

Image
Image

Dimostrazione. sieeee!!

Queste sono alcune delle demo di base. Ce ne sono di molto più interessanti in arrivo.

Resta sintonizzato per ulteriori aggiornamenti e, in caso di dubbi, non esitare a commentare.

Grazie per aver letto il mio progetto. Sei fantastico.

Se ti piace questo progetto, votalo nel concorso Microcontrollori e Robotica

Buon lavoro;-)

Consigliato: