• Non ci sono risultati.

Controllo di un dispositivo a cinematica parallela per la riabilitazione neuromotoria del piede

N/A
N/A
Protected

Academic year: 2021

Condividi "Controllo di un dispositivo a cinematica parallela per la riabilitazione neuromotoria del piede"

Copied!
248
0
0

Testo completo

(1)

Politecnico di Milano

SCUOLA DI INGEGNERIA INDUSTRIALE E DELL’INFORMAZIONE Corso di Laurea Magistrale in Ingegneria Meccanica

Tesi di Laurea Magistrale

CONTROLLO DI UN DISPOSITIVO

A CINEMATICA PARALLELA

PER LA RIABILITAZIONE NEUROMOTORIA

DEL PIEDE

Relatore:

Prof. Hermes GIBERTI Correlatore:

Ing. Dott. Matteo MALOSIO Ing. Alessio PRINI

Tesi di laurea di:

Francesco LA MURA

Matr. 804409

(2)
(3)

Dedicato a tutti quelli che non smettono mai di avere voglia di imparare, che non hanno paura di sporcarsi le mani, che si realizzano nella fatica, che investono del tempo nell’indagare se stessi, che trovano nel viaggio più che nella meta il senso di ogni percorso e che non si stancano mai di cercare il modo di realizzarsi e lasciare un segno.

(4)
(5)

Ringraziamenti

In primo luogo un grazie al mio relatore Hermes Giberti, per la disponibilità, l’utilissimo punto di vista e la grande fiducia che ha sempre dimostrato in me e nel fantastico gruppo con cui ho lavorato.

Un grazie speciale a Matteo, non potevo sperare di avere tutor migliore, sotto ogni punto di vista, professionale e personale. Grazie della fiducia e del sostegno che non mi hai mai fatto mancare.

Un altro ringraziamento speciale ad Alessio, che in questi mesi mi ha sop-portato e supsop-portato giornalmente, inutile dire che senza la tua competenza e pazienza il lavoro sarebbe andato diversamente.

Grazie a tutti i ragazzi di ITIA, ognuno di voi a modo suo mi ha fatto sentire parte del gruppo fin dal primo giorno, lavorare con voi è stata un’esperienza che conserverò con cura.

Le persone che in questi anni mi hanno accompagnato sono tante, chi da sempre, chi da poco, ognuna speciale e insostituibile.

Un primo grande grazie alla mia famiglia, mamma papà e vale, che da sempre credono in me, sopportano il mio carattere a volte difficile, e mi accompagnano in ogni fase della mia vita, credendo sempre in tutte le mie scelte.

Grazie al mio amore, tieni vivo qualcosa in me senza il quale la vita non sarebbe la stessa. So che non è stato sempre facile sopportare i miei deliri ingegneristici e i tanti momenti di sconforto, ma è soprattutto grazie a te che ho sempre trovato la forza di combattere, non potrei desiderare compagna di vita migliore.

(6)

V

Ti amo tanto.

Un grazie davvero speciale a Stefano e Matteo, le gioie vanno e vengono, i problemi anche, gli amici veri restano. Con voi ho condiviso tutto, siete stati le mie spalle, i miei consulenti polivalenti, le mie valvole di sfogo, le mie distrazioni. Siete preziosi e insostituibili per me, vi voglio bene.

Non bisogna essere per forza amici da una vita per creare un legame speciale, GRAZIE riki, ritrovarti in questo percorso è stato un colpo di fortuna da jackpot, sapere di aver guadagnato un amico vero è una delle grandi soddisfazioni di questa tesi. Potrai sempre contare su di me.

(ah giusto per la cronaca, Ci vuole pazienza Nicò! ).

I ragazzi di ITIA li ho già citati, ma un grazie speciale va a Giulio, credo non sia eccessivo dire che ci siamo capiti e sintonizzati circa 10 secondi dopo che sono entrato in ufficio la prima volta. La tua amicizia e i tuoi consigli sono stati davvero preziosi.

E infine grazie a tutti coloro che hanno avuto una parte significativa in tutto questo percorso, anche molto prima dell’università: grazie Tia, Tata, posso sempre contare su di voi, Stefano, Dario, Lore, Eliana, Simo, Pie, Giulio senza di voi non mi sarei divertito tanto, Vale e Lory, beh anche voi quanti ne avete sopportati di sproloqui...siete troppi non ci state tutti, se qualcuno non è stato citato farò ammenda.

GRAZIE, dal profondo del cuore.

(7)
(8)

Indice

Sommario e Abstract XX

1 Introduzione 1

1.1 Il contesto riabilitativo . . . 1

1.1.1 Fisiopatologie e neuroriabilitazione . . . 2

1.2 Stato dell’arte dei Robot per la riabilitazione della caviglia . . . 4

1.3 Stato dell’arte delle strategie di controllo in ambito riabilitativo . . . 8

1.4 Scopi del robot e del progetto . . . 13

1.5 Obbiettivi del lavoro . . . 14

1.6 Struttura della tesi . . . 15

2 PkAnkle 18 2.1 Caratteristiche generali . . . 18

2.2 Componenti principali . . . 22

2.3 Rete EtherCAT . . . 28

2.4 COE: CAN Over EtherCAT . . . 30

3 Algoritmi di controllo 33 3.1 Controlli sviluppati e terapie neuroriabilitative . . . 33

3.2 Controllo in posizione . . . 35 3.2.1 Cinematica . . . 35 Caratteristiche geometriche . . . 35 Convenzioni e nomenclatura . . . 38 Cinematica inversa . . . 40 Cinematica differenziale . . . 47 VII

(9)

INDICE VIII Cinematica diretta . . . 50 3.2.2 Generatore di traiettorie . . . 55 3.2.3 Safe Position . . . 57 3.2.4 Schema di controllo . . . 61 3.3 Controlli in ammettenza . . . 62

3.3.1 Controllo in ammettenza in movimento libero . . . 63

Trasporto informazioni cella di carico . . . 63

Compensazione di gravità . . . 64

Calibrazione modello di stima . . . 66

Cedevolezza e movimento libero . . . 71

Sicurezza . . . 72

Schema di controllo . . . 73

3.3.2 Controllo in ammettenza con Tunnel-Force-Assistance . . . 74

Definizione del task . . . 74

Libertà di movimento . . . 75

Tunnel-Force-Assistance . . . 75

Tunnel force tempo dipendente . . . 82

Schema di controllo . . . 89

Tunnel force tempo indipendente . . . 90

Regolazione del tunnel . . . 92

4 Simulazione 94 4.1 Introduzione . . . 94

4.2 Componenti del simulatore e scelte progettuali . . . 97

Robot . . . 97

Generatore di traiettorie . . . 98

Solutore e tempo ciclo . . . 98

Input di coppia . . . 99

Cella di carico . . . 100

Filtri . . . 101

Free admittance control . . . 103

Safe Position . . . 104

(10)

INDICE IX

Tunnel controller . . . 106

Output grafici . . . 109

4.3 Prove e risultati . . . 110

4.3.1 Prove in ammettenza senza vincoli di rotazione . . . 110

4.3.2 Prove in ammettenza con Tunnel-Force-Assistance . . . . 116

Tunnel tempo indipendente . . . 116

Tunnel con controllo assistivo tangenziale . . . 123

Variazione dinamica della banda di tolleranza . . . 126

5 Architettura del software di controllo 129 5.1 Scelte progettuali di base . . . 129

5.2 La programmazione ad oggetti . . . 130

5.2.1 L’oggetto motore . . . 131

5.2.2 L’oggetto pkankle . . . 132

5.3 Le macchine a stati . . . 133

5.3.1 Macchina a stati driver . . . 133

5.3.2 Macchina a stati motore . . . 137

5.3.3 Macchina a stati robot . . . 140

5.4 R.O.S. "Robot Operating System" . . . 143

5.4.1 Infrastruttura di comunicazione . . . 143

5.4.2 Librerie e strumenti per la robotica . . . 145

5.5 Ciclo di controllo real-time . . . 146

6 Algoritmi speciali e analisi sensori 152 6.1 Analisi dei sensori . . . 152

6.1.1 Cella di carico . . . 152

6.1.2 Encoder . . . 155

6.1.3 Potenziometri . . . 155

Determinazione finecorsa virtuali . . . 158

6.2 Safe Homing . . . 159

6.3 Algoritmo di sicurezza sulla ridondanza di misura . . . 165

7 Analisi sperimentale 167 7.1 Prestazioni del controllo in ammettenza libero . . . 167

(11)

INDICE X

7.1.2 Prove con ammettenze a 0.2 rad/sN m . . . 181

7.1.3 Prove con ammettenze a 0.2 rad/sN m e controllo a 1kHz . . 191

7.1.4 Prove con ammettenze a 0.3 rad/sN m . . . 193

7.1.5 Prove con ammettenze a 0.3 rad/sN m e controllo a 1kHz . . 196

7.2 Prove con Tunnel-Force-Assistance . . . 198

7.2.1 Prove con riferimento nell’origine . . . 198

Ammettenze a 0.1 rad/sN m , Kort = 5N mrad , toll = 0 . . . 199

Ammettenze a 0.1 rad/sN m , Kort = 20N mrad , toll = 0 . . . 200

Ammettenze a 0.3 rad/sN m , Kort = 20N mrad , toll = 0 . . . 201

7.2.2 Prove con riferimenti non degeneri . . . 201

Ammettenze a 0.1 rad/sN m , Kort = 20N mrad , toll = 0, riferi-mento su αz . . . 202

Ammettenze a 0.3 rad/sN m , Kort = 20N mrad , toll = 0.05rad, riferimento su αz . . . 204

Compensazione di gravità . . . 205

7.3 Riepilogo risultati . . . 208

7.3.1 Controllo in ammettenza libero . . . 208

7.3.2 Controllo in ammettenza con Tunnel-Force-Assistance . . 209

8 Conclusioni e sviluppi futuri 211

A Lista dei simboli 215

B Acquisizioni potenziometri 217

Lista delle abbreviazioni 219

(12)
(13)

Elenco delle figure

1.1 Gdl caviglia . . . 4

1.2 Esempi di dispositivi indossabili . . . 5

1.3 Esempi di dispositivi esterni . . . 6

1.4 MIT-MANUS . . . 7

1.5 Robot per la terapia del cammino . . . 8

2.1 PkAnkle: modello e prototipo . . . 18

2.2 Modello della caviglia . . . 19

2.3 Agile-Eye di Clement M.Gosselin . . . 20

2.4 Possibilità di regolazione piattaforma . . . 20

2.5 Montaggi del robot Agile-Eye a giunti coassiali . . . 21

2.6 Piattaforma di base . . . 22

2.7 Catena cinematica . . . 22

2.8 Piattaforma mobile . . . 23

2.9 Supporto piede . . . 23

2.10 Cella di carico ATI FT MINI45 . . . 23

2.11 Motore vista posteriore . . . 24

2.12 Motore vista anteriore . . . 24

2.13 Riduttore secondario a cinghia . . . 25

2.14 Potenziometro SoftPot . . . 25

2.15 Wiper . . . 25

2.16 Case del potenziometro . . . 25

2.17 Sensore di prossimità capacitivo . . . 26

2.18 Case di protezione . . . 27

2.19 Quadro elettrico esterno, componenti elettronica . . . 28

(14)

ELENCO DELLE FIGURE XIII

2.20 Telegramma modificato "on the fly" . . . 29

3.1 Parametri geometrici . . . 35

3.2 Angolo al vertice . . . 36

3.3 Parametri geometrici . . . 37

3.4 Piramide . . . 38

3.5 Sistemi di riferimento in homing . . . 39

3.6 Sistemi di riferimento in una posizione ruotata . . . 39

3.7 Versori di rotazione: secondo la convenzione δ risulta < 0 . . . . 41

3.8 Versori dei giunti . . . 43

3.9 Spigoli della piramide nel ground . . . 44

3.10 Rotazione di W1 attorno a U1 . . . 45

3.11 Frame 2 . . . . 51

3.12 Relazione tra ground frame e frame "2" iniziale . . . 54

3.13 Tip della piattaforma mobile . . . 58

3.14 Modello geometrico del case . . . 59

3.15 Schema del controllo in posizione . . . 61

3.16 Blocco motori . . . 61

3.17 Posizione e orientamento del frame 1 rispetto a c . . . 64

3.18 Baricentro piede + piattaforma . . . 68

3.19 Stima parametri modello gravitazionale . . . 69

3.20 Depurazione degli effetti gravitazionali non compensati . . . 70

3.21 Schema di funzionamento del controllo in ammettenza senza vincoli di triettoria . . . 73

3.22 Puro pitch . . . 79

3.23 Combinazione di pitch e yaw in fase con segno opposto . . . 80

3.24 Combinazione di pitch e yaw sfasati . . . 81

3.25 Direzione puntualmente tangenziale alla traiettoria . . . 82

3.26 Differenza vettoriale tra posa attuale e target . . . 83

3.27 Alcuni esempi di volume di tolleranza al variare dei parametri . 84 3.28 Traiettoria . . . 85

3.29 Fase iniziale, orientamento attuale in tolleranza . . . 85

3.30 Fase iniziale, orientamento attuale fuori tolleranza . . . 86

(15)

ELENCO DELLE FIGURE XIV

3.32 Orientamento che genera errori in entrambe le direzioni . . . 87

3.33 Vettori che riassumono l’azione dei controllori . . . 88

3.34 Schema di controllo con Tunnel-Force-Assistance . . . 89

3.35 Tunnel Admittance Control . . . 89

3.36 Pseudo traiettoria a curvatura non costante . . . 90

4.1 Schema Simulink completo del simulatore, livello top . . . 96

4.2 Blocchi che realizzano il calcolo dei riferimenti ai motori, gli azionamenti ideali e la cinematica del robot . . . 97

4.3 Mantenitore di ordine 0 "Sample-and-hold" . . . 98

4.4 Legame tra assi fisiologici e assi del mouse 3D . . . 99

4.5 Blocco di acquisizione dal mouse 3D, consizionale al booleano USER INPUT . . . . 99

4.6 Addizione del rumore e acquisizione canali . . . 100

4.7 Esempio di acquisizione dal mouse 3D, prima e dopo l’azione del filtro esponenziale rappresentato in Fig.6.1 . . . 101

4.8 Acquisizione prime e dopo il filtro, nessuna azione esercitata sul mouse 3D . . . 101

4.9 Esempio di filtro esponenziale . . . 102

4.10 Contenuto dei blocchi media mobile exp in Fig.4.9 . . . 103

4.11 Cuore del blocco Admittance control . . . 104

4.12 Particolare dello schema in Fig.4.1 che mostra la somma dei contributi dovuti ai controllori . . . 105

4.13 Esempio di switch manuale, in questo caso ASSISTANCE, che invia un booleano ad un repository locale di parametri, resi disponibili a tutti i blocchi di livello inferiore . . . 106

4.14 Sottosistema che trasforma l’errore di orientamento in direzione ortogonale alla traiettorie, in una coppia, simulando la risposta di un sistema massa-molla-smorzatore . . . 107

4.15 Tunnel controller . . . 108

4.16 Blocchi che si occupano degli output grafici più complessi. Si tratta in tutti e tre i casi di blocchi user defined matlab function, ovvero subsystem al cui interno è scritto codice completamete personalizzato . . . 109

(16)

ELENCO DELLE FIGURE XV

4.17 Animazione 3D del robot e del modello geometrico del case . . . 110

4.18 Risultati prima prova Free-Admittance . . . 111

4.19 Legame coppia-velocità . . . 112

4.20 Influenza del controllo di sicurezza sull’interferenza . . . 113

4.21 Orientamento che genera pericolo di interferenza . . . 114

4.22 Risultati seconda prova, ammettenze ridotte su roll e yaw . . . . 115

4.23 Legge di moto adottata nella prima prova con controllo in am-mettenza libero . . . 116

4.24 No dipendenza dal tempo, tolleranza ortogonale non nulla, siste-ma cedevole e poco smorzato . . . 117

4.25 Movimento in tolleranza . . . 117

4.26 Movimento fuori tolleranza . . . 118

4.27 Prove qualitative al variare dei parametri dinamici . . . 119

4.28 Legge di moto composta adottata nella prova in Fig.4.27c . . . . 120

4.29 Dettaglio prova su task complesso . . . 121

4.30 Plot dinamico della prova con task complesso . . . 122

4.31 Prima prova con controllo assistivo in direzione tangenziale . . . 123

4.32 Seconda prova con controllo assistivo in direzione tangenziale . . 124

4.33 Prova con tolleranze variabili in real-time . . . 127

5.1 Collegamento logico tra gli oggetti . . . 133

5.2 Macchina a stati del singolo driver Elmo . . . 134

5.3 Macchina a stati dell’oggetto motore . . . 137

5.4 Macchina a stati dell’oggetto PkAnkle . . . 140

5.5 Schema semplificato delle fasi di update . . . 142

5.6 Infrastruttura di comunicazione . . . 144

5.7 Schema semplificato del ciclo di controllo real-time . . . 150

6.1 Finestra esponenziale mobile generata dal filtro descritto in 4.2, finestra di 10 campioni con 0 campione attuale . . . 153

6.2 Effetto del filtro con finestra da 10 campioni . . . 153

6.3 Effetto del filtro con finestra da 50 campioni . . . 154

6.4 Effetto del filtro con finestra da 100 campioni . . . 154

(17)

ELENCO DELLE FIGURE XVI

6.6 Procedura Elmo a spostamento iniziale positivo, arresto al primo

index pulse con HS acceso . . . 160

6.7 Procedura Elmo a spostamento iniziale negativo, arresto al primo index pulse con HS acceso . . . 161

6.8 Relazione tra segnale HS e posizione angolare del motore . . . . 163

6.9 Schema logico Safe-Homing . . . 164

7.1 Coppia e rotazione sull’asse di roll (x) . . . 171

7.2 Coppia e rotazione sull’asse di pitch (y) . . . 171

7.3 Coppia e rotazione sull’asse di pitch (z) . . . 172

7.4 Effetto del filtro su αx e segnale derivato ωx . . . 173

7.5 ωx calcolata sul segnale filtrato e T x . . . 173

7.6 Segnali finestrati, sezione a 0.2Hz e cross correlazione . . . 174

7.7 Spettri di ingresso e uscita con forzante a 0.2Hz . . . 174

7.8 Segnali finestrati, sezione a 1Hz e cross correlazione . . . 176

7.9 Spettri di ingresso e uscita con forzante a 1Hz . . . 176

7.10 Funzione di trasferimento da Tx alla velocità di roll . . . 177

7.11 Funzione di trasferimento da Tx alla velocità di roll con modulo normalizzato e in db . . . 178

7.12 Funzione di trasferimento da Ty alla velocità di pitch con modulo normalizzato e in db . . . 179

7.13 Funzione di trasferimento da Tz alla velocità di yaw con modulo normalizzato e in db . . . 180

7.14 Coppia attorno a x e velocità di roll, ammettenza 0.2 . . . 181

7.15 Coppia attorno a x e velocità attorno a y e z, ammettenze a 0.2 182 7.16 Coppia attorno a y e velocità attorno a x e z, ammettenze a 0.2 183 7.17 Coppia attorno a z e velocità attorno a x e y, ammettenze a 0.2 183 7.18 Fdt da Tx a ωx, ammettenza 0.2 rad/sN m . . . 184

7.19 Fdt da Ty a ωy, ammettenza 0.2 rad/sN m . . . 184

7.20 Fdt da Tz a ωz, ammettenza 0.2 rad/s N m . . . 185

7.21 FdT da Tx a tutti i gdl, ammettenze a 0.2 rad/sN m . . . 186

7.22 FdT da Ty a tutti i gdl, ammettenze a 0.2 rad/sN m . . . 186

7.23 FdT da Tz a tutti i gdl, ammettenze a 0.2 rad/sN m . . . 187

(18)

ELENCO DELLE FIGURE XVII

7.25 Coordinamento necessario dei motori per generare ωy . . . 188

7.26 Coordinamento necessario dei motori per generare ωz . . . 189

7.27 Numerazione motori . . . 189

7.28 Innesco della rotazione attorno a z causato dalla coppia attorno a x190 7.29 FdT da Tx a tutti i gdl, ammettenze a 0.2 rad/sN m , controllo a 1kHz 191 7.30 FdT da Ty a tutti i gdl, ammettenze a 0.2 rad/sN m , controllo a 1kHz 192 7.31 FdT da Tz a tutti i gdl, ammettenze a 0.2 rad/sN m , controllo a 1kHz 192 7.32 FdT da Tx a tutti i gdl, ammettenze a 0.3 rad/sN m . . . 193

7.33 FdT da Ty a tutti i gdl, ammettenze a 0.3 rad/sN m . . . 194

7.34 FdT da Tz a tutti i gdl, ammettenze a 0.3 rad/sN m . . . 194

7.35 FdT da Tx a tutti i gdl, ammettenze a 0.3 rad/sN m , controllo a 1kHz 196 7.36 FdT da Ty a tutti i gdl, ammettenze a 0.3 rad/sN m , controllo a 1kHz 197 7.37 FdT da Tz a tutti i gdl, ammettenze a 0.3 rad/sN m , controllo a 1kHz 197 7.38 Azione del controllo attorno al riferimento nullo, Kort= 5N m/rad199 7.39 Azione del controllo attorno al riferimento nullo, Kort = 20N m/rad200 7.40 Azione del controllo attorno al riferimento nullo . . . 201

7.41 Azione del controllo attorno ad un task rotativo di puro yaw . . 202

7.42 Azione del controllo attorno ad un task rotativo di puro yaw, tolleranza ortogonale a 0.05rad . . . 204

7.43 Ingrandimento di Fig.7.42 secondo grafico . . . 205

7.44 Setup sperimentale prova del controllo anti gravità . . . 205

7.45 Prova a gravità non compensata . . . 206

(19)

Elenco delle tabelle

3.1 Parametri geometrici . . . 37

3.2 Coseni direttori . . . 42

3.3 Coseni direttori assi motori . . . 43

5.1 Transizioni di stato del driver . . . 135

5.2 Descrizione degli Stati del driver . . . 136

5.3 Transizioni di stato del motore . . . 137

5.4 Variabili di stato dell’oggetto motore . . . 138

5.5 Transizioni di stato dell’oggetto robot . . . 140

6.1 Dati Encoder . . . 155 6.2 Analisi potenziometro 1 . . . 156 6.3 Analisi potenziometro 2 . . . 157 6.4 Analisi potenziometro 3 . . . 157 A.1 Nomenclatura . . . 216 B.1 Acquisizioni potenziometro 1 . . . 217 B.2 Acquisizioni potenziometro 2 . . . 217 B.3 Acquisizioni potenziometro 3 . . . 218 XVIII

(20)
(21)

Sommario

Il prototipo PkAnkle, sviluppato presso CNR-ITIA, è un robot esterno a cinematica parallela dedicato al trattamento della caviglia. La sua cinematica realizza un giunto sferico puro, il cui centro di rotazione è posizionato in modo da rispettare il movimento fisiologico della caviglia. Tale caratteristica lo rende particolarmente adatto all’impiego in ambito neuroriabilitativo. In tale ambito, i risultati conseguiti da robot traslanti o roto-traslanti, dotati di algoritmi di controllo in forza basati sul principio detto "Assist-As-Needed" su una traiettoria assegnata, costituiscono il riferimento per le terapie attive. Questo lavoro di tesi si pone come principale obbiettivo di elaborare algoritmi di controllo in forza innovativi, in grado di tradurre tale principio nello spazio delle rotazioni pure. Sulla piattaforma PkAnkle sono state quindi sviluppate logiche di controllo in ammettenza, in grado di regolare quantità e qualità dell’interazione tra uomo e dispositivo, con e senza l’ausilio di un task rotativo di riferimento. Inoltre, è stata posta particolare attenzione nel garantire la sicurezza dell’interazione tra uomo, robot e ambiente. Tutte le logiche sono state progettate dapprima con un approccio teorico e successivamente validate mediante l’impiego di un simulatore interattivo real-time. L’implementazione del lavoro sulla macchina ha visto la progettazione integrale del software, partendo dall’architettura di base e realizzando un codice modulare, efficiente e facilmente espandibile, con particolare attenzione all’ottimizzazione dell’infrastruttura di comunicazione. Per validare gli algoritmi progettati e indagare le prestazioni del software di controllo, sono infine state condotte alcune prove sperimentali.

(22)

Abstract

The PkAnkle prototype, developed at CNR-ITIA, is an external parallel kinematic robot, dedicated to ankle treatment. Its kinematic realizes a pure spherical joint, whose center of rotation is positioned so that physiological movement of the ankle is respected. This feature makes it particularly suitable for use in the neurorehabilitation field. In this context, the results achieved by translating or roto/translating robots that use force control logics based on the "Assist-As-Needed" principle on a given trajectory, provide the benchmark for active rehabilitation therapies. The main objective of this thesis was to develop innovative force control algorithms, able to translate this principle in the pure rotations space. We developped admittance control logics, able to regulate the quantity and quality of the interaction between patient and device, both with and without the aid of a reference rotary task. In addition, particular attention was given to ensuring safety during humans-robots-environment interaction. All control logics were designed at first with a theoretical approach and subsequently validated on a real-time interactive simulator. The control logics implementation on the robot has started with the design of the whole control software architecture and went on creating a modular, efficient and easily expandable code, with particular attention to the communication infrastructure optimization. In order to test the algorithms designed and investigate control software performances, some experimental tests were conducted.

(23)
(24)

Capitolo 1

Introduzione

1.1

Il contesto riabilitativo

Sempre più frequentemente si assiste all’impiego di dispositivi robotici in ambito medico, e tra i campi di utilizzo di tali dispositivi, quello della riabilita-zione è senza dubbio terreno di grandi possibilità.[1]

In alcuni casi tali applicazioni nascono dall’adattamento di robot nati per l’in-dustria, in altri vengono progettati dispositivi dedicati.[2]. In entrambi i casi, i risultati ottenuti hanno aperto la strada al rapido sviluppo di tali tecnologie, e le nuove possibilità da esse efferte, stanno rendendo possibile esplorare nuove frontiere della terapia.

Un robot per sua natura è instancabile, assicura grande ripetibilità anche per impieghi continui di durata elevata, può essere programmato per eseguire movimenti molto specifici, le cui leggi di moto possono essere accuratamente disegnate sulle esigenze del paziente. Tali caratteristiche suggeriscono che il primo e più intuitivo impiego di Robot in ambito riabilitativo sia sgravare il fisioterapista della fatica fisica, sostituendolo nei compiti di semplice movimen-tazione passiva del paziente.

Ma tali dispositivi offrono la possibilità di fare molto di più:

• La mobilizzazione passiva può essere portata ad un livello superiore grazie alla possibilità di progettare esercizi complessi, con parametri variabili nel tempo e personalizzati in base alle esigenze del singolo paziente.

(25)

1.1. Il contesto riabilitativo 2

• E’ possibile raccogliere ed analizzare una grande varietà e quantità di dati, grazie ai quali introdurre strumenti di valutazione della terapia e dello stato del paziente, dei suoi progressi, e della correlazione di questi con i parametri della terapia. Database che raccolgono i dati di molti pazienti consentono inoltre di studiare l’efficacia generale di una metodologia di trattamento.

• Si può rendere disponibili in tempo reale alcuni di questi dati al paziente come feedback propriocettivi, realizzando terapie nelle quali la consapevo-lezza dell’utente sulle proprie prestazioni può essere sfruttata per ottenere risultati migliori.

• E’ possibile elaborare terapie attive, durante le quali il comportamento della macchina viene influenzato dalle azioni e reazioni del paziente. Tale dialogo tra utente e robot può avvenire a diversi livelli, ad esempio tramite lo scambio di forze esercitate volontariamente dall’utente, o tramite l’acquisizione di segnali generati dal paziente come EEGoEMG, sulla base dei quali definire strategie di controllo della macchina.

Questi e altri strumenti, uniti alla sensibilità e all’esperienza del personale medico preposto ad utilizzarli, fanno dei dispositivi robotici un’importante risorsa, per il trattamento di molti dei più comuni casi fisioterapici, ma una ancor più preziosa per la branca della neuroriabilitazione.

1.1.1

Fisiopatologie e neuroriabilitazione

Lesioni o disfunzioni dell’apparato nervoso possono provocare un ampio ventaglio di problematiche, più o meno estese e generanti diversi gradi di disabi-lità. Per questa classe di disfunzioni, l’ictus è in Italia la prima causa[3], ma ricoprono grande importanza anche i danni neurologici di natura traumatica, ad esempio traumi cranici o spinali.

Quando la lesione coinvolge aree dell’apparato nervoso preposte alla coordina-zione e realizzacoordina-zione del moto, le forme in cui la disfuncoordina-zione può manifestarsi vengono generalmente catalogate a seconda nel meccanismo che le provoca[4]:

(26)

1.1. Il contesto riabilitativo 3

Riflessi spinali Si tratta di anomalie afferenza dipendenti, ovvero reazioni

involontarie anormali dell’apparato nervoso ai feeeback provenienti dagli organi sensoriali periferici. Fanno parte di questa categoria i riflessi Propriocettivi come lo Stretch Reflex1, quelli Nocicettivi come gli spasmi

in flessione ed estensione, e quelli cutanei come il riflesso di Babinski. Comando efferente Contrazione muscolare continua, che avviene senza

un’ap-parente volontarietà, né un feedback sensoriale periferico. Tali contrazioni danno problemi posturali e di range del movimento. Rientrano in questa categoria le Distonie Spastiche, come la postura emiplegica2, e le Reazioni

Associate3.

Disordini del movimento volontario Si tratta di malfunzionamenti del

tem-pismo e del coordinamento dei muscoli agonisti e antagonisti durante un movimento volontario, con disfunzioni dei meccanismi di inibizione/atti-vazione. Rientra in questa categoria la co-contrazione patologica, ovvero l’attivazione contemporanea di muscoli antagonisti che genera difficoltà di movimento e aumento generale della rigidità, ad esempio in risposta ad un aumento di tensione nell’eseguire movimenti di precisione.

Malgrado ci sia grande variabilità nei risultati conseguiti dalla terapia, la ri-cerca clinica sta dimostrando la valenza di metodologie di trattamento delle disfunzioni presentate che impieghino dispositivi robotici.[1]

Tali terapie sfruttano le peculiarità dei robot per eseguire esercizi funzionali, ripetitivi e ripetibili, intensi, in ambienti virtuali arricchiti, che puntano a recuperare la mobilità, la coordinazione, aumentare l’autonomia e ristabilire la connessione tra intenzione, movimento corretto e impulsi nervosi associati[5]. Ta-le recupero passa attraverso il meccanismo della plasticità cerebraTa-le: l’apparato nervoso umano ha la capacità di esercitare e creare connessioni nervose sempre più numerose ed efficienti se stimolato a dover migliorare dalla ripetizione di un

1Contrazione anomala di un muscolo in risposta ad un allungamento, velocità e range

dipendente.

2Posizione flessa del gomito, polso e dita, con una contrazione sostenuta.

3Attività automatiche che fissano o alterano la postura di una o più parti del corpo,

quando un’altra parte di esso viene messa in azione a seguito di uno sforzo volontario o di una stimolazione riflessa.

(27)

1.2. Stato dell’arte dei Robot per la riabilitazione della caviglia 4

esercizio. Nella terapia la neuroplasticità è coinvolta sotto due punti di vista fondamentali: la parte di apparanto coinvolta dalla lesione ha perso spesso buona parte di questa capacità, la terapia si pone l’obbiettivo di ristabilire il meccanismo, almeno parzialmente, incentivando il recupero spontaneo. Paralle-lamente, il medesimo principio viene adottato dalla parte di apparato sana per trovare soluzioni alternative al deficit, innescando meccanismi di sostituzione e compensazione[5].

1.2

Stato dell’arte dei Robot per la

riabilita-zione della caviglia

La caviglia umana è un’articolazione piuttosto complessa, la cui modellazione è stata oggetto di diversi studi.[6] Scenderemo nel dettaglio della modellazione cinematica nel Cap.2, per questa prima introduzione le informazioni necessarie sono: è possibile attribuire alla caviglia tre gradi di libertà (gdl) rotativi e altrettanti assi fisiologici di rotazione (Fig.1.1), inoltre è possibile approssimare tali assi come incidenti in un punto, che costituisce il centro di rotazione ideale dell’articolazione, posizionato a metà strada sulla congiungente del malleolo mediale e laterale. Esistono una gran varietà di dispositivi per la riabilitazione

Figura 1.1: Gdl caviglia

della caviglia. Citeremo solo alcuni dei più significativi, soffermandoci non tanto sulle peculiarità del singolo meccanismo, quanto sulle caratteristiche comuni a molti di questi robot.

(28)

1.2. Stato dell’arte dei Robot per la riabilitazione della caviglia 5

In generale si distingue tra dispositivi indossabili o esterni, solitamente a cine-matica parallela.

Alcuni dispositivi indossabili sono l’esoscheletro per la caviglia(Fig. 1.2a)[7] e il meccanismo di Bastov.(Fig. 1.2b)[8] Il primo realizza tre gdl attraverso

(a) esoscheletro (b) meccanismo di Bastov

Figura 1.2: Esempi di dispositivi indossabili

altrettanti attuatori lineari, il secondo realizza solo due gdl. Tali meccanismi devono fronteggiare diversi problemi di ergonomicità: riguardo il montaggio, richiedendo di essere vincolati a tessuti molli che conservano una certa libertà di movimento rispetto alle ossa del piede e della gamba; di movimentazione, poichè i gdl che tali strutture attuate realizzano, spesso non rispecchiano la cinematica dell’articolazione, spostando i centri di rotazione e/o variandone gli assi. Generalmente tali dispositivi permettono un buon controllo di dorsiflessio-ne e plantaflessiodorsiflessio-ne(Fig. 1.1), ma spesso non consentono la rotaziodorsiflessio-ne interna ed esterna. Inoltre il peso del dispositivo grava interamente sul paziente, il quale, soprattutto nelle prime fasi della terapia, potrebbe non essere in grado di sostenerlo e svolgere contemporaneamente l’esercizio. Per questo motivo la maggior parte di questi robot vengono impiegati per fasi avanzate della terapia. Il vantaggio di questi meccanismi risiede soprattutto nella semplicità realizzativa, nella trasportabilità, nello scarso ingombro, nella libertà di movimento lasciata al resto dell’arto inferiore che comporta la possibilità di assistere il movimento della camminata, azione molto più complessa da realizzare con dispositivi esterni.

(29)

1.2. Stato dell’arte dei Robot per la riabilitazione della caviglia 6

Tra i principali esempi di robot esterni, invece, troviamo il dispositivo a

cinematica parallela rotativo(Fig. 1.3a)[9] e la Rutgers Ankle(Fig. 1.3b).[10] Il

(a) disp. a cinematica parallela rotativo

(b) Rutgers-Ankle

Figura 1.3: Esempi di dispositivi esterni

primo realizza i due gradi di libertà rotativi in figura, attraverso l’impiego di tre attuatori lineari, il secondo sfrutta la piattaforma di Gough-Stewart[11] per realizzare sei gdl, tre rotazionali e tre traslazionali.

Questi presentano meno problemi di ergonomicità sul vincolamento del piede, impiegando generalmente piattaforme piane sulle quali viene appoggiata la pianta del piede, ma la prima ha le stesse criticità dei dispositivi indossabili per quanto riguarda il movimento. D’altro canto tali strutture sono generalmente più stabili, robuste, con prestazioni dinamiche superiori e maggiore ripetibilità, al prezzo di una cinematica più complessa, ingombri maggiori, minore traspor-tabilità e spesso costi superiori. Fatta eccezione per la piattaforma di Rutgers, la scarsa aderenza di questi dispositivi alla fisiologica cinematica della caviglia, fa si che il loro utilizzo in campo neuroriabilitativo sia di scarsa efficacia: è possibile realizzare esercizi durante i quali il movimento prodotto è all’apparenza uguale a quello naturale dell’articolazione, ma la non coincidenza tra centri e assi di rotazione con quelli della caviglia, fa sì che il paziente attivi gruppi muscolari diversi da quelli previsti. Questo problema può innescare meccani-smi compensatori, oltre a disconfort, provocando il movimento del ginocchio e rendendo molto meno efficace la terapia.

(30)

1.2. Stato dell’arte dei Robot per la riabilitazione della caviglia 7

Altri dispositivi

Meritano una menzione a parte alcuni dispositivi non dedicati alla cavi-glia, che rappresentano il benchmark riguardo la sperimentazione di controlli avanzati in campo riabilitativo. Alla descrizione di tali logiche è dedicata la prossima sezione, mentre qui citiamo brevemente alcuni dei robot sui quali sono implementate.

In primo luogo MIT-MANUS[2], un robot studiato per la terapia dell’arto superiore, dal quale sono state ricavate svariate versioni già in fase operativa in campo clinico, come INMOTION-ARM e INMOTION-HAND. Tale famiglia di robot viene adoperata con successo in molte tipologie di terapia all’avanguar-dia, che coinvolgono dai controlli più classici ai più avanzati controlli di forza, adattivi e che impiegano la realtà aumentata.

Altri due dispositivi sono LOKOMAT[12] eALEX[13, 14]. Questi complessi robot sono impiegati per la terapia associata al cammino.

Tale movimento è tra i più complessi che compiamo ogni giorno, le strategie di controllo associate sono all’avanguardia per quanto riguarda la gestione delle traiettorie e i controlli adattivi.

(31)

1.3. Stato dell’arte delle strategie di controllo

in ambito riabilitativo 8

(a) LOKOMAT (b) ALEX

Figura 1.5: Robot per la terapia del cammino

1.3

Stato dell’arte delle strategie di controllo

in ambito riabilitativo

Presenteremo in questa sezione una breve panoramica delle strategie di controllo adottate in campo riabilitativo, facendo riferimento alla classificazione fatta in [1]. Si rimanda al medesimo articolo per una trattazione più completa e approfondita.

Gli algoritmi di controllo di robot riabilitativi possono essere catalogati a seconda del principio base che li caratterizza. Si distinguono:

1. Controlli senza contatto 2. Realtà simulata

3. Controlli challenge-based 4. Controlli assistivi

In tali categorie è possibile raggruppare la maggior parte degli algoritmi di alto livello che governano il comportamento di un robot riabilitativo; i controlli a basso livello che realizzano tali logiche sono tutt’altra questione e verranno

(32)

1.3. Stato dell’arte delle strategie di controllo

in ambito riabilitativo 9

discussi solo per le logiche sviluppate in questa tesi.

Per controlli senza contatto si intendono tutti quegli algoritmi che non prevedono un’interazione fisica tra robot e paziente, bensì una cooperazione a livello psicologico. Il robot ha il compito di stimolare e incoraggiare il soggetto nel completare i propri obbiettivi, e lo fa attraverso stimoli visivi, suoni, dati di feedback e movimenti. L’efficacia di tali tecniche è ancora in fase di studio, senza dubbio gli aspetti motivazionali e psicologici della terapia hanno un’e-norme rilevanza e i feedback raccolti in fase di sperimentazione sono stati positivi.

Con realtà simulata si vogliono definire, invece, tutte quelle terapie che cercano di riprodurre situazioni di vita quotidiana, cercando di immergere l’individuo in un ambiente sensorialmente molto simile a quello che sperimenta giornalmente, ad esempio esercitando il cammino in un ambiente virtuale che imita una strada, o interagendo con dispositivi aptici che restituiscono la sen-sazione del contatto con oggetti o ancora fornendo all’esercizio un obbiettivo visivo ad esempio nella forma di un gioco. Tali ambienti risultano più stimolanti rispetto a quelli in cui normalmente un paziente si trova a dover fare terapia; uno studio pilota[15] ha dimostrato che queste tecniche migliorano il risulta-to durante l’esercizio, velocizzano il processo di recupero, portano a risultati migliori anche durante esercizi in ambienti standard, facilitano il processo di accettazione della terapia e contribuiscono in modo positivo alla soddisfazione e benessere del paziente. Sulla piattaforma MIT-MANUS sono stati sviluppati diversi di questi algoritmi con ottimi risultati.

i controlli challenge-based sono algoritmi che tendono a rendere un task naturale più impegnativo, così da sfidare ed esercitare le capacità del pazien-te. Si applicano a questo campo i controlli di forza definiti in impedenza e ammettenza, ovvero che regolano qualità e quantità di interazione tra uomo e macchina. Un esempio semplice di esercizio challenge-based che sfrutti tale principio è un qualsiasi movimento al quale aggiungiamo una resistenza, fissa o magari basata su modelli più complessi come quello visco-elastico. Per pazienti

(33)

1.3. Stato dell’arte delle strategie di controllo

in ambito riabilitativo 10

emiplegici4, è possibile ideare terapie nelle quali, durante un task bilaterale, l’arto sano viene ostacolato, così da incentivare l’utilizzo dell’arto con deficit motorio; tali terapie si dicono Constraint Induced.

Altri algoritmi che rientrano in questa categoria prevedono di sfruttare la gravi-tà come fonte di impedimento al movimento; è possibile compensare in parte i carichi dovuti al peso dell’arto in movimento, variare tale percentuale di compensazione prima o durante l’esercizio, fino ad annullarla completamente. Il meccanismo di base è analogo a quello dell resistenza generica aggiunta al movimento, come analoghi sono i risultati ottenuti dalla terapia, molto variegati e sparsi, tanto che non è stata ancora dimostrata una sostanziale differenza di efficacia rispetto alle logiche assistive.

Le tecniche tipo Constraint Induced hanno dimostrato la loro validità nel trat-tamento di pazienti post-ictus, come detto in [16], aumentando la velocità di esecuzione dell’esercizio, generando miglioramenti mantenuti poi su task funzionali.

Sempre in questo gruppo rientrano le strategie di amplificazione degli

erro-ri. Questi algoritmi prevedono di rilevare l’errore di posizione commesso dal

paziente e generare dei comandi al robot tali da cercare di amplificare tale errore; è stato osservato che tale strategia genera una temporanea diminuzione dell’errore nel momento in cui il meccanismo di amplificazione viene spento. L’utilizzo di questa tecnica ha prodotto buoni risultati anche nella riabilitazione di soggetti senza deficit neurologici, portando ad un recupero più rapido quando la tecnica di amplificazione degli errori veniva applicata temporaneamente e in abbinamento ad un campo di forze che ostacolasse il movimento. Risultati analoghi possono essere ottenuti con strategie che invece di alterare fisicamente la posizione del soggetto, falsano i feedback propriocettivi inviati all’utente, creando l’illusione di un errore di posizionamento maggiore rispetto a quello reale.

L’ultima e più numerosa categoria di algoritmi è quella dei controlli

assisti-vi. Rientrano in questo gruppo tutte le logiche che forniscono una qualche forma

di aiuto/agevolazione al soggetto, in antitesi rispetto agli algoritmi challenge-based. Esistono moltissimi esempi di logiche assistive, e sempre nuovi sono in

4Pazienti che presentano un deficit motorio da danno neurologico limitato ad un solo lato

(34)

1.3. Stato dell’arte delle strategie di controllo

in ambito riabilitativo 11

continuo sviluppo.

Una possibile realizzazione del concetto di assistenza consiste nel realizzare un controllo che, definito un task obbiettivo, eserciti sul soggetto delle azioni tali da pilotarlo sul task assegnato, con interventi in qualche modo proporzionali al ritardo, all’anticipo o in generale all’errore commesso dal paziente, completando il movimento laddove il soggetto non ne è in grado, assicurando che questo non si allontani più di quanto stabilito dall’obbiettivo fissato e agendo non appena viene rilevato un disallineamento rispetto al target. I vantaggi che questo tipo di controllo offre, possono venir meno se il grado di assistenza viene sovradimensionato; un eccesso di assistenza si è dimostrato controproducente su soggetti neurologici. L’effetto negativo in questione è stato definito come

Slacking Hypothesis, ovvero, letteralmente, "ipotesi di impigrimento": in primo

luogo assistere fisicamente il paziente durante un movimento cambia la dina-mica del movimento stesso, cosicchè l’esercizio compiuto è in realtà diverso da quello desiderato; inoltre un eccessivo supporto può generare un calo dello sforzo compiuto dal paziente per completare l’obbiettivo, il quale si adagia sul controllo che finisce per fare la maggior parte del lavoro e alimentando un progressivo calo di attenzione e intenzionalità. Queste dinamiche innescano l’alterazione della correlazione azione-intenzione: il paziente potrebbe esercitare una costante azione di allontanamento dalla traiettoria, compensata dal robot, con il risultato di un movimento che non corrisponde all’intezione muscolare e nervosa del soggetto. In definitiva una non accurata taratura del controllo, in tali logiche, rischia di tramutare la terapia attiva in un esercizio passivio con un certo grado di cedevolezza aggiunta.

Dato che un eccesso di assistenza risulta controproducente, sono state sviluppate logiche che seguono il principio AAN, ovvero "Assist-As-Needed".

Ad esempio, esistono controlli in impedenza che generano una forza di richiamo verso un target solo quando il paziente esce da una certa tolleranza di posi-zionamento; questo può essere fatto esclusivamente nello spazio[17], lasciando quindi pieno controllo al paziente sul quando muoversi, o in aggiunta anche nel tempo, legando il target ad un istante temporale e generando una assistenza se il soggetto risulta in ritardo o in anticipo oltre una certa soglia[18]. Tale tolleranza può essere definita come una regione che limita lo spazio di lavoro entro il quale definire le traiettorie, oppure un vero e proprio "tunnel" attorno

(35)

1.3. Stato dell’arte delle strategie di controllo

in ambito riabilitativo 12

alla traiettoria designata.

Un’altra tecnica prevede di innescare l’assistenza solo in risposta ad un trigger generato dall’utente. Tale trigger può essere una soglia di spinta, di velocità, di attivazione muscolare misurata tramite EMG, come sperimentato su MIT-MANUS(Fig. 1.4)[18]. Si può richiedere di superare tali soglie solo in partenza o di mantenere la variabile designata costantemente oltre il limite per far procede-re l’esercizio. In questo modo il soggetto è stimolato ad iniziaprocede-re autonomamente il movimento e le variabili designate come osservatori possono essere progettate in modo tale da salvaguardare la correlazione tra movimento e stato neuro-muscolare del paziente, importantissima per la riabilitazione post-ictus.

Anche la compensazione della gravità, già vista nella categoria challenge-based, può essere reinterpretata in ottica assistiva, ad esempio elaborando esercizi fun-zionali depurati dell’onere gravitazionale. Allo stesso modo si possono elaborare logiche in grado di filtrare carichi esterni indesiderati, ad esempio dovuti a spa-smi e co-contrazioni, salvaguardando la parte di input legata all’intenzionalità del movimento.

I parametri che governano tutte queste tipologie di controllo, possono essere definiti staticamente o determinati in modo dinamico. Il secondo caso è quello dei così detti controlli adattivi. Le logiche secondo le quali variare tali parametri vanno dall’analisi in tempo reale della prestazione del paziente, a tecniche di ottimizzazione che mirano a minimizzare l’interazione uomo-robot o un funzio-nale legato al grado di assistenza. Tale cooperazione tra controllo e paziente è stata sperimentata sia su LOKOMAT(Fig. 1.5a)[19], sia su MIT-MANUS[18], con ottimi risultati per quanto riguarda il fenomeno dello Slacking descritto in precedenza: alcune di queste logiche variano i propri parametri in modo tale che l’assistenza venga gradualmente spenta man mano che ci avviciniamo al target. Questo promuove l’attenzione del paziente innalzando considerevolmente l’efficacia della terapia[20]. Come detto in [21], i risultati ottenuti con controlli assistivi suggeriscono che tali tecniche possono portare notevoli vantaggi rispetto alle terapie convenzionali, se correttamente progettati. Nello stesso viene posto l’accento sul fatto che l’alternanza di assistenza e non assistenza, può giocare anch’essa un ruolo importante.

(36)

1.4. Scopi del robot e del progetto 13

1.4

Scopi del robot e del progetto

La piattaforma PkAnkle è progettata per rispettare la cinematica fisiologica della caviglia umana. Tale caratteristica rende il robot adatto all’impiego in campo neuroriabilitativo, dove l’ergonomia ricopre un ruolo importante. I risultati conseguiti dagli algoritmi di controllo assistivi descritti in 1.3 sui robot citati, hanno fornito lo stimolo per lo sviluppo di questo lavoro di tesi. In particolare, gli algoritmi di controllo in forza, basati sul principio della "Tunnel-Force-Assistance" e dell’"Assist-Ass-Needed", hanno dato prova della loro efficacia in campo neuroriabilitativo, fissando un riferimento per i controlli attivi che guardano a quest’ambito. I dispositivi in grado di realizzare terapie attive specifiche per la caviglia sono in numero nettamente inferiore rispetto a quelli dedicati all’arto superiore o all’intero arto inferiore. In particolare le caratteristiche del prototipo PkAnkle lo rendono unico nel suo genere. Per creare un robot che fosse dedicato al trattamento della caviglia e ne rispettasse il movimento fisiologico, è stato realizzato un cinematismo che genera un giunto puramente sferico, ovvero dotato unicamente di gradi di libertà rotativi. Sono numerosi gli esempi applicativi delle logiche di controllo citate su robot seriali e paralleli, dedicati al trattamento dell’arto superiore e inferiore, per i quali l’end-effector è dotato di gradi di libertà traslazionali. Diversamente, non sono ancora stati sviluppati algoritmi di controllo in forza basati sulla "Tunnel-Force-assistance" dedicati a robot puramente rotativi.

La progettazione degli algoritmi in grado di tradurre tali principi nel mondo delle rotazioni pure, costituisce la principale sfida di innovazione di questo lavoro di tesi.

Per rendere possibile l’implementazione di questo tipo di logiche sul robot PkAnkle, è stato necessario compiere i seguenti passi:

• In primo luogo sono state studiate in modo approfondito le caratteristiche del robot, con particolare attenzione alla sua peculiare cinematica. • Sono state progettate le logiche di controllo innovative, partendo

(37)

1.5. Obbiettivi del lavoro 14

teorico.

• Sono state testate le logiche progettate, realizzando un simulatore inte-rattivo, che permettesse di validare gli algoritmi, raffinare le procedure e dare un primo feedback sul tipo di interazione che tali algoritmi creano tra uomo e macchina.

• E’ stata progettata dalle basi l’architettura del software di controllo del robot, realizzando in primo luogo, tutti gli strumenti e i metodi fondamentali per consentire il corretto ed efficiente funzionamento della macchina con funzionalità di base e logiche di controllo convenzionali. • Su tale base software sono state implementate le logiche progettate e

precedentemente validate tramite simulazione.

• Le prestazioni degli algoritmi di controllo realizzati e dell’intero software di controllo, sono state indagate attraverso una campagna sperimentale sulla macchina.

1.5

Obbiettivi del lavoro

Questo lavoro di tesi si pome come obbiettivi di:

• Sviluppare controlli e strumenti che permettano la progettazione di terapie passive.

• Sviluppare gli strumenti necessari alla realizzazione di terapie attive convenzionali.

• Sviluppare strategie di controllo in forza innovative, sulla base dei requisiti esposti nel paragrafo 1.3 sezione controlli assistivi.

• Progettare l’architettura dell’intero software di controllo del robot. • Implementare una base software solida e affidabile, in grado di supportare

i controlli realizzati, dotata di tutti i metodi e gli strumenti necessari. • Implementare sul robot le logiche innovative realizzate.

(38)

1.6. Struttura della tesi 15

• Rendere l’utilizzo della macchina sicuro, con particolare attenzione all’in-terazione robot-uomo-ambiente.

1.6

Struttura della tesi

Descriveremo ora come i contenuti del lavoro sono ripartiti nei capitoli. 1. Introduzione: in questo capitolo viene introdotto l’ambito della

neuro-riabilitazione, facendo cenno alle fisiopatologie associate. Viene inoltre descritto lo stato dell’arte dei robot per la riabiliazione della caviglia e dei controlli impiegati in campo riabilitativo. Vengono inoltre introdotti gli scopi del progetto e descritti gli obbiettivi del lavoro di tesi.

2. PkAnkle: in questo capitolo viene introdotto il prototipo PkAnkle; vengono descritte le caratteristiche generali, i principali componenti, i protocolli di comunicazione e in generale lo stato del robot ad inizio lavoro. 3. Algoritmi di controllo: in questo capitolo viene sviluppata la parte

di progettazione teorica degli algoritmi di controllo. In primo luogo viene ricostruita la cinematica e alcuni strumenti associati al controllo di posizione. In seguito vengono descritti i controlli in ammettenza. Le logiche a carattere innovativo vengono descritte nel dettaglio, ponendo l’attenzione sulle idee e sui singoli passaggi che hanno portato ad una soluzione del problema che rispettasse i requisiti formulati.

4. Simulazione: in questo capitolo viene descritta la validazione degli al-goritmi di controllo, specialmente quelli in ammettenza, attraverso la progettazione, realizzazione e l’utilizzo di un simulatore real-time interat-tivo. Viene descritta la struttura del simulatore creato e discussi i risultati di alcune campagne di simulazione.

5. Architettura del software di controllo: in questo capitolo vengono descritte le scelte progettuali effettuate per la progettazione dell’architet-tura software. Viene fornito un quadro dell’architetdell’architet-tura di base e dell’in-frastruttura di comunicazione creata, grazie alle quali è stato possibile implementare tutti gli algoritmi e gli strumenti realizzati.

(39)

1.6. Struttura della tesi 16

6. Algoritmi speciali e analisi sensori: in questo capitolo vengono de-scritte alcune prove sperimentali eseguite per la caratterizzazione dei sensori. In seguito vengono descritti alcuni algoritmi sviluppati che uti-lizzano le informazioni ricavate sperimentalmente. Tali algoritmi sono fondamentali per il controllo della macchina ma non direttamente connessi al ciclo di controllo real-time principale.

7. Analisi sperimentale: in questo capitolo sono descritte le prove speri-mentali eseguite sul robot con l’obbiettivo di caratterizzare le prestazioni dei controlli in ammettenza. Vengono descritti i setup sperimentali e forniti i risultati ottenuti durante i test delle due logiche in ammettenza sviluppate.

8. Conclusioni e sviluppi futuri: in questo capitolo sono riassunti i risultati ottenuti durante il lavoro di tesi. Vengono inoltre indicati i prossimi step di sviluppo del lavoro e le possibili evoluzioni del progetto.

(40)
(41)

Capitolo 2

PkAnkle

2.1

Caratteristiche generali

(a) modello CAD di PkAnkle (b) PkAnkle

Figura 2.1: PkAnkle: modello e prototipo

PkAnkle (PKA) è un prototipo progettato e realizzato nei laboratori di CNR-ITIA, concepito per essere dedicato al trattamento del caviglia. Si tratta di un robot a cinematica parallela, da qui il nome "Parallel-Kinematic-Ankle", che realizza un giunto sferico ideale all’end-effector.

Come detto nel paragrafo 1.2, la principale problematica dei robot dedicati alla caviglia, risiede nella difficoltà di realizzare cinematiche che rispecchino il reale funzionamento dell’articolazione. Per capire i principali vantaggi del robot PKA, occorre scendere un po’ più nel dettaglio riguardo la modellazione della caviglia. Con riferimento alla Fig. 2.2, ul è definito asse di inversione ed

(42)

2.1. Caratteristiche generali 19

Figura 2.2: Modello della caviglia

eversione subtalare; uu invece è detto asse di dorsiflessione e plantaflessione tibiotarsiale. Un terzo asse uz idealmente allineato con la tibia, realizza la

rotazione tibiale interna ed esterna. Come spiegato in [22], è possibile introdurre un’ipotesi semplificativa che consiste nel modellare questi tre assi come incidenti in un punto, denominato come Of in Fig. 2.2. La principale caratteristica

del robot, descritta nel dettaglio nella sezione 3.2.1, è quella di realizzare un giunto puramente sferico il cui centro di rotazione è posizionato estremamente vicino a Of, tanto da poterli considerare coincidenti senza commettere errori

sostanziali. Come accennato nella sezione 1.2, questo accorgimento permette di movimentare la caviglia in modo sicuro ed ergonomico, generando la medesima attivazione muscolare che si osserva nel movimento libero.[22]

Per realizzare un giunto con queste caratteristiche occorre posizionare il centro di rotazione del end-effector tra malleolo mediale e laterale, mentre i meccanismi visti in 1.2, ad eccezione della piattaforma di Rutgers, posizionano il centro di rotazione sotto la pianta del piede. La soluzione è stata trovata prendendo ispirazione dalla cinematica dell’Agile-Eye[23] di Clèment M.Gosselin. Questo robot è stato progettato per realizzare un sistema di orientamento di precisione per dispositivi ottici, seguendo il principio che tutti gli assi di rotazione dei giunti debbano intersecarsi in un punto, il quale rimane fisso nello spazio per qualsiasi orientamento del robot, nei limiti del suo RoM.

In generale PKA si presenta come un robot solido e stabile, la struttura è disegnata per poter scaricare la maggior parte del carico senza richiedere

(43)

2.1. Caratteristiche generali 20

Figura 2.3: Agile-Eye di Clement M.Gosselin

Figura 2.4: Possibilità di regolazione piattaforma

eccessivo sforzo ai motori. Il medesimo risultato cinematico all’end-effector, può essere ottenuto con montaggi diversi del robot: è possibile ottenere che l’ingombro dei link sia concentrato sotto, sopra o lateralmente rispetto all’end-effector, per un totale di 8 montaggi differenti .

(44)

2.1. Caratteristiche generali 21

Figura 2.5: Montaggi del robot Agile-Eye a giunti coassiali

Le scelte progettuali fatte su PKA hanno permesso di sviluppare il robot interamente sotto il piede, limitando il più possibile di inserire ingombri nello spazio di lavoro della caviglia. Inoltre le geometria complessiva risulta scalabile a piacere senza che questo alteri la cinematica realizzata; è stato così possibile minimizzare le dimensioni del robot limitandone lo sviluppo in altezza, permet-tendone un impiego agevole ed ergonomico da impiedi, seduto e supino.(Fig. 2.4) La piattaforma che accoglie il piede è stata dimensionata seguendo le medie nazionali, e inserendo la regolazione dell’angolo che la pianta forma con l’oriz-zontale. Questo accorgimento, unito alla regolazione della seduta, permette una completa personalizzazione della posizione di partenza, sulla base delle esigenze del soggetto e della terapia.

(45)

2.2. Componenti principali 22

2.2

Componenti principali

Il robot si compone di:

Figura 2.6: Piattaforma di base Piattaforma di base: una base fissa che

pog-gia a terra tramite tre piedini regolabili in al-tezza, che fornisce un ancoraggio solido per tutti i componenti a terra, ovvero gruppi mo-tore, stadi esterni di riduzione, elettronica di collegamento tra i motori. La piattaforma è protetta nella parte inferiore da una rete me-tallica che impedisce di accedere dal fondo allo spazio di lavoro del robot e agli organi in mo-vimento.

Figura 2.7: Catena cinematica Catene cinematiche: tre

ca-tene identiche, ciascuna composta da tre giunti rotativi a 1 gdl e due link. Il primo giunto collega il pri-mo link al gruppo pri-motore, pri-montato sulla base fissa, ed è l’unico attua-to della catena; il secondo giunattua-to collega i due link, mentre il terzo collega il secondo link alla piattafor-ma mobile. L’intero cinepiattafor-matismo è disegnato in modo che gli assi di rotazione di tutti i giunti del robot

passino per il centro del giunto sferico realizzato all’end-effector. Ogni link è ricavato attraverso fresatura a controllo numerico da un pieno di alluminio.

(46)

2.2. Componenti principali 23

Figura 2.8: Piattaforma mobile

Piattaforma mobile: parte del

robot alla quale sono collegati i tre giunti finali di ciascuna catena ci-nematica; è la parte che realizza effettivamente il risultato cinemati-co. A differenza di quanto può sembrare a prima vista, tale piat-taforma non forma un unico corpo rigido con il supporto per il pie-de.

Figura 2.9: Supporto piede

Supporto piede: la parte

evi-denziata in verde costituisce il cor-po rigido al quale vincoliamo il pie-de. Tale supporto e la piattaforma mobile, in grigio nella Fig. 2.9, so-no connessi unicamente attraverso una cella di carico, evidenziata in gial-lo.

Figura 2.10: Cella di cari-co ATI FT MI-NI45

Cella di carico: in giallo in Fig. 2.9, si tratta

di una cella a sei assi della ATI, modello FT

MI-NI45, in grado di rilevare tre componenti di coppia

e tre di forza sui rispettivi assi del proprio frame di base. Il principio sul quale si basa è quello del monolite attrezzato con rosette estensimetriche. Data la particolare collocazione di questo sensore, esso ci fornisce informazioni su tutti i carichi a monte della piattaforma mobile: peso e inerzia dovute al supporto piede e corpi a contatto con esso, forze e coppie esterne applicate attraverso il

supporto piede. Azioni motrici, pesi, inerzie, carichi esterni applicati ai link ed effetti dovuti all’attrito ai giunti non influenzano tale lettura poichè agiscono a valle del sensore.

(47)

2.2. Componenti principali 24

Figura 2.11: Motore vista poste-riore

Figura 2.12: Motore vista anterio-re

Motori: Ciascuno dei tre motori,

evi-denziato in bronzo in Fig.2.11,2.12, è un bru-shless della Harminc-Drive, modello FHA-14C-100-D200-EM1. Questa lunga sigla rac-chiude molte delle caratteristiche tecniche del servo motore: FHA-C identifica la serie dei mini servo motori; 14 identifica la ta-glia dell’albero motore; 1/100 rappresenta il rapporto di riduzione del riduttore tipo Harmonic-Drive incorporato all’azionamen-to; D200 fornisce le specifiche dell’encoder, nel nostro caso un incrementale a 3 canali con codifica x4 con 2000 tacche per i due canali principali, che grazie all codifica rea-lizza 8000 pulse per giro. Dato che l’encoder si trova a valle del riduttore, il sensore rileva 800000 pulse per ogni giro completo dell’al-bero, ovvero una risoluzione sulla rotazione di 0.0028o. Tali pulse raddoppiano passan-do al link grazie ad un ulteriore stadio di riduzione. infine la E indentifica il tipo di

alimentazione, nel nostro caso un alimentatore fornisce al servomotore 24V DC. Ciascun motore è accoppiato ad un driver che funge da controllore, nel nostro caso sono impiegati tre Elmo-Gold-Solo-Whistle. Nei controllori sono implementate le logiche Elmo DSP che seguono il protocollo CANopen DSP402.

(48)

2.2. Componenti principali 25

Figura 2.13: Riduttore

secondario a

cinghia Riduttore secondario: Come si vede

chia-ramente dal modello, il primo link di ciascuna catena cinematica non è direttamente connes-so all’albero di uscita dell’harmonic-drive. Su questo è infatti montata una piccola puleggia, che connessa tramite cinghia ad una con nu-mero di denti doppio, realizza un ulteriore sta-dio di riduzione con rapporto 1/2. Il rap-porto di riduzione complessivo risulta quindi 1/200.

Figura 2.14: Potenziometro SoftPot

Figura 2.15: Wiper

Figura 2.16: Case del poten-ziometro Potenziometro: A valle del riduttore

secon-dario è collocato un sensore di posizione assoluto. Il sensore è posizionato sulla faccia del suppor-to mosuppor-tore rivolta verso la puleggia. Si tratta di un potenziometro tipo SoftPot composto di due parti fondamentali: una corona circolare, molto sottile e adesiva, collocata sul supporto motore, composta a sua volta da quattro strati, e un

Wi-per (Fig. 2.15). La parte del sensore in Fig.2.14 a

contatto con il supporto motore, è costituita da un adesivo; lo strato sovrastante è composto di mate-riale conduttore e costituisce il circuito resistore, sopra questo è posizionato uno strato isolante e cedevole disegnato per creare uno spessore ma senza coprire il circuito sottostante; su questo è appoggiato il circuito primario o collettore che costituisce l’interfaccia esterna del sensore. Il wi-per è una testina munita di tastatore precaricato attraverso una molla, nel nostro caso montato sulla faccia posteriore della puleggia, in modo ta-le da cadere sull’anello del circuito colta-lettore. Il contatto e la pressione sono garantiti dalla molla. La pressione esercitata dalla testina deforma lo

(49)

2.2. Componenti principali 26

strato isolante intermedio facendo sì che circuito collettore e resistore entrino in contatto. Dato che il wiper ruota con la puleggia, ad ogni posizione di questa corrisponderà un diverso punto di contatto tra i circuiti, ovvero una porzione diversa di resistore. il circuito complessivo è quindi una resistenza, variabile con la posizione angolare, e misurando la caduta di tensione sul circuito siamo in grado di misurare la posizione assoluta dell’albero. L’anello non copre esattamente 360o per esigenze elettriche, il sensore però è montato in modo tale

che i 7o scoperti siano in una zona non raggiungibile a causa dei limiti sullo

spazio di lavoro del robot. In linea teorica questo sensore sarebbe in grado di fornire posizione e velocità assolute ma il rumore sulla misura è tale da non rendere conveniente questa scelta. Malgrado questo, tale sensore ha un ruolo importante degli algoritmi di sicurezza e di homing, e la sua uscita in tensione costituisce un ingresso analogico per il driver del motore.

Figura 2.17: Sensore di prossimità capacitivo

Sensore di prossimità: Sulla faccia

opposta del supporto motore, rispetto alla posizione del potenziometro, è posizionato un sensore di prossimità capacitivo. Esso è costituito da due bottoni cilindrici, uno innestato nella base fissa, l’altro montato su una estremità appositamente progettata del primo link. La parte solidale al link ruota con esso, spazzando una circonferenza lungo la quale incontra la seconda metà del sen-sore. Esiste un piccolo range di posizioni

angolari del link durante le quali le due metà del sensore sono almeno par-zialmente sovrapposte; quando questo avviente, il livello di tensione aumenta. La tensione è impiegata come trigger per realizzare un ingresso digitale. La posizione del sensore è studiata in modo tale che la perfetta sovrapposizione corrisponda alla posizione di homing, ovvero il nostro zero motore.

Elettronica di collegamento motori: A ciascun azionamento è connessa

una piccola stazione di collegamento. Essa è dotata di due porte ethercat, una porta usb e due led. La porta usb serve a collegarsi direttamente al singolo driver

(50)

2.2. Componenti principali 27

della Elmo. Attraverso il programma Elmo Application Studio, fornito dalla casa produttrice, è possibile accedere a tutte le informazioni relative al controllore, programmare input/output dell’azionamento, compatibilmente con i cablaggi effettuati, scrivere sezioni di codice aggiuntive per modificare il comportamento del driver, tarare e modificare gli anelli di controllo interni, analizzare dati e muovere il singolo motore con le modalità disponibili. Le porte etherchat servono alla comunicazione, tutti i motori sono collegati in serie formando un anello aperto, all’estremità del quale è connesso il dispositivo che ricopre il ruolo di master. Al protocollo di comunicazione EtherCAT sarà dedicata la sezione 2.3. Infine i due led forniscono informazioni sullo stato degli azionamenti: uno riguarda la comunicazione, rosso per comunicazione non aperta, verde fisso per connessione ethercat stabilita, verde intermittente trasmissione dati in corso; il secondo diventa verde quando ai motori è fornita potenza, rosso altrimenti.

Figura 2.18: Case di protezione Case e protezione in stoffa: A

prote-zione del cablaggio, dei motori e dei riduttori è collocato un guscio in plastica, progettato e stampato 3D presso ITIA. Questo oltre a proteggere gli organi meccanici ed elettro-nici da possibili danneggiamenti, aumenta notevolmente il livello di sicurezza impeden-do l’accesso dall’esterno. Inoltre fornisce l’alloggiamento per la presa di potenza. Tra case e piattaforma mobile è posizionata una copertura in licra. Questa è in grado di

de-formarsi, essendo elastica, e quindi seguire il movimento del robot, ma allo stesso tempo impedisce che materiale estraneo possa entrare nel robot.

Elettronica di sicurezza e controllo: Infine l’elettronica esterna al robot,

raccolta in un quadro protetto. Qui sono collegati tutti i dispositivi di sicurezza quali interruttori, fusibili e due funghi di arresto, un pc embedded sul quale è installato e viene eseguito tutto il controllo, il modulo di conversione A/D EK1100 della Beckhoff e un amplificatore per il segnale in mV proveniente dalla cella di carico.

(51)

2.3. Rete EtherCAT 28

Figura 2.19: Quadro elettrico esterno, componenti elettronica

2.3

Rete EtherCAT

Come già accennato, i tre motori sono collegati in rete con protocollo di comunicazione EtherCAT. Tale protocollo, originariamente sviluppato da Bec-khoff, si colloca sulla scena robotica come una possibile soluzione ai problemi di prestazione dei Fieldbus tradizionali, mettendo a disposizione una rete “real-time” aperta che garantisce a livello I/O le tecnologie e le potenzialità delle reti Ethernet[24]. La topologia delle reti EtherCAT può assumere diverse forme, nel nostro caso, e quindi l’unico che tratteremo, è stata adottata una rete aperta in linea.

Un thread, definito "Master", si occupa di gestire i protocolli di comunicazio-ne, monitorare lo stato della rete e della comunicazione; nel nostro caso il master utilizzato è stato sviluppato internamente ad ITIA. Grazie al basso onere computazionale delle operazioni gestite dal master, non è necessario un processore dedicato; questo può essere implementato sulla stessa CPU sulla quale gira il controllo, senza alterarne sensibilmente le prestazioni. Il master va implementato su un sistema operativo real-time, nel nostro caso XENOMAI linux.

La trasportabilità del master, permette di amministrare la comunicazione da un qualsiasi pc collegato alla rete che abbia installati i programmi necessari. La rete EtherCAT parte fisicamente dal dispositivo che ospita il master e si stende in linea; ciascun dispositivo collegato alla rete, definito "Slave", costituisce un nodo, accoglie un terminale ethernet in input e fa ripartire la linea dopo di se,

Riferimenti

Documenti correlati

blema delle fasi attraversate dalla romanizzazione della regione orientale della Sardegna, collocata di fronte al Lazio ed alla Campania: preliminarmente si deve sottolineare

Nell'àmbito di un testo teatrale, uno dei percorsi di lettura più produttivi (e anche relativamente &#34;oggettivi&#34;) si dimostra sovente l'analisi trasversale

Nessun uomo mortale potete ritenere felice fintanto che la sua vita non sia giunta all'ultimo giorno, ma soltanto dopo ch'egli ne abbia varcato la fine senza dolori

La promozione a municipio della ciuitas indigena avviene con Adriano, indicato come conditor municipii nell'iscrizione dedicatoria dell'arco eretto in suo

Nell’età vandalica sembra dunque profilarsi un ulteriore momento di importante attività costruttiva, durante il quale le fabbriche locali elabo- rano gli elementi della

The sp Š operon contains five genes (sp ŠR, A, B, C, and D) [225] which are apparently highly conserved and are present on a family of serotype associated plasmids (SAP) commonly

with x representing the result obtained by a single laboratory for a given analysis, x a the assigned value for the concentration of the analyte, and σ the target value for the

Lo studente dovrà inoltre acquisire 4 CFU attraverso ulteriori attività nel SSD SECS- P/07 (Economia aziendale), coordinate da un docente, organizzate anche in raccordo con la