Modellazione e controllo di uno Spider Robot Quadrupede – Simulazione ed Implementazione di un prototipo in scala
Negli ultimi anni, il campo della robotica ha fatto significativi passi in avanti grazie ai progressi tecnologici spinti dalla ricerca di soluzioni innovative. I robot mobili hanno trovato applicazioni diverse in vari settori, da quello militare all’esplorazione spaziale, al più ampio settore industriale. Il robot mobile dotato di zampe, o spider robot quadrupede, in particolare, grazie alla sua mobilità e adattabilità, offre vantaggi rilevanti rispetto ai concorrenti con ruote, consentendo di navigare in ambienti sfavorevoli con efficienza e precisione.
Idea ed innovazione
Questo progetto si focalizza sullo sviluppo, la simulazione e l’implementazione fisica di un sistema robotico quadrupede ispirato ai movimenti di un ragno. L’architettura proposta è stata progettata con l’aggiunta di un grado di libertà supplementare per ogni zampa (4 rispetto ai 3 dei più comuni robot in commercio), con vari vantaggi, tra cui il miglioramento della stabilità, della flessibilità e del bilanciamento su diversi tipi di terreno.
Il progetto ALTEN
Pensato per facilitare la supervisione e l’esplorazione di impianti industriali, il nostro spider robot quadrupede permette di sostituire l’intervento umano in situazioni di irraggiungibilità o poca sicurezza. Le fasi di sviluppo si diramano dalla modellizzazione CAD dell’architettura robotica, allo studio dinamico e cinematico della struttura, per poi passare al suo controllo del movimento in ambiente simulato, sino ad arrivare infine all’implementazione hardware di un prototipo in scala controllato da remoto con una interfaccia utente.
Scelta dei componenti e progettazione CAD
I dettagli di ogni singolo componente sono stati definiti con l’obiettivo di massimizzare la manovrabilità del robot. La base, di dimensione rettangolare è stata disegnata con lo scopo di garantire sempre una distribuzione uniforme del peso posizionando il vano batterie e le due schede, una Raspberry PI 4B ed una SSC-32. In questo modo che il centro di massa è sempre al centro della struttura. Abbiamo scelto di utilizzare una Raspberry PI 4B, in ottica futura, per consentire la possibilità di integrare delle telecamere, le quali ne migliorerebbero il controllo e renderebbero il robot capace di integrarsi nell’ambiente circostante. Inoltre, rispetto alle altre schede disponibili sul mercato, la Raspberry ha una capacità computazionale ed efficacia maggiore.
Mentre, una SSC32 permette di collegare ad essa, e controllare in modo simultaneo, fino a 32 servomotori (cosa non garantita da tutti gli shield o da altre schede di controllo aventi canali PWM limitati). Per avere un processore che fosse efficace con ottimi risultati e a basso costo, è stato adottato un MPU-6050 anche per via della sua semplicità e rapidità di integrazione col sistema realizzato. È stato dunque integrato sulla scheda GY-521, dotata a sua volta di un accelerometro ed un giroscopio, essenziali in fase di controllo e bilanciamento del sistema. Le quattro gambe, simmetriche a due a due e montate sui quattro vertici del rettangolo di base, sono state modellate per garantire un corretto posizionamento e fissaggio dei servomotori.
Trajectory Planning in simulazione
Dopo uno studio teorico della cinematica del robot, viene analizzato il suo movimento in ambiente simulativo. La pianificazione del percorso inizia con la generazione di traiettorie polinomiali per il singolo piede dove la fase di oscillazione (swing) e di trascinamento (stance) sono parametrizzate per garantire un movimento fluido e controllato delle articolazioni e prevenire impatti indesiderati. Il robot si muoverà adottando un “Creep Gait”, un’andatura che, alternando il movimento delle zampe su una temporizzazione a quattro battute, offre notevoli proprietà di stabilità statica. Per assicurare un buon tracking sulle posizioni di riferimento delle articolazioni, viene implementato un controllo disaccoppiato usando algoritmi per l’identificazione del modello.
Prototipo fisico dello spider robot: comunicazione, movimentazione ed Interfaccia Utente
Nel prototipo dello spider robot mobile, le comunicazioni tra componenti sono fondamentali per il suo funzionamento. La Raspberry Pi funge da nodo principale, comunicando con il modulo GY-521 tramite il protocollo I2C e con i servomotori tramite il ponte SSC-32 utilizzando la comunicazione seriale-USB. Il Protocollo di comunicazione I2C si basa su due tipi di elementi che lo compongono:
1. Master (Raspberry), che scandisce attraverso il clock quando la comunicazione deve avvenire;
2. Slave (MPU-6050), che comunica seguendo il “tempo” del master attraverso il clock, ricevendo o inviando dati dal/per il master.
Per facilitare l’interazione con l’utente, viene utilizzato il protocollo MQTT, leggero ed efficiente, per la trasmissione di comandi e dati tra l’interfaccia utente e il Raspberry Pi. Il controllo del movimento è basato su un sistema di polling, dove i punti intermedi delle traiettorie vengono utilizzati per generare un movimento fluido e controllato delle zampe. Il polling è una tecnica utilizzata per l’interrogazione ciclica e ripetitiva di serie di code. Invece delle code si hanno i punti intermedi che le zampe del robot devono raggiungere per completare un passo completo. Ripetendolo in modo ciclico si ottiene il risultato della camminata o della rotazione – unico modo per far muovere il robot in ambiente reale non avendo feedback dagli attuatori.
Per mantenere il corpo dello spider robot quadrupede bilanciato, è stato utilizzato un Complementary Filter (CF) e dei controllori PID. Il filtro complementare sfrutta sensori che misurano la stessa grandezza fisica (nel nostro caso gli angoli di rollio e beccheggio) in un range di frequenza in cui i sensori danno una misura accettabile e priva di errore. L’ MPU ha sia accelerometro per le basse frequenze, sia giroscopio per le alte frequenze. Il CF unisce un filtro passa alto ed uno passa basso con una determinata frequenza critica e un fattore di peso alpha consentendo di dare più rilevanza ad un sensore piuttosto che ad un altro. Dunque, le letture dell’accelerometro e del giroscopio vengono combinate per ottenere una misurazione accurata dell’orientamento.
Il controllore PID (Proporzionale, Integrale, Derivativo) è un tipo di controllore efficace e semplice da implementare. Compensa l’errore tramite dei coefficienti che vanno ad agire su: ampiezza dell’errore (coefficiente proporzionale), media dell’errore passato (coefficiente integrativo) e predizione dell’errore futuro (coefficiente derivativo), migliorando così la risposta attuale del sistema. Sono stati implementati per regolare il rollio e il beccheggio del corpo. L’efficacia dei controllori è stata dimostrata attraverso test pratici, che hanno mostrato un buon tracciamento del riferimento ed una ridotta sensibilità ai disturbi esterni.
Nel primo test è stata messa alla prova la capacità del robot e dei controllori implementati, quando il modello viene posto su un piano continuamente sollecitato ed inclinato, nel mantenere la base sempre parallele al suolo. Nel grafico ogni picco corrisponde ad un’improvvisa inclinazione del piano, e a seguito di ogni picco si ha l’azione del controllore nel cercare di riportare gli angoli di roll e pitch attorno al valore di equilibrio (zero).
Il secondo test consisteva nel verificare la corretta implementazione dell’algoritmo di polling verificando una corretta camminata e rotazione del robot comandata da interfaccia.
Il valore aggiunto di ALTEN
ALTEN ha contribuito significativamente a questo progetto offrendo supporto tecnico multidisciplinare, permettendo di sviluppare conoscenze approfondite in temi di meccanica, elettronica e software applicate con successo nel progetto realizzato ed ottenendo risultati performanti. Inoltre, grazie alla nostra esperienza nella consulenza ingegneristica, e all’ampio network di ALTEN, saremo in grado di adattare il robot a diverse realtà industriali con flessibilità, senza perdere l’alta competitività raggiunta.
L’integrazione della tecnologia del robot presentato rappresenta un’ottima soluzione per gli impianti dove una costante e continua supervisione è combinata a numerosi fattori di rischio per l’intervento dell’uomo (alte temperature, radiazioni…). Il suo ruolo nell’industria manifatturiera è destinato a crescere, guidando innovazione ed efficienza in tutto il processo di produzione.
Sviluppi Futuri del robot mobile
In ottica futura prevediamo una serie di sviluppi che mirano a migliorare ulteriormente le prestazioni e l’applicabilità dello spider robot quadrupede. Ci impegniamo a continuare la ricerca e lo sviluppo per ottimizzare il controllo e gli algoritmi di movimento, consentendo una maggiore stabilità e fluidità. Inoltre, con l’utilizzo di attuatori più performanti e sensori di prossimità quali LIDARS o camere il robot sarebbe in grado di interagire maggiormente con l’ambiente circostante, apprendendo elementi fondamentali per lo sviluppo di tecniche di controllo adattive e per il training di reti neurali. Infine, l’implementazione di un gemello virtuale rappresenterebbe un ulteriore step interessante per le future applicazioni e potremmo anche collaborare con i nostri clienti per sviluppare soluzioni personalizzate che soddisfino al meglio le loro esigenze specifiche.