Capitolo 1 introduzione



Scaricare 395.27 Kb.
Pagina1/9
02.02.2018
Dimensione del file395.27 Kb.
  1   2   3   4   5   6   7   8   9


Corso di Robotica A

Prof. G.Gini
Anno Accademico 2001-2002


Definizione di un ambiente per Robot Lego MindStorms™











Marco Mariotti

mmario@email.it


CAPITOLO 1 INTRODUZIONE 1

CAPITOLO 2 IL ROBOT 2

CAPITOLO 3 IL SOFTWARE 8

CAPITOLO 4 L’ARCHITETTURA 13

CAPITOLO 5 BEHAVIORS 20

CAPITOLO 6 CONCLUSIONI 26

APPENDICE 27




CAPITOLO 1 INTRODUZIONE

Obiettivi

L’obiettivo di questo progetto è quello di fornire un ambiente di sviluppo per il sistema Lego MindStorms. In particolare si vuole ottenere un sistema modulare di programmazione non orientato verso un compito specifico ma che dia la possibilità, tramite la scelta degli opportuni moduli, di poter ottenere comportamenti diversi del robot utilizzando sempre la stessa struttura di base.

La modularità offre molti vantaggi, innanzitutto un sistema così definito porta naturalmente a dividere il problema principale in sottoproblemi più piccoli e più semplici da risolvere. Inoltre permette di lavorare facilmente anche con robot dalle caratteristiche fisiche differenti: è sufficiente ridefinire i moduli che usano in modo diretto l’hardware mentre si possono riutilizzare senza modifiche i moduli di più alto livello (che ad esempio svolgono computazioni e risolvono algoritmi – i.e. ricerca di un cammino).

Si otterranno così robot diversi ma con gli stessi comportamenti e che utilizzano moduli (porzioni di codice) esattamente identici.


CAPITOLO 2 IL ROBOT

Dal momento che il progetto riguarda la realizzazione di agenti embodied (cioè agenti dotati di un “corpo fisico” che gli permette di interagire con l’ambiente) la struttura e le potenzialità di tale corpo condizionano le capacità e le strategie di controllo degli agenti stessi. In questo capitolo dunque vengono presentate le caratteristiche salienti di tali robot.




Il kit Lego MindStorms ™


I robot sono stati costruiti utilizzando il kit Robotic Invention System 1.5, ed il kit Ultimate Accessory Set: in Figura 1 sono presentati i principali componenti, mentre nei paragrafi successivi ne vengono analizzate le caratteristiche principali..

Figura 1 - Componenti fondamentali del kit



RCX


L

Figura 2 - RCX



’RCX, sviluppato presso il MIT di Boston nel 1987, costituisce il cuore del sistema Mindstorms.

Basato su un microcontrollore HITACHI H8/3293 (della famiglia H8/300) dotato di 32 Kb di memoria RAM, l’RCX è dotato di tre porte di ingresso a cui collegare altrettanti sensori e tre porte di uscita a cui collegare tre attuatori (tipicamente motori). Questi componenti sono analizzati nei paragrafi successivi.

Oltre a questi è dotato di una porta ad infrarossi per la programmazione da PC (utilizzabile anche per la comunicazione tra più RCX), un piccolo display a cristalli liquidi che può visualizzare cinque cifre alfanumeriche, un altoparlante interno e quattro pulsanti per controllarne le principali funzioni:


  • On–Off per l’accensione e lo spegnimento

  • Run per avviare l’esecuzione del programma

  • Prgm per la selezione del programma da eseguire

  • View per monitorare lo stato dei sensori

I pulsanti sono controllati dal sistema operativo è possono essere utilizzati con diverse funzionalità (vedi paragrafo comportamenti).

Sensori


L’RCX presenta tre porte di ingresso per il collegamento di sensori che possono essere alimentati (modalità attiva) o meno (modalità passiva) attraverso tali porte.

La lettura di un sensore in modalità passiva avviene ponendo sull’ingresso una tensione di 5V e misurando la caduta di tensione dovuta alla resistenza applicata dal sensore stesso; la tensione sull’ingresso viene poi discretizzata fornendo un valore in modalità raw che varia da 0000 (0V) a FFFF (5V), anche se dubito venga utilizzato un convertitore A/D a 16 bit. Nel caso di un sensore in modalità attiva si alternano un ciclo di alimentazione in cui l’ingresso viene tenuto ad una tensione di 8V per circa 3 millisecondi ed un ciclo di lettura della durata di circa 0.1 millisecondi analogo a quella descritta in precedenza.



Sensore di contatto


C

Figura 3 - Sensore di contatto



ostituito sostanzialmente da un interruttore in serie ad una resistenza, il sensore di contatto è l’unico ad essere utilizzato solo in modalità passiva. Quando l’ingresso su cui è montato viene configurato come sensore di contatto esso assume il valore 1 se il sensore è premuto, a 0 se rilasciato.

Sensore di luce


I

Figura 4 - Sensore di luce



l sensore di luce è costituito da un fotodiodo e da una piccola sorgente di luce (LED). Quando questa è spenta il sensore viene utilizzato in modalità passiva e permette di valutare la luminosità dell’ambiente (per esempio se si vuole dirigere il robot verso la zona più scura della stanza); quando è accesa invece il sensore viene utilizzato in modalità attiva e permette di valutare la quantità di luce riflessa dalla superficie posta di fronte al sensore, che sarà tanto maggiore quanto più il colore è chiaro (utilizzata ad esempio per seguire una linea). Quando l’ingresso su cui è montato viene configurato come sensore di luce la il range di valori letti varia nell’intervallo [0,100], anche se sperimentalmente in modalità attiva i valori non sono mai inferiori a 20 o superiori a 70, richiedendo così una calibrazione preliminare in base alle caratteristiche dell’ambiente. Un difetto di tale sensore è che le variazioni di valori sono continue ossia non si verificano salti ma il valore letto varia sempre di una unità alla volta.

Sensore di rotazione


I

Figura 5 - Sensore di rotazione



l sensore di rotazione, utilizzato esclusivamente in modalità attiva permette di misurare la rotazione dell’asse inserito con la precisione di 1/16 di giro (22.5°). Quando l’ingresso su cui è montato viene configurato come sensore di rotazione si comporta come un contatore che può essere inizializzato al valore desiderato e viene incrementato o decrementato di una unità in corrispondenza di una rotazione dell’asse del sensore in senso orario o antiorario.


  1   2   3   4   5   6   7   8   9


©astratto.info 2017
invia messaggio

    Pagina principale