Usuario discusión:Obijuan
De WikiRobotics
Lista de cosas por hacer:
Contenido
Mis páginas en construcción
- Mini portátil Acer aspire one
- Skyprog
Tesis
- Curva serpentinoide
- Continua
- Discreta
- Scripts octave
- Información en apartado 3.6 del fichero tesis_1.lyx
- scripts en directorio local: /home/juan/desarrollo/tesis/tesis/tesis/fig/experimentos-parte2/orden/Loc1D/serp-continua
- Traducción al inglés:
- Información sobre la tesis:
- Intro: 5034
- Encuadre: 14540
- Modelos: 9400
- Loc1D: 12412
- Loc2D: 16985
- C.Min: 11944
- Experiments: 9545
- Resto: 7899
- Total: 87759
- Buscar traductores
- Candidata 1: Olga Baselga Calvo. Me ha recomendado que para trabajos tan largos y del español al Inglés lo mejor es que sean traductores nativos. Me ha propuesto a Philip Sutton.
- Candidato 2: Philip Sutton, profesor del departamento de filología Inglesa de la UAM. Despacho: 205 (Módulo IV bis). Tel. 914978708
- Candidato 3: T.W.Routley. Recomendado por Elías Todorovich.
- Información sobre la tesis:
- Edición libro (Inglés)
JDE
- Página principal JDE
- Hacer simulaciones con Gazebo, para usarlas desde JDE
Poniendo en marcha JDE
- Instalar JDE en Debian/Lenny
- El repositorio con los .deb está disponible aquí. Los paquetes que hay son:
gazebo_0.7.0-1_i386.deb jderobot-doc_4.3.0-rc1_i386.deb jderobot-drivers_4.3.0-rc1_i386.deb jderobot-libs_4.3.0-rc1_i386.deb jderobot-schemas_4.3.0-rc1_i386.deb jderobot-services_4.3.0-rc1_i386.deb jderobot_4.3.0-rc1_i386.deb ode_0.7.0-1_i386.deb player_2.0.5-1_i386.deb stage_2.0.4-1_i386.deb
- Al instalar player, sale el mensaje de error:
intentando sobreescribir `/usr/lib/libpmap.so.0.0.0', que está también en el paquete libpmap0
- Si se usa la opción --force-all se instala bien:
sudo dpkg -i --force-all player_2.0.5-1_i386.deb
- Stage se instala sin errores.
- Gazebo-0.7 se instala sin errores pero da el siguiente error al ejecutarlo:
$ gazebo /usr/share/gazebo/worlds/pioneer2dx.world ** Gazebo 0.6.1 ** * Part of the Player/Stage Project [1]. * Copyright 2000-2005 Brian Gerkey, Richard Vaughan, Andrew Howard, * Nate Koenig and contributors. * Released under the GNU General Public License. using display [:0.0] X Error of failed request: GLXUnsupportedPrivateRequest Major opcode of failed request: 159 (GLX) Minor opcode of failed request: 16 (X_GLXVendorPrivate) Serial number of failed request: 21 Current serial number in output stream: 22
- paquetes de jde
- jderobot-doc: OK
- jderobot-libs:
- jderobot-squemas:
- jderobot-services:
- jderobot-drivers: Error de dependencias con el ODE. Sugerencia: Modificar la dependecia de este paquete por libode0debian1
- Primeras pruebas
- jde está instalado y se ejecuta. Cuando se pone el comando jde, aparece lo siguiente:
$ jde jdec 4.3-svn Configuration from /usr/share/jde-robot/conf/jde.conf Reading configuration... graphics_gtk driver loaded (driver 0) Loading GTK support... GTK support loaded. graphics_xforms driver loaded (driver 1) Loading Xform support... Xforms support loaded. imagefile driver loaded (driver 2) imagefile driver started up I can't open the image file /usr/local/share/jde-robot/casaleft.pnm colorA:/usr/local/share/jde-robot/casaleft.pnm 320*240 colorA schema loaded (id 0) mastergui schema loaded (id 1) mastergui schema started up opengldemo schema loaded (id 2) opengldemo schema started up Starting cronos... Starting shell... jdec$
- y se lanza el esquema mastergui.
- Problema encontrado: Los esquemas se cargan correctamente si se incluyen en el fichero de configuración, pero no se pueden cargar desde la consola de jde. Ejemplo:
jdec$ ls colorA mastergui opengldemo jdec$ myschema jdec$ ls colorA mastergui opengldemo jdec$
- Se ha intentado cargar el esquema "myschema". No se ha cargado, pero tampoco ha dado ningún mensaje de error... Pero si se incluyen en el fichero de configuración entonces no hay problema.
- Probar esquema "Hola-mundo"
- He probado el myschema y funciona. Lo he modificado y he creado el mio propio: obijuan. A continuación pongo las instrucciones para usarlo:
- Descargar el esquema obijuan
- Descomprimirlo, entrar en el directorio obijuan y ejecutar make para compilarlo:
- He probado el myschema y funciona. Lo he modificado y he creado el mio propio: obijuan. A continuación pongo las instrucciones para usarlo:
$ make gcc -g -O -pedantic -Wall -I. -I/usr/include/jde-robot -fPIC -c -o obijuan.o obijuan.c gcc -shared -Wl,-soname,obijuan.so -L. -o obijuan.so obijuan.o -lm
- Ejecutarlo:
$ jde obijuan.conf jdec 4.3-svn Configuration from obijuan.conf Reading configuration... graphics_gtk driver loaded (driver 0) Loading GTK support... GTK support loaded. mastergui schema loaded (id 0) mastergui schema started up obijuan schema loaded (id 1) obijuan schema started up Starting cronos... Starting shell... jdec$
- En principio, se debería poder lanzar el esquema ejecutando obijuan, pero no funciona. Hay que activar primero el mastergui y ejecutarlo desde ahí. ¿Es un bug?:
jdec$ mastergui
- Al lanzarlo y ejecutarlo unos pocos ciclos, aparecerá lo siguiente:
jdec$ obijuan: on Obijuan: May the source be with you... Obijuan: May the source be with you... Obijuan: May the source be with you... Obijuan: May the source be with you... Obijuan: May the source be with you... Obijuan: May the source be with you... Obijuan: May the source be with you... Obijuan: May the source be with you... obijuan: off
- ¡¡Está funcionando mi esquema!!
- He limpiado un poco el código. Se encuentra aquí: obijuan-sh.tar.gz
- Driver "Nulo"
- Descargar jde desde el SVN:
svn co http://svn.jde.gsyc.es/jde/jdec/trunk
- Coger los ficheros pantilt (driver) y followball.c (esquema)
- Que el esquema hola mundo acceda al driver: OK
- Ya lo tengo hecho!: null-driver.tar.gz. Implementa un esquema para acceder a un actuador nulo de una variable de entrada. Se ha hecho un esquema de pruebas (test) que envia un valor al driver nulo al arrancar y otro al finalizar. El driver nulo imprime en la consola los cambios en su variable de entrada. Aquí hay un pantallazo del driver en acción: Pantallazo
- Driver Servos8
- Esquema Servos8
- Hacer Interfaz gráfica en ODE+OpenGL+GTK
Gazebo
- Instalar Gazebo en Lenny
- Gazebo usa scons. Para compilar teclear:
- Para compilar: scons
- Para limpiar: scons -s
- para instalar: sudo scons install
- Error 1: Sale el siguiente error: "error: 'strcmp' was not declared in this scope".
- Solución: Editar el fichero server/gui/StatusBar.cc y añadir #include <cstring>. Esto es debido a la nueva version del GCC. Aquí puede encontrar más información.
- Error 2: "error: 'QueuePointer' has not been declared".
- Explicación: Según leo aquí, se soluciona instalando player 2.1, pero en lenny viene player 2.0.4, por lo que hay que instalarlo "a pelo"
- Solución: De momento he desintalado player. Al compilar gazebo aparecerá el siguiente mensaje, pero gazebo se compilará correctamente:
- Gazebo usa scons. Para compilar teclear:
================================================================ Player not found, bindings will not be built. To install player visit(http://playerstage.sourceforge.net) ================================================================
- Ponerlo en marcha: probar un ejemplo
- Me salen violaciones de segmento al ejecutar gazebo. Puede ser porque no tenga player instalado... pero con algunos mundos sí ha funcionado:
./gazebo worlds/factory.world
- Crear un modelo sencillo, en XML. Por ejemplo un cubo situado a una altura. Tutorial de creación de modelos
- Crear los objetos compuestos del tutorial de ODE: compound1 y compound2
- Crear un modelo de módulo
- Crear un controlador para los servos
- Crear configuración PP. Necesario un controlador superior que genere las oscilaciones... ¿Cómo incluirlo en gazebo?
- Crear robot ápodo del grupo cabeceo-viraje
Tarjeta Skywars
- Arduino Nano
- AVRfreaks
- Pasos:
- Ejemplo hola mundo "ledp" para Arduino nano. Comprobar que todo OK.
- Ledon.c para AVR (sin entorno arduino). Cómo compilar. Cómo descargarlo.
- Ejemplos de comunicaciones serie
- Eco
- Menu
- Librerías
- Temporizadores y Delays
- Mover un servo
- Servidor Servos8
- Servidor genérico
- Skywars-test--> Acceso a los pines de la Skywars para pruebas
- Localizar Bootloader y grabarlo en AVR
- Poner AVR destino y grabar un ledp. ¿Qué software del pc se usa?
- Prototipo Casero de la Skywars
- Grabar AVR con Bootloader y comprobar que todo ok
- Probar prog. de ejemplo ledp, servos, serie, etc...
- Usar Skywars como grabador
- Esquemático con Kicad
- PCB con Kicad
- Gerbers, verificacion
- Prototipo catacumbero
- Verificación y Corrección
- Primera tirada verde
Software para Skypic
- Pyservos: Movimiento de servos (8) desde una Skypic.
- Pyservos
- Descarga automatica del firmware servos8
- Control mediante deslizadores
- Control por canvas
- Gestión secuencias de movimiento
- Pydownloader-wx, 1.2:
- Usar la Clase iris_gui()
- Implementar botón abrir/cerrar puerto serie
- Implementar un mini-terminal de comunicaciones
- Probar en MAC. Documentar
- Probar en FreeBSD. Documentar
- Libiris:
- Añadir firmware: bootloader
- Añadir ultima version del PICP
Mis recetas
Concatenar varios PDFs en uno
pdftk *.pdf cat output all.pdf
Micros ATmel AVR
- Microcontrolador ATMEL AVR
- ATmel AVR en Wikipedia
- Hoja de datos (Atmega8) (Programacion serie, pag. 238)
- Inconveniente del Atmega8: Los puertos son de 6 bits, salvo uno de 8, pero es el que tiene las comunicaciones serie
- Arduino
- Arduino en Wikipedia
- El Arduino NG permite reset software. La idea es muy buena, usan DTR y RTS a la vez. Sólo cuando ambos están activados se hace el reset. Me parece simplemente genial.
- Programacion in-circuit del ATmega8
- Se usan 4 pines: Reset, MISO, MOSI y SCLK
- No hay que aplicar ninguna tensión superior a 5v (a diferencia de los 12v del pic)
- El protocolo es serie síncrono de 8 bits
- Programador ISP (In-system programmer). En este enlace hay un PDF en el que se indica cómo hacerse tu propio programador con tu Atmel, que es lo que quiero hacer yo :-) Vienen las fuentes. Pero lo mejor es que han creado un protocolo estándar por el puerto serie. Ese programador se llama Atmel Low Cost Serial Programmer y está soportado por la herramienta libre avrdude
- Tarjeta Skywalker (Spartan 3)
- Conseguir una placa entrenadora FPGA + cable JTAG USB. ¿Cual? Preguntar a Ivan
- Poner en marcha unas herramientas Linux que permitan usar ese cable
- Instalar ISE en linux y hacer un "hola mundo"
- Hacer ciclo completo de desarrollo
- Empezar a sustituir las partes por componentes libres.