Control de velocidad del motor DC usando el algoritmo PID (STM32F4)
Hogar » Blog » Control de velocidad del motor DC usando algoritmo PID (STM32F4)

Control de velocidad del motor DC usando el algoritmo PID (STM32F4)

Vistas: 0     Autor: El editor de sitios Publicar Tiempo: 2020-09-02 Origen: Sitio

Preguntar

botón de intercambio de Facebook
botón de intercambio de Twitter
botón de intercambio de línea
botón de intercambio de WeChat
botón de intercambio de LinkedIn
botón de intercambio de Pinterest
Botón de intercambio de whatsapp
botón de intercambio de kakao
botón de intercambio de Snapchat
botón de intercambio de telegrama
botón compartido de compartir Sharethis

Hola a todos, soy Tahir ul Haq de otro proyecto.
Esta vez era el momento de hacer MC que fue utilizado para 2017-11-407.
Este es el final del programa a mitad de período.
Espero que te guste.
Requiere muchos conceptos y teorías, así que primero vamos a verlo.
Con la aparición de computadoras y el proceso industrializado, ha habido investigaciones en la historia de los seres humanos para desarrollar métodos para redefinir el proceso y, lo que es más importante, para usar máquinas para controlar el proceso de forma autónoma.
El objetivo es reducir la participación humana en estos procesos, reduciendo así los errores en estos procesos.
Por lo tanto, el campo de \ 'Ingeniería del sistema de control \' surgió.
La ingeniería del sistema de control se puede definir como el uso de varios métodos para controlar el trabajo del proceso o el mantenimiento de un entorno constante y preferido, ya sea manual o automático.
Un ejemplo simple es controlar la temperatura de la habitación.
El control manual se refiere a la presencia de una persona que verifica las condiciones actuales en el sitio (sensor)
, con expectativas (procesamiento)
y tome medidas apropiadas para obtener el valor deseado (actuador).
El problema con este enfoque es que no es muy confiable porque uno es propenso al error o la negligencia en el trabajo.
Además, otro problema es que la tasa del proceso que comienza el actuador no siempre es uniforme, lo que significa que a veces puede ser más rápido que la velocidad requerida, y a veces puede ser lenta.
La solución a este problema es usar un microcontrolador para controlar el sistema.
Según la especificación dada, el microcontrolador está programado para controlar el proceso de conexión en el circuito (
discutir más adelante)
el valor o condición de, controlando así el proceso para mantener el valor deseado.
El beneficio de este proceso es que no hay necesidad de intervención humana en este proceso.
Además, la velocidad de este proceso es consistente.
Antes de continuar, es crucial determinar los diversos términos en este punto: Control de retroalimentación: en este sistema, la entrada en un cierto momento depende de una o más variables, incluida la salida del sistema.
Comentarios negativos: en este sistema, referencia (entrada)
como retroalimentación, el error se resta y la fase de la entrada es de 180 grados.
Comentarios positivos: en este sistema,
se agregan errores de referencia (entrada) cuando la retroalimentación y la entrada están en fase.
Señal de error: la diferencia entre la salida deseada y la salida real.
Sensor: un dispositivo utilizado para detectar un cierto número de dispositivos en un circuito.
Por lo general, se coloca en la salida o en cualquier lugar donde queramos hacer algunas medidas.
Procesador: parte del sistema de control que se procesa en función de los algoritmos de programación.
Toma algunas entradas y produce alguna salida.
Actuador: en el sistema de control, el actuador se utiliza para realizar eventos basados ​​en la señal generada por el microcontrolador para afectar la salida.
Sistema de circuito cerrado: un sistema con uno o más bucles de retroalimentación.
Sistema de bucle abierto: no hay sistema para el bucle de retroalimentación.
Tiempo de elevación: el tiempo requerido para que la producción aumente del 10% de la amplitud máxima de la señal al 90%.
Tiempo de caída: el tiempo requerido para que la salida caiga del 90% al 10%.
Sobrecosía máxima: el sobrepeso pico es la cantidad de salida que excede su valor de estado estable (
normal durante la respuesta transitoria del sistema).
Tiempo estable: el tiempo requerido para que la salida llegue a un estado estable.
Error de estado estacionario: la diferencia entre la salida real y la salida esperada una vez que el sistema alcanza el estado estacionario. La imagen de arriba muestra una versión muy simplificada del sistema de control.
El microcontrolador es el núcleo de cualquier sistema de control.
Este es un componente muy importante, por lo que debe seleccionarse cuidadosamente de acuerdo con los requisitos del sistema.
El microcontrolador recibe información del usuario.
Esta entrada define las condiciones requeridas para el sistema.
El microcontrolador también recibe información del sensor.
El sensor está conectado a la salida y su información se vuelve a encender a la entrada.
Esta entrada también puede llamarse retroalimentación negativa.
La retroalimentación negativa se explicó anteriormente.
Según su programación, el microprocesador realiza varios cálculos y salidas al actuador.
La planta de control del actuador basada en la producción intenta mantener estas condiciones.
Un ejemplo puede ser el conductor del motor que conduce el motor, donde el conductor del motor es el conductor y el motor es la fábrica.
Por lo tanto, el motor gira a una velocidad dada.
El sensor conectado lee el estado de la fábrica actual y lo alimenta al micro controlador.
El microcontrolador se compara nuevamente y se calcula, por lo que se repite el bucle.
El proceso es repetitivo e infinito, y el microcontrolador puede mantener las condiciones deseadas.
Aquí hay dos formas principales de controlar la velocidad del motor de CC)
Control de voltaje manual: en aplicaciones industriales, el mecanismo de control de velocidad del motor de CC es crítico.
A veces podemos necesitar velocidades que sean más altas o más bajas de lo normal.
Por lo tanto, necesitamos un método de control de velocidad efectivo.
Controlar el voltaje de suministro es uno de los métodos de control de velocidad más simples.
Podemos cambiar el voltaje para cambiar la velocidad. b)
Control PWM usando PID: otra forma más eficiente es usar un microcontrolador.
El motor de CC está conectado al micro controlador a través del controlador del motor.
El controlador del motor es una entrada de PWM (
modulación de ancho de pulso) de IC
desde el micro controlador y la salida al motor de CC de acuerdo con la entrada. Figura 1.
2: Capítulo 1 de la señal PWM.
Introducción 3 Teniendo en cuenta la señal PWM, la operación de PWM puede explicarse primero.
Consiste en pulsos continuos durante un cierto período de tiempo.
El período de tiempo es el tiempo que pasa por un punto que se mueve a una distancia igual a una longitud de onda.
Estos pulsos solo pueden tener valores binarios (altos o bajos).
También tenemos otras dos cantidades, el ancho del pulso y el ciclo de trabajo.
El ancho del pulso es el momento en que la salida PWM es alta.
El ciclo de trabajo es el porcentaje del ancho del pulso al período de tiempo.
Para el resto del período de tiempo, la salida es baja.
El ciclo de trabajo controla directamente la velocidad del motor.
Si el motor DC proporciona un voltaje positivo dentro de un cierto período de tiempo, se moverá a cierta velocidad.
Si se proporciona un voltaje positivo por un período de tiempo más largo, la velocidad será mayor.
Por lo tanto, el ciclo de trabajo de PWM se puede cambiar cambiando el ancho del pulso.
Al cambiar el ciclo de trabajo del motor DC, se puede cambiar la velocidad del motor.
Control de velocidad para problemas del motor de CC: el problema con el primer método de control de velocidad es que el voltaje puede cambiar con el tiempo.
Estos cambios significan la velocidad desigual.
Por lo tanto, el primer método no es deseable.
Solución: usamos el segundo método para controlar la velocidad.
Utilizamos el algoritmo PID para complementar el segundo método.
PID representa la derivada integral proporcional.
En el algoritmo PID, la velocidad actual del motor se mide y se compara con la velocidad deseada.
Este error se usa para cálculos complejos para cambiar el ciclo de trabajo del motor según el tiempo.
Existe este proceso en cada ciclo.
Si la velocidad excede la velocidad deseada, el ciclo de trabajo se reduce y el ciclo de trabajo aumenta si la velocidad es menor que la velocidad deseada.
Este ajuste no se realiza hasta que se alcanza la mejor velocidad.
Verifique y controle constantemente esta velocidad.
Aquí están los componentes del sistema utilizados en este proyecto y una breve introducción a los detalles de cada componente.
STM 32F407: Microcontrolador diseñado por ST Micro-Section.
Funciona en la corteza del brazo. M Arquitectura.
Lleva a su familia con una alta frecuencia de reloj de 168 MHz.
Motor Driver L298N: Este IC se usa para ejecutar el motor.
Tiene dos entradas externas.
Uno del micro controlador.
El microcontrolador proporciona una señal PWM para ella.
La velocidad del motor se puede ajustar ajustando el ancho del pulso.
Su segunda entrada es la fuente de voltaje necesaria para conducir el motor.
Motor DC: el motor de CC funciona en la fuente de alimentación de CC.
En este experimento, el motor de CC se opera utilizando un acoplamiento fotoeléctrico conectado al controlador del motor.
Sensor infrarrojo: el sensor infrarrojo es en realidad un transceptor infrarrojo.
Envía y recibe ondas infrarrojas que pueden usarse para realizar varias tareas.
IR Coder Acoplador óptico 4N35: El acoplador óptico es un dispositivo utilizado para aislar la parte de bajo voltaje del circuito y la parte de alto voltaje.
Como su nombre lo indica, funciona sobre la base de la luz.
Cuando la parte de bajo voltaje obtiene la señal, la corriente fluye en la parte de alto voltaje.
El sistema es un sistema de control de velocidad.
Como se mencionó anteriormente, el sistema se implementa utilizando PID de integral y derivada proporcional.
El sistema de control de velocidad tiene los componentes anteriores.
La primera parte es el sensor de velocidad.
El sensor de velocidad es un transmisor infrarrojo y un circuito receptor.
Cuando el sólido pasa a través de la hendidura en forma de U, el sensor entra en un estado bajo.
Normalmente está en un estado alto.
La salida del sensor está conectada a un filtro de paso bajo para eliminar la atenuación causada por el transitorio generado cuando cambia el estado del sensor.
El filtro de paso bajo consiste en resistencias y condensadores.
Los valores se seleccionaron según sea necesario.
El condensador utilizado es de 1100 NF y la resistencia utilizada es de aproximadamente 25 ohmios.
El filtro de paso bajo elimina condiciones transitorias innecesarias que pueden dar como resultado lecturas adicionales y valores de basura.
El filtro de paso bajo se emite a través del condensador al pin digital de entrada del microcontrolador STM.
La otra parte es el motor controlado por PWM proporcionado por STM Microcontroller.
Esta configuración ha sido provista de aislamiento eléctrico utilizando el acoplador óptico.
El acoplador óptico incluye un LED que emite luz dentro del paquete IC, y cuando se da un pulso alto en el terminal de entrada, corta el terminal de salida.
El terminal de entrada proporciona PWM a través de una resistencia que limita la corriente del LED conectada al acoplador óptico.
Una resistencia desplegable está conectada a la salida para que cuando el terminal esté cortocircuitado, el voltaje se genera en la resistencia desplegable y el pasador conectado al terminal en la resistencia recibe un estado alto.
La salida del acoplador fotoeléctrico está conectada a la IN1 del controlador del motor que mantiene la altura del pin de habilitación.
Cuando el ciclo de trabajo PWM cambia en la entrada del acoplador óptico, el pasador del controlador del motor cambia el motor y controla la velocidad del motor.
Después de que el PWM proporcionó al motor, el controlador del motor generalmente proporciona un voltaje de 12 voltios.
El controlador del motor luego permite que el motor funcione.
Deje introducir el algoritmo que utilizamos en la implementación de este proyecto de regulación de velocidad del motor.
El PWM del motor es proporcionado por un solo temporizador.
La configuración del temporizador se realiza y se establece para proporcionar PWM.
Cuando el motor comienza, gira la ranura unida al eje del motor.
La hendidura pasa a través de la cavidad del sensor y produce un pulso bajo.
En pulsos bajos, el código comienza y espera a que la hendidura se mueva.
Una vez que la hendidura desaparece, el sensor proporciona un estado alto y el temporizador comienza a contar.
El temporizador nos da el tiempo entre las dos hendiduras.
Ahora, cuando aparece otro pulso bajo, la declaración IF se ejecuta nuevamente, esperando el siguiente borde ascendente y deteniendo el mostrador.
Después de calcular la velocidad, calcule la diferencia entre la velocidad y el valor de referencia real y dé el PID.
PID calcula el valor del ciclo de trabajo que alcanza el valor de referencia en un momento dado.
Este valor se proporciona a CCR (
registro de comparación)
Dependiendo del error, la velocidad del temporizador se reduce o aumenta.
Se ha implementado el código Atollic Truestio.
Es posible que STM Studio deba instalarse para la depuración.
Importe el proyecto en STM Studio e importe las variables que desea ver.
El ligero cambio es en el 2017-11-4XX.
Cambie la frecuencia del reloj con precisión a un archivo H a 168 MHz.
El fragmento de código se ha proporcionado anteriormente.
La conclusión es que la velocidad del motor se controla usando PID.
Sin embargo, la curva no es exactamente una línea suave.
Hay muchas razones para esto: aunque el sensor conectado al filtro de paso bajo todavía proporciona ciertos defectos, estas se deben a algunas razones inevitables para resistencias no lineales y dispositivos electrónicos analógicos, el motor no puede girar suavemente a un voltaje pequeño o PWM.
Proporciona imbéciles que pueden hacer que el sistema ingrese algún valor incorrecto.
Debido a la fluctuación, el sensor puede perderse una hendidura que proporciona un valor más alto, y la razón principal de otro error puede ser la frecuencia de reloj central del STM.
El reloj central de STM es de 168 MHz.
Aunque este problema se abordó en este proyecto, existe un concepto holístico de este modelo que no proporciona una frecuencia tan alta.
La velocidad de bucle abierto proporciona una línea muy suave con solo unos pocos valores inesperados.
El PID también está funcionando y proporciona un tiempo de estabilidad motor muy bajo.
El PID del motor se probó a varios voltajes que mantenían constante la velocidad de referencia.
El cambio de voltaje no cambia la velocidad del motor, lo que indica que el PID está funcionando.
Aquí hay algunos segmentos de la salida final del PID. a)
Loop cero @ 110 RPMB)
Loop cerrado @ 120 RPM Este proyecto no pudo completarse sin la ayuda de los miembros de mi grupo.
Quiero agradecerles.
Gracias por ver este proyecto.
Espero ayudarte.
Esperamos más.
Sigue bendición antes de eso :)

HOPRIO Group, un fabricante profesional de controladores y motores, se estableció en 2000. Sede del grupo en la ciudad de Changzhou, provincia de Jiangsu.

Enlaces rápidos

Contáctenos

Whatsapp: +86 18921090987 
Tel: +86-18921090987 
Correo electrónico: sales02@hoprio.com
Agregar: No.19 Mahang South Road, Distrito de alta tecnología de Wujin, Ciudad de Changzhou, Provincia de Jiangsu, China 213167
Dejar un mensaje
Contáctenos
Copyright © 2024 Changzhou Hoprio E-Commerce Co., Ltd. Todos los derechos reservados. Mapa del sitio | política de privacidad