Diferencia entre revisiones de «Tutorial:ODE y robots modulares:Robot ápodo»
De WikiRobotics
(→Introducción) |
(→Objetivo) |
||
Línea 11: | Línea 11: | ||
== Objetivo == | == Objetivo == | ||
+ | * Mostrar cómo mover un robot ápodo de cualquier número de módulos | ||
+ | |||
== Código == | == Código == | ||
{| {{tablabonita}} | {| {{tablabonita}} |
Revisión del 11:51 9 ene 2009
Contenido
- 1 Simulación de un robot ápodo del grupo cabeceo-viraje
Simulación de un robot ápodo del grupo cabeceo-viraje
|
|
Introducción
En este ejemplo se simula un robot ápodo del grupo cabeceo-viraje de 16 módulos. El usuario puede establecer los diferentes modos de caminar mediante el teclado: línea recta, desplazamiento lateral, rotación, rodar, girar, etc.
Objetivo
- Mostrar cómo mover un robot ápodo de cualquier número de módulos
Código
Programa principal | |
Creación y dibujo del robot | |
Definición de las constantes. | |
Definición de los prototipos de robot.cpp y las estructuras de datos. |
Compilación
Todos los ejemplos de este tutorial compilan tecleando "make". Sin embargo se describe a continuación cómo se compila directamente usando el GCC:
g++ -Iinclude -c -o snake_ex/snake.o snake_ex/snake.cpp g++ -Iinclude -c -o snake_ex/robot.o snake_ex/robot.cpp g++ -o snake snake_ex/snake.o snake_ex/robot.o libdrawstuff.a -lm -lode -lX11 -lGL -lGLU
Ejecución
Para probar el ejemplo, teclear:
./snake
Además de los mensajes impresos en pantalla por la drawstuff, aparecerá el siguiente menú:
Keys for selecting the gaits: 1: Straight 2: Turning 3: Side-winding 4: Inclined side-winding 5: Flapping 6: S-shaped rotating 7: U-sahped rotating 8: Rolling q: Quit simulation
Mediante las diferentes teclas se pueden seleccionar las 8 maneras de caminar del robot ápodo
Capturas de pantalla
Visualización del robot moviéndose de diferentes maneras:
Vídeo
[[]] | [ video.mpg] |
Clasificación de robots ápodos
Modelo de robot
Modelo de control
Espacio de control
Espacio de formas
Explicación del código
Función Robot_new()
Función Robot_Render()
Función servos_sim()
Función sequence_generation()
Funciones Main y Command()
Enlaces
|
|