Estoy intentando crear una función de servoaccionamiento en un microcontrolador ATMEL sin usar las funciones PWM incorporadas. Básicamente solo con el temporizador ISR.
Mi pregunta es ... ¿cuál es la resolución general para los servos Hitec (o Futaba)? ¿Son 10 grados, 5 grados, < 1 grado? ¿Cuál sería un objetivo superior realista para la resolución de mi temporizador, para que sea robusto para la mayoría de los servos?
Suponiendo un servo de rotación de 180 grados (1.25ms para 0, 1.5ms a 90 y 1.75ms a 180), tendría 500us para 180 grados, o 2.779us por grado a 1 grado de resolución. Para un reloj de 20MHz, tendría 50 ns por ciclo de reloj o 55.58 ciclos de reloj por grado de resolución.
Esto sería una gran carga si los procesos periféricos se estuvieran ejecutando y me pregunto si debo aumentar la velocidad de la CPU o si la resolución es incluso adecuada (demasiado alta o baja).
Para las aplicaciones, esto es bastante abierto, ya que estoy intentando construir una herramienta para una gran variedad de proyectos de robótica abierta, pero diría que debería ser comparable al Lynx Motion SSC-32 ( enlace ).