Sommario:

Hexapod: 14 passaggi (con immagini)
Hexapod: 14 passaggi (con immagini)

Video: Hexapod: 14 passaggi (con immagini)

Video: Hexapod: 14 passaggi (con immagini)
Video: DIY 3D Printed Hexapod: #2 Body and first Steps 2024, Dicembre
Anonim
Esapode
Esapode
Esapode
Esapode
Esapode
Esapode

Da qualche anno sono interessato a giocare e creare robot e mi sono ispirato molto a Zenta, qui trovi il suo canale Youtube https://www.youtube.com/channel/UCmCZ-oLEnCgmBs_T e il suo sito web

Puoi trovare molti kit di molti fornitori diversi su Internet, ma sono molto costosi, fino a 1.500 $ + per un esapode 4 DoF e i kit dalla Cina non hanno una buona qualità. Quindi, ho deciso di creare in hexapod a modo mio. Ispirato all'esapode Phoenix di Zenta, lo troverai nel suo canale Youtube (e un kit che puoi trovare https://www.lynxmotion.com/c-117-phoenix.aspx, ho iniziato a crearne uno da zero.

Per creare se ho impostato i seguenti obiettivi/requisiti per me:

1.) Divertiti e impara cose nuove.

2.) Design guidato dai costi (dannazione, la mia azienda mi ha viziato totalmente)

3.) Parti in compensato (perché è più facile per la maggior parte delle persone e anche per me tagliare il legno)

4.) Utilizzo di strumenti gratuiti disponibili (software)

Allora, cosa ho usato finora?

a) SketchUp, per la progettazione meccanica.

b) Compensato di faggio da 4 mm e 6 mm (1/4 ).

c) Arduino Uno, Mega, IDE.

d) Servi digitali standard (trovati su amazon a buon prezzo).

e) Dosuki e sega a nastro, un trapano, carta abrasiva e una lima.

Passaggio 1: costruzione delle gambe e delle staffe dei servi

Costruzione delle gambe e delle staffe dei servi
Costruzione delle gambe e delle staffe dei servi
Costruzione delle gambe e delle staffe dei servi
Costruzione delle gambe e delle staffe dei servi
Costruzione delle gambe e delle staffe dei servi
Costruzione delle gambe e delle staffe dei servi

Per prima cosa stavo facendo delle ricerche su Internet per scoprire come fare un robot, ma non ho avuto molto successo nel trovare buone informazioni su come fare la progettazione meccanica. Quindi stavo lottando molto e alla fine ho deciso di usare SketchUp.

Dopo alcune ore di learning by doing con SketchUp, ho finito con il mio primo disegno delle gambe. Il femore è ottimizzato per le dimensioni delle squadrette del servo che sto usando. Come ho capito, l'originale sembra avere un diametro di circa 1 , ma le mie squadrette del servo hanno 21 mm.

Fare una stampa con la scala giusta non funzionava correttamente con SketchUp sul mio computer, quindi l'ho salvato come PDF, fatto una stampa con il 100%, fatto alcune misurazioni e infine stampato di nuovo con il fattore di scala corretto.

Per la prima volta stavo creando solo arti per due gambe. Per questo ho impilato due tavole, ho incollato (per la carta da parati) la stampa su di essa e ho ritagliato le parti con una sega a nastro per modellini.

Materiale utilizzato: compensato di faggio 6mm (1/2 )

In seguito ho fatto alcuni esperimenti, non documentati, e fatto alcune ottimizzazioni. Come puoi vedere la tibia è un po' sovradimensionata così come il femore.

Per montare le squadrette del servo attraverso il femore, è necessario tagliare 2 mm di materiale. Questo può essere fatto in diversi modi. Con un router o con un trapano Forstner. Il Forstner aveva solo 200 mm di diametro, quindi ho dovuto fare del dopoguerra a mano con uno scalpello.

Fase 2: Ottimizzazione del femore e della tibia

Ottimizzazione del femore e della tibia
Ottimizzazione del femore e della tibia
Ottimizzazione del femore e della tibia
Ottimizzazione del femore e della tibia
Ottimizzazione del femore e della tibia
Ottimizzazione del femore e della tibia
Ottimizzazione del femore e della tibia
Ottimizzazione del femore e della tibia

Ho cambiato un po' il design.

1.) Tibia ora sta adattando molto meglio il servo che sto usando.

2.) Il femore è ora un po' più piccolo (circa 3 da asse ad asse) e si adatta alle squadrette del servo (21 mm di diametro).

Stavo usando 6 pannelli di compensato da 6 mm e li ho incollati insieme con nastro biadesivo. Se questo non è abbastanza forte, puoi praticare un foro attraverso tutte le assi e utilizzare una vite per fissarle insieme. quindi una parte viene tagliata in una volta con la sega a nastro. Se sei abbastanza tenace puoi anche usare un seghetto alternativo:-)

Passaggio 3: progettazione della staffa del servo

Progettazione della staffa del servo
Progettazione della staffa del servo
Progettazione della staffa del servo
Progettazione della staffa del servo
Progettazione della staffa del servo
Progettazione della staffa del servo
Progettazione della staffa del servo
Progettazione della staffa del servo

Ora è il momento di progettare la staffa del servo. Questo è fortemente progettato in relazione al servo usato che ho usato. Tutte le parti sono realizzate in multistrato di faggio da 6 mm di nuovo vedere il passaggio successivo.

Passaggio 4: taglio e assemblaggio delle staffe dei servi

Taglio e assemblaggio delle staffe dei servi
Taglio e assemblaggio delle staffe dei servi
Taglio e assemblaggio delle staffe dei servi
Taglio e assemblaggio delle staffe dei servi

Anche in questo caso ho tagliato sei parti contemporaneamente tutte sulla sega a nastro. Il metodo è lo stesso di prima.

1.) Usando del nastro biadesivo, per incollare le tavole insieme.

2.) Viti per avere maggiore stabilità durante il taglio (non mostrate qui).

Poi ho usato della colla per modellismo per incollarli insieme e due viti SPAX (non ancora applicate nella foto).

Rispetto all'esapode originale non sto ancora usando cuscinetti a sfera, invece sto usando solo viti da 3 mm, rondelle e dadi autofissanti in seguito per assemblare le gambe con il corpo/telaio.

Passaggio 5: assemblaggio delle gambe e test

Image
Image
Assemblaggio delle gambe e test
Assemblaggio delle gambe e test
Assemblaggio delle gambe e test
Assemblaggio delle gambe e test

Nelle prime due foto vedete la prima versione di una gamba. Successivamente si vede il confronto delle parti vecchie e nuove e un confronto delle parti nuove (versione due) con l'originale (foto sullo sfondo).

Infine farai un primo test di movimento.

Passaggio 6: costruzione e assemblaggio del corpo

Costruzione e assemblaggio del corpo
Costruzione e assemblaggio del corpo
Costruzione e assemblaggio del corpo
Costruzione e assemblaggio del corpo
Costruzione e assemblaggio del corpo
Costruzione e assemblaggio del corpo

Il corpo che ho cercato di ricostruire dalle foto. Come riferimento ho usato la squadretta del servo, che ho ipotizzato con un diametro di 1 ". Quindi, il lato anteriore diventa una larghezza di 4,5" e al centro 6,5". Per la lunghezza ho assunto 7". Successivamente ho acquistato il kit carrozzeria originale e l'ho confrontato. Mi stavo avvicinando molto all'originale. Alla fine ho realizzato una terza versione, che è una copia 1:1 dell'originale.

Il primo kit carrozzeria che ho realizzato in compensato da 6 mm, qui vedete la seconda versione in compensato da 4 mm, che ho scoperto è abbastanza forte e rigida. A differenza del kit originale, stavo montando la squadretta del servo sulla parte superiore, risp. attraverso il materiale (lo si vede anche con il femore). Il motivo è che non ho voglia di acquistare costosi clacson in alluminio, invece voglio usare i clacson di plastica già forniti. Un'altra ragione è che mi sto avvicinando al servo, quindi le forze di taglio sono minori. Questo rende una connessione più stabile.

A proposito, a volte è bello avere Ganesh a bordo. Grazie al mio amico Tejas:-)

Passaggio 7: primi test elettronici

Image
Image
Tibia e Coxa EV3
Tibia e Coxa EV3

Tutte le arti sono assemblate insieme ora. OK, so che non sembra molto bello, ma in realtà sto sperimentando molto. Nel video potete vedere la riproduzione di alcune semplici sequenze predefinite, in realtà non è implementata alcuna cinematica inversa. L'andatura predefinita non funziona correttamente perché è progettata per un 2 DoF.

In questo esempio sto usando il servo controller SSC-32U di Lynxmotion, lo troverai qui:

Alcuni giorni fa stavo usando anche un altro controller PWM (controller PWM Adafruit a 16 canali, https://www.adafruit.com/product/815), ma l'SCC ha in realtà alcune belle caratteristiche, come rallentare i servi.

Quindi, ormai è tutto. Poi devo scoprire come far funzionare la cinematica inversa (IK), magari programmo un'andatura semplice come quella predefinita nel controller SSC. Ho già trovato un esempio pronto per l'uso qui https://github.com/KurtE/Arduino_Phoenix_Parts, ma non l'ho ancora eseguito. Non ho idea del perché, ma ci sto lavorando.

Quindi, ecco un breve elenco di cose da fare.

1.) Programma un'andatura semplice come quella incorporata nell'SSC.

2.) Programmare una classe/wrapper controller PS3 per Arduino Phoenix.

3.) Ottieni il codice da KurtE in esecuzione o scrivi il mio codice.

I servi che sto usando li ho trovati su Amazon https://www.amazon.de/dp/B01N68G6UH/ref=pe_3044161_189395811_TE_dp_1. Il prezzo è abbastanza buono, ma la qualità potrebbe essere molto migliore.

Passaggio 8: primo semplice test dell'andatura

Come ho detto nell'ultimo passaggio, ho provato a programmare la mia sequenza di andatura. Questo è molto semplice, come un giocattolo meccanico, e non è ottimizzato per il corpo che sto usando qui. Un semplice corpo dritto sarebbe molto meglio.

Quindi, ti auguro tanto divertimento. Devo imparare IK ora;-)

Note: Quando osservi attentamente le gambe, vedrai che alcuni servi si comportano in modo strano. Quello che voglio dire è che non si muovono sempre in modo fluido, forse devo sostituirli con altri servi.

Passaggio 9: porting del controller PS3

Stamattina stavo lavorando alla stesura di un wrapper per il codice Phoenix. Mi ci sono volute alcune ore, circa 2-3, per farlo. il codice non è stato finalmente sottoposto a debug e ho aggiunto alcuni ulteriori debug alla console. Finora funziona:-)

Ma a proposito, quando stavo eseguendo il codice Phoenix, sembra che tutti i servi funzionino invertiti (direzione opposta).

Quando vuoi provare da solo hai bisogno del codice di KurtE come base https://github.com/KurtE/Arduino_Phoenix_Parts. Segui le istruzioni per installare il codice. Copia la cartella Phoenix_Input_PS nella cartella della libreria Arduino (di solito una sottocartella della cartella degli sketch) e la cartella Phoenix_PS3_SSC32 nella cartella degli sketch.

Info: Se non hai esperienza con Arduino e gli strumenti e hai qualche problema, contatta la comunità Arduino (www.arduino.cc). Quando hai problemi con il codice Phoenix di KurtE, contattalo. Grazie.

Avvertimento: La comprensione del codice secondo me non è niente per i principianti, quindi devi avere molta familiarità con C/C++, programmazione e algoritmo. Il codice ha anche un sacco di codice compilato condizionale, controllato da #defines, questo lo rende molto difficile da leggere e capire.

Elenco hardware:

  • Arduino Mega 2560
  • Scudo host USB (per Arduino)
  • Controller PS3
  • Servocontrollore LynxMotion SSC-32U
  • Batteria 6 V (si prega di leggere i requisiti di tutto il tuo HW, altrimenti potresti danneggiarlo)
  • Arduino IDE
  • Alcuni cavi USB, interruttori e altre piccole parti secondo necessità.

Se ti piace un controller PS2, troverai molte informazioni su Internet su come connetterti ad Arduino.

Quindi, per favore, sii paziente. Aggiornerò questo passaggio, quando il software funzionerà correttamente.

Passaggio 10: primo test IK

Image
Image

Ho trovato una porta diversa del codice Phoenix che funziona molto meglio (https://github.com/davidhend/Hexapod), forse ho problemi di configurazione con l'altro codice. Il codice sembra essere un po' bacato e le andature non sembrano molto fluide, ma per me questo è un grande passo avanti.

Si prega di considerare, il codice è in realtà sperimentale. Devo pulire e correggere molto e pubblicherò un aggiornamento nei prossimi giorni. La porta PS3 è basata sulla porta PS3 già pubblicata e ho scartato i file PS2 e XBee.

Passaggio 11: secondo test IK

La soluzione era così facile. Ho dovuto correggere alcuni valori di configurazione e invertire tutti gli angoli del servo. Ora funziona:-)

Passaggio 12: Tibia e Coxa EV3

Tibia e Coxa EV3
Tibia e Coxa EV3
Tibia e Coxa EV3
Tibia e Coxa EV3

Non ho resistito, quindi ho realizzato nuove tibie e coxa (staffe servo). Questa è ora la terza versione che ho realizzato. I nuovi sono di forma più rotonda e hanno un aspetto più organico/bionico.

Quindi, lo stato attuale è. L'esapode funziona, ma ho ancora qualche problema con alcune cose.

1.) Non ho scoperto perché il BT ha un ritardo di 2,3 secondi.

2.) La qualità del servo è scadente.

Cose da fare:

* Il cablaggio dei servi deve essere migliorato.

* Hai bisogno di un buon supporto per la batteria.

* Devo trovare un modo per montare l'elettronica.

* Ricalibrare i servi.

* Aggiunta di sensori e monitor di tensione per la batteria.

Passaggio 13: femore sagomato liscio

Femore liscio
Femore liscio
Femore liscio
Femore liscio
Femore liscio
Femore liscio
Femore liscio
Femore liscio

Qualche giorno fa ho già realizzato del nuovo femore perchè non ero pienamente soddisfatto del precedente. Nella prima immagine vedrai le differenze. I vecchi avevano un diametro di 21 mm alle estremità, i nuovi hanno un diametro di 1 pollice. Ho fatto dei buchi nel femore con la mia fresatrice con un semplice strumento di aiuto, come puoi vedere nelle prossime tre immagini.

Prima di affondare nel femore ha senso praticare tutti i fori, altrimenti potrebbe diventare difficile. La squadretta del servo si adatta molto bene, il prossimo passo, non mostrato qui, è dare ai bordi una forma rotonda. Per questo ho usato una fresa con un raggio di 3 mm.

Nell'ultima immagine vedrai un confronto tra il vecchio e il nuovo. Non so cosa ne pensi, ma mi piace molto di più quello nuovo.

Passaggio 14: passaggi finali

Image
Image
Passaggi finali
Passaggi finali
Passaggi finali
Passaggi finali
Passaggi finali
Passaggi finali

Finirò questo tutorial ora, altrimenti diventerà una storia infinita:-).

Nel video vedrai il codice Phoenix di KurtE in esecuzione con alcune mie modifiche. Il robot non si muove perfettamente, mi dispiace, ma i servi economici sono di pessima qualità. Ho ordinato altri servi, ne ho appena testati due con buoni risultati, e sto ancora aspettando la consegna. Quindi, mi dispiace non poterti mostrare come funziona il robot con i nuovi servi.

Vista posteriore: un sensore di corrente da 20 ampere, a sinistra del potenziometro da 10 k. Quando il robot cammina consumerà facilmente 5 ampere. A destra del pot da 10k vedrai un OLED 128x64 pixel che mostra alcune informazioni di stato.

Vista frontale: Un semplice sensore ad ultrasuoni HC-SR04, non ancora integrato nel SW.

Vista lato destro: acceleratore MPU6050 e giro (6 assi).

Vista lato sinistro: altoparlante piezoelettrico.

La progettazione meccanica ora è più o meno completata, ad eccezione dei servi. Quindi, i prossimi compiti saranno integrare alcuni sensori nel SW. Per questo ho creato un account GitHub con il SW che sto usando che si basa su un'istantanea del SW Phoenix di KurtE.

OLED:

Il mio GitHub:

Consigliato: