Sie sind auf Seite 1von 12

LABORATORIO PRIMER CORTE.

LABORATORIO, INTELIGENCIA ARTIFICIAL 2018-II.


UNIVERSIDAD MILITAR NUEVA GRANADA

Control velocidad y ángulo de un carro por PID, y Lógica Fuzzy.


[Laura Marcela Bautista1, Nicolás Daniel Ramirez2, Edgar Fabián Guacheta3].
U [18022911, 18026522, 18025233]@unimilitar.edu.co

INTRODUCCIÓN:
 Simular y aplicar el controlador difuso sobre la planta
En el desarrollo de estas prácticas se implementaron diferentes virtual, de forma que el robot simulado pueda moverse
tipos de controles a un carro. Para aplicarlos en el manejo de continuamente a través de diferentes posiciones y
ángulo y posición, inicialmente se realiza por medio de orientaciones (mínimo 5) dentro de un plano 2D.
simulación en Matlab, y posteriormente implementado en el
microcontrolador, STM para este caso. Se realizaron estas  Los controladores clásico y difuso diseñados en las
pruebas para que el carro se mueva por una trayectoria prácticas anteriores se deben implementar DENTRO un
indicada por la GUI de Matlab creada para este desarrollo. microcontrolador, sistema embebido o STM, el cual
debe comunicarse con un PC para realizar la
1. PROCEDIMIENTO: supervisión del proceso, (se puede hacer uso de la
herramienta XFuzzy).
 Inicialmente se debe diseñar y modelar adecuadamente
una planta virtual para aplicar estrategias de control. Se  Comparar y analizar los resultados obtenidos con los
considerará el robot diseñado en el curso de robótica dos controladores.
(con el manipulador ensamblado) como la planta para
la práctica. Primero se debe implementar y simular la 2. RESULTADOS:
planta (Diseño de la interfaz gráfica) en MATLAB o en
otro software. Seguidamente se debe construir el robot  DISEÑO:
este debe contar con un control de velocidad angular
(controles de bajo nivel) para cada rueda, la sensórica - Se realizó un diseño a partir de los motores que
necesaria para implementar el control (posiciones implementamos en el carro, el manipulador que
lineales y angulares, velocidades angulares de las habíamos diseñado con anterioridad y el espacio
ruedas, seleccionar y acondicionar la sensórica con los necesario para la electrónica y el control del carro.
controles de bajo nivel), la estructura debe ser sólida,
robusta y con materiales adecuados a un robot. Motores y sensores: Para evitar problemas con la lectura de los
sensores se implementaron motores reductores con encoders
 Sobre la planta virtual se debe diseñar, acoplar y incluidos que permiten por medio de trenes de pulsos determinar
simular un controlador clásico de forma que el robot a parte de la velocidad y la posición del motor, la dirección de
simulado pueda moverse continuamente a través de giro del mismo.
diferentes posiciones y orientaciones (mínimo 5) dentro
de un plano 2D. (Control de posición lineal y angular, Características del motor:
“x,y,theta”).
Motor: GM25-13CPR
 Usando el toolbox de lógica difusa diseñar un Pulsos por vuelta: 13
controlador para la planta virtual modelada empleando Par: 1.95 Kg.cm
el modelo de inferencia de Mamdani. Potencia: 2.6 W
__________________________________________________________________________________________
1
LABORATORIO PRIMER CORTE.
LABORATORIO, INTELIGENCIA ARTIFICIAL 2018-II.
UNIVERSIDAD MILITAR NUEVA GRANADA

Peso: 99g Alimentación y electrónica: Se tuvo en cuenta que el sistema


Corriente Máx: 3.5 A necesitaba de dos tipos de alimentación una para los motores y
Velocidad en vacio: 160 RPM otra para el micro, por lo cual se dispuso el espacio para ambas,
Voltaje Nominal: 12 VDC después de la alimentación viene la electrónica del sistema, se
Corriente Nominal: 100mA optó por un módulo Puente H que permitiese la inversión de giro
y el control de voltaje a recibir por los motores.

FIGURA 3. ESPACIO PARA LA ALIMENTACIÓN Y ELECTRÓNICA DEL


CARRO
.
Características del puente H:
FIGURA 1. MOTOR REDUCTOR CON ENCODER
Modulo: L298n/Driver de Control.

Manipulador: Se usó un manipulador de tres grados de libertad, Capacidad en Corriente: 2 A constantes, y 4 A en picos.
se diseñó a partir de las condiciones que por la longitud de los
Voltaje de alimentación: 5VDC.
eslabones el efector final pueda llegar al piso sin modificar la
estructura del carro. Potencia de salida: 25 W.

Corriente de control: 36 m A.

Peso: 30g

FIGURA 2. MANIPULADOR MONTADO EN EL MÓVIL. FIGURA 4. DRIVER PUENTE H

__________________________________________________________________________________________
2
LABORATORIO PRIMER CORTE.
LABORATORIO, INTELIGENCIA ARTIFICIAL 2018-II.
UNIVERSIDAD MILITAR NUEVA GRANADA

Diseño Final: 𝑣𝑅 = 𝑟 ∗ 𝜔𝑅
𝑣𝐿 = 𝑟 ∗ 𝜔𝐿
Y se obtiene que:
𝑣𝑅 + 𝑣𝐿 𝜔𝑅 + 𝜔𝐿
𝑣= 𝜔= ∗𝑟
2 𝑙

𝑣 = 𝐾𝑉 √(𝑥 − 𝑥𝑑 )2 + (𝑦 − 𝑦𝑑 )2

CINEMATICA DIRECTA:

FIGURA 5. DISEÑO FINAL.


 CONTROLES: 𝑟 ∗ 𝑐𝑜𝑠𝜃 𝑟 ∗ 𝑐𝑜𝑠𝜃
𝑥̇ 2 2
𝑟 ∗ 𝑠𝑒𝑛𝜃 𝑟 ∗ 𝑠𝑒𝑛𝜃 𝜔𝑅
a. Control de bajo nivel: [𝑦̇ ] = [𝜔 ]
2 2 𝐿
Con ayuda de herramientas matemáticas e implementación 𝜃̇ 𝑟 𝑟
[ −
del control en la robótica móvil, se obtienen modelos para 𝑙 𝑙 ]
las cinemáticas de este modelo. 𝑟
𝑥̇ = (𝜔𝑅 + 𝜔𝐿 )𝑐𝑜𝑠(𝜃)
2
𝑟
𝑦̇ = (𝜔𝑅 + 𝜔𝐿 )𝑠𝑒𝑛(𝜃)
2

𝑥̇ = 𝑣 ∗ 𝑐𝑜𝑠(𝜃)
𝑦̇ = 𝑣 ∗ 𝑠𝑒𝑛(𝜃)

𝜃̇ = 𝜔
Velocidad se define como:
__________________________________________________________________________________________
3
LABORATORIO PRIMER CORTE.
LABORATORIO, INTELIGENCIA ARTIFICIAL 2018-II.
UNIVERSIDAD MILITAR NUEVA GRANADA

CINEMATICA INVERSA:

𝐴−1 = (𝐴𝑇 𝑋 𝐴)−1 𝐴𝑇


cos 𝜃 sen 𝜃 𝑙
𝑥̇
𝜔𝑅
[𝜔 ] = [ 𝑟 𝑟 𝑟 ] [𝑦̇ ]
𝐿 cos 𝜃 sen 𝜃 𝑙
− 𝜃̇
𝑟 𝑟 𝑟

ERROR:

- Como resultado se obtiene, si le damos de condiciones


3 en x, y 3 en y. b. Control Tipo: PID.

- Caracterización de los motores:

Se realizó la caracterización de los motores desde el


microcontrolador teniendo como referencia el pwm que ha sido
acondicionada para que su variación haga referencia a la señal
de salida obtenida por la STM.

Los valores de salida de esta planta en este caso son las


velocidades angulares de cada una de las llantas.

PWM Wr PWM Wl
0 0 0 0
10 0 10 0
20 0 20 0
30 5,76 30 5,76
40 12,98 40 13
50 20,19 50 20,2
60 27,4 60 27,4
70 34,62 70 34,6
80 41,82 80 41,8
__________________________________________________________________________________________
4
LABORATORIO PRIMER CORTE.
LABORATORIO, INTELIGENCIA ARTIFICIAL 2018-II.
UNIVERSIDAD MILITAR NUEVA GRANADA

90 50 90 48,5
664.34
100 57,69 100 56,3 𝐹(𝑠) =
𝑠2 + 5.1𝑠 + 1078
110 65 110 62,5
120 73,55 120 70,1 Con ayuda de Matlab se halla un control tipo PID. Donde se
130 80,2 130 77,1 obtienen las siguientes constantes.
140 88,4 140 84,1
150 95,8 150 91,5
160 104 160 98,5
170 111,5 170 106
180 118,5 180 113
190 127,8 190 120
200 133 200 126

Wr
150

100

50 Con estos parámetros de control:

0
0 50 100 150 200 250

Simulink:
Wl
150

100

50

0
0 50 100 150 200

- Respuesta del Sistema.


- Con ayuda de Matlab obtenemos la función que
describe cada uno de los motores. Y con ella hallamos
el control.

- FUNCION DE LOS MOTORES:

__________________________________________________________________________________________
5
LABORATORIO PRIMER CORTE.
LABORATORIO, INTELIGENCIA ARTIFICIAL 2018-II.
UNIVERSIDAD MILITAR NUEVA GRANADA

ingresados por el usuario que son:

El número de puntos que deberá seguir el carro, la velocidad y el


ángulo que deberá controlar al final de la trayectoria, con
respecto al inicial.

- También con dos botones que direccionan a dos


simulaciones diferentes encargadas del control, la
realizada por el PID, y la realizada por medio del bloque
de Fuzzy.

En la siguiente imagen se muestra cómo funciona la interfaz


Se implementa de la siguiente manera en nuestro control por según los requerimientos de la clase donde ingresan 5 puntos y
bloques para el Simulink y la GUI. por medio del control PID implementado él va a recorrer los
diferentes puntos.

Para este ejemplo marcamos lo más aproximado a los siguientes


puntos:

𝒙 𝒚
100 100
200 200
300 300
400 400
500 500
- Para poder realizar mejor el control y tomar los valores
deseados por el usuario se crea una interfaz gráfica que
con ayuda del Simulink, realiza el control mediante los
diagramas de bloques en la simulación tomando los
nuevos valores como los ingresados por el cursor
dirigido por el usuario.

Al hacer la interacción con la GUI, Simulink realiza el control


para posteriormente enviar los datos a Matlab y poderlo
visualizar en la GUI.

- La interfaz cuenta con tres parámetros que deben ser

__________________________________________________________________________________________
6
LABORATORIO PRIMER CORTE.
LABORATORIO, INTELIGENCIA ARTIFICIAL 2018-II.
UNIVERSIDAD MILITAR NUEVA GRANADA

- De esta forma nos muestra el control realizado por


Simulink de inicio al fin de los puntos.
Se puede comprobar que el control funciona por medio de la
simulación, se coloca un scope a la salida de cada una de las
variables para comprobar que llega a la referencia final, que para
efectos de visualización en este ejemplo será 500 en x y en y.

- Respuesta del sistema para la variable X.

Para la interfaz necesitamos que la visualización sea de manera


más dinámica con el usuario es por eso que se implementó un
triángulo que para efectos visuales será la posición del carro al
llegar a cada uno de los puntos ingresados por el cursor
mencionados anteriormente, visualizando, así como aparece en - Respuesta del sistema para la variable Y.
la siguiente Figura.

__________________________________________________________________________________________
7
LABORATORIO PRIMER CORTE.
LABORATORIO, INTELIGENCIA ARTIFICIAL 2018-II.
UNIVERSIDAD MILITAR NUEVA GRANADA

Del mismo modo se puede visualizar que el error se haga 0, ya y tres funciones de membresía, declaradas como, Paso,
que al llegar a la referencia no hay error, tanto para la variable llego y Falta. Referenciando la llegada al punto casi de
X como Y. error 0, que es lo deseado en la práctica.

c. Control Tipo: Fuzzy

Para realizar pruebas y simulación de Control por lógica difusa, - Para el error de distancia del punto a la referencia
se tiene una herramienta de Matlab que permite crear entradas, tomamos los mismos valores de las membresías
salidas, funciones de membresía y reglas, cuantas se deseen para anteriores con la diferencia que estas se delimitan como
lograr el control. -180 a 180.

- Para este necesitamos 3 variables de entrada que van a


ser 3 errores.

𝟏. 𝐸𝑑 → 𝐸𝑟𝑟𝑜𝑟 𝑑𝑒 𝑑𝑖𝑠𝑡𝑎𝑛𝑐𝑖𝑎 𝑎𝑙 𝑝𝑢𝑛𝑡𝑜 𝑑𝑒 𝑟𝑒𝑓𝑒𝑟𝑒𝑛𝑐𝑖𝑎.


𝟐. 𝐸𝜃 → 𝐸𝑟𝑟𝑜𝑟 𝑑𝑒 á𝑛𝑔𝑢𝑙𝑜 𝑎𝑙 𝑝𝑢𝑛𝑡𝑜 𝑑𝑒 𝑟𝑒𝑓𝑒𝑟𝑒𝑛𝑐𝑖𝑎
𝟑. 𝐸𝛼 → 𝐸𝑟𝑟𝑜𝑟 𝑑𝑒 á𝑛𝑔𝑢𝑙𝑜 𝑝𝑢𝑛𝑡𝑜 𝑑𝑒 𝑟𝑒𝑓𝑒𝑟𝑒𝑛𝑐𝑖𝑎 𝐹𝑖𝑛𝑎𝑙

- Por ultimo de la misma manera al anterior ángulo se


delimita el error del ángulo de referencia final. Y las
mismas funciones de membresía para su declaración.

- Para el error de distancia se definen los parámetros


entorno al valor máximo que le dimos a nuestro diseño,

__________________________________________________________________________________________
8
LABORATORIO PRIMER CORTE.
LABORATORIO, INTELIGENCIA ARTIFICIAL 2018-II.
UNIVERSIDAD MILITAR NUEVA GRANADA

- Para la salida también tenemos 3 funciones de - De la misma forma se definieron las reglas para el
membresía, en cada una de las salidas que hacen control de la siguiente forma:
referencia a la velocidad angular de cada una de las
llantas, como estamos realizando un control de posición
angular también se decidió usar el carro en reversa, por
eso las funciones de membresía para esta son reversa
detenerse y acelerar que en nuestro caso está definido
como 1 y 2.

WR

Posteriormente se implementa el algoritmo .fis al bloque Fuzzy


de la planta, que hará el control del sistema a partir de los
WL

__________________________________________________________________________________________
9
LABORATORIO PRIMER CORTE.
LABORATORIO, INTELIGENCIA ARTIFICIAL 2018-II.
UNIVERSIDAD MILITAR NUEVA GRANADA

__________________________________________________________________________________________
10
LABORATORIO PRIMER CORTE.
LABORATORIO, INTELIGENCIA ARTIFICIAL 2018-II.
UNIVERSIDAD MILITAR NUEVA GRANADA

3. CONCLUSIONES:

4. REFERENCIAS
[1] B. Kuo, Sistemas de control automático, Prentice Hall, 1996.

__________________________________________________________________________________________
11
LABORATORIO PRIMER CORTE.
LABORATORIO, INTELIGENCIA ARTIFICIAL 2018-II.
UNIVERSIDAD MILITAR NUEVA GRANADA

[2] Q. INC, Instructor Workbook: SRV02 Base Unit Experiment


for Matlab, 2011.

__________________________________________________________________________________________
12

Das könnte Ihnen auch gefallen