Está en la página 1de 7

CONTROL DE VELOCIDAD Y POSICIÓN PARA UN MOTOR DC 1

CONTROL DE VELOCIDAD Y POSICIÓN


PARA UN MOTOR DC
L. Arenas, A. Castilla, M. Lancheros y D. Rojas.

A nivel industrial es muy importante el tratamiento de


Abstract— This paper presents the development and señales ya que son estas las que nos permiten en ultimas
implementation of a speed controller and a DC motor position. They realizar un monitoreo y control de los diferentes procesos que
present the type of sensor used, the signal processing performed, se puedan llevar a cabo dentro de una fabrica. Para ello se
obtaining and discretization of the plant, controller design and final
assembly of the system with graphical interface.
utilizan los sensores que son elementos que nos permiten
captar cualquier señal que se desee, como por ejemplo, la
Resumen—Este documento presenta el desarrollo e velocidad o el desplazamiento de un motor los cuales pueden
implementación de un controlador de velocidad y posición para un ser censados mediante un encoder.
motor DC. Se presentara el tipo de sensor utilizado, el procesamiento
realizado a la señal, la obtención y discretizacion de la planta, el II. CONTROL DE VELOCIDAD Y POSICIÓN
diseño del controlador y el montaje final del sistema con interfaz
grafica. A. Fundamentación y Características:
Un controlador de velocidad y posición es un sistema de
Palabras Claves— Motor DC, Encoder, Interfaz Grafica, control que se encarga a partir de una señal de referencia (Set
Controlador PI. point) variar la velocidad o posición de un motor hasta la
deseada, teniendo como referencia los valores actuales de
Index Terms— DC Motor, Encoder, Graphic Interface, PI
estas captadas mediante un sensor. Dicho controlador debe
Controller.
estar diseñado de tal manera que la posición o velocidad
deseada sean alcanzadas con exactitud, en el menor tiempo
posibles y optimizando el consumo de energía.
I. INTRODUCCIÓN
n la actualidad los sistemas de control son de vital

E importancia de los procesos industriales modernos y la


manufactura, debido a que dan un desempeño óptimo de
los sistemas dinámicos mejorando la producción,
B. Partes y Funcionamiento Del Sistema:
El sistema estará compuesto por un computador, un
microcontrolador ATMEL 328, un driver de motor L293d, un
disminuyendo la repetitividad y las operaciones rutinarias y motor DC y un encoder.
eliminando las probabilidades de error. Pero para que un Inicialmente el usuario podrá escoger mediante la interfaz
sistema de control sea óptimo es necesario dar mucha grafica en el computador si desea controlar posición o
importancia a la etapa de diseño e implementación del sistema velocidad. Independientemente de cuál sea la opción escogida,
teniendo en cuenta el tipo de controlador y sensor a utilizar. el computador estará enviando constantemente la señal de
Uno de los elementos comúnmente utilizados en la industria consigna deseada por el usuario. Esta señal será enviada al
son los motores, lo cuales son ampliamente implementados en
microcontrolador mediante comunicación USB, una vez llegue
muchos procesos industriales en especial en procesos de
la señal a esté, se comparara con la señal actual de velocidad o
transporte, carga y tratamiento de materiales como pieza
central para el funcionamiento de las maquinas. Por esta razón posición del motor DC con lo que se generara la señal de
para el desarrollo de muchos procesos se hace necesario error, luego esa señal de error será proceda por el
controlar la velocidad, torque y posición de esté, de manera microcontrolador y se generara la acción de control la cual
rápida y precisa. será llevada a cabo por el PWM de esté, con el objetivo de
obtener la velocidad o posición deseados. Esta acción de
control llegara al Driver de Motor el cual permitirá aumentar o
Manuscrito creado para la asignatura de Control Moderno, Sensores y disminuir la velocidad, mover o detener el motor según sea
Actuadores en manos de los docentes Ing. Carlos Díaz MSc. e Ing. Francisco, necesario. La señal de velocidad será captada mediante un
MSc., para el día 13 de Junio de 2012.
L. Arenas, estudiante de Ingeniería Mecatrónica Universidad Autónoma encoder el cual enviara un tren de pulsos que variara su
del Caribe. (email: larenas0307@hotmail.com) frecuencia dependiendo de la velocidad actual del motor, este
A. Castilla, estudiante de Ingeniería Mecatrónica Universidad Autónoma tren de pulsos será captado por el microcontrolador el cual
del Caribe. (email: arturcas_66@hotmail.com)
M. Lancheros, estudiante de Ingeniería Mecatrónica Universidad procesara la señal y la convertirá según sea necesario en
Autónoma del Caribe. (email: maclan-92@hotmail.com) velocidad o posición. Dichas variables se darán en rpm y
D. Rojas, estudiante de Ingeniería Mecatrónica Universidad Autónoma del grados respectivamente.
Caribe. (email: darm940@hotmail.com)
CONTROL DE VELOCIDAD Y POSICIÓN PARA UN MOTOR DC 2

con un desplazamiento de ¼ de ranura el uno del otro,


generando dos señales de pulsos digitales desfasados en 90º.
Se decidió utilizar este sensor
sen porque nos provee de un
tren de pulsos que varía en frecuencia dependiendo de la
velocidad del motor lo que nos permite conocer de una
manera rápida cual es la velocidad actual de este. El cálculo
de la frecuencia se realiza contando la cantidad de pulsos
Figura 1. Diagrama De Bloques del Sistema. generados por el encoder en un tiempo determinado.
Además al ser de cuadratura nos provee dos trenes de pulsos
III. SENSOR desfasados 90º lo que nos permite conocer de manera precisa
Para realizar el censado de las diferentes variables de el sentido de giro del motor.
motor
nuestro sistema se utilizara un encoder.
El encoder viene integrado con el motor y presenta las
siguientes características: [5]
5]
A. Encoder
Un encoder o codificadores rotatorios son mecanismos
electromecánicos que convierten la posición angular de un eje
directamente en un código digital, generalmente utilizados
para entregar la posición, velocidad y aceleración del rotor de
un motor. Y son usualmente utilizados en aplicaciones
robóticas, lentess de fotografía, procesos industriales que
requieren medición angular y en la industria militar. [1]
B. Tipos de encoder
Los tipos más comunes de encoder son:
Figura 4. Imagen Del Encoder a Utilizar. [6n]
[
a. Encoder Absoluto
Son un tipo de configuración de encoder en el que la Cantidad de pulsos por revolución del eje motor: 32 p/v.
posición queda determinada mediante
med la lectura la
lectura del código de salida, el cual es único para cada Equivalencias de rpm: 5514 rpm
r enc = 200rpmmot.
una de las posiciones dentro de la vuelta. [2]
Desfase entre las dos señales: 90º.
90º

Voltaje de alimentación del encoder: 3.5 – 20 V.

El encoder consta de 4 cables: El Azul (Vcc del encoder),


el Verde (Tierra del encoder), el Amarillo (Señal de salida
A) y el Blanco (Señal de Salida B).
Figura 2. Encoder Absoluto.. [3]

b. Encoder Incremental IV. PROCESAMIENTO DE LA SSEÑAL


Son un tipo de configuración en el que la posición Para convertir la señal enviada por el encoder en una
queda determina por la cantidad de pulsos emitidos el variable que pueda ser utilizada para generar la acción de
interruptor óptico. Los pulsos son generados cada vez control se debe realizar lo siguiente:
que el patrón del disco interrumpe el haz de luz del A. Señales Para Controlador de Velocidad
interruptor. [n]
a. Se captura la cantidad de pulsos enviados por el
encoder durante un tiempo determinado con lo que se
obtiene la frecuencia del encoder.
#
1

Donde es la frecuencia del encoder, # el número de


Figura 3. Encoder Incremental. [4] pulsos captados y el tiempo utilizado para captar los
pulsos en segundos.
C. Encoder A Utilizar
El encoder que se utilizara es un encoder incremental de
cuadratura, el cual utiliza dos sensores ópticos posicionados
CONTROL DE VELOCIDAD Y POSICIÓN PARA UN MOTOR DC 3

b. Como la frecuencia del encoder hace referencia a la medidas cada 0.05s y dos veces por cada entrada de PWM,
cantidad de pulsos por segundo, ahora calculamos la luego se promediaron cada una de las medidas (Ver Tabla
cantidad de pulsos en un minuto. Nº1).
60
∗ (2)
1 Al observar los datos se puede inferir que nuestro sistema se
Donde es la cantidad de pulsos por minuto. comporta como un sistema lineal de primer orden. Para lo cual
la función de transferencia de muestro sistema tendría la
c. Una vez conocido los pulsos por minuto del encoder siguiente forma.
calculamos la cantidad de vueltas que da este en un
minuto sabiendo que nuestro encoder genera 32 (
pulsos por vuelta, con lo que obtendríamos las rpm !(') = (6)
de nuestro encoder. )' + 1
1 Donde ( es la ganancia y ) es la constante de tiempo del
= ∗ (3)
32 sistema, la cual es una medida de la rapidez con la que un
Donde son las rpm del encoder. sistema determinado responde en presencia de alguna
perturbación [8].
d. Finalmente para calcular las rmp de nuestro motor se
tiene que 5514 rpm del encoder equivales a 200 rpm Para obtenerla función de transferencia de nuestro
del motor. sistema a partir de la curva de respuesta se utilizo el ToolBox
200 de Matlab llamado Ident, el cual se encarga de caracterizar el
= ∗ (4)
5514 sistema a partir de la señal de entrada y la señal de salida de la
planta. [9]

B. Señales Para Controlador de Posición Esta caracterización se realizo para cada uno de las rpm
obtenidas ante las entradas respectivas de PWM. Al final se
a. Partiendo de los datos mostrados en el Señales Para promediaron todas la funciones obtenidas con el objetivo de
Controlador de Velocidad se determino que el obtener una función equivalente que representara nuestro
encoder nos provee de 800 pulsos por cada vuelta del sistema.
eje del motor y teniendo que una vuelta equivale a
360º se obtiene la siguiente relación. Los resultados obtenidos fueron:
360°
! "#$ = ∗ (5) a. Función de transferencia equivalente
800
0.80706
!(') = (7)
Donde son los pulsos del encoder. (1 + 0.1556')
V. CARACTERIZACIÓN DE LA PLANTA b. Respuesta del sistema ante una entrada escalón

Para la realizar la caracterización de la planta (Motor DC de


12V) (Ver Figura 2) se realizo mediante la obtención de la
curva de respuesta:

Figura 5. Imagen Del Motor DC. [7]

La curva de respuesta de un sistema se realiza introduciendo


un escalón a la planta y observando su grafica de salida. Para
realizar este procedimiento se introdujeron escalones de PWM Figura 6. Respuesta del sistema ante una entrada escalón.
al sistema y se realizaron mediciones periódicas de las rpm
alcanzadas ante cada una de las entradas. Se tomaron las
CONTROL DE VELOCIDAD Y POSICIÓN PARA UN MOTOR DC 4

Tabla Nº1. Datos de las RPM en el tiempo.

DATOS
ESCALONES
20 40 60 80 100 120 140 160 180 200 230 250
PWM PWM PWM PWM PWM PWM PWM PWM PWM PWM PWM PWM
Tiempo
(S)
RPM RPM RPM RPM RPM RPM RPM RPM RPM RPM RPM RPM
0 0 0 0 0 0 0 0 0 0 0 0 0
0.05 4 6 10 9 10 18 15 24 18 17 21 28
0.1 6 13 22 27 32 44 44 56 56 61 71 68
0.15 7 19 31 39 48 61 67 81 86 95 109 125
0.2 9 24 37 49 59 72 82 97 106 117 137 152
0.25 9 28 42 55 66 80 92 108 120 132 154 169
0.3 10 31 45 58 70 85 98 115 128 143 165 180
0.35 10 32 47 60 73 88 102 119 135 150 172 187
0.4 11 34 48 61 75 92 106 123 140 155 177 191
0.45 11 34 49 62 76 92 107 125 143 159 181 195
0.5 11 34 49 63 77 93 109 127 146 162 183 198
0.55 11 35 49 63 77 93 110 128 147 163 185 200
0.6 12 35 49 63 78 94 110 129 148 165 187 200
0.65 11 35 49 63 78 94 111 130 150 166 188 201
0.7 12 35 49 63 78 94 112 130 150 167 188 202
0.75 12 35 49 63 79 94 112 130 151 168 189 203
0.8 12 35 49 63 79 94 112 131 151 169 190 203
0.85 11 35 49 63 78 94 112 131 151 169 190 203
0.9 12 35 49 63 78 94 112 131 151 170 190 203
0.95 12 35 49 63 79 94 112 131 152 169 190 204
1 12 35 50 63 79 94 112 131 152 169 190 204
1.05 12 35 49 63 78 94 112 131 152 170 190 204
1.1 12 35 50 64 78 94 112 132 152 170 191 204
1.15 12 35 49 64 78 95 113 131 152 170 191 204
1.2 12 35 49 64 78 95 112 132 153 170 191 204
1.25 12 35 49 64 78 95 113 132 152 170 191 204
1.3 12 35 49 63 78 95 112 131 153 170 191 204

c. Discretizacion del sistema VI. ESTRATEGIA DE CONTROL


Para discretizar el sistema se utilizo el comando sysd = A continuación se expondrá cual va a ser el
c2d(sys, Ts, 'method')de matlab el cual discretiza procedimiento utilizado para poder controlar cada una de
un sistema o función, en base a un tiempo de muestreo y las variables de nuestro sistema:
una método. En nuestro caso se utilizo un tiempo de
muestreo de 0.05 s y el método Retenedor de Orden Cero. A. Velocidad:
Para el control de la velocidad se tomara la señal (tren de
De lo cual se obtuvo la siguiente función: pulsos) enviada por el encoder y se procesara con el
objetivo de convertirla en rpm, esto se hará en el
0.2218
!(-) = (8)
microcontrolador, una vez convertida esa señal se
(- − 0.7252) comparara con la señal de consigna para determinar si el
sistema está o no a la velocidad deseada, si esta, la acción
d. Respuesta del sistema discretizado ante una entrada de control es cero, sino esta diferencia pasara al controlador
escalón el cual determinara cuanto hay que modificar el PWM para
alcanzar la velocidad deseada. Si el valor actual de la
velocidad del motor es menor que el de la consigna, el
PWM deberá aumentar en caso contrario disminuirá. La
señal de PWM emitida por el microcontrolador llegara al
Driver de Motor ya que a través de este es que finalmente se
variara la velocidad.

B. Posición:
Para el control de la posición se tomara la señal (tren de
pulsos) enviada por el encoder y se procesara con el
objetivo de convertirla en grados, esto se hará en el
microcontrolador, una vez convertida esa señal se compara
con la señal de consigna para determinar si el sistema está o
Figura 7. Respuesta del sistema discretizado ante una entrada escalón. no en la posición deseada, si esta, la acción de control es
cero, sino esta diferencia pasara al controlador el cual
determinara cuanto ha de seguir moviéndose el motor para
alcanzar la posición deseada, manteniendo activo o no el
CONTROL DE VELOCIDAD Y POSICIÓN PARA UN MOTOR DC 5

PWM. En este caso la velocidad del motor se mantendrá C. Implementación del controlador:
constante. Si el valor actual de la posición es positivo el Para poder implementar el controlador en el
motor se moverá en sentido horario en caso contrario anti microcontrolador se hizo necesario valerse de una serie de
horario, esto se conseguirá emitiendo el PWM por otro pin ecuaciones llamadas Ecuaciones en Diferencias las cuales nos
del microcontrolador. permitieron ingresar nuestro controlador a base de sumas,
restas y divisiones teniendo en cuenta los errores anteriores y
VII. DISEÑO DEL CONTROLADOR el actual para poder generar la acción de control [12].
A. Elección del controlador:
Teniendo como referencia que la acción de control viene
Debido a los diferentes tipos de controlador y a las
características que cada uno de ellos puede presentan se ha dada por:
decidido utilizar un controlador tipo PI debido a que un este
controlador nos ayuda a eliminar el error en estado 67 = 6789 + :; <7 + :9 <789 + := <78= (10)
estacionario que se pueda presentar en nuestro sistema
haciendo que la señal de salida del proceso sea igual en Donde <7 es el error actual, <789 y <78= los errores
magnitud a la de referencia, de igual manera nos permite anteriores y :; , :9 y := son constantes que dependen de los
modificar la ganancia de este con el objetivo de poder valores de >1 , >? y >2 .
incrementar o disminuir el MP el cual se ve reflejado en la
cantidad de energía que nuestro sistema debe tomar para Los valores de las constantes vienen dadas por:
alcanzar la estabilidad [10].
@? (?
:; = (1 1 + :; = (1 + (11)
Ecuación de un controlador PI en tiempo continúo. @ @
(2 @ @? (?
/0(') = (1 + (9) :9 = (1 −1 + −2 :9 = −(1 + (2 @ − 2 (12)
' @2 @ @

(1 @? (?
Donde ' es la variable en tiempo continúo y (1 , (2 , son := = := = (13)
las constantes proporcional e integral respectivamente. @ @

B. Diseño del controlador: VIII. INTERFAZ GRAFICA


Para el diseño del controlador se utilizo el toolbox de
matlab llamado SISOTOOL, el cual nos permitió ingresar la La interfaz grafica de nuestro sistema fue realizada
función de nuestra planta y diseñar nuestro controlador mediante el toolbox de matlab GUI, el cual nos permite
agregando polos y ceros en las posiciones necesarias [11]. realizar interfaces graficas de una manera sencilla y rápida,
mediante los botones, cuadros de texto y cuadros de opciones
La ecuación del controlador en tiempo continuo obtenida que ya tiene prediseñados [13].
es:

(0.78792' + 5.628)
5(') = (10)
'

Una vez obtenido nuestro controlador graficamos la


respuesta de nuestro sistema junto al controlador ante una
entrada escalón.

Figura 9. Interfax grafica del sistema.

La interfaz grafica cuenta con un menú desplegable en


donde el usuario puede elegir entre controlar posición o
velocidad. Además cuenta con validación de datos, es decir, si
el usuario se encuentra en el control de velocidad solo puede
ingresar valores entre 10-200 y si ingresa un valor diferente a
los especificados le aparece un mensaje de error. Así mismo
un mensaje de error aparece cuando se intenta mandar un
valor sin haberse seleccionado un controlador.
Figura 8. Respuesta del sistema controlado ante una entrada escalón.
CONTROL DE VELOCIDAD Y POSICIÓN PARA UN MOTOR DC 6

IX. MONTAJE DE LOS CIRCUITOS operaciones para conseguir la variable que en realidad
deseábamos medir, que no era la frecuencia sino los rpm del
El montaje de los circuitos se realizo sobre una placa de motor.
acrílico y cada circuito esta soportada mediante tornillos lo Que se utilizara un controlador PI para realizar el control de
cuales poseen arandelas aislantes para evitar que ocurra un nuestro sistema debido a que este posee todas las ventajas de
corto entre el circuito y los tornillo. Además para conectar las los controladores tipo K e I lo que nos permitiría eliminar el
diferentes placas se utilizo cable UTP trenzado para disminuir error en estado estable, aumentar o disminuir el Kp y
las interferencias por campo magnético, así mismo los disminuir o aumentar el tiempo de elevación según sea
circuitos poseen planos de masa para recoger cualquier señal necesario.
o corriente parasita y posteriormente enviarlas a tierra. Que nuestro sistema controlado posee un tiempo de
elevación de 0.471 S, no posee sobre pico, tiempo de
asentamiento de 0.798S y un error en estado estable de 0.

REFERENCIAS
[1] Encoders, Javier Venegas Requena. Recurso digital, disponible en:
http://www2.elo.utfsm.cl/~elo212/docs/Encoders-jvr-v01.pdf
[2] Encoder Absoluto. Silge Elctronica S.A. Recurso digital, disponible en:
http://control-gray.googlecode.com/files/Encoder%20Absoluto.pdf
[3] Imagen tomada de: Codificador Rotatorio - Autor Desconocido-
Wikipedia- http://es.wikipedia.org/wiki/Codificador_rotatorio
Figura 10. Imagen real e impreso del driver de motor. [4] Imagen tomada de: Encoder Absoluto e incremental - Autor
Desconocido- http://www.picvietnam.com/forum/showthread.php?t=224
[5] 50:1 Metal Gearmotor – Pololu Robotics & Electronics.
http://www.pololu.com/catalog/product/1444
[6] Imagen tomada de: 50:1 Metal Gearmotor – Pololu Robotics &
Electronics. http://www.pololu.com/catalog/product/1444
[7] Imagen tomada de: 50:1 Metal Gearmotor – Pololu Robotics &
Electronics. http://www.pololu.com/catalog/product/1444
[8] Respuesta Dinámica De Sistemas Lineales de Primer Orden. Antonio
Flores. Disponible en:
http://200.13.98.241/~antonio/cursos/control/notas/dynamics/1order.pdf
[9] System Identification Toolbox. MathWorks.
http://www.mathworks.com/products/sysid/
[10] Recurso Digital: Universidad de San Carlos de Guatemala. Diseño de
Figura 11. Imagen superior del montaje del sistema. Controladores PID en Tiempo Discreto, y Análisis De Respuesta
Utilizando Herramientas Computacionales. S. Toledo. Disponible en:
http://biblioteca.usac.edu.gt/tesis/08/08_0202_EO.pdf
[11] Interactively design and tune SISO feedback loops. MathWorks.
http://www.mathworks.com/help/toolbox/control/ref/sisotool.html
[12] Recurso Digital: Implementación digital de controladores PID.
Departamento de Tecnologia – Universidad de Jaume. Roberto Sanchiz.
Disponible en:
http://www.tec.uji.es/asignatura/dir_asignaturas/3/67/Tema1.pdf
[13] Graphical User Interfaces. MathWorks.
http://www.mathworks.com/discovery/matlab-gui.html

Figura 12. Imagen superior-lateral del montaje del sistema.


BIOGRAFÍAS

X. CONCLUSIONES Laura Vanessa Arenas Montaño, estudiante de


Ingeniería Mecatrónica Universidad Autónoma
del Caribe, Investigador del grupo GIIM en la
Para muchas aplicaciones industriales se utilizan una gran Facultad de ingeniería de la Universidad
Autónoma del Caribe, Técnico en Diseño
cantidad de Motores DC, lo cuales deben cumplir con ciertos Gráfico y Web. Barranquilla, Atlántico. (Email:
parámetros que variaran dependiendo de los requerimientos larenas0307@hotmail.com), Cel.: 3004523524
del proceso. Dichos parámetros pueden ser la posición y Cód. 250910298
velocidad actual del Motor, por lo que se es necesario e
importante realizar la implementación de un control que nos Arturo José Castilla De Cuba, estudiante de
permita controlar dichas variables. Ingeniería Mecatrónica Universidad Autónoma
Que para realizar el censado de la posición y la velocidad se del Caribe, Investigador del grupo GIIM en la
Facultad de ingeniería de la Universidad
decidió utilizar un encoder incremental de cuadratura debido a Autónoma del Caribe, Técnico en Análisis y
que nos provee dos trenes de pulsos desfasados 90º que nos Programación de Computadores. Barranquilla,
permite determinar el sentido de giro del motor. Atlántico. (Email: arturcas_66@hotmail.com)
Para poder utilizar el tren de pulsos generados por el Cel.: 3005000039 Cód. 251016012
encoder se hizo necesario realizar una serie de conversiones y
CONTROL DE VELOCIDAD Y POSICIÓN PARA UN MOTOR DC 7

Michael Lancheros Sepúlveda. Estudiante de


Ingeniería Mecatrónica Universidad Autónoma
del Caribe. Cursos Sena (Electrónica Básica,
Electrónica Avanzada y CNC) (Email
maclan92@hotmail.com), Cel.: 301 7778838.
Cód. 250910226

Danilo Alfonso Rojas Méndez, estudiante de


Ingeniería Mecatrónica Universidad Autónoma
del Caribe, Barranquilla, Atlántico. Curso Sena
Virtual (AutoCAD 2D y 3D, PLC I e
Identificación y análisis de circuitos integrados
y compuertas lógicas) Cursos Sena convenio
UAC (Curso básico de las TIC para la docencia
en ambientes virtuales) (Email:
darm940@hotmail.com) Cel.: 3002443554
Cód. 250910028

También podría gustarte