Obtenga el valor ADC para ejecutar el temporizador 555 externo

0

Estoy trabajando en la velocidad del motor y el control de posición. Los requisitos del proyecto son: 1. Establezca una velocidad para hacer funcionar el motor a una frecuencia particular. 2. Use un potenciómetro para configurar la velocidad que se muestra en la pantalla LCD (POT y LCD en la placa de desarrollo) 3. Crear señales PWM para ejecutar el motor. Mantener PWM independiente del microcontrolador. 4. Use el codificador para detectar la velocidad del motor.

Tengo toda la electrónica ordenada y probada, pero mi supervisor quiere que use el POT y la pantalla LCD en la placa de desarrollo para establecer la velocidad del motor y luego usarla para encender un temporizador 555 que estoy usando para generar Las señales PWM ya que el PWM se debe generar externamente y no a través del microcontrolador. ADC convierte el POT a un determinado valor (0 - 255).

Mi pregunta es si necesito que el motor gire a 500Hz, ¿cómo obtengo el valor ADC asociado de la placa de desarrollo para ejecutar el temporizador 555? ¿Necesito establecer un valor de velocidad del motor y comenzar el programa para ejecutar el temporizador para que oscile a una frecuencia particular?

    
pregunta David Norman

1 respuesta

1

Parece que quieren que implementes un control de velocidad digital de circuito cerrado. Este será un proyecto interesante. Considere el diagrama de bloques simple a continuación:

Estoeslomássimplequepuedeobtener,yaqueelalgoritmodecontrolessolounfactordemultiplicación.

Ensucaso,el"Comando" es un número fijo (500Hz). El tacómetro devolverá una frecuencia de pulso que depende de la velocidad del motor (500 Hz cuando está a la velocidad correcta). Puede usar el microcontrolador para medir la frecuencia que proviene del tacómetro. Hay varias formas de hacerlo; el principal requisito del nivel del sistema es que las mediciones deben ser bastante frecuentes (en relación con el tiempo que tarda el motor en enrollarse). Para simplificar, suponga que cuenta los pulsos durante 0,2 segundos. y multiplica por 5.

Siguiendo el diagrama de bloques, resta la lectura del tacómetro del comando. Tendrá un error, que luego puede multiplicar por el factor \ $ K_p \ $. Supongamos que su salida DAC debe ser 1.67V para 0% PWM y 3.33V para 100% PWM. Además, supongamos que el 50% de PWM es correcto. Y digamos que un error de +/- 2.5% es aceptable, así que estaremos contentos con una ganancia de 20. Necesitaremos un factor de \ $ 1.67 \ sobre {500} \ $ para normalizar las ganancias de entrada y salida, y Un sesgo de 2.50V. Por lo tanto, nuestro voltaje de salida al PWM del controlador del motor será \ $ V_ {out} \ $ = \ $ error \ cdot K_p \ over {500} \ $ \ $ \ cdot 1.67V \ $ + \ $ 2.50V \ $. El voltaje también debe limitarse a no menos de 1.67 y no más de 3.33V. Por lo tanto, el PWM será 0 o 100% con un error de +/- 12.5 RPM (+/- 2.5% del punto de ajuste).

La dinámica de este sistema (la estabilidad, la respuesta a perturbaciones como los cambios de torque y el sobreimpulso) puede no ser aceptable, y quizás se requiera algún factor integral en el algoritmo de control, pero la estructura general debería ser similar a esta.

    
respondido por el Spehro Pefhany

Lea otras preguntas en las etiquetas