Mi pregunta se deriva de esta aquí: Controlando un electroimán con arduino
Background
Estoy trabajando en el problema clásico de los sistemas de control de levitación magnética. Tengo un electroimán 10N (150 mH, 40 ohmios) que se utilizará para levitar una bola de acero. Usaré un sensor óptico de tiempo de vuelo para determinar la posición de las bolas. Planeo ir más allá del típico problema de levitación magnética de la licenciatura permitiendo que el punto de ajuste (altura de la bola) se modifique sobre la marcha, similar a este video .
Tomé un curso de sistemas de control no lineal en la escuela de posgrado, así que estoy consciente de que este es un problema difícil. Sin embargo, nunca fuimos más allá de la teoría, así que pensé que este sería un problema divertido para ampliar mi aprendizaje.
El problema
El sistema de control que obtuve espera que la variable de entrada (la tensión aplicada al electroimán) sea una tensión continua que varía continuamente. He estado buscando usar un DAC, pero son relativamente caros y no parecen estar diseñados para aplicaciones de energía. PWM parece ser el camino a seguir, pero estoy luchando por encontrar una manera de modelar el sistema PWM; una onda cuadrada no es matemáticamente amigable.
La pregunta
¿Cuál es la mejor solución para el problema: usar algo como un DAC o PWM? Necesito crear una señal de control precisa y de acción rápida (< 1ms delay).
Si PWM es la mejor solución, ¿cómo lo modelaría en un sistema de control?