next up previous
Next: 2 Generación de tablas Up: 3 Algoritmo de locomoción Previous: 3 Algoritmo de locomoción


1 Cálculo del vector de posición angular

Dada una onda en el instante $t_{i}$, $f(x,t_{i})$, el problema es calcular el vector $\overrightarrow{\varphi(t_{i})}$ que hace que la articulación cumpla la ecuación de la onda. Si $(x_{j},y_{j})$ son las coordenadas de la articulación $j$, el algoritmo debe encontrar el vector $\overrightarrow{\varphi(t_{i})}$ que satisfaga la ecuación $y_{j}=f(x_{j},t_{i})$ $\forall j\in\{1...n\}$, esto es, que todas las articulaciones se encuentren sobre la onda.

\includegraphics[%scale=0.42]{ps/ajuste1.eps}

Figure 3: Pasos realizados para el cálculo del vector de posición angular $\overrightarrow {\varphi (t_{0})}=(\varphi _{1},\varphi _{2},\varphi _{3})$ a partir de una onda sinusoidal, para un robot de tres articulaciones.

El algoritmo utiliza un enfoque geométrico, basado en la rotación de puntos 2D. Un ejemplo aplicado a un robot de tres articulaciones se muestra en la figura 3. Inicialmente, $\overrightarrow{\varphi(t_{0})}=(0,0,0)$ y la cola del robot está situada en el origen. El primer paso es la rotación del robot respecto de la cola hasta que la articulación 1 esté sobre la onda ( $y_{1}=f(x_{1},t_{0})$). Esto se realiza iterativamente, rotando un incremento angular ( $\triangle\varphi$) y evaluando el error ($\epsilon$). Después, se rota la articulación 1 hasta que la articulación 2 satisfaga la ecuación de la onda. Transcurridas cuatro iteraciones, se puede decir que el ``robot se ajusta a la onda''. Todas las articulaciones satisfacen la ecuación de la onda, con un error $\epsilon$. En general, si el robot tiene $n$ articulaciones, serán necesarias $n+1$ iteraciones. La parte central de este algoritmo es la rotación de puntos en 2D, por tanto, se emplean las funciones seno, coseno y arco tangente.


next up previous
Next: 2 Generación de tablas Up: 3 Algoritmo de locomoción Previous: 3 Algoritmo de locomoción

juan 2005-10-01