Sommario:
- Fase 1: Panoramica e processo di progettazione
- Passaggio 2: materiali necessari
- Passaggio 3: parti fabbricate digitalmente
- Passaggio 4: preparazione dei collegamenti
- Passaggio 5: preparazione delle staffe dei servi
- Passaggio 6: assemblaggio delle gambe
- Passaggio 7: assemblaggio del corpo
- Passaggio 8: mettere tutto insieme
- Passaggio 9: cablaggio e circuito
- Passaggio 10: configurazione iniziale
- Passaggio 11: un po' di cinematica
- Passaggio 12: Programmazione del quadrupede
- Fase 13: Risultati finali: è tempo di sperimentare
Video: Robot quadruplo alimentato da Arduino stampato in 3D: 13 passaggi (con immagini)
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 09:59
Progetti Fusion 360 »
Dai precedenti Instructables, puoi probabilmente vedere che ho un profondo interesse per i progetti robotici. Dopo il precedente Instructable in cui ho costruito un bipede robotico, ho deciso di provare a realizzare un robot quadrupede che potesse imitare animali come cani e gatti. In questo Instructable, ti mostrerò il design e l'assemblaggio del quadrupede robotico.
L'obiettivo principale durante la creazione di questo progetto era rendere il sistema il più robusto possibile in modo tale che durante la sperimentazione di varie andature di camminata e corsa non dovessi preoccuparmi costantemente del guasto dell'hardware. Questo mi ha permesso di spingere l'hardware al limite e sperimentare andature e movimenti complessi. Un obiettivo secondario era quello di rendere il quadrupede relativamente economico utilizzando parti di hobby prontamente disponibili e la stampa 3D che consentisse una rapida prototipazione. Questi due obiettivi combinati forniscono una solida base per eseguire vari esperimenti, consentendo di sviluppare il quadrupede per requisiti più specifici come la navigazione, l'evitamento degli ostacoli e la locomozione dinamica.
Dai un'occhiata al video allegato sopra per vedere una rapida demo del progetto. Continua a creare il tuo robot quadrupede alimentato da Arduino e lascia un voto nel "Make it Move Contest" se ti è piaciuto il progetto.
Fase 1: Panoramica e processo di progettazione
Il quadrupede è stato progettato con il software di modellazione 3D Fusion 360 gratuito di Autodesk. Ho iniziato importando i servomotori nel progetto e ho costruito le gambe e il corpo attorno ad essi. Ho progettato staffe per il servomotore che forniscono un secondo punto di articolazione diametralmente opposto all'albero del servomotore. Avere due alberi su entrambe le estremità del motore conferisce stabilità strutturale al design ed elimina qualsiasi inclinazione che può verificarsi quando le gambe sono fatte per sopportare un carico. I collegamenti sono stati progettati per contenere un cuscinetto mentre le staffe hanno utilizzato un bullone per l'albero. Una volta che i collegamenti sono stati montati sugli alberi utilizzando un dado, il cuscinetto fornirebbe un punto di articolazione liscio e robusto sul lato opposto dell'albero del servomotore.
Un altro obiettivo durante la progettazione del quadrupede è stato quello di mantenere il modello il più compatto possibile per sfruttare al massimo la coppia fornita dai servomotori. Le dimensioni dei collegamenti sono state realizzate per ottenere un ampio raggio di movimento riducendo al minimo la lunghezza complessiva. Renderli troppo corti farebbe urtare le staffe, riducendo il raggio di movimento e rendendolo troppo lungo eserciterebbe una coppia non necessaria sugli attuatori. Infine, ho progettato il corpo del robot su cui montare Arduino e altri componenti elettronici. Ho anche lasciato punti di montaggio aggiuntivi sul pannello superiore per rendere il progetto scalabile per ulteriori miglioramenti. Una volta si potevano aggiungere sensori come sensori di distanza, telecamere o altri meccanismi attivati come pinze robotiche.
Nota: le parti sono incluse in uno dei seguenti passaggi.
Passaggio 2: materiali necessari
Ecco l'elenco di tutti i componenti e le parti necessarie per creare il tuo robot quadrupede alimentato da Arduino. Tutte le parti dovrebbero essere comunemente disponibili e facili da trovare nei negozi di ferramenta locali o online.
ELETTRONICA:
Arduino Uno x 1
Servomotore Towerpro MG995 x 12
Arduino Sensor Shield (consiglio la versione V5 ma avevo la versione V4)
Ponticelli (10 pezzi)
MPU6050 IMU (opzionale)
Sensore a ultrasuoni (opzionale)
HARDWARE:
Cuscinetti a sfera (8x19x7mm, 12 pezzi)
Dadi e bulloni M4
Filamento per stampante 3D (nel caso in cui non possiedi una stampante 3D, dovrebbe esserci una stampante 3D in un'area di lavoro locale o le stampe possono essere eseguite online a un prezzo abbastanza economico)
Fogli acrilici (4 mm)
UTENSILI
stampante 3d
Taglio laser
Il costo più significativo di questo progetto sono i 12 servomotori. Consiglio di optare per la versione di fascia medio-alta invece di utilizzare quelle economiche in plastica poiché tendono a rompersi facilmente. Esclusi gli strumenti, il costo totale di questo progetto è di circa 60$.
Passaggio 3: parti fabbricate digitalmente
Le parti necessarie per questo progetto dovevano essere progettate su misura, quindi abbiamo usato la potenza delle parti fabbricate digitalmente e del CAD per costruirle. La maggior parte delle parti sono stampate in 3D a parte alcune che sono tagliate al laser in acrilico da 4 mm. Le stampe sono state realizzate con un riempimento del 40%, 2 perimetri, ugello da 0,4 mm e un'altezza dello strato di 0,1 mm con PLA. Alcune parti richiedono supporti poiché hanno una forma complessa con sporgenze, tuttavia, i supporti sono facilmente accessibili e possono essere rimossi utilizzando alcune frese. Puoi scegliere il colore che preferisci del filamento. Di seguito puoi trovare l'elenco completo delle parti e gli STL per stampare la tua versione e i disegni 2D per le parti tagliate al laser.
Nota: Da qui in poi si farà riferimento alle parti utilizzando i nomi nell'elenco seguente.
Parti stampate in 3D:
- staffa servo anca x 2
- specchio staffa servo anca x 2
- staffa servo ginocchio x 2
- specchio staffa servo ginocchio x 2
- supporto del cuscinetto x 2
- specchio portacuscinetti x 2
- gamba x 4
- collegamento clacson servo x 4
- collegamento del cuscinetto x 4
- supporto arduino x 1
- supporto per sensore di distanza x 1
- Supporto a L x 4
- boccola cuscinetto x 4
- distanziale clacson x 24
Parti tagliate al laser:
- pannello porta servo x 2
- pannello superiore x 1
In totale, ci sono 30 parti che devono essere stampate in 3D esclusi i vari distanziatori e 33 parti fabbricate digitalmente in totale. Il tempo totale di stampa è di circa 30 ore.
Passaggio 4: preparazione dei collegamenti
Puoi iniziare l'assemblaggio impostando alcune parti all'inizio che renderanno il processo di assemblaggio finale più gestibile. Puoi iniziare con il link. Per realizzare il collegamento del cuscinetto, carteggiare leggermente la superficie interna dei fori per il cuscinetto, quindi spingere il cuscinetto nel foro su entrambe le estremità. Assicurarsi di spingere il cuscinetto fino a quando un lato non è a filo. Per costruire il collegamento della squadretta del servo, prendi due squadrette del servo circolari e le viti fornite con esse. Posiziona le corna sulla stampa 3D e allinea i due fori, quindi avvita il corno sulla stampa 3D fissando la vite dal lato della stampa 3D. Ho dovuto usare alcuni distanziatori del servomotore stampati in 3D poiché le viti fornite erano un po' lunghe e si sarebbero intersecate con il corpo del servomotore mentre ruotava. Una volta che i collegamenti sono stati costruiti, puoi iniziare a impostare i vari supporti e staffe.
Ripetere questa operazione per tutti e 4 i collegamenti di entrambi i tipi.
Passaggio 5: preparazione delle staffe dei servi
Per impostare la staffa del servo del ginocchio, è sufficiente far passare un bullone da 4 mm attraverso il foro e fissarlo con un dado. Questo funzionerà come asse secondario per il motore. Dalla staffa del servo dell'anca, passare due bulloni attraverso i due fori e fissarli con altri due dadi. Quindi, prendi un'altra squadretta del servo circolare e fissala alla sezione leggermente rialzata della staffa usando le due viti fornite con le squadrette. Ancora una volta ti consiglierei di usare il distanziatore della squadretta del servo in modo che le viti non sporgano nello spazio per il servo. Infine, prendi la parte del supporto del cuscinetto e spingi un cuscinetto nel foro. Potrebbe essere necessario carteggiare leggermente la superficie interna per una buona vestibilità. Quindi, spingere una spinta del cuscinetto nel cuscinetto in modo che il pezzo del supporto del cuscinetto si pieghi.
Fare riferimento alle immagini allegate sopra durante la costruzione delle staffe. Ripetere questo processo per il resto delle parentesi. Quelli specchiati sono simili, solo che tutto è specchiato.
Passaggio 6: assemblaggio delle gambe
Una volta assemblati tutti i collegamenti e le staffe, puoi iniziare a costruire le quattro gambe del robot. Inizia attaccando i servi alle staffe usando bulloni e dadi 4 x M4. Assicurati di allineare l'asse del servo con il bullone sporgente sull'altro lato.
Quindi, collega il servo dell'anca con il servo del ginocchio usando il pezzo di collegamento della squadretta del servo. Non utilizzare ancora una vite per fissare la squadretta sull'asse del servomotore poiché potrebbe essere necessario regolare la posizione in seguito. Sul lato opposto, montare il collegamento del cuscinetto contenente i due cuscinetti sui bulloni sporgenti utilizzando i dadi.
Ripeti questo procedimento per il resto delle tre zampe e le 4 zampe per il quadrupede sono pronte!
Passaggio 7: assemblaggio del corpo
Successivamente, possiamo concentrarci sulla costruzione del corpo del robot. Il corpo ospita quattro servomotori che danno alle gambe il loro 3° grado di libertà. Inizia utilizzando 4 bulloni e bulloni M4 per fissare il servo sul pannello del supporto del servo tagliato al laser.
Nota: assicurarsi che il servo sia collegato in modo tale che l'asse sia sul lato esterno del pezzo come mostrato nelle immagini allegate sopra. Ripetere questo processo per il resto dei tre servomotori tenendo presente l'orientamento.
Quindi, attaccare i supporti a L su entrambi i lati del pannello usando due dadi e bulloni M4. Questo pezzo ci permette di fissare saldamente il pannello porta servo al pannello superiore. Ripetere questo processo con altri due supporti a L e il secondo pannello porta servo che sostiene il secondo set di servomotori.
Una volta che i supporti a L sono in posizione, utilizzare più dadi e bulloni M4 per fissare il pannello del supporto del servo al pannello superiore. Inizia con il set esterno di dadi e bulloni (verso la parte anteriore e posteriore). I dadi e i bulloni centrali trattengono anche il supporto per arduino. Usa quattro dadi e bulloni per fissare il supporto arduino dall'alto sul pannello superiore e allinea i bulloni in modo che passino anche attraverso i fori di supporto a L. Fare riferimento alle immagini allegate sopra per chiarimenti. Infine, fai scorrere quattro dadi nelle fessure sui pannelli del supporto del servo e usa i bulloni per fissare i pannelli del supporto del servo al pannello superiore.
Passaggio 8: mettere tutto insieme
Una volta che le gambe e il corpo sono assemblati, puoi iniziare a completare il processo di assemblaggio. Montare le quattro gambe sui quattro servi usando le squadrette dei servi che erano attaccate alla staffa del servo dell'anca. Infine, utilizzare i pezzi del supporto del cuscinetto per supportare l'asse opposto della staffa dell'anca. Passare l'asse attraverso il cuscinetto e utilizzare un bullone per fissarlo in posizione. Fissare i supporti dei cuscinetti al pannello superiore utilizzando due dadi e bulloni M4.
Con questo l'assemblaggio hardware del quad è pronto.
Passaggio 9: cablaggio e circuito
Ho deciso di utilizzare uno schermo del sensore che fornisse collegamenti per i servomotori. Consiglierei di utilizzare lo scudo del sensore v5 poiché è dotato di una porta di alimentazione esterna integrata. Tuttavia, quello che ho usato non aveva questa opzione. Guardando più da vicino lo scudo del sensore, ho notato che lo scudo del sensore assorbiva energia dal pin 5v integrato di Arduino (che è una pessima idea quando si tratta di servomotori ad alta potenza poiché si rischia di danneggiare l'Arduino). La soluzione a questo problema era piegare il pin 5v sullo scudo del sensore in modo che non si collegasse al pin 5v dell'Arduino. In questo modo, ora possiamo fornire alimentazione esterna tramite il pin 5v senza danneggiare l'Arduino.
I collegamenti dei pin di segnale dei 12 servomotori sono indicati nella tabella sottostante.
Nota: Hip1Servo si riferisce al servo attaccato al corpo. Hip2Servo si riferisce al servo attaccato alla gamba.
Tappa 1 (avanti a sinistra):
- Anca1Servo >> 2
- Hip2Servo >> 3
- Servo ginocchio >> 4
Gamba 2 (avanti a destra):
- Hip1Servo >> 5
- Hip2Servo >> 6
- Servo ginocchio >> 7
Gamba 3 (dietro a sinistra):
- Hip1Servo >> 8
- Hip2Servo >> 9
- Servo ginocchio >> 10
Gamba 4 (dietro a destra):
- Hip1Servo >> 11
- Hip2Servo >> 12
- Servo ginocchio >> 13
Passaggio 10: configurazione iniziale
Prima di iniziare a programmare andature complesse e altri movimenti, è necessario impostare i punti zero di ciascun servo. Ciò fornisce al robot un punto di riferimento che utilizza per eseguire i vari movimenti.
Per evitare danni al robot è possibile rimuovere i collegamenti della squadretta del servo. Quindi, carica il codice che è allegato di seguito. Questo codice posiziona ciascuno dei servi a 90 gradi. Una volta che i servi hanno raggiunto la posizione di 90 gradi puoi riattaccare i collegamenti in modo che le gambe siano perfettamente dritte e il servo attaccato al corpo sia perpendicolare al pannello superiore del quadrupede.
A questo punto, a causa del design delle squadrette dei servi, alcuni giunti potrebbero non essere ancora perfettamente dritti. La soluzione a questo è regolare l'array zeroPositions trovato sulla 4a riga del codice. Ogni numero rappresenta la posizione zero del servo corrispondente (l'ordine è lo stesso dell'ordine in cui è stato collegato il servo all'Arduino). Modifica leggermente questi valori finché le gambe non sono perfettamente dritte.
Nota: ecco i valori che utilizzo anche se questi valori potrebbero non funzionare per te:
int zeroPosizioni[12] = {93, 102, 85, 83, 90, 85, 92, 82, 85, 90, 85, 90};
Passaggio 11: un po' di cinematica
Per fare in modo che il quadrupede esegua azioni utili come correre, camminare e altri movimenti, i servi devono essere programmati sotto forma di percorsi di movimento. I percorsi di movimento sono percorsi lungo i quali l'effettore finale (i piedi in questo caso) viaggiano. Ci sono due modi per raggiungere questo obiettivo:
- Un approccio sarebbe quello di alimentare gli angoli di giunzione dei vari motori in un modo a forza bruta. Questo approccio può richiedere molto tempo, noioso e anche pieno di errori poiché il giudizio è puramente visivo. Invece, c'è un modo più intelligente per ottenere i risultati desiderati.
- Il secondo approccio ruota attorno all'alimentazione delle coordinate dell'effettore finale invece di tutti gli angoli del giunto. Questo è ciò che è noto come cinematica inversa. L'utente immette le coordinate e gli angoli del giunto si regolano per posizionare l'effettore finale alle coordinate specificate. Questo metodo può essere considerato come una scatola nera che prende come input una coordinata ed emette gli angoli del giunto. Per coloro che sono interessati a come sono state sviluppate le equazioni trigonometriche di questa scatola nera possono guardare il diagramma sopra. Per chi non fosse interessato, le equazioni sono già programmate e possono essere utilizzate utilizzando la funzione pos che prende in ingresso x, y, z, che è la posizione cartesiana dell'effettore finale ed emette tre angoli corrispondenti ai motori.
Il programma che contiene queste funzioni può essere trovato nel passaggio successivo.
Passaggio 12: Programmazione del quadrupede
Una volta completati il cablaggio e l'inizializzazione, è possibile programmare il robot e generare fantastici percorsi di movimento in modo che il robot svolga compiti interessanti. Prima di procedere, modifica la 4a riga del codice allegato con i valori che avevi impostato nella fase di inizializzazione. Dopo aver caricato il programma, il robot dovrebbe iniziare a camminare. Se noti che alcuni giunti sono invertiti, puoi semplicemente modificare il valore di direzione corrispondente nell'array direction nella riga 5 (se è 1, imposta -1 e se è -1 crea 1).
Fase 13: Risultati finali: è tempo di sperimentare
Il robot quadrupede può compiere passi che variano da 5 a 2 cm di lunghezza. Anche la velocità può essere variata mantenendo l'andatura equilibrata. Questo quadrupede fornisce una solida piattaforma per sperimentare varie altre andature e altri obiettivi come saltare o completare compiti. Ti consiglierei di provare a cambiare i percorsi di movimento delle gambe per creare le tue andature e scoprire come le varie andature influenzano le prestazioni del robot. Ho anche lasciato più punti di montaggio nella parte superiore del robot per sensori aggiuntivi come sensori di misurazione della distanza per compiti di prevenzione degli ostacoli o IMU per andature dinamiche su terreni irregolari. Si potrebbe anche sperimentare un braccio di presa aggiuntivo montato sulla parte superiore del robot poiché il robot è estremamente stabile e robusto e non si ribalta facilmente.
Spero che questo Instructable ti sia piaciuto e ti abbia ispirato a costruirne uno tuo.
Se il progetto ti è piaciuto, sostienilo lasciando un voto nel "Make it Move Contest".
Fare felice!
Secondo Premio al Concorso Make it Move 2020
Consigliato:
[Fai da te] Robot ragno (robot quadruplo, quadrupede): 14 passaggi (con immagini)
[Fai da te] Spider Robot (Quad Robot, Quadruped): se hai bisogno di supporto extra da parte mia, sarà meglio che mi faccia una donazione adeguata: http://paypal.me/RegisHsu2019-10-10 update: Il nuovo compilatore causerà il problema di calcolo del numero mobile. Ho già modificato il codice. 2017-03-26
Robot quadruplo controllato da ESP8266 WIFI AP: 15 passaggi (con immagini)
Robot quadrupede controllato da ESP8266 WIFI AP: questo è un tutorial per realizzare un robot a 12 DOF o a quattro gambe (quadrupede) utilizzando il servo SG90 con servo driver e può essere controllato utilizzando il server Web WIFI tramite il browser dello smartphone Il costo totale per questo progetto è di circa US $ 55 (per Parte elettronica e plastica Rob
Tutorial per il rilevamento di oggetti con robot quadruplo Jetson Nano: 4 passaggi
Jetson Nano Quadruped Robot Object Detection Tutorial: Nvidia Jetson Nano è un kit di sviluppo, che consiste in un SoM (System on Module) e una scheda portante di riferimento. È principalmente mirato alla creazione di sistemi embedded che richiedono un'elevata potenza di elaborazione per l'apprendimento automatico, la visione artificiale e video
Drone Lap Timer automatico - Stampato in 3D, alimentato da Arduino: 18 passaggi (con immagini)
Automatic Drone Lap Timer - 3D Printed, Arduino Powered.: Sono sempre più interessato all'idea delle corse di droni con video in prima persona (FPV). Di recente ho acquistato un piccolo drone e volevo un modo per cronometrare i miei giri: questo è il progetto risultante. Questa piattaforma di atterraggio per droni è dotata di un ul integrato
Robot quadruplo semplice: 3 passaggi (con immagini)
Robot quadrupede semplice: questo istruttivo è stato creato per soddisfare i requisiti del progetto Makecourse presso la University of South Florida (www.makecourse.com).Nell'ultimo anno e mezzo, ho lavorato alla progettazione di un nuovo robot quadrupede per il MECH Club