Simulacin del modelo matemtico de un robot mvil diferencial con control de posicin sin orientacin basado en ley de Lyapunov

 

Simulation of the mathematical model of a differential mobile robot with orientation-free position control based on Lyapunov's law

 

Simulao do modelo matemtico de um rob mvel diferencial com controle de posio livre de orientao baseado na lei de Lyapunov

 


Fabian Israel Heredia-MorenoI fabian.heredia@espoch.edu.ec https://orcid.org/0000-0002-9413-7504

Cristian Geovanny Merino-SnchezIII cristian_merino13@hotmail.es https://orcid.org/0000-0003-3645-5165


Michael Estefania Jtiva-BritoII misheljativa19@gmail.com https://orcid.org/0000-0002-6394-2586

Adriana Virginia Macas-EspinalesIV adrianita_23j@hotmail.com https://orcid.org/0000-0002-5303-6520


 

Correspondencia: fabian.heredia@espoch.edu.ec

 

Ciencias de la Computacin Artculo de investigacin

 

*Recibido: 13 de septiembre de 2020 *Aceptado: 09 de octubre de 2020 * Publicado: 25 de noviembre de 2020

 

I.            Ingeniero en Electrnica, Control y Redes Industriales, Especialista de Proyectos y Transferencia de Tecnologas, Escuela Superior Politcnica del Chimborazo, Riobamba, Ecuador.

II.            Ingeniera en Electrnica Control y Redes Industriales, Docente, Centro de Capacitacin Fundel, Ecuador.

III.            Master Universitario en Ingeniera de Software y Sistemas Informticos, Ingeniero en Sistemas Informticos, Escuela Superior Politcnica del Chimborazo, Riobamba, Ecuador.

IV.            Magister en Tecnologa e Innovacin Educativa, Ingeniera en Sistemas, Docente, Universidad Laica Eloy Alfaro de Manab, Manta, Ecuador.

 

 

 

 

 

 

 

 


http://polodelconocimiento.com/ojs/index.php/es


 

Resumen

El presente artculo trata de la simulacin para situar un robot mvil diferencial en un punto de referencia sin orientacin basado en leyes de Lyapunov. Para lo cual se ha considerado un ambiente de trabajo estructurado, donde la herramienta principal es el software matemtico Matlab, mismo que se es el protagonista dentro de la simulacin del robot mvil diferencial. Como punto de partida se ha procedido a realizar clculos cinemticos y dinmicos, siendo una de las partes fundamentales de esta investigacin para comprender el comportamiento dentro de la simulacin del robot. El manejo de los controladores en este trabajo es una parte importante debido a que los mismos se ha encargado de brindar un ajuste detallado a los clculos realizados para la simulacin del robot mvil. Los parmetros de los controladores se los ha desarrollado mediante un conjunto de funciones descritas en el entorno de Matlab.

Palabras Clave: Robot mvil; simulacin; matlab; leyer de lyapunov; clculo cinemtico; clculo dinmico; controlador.

 

Abstract

This article deals with the simulation to locate a differential mobile robot in a reference point based on Lyapunov laws. For that, a structured working environment has been considered, from which the main tool is the Matlab mathematical software, which is the protagonist within the simulation of the differential mobile robot. As a starting point, cinematic and dynamic calculations have been carried out, being one of the fundamental parts of this investigation to understand the behavior within the robot simulation. The management of the controllers in this work is an important part due to the fact that the monks have been responsible for providing a detailed adjustment to the calculations made for the simulation of the mobile robot. The parameters of the controllers have been developed using a set of functions described around Matlab.

Keywords: Mobile robot; simulation; matlab; lyapunov's leyer; Cinematic calculation; Dynamic calculation; Controller.

 

Resumo

O presente artigo trata da simulao para situar um rob mvel diferencial em um ponto de referncia sem orientao baseado em leyes de Lyapunov. Para que cual seja considerado um ambiente de trabalho estruturado, faa o herramienta principal o software matemtico


Matlab, mismo que o protagonista dentro da simulao do rob mvel diferencial. Como ponto de partida se h procedido para realizar clculos cinemticos e dinmicos, siendo una de las partes fundamentales de esta investigao para comprender el comportamiento dentro de la simulacin del robot. O manejo de los drivers neste trabalho uma parte importante debido a que los mismos se encargado de brindar um ajuste detalhado e los clculos realizados para a simulao do rob mvil. Os parmetros dos drivers so desarrollados mediante um conjunto de funes efetuadas no entorno de Matlab.

Palavras-chave: Rob mvel; simulao; matlab; leyer de lyapunov; clculo cinemtico; clculo dinmico; controlador.

 

Introduccin

Los robots mviles a menudo se hallan en escenarios en las que tienen que trasladarse de un punto a otro enfrentando los inconvenientes del entorno como son los obstculos y las limitaciones de su capacidad. (Bruce & Veloso, 2002).

A menudo los mtodos de control de movimiento requieren altos costes computacionales y errores numricos que lo hacen inadecuados para aplicaciones en tiempo real. (Frazzoli, Dahleh, & Feron, 2005).

Los mtodos de planificacin para rutas, se desarrollan continuamente para problemas cada vez ms desafiantes y con costos computacionales ms bajos, todas las investigaciones apuntan a lograr mecanismos mviles autnomos, este objetivo es posible lograrlo con el uso de mtodos reactivos que permiten al robot interactuar con el entorno de trabajo.

El problema bsico de un robot mvil con ruedas est enfocado en encontrar el camino de un punto inicial a un punto final, evadiendo obstculos que se presentan en el ambiente de trabajo.

La propuesta contempla en un algoritmo matemtico para un robot mvil diferencial desde un punto de partida hacia un punto de llegada, en un ambiente estructurado con control de posicin sin orientacin.

 

Diseo del sistema

Diseo de sistemas de control no lineal: usando Lyapunov

La teora de estabilidad de Lyapunov es una herramienta estndar y una de las ms importantes en el anlisis de sistemas no lineales, adems permite analizar la estabilidad de un


 

sistema de control y puede ser aplicada como una estrategia para el diseo de controladores, el objetivo de este mtodo es encontrar una funcin candidata de Lyapunov, cumpliendo con ciertas condiciones asegurando as la estabilidad de los puntos de equilibrio.

 

Sistema estable

La presente investigacin es de tipo cuantitativa, debido a que se fundamenta en una valoracin numrica del software, tanto desde la perspectiva de los usuarios, as como una valoracin tcnica de las caractersticas del producto con base en los resultados brindados por dos herramientas de testeo (WebPagetest y MatchMetrics), de las cuales se tomaron en cuenta nicamente los parmetros determinados por la norma ISO/IEC 25010, todo esto como un estudio de campo. Posteriormente, se utiliz la investigacin descriptiva para detallar los hallazgos (potencialidades y deficiencias) del software y las conclusiones del estudio.

La funcin principal de Lyapunov V(x) es una funcin de estados x que cumple con las siguientes condiciones.

 

1.      V(x) es continua y sus derivadas parciales son continuas

 

 

Funcin definida positiva

 

 

2.      V(x) = 0 para x = 0

 

 

3.      V(x) > 0 para x 0 Funcin semi-definida negativa

4.      (dV(x))/dt=0 para x=0

 

 

5.      (dV(x))/dt 0 para x 0

 

 

Las condiciones son fundamentales para que el sistema de control sea considerado un sistema estable. De esta manera se utiliz la teora de Lyapunov para realizar algoritmos de control, por lo tanto, los estados x sern los errores, y los puntos de equilibrio que van sern el origen,


es decir el punto cero, esto debido a que el objetivo del control es llegar a que el error del mismo vaya hacia cero de esta manera las condiciones para que el sistema sea estable son las siguientes:

1.      La funcin candidata de Lyapunov y sus derivadas parciales debe ser continua.

2.      La funcin candidata de Lyapunov debe ser igual a cero solo para x igual a cero

3.      La funcin debe ser mayor a cero solo para valores diferentes de cero

4.       La derivada de la funcin candidata de Lyapunov debe ser igual a cero para x igual a cero.

5.       La derivada de la funcin candidata de Lyapunov debe ser menor igual a cero para x diferente de cero.

6.      V(x) es continua y sus derivadas parciales son continuas

7.      Funcin definida positiva

8.      V(x) = 0 para x = 0

9.      V(x) > 0 para x 0

10.   Funcin semi-definida negativa

11. 

12. 

 

Metodologa

Diseo de sistemas de control no lineal basados en el modelo

Las consideraciones para el diseo del controlador no lineal basado en el modelo e implementado la teora de Lyapunov son las siguientes:

         Dado un sistema fsico (modelo matemtico y sus restricciones) y su comportamiento deseado, el objetivo obtener una ley de control de modo que el sistema realimentado se comporte como se desea.

         Si las tareas del sistema de control involucran gran cantidad de las variables o alta velocidad, muy probablemente deba recurrirse a un diseo de control no lineal al fin de alcanzar las especificaciones.

Los robos mviles diferencial cuenta con dos pares de ruedas: esto quiere decir dos ruedas de traccin que tienen acoplados dos motores DC, y dos ruedas estabilizadas que mantienen el balance del vehiclalo (figura 1).


 


Figura 1-3: robot mvil diferencial.

 

 

La traslacin y rotacin de este tipo de plataformas diferenciales se determina por el movimiento independiente de cada una de las ruedas de traccin.

Para proceder al clculo cinemtico se traz el sistema de referencia, en este caso en el palo x,

y. A continuacin, se inserta el robot mvil diferencial en una posicin diferente a la del origen x1, y1 figura 2.

 

Figura 2-3: calculo cinemtico.


 

 

 

Datos:

φ orientacin

μ_(l )velocidad lineal de la llanta derecha μ_(r )velocidad lineal de la llanta izquierda

h(x,y) posicin del robot en el punto de control en este caso es en el centro del eje de las ruedas.

Sabiendo que el punto de control es el punto de inters para conocer la posicin.


El sistema total del robot tendr una velocidad lineal que permita al robot moverse hacia delante y hacia atrs.

La velocidad angular μ que permite que el robot gire en sentido horario y en sentido antihorario.

 

Modelo Cinemtico de un robot mvil diferencial

Como se puede observar en la figura 2-3 el robot se ha desplazado:

 

 


 

 

 


Si se deriva la posicin se obtiene la velocidad, Por consiguiente, la velocidad se va a descomponer en el eje (x,y) por lo tanto se tendr que la velocidad en el punto x ser igual a la velocidad lineal.

Ecuacin 1

 

 


 

Ecuacin 2

 

 

y la derivada de la orientacin da como resultado la velocidad angular ω.

 

 

φ ω

Ecuacin 3

 

 

La velocidad total del sistema ser el promedio de la velocidad de la llanta derecha μ_r mas promedio de la velocidad de la llanta izquierda.

 

μ= (μ_r+μ_l) /2 Ecuacin 4


 

La velocidad angular se relaciona con la velocidad lineal de la llanta derecha menos la velocidad angular de la llanta izquierda por una distancia .

es la distancia entre las ruedas


Ecuacin 5

 

 

Una vez que se tenga planteadas las ecuaciones, se puede remplazar la ecuacin 3 en la ecuacin 1 y en la ecuacin 2


Ecuacin 6

 

 

Diseo de controladores

Suponiendo que al robot mvil se le asigna una trayectoria de movimiento h(t) al punto de inters en trminos de h ̇(t) y sus condiciones iniciales de posicin y orientacin, determinando un conjunto de velocidades q (̇ t) que reduzca la trayectoria dada. Se considera un sistema que tenga el mismo nmero de ecuaciones que incgnitas que m=n, las velocidades de los actuadores se pueden obtener mediante la inversin de la matriz jacobiana.


Ecuacin 10

 

velocidades de los actuadores matriz inversa Jacobiano velocidades en el punto de inters

 

Sin embargo, las velocidades en tiempo discreto no coinciden con la velocidades en tiempo continuo, este inconveniente se puede supera a un esquema de solucin que tenga en cuenta el ERROR entre la posicin y orientacin del punto de inters deseado y real.


Ecuacin 11


error

velocidad de la trayectoria deseada punto real

S se aplica la deriva al error:

 


Despejando


Ecuacin 12

 

 

Las velocidades de los actuadores son:

 


Ecuacin 13

 

Control de posicin sin orientacin

El control de posicin consiste en ubicar al robot en un punto de referencia deseado con o sin una orientacin deseada figura 3-3

 

Figura 3-3: calculo cinemtico.

 


 

 

Partiendo de la ecuacin 13, en este caso la trayectoria deseada ser constante porque solo se va a posicionar en un punto al robot, por lo tanto, la constante a lo largo del tiempo es la misma.

De esta manera la derivada de la contante es

Por lo tanto, se obtiene que la velocidad de los actuadores:


 

Ecuacin 14

 

Estabilidad de Lyapunov

El objetivo de aplicar la estabilidad de Lyapunov es asegurar que el controlador sea asintticamente estable.

Para el anlisis de estabilidad se asume el seguimiento perfecto de velocidades.

 


Ecuacin 15

 

Donde la velocidad de referencia (controlador) serm iguales a las velocidades de lectura que tienen el robot diferencial.

Considerando la funcin candidata de Lyapunov.


Ecuacin 16

 


Ecuacin 17

 

 

 


Ecuacin 18

 

 

La funcin candidata de Lyapunov debe cumplir los trminos asintticamente estables antes mencionados.

1. la funcin candidata debe ser continua si cumple.

2. Funcin definida es positiva cumple con la condicin

3. Para el anlisis de la derivada se debe asegurar que la derivada sea definida negativa, en este caso no se utilizara la derivada del error en algoritmo de control (ecuacin 17) de esta manera se utilizara la ecuacin 18 en la cual se asume que de esta manera se obtiene la ecuacin:


 

 

 

Donde, es una matriz definida positiva (generalmente diagonal) para que el sistema sea asintticamente estable se obtiene:

 


Ecuacin 19

 

 

En las cuales las velocidades de referencia que se aplicar a los actuadores son iguales a la inversa de la matriz jacobiana por una matriz diagonal definida positiva por el error.

Con esto se desarrolla el algoritmo de control a implementarse en Matlab.

 

 

Emulacin del robot mvil diferencial

Para proceder a realizar la simulacin del robot primero se cre dos archivos.

                     MobilPlot.m

                     MobileRobot.m

En el archivo MobilRobot.m se almacenarn todos los parmetros del robot en el cual se encuentran las dimensione del mismo, tamao de las llantas, colores etc.

 

Figura 4-3: archivo de Matlab MobilPlto.m


 

Y el archivo MobilPlot.m permitir dibujar al robot en la posicin de y con una orientacin phi, para esto se utiliz matrices de traslacin y de rotacin figura 5-3


 


Figura 5-3: matrices de rotacin

 

 

Figura 6-3: matrices de traslacin


 

Implementacin del Controlador en Matlab

Para la implementacin del controlador en Matlab se calcul el error con el siguiente cdigo:

 

 

>> hxe(k) = hxd - hx(k);

>> hye(k) = hyd - hy(k);

>> he = [hxe(k) hye(k)]';

 

 

Establecida en la ecuacin 11, donde hxe y hye son las posiciones son las posiciones reales del robot.

 

Lugo se gener la matriz jacobiana para la simulacin: J11 = cos(phi(k));


J12 = -a*sin(phi(k));

 

 

J21 = sin(phi(k)); J22 = a*cos(phi(k));

 

J= [J11 J12;... J21 J22];

El parmetro de control a utilizar es matriz diagonal definida positiva: K = [0.3 0; 0 0.3];

Luego se insert la ley de control hallada en la ecuacin 19. qpref = pinv(J)*(K*tanh(he));

 

Para obtener la inversa de la matriz jacobiana se utiliz la funcin pinv propia de Matlab, obteniendo las velocidades de referencia que se aplicara al robot diferencial.

 

Se separ las acciones de control en velocidad lineal y angular.

>> uRef(k) = qpref(1);% velocida lineal

>> wRef(k) = qpref(2);%velocidad anglar

 

 

Aplicar acciones de control al robot mvil simulado

Se calcul la orientacin real del siguiente instante de muestreo utilizando las acciones de control que se obtuvo en el modelo.

 

1.      Robot simulado (modelo cinemtico)

>> phi(k+1)=phi(k)+ts*wRef(k);% orientacin real en radianes

>> x1p=uRef(k)*cos(phi(k+1)); % velocidad real en metros / segundos

>> y1p=uRef(k)*sin(phi(k+1)); % velocidad real en metros / segundos

 

 

Con el mtodo de Euler se hall las posiciones en los siguientes instantes de muestreo del eje central de las ruedas, considerando que no es el punto de inters o el punto de control que se


 

calcula para dibujar el robot en el cual el robot debe ingresar la posicin central en el eje de las ruedas

 

2.      Integral numrica (mtodo de Euler)

>> x1(k+1)=x1(k)+ts*x1p; % posicin real del centro (eje x) en metros (m)

>> y1(k+1)=y1(k)+ts*y1p; % posicin real del centro (eje y) en metros (m)

 

 

Se calcul el punto de inters donde hx y hy nuestros puntos de control o inters.

 

 

3.      modelo geomtrico

>>hx(k+1)=x1(k+1)+a*cos(phi(k+1)); % posicin de inters real (eje x) en metros (m)

>>hy(k+1)=y1(k+1)+a*sin(phi(k+1)); % posicin de inters real (eje y) en metros (m)

 

 

Resultados, discusin y anlisis

Una vez terminado el programa de Matlab se procedi a modificar los valores para obtener los resultados del modelo matemtico implementado.

 

Validacin del modelo

Para la validacin del modelo se ejecut la programacin en el software de Matlab para esto se ingres los parmetros de su posicin inicial.

 

>> hxd = -3;

>> hyd = 3;

 

Figura 7-4: simulacin del robot mvil desde la posicin inicial a su posicin final sin considerar su orientacin.



Al realizar la simulacin se observ que el robot se aproximan al punto desea (3;-3).

 

 

Figura 8-4: velocidad lineal


 

 

Como se puede observar en la figura la velocidad lineal es de 0.41 m/s luego va decreciendo hasta llegar a 0 m/s

 

Figura 9-4: velocidad angular


 

 

La velocidad angular se dispara alcanzando los 4 rd/seg y luego se estabiliza.

 

 

Figura 10 -4: errores h_x y h_y


 

Como se puede evidenciar en la figura 3-4 los errores convergen a cero. Realizando el cambio del parmetro de nuestras condiciones iniciales.


 

>> hxd = 4.5;

>> hyd = 2.8:

 

 

Figura 11-4: simulacin del robot mvil desde la posicin inicial a su posicin final (4.5:2.8) sin considerar su orientacin.


 

 

Figura 13 -4: errores h_x y h_y


 

 

Como se puede observar en la figura 11-4 el robot se dirige a la posicin deseada y su error tienden a cero con esto se logr verificar que el controlador est funcionando correctamente.

 

Pruebas de comportamiento

Las pruebas para verificar el comportamiento del controlador se las detalla a continuacin, para lo cual es importante mencionar que el valor de k correspondiente a una constante fue tomando distintos valores. Como se mencion en los clculos, la constante debera ser positiva de esta manera se modific para obtener un control.

K = [1.3 0; 0 1.3];


Figura 3-8: simulacin del robot mvil


 

 

Como podemos observar en la figura el robot se traslada bruscamente

 

 

Figura 14-4: acciones de control

 


 

 

 

En las acciones de control se puede observar que existe un cambio brusco en su velocidad angular asta estabilizarse.


 

Figura 14-4: errores


 

Se puede observar que los errores decrecen ms rpido a cero, pero sin embargo existen variaciones, hay que mencionar que le robot no va alcanzar estas velocidades mayores a 0.5.

 

Conclusiones

         Para establecer las pruebas reales no sobrepasar 1 la constante K por movimientos bruscos del robot.

         El clculo cinemtico encontrado es eficiente par que el robot mvil diferencial con control deposicin sin orientacin llegue al punto deseado

         El controlador implementado ha permitido que los errores se establezcan en cero dando como resultado la ubicacin deseada con exactitud de 0.001.

         El modelo cinemtico considera las velocidades, posicin del robot mvil, sin tomar en cuenta los efectos de las fuerzas e inercias productos de la masa del robot, este modelo cinemtico sirve para la implementacin de un esquema de control de seguimiento de caminos

         El controlador cinemtico propuesto para el robot mvil diferencial tiene como variable de control la velocidad lineal y angular del robot mvil, este controlador garantiza la estabilidad mediante el criterio de Lyapunov, demostrando que los errores de posicin convergen a cero cuando el tiempo tiende al infinito.


Referencias

1.      Adams. M.D, Sensor Modelling, Design and Data Processing for Autonomous Navigation., World Scientific Publishing, Series in Robotics and Intelligent Systems. Singapore, 1999.

2.      Agre, Philip E. y Chapman David. What are plans for?, Robotics and Autonomous Systems. No. 6 (1990); p. 17 34.

3.      IEEE Robotics and Automatization Soviet 2001.

4.      Akbarally, Huzefa y Kleeman, Lindsay. A sonar sensor for accurate 3D target localisation and classification IEEE International conference on robotics and automation. 1995.

5.      Mataric, Maja. A distributed model for mobile robot environment-learning and navigation.Cambridge, MA,1990.

6.      Parker, L. Current State of the Art in Dist Distributed Autonomous Mobile Robotic ,Distributed Autonomous Robotic Systems. Tokyo. Vol 4, (2000); p. 3-12.

7.      Yamasaki, H. Intelligent Sensing Technology., Journal of the Japan Society of Precision Engineering. Vol. 55, No. 9; 1989.

8.      [8] Everett, H.R. y Peters, A K. Sensors for MobileRobots , Wellesley, MA,1995.

9.      Feng, L, Borenstein, J y Everett, H.R. Where am I? Sensors and methods for mobile robot positioning. Universidad de Michigan. 1996.

10.  Adams. M.D. Sensor Modelling, Design and Data Processing for Autonomous Navigation. World cientific publishing , Series in Robotics and Intelligent Systems. Singapore. Vol. 13. 1999.

11.  [mcbtec.com. Funcionamiento_Encoder< www.mcbtec.com/Funcionamiento_Encoder.pdf >. superrobotica.com, sensor brjula digital <http://www.superrobotica.com/S320160.htm >

12.  Borges, G, Nogueira, A y G. S. Deep, Characterization of a Trajectory Recognition Optical Sensor for an Automated Guided Vehicle., IEEE Transactions on Instrumentation and measurement, Vol.49, N. 4, pp. 813 819. 2000.

13.  Malik R. y Yu H., The Infrared Detector Ring: Obstacle Detection for an Autonomous Mobile Robot. IEEE 35th Midwest Symposium on Circuit and Systems,1992.


 

14.  Flynn A., Combining sonar and infrared sensors for mobile robot navigation., The International Journal of Robotics Research, Vol. 7, N. 6, pp. 5 14. 1988.

15.  Sabatini A, Genovese V, Guglielmelli E, Mantuano

16.  A, Ratti G, y Dario P. A low-cost, composite sensor array combining ultrasonic and infrared proximity sensors., Procedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems, pp. 120 -126. Pittsburgh, 1995.

17.  Novotny P y Ferrier N, Using infrared sensors and the Phong illumination model to measure distances. Procedings of the IEEE

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2020 por los autores. Este artculo es de acceso abierto y distribuido segn los trminos y condiciones de la licencia Creative Commons Atribucin-NoComercial-CompartirIgual 4.0 Internacional (CC BY-NC-SA 4.0) (https://creativecommons.org/licenses/by-nc-sa/4.0/).

Enlaces de Referencia

  • Por el momento, no existen enlaces de referencia
';





Polo del Conocimiento              

Revista Científico-Académica Multidisciplinaria

ISSN: 2550-682X

Casa Editora del Polo                                                 

Manta - Ecuador       

Dirección: Ciudadela El Palmar, II Etapa,  Manta - Manabí - Ecuador.

Código Postal: 130801

Teléfonos: 056051775/0991871420

Email: polodelconocimientorevista@gmail.com / director@polodelconocimiento.com

URL: https://www.polodelconocimiento.com/