RCX ultimo aggiornamento della pagina 27/11/24 |
|
Pulsanti: i pulsanti presenti sull’RCX Brick svolgono le funzioni mostrate in tabella.
FUNZIONE |
|
View | Mostra lo stato dei sensori e dei motori |
On-Off | Accende e spegne il Brick RCX |
Prgm | Seleziona un programma da eseguire tra quelli caricati in memoria |
Run | Manda in esecuzione il programma selezionato |
I pulsanti “View” e “Prgm” sono dipendenti dal firmware installato, quindi le loro funzioni sono programmabili. In tabella è mostrata la loro funzione se utilizzati con il firmware standard.
Porte di Input: le porte di input
sono numerate da 1 a 3 per essere ben distinguibili da quelle di output
e contengono un convertitore A/D da 10 bit. Ad esse
può essere collegato ogni tipo di sensore presente nel kit, come ad
esempio quelli di luminosità, rotazione, contatto, temperatura, o altri
contenuti nelle espansioni in commercio. Per essere
utilizzate, queste porte necessitano di essere configurate ogni volta
che un programma le utilizza. Porte di Output: le porte di output sono etichettate con A, B, C. Ognuna può essere connessa ad uno o più attuatori utilizzando i mattoncini dedicati al collegamento elettrico dei componenti. Anche se nel kit iniziale sono forniti solo motori funzionanti in DC con tensioni da 0V a 7V, queste porte possono essere utilizzate con qualsiasi altro tipo di sensore progettato per Lego Mindstorms in commercio.
Display LCD: il display è composto da 5 digits, più numerosi altri simboli indicanti lo stato dei sensori, la presenza di programmi eseguibili in RAM, il loro stato di esecuzione ed altre funzioni a seconda del firmware installato, per un totale di 43 segmenti controllabili singolarmente con chiamate a funzioni di basso livello.
Altoparlante: nell’RCX è integrato anche un piccolo altoparlante capace di emettere suoni controllabili via software per quanto riguarda intensità e durata.
Porta IR: la porta ad infrarossi è l’unico strumento che permette la comunicazione tra RCX Brick e la IR Tower collegata con l’esterno; questo è purtroppo un grosso limite della tecnologia Lego Mindstorms ed impone significativi limiti di mobilità ai robots che necessitano di comunicare con altri dispositivi in quanto un collegamento visivo tramite infrarossi richiede la presenza frontale dell’interlocutore rispetto alla porta IR ed una distanza limitata, tipicamente da 1 a 10 metri rispettivamente per le trasmissioni a corto e lungo raggio. Inoltre la trasmissione di dati è limitata tra porta IR e IR Tower poiché il protocollo di comunicazione non è quello standard utilizzato per la maggior parte dei PC. |
Come già accennato, l'RCX di Lego Mindstorms si basa sul processore
Hitachi H8/3292 della famiglia H8/3297. Il chip integra in se una CPU della serie H8/300, memoria e dispositivi di
I/O, e un controllore di interruzioni.
CPU H8/300
On-chip Memory • in modalità espansa 1 sono disponibili la RAM on-chip e l'espansione
esterna di memoria; |
|
|
La programmazione dell’RCX Come già accennato, le possibilità di programmazione dell’RCX sono molteplici, principalmente grazie a diversi firmware a disposizione con ambienti e linguaggi di programmazione tra cui scegliere in base alle proprie esigenze, alle proprie capacità o, semplicemente, per comodità. Naturalmente dover cambiare firmware non è affatto obbligatorio: quello standard offre, seppur con qualche limitazione, interessanti possibilità di programmazione. Primo fra tutti, va descritto il sistema di programmazione "visuale" messo a punto dalla Lego e fornito in dotazione, che unisce ad una indubbia facilità d’uso (ricordiamo che la Lego consiglia i prodotti della serie Mindstorms ad un pubblico dai 12 anni in su) delle evidenti limitazioni (per esempio, l’impossibilità di utilizzare variabili) che portano presto un utente mediamente evoluto a passare ad altri sistemi. La programmazione nell’ambiente visuale consiste nel creare, attraverso l’uso di comandi o di procedure definibili, dei programmi composti da task che saranno eseguiti in maniera concorrente dall’RCX. Si possono avere fino a 10 task per ogni programma, che possono essere sia attivi che inattivi. Il metodo di programmazione è davvero semplice: ogni comando impartibile all’RCX è rappresentato da una "tessera" sulla quale compaiono le eventuali opzioni; per creare un programma non c’è altro da fare che giustapporre le varie tessere in catena per indicare il flusso dell’algoritmo.
Sono a
disposizione un buon numero di comandi predefiniti, ad esempio per
l’accensione e lo spegnimento dei motori e per la regolazione di tutti i
parametri (verso di rotazione e potenza); tessere particolari permettono la
gestione dei sensori: per mezzo di slide bar si ha la possibilità di
determinare due "zone d’azione" del sensore mentre, nella parte bassa, la
tessera si biforca per specificare un’azione da effettuare nel caso in cui
il valore del sensore cada in una zona o nell’altra. Sono previsti comandi
per il controllo del flusso, come strutture condizionali e di iterazione
(sebbene queste ultime non possano essere annidate). |
Elenco revisioni | |
11/09/2005 | Emissione preliminare |