Revista Científica Multidisciplinaria “EcoSur - Innovación, Tecnología y Desarrollo Sostenible de América Latina”. Vol.
2, Núm. 1.
(Marzo – Abril 2023.) ISSN 2960-8376.
https://doi.org/10.37811/cl_rcm.v7i4.6847
CONTROLADOR DE POSICION Y VELOCIDAD CON PID
DISCRETO EN MOTOR DC CON CODIFICACION
POSITION AND SPEED CONTROLLER WITH DISCRETE PID
IN DC MOTOR WITH CODING
Andrés Pinargote Quintero1*
1
Universidad Estatal Península de Santa Elena. Facultad de sistemas y telecomunicaciones. Santa Elena-Santa Elena.
Ecuador.
ORCID: https://orcid.org/0000-0002-6122-9824
Correo:
[email protected].
Bryan Sánchez Cabrera2
2
Universidad Estatal Península de Santa Elena. Facultad de sistemas y telecomunicaciones. Santa Elena-Santa Elena.
Ecuador.
ORCID: https://orcid.org/0000-0002-8263-1966
Correo:
[email protected] Julissa Orrala Flores3
3
Universidad Estatal Península de Santa Elena. Facultad de sistemas y telecomunicaciones. Santa Elena-Santa Elena.
Ecuador.
ORCID: https://orcid.org/0000-0002-7520-2630.
Correo:
[email protected].
Jason Ramírez González 4
4
Universidad Estatal Península de Santa Elena. Facultad de sistemas y telecomunicaciones. Santa Elena-Santa Elena.
Ecuador.
ORCID: https://orcid.org/0009-0003-0619-5873
Correo:
[email protected].
Ariel Buenaño Villon5
3
Universidad Estatal Península de Santa Elena. Facultad de sistemas y telecomunicaciones. Santa Elena-Santa Elena.
Ecuador.
ORCID: https://orcid.org/0009-0000-4828-9833.
Correo:
[email protected].
Laura Vasconez Alava6
3
Universidad Estatal Península de Santa Elena. Facultad de sistemas y telecomunicaciones. Santa Elena-Santa Elena.
Ecuador.
ORCID: https://orcid.org/0000-0002-1576-2097.
Correo:
[email protected].
Esta obra está bajo una licencia Creative Commons de tipo (CC-BY-NC-SA). 1
E-mail: [email protected]
Revista Científica Multidisciplinaria “EcoSur - Innovación, Tecnología y Desarrollo Sostenible de América Latina”. Vol.
2, Núm. 1.
(Marzo – Abril 2023.) ISSN 2960-8376.
https://doi.org/10.37811/cl_rcm.v7i4.6847
Resumen
En el siguiente proyecto se aplica un control PID discreto de velocidad y posición de un motor DC
con encoder, se explica cómo funciona el controlador y cuáles son sus componentes principales, así
como su aplicación en diversas industrias, robótica y mecatrónica, también se detalla el proceso de
diseño de una aplicación de control PID para un motor donde a través de un potenciómetro que será
nuestra referencia que controlará la velocidad o la posición en la que se moverá el motor, se usará el
programa MATLAB &SIMULINK para ver el comportamiento de nuestro sistema a través de
diagrama de bloques, servirá para la creación de nuestra aplicación y donde también se diseñara
nuestro controlador PID, que se compone de una ganancia K p , un integrador K i y un derivador K d ,
se discutirá los principios y consideraciones del diseño donde se debe tener en cuenta el desarrollo de
la aplicación, la finalidad de este documento es informar el cómo se puede controlar, regular y
mantener la posición y velocidad de los motores en diversas situaciones.
Para el desarrollo de la app que será la encargada de controlar y mostrar el comportamiento de nuestro
sistema usaremos App Designer una extensión de MATLAB, que es usada para la creación de
aplicaciones de control PID entre otros usos, en esta app se controlara la velocidad y posición del
motor con un slider que será nuestra señal, en el caso del control se le ingresara los valores para asi
encontrar los valores del PID y un scope donde se ira graficando las señales del motor y el controlador.
Palabras clave: Motor DC con encoder, controlador PID, potenciómetro, señales de error.
Abstract
In the following project, a discrete PID control of speed and position of a DC motor with encoder is
applied, how the controller works and what its main components are, as well as its application in various
industries, robotics and mechatronics, is also detailed. design process of a PID control application for a
motor where through a potentiometer that will be our reference that will control the speed or position in
which the motor will move, the MATLAB &SIMULINK program will be used to see the behavior of our
system Through a block diagram, it will serve to create our application and where our PID controller
will also be designed, which is composed of a gain K_p, an integrator K_i and a derivative K_d, the
principles and considerations of the design will be discussed where it should be Taking into account the
development of the application, the purpose of this document is to inform how the position and speed of
the motors can be controlled, regulated and maintained in various situations.
For the development of the app that will be responsible for controlling and showing the behavior of our
system, we will use App Designer, a MATLAB extension, which is used to create PID control applications
among other uses. In this app, the speed and position of the motor with a slider that will be our signal, in
the case of control the values will be entered in order to find the PID values and a scope where the signals
of the motor and the controller will be graphed.
Keywords: DC motor with encoder, PID controller, potentiometer, error signals
Esta obra está bajo una licencia Creative Commons de tipo (CC-BY-NC-SA). 2
E-mail: [email protected]
Revista Científica Multidisciplinaria “EcoSur - Innovación, Tecnología y Desarrollo Sostenible de América Latina”. Vol.
2, Núm. 1.
(Marzo – Abril 2023.) ISSN 2960-8376.
https://doi.org/10.37811/cl_rcm.v7i4.6847
Introducción
En particular, el controlador de posición y velocidad con PID (Proporcional, Integral y Derivativo)
discreto es una técnica ampliamente utilizada debido a su eficacia y facilidad de implementación.
Este tipo de controlador se basa en el cálculo de errores, que son la diferencia entre los valores de
referencia deseados y los valores medidos por un codificador, un dispositivo que proporciona
retroalimentación sobre la posición y velocidad del motor [1].
El controlador de posición y velocidad con PID discreto se implementa mediante algoritmos
específicos que permiten calcular y ajustar los parámetros del controlador para lograr un
rendimiento óptimo. Estos parámetros incluyen el coeficiente proporcional (𝑲𝒑 ), el coeficiente
integral (𝑲𝒊 ) y el coeficiente derivativo (𝑲𝒅 ), que deben ser sintonizados adecuadamente para
obtener una respuesta estable y precisa del motor [1].
Esta obra está bajo una licencia Creative Commons de tipo (CC-BY-NC-SA). 3
E-mail: [email protected]
Revista Científica Multidisciplinaria “EcoSur - Innovación, Tecnología y Desarrollo Sostenible de América Latina”. Vol.
2, Núm. 1.
(Marzo – Abril 2023.) ISSN 2960-8376.
https://doi.org/10.37811/cl_rcm.v7i4.6847
Materiales y métodos
El controlador de posición y velocidad con PID discreto en un motor con codificador es un sistema
de control que se utiliza para regular y mantener la posición y la velocidad de un motor en aplicaciones
industriales y robóticas. Este tipo de controlador se basa en el algoritmo del PID (Proporcional,
Integral y Derivativo) discreto, que calcula la señal de control necesaria para corregir los errores entre
la posición o velocidad deseada y los valores medidos por el codificador [2].
El codificador es un dispositivo que se encuentra acoplado al eje del motor y proporciona información
en tiempo real sobre la posición y velocidad angular del mismo. El controlador utiliza esta
retroalimentación para comparar los valores de referencia establecidos con los valores medidos y
calcular el error correspondiente [1].
El error se calcula como la diferencia entre el valor de referencia deseado y el valor medido del
codificador. Para el control de posición, el error se refiere a la diferencia entre la posición deseada y
la posición actual medida por el codificador. Para el control de velocidad, el error se calcula como la
diferencia entre la velocidad deseada y la velocidad actual medida por el codificador [3].
La señal de control total se obtiene sumando las contribuciones de las acciones proporcional, integral
y derivativa. Esta señal de control se aplica al motor para corregir el error y ajustar la posición o
velocidad del mismo.
Del controlador de posición y velocidad con PID discreto en un motor con codificador se puede
representar de la siguiente manera:
Controlador PID discreto
La señal de control generada por el controlador PID discreto se calcula como la suma de las
contribuciones de las tres acciones: proporcional, integral y derivativa.
La señal de control en el instante de tiempo k se denota como u[k], y se puede calcular utilizando la
siguiente ecuación[4]:
𝒖[𝒌] = 𝑲𝒑 ∗ 𝒆[𝒌] + 𝑲𝒊 ∗ ∑𝒆[𝒊] + 𝑲𝒅 ∗ (𝒆[𝒌] − 𝒆[𝒌 − 𝟏])
(1)
Esta obra está bajo una licencia Creative Commons de tipo (CC-BY-NC-SA). 4
E-mail: [email protected]
Revista Científica Multidisciplinaria “EcoSur - Innovación, Tecnología y Desarrollo Sostenible de América Latina”. Vol.
2, Núm. 1.
(Marzo – Abril 2023.) ISSN 2960-8376.
https://doi.org/10.37811/cl_rcm.v7i4.6847
Donde:
𝑲𝒑 es el coeficiente proporcional.
𝑲𝒊 es el coeficiente integral.
𝑲𝒅 es el coeficiente derivativo.
𝒆[𝒌] es el error en el instante de tiempo k, calculado como diferencia entre el valor de
referencia deseado y el valor medido del codificador en el instante k.
∑𝒆[𝒊] es la suma acumulada de los errores pasados hasta el instante de tiempo k.
Error
El error en el instante de tiempo k se define como la diferencia entre el valor de referencia deseado y
el valor medido del codificador en ese mismo instante.
(21)
𝐞[𝐤] = 𝐫𝐞𝐟𝐞𝐫𝐞𝐧𝐜𝐢𝐚[𝐤] − 𝐦𝐞𝐝𝐢𝐜𝐢ó𝐧[𝐤]
Donde:
Referencia[k] es el valor de referencia deseado en el instante de tiempo k.
Medición[k] es el valor medido del codificador en el instante de tiempo k.
Retroalimentación del codificador
La medición del codificador proporciona la retroalimentación necesaria para calcular el error en cada
instante de tiempo. Dependiendo de si se está realizando un control de posición o de velocidad, la
medición puede representar la posición angular o la velocidad angular del motor en ese momento.
El modelo matemático del controlador de posición y velocidad con PID discreto en un motor con
codificador se basa en la generación de una señal de control mediante la suma de las contribuciones
de las acciones proporcional, integral y derivativa.
Esta obra está bajo una licencia Creative Commons de tipo (CC-BY-NC-SA). 5
E-mail: [email protected]
Revista Científica Multidisciplinaria “EcoSur - Innovación, Tecnología y Desarrollo Sostenible de América Latina”. Vol.
2, Núm. 1.
(Marzo – Abril 2023.) ISSN 2960-8376.
https://doi.org/10.37811/cl_rcm.v7i4.6847
Resultados y discusión
Figura 1. Interfaz System Identification
Para diseñar y simular un controlador de posición y velocidad con PID discreto en MATLAB, puedes
seguir los siguientes pasos utilizando la herramienta de identificación de sistemas “ident”:
Importa los datos del codificador
Carga los datos de posición y/o velocidad medidos por el codificador en MATLAB.
Organiza los datos en una variable de serie de tiempo, por ejemplo, utilizando la función
“timeseries”.
Figura2.Diagrama de funcionamiento de un motor codificador
Esta obra está bajo una licencia Creative Commons de tipo (CC-BY-NC-SA). 6
E-mail: [email protected]
Revista Científica Multidisciplinaria “EcoSur - Innovación, Tecnología y Desarrollo Sostenible de América Latina”. Vol.
2, Núm. 1.
(Marzo – Abril 2023.) ISSN 2960-8376.
https://doi.org/10.37811/cl_rcm.v7i4.6847
Preprocesamiento de datos (opcional)
Si es necesario, realiza un preprocesamiento de los datos para eliminar ruido o suavizar las
mediciones.
Aplica filtros u otras técnicas de preprocesamiento según sea necesario.
Define el modelo de referencia
Define un modelo de referencia que represente la dinámica del sistema que deseas controlar.
Puedes utilizar modelos conocidos o empíricos según la aplicación.
Si tienes información sobre la estructura del motor y sus parámetros, puedes utilizar modelos
físicos o teóricos para el diseño del controlador.
Configura el experimento de identificación
Utiliza la función “iddata” para crear un objeto de datos de identificación a partir de los datos
del codificador.
Configura las opciones de muestreo, tiempo de muestreo y otros parámetros relevantes para
el experimento de identificación.
Estimación de parámetros
Utiliza la función “idproc” para crear un objeto de modelo de proceso a partir del modelo de
referencia.
Utiliza la función “estimate” para estimar los parámetros del modelo de proceso a partir de
los datos de identificación.
Sintonización del controlador PID
Utiliza las técnicas de sintonización de controladores PID para ajustar los valores de los
coeficientes proporcional, integral y derivativo (𝑲𝒑 , 𝑲𝒊 , 𝑲𝒅 ) del controlador.
Puedes utilizar métodos clásicos de sintonización como el método de Ziegler-Nichols o
métodos más avanzados como el ajuste automático.
Diseño del controlador
Utiliza los valores de los coeficientes sintonizados para diseñar el controlador PID discreto.
Implementa el algoritmo del controlador PID discreto utilizando la ecuación de la señal de
control mencionada en la respuesta anterior.
Simulación y evaluación
Utiliza el modelo del proceso y el controlador PID discreto para realizar simulaciones y
evaluar el rendimiento del sistema.
Compara los resultados de la simulación con los datos reales y ajusta los parámetros del
controlador si es necesario.
Son pasos generales y pueden variar según tus requisitos y la aplicación específica. Es importante
contar con conocimientos en identificación de sistemas y control para llevar a cabo este proceso
de manera efectiva.
Esta obra está bajo una licencia Creative Commons de tipo (CC-BY-NC-SA). 7
E-mail:
[email protected]Revista Científica Multidisciplinaria “EcoSur - Innovación, Tecnología y Desarrollo Sostenible de América Latina”. Vol.
2, Núm. 1.
(Marzo – Abril 2023.) ISSN 2960-8376.
https://doi.org/10.37811/cl_rcm.v7i4.6847
Figura3.Señales de control
Figura4.Diagrama de velocidad
Esta obra está bajo una licencia Creative Commons de tipo (CC-BY-NC-SA). 8
E-mail: [email protected]
Revista Científica Multidisciplinaria “EcoSur - Innovación, Tecnología y Desarrollo Sostenible de América Latina”. Vol.
2, Núm. 1.
(Marzo – Abril 2023.) ISSN 2960-8376.
https://doi.org/10.37811/cl_rcm.v7i4.6847
Figura5.Señal de salida
Figura6.Diagrama de Bloques.
Esta obra está bajo una licencia Creative Commons de tipo (CC-BY-NC-SA). 9
E-mail: [email protected]
Revista Científica Multidisciplinaria “EcoSur - Innovación, Tecnología y Desarrollo Sostenible de América Latina”. Vol.
2, Núm. 1.
(Marzo – Abril 2023.) ISSN 2960-8376.
https://doi.org/10.37811/cl_rcm.v7i4.6847
Desarrollo Aplicación usando App Design
En la era actual de la tecnología móvil, las aplicaciones juegan un papel fundamental en la vida
cotidiana de las personas. El diseño de aplicaciones móviles se ha convertido en un componente
crítico para garantizar que las aplicaciones sean útiles, atractivas y fáciles de usar. El objetivo de esta
investigación es profundizar en los principios y consideraciones que los diseñadores deben tener en
cuenta al desarrollar aplicaciones móviles exitosas.
Figura7.Interfaz de la aplicación
Figura8.Presentacion Física
El objetivo de esta aplicación es desarrollar una herramienta de control PID para un motor equipado
con un codificador, aprovechando las funcionalidades de MATLAB y su entorno de desarrollo de
aplicaciones (App Design). La aplicación resultante permitirá a los ingenieros y técnicos configurar
y sintonizar los parámetros del controlador PID, observar el comportamiento del sistema en tiempo
real y ajustar el rendimiento para cumplir con requisitos específicos.
Esta obra está bajo una licencia Creative Commons de tipo (CC-BY-NC-SA). 10
E-mail: [email protected]
Revista Científica Multidisciplinaria “EcoSur - Innovación, Tecnología y Desarrollo Sostenible de América Latina”. Vol.
2, Núm. 1.
(Marzo – Abril 2023.) ISSN 2960-8376.
https://doi.org/10.37811/cl_rcm.v7i4.6847
Conclusiones
En conclusión, el controlador de posición y velocidad con PID discreto en un motor con codificador
es una técnica efectiva y ampliamente utilizada en el campo de la automatización y control. Este
enfoque permite regular con precisión la posición y la velocidad de un motor en tiempo real,
mejorando la estabilidad, la respuesta transitoria y la precisión en una amplia gama de aplicaciones
industriales y robóticas.
El controlador se basa en el algoritmo del PID discreto, que combina las acciones proporcional,
integral y derivativa para generar una señal de control que ajusta la posición o velocidad del motor.
La retroalimentación del codificador proporciona información en tiempo real sobre la posición y
velocidad del motor, permitiendo al controlador calcular el error y realizar los ajustes necesarios.
El desarrollo de una aplicación de control PID para un motor con codificador en el entorno de
MATLAB ofrece una solución valiosa para mejorar la eficiencia y precisión en diversos sistemas
industriales y de automatización. La combinación de la técnica de control PID con la potencia de
MATLAB y su entorno de desarrollo de aplicaciones (App Design) facilita la implementación,
configuración y ajuste de los parámetros del controlador en tiempo real. Esta herramienta proporciona
a los ingenieros y técnicos una forma intuitiva y eficaz de optimizar el comportamiento del sistema y
alcanzar los objetivos de rendimiento deseados, impulsando así el progreso en campos clave de la
ingeniería y la automatización.
Referencias
[1] C. P. Arroyo Vilela, L. F. Salvatierra Bravo, y L. Miranda D., «Análisis Comparativo
Entre Controladores PID y FUZZYPID Aplicados a Modelo Experimental Obtenido
de un Filtro Activo Pasa-Bajos», Thesis, ESPOL. FIEC., 2022. Accedido: 4 de
octubre de 2023. [En línea]. Disponible en:
http://www.dspace.espol.edu.ec/handle/123456789/54451
[2] L. E. Mayorga Miranda, «Diseño e implementación de una plataforma para el estudio
comparativo de un controlador predictivo (MPC) con controladores PID y FUZZY,
aplicado al control de velocidad de un motor DC.», masterThesis, 2019. Accedido: 4
de octubre de 2023. [En línea]. Disponible en:
http://bibdigital.epn.edu.ec/handle/15000/19941
[3] «Sistema Avanzado de Protipado Rápido para Control en la Educación en Ingeniería
para grupos Multidisciplinares». Accedido: 4 de octubre de 2023. [En línea].
Disponible en: https://riunet.upv.es/handle/10251/143634
[4] J. L. F. Mejia, J. H. A. Núñez, I. de J. R. Cambero, y H. G. Maldonado,
Esta obra está bajo una licencia Creative Commons de tipo (CC-BY-NC-SA). 11
E-mail: [email protected]
Revista Científica Multidisciplinaria “EcoSur - Innovación, Tecnología y Desarrollo Sostenible de América Latina”. Vol.
2, Núm. 1.
(Marzo – Abril 2023.) ISSN 2960-8376.
https://doi.org/10.37811/cl_rcm.v7i4.6847
«MODELADO Y SIMULACIÓN DE UN REGULADOR DE VELOCIDAD PARA
UN MOTOR BLDC POR MEDIO DE UN CONTROLADOR DE HISTÉRESIS
POR CORRIENTE (MODELING AND SIMULATION OF A SPEED
CONTROLLER FOR A BLDC MOTOR, USING A HYSTERESIS CURRENT
CONTROLLER)», Pist. Educ., vol. 40, n.o 130, Art. n.o 130, nov. 2018, Accedido: 4
de octubre de 2023. [En línea]. Disponible en:
https://pistaseducativas.celaya.tecnm.mx/index.php/pistas/article/view/1688
Esta obra está bajo una licencia Creative Commons de tipo (CC-BY-NC-SA). 12
E-mail: [email protected]