Beruflich Dokumente
Kultur Dokumente
Alumnos:
Ing. José Alejandro Dena Ruiz. M05130122
Ing. José Fernando Hernández Castañeda. M06130222
Ing. Eduardo Cruz Quintero. M07130063
Ing. Pedro Zúñiga Flores. M07131483
2. OBJETIVO 1
3. DESARROLLO 2
3.1. Diseño de la Planta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
3.2. Modelo Matemático . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
3.2.1. Ecuación del Péndulo . . . . . . . . . . . . . . . . . . . . . . . . . . 4
3.2.2. Identicación de Parámetros Desconocidos . . . . . . . . . . . . . . 4
3.3. Instrumentación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.3.1. Etapa de Potencia . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.3.2. Tarjeta Adquisitora de Datos . . . . . . . . . . . . . . . . . . . . . 8
3.4. Diseño del Controlador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.5. Implementación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
4. RESULTADOS 16
5. CONCLUSIONES 18
6. TEXTOS RECOMENDADOS 19
7. ANEXOS 20
Índice de guras
1. Articulación motriz pendular . . . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Péndulo construido . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
3. Comunicación física y funcional entre Matlab y péndulo. . . . . . . . . . . 8
4. Tarjeta National Instruments NI PCI-6551 . . . . . . . . . . . . . . . . . . 9
5. Tablilla con pines de salida . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
6. Sistema lineal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
7. Gráca del error . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
8. Diagrama a bloques del sistema . . . . . . . . . . . . . . . . . . . . . . . . 13
9. Protección de posición angular para el sistema . . . . . . . . . . . . . . . . 14
10. Resultados de error de posición, posición, velocidad y par aplicado en 45◦ . 16
11. Resultados de error de posición, posición, velocidad y par aplicado en 60◦ . 16
12. Resultados de error de posición, posición, velocidad y par aplicado en 90◦ . 17
13. Pines de salida . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
14. Diseño del circuito eléctrico de la interfaz (parte 1) . . . . . . . . . . . . . 22
15. Diseño del circuito eléctrico de la interfaz (parte 2) . . . . . . . . . . . . . 23
16. Diagrama a bloques de la ley de control . . . . . . . . . . . . . . . . . . . . 24
17. Diagrama a bloques de la planta del péndulo . . . . . . . . . . . . . . . . . 25
18. Bloque de control de corriente (Ctrl_PID) . . . . . . . . . . . . . . . . . . 25
19. Bloque para obtener PWM, sentido de giro y corriente del motor . . . . . . 26
Índice de tablas
1. Parámetros del péndulo . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Componentes electrónicos usados en la interfaz . . . . . . . . . . . . . . . . 7
3. Aproximaciones de las pruebas para la constante ke . . . . . . . . . . . . . 21
2 OBJETIVO
1. INTRODUCCIÓN
En el presente documento, se realiza la implementación de un controlador mediante la
técnica de linealización por realimentación exacta de estados a una planta no lineal, que
en este caso es el péndulo con fricción.
Comenzaremos por el diseño y modelado matemático del péndulo lo cual nos ayuda a
tener un mejor conocimiento de la planta. Debido a que la planta posee parámetros que
no conocemos, se realizan pruebas experimentales para obtener valores aproximados a los
valores reales.
2. OBJETIVO
Diseñar un controlador no lineal de linealización por realimentación exacta de estados
para la regulación de posición del péndulo y aplicarlo mediante Matlab.
1
3 DESARROLLO
3. DESARROLLO
En esta sección, se especica cada uno de los elementos que nos ayudan a la imple-
mentación del péndulo y del controlador no lineal, desde el diseño de la planta hasta la
implementación del sistema.
2
3.1 Diseño de la Planta 3 DESARROLLO
Debido a que el motor es pesado, se mando a diseñar una base la cual nos permite
tener al motor sobre cualquier supercie plana y tenerlo jo para realizar pruebas con él,
siendo así más fácil moverlo de un lugar a otro. Ya jado el motor en la base, se acopla el
vástago que es de 26 cm. Para completar la construcción del péndulo, se mando diseñar
una masa que fuera en la punta del vástago, dónde el valor de su masa se encuentra citada
en la tabla 1. A la masa se le realizo también un barreno para que entrara el vástago y así
poder tener un péndulo completo. La construcción nal se puede apreciar en la gura 2.
3
3.2 Modelo Matemático 3 DESARROLLO
En esta sección, se cita el modelo no lineal del péndulo. Además, obtendremos los valo-
res de los parámetros desconocidos de nuestra planta. Se diseña el controlador a aplicar a la
planta no lineal y se implementa en Matlab. Todo esto se hace en base a una metodología
que se menciona a continuación.
Para que nuestra ecuación este completa, recurrimos a la misma referencia [6], problema
14, página 57, en la cual se nos da la ecuación del péndulo con fricción, la cual es la
siguiente:
ml2 q̈ + f q̇ + mgl sin q = τ (2)
La ecuación 2, representa la ecuación del péndulo con fricción que utilizaremos para
nuestra planta.
4
3.3 Instrumentación 3 DESARROLLO
péndulo más pequeño con una longitud de 11.3 cm y una masa en su extremo de 220 g .
En base a la siguiente ecuación:
τ = ke i(t) (3)
se despeja la constante ke , la corriente que circula por el motor es conocida por medio
de un sensor de corriente conectado en serie con el motor.
3.3. Instrumentación
Dentro de esta sección, se desarrollan los elementos que fueron necesarios para poder
establecer la comunicación entre la planta y el software de Matlab. Existen dos partes que
fueron esenciales en este trabajo; la primera de ellas es una etapa de potencia la cual nos
ayuda a poder tener control sobre el motor, y la segunda una tarjeta adquisitora la que se
encarga de mostrarnos los datos en Matlab.
5
3.3 Instrumentación 3 DESARROLLO
El diseño fue obtenido por la experiencia obtenida durante la ingeniería y fue evaluado
por separado antes de unir todos los componentes.
El circuito eléctrico cuenta con dos optoacopladores para separar las señales de control
provenientes de la tarjeta adquisitora de datos National Instruments , y que accionan res-
pectivamente el sentido de giro y el PWM del motor. Las señales de alta y baja tensión
están completamente aisladas entre sí. El circuito cuenta con un sensor de corriente de efec-
to Hall conectado en serie con el motor, el cual entrega una señal analógica proporcional
a la corriente que circula por el motor.
El diseño electrónico se puede ver en los anexos, en las guras 14 y 15. Son dos guras
que unidas forman un solo diagrama, en las cuales se utilizan variables que son descritas
en la tabla 2, así como también la cantidad de elementos utilizados para la comunicación
física y funcional entre el péndulo y Matlab.
Utilizamos una fuente bipolar para la alimentación del motor, la cual se ajusta para
que no nos entregue una cantidad de corriente mayor a la que nos pide el motor. El motor
soporta una cantidad de corriente de 2 A, y para que no llegue a su límite la ajustamos
a 1.5 A. El voltaje lo ajustamos a 22 V . Al nal, la interfaz resultante se muestra en la
gura 3.
6
3.3 Instrumentación 3 DESARROLLO
Los bornes de conexión de la parte superior izquierda de la gura 3, tiene las leyendas
A, B, Vcc , GN D, P OT (+−), IN, M (2). Todos estos bornes hacen referencia a todo lo que
llega del motor y del encoder, siendo P OT e IN los bornes que no se utilizan. Los dos
primeros bornes A, B son las señales que nos entrega el encoder del motor del canal A y
B y los bornes Vcc y GN D son la alimentación para el encoder. Los dos bornes de M son
por medio de los cuales la el motor es alimentado.
Los bornes de la parte superior de lado izquierdo en la gura 3, tienen las leyendas
A, B, Vcc , GN D, AM P, P OT, GIRO, P W M . De estos bornes, la única que no se utiliza es
7
3.3 Instrumentación 3 DESARROLLO
debido a que tienen la señal de los canales A y B. Los bornes Vcc y GN D vienen dirigidos
desde la tarjeta, los cuales arrojan una corriente de 5 v . El borne de AM P es dirigido
hacia la tarjeta National Instruments PCI 6251 , llevando una señal analógica entregada
por el sensor de corriente y poder visualizar su estado en Matlab. El borne de GIRO es
una salida digital que entrega la tarjeta National Instruments PCI 6251 para hacer girar
a la echa del motor en un sentido o en otro. Por último, el borne de P W M es una señal
digital enviada por la tarjeta con diferente ancho de pulso, según el par que necesitemos.
Para saber en que sentido está girando el motor, se acoplaron dos leds; uno verde y
uno rojo que son representados por D6, D5 en la gura 14 de los anexos.
Dicha tarjeta cuenta con 24E/S digitales, 2 salidas analógicas de 16 bits y 2 contadores
8
3.3 Instrumentación 3 DESARROLLO
de 32 bits, entre las características más importantes. Su comunicación con Matlab, nos
permite comunicarnos directamente con la etapa de potencia y ésta a su vez se comunica
con el péndulo. A continuación, explicaremos la manera es que se utilizan los puertos de
la tarjeta y hacia dónde van conectados con la tablilla diseñada en la subsección anterior,
haciendo referencia a los anexos en la gura 13.
Por medio del puerto 52 (P0.0) obtenemos la señal de salida del PWM. El puerto
17 (P0.1) es el utilizado para determinar el sentido de giro del motor. Las dos salidas
anteriores son digitales. Luego, el encoder envía sus pulsos mediante el canal A y canal
B, lo cuales llegan a los puertos 42 y 46, respectivamente. Lo anterior lo obtuvimos de
[4], en el capítulo 7 página 31. Ahora, para el sensor de corriente tenemos que utilizar
una entrada analógica, por lo que se utiliza el puerto 68 (AI 0). Por último, necesitamos
alimentar el encoder y el sensor de corriente, por lo que utilizamos el puerto 14 (+5 v) y
el puerto 9 (D GND) que es el común a todos los puertos que utilizamos, tanto analógicos
como digitales.
9
3.4 Diseño del Controlador 3 DESARROLLO
−1 g 1
Lg Lf h(x) = , L2f h(x) = sin(qd − x1) + 2 fv x2
ml2 l ml
10
3.4 Diseño del Controlador 3 DESARROLLO
Así, se puede observar que el sistema tiene un grado relativo 2 (es decir igual a n).
Por consiguiente, el sistema puede ser transformado en un sistema lineal y controlable por
medio del control en realimentación que utiliza la siguiente formula:
1
u= n−1 (−Lnf h(x) + v) (7)
Lg Lf h(x)
Para hallar los valores de las ganancias k1 y k2 para las cuales el sistema lineal es
estable y posea una respuesta deseada, se procede a identicar el polinomio característico
de la matriz principal del sistema lineal (10) con la siguiente ecuación
λ2 + k2 λ − k1 = 0 (12)
11
3.4 Diseño del Controlador 3 DESARROLLO
12
3.5 Implementación 3 DESARROLLO
Observando la respuesta de la gráca del error de posición se concluye que las ganancias
de k2 = 10 y k1 = −25 son sucientes para obtener una buena respuesta sin oscilaciones.
3.5. Implementación
Una vez obtenidos los modelos matemáticos, el diseño físico del péndulo y la interfaz
así como la instalación de la tarjeta, ahora procedemos a plasmar mediante Matlab todo
lo anterior. Para comenzar mostraremos el sistema del péndulo con el controlador. Esta
representación aparece en la gura 8.
13
3.5 Implementación 3 DESARROLLO
contiene un diagrama a bloques que aparece en los anexos gura 16. Ese diagrama repre-
senta la ecuación 8, con el cual linealizamos la planta. Cabe mencionar que como el motor
presenta diferentes fricciones en sentido horario y sentido antihorario, la fricción viscosa
fue ajustada empíricamente a .2 Nm/rad*s y .12 .2 Nm/rad*s respectivamente.
14
3.5 Implementación 3 DESARROLLO
indica que el sentido de la corriente es positivo y para valores en el rango de 0-2.5 V nos
indica que el sentido de la corriente es negativo. Además cabe mencionar que el sensor de
corriente posee una sensibilidad de 1V /A. La constante de 2.5 es restada de la lectura de
la señal que entrega el sensor de corriente para obtener lecturas reales referidas a cero y no
a 2.5 V que es el voltaje de referencia al cual esta calibrado el sensor cuando la corriente
medida es cero. Ctrl_PID y Actuador son mostradas en los anexos por las guras 18 y
19, respectivamente.
Volviendo a la gura 17, en la parte inferior se tiene la entrada del encoder la cual
nos arroja el valor de la posición angular del péndulo y al derivar esta posición angular
obtenemos la velocidad angular. Podemos apreciar que en la gura 17, tenemos la constante
ke , cuyo valor fue calculado en sección previas. También tenemos la constante de reducción
del sistema de engranajes, dada en la tabla 1. El sistema maneja radianes para todos sus
cálculos, pero nosotros mostraremos grados en los resultados.
15
4 RESULTADOS
4. RESULTADOS
Los resultados obtenidos para diferentes pruebas de control de posición son mostrados
en las guras 10, 11 y 12 para 45◦ , 60◦ y 90◦ , respectivamente.
Figura 10: Resultados de error de posición, posición, velocidad y par aplicado en 45◦
Figura 11: Resultados de error de posición, posición, velocidad y par aplicado en 60◦
16
4 RESULTADOS
Figura 12: Resultados de error de posición, posición, velocidad y par aplicado en 90◦
En las 3 guras 10, 11 y 12, de arriba hacia abajo y de izquierda a derecha, son
mostrados los errores de posición en grados, la posición del péndulo en grados, la velocidad
en grados por segundo y el par en Newton-metro. Analizando la gura 10, podemos apreciar
un error de 2 grados en la posición, la cual llega aproximadamente a 43 grados, mientras
que la velocidad es de 110 grados por segundo y el par va de 0.5 Nm a 0.66 Nm teniendo
una caída aproximadamente de 0.37 Nm.
En la gura 11, la posición deseada fue de 60 grados y la que se alcanzó fue 60 grados,
teniendo un error de cero en aproximadamente 1 segundo. La velocidad alcanzada para
llegar a esa posición fue de 140 grados por segundo, mientras que el par alcanzó 0.81 Nm.
En la última prueba, la posición deseada fue de 90◦ , lo cual indica que el motor llegará
a su máximo valor. El error de posición esta milésimas por debajo del cero y por lo tanto la
posición alcanzada fue de 90.028 grados. La velocidad alcanzó los 187 grados por segundo
y el par entregado alcanzó un máximo de 0.92 Nm.
17
5 CONCLUSIONES
5. CONCLUSIONES
Durante el desarrollo del control no lineal del péndulo, por medio de linealización por
realimentación exacta de estados, se pudo comprender que es conveniente conocer en su
totalidad el modelo matemático del sistema y sus parámetros.
Para nuestro caso, no se tuvo una respuesta exacta del control de posición debido a
que se desconocen los parámetros del motor, la constante de par de eléctrico del motor,
fue estimada a base de pruebas y simulaciones en el laboratorio, dichos resultados vienen
dicha sección.
18
REFERENCIAS
6. TEXTOS RECOMENDADOS
Para el desarrollo del trabajo, nos basamos en los siguientes textos:
Referencias
[1] Dr. Alejandro Dzul López, Control No Lineal , Segundo Semestre de 2012
[6] R. Kelly,V. Santibáñez and A. Loria, Control of Robot Manipulators in Joint Space ,
2005
19
7 ANEXOS
7. ANEXOS
20
7 ANEXOS
21
7 ANEXOS
22
7 ANEXOS
23
7 ANEXOS
24
7 ANEXOS
25
7 ANEXOS
Figura 19: Bloque para obtener PWM, sentido de giro y corriente del motor
26