Ya hemos visto cómo instalar LeJOS en Windows y en Linux, hoy vamos a ver un pequeño tutorial sobre cómo se instala LeJOS en nuestro Mac. Además, en este artículo, daremos un repaso a los comandos principales de LeJOS que nos permitirán trabajar con este lenguaje sin necesidad de una interfaz gráfica.
Instalar LeJOS en MAC OS X
Para ello vamos a seguir una serie de pasos muy sencillos:
1. Instalar Java
2. Instalar el Driver USB de LEGO para MAC
3. Instalar y configurar LeJOS
4. Conectar el NXT y descargar firmware LeJOS
5. Usar LeJOS con línea de comandos
1. Instalar Java
En MAC java viene pre-instalado, por lo que simplemente deberemos asegurarnos de tenerla última versión (en el momento de escribir este tutorial es la 1.6), para ello vamos a y seleccionamos “Actualizaciones de Software”.
2. Instalar el driver USB de LEGO para MAC
Para que nuestro MAC reconozca el NXT en modo restauración de firmware, tendremos que instalar el parche desde la página de soporte de LEGO Mindstorms
Nombre del parche: Mac Leopard Fix
3. Instalar y configurar LeJOS
Vamos a la Página oficial de LeJOS y descargamos la versión para Mac/Linux.
Extraemos la carpeta donde queramos, en nuestro caso lo hemos hecho en el directorio Home
Ahora debemos configurar las variables de entorno para Java y LeJOS, para ello abrimos una consola (o Terminal) e introducimos el siguiente comando
sudo pico .profile
Esto nos permitirá crear el fichero .profile, o editarlo si ya existe. Tecleamos nuestra clave de administrador y escribimos en él las siguiente líneas
export JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home
export NXJ_HOME=/Users/Phoenix/lejos_nxj
export DYLD_LIBRARY_PATH=$NXJ_HOME/bin
export PATH=$PATH:$JAVA_HOME/bin:$NXJ_HOME/bin
La primera línea es la ruta donde está instalado JAVA.
La segunda es la ruta donde tenéis la carpeta lejos_nxj
La tercera sólo es necesaria para usar el plugin de Eclipse (que veremos en el próximo artículo)
Y la última añade las carpetas bin para LeJOS y JAVA
CTRL+X para salir (nombre de archivo .profile) y Yes para salvar los cambios. Al pulsar intro volveremos a la consola.
Ahora debemos dar los permisos apropiados al directorio bin. Para ello accedemos a lejos_nxj/bin
cd lejos_nxj/bin
(suponiendo que lo tengamos en Home)
Y ejecutamos el comando
chmod +x*
Para que los cambios que hemos hecho tengan efecto debemos reiniciar nuestro ordenador.
NOTA
Si tenéis instalado Snow Leopard en vuestro Mac y no os funciona LeJOS tras terminar la instalación, sustituid los archivos de la carpeta lejos_nxt/bin por estos bin_lejos_snow_leopard. Es un fichero zip, basta con descargarlo, extraerlo y sustituir la carpeta.
¡OJO! Tendréis que volver a cambiar los permisos de la carpeta.
Estos ficheros están modificados para forzar a Java a ejecutarse a 32 bits a fin de ser totalmente compatible con LeJOS.
Para usuarios de versiones anteriores de Mac OS este parche no es necesario.
4. Conectar el NXT y descargar firmware LeJOS
Una vez lo tenemos instalado y configurado, vamos a probarlo.
Primero vamos a ver si podemos conectarnos con nuestro NXT, para ello, con el cable USB conectado, tecleamos en la consola el siguiente comando
nxjbrowse -u
Y nos aparecerá una ventana como esta
nxjflashg
Esto nos permitirá descargar el nuevo firmware en el NXT.
Cuando el proceso de descarga se haya completado, el firmware de nuestro NXT se ha sustituido por el firmware propio de LeJOS, por lo que ya podemos trabajar con él.
5. Usar LeJOS con línea de comandos
Vamos a crear nuestro primer programa, el clásico Hello World, pero vamos a hacerlo usando la consola.
Abrimos nuestro editor de textos preferido, en nuestro caso hemos usado rText y escribimos lo siguiente
import lejos.nxt.*; public class HelloWorld { public static void main (String[] args) { System.out.println("Hola Mundo"); Button.waitForPress(); } }
En la línea 4 hemos usado el método estándar System.out.println de Java, ya que LeJOS puede trabajar con él sin problemas, enviando la salida a la pantalla LCD.
Guardamos el archivo como HelloWorld.java
– Para compilarlo tecleamos desde la consola
nxjc HelloWorld.java
Tras esto nos aparecerá un archivo HelloWorld.class en la misma carpeta donde estuviera el archivo .java
– Para linkarlo debemos usar
njxlink -v HelloWorld -o HelloWorld.nxj
- La etiqueta -v, no es imprescindible, pero nos permite ver el proceso de linkado en verbose mode, es decir, con todos los pasos que sigue la instrucción, esto puede resultar muy útil para comprobar posible errores (debugging).
- Tras la etiqueta -o indicamos el nombre del archivo binario que se creará.- Para descargar en el NXT un archivo ya linkado usamos
nxjupload HelloWorld.nxj
Las etiquetas que nos permiten modificar este comando son: - En primer lugar, justo tras el comando, -b /-u para forzar la descarga por Bluetooth o USB respectivamente. Si no se especifica nada, el comando lo intenta por USB primero y si no está conectado lo intenta directamente por Bluetooth
- A continuación -d address donde address es la dirección Bluetooth del NXT al que queremos conectarnos. Si no se especifica nada, se realiza una búsqueda previa a la descarga.
- Luego -n name donde name es el nombre del dispositivo al que queremos conectarnos. Si no se pone nada, intentará conectarse a todos los NXT que encuentre, descargando el archivo en el primero con el que se conecte con éxito.- Si por el contrario, una vez compilado queremos linkarlo, descargarlo y ejecutarlo en el NXT (la opción más común) tendremos que usar el comando
nxj -r HelloWorld
En próximos artículos veremos: - Conexión bluetooth NXT-MAC. Incluyendo conexión desde LeJOS.
- Instalación y configuración de Eclipse para LeJOS en MAC.Cualquier duda, podéis preguntar en el foro.