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 indossato sulla sinistra

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

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 degli input ai Filtri di Kalman

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; 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]

RELATORE: Prof. Ing Vitoantonio Bevilacqua, PhD

CORRELATORE: Prof. Ing. Antonio Frisoli, PhD

AUTORE: Francesco Pagliara

Il progetto BRAVO ha l’obiettivo di supportare la neuro-riabilitazione di pazienti post-ictus in particolare nel recupero delle funzioni motorie riguardanti gli arti superiori, ciò avviene mediante l’assistenza da parte di un robot a quelle che sono le fasi di riabilitazione consentendo al paziente che ha perso il controllo dell’arto di raggiungere, afferrare e manipolare oggetti.

Il progetto è costituito da due moduli l’ active robot exoskeleton e il tracking system module; il primo è a sua volta suddiviso in un esoscheletro per il supporto e la movimentazione del braccio del paziente con 4 Degree Of Freedom (DOFs), un polso attivo che supporta la mano del paziente e consente i relativi movimenti di rotazione con 2DOFs, una ortesi per mano con 2DOFs che consente di effettuare delle prese cilindriche.

Il lavoro di tesi si concentra sull’ortesi per mano ed in particolare sul miglioramento del controllo della stessa rispetto allo stato dell’arte. Utilizzando il software Matlab/Simulink è stato realizzato un modello nel quale è implementato un controllo in corrente, velocità e posizione gestito attraverso un diagramma a stati che va a definire anche nuove caratteristiche di funzionamento.

Al momento dell’accensione la posizione dell’esoscheletro non è esprimibile rispetto ad un riferimento noto quindi tra le nuove funzionalità implementate vi è l’identificazione dei fine corsa meccanici all’accensione del dispositivo definendo consentendo così di portare l’esoscheletro in una posizione nota e quindi poter controllare la chiusura dell’ortesi in funzione del riferimento trovato.

I pazienti che sono stati affetti da ictus possono presentare delle problematiche per le quali non gli è possibile estendere o chiudere completamente la mano quindi è necessario definire un range di apertura-chiusura che sarà un sottoinsieme di quello dell’esoscheletro ed in particolare varia da utente ad utente. Premesso ciò un’altra funzionalità implementata è quella di calibrazione della ortesi ovvero dopo essere stata interfacciata alla mano del paziente, viene individuato il range di apertura-chiusura della mano del paziente entro il quale gli esercizi di riabilitazione possono svolgersi in sicurezza evitando di far assumere all’utente posture che possano provocare dolore.

Il controllo implementato ha portato dei miglioramenti nell’utilizzo della ortesi consentendo, in particolare in applicazioni che utilizzano segnali elettromiografici (EMG), la possibilità di controllare la coppia e la velocità con cui il compito di grasping viene portato a termine in aggiunta al controllo del grado di chiusura della mano stessa. In quelle applicazione nelle quali vengono utilizzati dei segnali EMG prelevati dall’arto sano per controllare la chiusura della mano di cui si vuol recuperare la funzionalità, il paziente ha ora la capacità di poter modulare velocità e coppia con cui chiudere la mano, quindi il grado di chiusura della mano in funzione l’intensità dei segnali EMG letti dall’arto sano, ottenendo così un comportamento molto più simile al normale funzionamento dell’arto.

Il lavoro di tesi non è ancora concluso perciò sono in corso ulteriori studi volti a migliorare lo stato attuale del controllo dell’ortesi.

RELATORE: Prof. Ing. Vitoantonio Bevilacqua, PhD

CORRELATORI: Prof. Ing. Antonio Frisoli, PhD – Prof. Ing. Alessandro Rizzo, PhD – Ing. Claudio Loconsole, PhD – Ing. Michele Barsotti – Ing. Edoardo Sotgiu

AUTORE: Domenico Buongiorno

Il lavoro di tesi si è incentrato sullo studio e lo sviluppo di un modello neuro-muscolo-scheletrico di arto superiore umano per il controllo di un esoscheletro mediante l’utilizzo di segnali elettromiografici di superficie (sEMG). Il lavoro è stato svolto presso il laboratorio PERCRO (TeCIP) della Scuola Superiore Sant’Anna (Pisa).

Nella prima parte del lavoro di tesi sono state analizzate la cinematica e la dinamica dell’esoscheletro per arto superiore destro L-Exos sviluppato nel laboratorio PERCRO. L-Exos è un esoscheletro progettato per la riabilitazione post-ictus, realizzato in fibra di carbonio e avente cinque di gradi di libertà (abduzione-elevazione-rotazione della spalla, flessione del gomito e prono-supinazione ) di cui quattro attuati (relativamente i gradi di libertà di spalla e di gomito). Inoltre, sono stati realizzati alcuni schemi di controllo per la valutazione della trasparenza dell’esoscheletro. Tali schemi di controllo assicurano forza nulla all’End-Effector utilizzando le informazioni di un sensore di forza tri-assiale montato all’End-Effector dell’esoscheletro.

Nella seconda parte del lavoro, dopo aver studiato l’anatomia muscolo-scheletrica dell’arto superiore umano e l’associazione tra i muscoli ed i movimenti possibili (relativamente all’arto superiore), è stata effettuata una ricerca sullo stato dell’arte del controllo di esoscheletri mediante segnali elettromiografici di superficie. Le strategie di controllo basate sui segnali elettromiografici si suddividono in due principali tipologie:

  1. schemi di controllo basati su segnali di tipo trigger;
  2. schemi di controllo basati su segnali continui.

Generalmente, le strategie di controllo che appartengo alla prima categoria si basano su tecniche di Machine Learning. Reti Neurali e Support Vector Machines possono essere utilizzati per classificare il tipo di movimento che l’utente intende svolgere (analizzando l’attività elettrica dei principali muscoli dell’arto), quindi il risultato della classificazione può essere utilizzato per movimentare l’esoscheletro. Invece, le strategie di controllo che appartengono alla seconda categoria necessitano della predizione della coppia articolare, sulla base della conoscenza dei segnali elettromiografici dei muscoli che attraversano l’articolazione. Tale predizione può essere di tipo ‘model free’ se ad esempio si basa su tecniche di machine learning o di tipo ‘model based’ se vengono utilizzati modelli del sistema neuro-muscolo-scheletrico. Nel lavoro di tesi sviluppato si è scelto di analizzare una strategia di controllo basata su segnali continui e di tipo ‘model based’. In particolare è stato implementato un modello denominato ‘Hill Type’, sviluppato dallo studioso Hill sin dal 1938 e migliorato sino ad oggi da vari gruppi di ricerca. Tale modello permette dapprima di stimare la forza ai capi dell’apparato muscolo-tendineo (conoscendo il segnale elettromiografico del muscolo considerato) e successivamente la componente di coppia generata da esso sul giunto articolare. Tale modello, oltre ai segnali elettromiografici dei muscoli modellati, necessita di alcuni parametri biometrici del sistema muscolo-scheletrico umano. In prima approssimazione, tali parametri sono stati ottenuti da un modello muscolo-scheletrico sviluppato dalla Stanford University per il software di simulazione OpenSim. Per la valutazione del modello è stato progettato un protocollo di acquisizione dati. La procedura di registrazione dati si divide in due fasi principali:

  1. Nella prima fase il soggetto indossa l’esoscheletro e, seguendo delle indicazioni a video, esegue contrazioni in condizioni isometriche in cinque punti differenti del workspace dell’esoscheletro. I cinque punti sono distribuiti nel piano parallelo al piano sagittale passante per l’articolazione di spalla. In questa fase vengono registrati sia la posa dell’esoscheletro sia i segnali elettromiografici di alcuni muscoli dell’arto superiore.
  2. Nella seconda fase avviene la registrazione dei segnali elettromiografici in condizione di Massima Volontaria Contrazione (MVC).
Setup fase sperimentale.

Setup fase sperimentale.

I muscoli modellati sono i seguenti sei:

  • capo lungo del bicipite branchiale;
  • capo lungo del tricipite branchiale;
  • deltoide anteriore;
  • deltoide posteriore;
  • fascio centrale del gran pettorale;
  • dorsale.

Il numero di muscoli modellato è un sottoinsieme di tutti i muscoli che compongono le articolazioni di gomito e di spalla. Per il posizionamento degli elettrodi di superficie sono state seguite le indicazioni SENIAM (Surface ElectroMyoGraphy for the Non-Invasive Assessment of Muscles).

Nella parte finale del lavoro di tesi è stato implementato il modello neuro-muscolo-scheletrico in ambiente Matlab al fine di effettuare le valutazioni circa la sua bontà. Sia per l’articolazione di gomito che per quella di spalla, la validazione del modello consiste nel confrontare due coppie:

  1. coppia articolare stimata con il modello ‘Hill Type’;
  2. coppia articolare misurata durante le contrazioni.

Il modello implementato presenta alcune problematiche di seguito elencate:

  • i muscoli modellati sono un sottoinsieme dei muscoli che realmente attraversano le articolazioni di gomito e di spalla;
  • i parametri del modello sono fortemente dipendenti dal soggetto e dal muscolo considerato;
  • i segnali elettromiografici di superficie dipendono dalla posizione degli elettrodi e dalla condizione della cute.

Date le problematiche appena elencate, si è stato necessario implementare una procedura di ottimizzazione dei parametri del modello neuro-muscolo-scheletrico. Si è scelto di ottimizzare indipendentemente i modelli delle articolazioni di spalla e di gomito. Le due procedure di ottimizzazione sono basate su algoritmi genetici mono-obiettivo che minimizzano la differenza tra le due coppie da confrontare in tutti i cinque punti del workspace. Infine è stato sviluppato un modello Simulink in grado di stimare in real-time le coppie articolari dei giunti di gomito e di spalla (sulla base del modello ottimizzato) e di fornire tali coppie ai giunti dell’esoscheletro.

DEMO

 

TESISTA: Giacomo Tattoli

RELATORE: Prof. Ing. Vitoantonio Bevilacqua, PhD

CORRELATORI: Prof. Ing. Antonio Frisoli, PhD – Ing. Claudio Loconsole, PhD – Daniele Leonardis – Michele Barsotti

Il lavoro consiste nello sviluppo di algoritmi real-time di interfacciamento cervello-computer (BCI), per l’estrazione delle feature, da segnali elettroencefalografici (EEG), e la classificazione di queste ultime, per controllare la navigazione in ambiente virtuale di un avatar. Tale lavoro si inserisce nel progetto VERE (http://www.vere.eventlab-ub.org/Public/research.html), che ha lo scopo di incrementare l’immersività e l’interazione tra uomo e macchine, in ambienti virtuali e non. 

BCI

BCIPer permettere la navigazione solo con l’ausilio del “pensiero” si è sfruttato il protocollo SSVEP.

L’immersività della navigazione è coadiuvata dalla presenza di dispositivi quali Oculus e la piattaforma di Stewart che replica gli effetti della dinamica di una camminata sul soggetto.

I segnali cerebrali sono stati registrati mediante amplificatore g.tec, e processati in ambiente Matlab/Simulink. L’ambiente virtuale, l’esperimento e gli stimoli visivi sono stati sviluppati in ambiente XVR. Il sistema ha permesso all‘utente sdraiato su una poltrona di potersi muovere nell’ambiente virtuale semplicemente guardando gli stimoli visivi proposti tramite HMD Oculus. Ogni stimolo produce uno specifico movimento dell’avatar: avanti, rotazione destra e rotazione sinistra.

Sono stati sviluppati due metodi di classificazione: il primo è basato sul calcolo del modulo della FFT ed il secondo sfrutta una rete neuronale CNN. Entrambi i metodi hanno prodotto ottimi indici di accuratezza: 83% e 87%. I classificatori riescono a distinguere tre classi in aggiunta alla classe di riposo, utilizzando le frequenze di stimolazione pari a 12, 15 e 20 Hz.

I sistemi di BCI sono anche utilizzati da utenti che, a causa di malattie o lesioni, hanno perso la possibilità di comunicare con i mezzi tradizionali; vengono anche impiegati in altri campi, come la riabilitazione, per incrementarne gli effetti.

Il lavoro è stato presentato presso IJCNN, con una pubblicazione dal titolo A novel BCI-SSVEP based approach for control of walking in Virtual Environment using a Convolutional Neural Network, Vitoantonio Bevilacqua, Giacomo Tattoli, Domenico Buongiorno, Claudio Loconsole, Daniele Leonardis, Michele Barsotti, Antonio Frisoli, Massimo Bergamasco. [DOWNLOAD]

Demo dell’esperimento svolto:

 

RELATORE: Prof. Ing. Vitoantonio Bevilacqua, PhD

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

 

AUTORE: Fabio Stroppa

Il lavoro consiste nello sviluppo di un sistema di visione artificiale da integrare nel progetto BRAVO, un sistema di neuro-riabilitazione assistita da esoscheletri robotici per pazienti post-ictus realizzato dal laboratorio PERCRO dell’Istituto Scuola Superiore Sant’Anna di Pisa.

Il sistema BRAVO prevede un esoscheletro per braccio, denominato L-Exos, che guida i movimenti del paziente durante l’operazione di raggiungimento di oggetti reali in uno scenario (verosimilmente, un tavolo dove sono disposti degli oggetti). Questi oggetti sono scansionati da un sensore 3D o RGB-D per la ricostruzione dello scenario nell’ambiente virtuale in modo da conoscerne le coordinate poterle inviare al modello Simulink del braccio robotico. Il paziente è munito di un Eye-Tracker per il monitoraggio del movimento degli occhi, che si associa univocamente ad un solo oggetto nello scenario, in modo da identificare il target selezionato che si intende raggiungere. Il comando di movimento del robot, invece, viene fornito tramite Brain-Computer Interface (BCI) elaborando i segnali cerebrali del paziente, identificando una soglia per la quale lo stesso intende muovere o meno l’arto.

Gli ulteriori sviluppi forniti da questo lavoro di tesi consistono nell’utilizzo altri due arti robotici: un’ortesi per mano ed un polso, utili al paziente per poter fisicamente afferrare gli oggetti. Avendo questi solo due gradi di libertà (falangi superiori e pollice per la mano, prono-supinazione e flesso-estensione per il polso), la forma che gli oggetti devono avere per poter essere raggiunti ed dall’intero sistema robotico deve essere necessariamente cilindrica.

Il lavoro è quindi stato dedicato completamente nella riscrittura del software di acquisizione dell’ambiente virtuale, specializzandolo nel riconoscimento di figure cilindriche. Di queste, le coordinate del loro centroide e la loro orientazione nello spazio sono infine fornite (via UDP) al braccio robotico, il quale si occuperà dell’effettivo raggiungimento nell’ambiente reale. Ognuno degli oggetti dello scenario è soggetto ad un algoritmo di tracking e riconoscimento in modo tale da poter identificare fotogramma dopo fotogramma gli oggetti in questione, anche se soggetti a movimento.

Come sensore RGB-D utilizzato per l’acquisizione dello scenario tridimensionale si è scelto il Microsoft Kinect; per l’elaborazione delle immagini 2D si è utilizzata la libreria OpenCV; infine, per l’elaborazione 3D si è invece scelta la libreria Point Cloud Library (PCL).

I requisiti di sistema prevedono che tutta l’elaborazione debba essere eseguita in real-time, dunque il flusso video acquisito deve essere processato fotogramma per fotogramma da moduli computazionalmente compatibili con le operazioni richieste dallo scenario riabilitativo. Ogni fotogrammadel video, quindi, è processato per identificare quali oggetti sono presenti nello spazio di lavoro, quali di questi sono cilindrici e quali di questi possono essere associatiad oggetti precedentemente osservati (tracking).

Inizialmente, il software procede con una preliminare fase di filtraggio degli elementi non facenti parte della Regione di Interesse del sistema, snellendo il numero di dati che saranno successivamente processati. La risultante immagine 2D filtrata viene successivamente trasformata in una nuvola di punti tridimensionale sfruttando le informazioni di profondità della scena fornite dal sensore IR del Kinect.

La risultate scena tridimensionale viene quindi segmentata al fine di suddividerla nei soli oggetti posizionati davanti al paziente. Viene quindi richiamato un sotto-modulo di Riconoscimento dei Cilindri, il quale si occupa di scartare tutti gli oggetti non aventi suddetta forma geometrica. Nell’ottica di seguire oggetti reali che possono essere maneggiati da un utente (tipicamente, un fisioterapista che segue il paziente durante la terapia), questi possono essere parzialmente occlusi dalla mano che li afferra; pertanto, si è reso necessario l’utilizzo di un preliminare Filtro di Pelle Umana dell’iniziale immagine RGB, escludendo dall’elaborazione 3D tutto ciò che viene considerato facente parte di una mano (oggetti divisi dalla mano dell’utente sono ricostruiti con appositi metodi che sfruttano le caratteristiche geometriche dei cilindri rilevati nell’immagine).

Infine, ogni cilindro precedentemente riconosciuto dal sistema è soggetto al sistema di Tracking, il quale cerca di associare ogni oggetto nel fotogramma corrente ad un oggetto apparso nello storico dell’intero flusso video, per poterne seguire gli spostamenti. L’associazione viene effettuata considerando esclusivamente informazioni tridimensionali degli oggetti analizzati (in particolare, VFH features, posizione nello spazio, colore dell’oggetto e dimensione).

I test effettuati sull’algoritmo hanno previsto l’utilizzo di un Datasetdi 300 oggetti. Il modulo di Riconoscimento dei Cilindri ha ottenuto una matrice di confusione con Precisione pari a 92,6% e Recall pari a 92,4%. Il modulo di Tracking 3D ha ottenuto una correttezza di tracking dell’89,62% degli oggetti del dataset. Molti degli errori riscontrati sono fortemente dipendenti dai parametri utilizzati come input del sistema.

Il lavoro è stato pubblicato presso Eurohaptics 2014 con il titolo “A Robust Real-Time 3D Tracking Approach for Assisted Object Grasping”. [DOWNLOAD]