Skybot-test
Contenido
Introducción
El skybot-test es una aplicación multiplataforma para controlar el robot Skybot mediante una interfaz gráfica y mostrar en ella el estado de todos sus sensores. Es muy útil para verificar si el Skybot está funcionando correctamente así como detectar si los motores están correctamente conectados y comprobar el funcionamiento de los sensores de infrarrojos, bumpers y sensor de luz.
Características
- Programa autocontenido: sólo es necesario este programa para probar el Skybot. Incluye un botón para descargar el firmware adecuado.
- Movimiento del Skybot mediante botones de la interfaz gráfica
- Movimiento del Skybot utilizando directamente el teclado
- Visualización de los puertos A y B, con el estado de todos sus bits y su valor en hexadecimal
- Visualización de todos sus sensores:
- 4 sensores de infrarrojos. CNY70
- 4 sensores de contacto. Bumpers
- 1 sensor de luz. LDR
- Acceso a los bits individuales del puerto B mediante botones/teclas
- Cambio de estado del relé de la Sky293 mediante botón/teclas
- Cambio de estado del led de la Skypic mediante botón/teclas
- Control mediante un mando a distancia Bluetooth.
Pantallazos
Ejemplo de uso
- Alimentar el Skybot
- Conectarlo al PC a través del puerto serie (o utilizando un conversor USB-serie)
- Ejecutar el programa skybot-test. El aspecto del programa será como el mostrado en el Pantallazo 1.
- Seleccionar el puerto serie donde está conectado el Skybot y pulsar en Abrir
Para controlar el Skybot se debe descargar un programa monitor. Si esto ya se ha hecho previamente y además el robot está correctamente alimentado y conectado al PC, se establecerá la conexión entre el PC y la tarjeta Skypic y la aplicación Skybot-test funcionará normalmente, como se muestra en el pantallazo 2:
- Si la conexión con el monitor no se ha establecido, aparecerá lo mostrado en el pantallazo 3.
- Para establecer la comunicación hay que descargar el programa monitor. Para ello pinchar en "Descargar monitor". Aparecerá un mensaje inferior indiando que se pulse reset en la tarjeta Skypic (Pantallazo 4)
- Al pulsar el botón de reset de la Skypic comenzará la descarga del monitor (pantallazo 5)
- Al finalizar se establecerá la conexión (pantallazo 6)
Teclas
El skybot-test permite utilizar el teclado para realizar diferentes acciones:
- O,P,Q,A,(espacio): Movimiento del robot hacia la izquierda, derecha, adelante, atrás y parar.
- 1,2,3,4: Cambiar el estado de los bits RB1, RB2, RB3 y RB4 que son los asignados a los motores
- r: Cambiar el estado del relé
- l: Cambiar el estado del led
Descargas
Versión: 1.0
Fichero | Descripción |
---|---|
Skybot-test-1.0-src.tar.gz | Fuentes |
Skybot-test_1.0-1_i386-etch.deb | Paquete para Debian/Etch |
Skybot-test_1.0-1_i386.deb | Paquete para Debian/Lenny |
skybot-test-1.0.win32.exe | Autoinstalable para Windows XP |
Licencia
Skybot-test es Software libre distribuido bajo la licencia GPL v3.0
Instalación
Instalacion en Windows XP
Hay que descargar e instalar los siguientes paquetes. Utilizar las opciones que vienen por defecto:
- Lenguaje Python. python-2.5.msi
- Extensiones para Windows.pywin32-210.win32-py2.5.exe
- Librería de acceso al puerto serie: pyserial-2.2.win32.exe
- Librerías gráficas wxPython: wxPython2.8-win32-unicode-2.8.6.0-py25.exe
- Librería Libiris: libIris-1.2.win32.exe
- Librería LibStargate: libstargate-1.2.win32.exe
- Por último el Skybot-test: skybot-test-1.0.win32.exe
Si se han utilizado las opciones que vienen por defecto en los instaladores, el pyburn se encuentra en el directorio: C:\python25\Scripts. El ejecutable es skybot-test.
Debian-Etch (4.0)/ Ubuntu Feisty (7.04)
- Instalar los paquetes: (disponibles en los repositorios oficiales)
- python-serial: Librería de acceso al puerto serie
- python-wxgtk2.6: Librerías gráficas wxPython
- Instalar la librería libiris: Python-libiris_1.2-5_i386.deb
- Instalar la librería LibStargate: Python-libstargate_1.2-1_i386.deb
- Instalar el Skybot-test: Skybot-test_1.0-1_i386-etch.deb
Otras distribuciones de Linux/FreeBSD
El Skybot-test está programa en Python por lo que es totalmente portable a otras distribuciones de Linux/FreeBSD. Para que funcione es necesario tener instalado:
- Python 2.4 o superior
- Librería de acceso al puerto serie en Python: Paquete pySerial
- Librería LibIris, para la descarga de programas en la Skypic
- Librería LibStargate, para la comunicación con los servidores grabados en la Skypic
Finalmente, para instalar el Skybot-test, descargar el paquete fuente, descomprimirlo, entrar en el directorio skybot-test-1.0 y ejecutar:
python setup.py install
Para ejecutarlo:
skybot-test
Desarrolladores
Entorno
- Lenguaje: Python 2.4 o superior
- Máquina donde se ha desarrollado: Portátil Dell con GNU/Linux Debian/Etch (4.0)
- Interfaz gráfica: wxPython.
- Construcción de la interfaz: wxglade 0.4.1 (Paquete debian: python-wxglade)
- IDE: Anjuta
Acceso al repositorio
- SVN del proyecto http://svn.iearobotics.com/skybot_test
La versión actual se puede obtener así:
svn co http://svn.iearobotics.com/skybot_test/skybot-test-1.0/
Empaquetar para Debian/Ubuntu
Ejecutar los siguientes comandos:
svn export http://svn.iearobotics.com/skybot_test/skybot-test-1.0/ skybot-test-1.0 cd skybot-test-1.0 chmod a+x debian/rules dpkg-buildpackage -rfakeroot
Si no ocurren errores, se habrá creado el paquete .deb en el directorio padre
Crear ejecutable para windows
Bajar la versión del SVN:
svn co http://svn.iearobotics.com/skybot_test/skybot-test-1.0/ cd skybot-test-1.0
Crear el ejecutable:
python setup.py bdist --formats=wininst
Se creará el fichero dist/skybot-wx-1.0.win32.exe
Crear paquete fuente desde el SVN
Se quieren crear los ficheros .tar.gz y .zip con las fuentes del proyecto. Los pasos a seguir son: Bajar la versión desde el SVN:
svn co http://svn.iearobotics.com/skybot_test/skybot-test-1.0.1/ cd skybot-test-1.0.1
Crear el fichero con las fuentes:
python setup.py sdist --formats=gztar,zip
Los ficheros fuente creados son dist/skybot-wx-1.0.1.gz y dist/skybot-wx-1.0.1zip
BUGS
Versión 1.0
- Problemas al usar el control por teclas:
- Windows: Al pinchar en una parte de interfaz que no sea un botón, el foco se envía al último botón pulsado y las teclas dejan de responder. La solución es pulsar cualquiera de los botones con el ratón y las teclas se activarán (Andrés)
- Linux: Comprobado el fallo en Linux. Ocurre lo mismo (Juan)
- Sugerencia: Poner en el interfaz cuáles son las teclas (Andrés)
Historia
El Skybot-test es una versión actualizada del programa CT294 que utilizábamos para el control del robot Tritt. Esta nueva versión es gráfica y multiplataforma, pero la funcionalidad es casi la misma.
- Octubre/2008: Programa Skybot-test en versión gráfica y multiplataforma
- Julio/2005: Programa Skybot-test para la consola de Linux y Botcontrol para windows. Realizados para el primer taller de robótica en la campus party.
- 1999: Programa CT294 para el control de Tritt.
Autor
Agradecimientos
- A Andrés Prieto-Moreno por las pruebas realizadas en Windows
Enlaces
- Programa Skybot-test para consola y plataformas Linux. Programado en C. (Obsoleto)
- BotControl. Control del Skybot desde plataformas Windows. Programado en Visual C++ 6.0. (Obsoleto)
Noticias
- 27/Oct/2008: Liberada la version 1.0 del Skybot-test
- 13/Oct/2008: Comenzada esta página