jueves, 27 de enero de 2011

Práctica 1 (1ª Sesión)

En esta primera sesión hemos realizado el montaje del robot, para poder empezar a juguetear un poco con las funciones que nos ofrece LejOS.


Primeramente hemos configurado Eclipse para poder trabajar con LejOS, creando los accesos directos para la correcta compilación y enlace de los programas que realicemos desde este IDE.
Después hemos comenzado realizando los primeros ejercicios propuestos, el primero de ellos sin ninguna complicación, debe esperar a que sea pulsado cualquier botón del ladrillo para comenzar a mover un motor (en nuestro caso el motor A) y cuando pulsemos de nuevo debe detenerse finalizando así el programa.
En los dos siguientes ejercicios observamos la diferencia entre las funciones rotate( ) y rotateTo( ), en el primer caso tenemos un programa en el que el motor girará 45º cada vez que pulsemos cualquier botón, sin embargo en el segundo caso, el motor solo se moverá la primera vez que pulsemos un botón, ya que el robot se guarda la posición en la que ha quedado y por tanto si le decimos que vuelva a girar 45º (pulsando un botón) no nos hará caso, ya que ya está en la posición de 45º; sin embargo si movemos manualmente el motor y pulsamos de nuevo sí se moverá para colocarse de nuevo en la posición correcta.
El último ejercicio que nos ha dado tiempo a echar un ojo en esta sesión ha sido el de la visualización de la odometría del robot, consistiendo en mostrar por la pantalla los grados que vamos girando un brazo conectado al motor B, pero no hemos llegado completarlo, ya que nos surge un problema a la hora refrescar (limpiar) la pantalla, ya que, cuando damos un vuelta entera y tiene que empezar desde 0º nos queda a la derecha un dígito de la muestra anterior, asique vamos a intentar solucionarlo...

martes, 25 de enero de 2011

Instalación de LejOS en MacOS X

Debido a que soy usuario de Mac y a que en las instrucciones de clase no viene nada referente a la instalación de LejOS en dicho SO, dejo estos sencillos pasos por si otros compañeros lo necesitan.

Lo primero que debemos hacer será descargar de la web de LEGO el parche que tienen para Mac.



La instalación es sencilla, con un doble click sobre el .pkg descargado se abrirá la ventana de instalación y tendremos que ir pinchando en siguiente hasta que esta se complete.

Después descargamos LejOS de la web oficial, seleccionando la version que hay para Linux o Mac.



Descomprimimos el fichero descargado con el comando tar y pegamos la carpeta en la ruta:


/Users/nombre_usuario/Library


Una vez que tenemos situado lo necesario, deberemos agregar algunas variables de entorno. Para ello editaremos (o crearemos si no lo tenemos aún) el fichero ~./profile:


sudo nano ~/.profile


Ingresamos nuestra contraseña y ponemos las siguientes lineas:


export JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home
export NXJ_HOME=/Users/nombre_usuario/Library/lejos_nxj
export DYLD_LIBRARY_PATH=$NXJ_HOME/bin
export PATH=$PATH:$JAVA_HOME/bin:$NXJ_HOME/bin


La primera línea indica donde tenemos instalado nuestro JDK.
La segunda línea tendrá la ruta donde hemos puesto el directorio de LejOS.
La tercera se supone que se utiliza si usas el plug-in de Eclipse.

Después de editar el ~/.profile tenemos dos opciones, reiniciar sesión o ejecutar el siguiente comando para que tenga efecto lo que hemos hecho anteriormente:

source ~/.profile

Y ya está, según la guía de la web de LejOS no hace falta hacer nada para que funcione el USB, así que solo queda comprobar que todo funciona de la siguiente manera:

nxjbrowse -u

Esto nos dará un error si no tienes enchufado el USB, pero si lo que ocurre es que has hecho algo mal, lo mas probable es que te ponga un "command not found".

Después, con seguir los pasos de la primera práctica de Eclipse bastaría para poder trabajar con él.
No he podido probarlo aún con el ladrillo, cuando pueda hacerlo si falla algo lo actualizaré.

jueves, 13 de enero de 2011

Bienvenidos!

Los integrantes de este grupo somos:

Alberto Megías Adán.
Carlos Martín Sánchez-Muñoz.
Alain Vallejo Paredes.