Programación Específica > Diseño de Algoritmos
Generador de pulsos para control de un servocontrolador
(1/1)
ShintaHimura:
Buenos Dias,
Espero puedan colaborarme con el diseño de un algoritmo para generar pulsos o pasos (steps) y controlar un servocontrolador (un circuito electrónico que recibe información en forma de pasos o pulsos y dirección para el control de posición de un motor)
Buscando información por la red, pude ver que este algoritmo se basa o puede basarse en la teoría de un perfil de velocidad, que es la gráfica para un movimiento que tiene 3 etapas: aceleración, velocidad constante y desaceleración.
En forma general, el algoritmo debería generar un determinado número de pulsos (con la misma duración) y proporcionales a la distancia o posición deseada, y también la frecuencia o el tiempo entre cada pulso que es proporcional a la velocidad, es decir, que cuando esté en la etapa de aceleración, el tiempo sebería ir disminuyendo proporcionalmente.
El algoritmo podría ser:
1.- Se ingresan los siguientes datos:
- velocidad
- aceleración
- pulsos o steps (número de pasos, los cuales son proporcionales a la distancia recorrida)
2.- en base a ecuaciones de movimiento o a un perfil de velocidad trapezoidal (la grafica es un trapezoide) encontrar la forma de relacionar las variables de entrada y generar los pulsos y la frecuencia entre pulsos.
3.- Una alternativa, podría ser generar una tabla para el paso o pulso y el tiempo o retardo para emitir ese pulso, hasta completar todos los pulsos y por tanto, llegar a la posición deseada. Es necesario aclarar, que un pulso o paso incrementa la distancia recorrira o posición.
Quizá exista una forma más estructurada, pero no he podido realizar algo hasta ahora. :(
Si se requiere información sobre el perfil de velocidad trapezoidal, pueden solicitarme ^_^ , ya he acumulado documentación importante sobre este tema.
Saludos a todos y gracias de antemano :)
Rurouni Kenshin
Nebire:
Me surgen demasiadas dudas leyendo tu mensaje, al contestarte saldría un post muy largo y vago...
¿ Puede explicitar claramente lo que necesitas, dejando aparte el 'polvo y la paja'...?
Navegación
Ir a la versión completa