• Non ci sono risultati.

Implementation of a virtual reality, bimanual teleoperation framework on dual-arm robots

N/A
N/A
Protected

Academic year: 2021

Condividi "Implementation of a virtual reality, bimanual teleoperation framework on dual-arm robots"

Copied!
43
0
0

Testo completo

(1)

Laurea Magistrale in Ingegneria Robotica e dell’Automazione

Implementation of a virtual reality, bimanual

teleoperation framework on dual-arm robots

Relatori:

Prof. A. Bicchi

Dott. Ing. M. Garabini

Dott. Ing. M. G. Catalano

Dott. Ing. G. Grioli

Controrelatore:

Prof. Carlo Alberto Avizzano

Candidato:

Gianluca Lentini

(2)
(3)

Sommario esecutivo

Sebbene al giorno d’oggi i robot vengano applicati in numerosi task in ambienti in cui sono in grado di compiere azioni in modo autonomo, ripetitivo e veloce, è vero altresì che un loro impiego in ambienti non strutturati e in task estremamente complessi è oggetto di intenso studio. Inoltre esiste tutta una serie di applicazioni (chirurgia, ricerca e soccorso) dalle quali nasce la forte esigenza di avere robot non solo come automi che compiono dei task ma piuttosto come interfacce fisiche remote che permettono all’uomo di operare in questi ambienti (teleoperazione). Contestualmente a tali sviluppi, anche il mondo hardware dei robot sta subendo notevoli cambiamenti. L’introduzione dei soft robot ha portato il vantaggio di poter controllare non solo la posizione ma anche l’impedenza, proprio come fanno gli essere umani. Tali avanzamenti hanno condotto a nuove tecniche quale la tele-impedenza: teleoperazione in cui riferimenti di posizione e impedenza sono inviati al robot.

Scopo di questo lavoro di tesi è lo studio e l’integrazione di queste tecniche con il fine di essere effettivamente utilizzabili in un framework bimanuale in contesti reali, fuori dall’ambiente di laboratorio, dove l’utilizzo di tecnologie wearable, wireless, user-friendly ed economicamente sostenibili rappresentano requisiti indispensabili.

Il framework sviluppato prevede l’utilizzo di un wearable device dotato di 8 s-EMG e una IMU 9-axis (MYO Armband), utilizzato per il Motion Capture e la gestione dell’impedenza. Come test-bench delle attività di testing si è utilizzata una piattaforma bimanuale composta da due manipolatori Kuka LWR (Active Variable Impedance) dotati di una Soft Hand come End-Effector (EE).

Al fine di garantire un adeguato feedback visivo ed immersivo è stato utilizzato un sistema di realtà virtuale: l’Oculus Rift, VR headset dotato di una IMU 9-axis ed un sistema infrarossi. Una base robotica segue l’orientazione del VR headset mentre la stereo camera montata all’estremità fornisce le immagini stereo.

La piattaforma di teleoperazione è stata verificata sperimentalmente effettuando diversi task che mettono in luce i diversi punti di forza del metodo proposto: operazioni bimanuali, controllo della stiffness e valutazione sull’utilizzo dell’Oculus.

Tra le molteplici applicazioni di tale approccio uno in particolare è stato definito come use-case finale del lavoro: task d’ispezione, valutazione e recupero in ambienti disastrati utilizzando il torso del robot “Walkman”. Tale attività si è concretizzata in una collaborazione con la Protezione Civile Italiana, nella quale la piattaforma è stata utilizzata presso il Comune di Amatrice.

(4)

Abstract

Nowadays robots are effective in repetitive tasks, they are able to perform independent and fast actions, their usage in unstructured environments is still limited, that because critical features like adaptivity, robustness and efficiency are still far from being acceptable.

One of the causes of these limitations is the rigid structure of conventional robots. Recent developments in robotics research brought to the soft robots generation. Soft robot can adjust not only the position but also the impedance, just as humans do. Soft robots have raised new challenges in planning of impedance. This problem can be treated via optimal control techniques but they are prone to model errors and feasible just for small scale problems. An alternative approach is teleoperation.

These advances have led to new techniques such as the teleimpedance: teleoperation in which position and impedance references are sent to the robot.

The aim of this thesis is the study and the integration teleoperation techniques with the purpose to be actually usable in a bimanual framework in real contexts.

The framework developed involve a wearable device equipped with 8 s-EMG and 1 IMU 9- axis (MYO Armband), used for motion capture and management impedance. As a test-bench of testing activities, we used a bimanual platform consisting of two manipulators Kuka LWR (Active Variable Impedance), equipped with a Soft Hand as End-Effector (EE).

In order to guarantee a visual and immersive feedback, it has been used a system of Virtual reality: the Oculus Rift, VR headset equipped with a 9-axis IMU and an infrared system. A robotic head follows the orientation of the VR headset, the stereo camera mounted on the robotic head provides the images to the Oculus. The teleoperation platform has been experimentally validated performing several tasks that highlight the different strengths of the proposed method: bimanual operations, stiffness control and assessing of the use of the Oculus.

The teleoperation platform developed in this work has been integrated in the Walkman robot for performing evaluation and object recovery task. The experimental activity, in collaboration with the Protezione Civile took place in the city of Amatrice, where an important earthquake recently happened.

(5)

Indice

CAPITOLO 1 – INTRODUZIONE

1.1 Introduzione ...8 1.2 Teleoperazione ...9 1.3 Applicazioni ...11 1.4 Stato dell’arte ...15

1.5 Scopo della tesi ...18

1.6 Outline ...19

CAPITOLO 2 – Teleoperazione bimanuale

2.1 Introduzione ... 20

2.2 Motion Capture ... 20

2.3 Analisi Emg... 25

2.4 Controllo del Kuka LWR ... 29

2.5 Controllo della Soft Hand ... 30

CAPITOLO 3 – Telepresenza

3.1 Introduzione ... 31

3.2 Motion Capture ... 31

(6)

3.4 Implementazione ... 33

CAPITOLO 4 – Risultati

4.1 Validazione in laboratorio ... 35

4.2 Validazione sul campo ... 38

CONCLUSIONI ... 41

(7)

Indice figure

Fig.1 - Teleoperation mode ... 10

Fig.2 - Robonaut ... 12

Fig.3 - UGV ... 13

Fig.4 - Millennium Plus ROV ... 14

Fig.5 - Sistema chirurgico da Vinci ... 15

Fig.6 - Exoskeleton active (Capio) ... 16

Fig.7 - Optical motion capture……… ... 17

Fig.8 - Orientazione MYO ... 21

Fig.9 - Calibrazione... 22

Fig.10 - Sistemi di riferimento 1 ... 23

Fig.11 - Sistemi di riferimento 2 ... 23

Fig.12 - Sistemi di riferimento 3 ... 24

Fig.13 - Procedura in run-time ... 28

Fig.14 - Soft Hand ... 30

Fig.15 – Testa robotica... 32

Fig.16 – Server-Client ... 34

Fig.17 – Tempi, successi e insuccessi ... 35

Fig.18 – Comportamento soft ... 36

Fig.19 - Variazione di stiffness ... 37

Fig.20 - Segnale EMG prefiltrato ... 37

Fig.21 - Forze lungo i tre assi ... 37

Fig.22 – Vista aerea della villa ... 38

Fig.23 - Recupero oggetti... 39

(8)

CAPITOLO 1

INTRODUZIONE

1.1 Introduzione

Nonostante i grandi passi in avanti fatti nella robotica, esistono ancora grandi differenze tra gli esseri umani e i robot. Le differenze riguardano in particolar modo due aspetti: le capacità motorie e le capacità cognitive.

Gli esseri umani, al contrario dei robot, riescono ad eseguire con facilità una grande varietà di task: grasping, manipolazione, locomozione, etc.. Uno dei fattori chiave delle capacità motorie risiede nel sistema muscolo scheletrico, grazie al quale il corpo umano riesce a variare la propria impedenza in risposta alle condizioni ambientali. Per tale motivo la ricerca si sta muovendo verso una nuova generazione di robot: i Soft Robot [1].

Tra i vantaggi dei Soft Robot c’è la possibilità di interagire con l’ambiente in modo sicuro (sia per il robot sia per ciò che lo circonda, in particolar modo le persone). I Soft Robot sono suddivisibili in due macrocategorie: i continous soft robot dove l’elasticità è uniformemente distribuita nel robot e i flexible joint robot i quali a loro volta si dividono in robot a impedenza variabile attiva (attraverso il controllo) e passiva (attraverso caratteristiche intrinseche). Tuttavia il controllo di

(9)

questa tipologia di robot pone nuove problematiche, come ad esempio la gestione dell’impedenza stessa.

Un altro aspetto riguarda le capacità cognitive, ovvero i robot non sono ancora in grado di eseguire in modo autonomo task di elevata complessità.

La letteratura propone principalmente due approcci per la pianificazione e gestione della stiffness: il primo metodo è il controllo ottimo, applicabile quasi esclusivamente su robot semplici poiché risulta computazionalmente costoso. Inoltre essendo un controllo basato sul modello richiede un’identificazione non semplice. Il secondo metodo è la teleoperazione, approccio seguito in questo lavoro di tesi.

1.2 Teleoperazione

La teleoperazione permette agli esseri umani di controllare robot ed eseguire agilmente task in ambienti distanti, pericolosi o irraggiungibili. L'operatore è l’entità di controllo (l'utente) mentre il telerobot è il sistema oggetto del controllo; operatore e telerobot, nel caso di una teleoperazione non sono fisicamente nello stesso spazio d'azione.

Tradizionalmente la letteratura divide gli studi che trattano teleoperazione in due campi:

(10)

 Direct Teleoperation, l’operatore controlla direttamente gli attuatori del telerobot e riceve feedback real-time. Questo è possibile solo quando i ritardi nel loop di controllo sono minimi (Fig.1a).

 Supervisory Control [Sheridan,1992], notevole parte del controllo è svolta dal telerobot che può eseguire parte dei task più o meno autonomamente, mentre l’operatore monitora e fornisce comandi di alto livello(Fig.1b).

Figura 1: Teleoperation mode

(b) (a) Display Controls HMI Computer Sensors Actuators Teleoperator’s Computer Task Operator Transmission Display Controls HMI Computer Sensors Actuators Teleoperator’s Computer Task Operator Transmission

(11)

Generalmente nei pressi del tele-robot sono presenti diversi sensori che consentono di inviare all'utente sufficienti feedback informativi; l'utente è reso in grado quindi di sentire, percepire e vedere gli effetti della manipolazione: si parla in tal senso di telepresenza. La telepresenza è pienamente raggiunta se l'utente non distingue la presenza diretta nello spazio d'azione del manipolatore da quella virtuale ricostruita a partire dai feedback informativi.

1.3 Applicazioni

La teleoperazione nasce dall’esigenza di operare in ambienti ostili e/o distanti. I task più comuni comprendono:

 Ispezione di ambienti soggetti a catastrofi naturali  Ispezione e disinnesco di ordigni

 Applicazioni spaziali  Applicazioni subacquee  Chirurgia

Nel campo delle applicazioni spaziali, la teleoperazione ricopre un ruolo molto importante poiché le missioni con equipaggio risultano molto costose e mettono a repentaglio la vita degli astronauti, soprattutto in missioni di lunga durata. Recentemente gli studi sono focalizzati nello sviluppo di sistemi di teleoperazione avanzata (Fig.2) per migliorare l’esecuzione di task nello spazio.

(12)

Figura 2: Robonaut

Nell’ambito militare la teleoperazione è sviluppata per ridurre i rischi in missioni pericolose. I primi studi militari hanno contribuito allo sviluppo di sistemi tele-operati in diversi ambiti: terrestre, subacqueo e aereo.

I veicoli terrestri senza equipaggio (UGV) sono largamente utilizzati in operazioni militari attraverso la teleoperazione. Un esempio di UGV teleoperato è mostrato in figura 3.

(13)

Figura 3: UGV

I task militari comprendono sorveglianza, target acquisition e disinnesco ordigni. I sistemi di teleoperazione militari sono spesso equipaggiati con sistemi di stereovisione per percepire il senso della profondità, feedback indispensabile al fine di velocizzare l’esecuzione del task.

Anche nell’ambito subacqueo sono presenti diversi sistemi di teleoperazione, nella maggior parte dei casi sono sistemi subacquei a comando remoto (ROV) aventi braccia robotiche teleoperate per eseguire task a profondità elevate (Fig.4).

(14)

Figura 4: Millennium Plus ROV

Altre applicazioni trovano spazio nel campo medico, in particolar modo nella microchirurgia e telechirurgia. Uno dei più famosi sistemi di telechirurgia è il DaVinci (Fig.5). Nella telechirurgia, il danno del tessuto circostante è ridotto al minimo in quanto le operazioni sono effettuate attraverso piccoli fori sufficienti solo al passaggio di sonde, quindi concentrandosi solo sul tessuto bersaglio. Pertanto, l’utilizzo della telechirurgia riduce sia il rischio che il tempo di recupero rispetto alla chirurgia tradizionale.

(15)

Figura 5: Sistema chirurgico da Vinci

1.4 Stato dell’

arte

Negli ultimi anni l’abilità di registrare il moto del corpo umano è diventato un prezioso strumento nel controllo di sistemi robotici. In particolar modo il Motion Capture è utilizzato per molteplici scopi tra cui la teleoperazione[2] [3]. In molti casi i sistemi di Motion Capture impongono limitazioni fisiche e ambienti strutturati. I sistemi tipicamente soggetti a questi inconvenienti includono: esoscheletri [4] e sistemi ottici [5].

Gli esoscheletri (Fig.6) sono generalmente concepiti come scheletri passivi esterni costituiti da potenziometri sui giunti connessi da strutture rigide.

(16)

Figura 6: Exoskeleton active (Capio)

L’esoscheletro, indossato dall’utente, è utilizzo per ricavare la cinematica del corpo umano leggendo i valori dei potenziometri. Al contrario, i sistemi ottici sono costituiti da camere multiple (tipicamente infrarossi) le quali sono utilizzate per triangolare marker disposti sul corpo umano. Questi sistemi, oltre a richiedere grandi spazi strutturati (Fig.7), sono sensibili al “marker dropout” dovuto all’occlusione di alcuni marker.

(17)

Figura 7: Optical motion capture

Questi inconvenienti molto spesso sono accompagnati da un costo eccessivo. Un ottimo sistema di Motion Capture deve risultare preciso, poco ingombrante, lasciando all’utente libertà di movimento.

I primi sistemi di teleoperazione basati sul Motion Capture misuravano la posizione del braccio umano e la replicavano su un manipolatore rigido. Non fornendo un feedback adeguato, questo approccio risultava poco efficace nel caso di interazione con l’ambiente (elevate forze di contatto).

Per superare questo problema, i sistemi di teleoperazione si sono evoluti (teleoperazione bilaterale) andando ad integrare sistemi di feedback che informano l’utente delle forze interagenti tra il robot e l’ambiente circostante. Oltre al costo elevato, questo tipo di sistema è soggetto a problemi di stabilità a causa del ritardo dei canali di comunicazione tra master e slave.

(18)

Tra i diversi metodi di teleoperazione, la tecnica della tele-impedenza [6] si è rivelata particolarmente efficace, permettendo una teleoperazione unilaterale dove il riferimento di posizione è accompagnato dal riferimento di stiffness e migliorando l’interazione tra robot e ambiente senza recare danni ad entrambi.

1.5 Scopo della tesi

L'obiettivo della tesi è effettuare una teleoperazione bimanuale di due manipolatori dotati di End Effector (EE). L’operatore indossa 2 MYO (wearable device dotato di 8 s-EMG e una IMU 9-axis), il primo al centro dell’avambraccio e il secondo al centro del braccio. I sensori inerziali e bioelettrici permettono rispettivamente di ricostruire il moto e l’attività muscolare dell’avambraccio e del braccio. L’attività muscolare dell’avambraccio è utilizzata per il controllo dell’EE, mentre il Motion Capture e l’attività muscolare del braccio sono utilizzati come riferimento di posizione e stiffness dal controllore del manipolatore.

Il feedback principale è di tipo visivo ed è fornito dal VR Headset (Oculus Rift), grazie al quale viene fornita all’utente una forte dimensione immersiva che gli permette di telemanipolare oggetti e eseguire task con precisione. In entrambi i casi le immagini stereo trasmesse al VR headset sono fornite da una stereo camera (ZED Camera) montata su di una base robotica che insegue l’orientazione della testa dell’utente.

I primi test si sono effettuati su un framework composto da due manipolatori KUKA LWR dotati di una Pisa/IIT Soft Hand [7] come EE. In seguito il test

(19)

finale è stato effettuato con una piattaforma bimanuale: Walkman [8]. Walkman è una piattaforma robotica (antropomorfa) in grado di operare al di fuori degli spazi di laboratorio, quindi in luoghi di lavoro alterati a seguito di catastrofi naturali o causati dall'uomo. Il lavoro si è concluso con un test sul campo all’interno di una villa recentemente danneggiata dal terremoto, situata nel Comune di Amatrice. Tale esperienza è nata grazie ad una collaborazione con la Protezione Civile Italiana.

1.6 Outline

La tesi è organizzata nel seguente modo: nel capitolo 2 vengono mostrati i diversi step per effettuare una teleoperazione bimanuale, in particolar modo il Motion Capture, l’analisi Emg e il controllo del robot; nel capitolo 3 viene affrontato l’argomento della telepresenza e il modo mediante il quale è stata raggiunta; nel capitolo 4 sono riportati i risultati ottenuti sia in laboratorio sia in un test sul campo, mettendo in luce le particolarità delle tecniche utilizzate.

(20)

CAPITOLO 2

Teleoperazione bimanuale

2.1 Introduzione

Prima di effettuare il controllo del robot, la teleoperazione del manipolatore richiede il “Motion Capture” dell’intero braccio e il processing dei segnali elettromiografici.

2.2 Motion Capture

L'Human Motion Tracking è una tecnologia che trova diversi sbocchi applicativi. L'attenzione di diversi studi si è focalizzata sulla Motion Capture Technology come strumento di interazione con robot umanoidi: l'approccio comune è di fare in modo che il robot imiti i movimenti umani così da assumere un comportamento human-like. Il sistema Motion Capture (MoCap) è basato su una unità sensoristica IMU (Inertial Measurement Unit). Una unità IMU è economica e facilmente integrabile in dispositivi non intrusivi, portabili, ed indossabili (MYO Armband); tuttavia l'utilizzo della stessa IMU comporta problemi intrinseci quali:

(21)

 Distorsione del campo magnetico dovuta alle interferenze dell'ambiente esterno.

Il MYO Armband fornisce in uscita un quaternione che descrive una rotazione del sensor frame rispetto ad un determinato sistema inerziale (Fig. 8).

Figura 8: Orientazione MYO

Durante operazioni di Motion Capture è utile calcolare tutte le rotazioni rispetto ad un determinato sistema di riferimento prestabilito . In seguito ad una calibrazione si assume coincidente col sensor frame all'istante iniziale (Fig. 9).

(22)

Figura 9: Calibrazione

La matrice di rotazione che si vuol ottenere è ( ) , rotazione rigida che porta il frame nel frame vista rispetto al sistema :

( ) = ( ) ∙ ( ) →

→ ( ) = ( ) ∙ ( ) (1)

La matrice è utilizzata in run-time per descrivere l’assetto del sensor frame rispetto alla sua orientazione iniziale .

Il quaternione fornito in output dal MYO descrive una rotazione del sensor frame rispetto al sistema NED, frame con asse z parallelo alla vettore di accelerazione gravitazionale e asse x parallelo al vettore campo magnetico.

Per attuare una procedura di calibrazione è necessario salvare il quaternione fornito in output all'istante iniziale, calcolarne il coniugato, e moltiplicarlo per il quaternione fornito in run-time, come mostrato nella (1) nel caso di matrici di rotazioni. Questa operazione consente di ottenere un nuovo quaternione che descrive una rotazione rispetto al sistema di riferimento iniziale.

Per una stima accurata della postura del braccio è possibile utilizzare 2 unità IMU per mezzo di 2 dispositivi MYO Armband; il primo è posto sull'avambraccio ed il secondo sul braccio.

(23)

Conoscendo la lunghezza e l'orientazione sia del braccio che dell'avambraccio è possibile valutare la posizione del polso e del gomito.

Il metodo prevede l’utilizzo di 3 frames (Fig. 10):

1. Il frame è fisso e posizionato in corrispondenza della spalla;

2. Il frame è solidale al braccio e posizionato in corrispondenza del gomito;

3. Il frame è solidale all’avambraccio e posizionato in corrispondenza del polso.

Figura 10: Sistemi di riferimento 1

Si ipotizza che durante la fase di calibrazione i sensor frame di entrambe le unità IMU siano allineati. La situazione che si osserva dopo la calibrazione è la seguente (Fig. 11).

Figura 11: Sistemi di riferimento 2

In run-time i dispositivi ci forniscono le seguenti matrici di rotazione:  ( ), in output dal MYO sul braccio;

(24)

 ( ), in output da MYO sull’avambraccio;

Per conoscere la posizione del frame rispetto al frame è necessario avere a disposizione le matrici ( ) e ( ) (Fig. 12).

Figura 12: Sistemi di riferimento 3

Dal momento che è immediatamente disponibile, non resta che calcolarsi .

= ∙ → = ∙ (2)

Dopo aver calcolato le matrici ( ) e ( ) è possibile procedere con la costruzione delle matrici omogenee per l’estrazione della posa dell’EE rispetto a

.

Definendo con la lunghezza del braccio e con quella dell’avambraccio, è possibile definire le seguenti matrici omogenee:

= − 0 0 0 0 0 1 = 0 0 0 0 0 0 1 (3) = − 0 0 0 0 0 1 = 0 0 0 0 0 0 1 Di conseguenza:

(25)

= (4)

I primi tre elementi della quarta colonna di descrivono la posizione dell’EE rispetto al frame di riferimento , mentre la parte di rotazione di descrive la rotazione rigida che va da a . Stesse considerazioni sono fatte per la posizione e l’orientazione del gomito considerando la

= (5)

2.3 Analisi Emg

I segnali EMG provenienti dagli 8 sensori sEMG del MYO Armband sono stati prefiltrati per ottenere 8 valori d'attivazione muscolare utilizzando il Mean Absolute Value (MAV).

In questa analisi è necessario raggiungere 2 obiettivi, il primo richiede l’estrazione di 2 segnali di controllo (per la chiusura e l’apertura della SoftHand) dagli 8 segnali EMG provenienti dall’avambraccio. Il secondo obiettivo richiede l’estrazione di un unico segnale di controllo (variabile di stiffness) dagli 8 segnali Emg provenienti dal braccio.

Considerando che l’utilizzo del MYO non permette di posizionare perfettamente gli sEmg sulle fasce muscolari di interesse si è utilizzata la non-negative matrix factorization (NMF) [9]. La non-negative matrix factorization è un algoritmo utilizzato per l’interpretazione di determinati movimenti a partire dai segnali elettromiografici.

(26)

I movimenti più riconoscibili al livello dell’avambraccio sono estensione/flessione del polso e chiusura/apertura della mano. L’algoritmo è stato provato con entrambe le coppie dei movimenti, tuttavia i movimenti scelti sono chiusura/apertura della mano per semplicità, naturalezza e sviluppi futuri (implementazione di un’ulteriore IMU sul polso):

Lo studio sperimentale mira all’estrazione di 2 segnali di controllo a valori positivi che sia in stretta relazione ai 2 movimenti prescelti. Nella fase di acquisizione dati sEMG l’utente muove mano e polso cercando di replicare fedelmente i movimenti previsti dal training-set. Nel corso dell’acquisizione dati, l’evoluzione dei movimenti prevista dal training-set è suggerita all’utente attraverso un target visivo.

Per ciascun movimento del polso presente nel training-set (d = 1, 2) il metodo ricerca un vettore riga che sia in grado di mappare il vettore delle attività muscolari ( ) in un valore scalare compreso nell’intervallo [0, 1] che rappresenti il valore di attivazione del movimento ( ), = 1,2

( ) ≈ , , … , ( ) (6)

Le componenti del vettore ( ) (risultanti dal prefiltraggio MAV degli 8 segnali sEMG) sono positive. Gli elementi , oggetto della ricerca, sono supposti non

negativi.

I 2 vettori riga sono ordinati per riga a formare una matrice non-negativa ∈

(27)

( ) ( ) ≈ , , … , , , … , ( ) ( ) ⋮ ( ) (7) ( ) ≈ ( ) (8)

La matrice mappa gli 8 valori di attivazione muscolare in 2 valori d’attivazione dei movimenti. Per ottenere un segnale di controllo a valori sia negativi che positivi è necessaria un’ulteriore trasformazione J ∈ R ×

( ) = [1 −1] ( ) = ( ) (9)

Il training-set si estende per un periodo T = 35s. Si divide in 2 movimenti intervallati da un periodo di riposo di 5s in cui i muscoli restano rilassati. Nel corso del training i movimenti sono suggeriti all’utente per mezzo di un target che si muove su di un asse x; ad ogni semiasse è associato un movimento:

 Asse x+ ->estensione del polso [ ( )]

 Asse x- ->flessione del polso [ ( )]

Nel corso del training i dati sEMG forniti in output dagli 8 sensori sEMG del MYO Armband sono acquisiti e memorizzati su software Matlab ad una frequenza di campionamento di fc = 500Hz. Ad acquisizione terminata si dispone di un data-set che raccoglie N = T · fc campioni.

: , ( ) , ( ) ⋮ , ( ) = ( ), = 1: (10) : = ↓(1) ↓(2) … ↓( ) ∈ × (11)

(28)

Al data-set di derivazione sEMG , corrisponde un data-set che raccoglie i valori di attivazione dei movimenti previsto dal training-set, . Affinché i due data-set siano coerenti, le attivazioni dei movimenti devono essere raccolte con lo stesso passo di campionamento fc.

: = (1) (2) … ( ) ∈ × (12)

Dopo l’acquisizione i segnali Emg sono prefiltrati come descritto precedentemente ottenendo una matrice . Per la ricerca della Muscle Synergy Matrix si imposta il seguente problema di ottimizzazione. Date le matrici

∈ × , × (13)

Si cerca una matrice a componenti non negative ∈ × ,

, 0 ∀ , (14)

Che minimizzi il seguente funzionale:

= − (15)

La procedura in run-time (Fig. 5) legge i dati sEMG forniti in output dal MYO Armband e li elabora per ottenere due segnali di controllo simultanei.

(29)

Il secondo obiettivo è estrarre un segnale da utilizzare come riferimento di stiffness che tenga conto dell’attività muscolare complessiva del braccio. Tale segnale è stato ottenuto andando ad effettuare la media degli 8 segnali prefiltrati provenienti dal braccio e normalizzandoli tenendo conto del massimo valore raggiunto durante una fase di training.

2.4 Controllo del KUKA LWR

La cinematica differenziale inversa del robot è stata calcolata con il “Priority Inverse kinematics” [10], mentre la legge di controllo, denominata “axis-specific controller” [11] è già implementata nel KUKA LWR:

= ( − ) + + ( , , ) (16)

Dove rappresenta la stiffness, il termine di smorzamento, ( , , ) il modello dinamico, e rispettivamente le variabili di giunto desiderate e misurate.

Nel caso in esame, il primo task comprende la posizione e l’orientazione del polso, mentre il secondo task comprende la posizione del gomito. In particolar modo:

 La posizione del gomito è stata opportunamente scalata affinché sia utilizzata come riferimento di posizione per il frame posto sul quarto giunto del robot.

(30)

 La posizione (opportunamente scalata) e l’orientazione del polso sono stati utilizzati come posa di riferimento per il frame posto sul palmo della Soft Hand

2.5 Controllo della Soft Hand

La Soft Hand (Fig. 14) nasce dall’esigenza di costruire una mano robotica altamente funzionale rimanendo semplice e robusta. Tutto questo è ottenuto combinando i concetti di sinergia e sotto-attuazione. La Soft Hand presenta 19 gradi di libertà, un solo attuatore ed è possibile controllarla in posizione. Questo comporta una notevole semplicità nel controllo, lasciando l’intelligenza alla parte meccanica, la quale riesce ad adattare le sue parti all’ambiente permettendo la presa di una grande varietà di oggetti. Alla Soft Hand sono stati applicati due tipi di controllo: nel primo caso l’utente comanda il movimento della Soft Hand con velocità proporzionale al segnale di controllo, mentre nel secondo caso il segnale di controllo comanda direttamente la posizione della SoftHand. Il controllo scelto è il secondo poiché risulta più naturale e di semplice interpretazione.

(31)

CAPITOLO 3

Telepresenza

3.1 Introduzione

Durante la teleoperazione, un ruolo fondamentale è svolto dalle informazioni visive fornite all’utente dalle camere montate sul telerobot. Le informazioni visive sono spesso visualizzate in uno o più monitor in base al numero di telecamere utilizzate. L’inconveniente principale di tale soluzione è la mancata percezione della profondità. Per superare tale inconveniente è stato utilizzato un VR Headset (Oculus Rift) in grado di immergere l’operatore nella scena grazie alle immagini di una stereocamera montata su una base robotica che segue i movimenti dell’operatore che indossa l’Oculus Rift.

3.2 Motion capture

L’utilizzo della IMU interna all’Oculus permette all’utente di inquadrare la scena di interessa in modo naturale (orientando la testa). L’orientazione della testa rispetto ad un predeterminato sistema di rifermento è ottenuta dopo la fase di calibrazione descritta precedentemente.

(32)

3.3 Controllo della testa robotica

Un modello standard [12] (Fig. 15) è caratterizzato da 4 Dof:  Lower pitch (ϑ1)

 Roll (ϑ2)

 Yaw (ϑ3)

 Upper pitch (ϑ4)

Figura 15: Testa robotica

Su tale struttura è stato eseguito un controllo di orientazione pesato, al fine di utilizzare maggiormente l’ultimo giunto poiché sposta meno inerzia, quindi richiede meno effort.

(33)

Definendo = { , } il quaternione associato alla posa desiderata e = { , } il quaternione associato alla posa corrente dell’EE, è possibile definire l’errore di orientazione[10]:

= ( ) − ( ) − ( ) ( ) (17)

Dove S() è l’operatore skew-symmetric. La legge di controllo utilizzata per il calcolo della cinematica inversa differenziale è data da:

= , ( )[ ] (18)

Dove:

, ( ) = ( ) (19)

È la pseudo-inversa pesata del Jacobiano analitico di orientazione e è la matrice di peso definita positiva utilizzata per pesare la velocità ai giunti.

3.4 Implementazione

Il setup è mostrato in figura 16, a sinistra il Server, mentre a destra il Client. Sia il Server che il Client eseguono 2 task.

Client:

 Il primo task si occupa di acquisire le immagini dalla stereo camera, comprimerle e inviarle attraverso protocollo UDP al Server.

 Il secondo task si occupa di ricevere (UDP) dal Server l’orientazione e procedere all’inversione della cinematica

(34)

Server:

 Il primo task si occupa di ricevere le immagini dal Client, decomprimerle e renderizzarle all’Oculus.

 Il secondo task si occupa di acquisire l’orientazione dall’Oculus e inviarle al Client.

Figura 16: Server-Client Orientation

(35)

CAPITOLO 4

Risultati

Durante la fase di sperimentazione si sono svolti diversi test per valutare le prestazioni dei soft robot, tele-impedenza e visione stereoscopica.

4.1 Validazione in laboratorio

Per valutare i vantaggi della stereovisione rispetto all’immagine 2D, 4 soggetti adulti hanno effettuato lo stesso task prima mediante un semplice schermo, in seguito con l’ausilio dell’Oculus. Il task prevedeva la presa di un oggetto. Si sono confrontati i tempi di approccio dell’utente necessari per afferrare l’oggetto seguiti dal successo/insuccesso al primo tentativo (Fig. 17).

Figura 17: Tempi, successi e insuccessi

0 20 40 60 80

Sog. 1 Sog. 2 Sog. 3 Sog. 4 2D image Ocululs Successo Insuccesso Te m po [s ]

(36)

Durante alcuni test effettuati su utenti non esperti si è notata l’importanza dei soft robot. Avendo solo un feedback visivo, l’utente, durante la presa di oggetti dall’alto, tende a generare elevate forze di contatto. Tuttavia il robot, essendo soft, riesce ad adattarsi all’ambiente senza recare danni sia alle sue parti che all' ambiente circostante. É possibile notare che nonostante il contatto sia già avvenuto (Fig. 18a) l’utente continua a scendere e di conseguenza la struttura si adatta (Fig. 18b).

Figura 18: Comportamento soft

Per valutare la variazione del wrench all’EE al variare dell’attività muscolare del braccio si è posto un sensore di coppia/forza alla base della Softhand. Il task consisteva nel far raggiungere all’EE una posizione interna ad un cilindro di spugna che ne impediva il raggiungimento (Fig. 19).

(37)

Figura 19: Variazione di stiffness

Durante l’esecuzione del task sono state registrare forze (Fig. 21), coppie e Emg

(Fig. 20). É possibile notare che in corrispondenza di picchi del segnale elettromiografico corrispondono picchi di forze/coppie.

(38)

4.2 Validazione sul campo

Il test sul campo è stato effettuato nel Comune di Amatrice all’interno di una villa gravemente danneggiata dal recente terremoto (Fig. 22). I task prevedevano l’ispezione, la valutazione strutturale e il recupero di oggetti. All’esterno della casa nella posizione 1 è stata allestita una Pilot Station all’interno della quale sono stati disposti i diversi sistemi necessari alla teleoperazione e al controllo del robot. Il robot è entrato dall’ ingresso in posizione 2. Grazie ad un sistema laser posto sul robot ed algoritmi di identificazione si è potuta misurare l’inclinazione dei muri e la grandezza delle diverse crepe presenti all’interno dell’abitazione.

(39)

Anche in questo setup l’Oculus restituiva una visione stereoscopica all’utente: è stato possibile orientare la testa del robot in modo naturale facilitando l’esecuzione dei diversi task. Contemporaneamente i MYO sono stati utilizzati per effettuare task di diverso genere: apertura porte, recupero oggetti, spostamento di oggetti che impedivano il passaggio (Fig. 23).

Figura 23: Recupero oggetti

Il sistema è stato provato anche da ingegneri che si occupano di valutare danni strutturali. Il loro parere è stato molto positivo, definendo il sistema sicuro e performante, in conclusione un ottimo sistema per questa tipologia di attività. All’interno della Pilot Station gli operatori erano essenzialmente due, il primo si occupava della teleoperazione, il secondo monitorava lo stato del robot e attivava/disattivava i controlli. Tutti i pc della Pilot Station erano collegati in rete, in particolar modo B,C,D fornivano ad A i riferimenti da far inseguire al robot (orientazione/posizione braccia, chiusura/apertura mano, orientazione testa). Nelle vicinanze del robot erano presenti due router, il primo era dedicato esclusivamente

(40)

alla visione e permetteva lo streaming video dal pc di bordo al pc D, mentre il secondo router si occupava della trasmissione dati riguardanti il controllo e lo stato del robot (Fig. 24).

Figura 24: Setup Amatrice

Controllo Visione (D) (A) (B) (C) Pilot Station Outside Visione Controllo Inside Wire Wireless

(41)

Conclusioni

In questo lavoro di tesi si è confermata la fattibilità di integrare un sistema di tele-impedenza bimanuale basata su sensori inerziali e bioelettrici accompagnata da un sistema di feedback basato esclusivamente sulla stereovisione.

I sensori inerziali posti sulle braccia dell’utente ricostruiscono il moto da far replicare alla piattaforma bimanuale, mentre gli EMG sono utilizzati per il controllo della Soft Hand e della stiffness. Allo stesso tempo l’utente è in grado effettuare diversi task grazie alla visione stereoscopica fornita dall’Oculus Rift.

La fattibilità è stata confermata su due tipi di framework, Walkman ed un sistema composto da due KUKA LWR, confermando la sua praticità e facile portabilità su altri tipi di piattaforme, conservando pregi come l’essere wearable e wireless, caratteristiche indispensabili per test come quelli fatti nel Comune di Amatrice, dove il tempo e gli spazi a disposizione erano ridotti al minimo.

(42)

Bibliografia

[1] Albu-Schaffer, A., Eiberger, O., Grebenstein, M., Haddadin, S., Ott, C., Wimbock, T., ... & Hirzinger, G. (2008). Soft robotics. IEEE Robotics & Automation Magazine, 15(3), 20-30.

[2] Pollard, N. S., Hodgins, J. K., Riley, M. J., & Atkeson, C. G. (2002). Adapting human motion for the control of a humanoid robot. In Robotics and Automation, 2002. Proceedings. ICRA'02. IEEE International Conference on (Vol. 2, pp. 1390-1397). IEEE.

[3] Prayudi, I., & Kim, D. (2012, August). Design and implementation of imu-based human arm motion capture system. In 2012 IEEE International Conference on Mechatronics and Automation (pp. 670-675). IEEE.

[4] Jo, I., Park, Y., & Bae, J. (2013, July). A teleoperation system with an exoskeleton interface. In 2013 IEEE/ASME International Conference on Advanced Intelligent Mechatronics (pp. 1649-1654). IEEE.

[5] V. M. Systems. http://www.vicon.com.

[6] Ajoudani, A., Tsagarakis, N. G., & Bicchi, A. (2012). Tele-impedance: Teleoperation with impedance regulation using a body-machine interface. The International Journal of Robotics Research, 0278364912464668.

[7] Catalano, Manuel G., et al. "Adaptive synergies for the design and control of the Pisa/IIT SoftHand." The International Journal of Robotics Research 33.5 (2014): 768-782.

(43)

[8] N.G.Tsagarakis , D.G.Caldwell , A. Bicchi, F. Negrello, M. Garabini, W. Choi, L. Baccelliere, V.G. Loc, J. Noorden, M. Catalano, M. Ferrati, L. Muratore, A. Margan, L. Natale, E. Mingo, H. Dallali, A. Settimi, A. Rocchi, V. Varricchio, L. Pallottino, C. Pavan, A. Ajoudani, Jinoh Lee, P. Kryczka, D. Kanoulas, “WALK-MAN: A High Performance Humanoid Platform for Realistic Environments”, Journal of Field Robotics (JFR) (2017). (IN PRESS)

[9] Choi, C., & Kim, J. (2011). Synergy matrices to estimate fluid wrist movements by surface electromyography. Medical engineering & physics, 33(8), 916-923.

[10] Sciavicco, L., & Siciliano, B. (2012). Modelling and control of robot manipulators. Springer Science & Business Media.

[11] KUKA FRI 10, Manual for KUKA System Software 5.6 lr

[12] Asfour, T., Welke, K., Azad, P., Ude, A., & Dillmann, R. (2008, December). The karlsruhe humanoid head. In Humanoids 2008-8th IEEE-RAS International Conference on Humanoid Robots (pp. 447-453). IEEE.

Riferimenti

Documenti correlati

La consapevolezza di essere riusciti a raggiungere il nostro scopo ci rende soddisfatti, perché per il nostro laboratorio risulta importante sapere di essere in grado

In un piano verticale, un disco omogeneo di massa 3m e raggio R pu` o rotolare senza strisciare su una guida orizzontale ed ha il centro C attratto con forza elastica di costante

Si richiede l’immissione della categoria cliente e del prezzo intero E’ letto il valore del prezzo intero ed è assegnato alla variabile prezzo Se il valore del prezzo è negativo

Scrivere un programma che ricevuti in input la categoria del cliente ed il prezzo intero che dovrebbe pagare, calcoli l’importo dello sconto da effettuare (in base alla tabella

Calcolare il doppio di un valore di un numero di tipo intero letto in input e visualizzare il risultato di tale calcolo. Definizione dei dati

Dato un numero intero in input, calcolare e visualizzarne il doppio Definizione della specifica del programma. Calcolare il doppio di un valore di un numero di tipo intero letto

Calcolare il doppio di un valore di un numero di tipo intero letto in input e visualizzare il risultato di tale calcolo. Definizione dei dati

l professor Maurizio Mo- ri, ordinario di filosofia morale e bioetica all'U- niversità di Torino, non è minimamente scandaliz- zato dalla notizia di una bimba nata da un