-
Notifications
You must be signed in to change notification settings - Fork 4
Cuaderno de Bitácora
Bienvenido al Cuaderno de Bitácora de Robot Devastation.
- Creación de punto de acceso sobre Raspi como propuesto en robotDevastation-robots#8, siguiendo este tutorial.
- Probado parche de reunión anterior sobre Raspi 3B+, conectando correctamente gracias al comando
pinout
.
- Aplicado parche para que
RaspiOnePwmMotorController
funcione sobre versiones de Raspi superiores a la 1.
- Pruebas con Raspian 9 sobre Raspi 3B+ (Decrease video transmission latency)
- Avances en documentación del estado de RD1 / RD2 / RD Ambassador
- Research on DarkNet se ha convertido en Research on TensorRT
- Mejoras de documentación en https://github.com/asrob-uc3m/robotDevastation-developer-manual respecto a Raspi (periféricos, configuración...).
- Research se ha convertido en Playground.
- Research on DarkNet se ha convertido en Research on TensorFlow.
- Research on DarkNet.
- Actualización del kanban https://github.com/orgs/asrob-uc3m/projects/1 a questions-and-answers#74.
- Comprobación y cierre de robotDevastation-user-manual#3 (user manual está en inglés y español).
- Probado nuevo servo para reemplazar el antiguo en los movimientos de tipo pan en la Torreta Láser, además de emplear una Freaduino. Funciona satisfactoriamente, se ha observado que es necesario un cambio mínimo en el device de YARP (yarp-devices#21).
- Se ha conseguido lanzar ambas cámaras de la MINORU a plena resolución y 15 fps, llegando a realizar algunas pruebas con detección de movimiento y mapas de disparidad (laser-tower-of-death#1).
- Una vez ejecutado el cliente del juego sobre el RD2 tras la reciente actualización de su software, una issue ha desaparecido (robotDevastation#140) mientras otra persiste (robotDevastation#141).
- Se documentó la configuración de motores y cámara en robots de tipo Raspi (robotDevastation-developer-manual#12).
- Se consiguió arrancar el control de los motores (rd2#3) y la adquisición de imágenes de la cámara (rd2#2) en el robot RD2 sobre la nueva base de código, de modo que consideramos que este robot vuelve a estar operativo tras la reciente actualización del software (rd2#1).
- Desguace controlado de la Torreta Láser de la Muerte con el objetivo de reemplazar el servo de menor tamaño (laser-tower-of-death#1).
- Practicando C++ sobre los tutoriales de YARP.
- Practicando con los comandos básicos de Git para clonar un repositorio, añadir un remoto, crear ramas y cambiar entre ellas, crear commits y subirlos, abrir y administrar issues y PRs en GitHub.
- Se ha corregido una regresión en el código de la Torreta Láser de la Muerte, mejorando a continuación el modo en que los motores procesan los incrementos en ángulo (yarp-devices#19, yarp-devices#20).
- Uso de la cámara dual de la Torreta Láser (laser-tower-of-death#1).
- Revisión del tutorial de C++ de cplusplus.com (cont.): herencia y niveles de acceso.
- Vino una persona del GUL, hicimos un breve repaso de lo que se hace en nuestro grupo.
- Compilación e instalación de YARP 2.3.72.1 y lo último de robotDevastation-robots y yarp-devices en la RasPi de RD2 (resumen).
- Sendos errores al lanzar el control de los motores y la adquisición de la cámara han dado lugar a sus respectivas issues: rd2#2, rd2#3.
- Revisión del tutorial de C++ de cplusplus.com (cont.): constructores por defecto, sobrecarga de constructores y operadores.
- Instalación de CMake 3.5.2 en la RasPi de RD2 (reemplaza CMake 2.8.9), compilación al 30% de YARP 2.3.72.1.
- Revisión del tutorial de C++ de cplusplus.com (link), introducción a los principios de programación orientada a objetos.
- Se completó la instalación de OpenRAVE en el portatil de uno de los asistentes; control de movimiento y cámara en el entorno robotDevastation-simulator.
- Lectura del manual para desarrolladores, robotDevastation-developer-manual.
- Profundización en el manejo del entorno simulado así como de los controladores articulares/cartesianos de YARP (controlboard interfaces) y roboticslab-uc3m (ICartesianControl) sobre un modelo de robot real, discusiones acerca de la implementación de un solver.
- Compilación de CMake 3.5 en la RasPi de RD2.
- Lectura del tutorial para Bash, dando lugar a sugerencias para su mejora (tutoriales#19).
- Prueba de comunicación (recepción de imágenes de la cámara) y control del robot rd2 desde dos equipos diferentes, también operando con el robot real y un cliente fake en otro equipo en la misma partida. Se han observado algunos errores en el cliente del juego (robotDevastation#140, robotDevastation#141), así como la necesidad de actualizar el software a bordo del robot (rd2#1).
- Instalación de software de simulación junto con la capacidad de renderizado offscreen en GPU de NVIDIA (roboticslab-uc3m/openrave-yarp-plugins#48). Será retomada en la próxima sesión al notar que no es posible arrancar el visor de OpenRAVE.
- Desfragmentación de disco duro como paso previo a la creación de una partición de Linux.
- Enlazar un programa de C++ vía CMake.
- Ejemplo de los tutoriales de YARP para abrir un puerto, transformar un mensaje y reenviarlo.
- Ampliación de main-developer-tools.md incluyendo link a tutorial de Bash.
- Usar elementos básicos de Bash.
- Crear y compilar un "Hello world" en C/C++ vía CMake.
- Lectura no exhaustiva de los tutoriales de control de versiones y git.
- Creación de particiones e instalación de Ubuntu 16.04 en 2 portátiles con éxito (dual boot selection). Instalación de robotDevastation y sus dependencias.
- Seguimos el manual de usuario en portátiles con instalación de Ubuntu sobre partición.
- Seguimos el manual de usuario en algunos PCs hasta llegar a lanzar
robotDevastation
con distintos parámetros. - Empezamos a mejorar el manual de desarrollador, véase d7e21 donde por primera vez escribimos que Robot Devastation está escrito fundamentalmente en C/C++. Se apunta a roboticslab-uc3m/developer-manual/main-developer-tools y se contribuye empezando una guía básica de herramientas empezando por la instalación de Ubuntu (y la dicotomía máquina virtual vs partición, a la cual luego se le suma WSL como alternativa).
- Inicio de curso, contar qué es y cómo está hecho Robot Devastation y sus componentes.
- Más mejoras y simplificación de la estructura de carpetas del manual de desarrollador (https://github.com/asrob-uc3m/robotDevastation-developer-manual).
- Reestructuración de la estructura de carpetas del manual de desarrollador (robotDevastation-developer-manual#11).
- Documentado uso de simulador en manual de usuario (robotDevastation-user-manual#7).
- Limpieza y avances en manual de desarollador (p.ej. robotDevastation-developer-manual#8)
- Creados nuevos repositorios para los robots: RD1, RD2, LTOD, RDA (https://github.com/asrob-uc3m/rd1 https://github.com/asrob-uc3m/rd2 https://github.com/asrob-uc3m/laser-tower-of-death https://github.com/asrob-uc3m/rd-ambassador)
- Trabajo hacia la compatibilidad con YARP 3.
- Trabajo hacia la resurrección de los robots: RD1, RD2, LTOD, RDA (robotDevastation #133, #134, #132, #136 respectivamente).
- Se enlaza manual de usuario con robotDevastation-robots por primera vez, para ir documentando la fabricación y el ensamblaje de cada robot empezando por el más sencillo (o el primero mencionado, Laser Tower Of Death).
- Movido porcentajes progreso manuales de antigua página wiki a cada manual.
- Homogeneidad entre enlaces de página web, repositorio principal, y doxygen de repositorio principal. Inclusión además de enlaces a repositorios del simulador de Robot Devastation.
- Muchas mejoras en documentación, como todo lo hecho en robotDevastation-developer-manual#5 (doc robotDevastation -> robotDevastation-developer-manual/issues/5) y robotDevastation#131 (Towards abandoning http://asrob.uc3m.es/index.php/Robot_Devastation -> hacia web).
- Pequeños cambios para no depender tanto de YARP, como robotDevastation#129 donde introducimos nuestra macro VOCAB.
- Arreglado "Some devices are broken" (https://github.com/asrob-uc3m/yarp-devices/issues/7)
- Arreglado "CMake find_package for certain devices: libserial, wiringpi..." (https://github.com/asrob-uc3m/yarp-devices/issues/2)
- Mejoras en la base de código de robotDevastation, eliminando ciertos warnings confusos al arranque (https://github.com/asrob-uc3m/robotDevastation/issues/127).
- Resucitado
rdSim
por completo, incluyendo detección de QRs en entorno simulado. Probado con drivers NVIDIA correctamente instalados sobre Ubuntu. - Separación de repositorios, separando software de robots a asrob-uc3m/yarp-devices para visibilidad y mantenimiento.
- Se creó AUTHORS.md y pusieron notas de copyright aquí cerrando el tema pendiente de licencias.
- Se eliminaron antiguos proyectos de repositorios individuales, quedándonos solo con el proyecto a nivel organización.
- Se mejoró el user-manual en cuanto a estructura y contenidos que se habían perdido.
- Se jugó con robots comerciales que se quieren incorporar al proyecto.
- Se mejoró la organización a nivel de namespace de las pruebas unitarias.
Revisando las siguientes issues:
- Se propuso una plantilla para las copyright notices: https://github.com/asrob-uc3m/robotDevastation/issues/99
- Algunas observaciones sobre C++11 y YARP: https://github.com/asrob-uc3m/robotDevastation/issues/109
- (nueva issue) convertir manuales a PDF y distribuirlos junto con los binarios del juego: https://github.com/asrob-uc3m/robotDevastation/issues/112
- Uniformización de
labels
deissues
en https://github.com/asrob-uc3m/robotDevastation/labels - Primeros pasos hacia un simulador para RD, https://github.com/asrob-uc3m/robotDevastation-robots/issues/36
Objetivos:
- Hablar de Travis CI
- Hablar de plugins
- Hablar de Branches (insights->network) y Forks de GitHub
- Implementar un (o varios) ...plugins ...en forks! Específicamente, se piensa en:
- Que los más nuevos implementen un toy/fake robot a modo didáctico.
- Implementar robot simulado con visualización, como se propone en https://github.com/asrob-uc3m/robotDevastation-robots/issues/36
Logros:
- Migrar Actas de wiki vieja a Cuaderno de Bitácora de Github.
- Se actualizó la nueva web, vía https://github.com/asrob-uc3m/asrob-uc3m.github.io/commit/fe92062299e10a92050fda2741d8cf8d09af6ed1
- Se siguió con la migración de http://asrob.uc3m.es/index.php/Tutoriales a https://github.com/asrob-uc3m/tutoriales (y una buena reestructuración de la misma).
Conseguimos lanzar el juego en Windows, sin cámara. Seguimos los pasos del user-manual para descargar e instalar los binarios, configurando el PATH para apuntar a SDL2 y ZBar. Un error al lanzar robotDevastation.exe, supuestamente debido a un punto de entrada no encontrado en libpng16-16.dll, se solucionó copiando la librería zlib1.dll (sacada de la página oficial de SDL_image2) en el mismo directorio del juego.
Se confirma que el Extension Pack hace que el guest de Ubuntu pueda reconocer la cámara web. Pruebas de conexión satisfactorias con cámara local y remota desde el guest. Instalación (fallida) de RD en Windows con los binarios precompilados, se lanza rdServer pero faltan librerías para el juego (ref). No logramos configurar el subnet en el guest del portátil de Nicolás. Nos quedamos instalando el compilador VC2015 con la idea de que la gente pueda usarlo desde Qt Creator sin necesidad de tener Visual Studio.
Resolviendo algunos problemas con el uso de la webcam dentro de VirtualBox. Se ha observado que podría ser necesario descargarse el Extension Pack para habilitarla. Nota a posteriori: en Windows 64 bits, hizo falta habilitar la virtualización en la BIOS para que VirtualBox pudiera reconocer la imagen de Ubuntu (ref).
Vino gente. Casi casi un tutorial de C/C++ (estilo Compilaci%C3%B3n_en_Linux pero más actualizado) con algo de CMake (estilo Tutorial_CMake pero más actualizado).
Vino un montón de gente, Juan habló mucho y llenó la pizarra de (ver foto adjunta). Estuvieron David y Bartek de apoyo.
- David: ...
- Juan: ...
- Bartek: revisión de robotDevastation#95 y apertura de PR (#105)
- David: test del hardware para medir baterías, módulo básico de yarp para recibir las medidas
- Juan: documentación de robots (issue 34 rd-robots)
- Juan y David: test con OrangePi: hacer funcionar los GPIOs. Probado con el hardware del Rd Ambassador.
- Bartek: revisando la posibilidad de crear un .deb de YARP; creación de una cache para YARP en Travis.
- Juan y David: hacer funcionar la cámara de la OPi (jugando con módulos de Kernel y esas cosas)