next up previous contents
Next: 3.6.2 Lógica combinacional y Up: 3.6 Control Previous: 3.6 Control   Contents

3.6.1 Microcontrolador 6811 y PC

La tabla de control se encuentra en el PC y se envía a través del puerto serie al 6811 donde se ejecuta un programa servidor que genera las señales PWM en función de las posiciones indicadas. Es interesante que este servidor pueda mover cuantos más servos mejor. En Cube 2.0, el servidor sólo controlaba 4 servos, usando en total 5 comparadores. Uno común para generar una señal de 50Hz y uno medir la anchura del pulso de cada una de las señales PWM.

Esta solución tiene un error en su concepción. Todas las señales PWM están en fase por lo que cuando las posiciones de los servos son las mismas, se producen todas las interrupciones a la vez (4) lo que ocasiona un retraso en las últimas que se ejecutan, haciendo que su anchura del pulso sea un poco mayor, por lo que se observa cómo esos servos tienen de vez en cuando unos ``espasmos'' de pequeña amplitud.

La idea para controlar muchos servos es generar las señales PWM desfasadas, que se puede hacer con un único comparador, evitándose el problema anterior además de poderse controlar el doble de servos con la quinta parte de los recursos del microcontrolador. Todos los detalles así como el código que se ejecuta en el 6811 se pueden encontrara en el apéndice [*].


next up previous contents
Next: 3.6.2 Lógica combinacional y Up: 3.6 Control Previous: 3.6 Control   Contents
Juan Gonzalez 2003-12-20