Robot, sensori e comportamenti intelligenti


    L'insieme dei mattoncini, sensori, motori e RCX costituisce tutto ciò che è necessario per costruire sistemi intelligenti integrati in grado di esibire un comportamento: risultante di una continua e dinamica interazione del sistema con l'ambiente. I sensori sono gli elementi che consentono al robot di esplorare e interagire con l'ambiente circostante e reagire di conseguenza.

    Nell'attuale contesto riguardante l'utilizzo delle nuove tecnologie didattiche la robotica educativa sta progressivamente acquistando un posto di rilievo.

    Con questo termine si fa riferimento a un ampio e documentato insieme di esperienze in contesti formativi che hanno origine nei principi teorico-metodologici del Costruttivismo di Piaget e del Costruzionismo di Papert, Resnick et al, basati sull'impiego di Kit di costruzione robotica, strumenti efficaci in un'ottica di nuovi ambienti stimolanti di apprendimento.

    In altro lavoro si è definito la microrobotica, i mattoncini intelligenti e i sensori interfacciati ad un computer e liberamente programmabili, sottolineando il fatto che rappresentano un sistema fortemente orientato alla stimolazione cognitiva, che offrono diverse ed articolate opportunità di ristrutturazione concettuale e sperimentazione di concetti anche a livelli complessi.

    Scopo di questo contributo lo studio del rapporto robot e ambiente e dimostrare come utilizzando kit cibernetici basati sul mattoncino intelligente RCX, diventa possibile, con l'ausilio di un personal computer per le operazioni di programmazione, gestire sensori e motori in modo intelligente. Robot dotati di sensori che consentono di "percepire" l'ambiente circostante e reagire di conseguenza.

    In sintesi dimostrare come "buoni sensori" definiscono "comportamenti intelligenti".

    I sensori

    [inline: 1= Immagine - 1 - Insieme RCX, sensori e motori] Immagine - 1 - Insieme RCX, sensori e motori ©Lego Group

    I sensori sono dispositivi in grado di raccogliere gli stimoli esterni e di inviarli al microprocessore il quale a sua volta elaborerà una risposta solo se efficacemente programmato: l'automa esibirà azioni consequenziali.

    Concettualmente sono gli elementi che consentono al robot di interagire con l'ambiente esterno, rilevare la presenza di eventuali ostacoli o la variazione intensità luminosa.

    I sensori più comuni che fanno parte dei kit cibernetici di base ampiamente utilizzati in contesti educativi, possono essere tattili, ottici, oppure di rotazione, ancora di temperatura e ricevono informazioni dall'ambiente inviando a loro volta un segnale all'RCX che utilizza i sensori per interpretare l'ambiente in cui si trova.

    L'insieme dei mattoncini, sensori, motori e RCX costituisce tutto ciò che è necessario per costruire sistemi intelligenti integrati in grado di esibire un comportamento: risultante di una continua e dinamica interazione del sistema con l'ambiente (Immagine - 1).

    I sensori più comuni sono di quattro tipi:

    1. sensore di luce;
    2. sensore di contatto;
    3. sensore di temperatura;
    4. sensore di rotazione.

    1) Sensore di luce

    [inline: 2= Immagine - 2 - Sensore di luce] Immagine - 2 - Sensore di luce ©Lego Group

    E' in pratica uno speciale mattoncino dotato di due piccoli fori attraverso i quali può entrare il segnale luminoso.

    È, anch'esso, un mattoncino 4x2 dotato, su uno dei lati corti, di un LED emettitore a luce rossa e di un fotodiodo in grado di fornire all'RCX un valore proporzionale all'intensità  della luce ricevuta.

    Al suo interno troviamo una fotocellula in grado di percepire assenza o presenza di luce e variazione di intensità.

    Per collegare i sensori ottici al mattoncino RCX occorre montare un'estremità  del cavo sul sensore e l'altra alla porta sensore di ingresso indicate dai numeri 1-2-3. Il sensore di luce, che è in grado di riconoscere variazioni di luminosità (sensibilità da 0,6 a 760 Lux).

    Permette di distinguere tra chiaro e scuro, tra luce e buio e riconosce varie intensità luminose e percepisce i colori dell'intensità della luce riflessa.

    Esperienze con i sensori ottici:

    si possono proporre attività diversificate che portano i ragazzi a scoprire: il principio di funzionamento del sensore e le sue potenzialità  e la relativa programmazione, le caratteristiche dell'ambiente (luce ambiente, buio, lampada accesa, oggetti colorati).

    Dopo aver posto attenzione sul comportamento del sensore ottico alla luce e al buio si passa ad individuare il suo comportamento con i colore analizzando anche tutti i fattori che possono influenzare il sensore ottico: sfruttando questa caratteristica sarà possibile programmare un robot in grado di esibire come "comportamento emergente" quello di essere in grado di uscire da un labirinto.

    Infatti il robot verrà programmato semplicemente per seguire una linea nera su uno sfondo bianco e tale comportamento lo condurrà fuori dal labirinto.

    Utilizzando il Test Pad incluso nei kit insieme al sensore ottico sono possibili alcune attività significative come:

    • far seguire al robot una linea nera quando il sensore ottico si trova rivolto verso il basso;
    • fare in modo che il robot segua oppure eviti la luce quando il sensore viene ad essere rivolto in avanti.

    2) Sensori di contatto

    [inline: 3= Immagine - 3 - Sensore di contatto] Immagine - 3 - Sensore di contatto ©Lego Group

    I sensori di contatto sono dei normali "mattoncini 3x2", che presentano, da un lato, un piccolo pulsante: pertanto, possono fornire all'RCX soltanto due valori corrispondenti agli stati di pulsante "premuto" o "non premuto" (Immagine - 3).

    Questo tipo di sensore può essere utilizzato, ad esempio, per riconoscere quando il nostro robot incontra un ostacolo oppure come pulsante per comandare particolari funzioni del robot stesso.

    Viene collegato alle porte di ingresso dell'RCX e concettualmente funziona come il sensore ottico potendo assumere i due stati 0 ed 1 associati ad un interruttore che può, a seconda dei casi essere premuto o rilasciato.

    Da un punto di vista procedurale ai due stati possibili dei sensori: 0 ed 1 si possono porre in relazione a due diversi comportamenti esibiti dal sistema come il fermarsi/attivare un movimento o cambiare la direzione in presenza di ostacoli.

    Questi rapporti di evento/sensore sono molto importanti in quanto concettualmente introducono il meccanismo di feedback che consente di adeguare il comportamento del sistema alle sollecitazioni provenienti dall'ambiente.

    3) Sensore di temperatura

    [inline: 4= Immagine - 4 - Sensore di temperatura] Immagine - 4 - Sensore di temperatura ©Lego Group

    Il sensore rileva la temperatura dell'ambiente da -20 a +50 °C oppure °F (Immagine - 4).

    In una parte successiva del lavoro ci soffermeremo sugli utilizzi in attività scientifiche.

    4) Sensore di rotazione

    [inline: 5= Immagine - 5 - Sensore di rotazione] Immagine - 5 - Sensore di rotazione ©Lego Group

    Il sensore di rotazione misura rotazioni o angoli. Questo sensore è utilizzato soltanto in modalità attiva. Esso permette di misurare la rotazione dell'asse inserito con la precisione di 1/16 di giro (Immagine - 5).

    Ci sono anche vari sensori non LEGO ma compatibili con Mindstorms.

    Fra gli altri: misuratore di suono, pressione, tensione, di moto rotatorio, di umidità relativa, di corrente. Altri sensori compatibili con Robolab versione 2.5: sensore barometrico, accelerometro lineare monoassiale, adattatore per elettrodi di tipo Redox.

    Il rapporto di evento/sensore

    Fondamentale in attività  di Robotica educativa il rapporto di evento/sensore in quanto concettualmente ci permettono di introdurre, pur nel rispetto di una gradualità a seconda del tipo di utente, il meccanismo di feedback che consente di adeguare il comportamento del sistema alle sollecitazioni provenienti dall'ambiente.

    Con il kit Robotica Invention System (Kit commerciali LEGO RoboLab™, LEGO MINDSTORMS™), basato sul mattoncino speciale RCX, è possibile lavorare e gestire sensori e attuatori, i motori, e con l'ausilio di un personal computer attivare tutte le operazioni di programmazione.

    Da un punto di vista educativo lo scopo del kit non è quello di costruire solo robot seguendo le procedure preordinate e le istruzioni già pronte all'uso, bensì si vuole stimolare la progettualità creativa, la fantasia di ciascuno nel creare strutture cibernetiche sostenibili da un punto di vista meccanico prima e poi un programma in grado di dare una serie di capacità reattive all'oggetto.

    La Robotica in area scientifica

    Con programmazione Robolab, modulo Investigator, l'utilizzo dei sensori di luce, temperatura, tocco e rotazione permette l'esplorazione dell'ambiente e la possibilità di misure in tempo reale.

    Dal dominio dell'area tecnologica si possono realizzare interessanti esperimenti riconducibili all'area scientifica allargando in tal modo le potenzialità offerte dai kit.

    Utilizzando opportuni sensori collegati all'RCX e programmando con il linguaggio Robolab si può esplorare l'ambiente e osservare, basandosi sulle proprietà dei sensori, cosa cambia nel comportamento del robot se questo ha la possibilità di interagire con l'ambiente circostante.

    Per i sensori di luce e di temperatura si possono realizzare attività  sia di esplorazione libera dell'ambiente sia esperimenti di laboratorio in cui si sfruttano le potenzialità offerte dai sensori e dal software Robolab.

    In altre parole i Kit di Robotica educativa favoriscono a livello cognitivo la messa in atto di attività riconducibili a un costruttivismo che permette attraverso la risoluzione di problemi, posti in relazione all'obiettivo di assicurare l'adattamento all'ambiente da parte del robot, l'acquisizione di concetti dell'area scientifica.

    Con il software Robolab si ha la concreta possibilità di ricevere, attraverso un opportuno utilizzo dei sensori, l'informazione e visualizzare i dati: gli stessi potranno essere letti sotto forma di numeri sul display dell'RCX oppure elaborati sotto forma di grafico che si traccia in tempo reale sullo schermo del computer.

    Molto interessante quest'ultima modalità che ci consente di visualizzare l'andamento di due variabili una in funzione dell'altra nella forma iconica, immediata, e contemporaneamente allo svolgersi del fenomeno, oggetto dell'esperimento.

    La variabile scelta e i cambiamenti a cui viene ad essere sottoposta sono immediatamente visualizzabili e facilmente collegabili alle azioni fatte. Questa modalità ci permette una facile interpretazione dei risultati senza passare attraverso la raccolta e tabulazione di dati in forma numerica e il passaggio successivo della forma grafica da dare solo a posteriori quando il fenomeno è terminato.

    Con i sensori di temperatura si possono effettuare:

    • misure di temperatura, come nel caso dei passaggi di stato, e quindi per tempi lunghi. Scopo dell'esperienza è realizzare il grafico del passaggio di stato a livello di solidificazione e fusione dell'acqua valutando i cambiamenti di temperatura nelle diverse fasi,
    • misure per tempi più brevi come nel caso del sensore di temperatura che si utilizza per misure di temperatura dei diversi ambienti (aula, corridoi, ambienti esterni) o in altra esperienza quando si porta in equilibrio termico con la mano,

    Studio dell'intensità luminosa emessa da una sorgente di luce al variare di diversi fattori: intensità di illuminazione, distanza dalla sorgente, materiale posto sul cammino della luce.

    Al docente compete la scelta delle esperienze possibili che permettono sia di approfondire concetti appartenenti alla termologia, all'ottica, ma anche progettare robot che in relazione a compiti specifici, aiutino a comprendere il reale vissuto dell'alunno nella comprensione di meccanismi e situazioni della vita quotidiana.

    Nuovi kit e nuovi sensori

    Quest'anno a BIAS 2006, 32° Biennale Internazionale dell'Automazione, Strumentazione Microelettronica e ICT per l'industria, Media Direct ha presentato la nuova generazione ROBOT LEGO NXT EDUCATION (Immagine - 6).

    [inline: 6= Immagine - 6 - Robot Lego NXT] Immagine - 6 - Robot Lego NXT ©Lego Group

    Questo kit contiene l'ultima generazione dei robot LEGO Mindstorms ed include l'essenziale per la creazione di robot basati su NXT, il nuovo mattoncino programmabile. Il kit include 577 elementi ed anche il software di programmazione.

    I sensori sono stati riprogrettati e i motori hanno i sensori di rotazione integrati. Il sistema NXT supporta le tecnologie USB 2.0 e Bluetooth.

    Inclusi nel kit:

    1 mattoncino programmabile NXT (display a matrice di punti, microprocessore a 32 bit, 4 porte di ingresso per sensori e 3 porte di uscita per i motori), 3 servo motori con sensori di rotazione integrati, 1 sensori di contatto, che può rilevare urti/contatti, 1 sensore di luce, che può misurare sia luce ambientale sia luce riflessa, 1 sensore audio, che permette al robot di rispondere a stimoli sonori,1 sensore ad ultrasuoni, che misura distanza e può riconoscere oggetti in movimento.

    Bibliografia

    Bagnall, Brian (2002). Core Lego Mindstorms Prentice-Hall PTR. Baum, Dave (2002). Definitive Guide to LEGO MINDSTORMS, 2nd ed. APress. Erwin, Benjamin (2001). Creative Projects with LEGO Mindstorms (book and CD-ROM). Addison-Wesley. Ferrari et al. (2001). Building Robots With LEGO Mindstorms: The Ultimate Tool for Mindstorms Maniacs. Syngress. Sharkey, N.E. (1997) The new wave in robot learning. Robotics and Autonomous Systems. 22, 179-186.

    Sitografia

    Per maggiori informazioni riguardo robot LEGO-Mindstorms si veda il sito: www.legomindstorms.com