powerdbyYarp iCub

15 Luglio 2016 – Open YARP Workshop

Versione Italiana
Go to the English version

YARP (Yet Another Robot Platform) è  il software  che costituisce il sistema nervoso dei robot umanoidi di IIT, da iCub, la piattaforma robotica diffusa in molti centri di ricerca del mondo, fino all’ultimo nato  R1.  Con 10 anni di sviluppo alle spalle YARP si propone come piattaforma Open Source di altissima versatilità e qualità rispetto ad altri standard: leggero, multi piattaforma e multiprotocollo, funziona a bordo dei robot, su server o perfino su smartphone Android.yarp trasp

Il 15 Luglio 2016 IIT e TalenTour hanno offerto un workshop introduttivo, destinato a specialisti del software, manager ed imprenditori interessati a condividere lo sviluppo della piattaforma, che nasce nella robotica ma che è pronta ad un uso più ampio, proprio nel momento della massima crescita dell’hype sull’Internet Of Things. Tutto questo pochi giorni prima del lancio ufficiale del nuovo robot  R1, il primo umanoide proposto come prodotto commerciale per applicazioni domestiche.

TalenTour YARP Workshop team
TalenTour YARP Workshop team

Open Innovation Workshop

L’IIT è una eccellenza mondiale nel campo della robotica, e coniuga obiettivi  di ricerca e di trasferimento tecnologico. Punta a tecnologie che possano avere impatto concreto sulla sostenibilità della società e che siano commercializzabili portando alla creazione di nuovi posti di lavoro in aziende spin-off dell’istituto e nell’indotto. Il settore della robotica umanoide sta giungendo a questo punto, con un prodotto industriale,  anche sotto l’aspetto del software. Tutto il progetto della piattaforma iCub infatti è Open Source con licenza LGPL per essere più agevolmente adottabile da aziende private che intendano introdurre moduli proprietari, ed il sistema di sviluppo e test automatico si basa su infrastrutture più vicine al software industriale che accademico.

Per questo motivo il team della iCub facility ha deciso di stimolare collaborazioni con le realtà del territorio  per estendere la base di utenti del middleware per accelerarne l’evoluzione sia come struttura sia come  contenuti.

Ed il territorio ha risposto: i partecipanti appartenenti a multinazionali, PMI, startup ed associazioni hanno instaurato subito un dialogo costruttivo con gli organizzatori: chi con domande ed in fase di networking chi intervenendo direttamente in scaletta come Polaris (gruppo RINA),  Aizoon Smartland che hanno avuto un loro spazio per presentarsi e cominciare a delineare le possibilità di collaborazione.

This slideshow requires JavaScript.

Menzioniamo infine  l’associazione Robofriends,  dedicata alla divulgazione e la didattica sul tema robotico, e le possibilità che possono scaturire in questo campo con una collaborazione con IIT sono infinite!

iCub e YARP

Lorenzo Natale IIT presenting iCUB and YARP
Lorenzo Natale IIT presenting iCUB and YARP

Principale relatore ed organizzatore del workshop lato IIT è stato Lorenzo Natale,  responsabile del team di sviluppo del SW dei robot umanoidi, cha ha tenuto la sessione introduttiva su IIT e su iCub, sottolineando  le sfide legate all’iterazione con gli esseri umani e con ambienti e strumenti destinati agli umani. Questi requisiti hanno portato a grandi sviluppi nel campo del riconoscimento, la manipolazione e la sensorizzazione. Per esempio in iCub coesistono quasi 4500 sensori, inclusi quelli che costituiscono una “pelle” unica al mondo e sensibile sul torso e sugli arti, che rende possibile l’interazione tattile dimostrata dal video seguente.

Questa grande complessità è gestita con una architettura distribuita dove parte dell’elaborazione avviene a bordo del robot stesso,  quella più vicina alla meccanica, all’elettronica ed alla sensoristica, mentre la parte applicativa, che presiede al riconoscimento, al coordinamento ed all’apprendimento è eseguita su sistemi esterni. Le applicazioni, proprio grazie al sistema modulare implementato in YARP, possono interagire con la piattaforma robotica e con i dati che ne derivano grazie all’approccio component driven, che astrae la complessità dell’HW ed agevola il riuso e la condivisione del codice, accelerando e migliorando la qualità del prodotto.

pres2

La sessione è stata estremamente interattiva, con moltissime domande da parte dei partecipanti e molti spunti lanciati da Lorenzo sulle aree in cui ad IIT interessa di più la collaborazione dei professionisti del SW, sia sotto il profilo del processo che dei contenuti. Si va dall’evoluzione delle tecnologie di test all”estensione dell’integrazione tra i moduli,  per esempio con l’introduzione di DDS (Data Distribution Service) fino a contenuti specifici come il controllo dei dati, la sicurezza o la compressione degli stream video.

Sviluppare su iCub senza iCub

Silvio Traversato
Silvio Traversato and iCub simulator

YARP include la possibilità di simulare le funzionalità dei robot umanoidi, accelerando la ricerca e lo sviluppo. Sivio Traversaro ha tenuto la sessione dedicata a GAZEBO che implementa il simulatore dei robot basati su YARP, mostrandone l’architettura e soffermandosi sulle caratteristiche di modularità e versatilità.

Ecco la dimostrazione di bilanciamento (Yoga++) mostrata anche ad Italia’s got Talent, eseguita dal vero e con il simulatore.

La  disponibilità fisica del robot non è quindi indispensabile  per chi decide di lavorare in YARP sviluppando per iCub!

Quality of Service e DDS

Ali Paikan
Ali Paikan: session on Quality of Service and DDS

Ha concluso il workshop la sessione di Ali Paikan, che ci ha portati nel profondo delle problematiche architetturali legate allo sviluppo di applicazioni in YARP: l’interazione tra diversi sistemi e la comunicazione tra i processi. Nella manipolazione degli oggetti per esempio  le telecamere degli occhi ed i motori del braccio e della mano  devono comunicare con il sistema di riconoscimento degli oggetti ed il sistema di controllo motorio. Tutto questo comporta la coesistenza di grandi flussi di dati che attraversano il “sistema nervoso” del robot e che devono essere regolati in modo da non provocare intasamenti. Questo è il ruolo della QoS, Qualità del Servizio, che costituisce uno degli ambiti di sviluppo più attuali per YARP.  La crescita dei sistemi robotici e la loro crescente diffusione al di fuori dell’ambito accademico, porta alla necessita’ di confrontarsi con sistemi software standard utilizzati in altri contesti, quali ad esempio DDS.

Si tratta in generale di sfide già affrontate nell’industria, per esempio nel campo delle telecomunicazioni, e può quindi costituire uno scenario di collaborazione particolarmente fertile tra l’istituto ed un eventuale partner con esperienza consolidata.

Siamo solo all’inizio!

Alla fine del pomeriggio, dopo il meritato rinfresco offerto da IIT, è il momento delle riflessioni e del networking, con le idee che cominciano a scorrere tra i partecipanti del workshop ed i ricercatori dell’Istituto. La sfida di portare un robot umanoide dai laboratori alle case e gli ambienti di lavoro entro un anno è importante, e l’allargamento della collaborazione tra IIT e le aziende del territorio costituisce una grande opportunità di sviluppo.

La presentazione ufficiale del robot R1, avvenuta pochi giorni dopo il nostro workshop, testimonia che il dado è tratto. Ora tocca alle aziende esprimersi con i feedback e le proposte: il prossimo passo sarà un seminario di approfondimento nel quale i partecipanti saranno portati in breve tempo ad essere operativi su YARP, che significa essere in grado in breve tempo di scrivere applicazioni robotiche che sappiamo essere sul punto di diventare commerciali.

Chi è interessato a raccogliere la sfida si faccia avanti tramite la pagina di contatto specificando l’interesse per approfondire il tema di YARP o commentando su questa stessa pagina: se arriverà un numero sufficiente di richieste annunceremo a breve il workshop di approfondimento.

Marcello Morchio

 

One thought on “15 Luglio 2016 – Open YARP Workshop”

Leave a Reply

Your email address will not be published. Required fields are marked *