domenica 23 novembre 2008
Programmare l’RCX lego con ubuntu
Come primo articolo spiegerò brevemente come installare tutto il necessario per poter utilizzare l’RCX lego su ubuntu.
L’articolo originale lo trovate qui.
I quattro passi fondamentali sono:
- Installazione della torretta usb a raggi infrarossi
- Installazione e configurazione del compilatore nqc
- Editor del codice utilizzabili
- Scaricamento firmware
1. USB tower a raggi infrarossi
Per prima cosa collegare la torretta al pc tramite una porta USB.
Aprire il file di configurazione come admin con:
sudo gedit /etc/udev/legoTower.conf
e incollarci all’interno questo testo:
#!/bin/bash
ln -s /dev/usb/legousbtower0 /dev/usb/lego0
chmod 666 /dev/usb/lego0
quindi chiudere il file e salvare.
Aprire il file di configurazione come admin con:
sudo gedit /etc/udev/rules.d/91-legotower.rules
e incollarci dentro questo testo:
ACTION==”add”, SUBSYSTEM==”usb”, ATTRS{product}==”LEGO USB Tower”, ATTRS{manufacturer}==”LEGO Group”, RUN+=”/etc/udev/legoTower.conf”
quindi chiudere e salvare.
In questo modo ogni volta che verrà collegata la torretta questa sarà subito disponibile.
Per testare la torretta scollegarla e ricollegarla, quindi digitare il comando:
echo test > /dev/usb/lego0
Se tutto è andato bene dovrebbe accedersi un led verde all’interno della torretta.
2. Compilatore NQC
1. Installazione da repository
Nqc è disponibile nei repository ufficiali ubuntu, potete installarlo digitando:
sudo apt-get install nqc
2. Installazione da sorgenti
Il compilatore NQC (Not Quite C) servirà per compilare i programmi scritti e scaricarli sull’RCX.
Per prima cosa bisogna scaricare l’ultima versione del codice sorgente di nqc da qui.
Una volta scaricato ed estratto spostarsi nella cartella e digitare il comando:
gedit Makefile
All’interno del file è necessario cercare la riga:
# USBOBJ = rcxlib/RCX_USBTowerPipe_linux.o
e togliere il commento cioè il cancelletto davanti:
USBOBJ = rcxlib/RCX_USBTowerPipe_linux.o
quindi salvare il file e chiuderlo.
Ora creare la cartella rcxlib/LegoUSB:
mkdir rcxlib/LegoUSB
e copiarci all’interno il driver per la torretta:
cd rcxlib/LegoUSB
wget http://legousb.cvs.sourceforge.net/*checkout*/legousb/LegoUSB/drivers/linux/include/legousbtower.h rcxlib/LegoUSB/legousbtower.h
cd ../../
E quindi compilare ed installare il compilatore:
make
sudo make install
echo export RCX_PORT=usb >> ~/.bashrc
Anche questa volta per controllare che nqc utilizzi correttamente la torretta digitare il comando
nqc -msg 7
Se tutto è andato bene come prima dovrebbe accedersi un led verde nella torretta.
3. Editor del codice
Su windows è presente un ottimo editor chiamato Bricx Command Center che purtroppo non è disponibile per linux. Si può comunque ulilizzare attraverso wine anche se non è possibile collegarlo alla torretta IR.
E’ comunque possibile utilizzare tutti gli altri editor C, ad esempio gedit, compilarli e scaricarli sull’RCX con il compilatore nqc.
4. Scaricamento firmware
L’ultima cosa da fare è scaricare il firmware sull’RCX.
Inserire il cd-rom Robotics Invention System ed eseguire questo comando per scaricarlo sull’RCX:
nqc -firmware /media/cdrom/firm/firm0309.lgo
Ora abbiamo tutto quello che ci serve per poter cominciare a programmare i nostri robottini lego con ubuntu.
Buon divertimento
Lascia un commento