Study and development of a distributed control system of an exoskeleton for neurorehabilitation of upper limb

RELATORE: Prof. Ing. Vitoantonio Bevilacqua, PhD

CORRELATORI: Prof. Ing. Antonio Frisoli, PhD – Ing. Massimiliano Solazzi, PhD – Ing. Claudio Loconsole, PhD

AUTORE: Mirko Abbrescia

Il lavoro è consistito nell’analisi del controllo per l’esoscheletro ReHab-Exos precedentemente sviluppato su piattaforma dSPACE, il porting su piattaforma Matlab (sfruttando il software Real Time xPC Target) e lo sviluppo di un controllo distribuito a coppia controllata sfruttando l’architettura elettronica dell’esoscheletro.

ReHab-Exos indossato sul braccio sinistro

ReHab-Exos è un esoscheletro per arti superiori i cui giunti sono motorizzati con trasmissioni harmonic drive e abbinati a sensori di coppia in ogni giunto, oltre che avere un sensore di forza a 6 assi sull’End Effector. La meccanica è stata progettata per poter essere indossato sia per l’arto sinistro che per quello destro. L’architettura elettronica è composta da schede con microcontrollore che gestiscono l’acquisizione dei segnali dai sensori (encoder, strain gauge e sensore di forza), l’output su driver di corrente che pilotano i motori, oltre che la gestione della comunicazione utilizzando lo standard etherCAT.

Diagramma logico dell’elettronica su ReHab-Exos

I precedenti studi sull’esoscheletro hanno portato alla realizzazione di un controllo decentralizzato, che sfruttasse filtri di Kalman, applicati sul modello lineare estratto da alcune caratteristiche del giunto, per stimare la coppia applicata dall’utilizzatore su ogni giunto dell’esoscheletro, al fine di poterla controllare (incrementare o decrementare di una certa percentuale) con un “semplice” Proporzionale – Derivativo in Feedback. Il comportamento non lineare è calcolato e compensato direttamente sfruttando le equazioni fisiche del modello, forze statiche e dinamiche.

Il precedente controllo, definito decentralizzato, bensì sfrutta solo la potenza di calcolo dell’elaboratore centrale gestito dal software real time. I microcontrollori integrati sul robot, fungono semplicemente da schede di acquisizione.

Al fine di poter sgravare l’elaboratore centrale dal carico computazionale e migliorare la bontà delle stime sugli stati derivati, si è pensato di integrare il controllo di ogni giunto (di fatto stima degli stati e controllo) su ogni microcontrollore, lasciando al centrale solo il calcolo delle coppie non lineari (statiche e dinamiche) interagenti tra i giunti e della gravità, poiché prevedono la conoscenza totale dello stato del sistema.

Ulteriore differenza con il precedente controllo è l’integrazione di un ulteriore filtro di Kalman per ottenere una stima “accurata”, dai dati del sensore di coppia e dell’encoder, dell’accelerazione del giunto utilizzato per i calcoli delle coppie interagenti tra i giunti. In precedenza, ciò veniva fatta solo dall’encoder. La stima prevede, inoltre, che venga impostato un livello di saturazione della coppia in ingresso, calcolato in funzione della velocità, a causa dei limiti fisici imposti dal driver di corrente.

Schema a blocchi dei Filtri di Kalman in cascata: g = gravità; M = matrice dinamica dell’Inerzia; C = componente dinamica di Coriolis; theta e tau indicano rispettivamente l’angolo e la coppia; i la corrente di controllo; gli indici m, s, d rispettivamente indicano che la variabile è riferita al morore, che si tratta di una componente statica o dinamica; l’indice i indica il riferimento al giunto

Il lavoro, inizialmente, ha causato due lunghissime fasi:

  1. La fase di testing, incentrata particolarmente sull’implementazione della comunicazione etherCAT tra xPC Target ed i microcontrollori;
  2. La fase di tuning dei parametri, soprattutto sui filtri di Kalman e sui valori del PD.

Il porting del controllo è stato completato ed è stata testata sia la bontà delle stime delle accelerazioni sul giunto in confronto a quelle “reali” che la resa aptica virtualizzando un ambiente composto da un piano infinito obliquo posto in una posizione specifica del campo d’azione dell’EndEffector. È stato calcolato il fattore di penetrazione sul piano oltre che le componenti di forza sugli assi cartesiani, stimate e catturate dal sensore.

Il controllo distribuito sui microcontrollori è stato implementato, ma testato solo in parte. È stata verificata la correttezza della comunicazione e lo switching tra modelli che attiva il controllo decentralizzato realizzato sul calcolatore centrale e quello sulle schede elettroniche.

Il lavoro svolto sul controllo dal titolo “An Interaction Torque Control Improving Human Force Estimation of the Rehab-Exos Exoskeleton” è stato accettato e discusso presso la conferenza HAPTICS 2014 [DOWNLOAD]