Roomba

Due dottorandi e un docente del MIT partono da una serie di semplici materiali e regole di base per arrivare al primo robot autonomo capace di aprire una breccia nel cuore di molte famiglie americane.

di Daniel Turner

A Roomba SCI

Le unità dell’aspirapolvere robotizzato Roomba prodotte dopo l’ottobre 2005 includono l’interfaccia di comando seriale (SCI, serial command interface), una combinazione di porta seriale e software attraverso la quale il proprietario di Roomba può personalizzare il suo apparato (alcuni modelli più vecchi dispongono di questa porta ma è indispensabile acquistare da iRobot, il costruttore, un accessorio del costo di 30 dollari, Osmo//Hacker, per apportare le loro modifiche). IRobot ha pubblicato le specifiche dell’interfaccia SCI sul proprio sito Web e una vitale comunità di hacker della robotica ha preso le mosse da questa pubblicazione (si veda il box Storia di un hackeraggio, a fianco). Specialisti in robotica aziendale hanno aggiunto ai loro Roomba interfacce per i sistemi Bluetooth e Wi-Fi, trasformandoli in piccoli carri armati controllabili a distanza. Una azienda, Element Direct, promette addirittura di rilasciare un accessorio, Mind Control, che per 80 dollari consente di sviluppare programmi in linguaggi di alto livello come il C o il C++.

B Assemblaggi di ruote

Gli aspirapolvere Roomba strisciano su due ruote controllate da altrettanti sottosistemi. Ciascun sottosistema ha il suo motore in grado di spingere in avanti o all’indietro la rispettiva ruota, a un tasso di rotazione indipendente. In questo modo il Roomba è in grado di svoltare in modo più o meno deciso e di effettuare un giro completo su se stesso. Sensori all’infrarosso contano il numero di rotazioni e riportano questa informazione al sistema centralizzato di controllo, aggiornando costantemente le informazioni di posizione e velocità. Alcuni hobbysti hanno cercato di sfruttare la presenza dei sensori d’urto e la funzione che registra gli spostamenti per creare sistemi di mappatura degli ambienti, ma a volte le grosse ruote a manopola del Roomba slittano, rendendo molto problematica una misura accurata di queste informazioni.

C Il cervello

Lungi dall’essere un supercomputer, Roomba si basa su un microcontrollore a 16 bit della Freescale Semiconductor che non avrebbe speranze dentro a una console per videogiochi. Ciò nonostante, questo cervello da sempliciotto è abbastanza potente da permettere a Roomba di controllare il proprio stato 67 volte al secondo e di seguire regole elementari, ma efficaci. IRobot tiene la bocca chiusa su questi algoritmi, ma ogni volta che viene acceso Roomba effettua una serie di spirali sempre più larghe, fino a incontrare la parete più vicina, per poi seguirla fino all’ostacolo successivo. Tod E. Kurt, cofondatore di ThingM, gruppo specializzato in ricerche di informatica pervasiva, osserva che il modello di Roomba si allinea a una tendenza più ampia nel campo dell’intelligenza artificiale. Con questo tipo di approccio dal basso verso l’alto un programmatore può definire chiare e semplici regole come “procedere verso cibo”.

D Sensori infrarossi

Assemblaggi basati su sensori perimetrali trasmettono e ricevono i raggi infrarossi che consentono a Roomba di valutare le dimensioni dell’ambiente in cui si trova. Un analogo rilevatore all’infrarosso posto sulla parte frontale del robot misura quella che nella descrizione brevettuale depositata da iRobot è una combinazione di “un campo di forza e un fascio collimato” trasmessa dalla “unità di parete virtuale”: un accessorio esterno fornito con tutti i modelli Roomba. è possibile erigere una parete virtuale in un punto qualsiasi di un ambiente chiuso, per impedire a Roomba di penetrare all’interno di aree specifiche, come la stanza in cui giocano i bambini.

E Sensori d’urto

I sensori d’urto offrono un altro semplice meccanismo che, unito a regole altrettanto semplici, è in grado di dar luogo a una azione apparentemente intelligente. Il paraurti con ammortizzatore entrando in contatto con un ostacolo (una parete, la gamba del tavolo, il gatto di casa) provoca l’interruzione del fascio luminoso trasmesso da una coppia emettitore/rilevatore infrarossi; a sua volta l’interruzione libera un segnale che dice al sistema di controllo di Roomba di assumere una modalità “di rimbalzo”. In tal modo l’aspirapolvere si muove nella direzione giusta e riprende a pulire. Il paraurti contiene anche i quattro “sensori di ciglio”, che trasmettono raggi infrarossi verso il pavimento. Quando il tempo di ritorno dei raggi è troppo lungo, come può capitare quando Roomba si avvicina al gradino di una scala, il sistema di controllo intuisce che è arrivato il momento di tornare indietro.



Storia di un hackeraggio


Il basso costo commerciale di Roomba e la sua nuova interfaccia SCI fanno hanno fatto di questo dispositivo una piattaforma di sperimentazione robotica molto appetibile. Su Internet sono apparsi siti Web come roombareview.com e roomba.pbwiki.com, in cui gli hobbysti possono scambiarsi suggerimenti e trucchi, come la costruzione di telecomandi Bluetooth o Wi-Fi basati su componenti d’occasione. Un robot Roomba equipaggiato con Bluetooth è stato truccato con un panno verde e iscritto a una gara per dispositivi ispirati al videogioco Frogger, indetta dalla SXSW Interactive Conference di Austin,in Texas (www.secondlifeherald.com/slh/2006/03/realfrogger_tec.html). Tod E. Kurt, di ThingM, sta collaborando alla realizzazione dal vero di una partita di Pac-Man contro i fantasmi, animata da alcuni Roomba travestiti da Pac-Man e rinchiusi in un labirinto popolato da Roomba-spettri con l’incarico di aspirare dei coriandoli di carta (i puntini nel videogioco originale). RoombaNet (people.csail.mit.edu/bpadams/roomba), realizzato nel quadro di una tesi di dottorato al MIT, è un piccolo computer montato a bordo del robot e usato per controllare Roomba a distanza, senza fili. Se volete vedere un vero Roomba in azione, www.vacuumcleanerlive.com ha collegato al robot una telecamera-spia, creando un inedito videostream “soggettivo”.

Related Posts
Total
0
Share