Beruflich Dokumente
Kultur Dokumente
Abstract
El presente trabajo muestra el diseño de controladores para un brazo robótico de 4 grados de libertad. En el presente trabajo
se desarrolla un análisis de 3 tipos de controladores, controladores clásicos tipo PID, controladores por Torque Computado los
cuales son optimizados empleando Algoritmos Genéticos y finalemente un controlador Neuro Fuzzy.
Index Terms
Controladores, PID, Torque Computado, Algoritmos Genéticos, Redes neuronales y Fuzzy
C ONTENTS
I Introducción 1
III Controladores 2
III-A PID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
III-B Control por Torque Computado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
III-C Control por Torque Computado empleando AG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
III-D Neuro Fuzzy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
IV Simulación 3
V Resultados 3
V-A Control por Torque Computado con sintonización manual . . . . . . . . . . . . . . . . . . . . . . . . . 4
V-B Control por Torque Computado usando AG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
V-C Control usando Neuro Fuzzy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
VI Observaciones 5
VII Conclusiones 6
VIII Recomendaciones 6
References 7
Appendix A: Planos 7
I. I NTRODUCCI ÓN
τ = H q̈ + C + G (1)
Donde H es la matriz de inercia, C la matriz de Coriolis y
G la matriz de Gravedad.
Los parámetros fisicos del robot como distancias centros de
masa e inercias fueron escogidos según los datos obtenidos
en el programa SolidWorks y replanteados para un manejo
más sencillo. Tambien es posible utilizar distintos toolbox de
matlab como el Robotics Toolbox [6] o metodos iterativos para
su cálculo como los descritos en [5]. Se realizó un modelo en
Simulink para la simulación de la dinámica de nuestro robot,
la cual se puede aprecira en la figura 4
Fig. 4. Dinámica del manipulador de 4GDL
1 Computer Asisted Design
2
III. C ONTROLADORES
Como fue mencionado anteriormente se realizará el análisis
de 3 algoritmos de control un PID, un Control por Torque
Computado y un control con NeuroFuzzy.
A. PID
Los controladores PID (Proporcional Integral Derivativo)
son controladores que tienen una altta performance en sistemas Fig. 6. Torque Computado
lineales o en sistemas no lineales en un determinado punto de
operación, inicialmente se planteó el uso de controladores de
este tipo dada su simplicidad. C. Control por Torque Computado empleando AG
2
Para una sintonización PID usando algoritmos genéticos
los valores de Kp, Ki y Kd van variando aleatoriamente
encontrando en cada generación el mejor valor y reduciendo
el rango de búsqueda. Para realizar la busqueda se basan en
principios evolutivos como la supervivencia del más apto, la
reproduccion sexual y la mutación, estos principios fueron
plantedos por John Henry Holland en 1975 [1].
D. Neuro Fuzzy
La logica difusa (Fuzzy Logic) es una herramienta de la
inteligencia artificial que puede ser empleada para el control
de robots. Para la optimización de ls reglas fuzzy pueden
emplearse diversas tecnicas, entre las que están la optimización
mediante algoritmos genéticos y el uso de redes neuronales, en
Fig. 5. Controlador PID
nuestro caso emplearemos la última, haciendo uso del toolbox
Un controlador PID es un mecanismo de control por real- de fuzzy de matlab[7].
imentación que corrige el error entre la salida deseada y la El esquema del controlador neuro fuzzy es el mostrado en
obtenida por la planta, su ley de control es la siguiente: la figura 7.
Z t
de(t)
τ (t) = Kp ∗ e(t) + Ki ∗ e(t)dt + Kd (2)
dt
Existen diversos métodos para el cálculo de las ganancias
Kp, Ki, Kd. Puede usarse un diseño mediante LGR (Lu-
gar geométrico de las raices) descrito en [4] o métodos de
sintonización como Ziegler-Nichols, Gallier-Otto o Graham
Lathrop.
Una vez obtenida la data se elige el tipo de entrenamiento controlador por torque computado, el diagrama del controlador
y se procede a entrenar, este proceso puede resultar algo largo neuro fuzzy es similar pero el bloque PID es reemplazado por
y depende mucho del tipo de entrenamiento y el numero de el controlador Neuro Fuzzy mostrado en la figura 12.
neuronas elegidas. La evolución del entrenamiento es mostrada
en la figura 8.
V. R ESULTADOS
IV. S IMULACI ÓN El controlador PID mostró resultado muy pobres, al realizar
Para la simulación se desarrollaron modelos en simulink cambios en las referencias o trayectorias complejas la no
para los diversos controladores. La figura 10 nos muestra el linealidad de la planta era muy grande y el controlador fallaba
diagrama del controlador PID, la figura 11 el diagrama del no lograndose un control adecuado.
4
si se encuentra en 179o y la cinemática inversa calcula • Para el diseño se debe tener en cuenta los materiales
180o y -180o , luego los posibles valores de error son 1o usados para cada eslabón de modo que la relación de
y 359o , con lo cual decidirá que trayectoria y que nuevas uno anterior con respecto al siguiente debe ser siempre
velocidades tomar. Al escoger el menor error se asegura mayor, asegurando que no se sobrecarguen las juntas
que siga la trayectoria más corta hacia el siguiente punto. para manipulación de torques. Colocando las masas en
Para visualizar esto probar una trayectoria circular en el la relación adecuada se alivian también algunos valores
programa. de inercia de uno respecto a otro y el efecto que este
• Para algunos casos las sintonizaciones usando algoritmos produce.
genéticos se han encontrado resultados menos satisfac- • Conforme se fue cambiando las trayectorias se sintoniz-
torios a comparación con la sintonización a mano. La aba con genéticos y fue mejorando el seguimiento. Las
explicación viene dada por los valores iniciales de ganan- gráficas de error en cada caso van mejorando el grado
cia con los cuales se inicia la iteración, la cantidad de de precisión del robot, haciendo que la ruta seguida sea
generaciones y la cantidad de población que combinados casi perfecta. El hecho de usar controles P PD PI y PID
mejoran o empeoran los resultados de mı́nimo error. Esta afecta en la rapidez con que se establece la trayectoria
solicitud de mejora demanda más tiempo y procesamiento y las zonas en que lo hace. Cuando se le agrega Kd
por lo que no se presentan esos resultados. el seguimiento se hace más suave. Al agregarse Ki el
• Para la sintonización mediante algoritmos genéticos del seguimiento llega a corregir los mı́nimos errores en la
control PD se debe tener en cuenta la sensibilidad la mayor parte de la trayectoria. La ganancia integral le
respuesta del sistema con respecto a la ganancia Kd. Los agrega un pequeño impulso que le permite corregir la
algoritmos genéticos prueban en un rango muy grande trayectoria, la ganancia derivativa ralentiza la llegada
con un salto muy alto entre uno y otro valor, pero si se que con la ganancia proporcional obtuvo, con lo que
modifica el paso serı́a muy pequeño para los valores de le permite corregir más rápidamente o en todo caso no
Kp. Para mejorar esta situación se agrega una ganancia extremar el error.
de 1/100 a la salida del Kd, con lo cual puede obtenerse • Se ha visto que el mejor resultado se ha conseguido us-
valores en el rango de Kp y los algoritmos genéticos ando Control PID sintonizado con algoritmos genéticos.
encuentran más fácilmente el conjunto. • Se ha verificado que los resultados se obtienen más
satisfactorios con un buen entrenamiento en algoritmos
VII. C ONCLUSIONES genéticos; el error se suaviza en casi todo el recorrido de
• El sistema no puede ser controlado de forma sencilla dado la trayectoria, y vibra o varia en posiciones extremas; los
que la dinámica no lo permite, principalmente porque torques se aminoran, permitiendo un ahorro de energı́a
la matriz de inercias se encuentra bastante acoplada, en los actuadores; en general la trayectoria es seguida de
resultando no ser de diagonal dominante, lo cual nos forma eficaz.
indica que el efecto de un eslabón afecta a los otros. • El controladorusando Neuro Fuzzy probó ser efectivo
Si se intenta controlar uno de los eslabones este traerá y dado que puede ser entrenado con parámetros reales
efectos negativos o positivos en sus eslabones aledaños, ofrece una mayor fidelidad. Adicionalmente el tiempo de
pero también en los otros dependiendo de cual se haya entrenamiento resultó ser aún menor que el necesario para
movido. No pudiendo eliminar el acoplamiento de los los algoritmos genéticos, lo cual es una gran ventaja para
eslabones 2 a 2 con ningún método sencillo conocido se sistemas complejos como los robots de más de 3GDL
pasó a agregar la matriz de compensación de inercias “H”. como el analizado.
Otro factor que impide el control simple de lazo cerrado • En base al análisis realizado concluimos que el uso de
es la influencia de las masas y las inercias en la matriz de algoritmos de inteligencia artificial como los algoritmos
Coriolis, dado que éstas permitirán y/o ayudarán al ma- genéticos, las redes neuronales y la lógica difusa mejora
nipulador a caer más rápidamente sin presencia de torques notablemente el desempeño de los controladores y su uso
de control, generando grandes variaciones de posición en es ampliamente recomendado.
corto tiempo, determinando ası́ altas velocidades y un
comportamiento errático del manipulador. La estimación
VIII. R ECOMENDACIONES
de la matriz de Gravedad se realizó para aliviar el control
PID de la vibración generada producto de los cambios • Se recomienda usar sintonización de valores de ganancia
de configuración de la estructura y el constante cambio usando algoritmos genéticos para tal efecto. Este proceso
en los torques ejercidos por la masa de los propios ha sido verificado a lo largo del informe y ofrece buenos
eslabones. El sistema controlado queda aliviado de toda la resultados, con opción a mejora con cada iteración.
dinámica del acoplada de los eslabones y sus principales • Tener en cuenta la relación masa longitud de cada
propiedades fı́sicas normales, con lo cual el torque de elemento-eslabón para no exigir demasiado torque a
control queda directamente proporcional a los valores de los eslabones base. Con esto también se modifican las
aceleraciones angulares en cada junta (a excepción de la matrices de inercia y de Coriolis, por lo tanto hay que
ultima prismática, en cuyo caso seria aceleración lineal) tener cuidado con los cambios que se piensen realizar.
y pudiéndose variar ya los valores de Kp, Ki y Kd y de • En el caso de este robot, la matriz de Coriolis crece
las trayectorias con mayor libertad. demasiado al no tener entrada de torque por la velocidad
7
R EFERENCES
[1] John H. Holland, “Adaptation in Natural and Artificial Systems”, 1975
[2] Barrientos, Peñin, Balaguer, Aracil. “Fundamentos de Robótica”, Ed
McGraw-Hill, 1977
[3] Craig, John J, “Robótica”, Ed. Pearson Education, 2006
[4] Katsuhiko Ogata, “Ingenierı́a de Control Moderna”, Pearson, 2003, 4ta
edición
[5] Ahmed A. Shabana, “Computational Dynamics”, Editorial John Wiley
& Sons.
[6] Mathworks, “Robotics Toolbox de Matlab” Fig. 23. Planos de la Base del robot. Eslabon 0
[7] Mathworks, “Fuzzy Logic Toolbox de Matlab”
A PPENDIX B
P RUEBAS ADICIONALES Y S INTONIZACI ÓN USANDO AG
Se realizaron pruebas adicionales con controladores
P(Proporcional), PI(Proporcional Integral) y PD (Proporcional
Derivativo), cuyas leyes de control son:
τ = Kp ∗ e(t) (6)
Z t
τ = Kp ∗ e(t) + Ki e(t) (7)
de(t)
τ = Kp ∗ e(t) + Kd (8) Fig. 29. Vistas del Robot
dt
9
A. P
Usando algoritmos genéticos para optimizar el P (25 gen-
eraciones)y probado para la trayectoria 1 se obtuvo la ganancia
Kp = diag([87.9035 81.7222 64.2208 48.4494]) con un error
en el algoritmo genético de 1.266
La evolución de los valores usando algoritmos genéticos se
ve en la figura 30 y los resultados de las simulaciones en las
figuras 31,32 y 33
Para la trayectoria 2 se obtuvo la ganancia Kp =
diag([108.1198 54.190 56.9472 31.3429]) con un error en el
algoritmo genético de 1.205.
Los resultados de las simulaciones en las figuras 34,35 y
36
B. PI
Usando algoritmos genéticos para optimizar el PI (25 Fig. 32. P: Errores usando sintonizacion genética 1
generaciones)y probado para la trayectoria 1 se obtuvo la
ganancia Kp = diag([103.6215 66.4162 82.4860 48.5827]) y
Ki = diag([0.9781 0.7864 0.4957 0.1949]) con un error en el
algoritmo genético de 1.1053.
La evolución de los valores usando algoritmos genéticos se
ve en la figura 37 y los resultados de las simulaciones en las
figuras 38,39 y 40
Para la trayectoria 2 se obtuvo la ganancia Kp =
diag([65.2224 50.9227 50.0 30.1211]) Ki = diag([0.9913
0.6589 0.8772 0.6102]) con un error en el algoritmo genético
de 0.635.
Los resultados de las simulaciones en las figuras 41,42 y
43
C. PD
Usando algoritmos genéticos para optimizar el PD (25 Fig. 33. P: Torques usando sintonizacion genética 1
generaciones)y probado para la trayectoria 1 se obtuvo la
10
Fig. 46. PD: Torques usando sintonizacion genética 1 Fig. 49. PD: Torques usando sintonizacion genética 2