Diseño, análisis e implementación de controlador para un ...

34
1 PROYECTO DE GRADO Presentado a: LA UNIVERSIDAD DE LOS ANDES FACULTAD DE INGENIERIA DEPARTAMENTO DE INGENIERIA ELECTRICA Y ELECTRONICA Y DEPARTAMENTO DE INGENIERIA MECANICA Para obtener el titulo INGENIERO ELECTRONICO E INGENIERO MECANICO Por Andrés Felipe Otero Salamanca Diseño, análisis e implementación de controlador para un péndulo invertido tipo segway. - Asesor: Fredy Segura PhD, Profesor asociado, Universidad de Los Andes - Asesor: Carlos Rodriguez PhD, Profesor asociado, Universidad de Los Andes

Transcript of Diseño, análisis e implementación de controlador para un ...

Page 1: Diseño, análisis e implementación de controlador para un ...

1

PROYECTO DE GRADO

Presentado a:

LA UNIVERSIDAD DE LOS ANDES

FACULTAD DE INGENIERIA

DEPARTAMENTO DE INGENIERIA ELECTRICA Y ELECTRONICA

Y

DEPARTAMENTO DE INGENIERIA MECANICA

Para obtener el titulo

INGENIERO ELECTRONICO

E

INGENIERO MECANICO

Por

Andrés Felipe Otero Salamanca

Diseño, análisis e implementación de controlador para un

péndulo invertido tipo segway.

- Asesor: Fredy Segura PhD, Profesor asociado, Universidad de Los Andes

- Asesor: Carlos Rodriguez PhD, Profesor asociado, Universidad de Los Andes

Page 2: Diseño, análisis e implementación de controlador para un ...

2

Contenido 1) Introducción ................................................................................................................................ 3

2) Objetivos ..................................................................................................................................... 5

a. Objetivo general ......................................................................................................................... 5

b. Objetivos específicos ................................................................................................................... 5

3) Estructura mecánica .................................................................................................................... 5

4) Diseño estructura ............................................................................................................................ 6

a. Modelo a escala ...................................................................................................................... 6

a. Componentes: ..................................................................................................................... 6

5) Sensores ...................................................................................................................................... 7

a. Obtención del ángulo .............................................................................................................. 7

a. Resultado de las librerías .................................................................................................... 8

b. Obtención de posición y velocidad ......................................................................................... 9

6) Modelamiento del sistema ............................................................................................................. 9

a. Ecuaciones de estado .................................................................................................................. 9

b. Obtención numérica de los parámetros del modelo ............................................................ 10

c. Estimación de parámetros Matlab ........................................................................................ 12

7)Diseño del controlador .................................................................................................................. 14

a. PID ......................................................................................................................................... 14

b. LQR ........................................................................................................................................ 15

c. PID en cascada ....................................................................................................................... 17

d. Controlador de velocidad ...................................................................................................... 18

8) Pruebas de los controladores ....................................................................................................... 19

a. Controlador posición ................................................................................................................. 19

b. Controlador ángulo ............................................................................................................... 21

9) Modelo real ................................................................................................................................... 22

a. Componentes electrónicos ................................................................................................... 22

b. Diseño de la estructura ......................................................................................................... 23

c. Cálculos fuerza de tracción y pendiente máxima de subida ................................................. 24

10) Conclusiones ............................................................................................................................... 25

Page 3: Diseño, análisis e implementación de controlador para un ...

3

11) Referencias .................................................................................................................................. 25

12) Anexo .......................................................................................................................................... 27

1) Introducción

El péndulo invertido es un sistema único el cual es de mucho interés debido a la inestabilidad natural

del sistema. La idea de implementar un robot con estas características ha surgido en los recientes años

ya que es un sistema complejo para aplicarle algún tipo de control.

Otra de las derivaciones de este sistema es el segway. Este vehículo se ha caracterizado por su destreza

de balancearse sobre dos ruedas, tener la habilidad de rotación de radio cero, permite desplazamientos

por lugares angostos o con mucha multitud. Este tipo de características hacen de este vehículo uno

adecuado para el transporte de personas en distintos terrenos.

Figura1. Segway

Este vehículo fue inventado por Dean Karen y presentado en 2001. Se considera como un péndulo

invertido gigante el cual fue diseñado para imitar la forma de caminar de las personas. Si el conductor

del segway se inclina en hacia adelante el segway se moverá en la misma dirección para volver a su

estado de equilibrio.

Este tipo de proyectos se pueden encontrar en internet, pero solo se limitan a la implementación de

un pid que mantenga una referencia cambiando los parámetros por medio de ensayo y error. No hay

Page 4: Diseño, análisis e implementación de controlador para un ...

4

un análisis ingenieril profundo en donde se esté analizando la dinámica del vehículo, no se tiene en

cuenta las restricciones que se pueden tener debido a los actuadores implementados. Velocidad

máxima, velocidad máxima de giro, ángulo más lejano del origen que no permita la estabilización del

sistema. [1]

En la universidad se han desarrollado proyectos de grado parecidos en donde uno se basa en la

implementación de una plataforma fija que permite la instalación de un péndulo que solo puede

realizar movimiento rotacional para lograr estabilizarse. [2]

Figura2. Péndulo rotatorio

El otro proyecto de grado basa su funcionamiento en un péndulo que este acoplado a un carro que se

mueve mediante un sistema piñón cadena motor el cual solo permite movimiento lineal en una

dirección para lograr la estabilización del péndulo. [3]

Figura3. Péndulo lineal

Page 5: Diseño, análisis e implementación de controlador para un ...

5

2) Objetivos

a. Objetivo general Desarrollar e implementar un controlador para un péndulo invertido tipo segway con accionamiento

diferencial que permita mantener una posición de equilibrio, con el fin de que este sea capaz

desplazarse a la ubicación que el usuario desee.

b. Objetivos específicos

• Selección de sensores y actuadores que permitan el correcto funcionamiento y modelado del

sistema.

• Desarrollo de controlador que permita la estabilización del sistema.

• Diseño y construcción de un mecanismo que permita verificar el funcionamiento del

controlador en un entorno no simulado.

3) Estructura mecánica

Figura 4. Componentes segway

Los componentes principales de este vehículo son:

Chasis: se encarga de sostener las baterías, motores, drivers y electrónica con la que se realiza el

control del sistema. Si se tiene en cuenta el centro de masa de la persona que usa el vehículo. Esta

estaría por encima del chasis, lo cual es la causa de la inestabilidad.

Ruedas: permiten que el sistema se pueda mover hacia adelante y hacia atrás con el fin de que el

sistema se estabilice.

Page 6: Diseño, análisis e implementación de controlador para un ...

6

Eje de dirección: permite al usuario girar en la dirección que quiera o sobre su mismo eje. En el caso

del modelo a escala el eje de dirección pasa a ser un control de radio frecuencia.

4) Diseño estructura

a. Modelo a escala

Para un primer intento con el propósito de reducir costos y además avanzar con los plazos estipulados

para la entrega del proyecto (debido a que es necesario traer componentes del exterior). Se decidió

realizar un modelo a escala que permitiera evaluar los controladores a implementar en el sistema.

Este modelo mide 26cm de alto, 32.5cm de ancho y 12.2cm de largo.

Figura 5. Modelo a escala del segway

a. Componentes:

• Motores pololu con encoder relación 30:1

• Ruedas Dagu Wild Thumper

• Baterial lipo de 11.1v

• Sensor mpu6050

• Driver para motor BTS7960B

Page 7: Diseño, análisis e implementación de controlador para un ...

7

5) Sensores

a. Obtención del ángulo

Figura6. Sensor MPU6050.

El sensor utilizado para realizar esta tarea es el mpu6050. Este dispositivo combina un giroscopio de

3 ejes y un acelerómetro de 3 ejes en el mismo chip en conjunto con un procesador de movimiento

digital (DMP), que procesa algoritmos de fusión de movimiento de 6 ejes. [4]

Existen varias librerías para utilizar este sensor. Pero las dos escogidas para realizar son MPU6050.h

y Kalman.h. la primera librería basa su funcionamiento en el firmware InvenSense’s MotionFusion y

un firmware que permite calibrar el sensor mientras se está ejecutando algún programa que requiera

de los datos. Esto con el fin de permitir que los usuarios eliminen complejas y costosas

cuantificaciones del sistema implementado.

La segunda librería utiliza el filtro de Kalman que son un conjunto de ecuaciones que proveen una

solución computacional eficiente a un problema de mínimos cuadrados. El filtro es muy robusto

debido a que soporta estimaciones del pasado, presente y futuros estados. En donde hay ocasiones

donde no se tiene un modelo preciso del sistema.[5]

Para probar las dos librerías se procede a realizar un montaje en donde se tiene un potenciómetro

como eje de rotación en una plataforma que se acopla una protoboard mediante una pieza impresa en

3d. De esta manera se registra el cambio de resistencia como ángulo de referencia mientras se

obtienen los datos del sensor MPU6050. El fin de este montaje está en ver que tanto demora el sensor

en converger a un valor de referencia y que tan alejado esta de este.

Figura7. Estructura para prueba de librerías

Page 8: Diseño, análisis e implementación de controlador para un ...

8

a. Resultado de las librerías

Figura8. Pruebas librería MPU6050.h

Figura 9. Pruebas librería kalman.h

Como se puede ver en la figura 8, la característica que más resalta para la librería MPU6050 es el

tiempo de establecimiento al valor inicial deseado el cual puede tardar hasta 5 s. También se puede

notar que los valores de ángulo para el sensor y la referencia se parecen bastante después de este

periodo de establecimiento. Para la primera prueba la diferencia entre referencia y sensor no llego a

sobrepasar los 2°, mientras para la segunda prueba esta diferencia llego a un máximo de 5°. Para la

librería de Kalman el tiempo de establecimiento al valor inicial no superó los 3.5s y el error máximo

de las pruebas realizadas con esta librería no superó los 3.5°.

Teniendo en cuenta los resultados de estas pruebas, la diferencia entre librerías no es significativa y

no existe un retardo de señales entre los tiempos del sensor y la referencia. Por lo cual el uso de

cualquiera de estas dos librerías para el proyecto asegura un buen resultado, teniendo en cuenta el

tiempo de establecimiento del sensor cuando se inicie el código implementado para el control.

Page 9: Diseño, análisis e implementación de controlador para un ...

9

b. Obtención de posición y velocidad

Figura10. encoder

El sensor encargado para esta tarea es un encoder de efecto hall de dos canales. Este tiene tres

componentes principales: un disco, sensores y circuito de acondicionamiento. El disco esta

magnetizado con un número determinado de polos alrededor de su circunferencia. El sensor de efecto

hall detecta el cambio en el campo magnético a medida que el disco va rotando. El sensor de efecto

hall arroja una señal y el circuito de acondicionamiento se encarga de producir un pulso como

resultado. Para el caso del encoder utilizado este tiene una resolución de 32 cuentas por revolución,

pero como el motor tiene una reducción de 30:1 la resolución pasa a ser de 960 cuentas por

revolución.[6]

Para obtener el desplazamiento se obtiene la equivalencia de ángulo respecto a pulso marcado y se

multiplica por el radio de la llanta. Y para la velocidad lineal se divide la diferencia de

desplazamientos por el tiempo que demoro este cambio.

6) Modelamiento del sistema

a. Ecuaciones de estado Teniendo en cuenta que en las referencias [7], [8] y [9]. Se llegan a ecuaciones de estado parecidas,

pero difieren que pequeños términos. Volviendo a resolver las expresiones que llevan a la solución

se encontró que la referencia [7] tiene la solución correcta que es la siguiente:

Figura 11. Ecuaciones de estado

Page 10: Diseño, análisis e implementación de controlador para un ...

10

𝜙: 𝑎𝑛𝑔𝑢𝑙𝑜

�̇�: 𝑣𝑒𝑙𝑜𝑐𝑖𝑑𝑎𝑑 𝑎𝑛𝑔𝑢𝑙𝑎𝑟

𝑥: 𝑑𝑖𝑠𝑡𝑎𝑛𝑐𝑖𝑎 (𝑚)

�̇�: 𝑣𝑒𝑙𝑜𝑐𝑖𝑑𝑎𝑑 𝑙𝑖𝑛𝑒𝑎𝑙 (𝑚

𝑠)

R: resistencia del motor (Ω)

𝑘𝑚: 𝑐𝑜𝑛𝑠𝑡𝑎𝑛𝑡𝑒 𝑑𝑒 𝑡𝑜𝑟𝑞𝑢𝑒 (𝑁𝑚

𝐴)

𝑘𝑒: 𝑐𝑜𝑛𝑡𝑎𝑛𝑡𝑒 𝑐𝑜𝑛𝑡𝑟𝑎𝑒𝑙𝑒𝑐𝑡𝑟𝑜𝑚𝑜𝑡𝑟𝑖𝑧 (𝑉𝑠

𝑟𝑎𝑑)

𝑉𝑎: 𝑣𝑜𝑙𝑡𝑎𝑗𝑒 𝑎𝑝𝑙𝑖𝑐𝑎𝑑𝑜 𝑎𝑙 𝑚𝑜𝑡𝑜𝑟 (𝑉)

𝐼𝑝: 𝑖𝑛𝑐𝑒𝑟𝑐𝑖𝑎 𝑑𝑒𝑙 𝑐ℎ𝑎𝑠𝑖𝑠 𝑑𝑒𝑙 𝑟𝑜𝑏𝑜𝑡 (𝑘𝑔𝑚2)

𝐼𝑤: 𝑖𝑛𝑐𝑒𝑟𝑐𝑖𝑎 𝑑𝑒 𝑙𝑎 𝑟𝑢𝑒𝑑𝑎 (𝑘𝑔𝑚2)

𝑀𝑝: 𝑚𝑎𝑠𝑎 𝑑𝑒𝑙 𝑐ℎ𝑎𝑠𝑖𝑠 𝑑𝑒𝑙 𝑟𝑜𝑏𝑜𝑡 (𝑘𝑔)

𝑀𝑤: 𝑚𝑎𝑠𝑎 𝑑𝑒 𝑙𝑎 𝑟𝑢𝑒𝑑𝑎 (𝑘𝑔)

𝑙: 𝑑𝑖𝑠𝑡𝑎𝑛𝑐𝑖𝑎 𝑑𝑒𝑙 𝑐𝑒𝑛𝑡𝑟𝑜 𝑑𝑒 𝑔𝑟𝑎𝑣𝑒𝑑𝑎𝑑

𝑎𝑙 𝑒𝑗𝑒 𝑑𝑒 𝑟𝑜𝑡𝑎𝑐𝑖𝑜𝑛 𝑑𝑒 𝑙𝑎 𝑙𝑙𝑎𝑛𝑡𝑎 (𝑚)

𝑔: 𝑔𝑟𝑎𝑣𝑒𝑑𝑎𝑑 (𝑚

𝑠2)

𝑟: 𝑟𝑎𝑑𝑖𝑜 𝑑𝑒 𝑙𝑎 𝑙𝑙𝑎𝑛𝑡𝑎 (𝑚)

b. Obtención numérica de los parámetros del modelo

Figura12: Modelo 3d estructura de prueba

Distancia al centro de gravedad de la estructura: al tener un modelo 3d de la estructura en donde se

tienen en cuenta el peso, material y dimensiones de los distintos componentes. Es posible determinar

mediante un software el valor numérico de este parámetro.

Inercia del péndulo sobre el eje de la rueda: al igual que el anterior parámetro, este también es

calculado por un software.

Inercia de la rueda: para este parámetro debido a la complejidad de la forma, se decidió obtener el

valor mediante un software y de manera experimental. Con el diagrama del cuerpo libre asumiendo

que no existe deslizamiento se llega a la siguiente ecuación:

Page 11: Diseño, análisis e implementación de controlador para un ...

11

𝐼𝑤 = 𝑟𝑤2[

𝑚𝑤𝑔𝑠𝑖𝑛𝜃

𝑎𝑥− 𝑚𝑤]

El único termino que no se puede calcular de manera directa es la aceleración. Es por esto por lo que

se decide realizar un montaje donde se tiene un plano inclinado y se deja caer la llanta de manera

libre. Una vez grabado esto, se procede a sacar el tiempo y la distancia recorrida para ciertos

intervalos. [10] Una vez se tienen estos datos se grafican y se obtiene una ecuación de la forma:

𝑥 = 0.5𝑎𝑡2 + 𝑉0𝑡 + 𝑥0

Que corresponde a una de las ecuaciones de aceleración constante. Con lo que es posible hallar la

aceleración de la rueda.

Figura 13: Grafica distancia contra tiempo de la rueda del modelo a escala

Constante del motor: Se calcula relacionando las ecuaciones que modelan el motor (parte eléctrica y

mecánica). Luego se obtiene una ecuación de Laplace que permite acomodar los términos de una

forma en donde todo quede en términos de la velocidad angular del motor. Cuando se vuelve al

dominio del tiempo se obtiene una ecuación donde la constante del motor depende del voltaje aplicado

y la velocidad a la que gira el motor.[11]

𝑘 =𝑣𝑜𝑙𝑡𝑎𝑗𝑒

�̇�(∞)

Constante de voltaje: Se asume que es igual que la constante del motor dadas las ecuaciones

empleados para hallar este último parámetro.

y = 0.8825x2 - 0.1386x + 0.0415R² = 0.9396

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

0 0.2 0.4 0.6 0.8 1 1.2

m

s

Page 12: Diseño, análisis e implementación de controlador para un ...

12

c. Estimación de parámetros Matlab Como se quiere tener un modelo del sistema lo más parecido a la realidad se utiliza la herramienta de

simulink “estimación de parámetros”. De esta manera también se validan algunos parámetros que se

sacaron mediante la experimentación.

Para este caso se va a validar los parámetros del motor que están en la siguiente ecuación diferencial:

En la figura 14 se puede ver como para un misma entrada los datos experimentales no concuerdan

con los simulados. Por lo que es necesario estimar de nuevo los parámetros del motor.

Figura 14: Estimación de parámetros simulink [12]

Page 13: Diseño, análisis e implementación de controlador para un ...

13

Figura 1: Corrección del valor de los parámetros y reducción de la función de costo

Como se puede evidenciar en la figura 15 el valor que más afecto los resultados de la simulación fue

la resistencia interna del motor. Al optimizar este último parámetro se puede ver que la función de

costo que compara el comportamiento de los datos experimentales con los datos simulados se reduce

hasta 2.14, cuando se tenía antes un valor de 110.

Figura 16: Comparación datos experimentales y simulados

Una vez optimizados los parámetros se puede ver como los datos experimentales y simulados

concuerdan de una manera aceptable a comparación de lo obtenido anteriormente.

Page 14: Diseño, análisis e implementación de controlador para un ...

14

7)Diseño del controlador

a. PID

Figura 17: Esquema PID

Es un controlador que usa información de los datos medidos para ajustar su salida dado un valor de

referencia establecido. Esta comparación del valor deseado con la salida genera una señal de error

que permite lograr un control más complejo en donde también se tiene en cuenta la tasa de cambio

de la señal de error. Lo que resulta en un control más preciso y estable. Este es el algoritmo de control

más común usado en la industria. La popularidad de los controladores PID se debe a su robustez en

una amplia condición de operaciones y a su simplicidad funcional que permite a los ingenieros

operarlo de manera sencilla.[13]

Figura 18: PID implementado

Para un primer intento de controlar y teniendo en cuenta que no se sabe que tan rápido pueda

reaccionar el microcontrolador con todas las tareas que está realizando para lograr que el péndulo se

estabilice. Se procede a realizar un controlador PID. Este será un controlador de una entrada (voltaje)

y una salida (ángulo) sin tener en cuenta el modelo del sistema. Con el fin de lograr medir 2 cosas, la

primera es una forma de medir la capacidad de respuesta del microcontrolador teniendo en cuenta

Page 15: Diseño, análisis e implementación de controlador para un ...

15

que el accionamiento del sistema debe ser muy rápido (como consecuencia de la inestabilidad natural

del sistema, los sensores y actuadores utilizados). La segunda radica en poder medir la robustez del

controlador teniendo en cuenta que a pesar de que se llegaran a tener un modelo del sistema, hay

variables dentro del mismo que cambian dependiendo de las condiciones en las que se esté.

En este caso como no se tiene modelo del sistema, se sintoniza el controlador mediante la regla de

Ziegler Nichols.

1. Ajustar el valor de Kp hasta que la respuesta del sistema empiece a oscilar.

2. Se sintoniza el valor de Ki o Kd hasta se vea que el sistema está estable aumentar el valor de

kd de manera que el sistema responda más rápido cuando este recibe alguna perturbación.

3. Sintonizar el ultimo parámetro que queda para mejorar la estabilidad. Ya sea mediante la

reducción de la fluctuación o reduciendo el error en estado estacionario.

b. LQR

Figura 19: Esquema LQR

Mediante este tipo de controlador donde u=-Kx es posible determinar los polos de lazo cerrado

optimizando una función de costo:

Que permite hallar el k optimo que posiciona los polos del sistema de tal manera que el sistema se

estabilice. Dependiendo de los valores que se le den a Q se está penalizando el error de una variable

determinada y en el caso de R se está penalizando el uso del actuador implementado en el sistema.

[14]

Page 16: Diseño, análisis e implementación de controlador para un ...

16

Todo esto sujeto a un modelo lineal de las características:

�̇� = 𝐴𝑥 + 𝐵𝑢

El controlador implementado es de una entrada (voltaje) y 4 salidas (ángulo, velocidad angular,

desplazamiento y velocidad lineal). Este controlador se decide utilizar debido a que se tienen las

ecuaciones de estado del sistema, su costo computacional no es muy alto y permite validar los

parámetros hallados del sistema.

Figura 20: LQR implementado

Figura 21:Respuesta escalón del sistema lazo abierto

Page 17: Diseño, análisis e implementación de controlador para un ...

17

Figura 22: Respuesta escalón del sistema con LQR

c. PID en cascada Dado que primer controlador PID solo tienen la capacidad de estabilizarse (respecto a un ángulo de

referencia) y se requiere de un controlador que opere de manera similar al LQR. Se decidió

implementar un sistema donde se incorporen 4 PID. El sistema consiste en un modelo de dos entradas

(velocidad de cada motor) y 4 salidas (velocidad motor 1, ángulo de la planta, velocidad promedio

entre los 2 motores y velocidad Motor 2). La idea de usar un PID que cambie el ángulo de referencia

radica en poder tener un controlador que sea capaz de reaccionar ante perturbaciones de

desplazamiento. Además, este último controlador permite operar de manera más segura la planta ya

que no se intervine de manera directa con el ángulo de referencia lo que hace as estable el sistema al

momento de querer tele operar la planta al querer que esta se mueva a alguna dirección deseada.

Figura 23: PID en cascada implementado

Page 18: Diseño, análisis e implementación de controlador para un ...

18

Figura 24 : Modelo del sistema

d. Controlador de velocidad

Dado que en la realidad los motores no se van a mover a la misma velocidad y es necesario que el

robot se mueva en línea recta. Se ve en la necesidad de implementar un controlador que permita esto

debido a los resultados que se muestran en la figura 25.

Figura 25: Motores sin controlador

Para el primer controlador PID se procede a usar un controlador donde la velocidad necesitada es un

voltaje DC, que se da al primer motor mediante una señal de pwm. La velocidad del primer motor es

medida mediante el encoder que está integrado. Como el segundo motor está en movimiento a cierta

velocidad, se podría implementar un comparador que mida las diferencias entre los dos motores. Esta

señal de salida del comparador se usaría como entrada de un PID que permitiría ajustar el voltaje del

segundo motor para que se mueva a la misma velocidad que el otro motor.

Page 19: Diseño, análisis e implementación de controlador para un ...

19

Figura 26: Opción 1: Controlador motores

Como se puede ver en la figura 26 en momentos donde el cambio de dirección de velocidad es rápido

hay una diferencia entre los valores de los motores. una vez se tiene un cambio en solo una dirección

las velocidades de los motores son muy parecida. Cuando se sintonizan los parámetros del PID para

obtener una respuesta más rápida. Se obtiene que al momento de probarlo en la estructura el sistema

empieza a oscilar demasiado. Por esta razón se busca otra alternativa para controlar la velocidad de

los motores.

Figura 26 :PID control diferencial Figura 27: PID independiente para cada motor

Para el otro controlador se procede a realizar un controlador independiente a cada motor como se

puede ver en la figura 27. De esta manera se tiene una respuesta más rápida en los dos motores ya

que la referencia no está dada por uno de los motores, sino por el ángulo en el que este el sistema.

8) Pruebas de los controladores

a. Controlador posición La finalidad de esta prueba consiste en ver que tanto cambia la posición del segway a escala. Perturbar

la estructura mediante la aplicación de una fuerza que lo desplace de su posición inicial y ver como

este vuelve a su posición inicial.

Page 20: Diseño, análisis e implementación de controlador para un ...

20

Figura 28: Pruebas perturbación desplazamiento

Como se evidencia en la figura 28, al realizar la perturbación para que la planta se mueva en sentido

negativo, se puede ver como esta vuelve a su posición inicial, pero se presenta un overshoot grande

y hay un tiempo de establecimiento que podría mejorarse. También se puede evidenciar que se puede

agregar más de una perturbación y el sistema responderá a estas condiciones.

Tabla 1: Resultados prueba perturbación 2

Figura 29: Pruebas perturbación desplazamiento con paramentos de sintonización diferentes

perturbacion 1 2 3

overshoot (%) 9.6 8.9 12.4

desplazamiento (cm) -22.2 -19.8 -24.3

Page 21: Diseño, análisis e implementación de controlador para un ...

21

Sintonizando de mejor manera el PID se logró disminuir el overshoot de manera considerable pero el

tiempo de establecimiento no tiene una mejoría notoria, como se puede evidenciar en la figura 29 y

comparando los resultados de la tabla 1 y 2.

Tabla 2. Resultados prueba perturbación 4

b. Controlador ángulo El objetivo de esta prueba consistió en medir la robustez del controlador mediante la adición de peso

en la parte más alta del robot con el fin de cambiar el centro de masa y lograr evidenciar si hay algún

cambio de comportamiento en el sistema.

Figura 30: Prueba controlador ángulo PID simple Figura 31: Prueba controlador ángulo PID cascada

Como se puede evidenciar en la figura 30 a medida que se aumenta el peso, la planta tiende a generar

una oscilación más grande respecto al punto de referencia. Esto no ocurre con el PID en cascada

donde se reduce el error máximo por 2.11° con respecto al PID simple. Además de que no se evidencia

un comportamiento en donde el error sea proporcional al peso agregado.

perturbacion 1 2 3

overshoot (%) 6.1 6.05 2.3

desplazamiento (cm) -33.2 -33.6 -25.1

Page 22: Diseño, análisis e implementación de controlador para un ...

22

Figura 32: Prueba controlador ángulo LQR

Tabla 3: Error absoluto controladores ángulo

Con el controlador LQR no se consiguieron los resultados esperados. Para estabilizarse la planta

realiza oscilaciones muy largas que a medida que pasa el tiempo pueden a llegar a generar

inestabilidades que la planta no es capaz de corregir. Además, en controlador no es capaz de tener un

comportamiento similar a medida que se le va agregando la estructura.

9) Modelo real

a. Componentes electrónicos

• Sensor MPU6050

• 2 motores my1016 350W 24V

• Driver para motor sabertooth 2x32A

• Arduino mega

• 2 baterías de plomo 12V 12ah

• Potenciómetro lineal de 10 Kohms

peso (g) simple (°) robusto (°) lqr (°)

0 0.7625 0.5004 2.8231

150 2.6838 0.5782 3.2066

400 2.6867 0.5049 3.8662

Page 23: Diseño, análisis e implementación de controlador para un ...

23

b. Diseño de la estructura

También para este proyecto se decidió realizar una estructura donde una persona sea capaz de

montarse y logre desplazarse a alguna ubicación deseada. Mientras este lugar no incumpla con las

restricciones propias de los actuadores.

Teniendo en cuenta que se quiere una estructura no muy pesada, fácil de ensamblar y mecanizar en

los talleres de la universidad ; se decidió usar el aluminio como componente principal para la

estructura del segway. Para los ejes se decidió usar acero 4140 dado que es el material generalmente

usado para este tipo de aplicaciones. Todos los elementos de la estructura fueron diseñados y

mecanizados a excepción de los piñones, perfiles de aluminio y los soportes de los ejes. Los

componentes principales de la estructura se pueden ver en el anexo.

Figura 33: Análisis de carga de la estructura

Realizando el análisis de carga de la estructura como se ve en la figura 33 en donde se tiene como

restricción fija los eje en la zona donde se insertarán las llantas y se aplica una carga de 980 N en el

centro de la base. Se obtiene una tensión de von mises máxima de 91.79 MPa en el eje que equivale

a un factor de seguridad de 5.99. Otra zona critica de la estructura es la pieza que acopla el eje con la

base donde se tiene una tensión de von mises de 52.56 MPa lo que equivale a un factor de seguridad

de seguridad de 1.84.

Page 24: Diseño, análisis e implementación de controlador para un ...

24

c. Cálculos fuerza de tracción y pendiente máxima de subida

Figura 34. diagrama cuerpo libre rueda

Como las ruedas se deforman debido al peso de la estructura, es necesario tener en cuenta la

resistencia a la rodadura lo cual equivale a desplazar la normal una distancia horizontal.

𝐹𝑇 =𝑇 × 𝑟𝑒𝑑𝑢𝑐𝑐𝑖𝑜𝑛 − 𝑁 × 𝑒

𝑟=

2 × 1.22 × 7.27 − 100 × 9.81 × 0.00236

0.236= 65.38 𝑁

• 𝐹𝑇: fuerza de tracción

• T: torque del motor

• N: fuerza normal

• e: distancia que se desplaza la normal

• r: radio de la rueda

Para calcular la pendiente máxima que puede subir el segway se tiene la siguiente ecuación:

𝑎 =𝐹𝑇 − 𝑤𝑠𝑖𝑛𝜃

𝑚=

65.38 − 100 × 9.81 × sin(3)

100= 0.14

𝑚

𝑠2

Para pendientes mayores a 3° el segway no será capaz desplazarse. En caso de que el segway no tenga

presente una persona la pendiente pasaría a ser de 14°.

Page 25: Diseño, análisis e implementación de controlador para un ...

25

10) Conclusiones

• Se logro realizar un controlador robusto el cual no ve afectado su funcionamiento por cambios

en algunos de los parámetros del modelo o al aplicarse alguna perturbación en los estados del

sistema.

• Fue posible construir una planta totalmente funcional, la cual permite realizar cambios en la

ubicación del centro de masa, permite la comunicación de los datos del robot de manera

inalámbrica y que se lograra manejar de manera remota. Esto con el fin de implementar

diferentes controladores en donde fue posible evidenciar las ventajas y carencias de cada uno

de estos.

• A pesar de obtener resultados parecidos en las librerías usadas para obtener el ángulo, los

resultados en los controladores pueden verse afectados de manera significativa.

11) Referencias [1] stopperl. (mayo de 2013). instructables arduino segway. Obtenido de

https://www.instructables.com/id/Arduino-Segway/

[2] Sofrony, J. (2001). pendulo invertido. Bogota:Universidad de los andes .

[3] Duirana, G. (1993). control de un pendulo invertido. Bogota:Universidad de los andes.

[4] https://www.invensense.com/products/motion-tracking/6-axis/mpu-6050/

[5] jacksonkr. (21 de septiembre de 2016). github. Obtenido de

https://github.com/TKJElectronics/KalmanFilter/blob/master/Kalman.h

[6] pololu. (s.f.). pololu motor with encoder. Obtenido de https://www.pololu.com/product/2823

[7] Ooi, R. (2003). Balancing a Two-Wheeled Autonomous Robot. Perth: University of Western

Australia.

[8] Khaled, M. (2017). balancing a two wheel robot. Minia: Minia University.

[9] Juang, H.-S. (2013). Design and Control of a Two-Wheel Self-Balancing Robot using the

arduino microcontroller board. Hangzhou: 10th IEEE International Conference on Control

and Automation.

[10] perdueMet. (28 de noviembre de 2016). Youtube Measuring Mass Moment of Inertia of a

Wheel. Obtenido de

https://www.youtube.com/watch?v=MnrCfa4DOvc&list=LLosOYx_9nOd1V10UFAEKisQ&index

=2&t=0s

[11] He, J. (s.f.). rotatory inverted pendulum.University of Pennsylvania. Obtenido de

https://www.seas.upenn.edu/~jiyuehe/rotary-inverted-pendulum/MotorModeling.html

Page 26: Diseño, análisis e implementación de controlador para un ...

26

[12] Turevskiy, A. (s.f.). mathworks. Obtenido de https://www.mathworks.com/videos/estimating-

dc-motor-parameters-97057.html

[13] Nise, N. (2011). PID controller design. En N. Nise, control systems engineering (págs. 482-

486). Wiley.

[14] Douglas, B. (s.f.). mathworks. Obtenido de https://www.mathworks.com/videos/state-space-

part-4-what-is-lqr-control-1551955957637.html

Page 27: Diseño, análisis e implementación de controlador para un ...

27

12) Anexo componentes modelo real

Page 28: Diseño, análisis e implementación de controlador para un ...

28

Page 29: Diseño, análisis e implementación de controlador para un ...

29

Page 30: Diseño, análisis e implementación de controlador para un ...

30

Page 31: Diseño, análisis e implementación de controlador para un ...

31

Page 32: Diseño, análisis e implementación de controlador para un ...

32

Page 33: Diseño, análisis e implementación de controlador para un ...

33

Page 34: Diseño, análisis e implementación de controlador para un ...

34