Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Benito ortega
Departamento de Automatización y Control Industrial
Escuela Politécnica Nacional, Quito, Ecuador
oscar.camacho@epn.edu.ec
Universidad de los Andes, Mérida Venezuela
ocamacho@ula.ve
Resumen: Este trabajo tiene como objetivo diseñar un controlador de espacio nulo para
múltiples objetivos de control, incorporando la dinámica de los obstáculos en un solo
controlador considerando la existencia de obstáculos móviles aéreos o con conexión a tierra. El
controlador basado en espacio nulo permite cambiar la prioridad de la tarea a lograr, lo que
permite definir la formación rígida o flexible en función de la tarea prioritaria del controlador.
El análisis de estabilidad del sistema de control muestra que dicho sistema es estable y los
resultados de la simulación validan el sistema de control propuesto.
Introducción
El objetivo del controlador presentado es permitir que una formación de quadcopter complete
las tareas de formación dentro de entornos con obstáculos móviles, la principal ventaja es que
la formación de quadcopter puede realizarse entre partículas móviles externas, cuerpos u
otros drones que pueden chocar o dañar los agentes de la formación. Por lo tanto, para lograr
el controlador dinámico de evitación de obstáculos en el espacio 3D, se considera la variación
temporal del campo potencial, permitiendo la introducción de obstáculos móviles, ya que
relaciona las variables de los campos potenciales ficticios de cada obstáculo con el movimiento
de cada robot en la formación.
El control basado en espacio nulo se ha estudiado para desarrollar controladores para sistemas
con múltiples agentes como [5], el espacio nulo permite el control de múltiples tareas
simultáneamente, en función de tareas priorizadas, lo que permite manejar diferentes tareas
en conflicto. Por lo tanto, una tarea secundaria se realiza solo si no es conflictiva con la tarea
de nivel más alto, la idea principal de este controlador es proyectar la tarea secundaria en el
espacio nulo de la tarea prioritaria, evitando los conflictos entre las tareas y la subutilización
del sistema [8]. Por lo tanto, la tarea de evitar obstáculos se puede completar junto con los
parámetros de la formación.
Este documento contiene la estructura fluida. La sección 3 muestra los antecedentes de los
controladores propuestos. La sección 2 presenta el diseño del controlador dinámico de
seguimiento de trayectoria libre de colisión para formaciones de quadcopter, la sección 4
muestra los resultados de las pruebas de simulación y, finalmente, la sección 5 presenta los
comentarios finales del trabajo futuro.
Esta sección describe el modelo cinemático de un quadcopter, por lo tanto, la posición lineal
del quadcopter referida al suelo (E) se define como asξ=¿ , y B={ x B , y B , z B } son las
posiciones vinculadas a la centro de masa del quadcopter. Los ángulos de orientación del
cuadricóptero referidos al suelo se definen como [ϕ θ ψ] que representan la rotación de los
cuadricópteros en balanceo, cabeceo y guiñada [12].
[][
ẏ = SψCθ SψSθSϕ+CψCϕ SψSθCϕ−CψSϕ ẏ B
ż −Sθ CθSϕ CθCϕ ż B
][ ] (1)
Donde C (.) Y S (.) Representa las funciones cos (.) Y sin (.) Respectivamente. Considerando que
los ángulos de balanceo y cabeceo permanecen cerca de cero durante el vuelo, se puede
aplicar la llamada "aproximación de ángulo pequeño" [14], que establece que como ϕ → 0 y θ
→ 0, por lo tanto cosϕ≅1, senϕ≅0 y cosθ ≅1, senθ≅0 [6], desarrollando el modelo cinemático
simplificado que se muestra en
[][
ẏ = SψCθ SψSθSϕ+CψCϕ SψSθCϕ−CψSϕ ẏ B
ż −Sθ CθSϕ CθCϕ ż B
][ ] (2)
[][
ẏ = SψCθ SψSθSϕ +CψCϕ SψSθCϕ−CψSϕ ẏ B
ż −Sθ CθSϕ CθCϕ ż B
][ ] (3)
Las formaciones de múltiples agentes se pueden lograr a través de tres estructuras diferentes:
estructura líder-seguidor, estrategia basada en el comportamiento y estructura virtual de líder.
La estructura del seguidor Líder descrita en [2], donde uno de los agentes está etiquetado
como líder y los otros agentes son asignados como seguidores, solo el líder tiene la
información de los otros agentes, por lo tanto, si el líder falla, no hay manera de lograr el
objetivo de control. Esta arquitectura es demasiado rígida y la capacidad de evitar obstáculos
es insuficiente [1]. En la estructura basada en el comportamiento, cada agente cumple un
conjunto de reglas para cumplir con los objetivos de formación, esta estrategia se inspira en
los movimientos colectivos de animales [4]. La idea principal es establecer un peso promedio
para cada tarea que cada agente debe completar, luego se puede lograr el comportamiento
final ajustando el peso a cada tarea. La tercera estructura es el Líder virtual descrito en [5] y
[6], en el que un líder virtual para la formación se define a través de la relación geométrica
entre los agentes de la formación. Para realizar esta estructura, se necesitan costosos cálculos
y comunicaciones, ya que cada agente tiene la información de todos los miembros de la
formación [7]. Por lo tanto, esta estructura es más robusta que las otras dos estrategias y
permite lograr una formación precisa.
Las variables que describen la formación del líder virtual se muestran en la Fig. 2, la posición
T
del líder virtual (centroide) se define como P F=[x F y F z F ] ; la geometría de la formación
se etiqueta como s S F=[d 1 d 2 α F ]T , donde d_1 es la distancia entre el quadcopter Q_1 y
Q_2, mientras que d_2 es la distancia entre el quadcopter Q_1 y Q_3, y α_F es el ángulo
encerrado en el vértice de Q_1. Los marcos de formación se presentan como d as
F F =[ F x F y F z ] como se muestra en [5].
Las ecuaciones que describen las variables de control de formación se explican ampliamente
en [5]. Por lo tanto, los objetivos de control para la tarea de forma q_f y la tarea de postura
q_p se presentan en la ecuación (4) y (5) respectivamente.T (4)grafica
q f =[d 1 d 2 α ϕF θ F ψ F ]T
q p =[ X F Y F Z F ] (5)
Un campo potencial ϕ_ (t, x) se define como una región de repulsión sobre los obstáculos, que
depende de la posición de los cuadricópteros y de los parámetros que definen el obstáculo. El
presente trabajo presenta dos campos potenciales, uno para obstáculos a tierra y otro para
obstáculos aéreos.
{
T
−λ ( ξ−ξ o ) ( ξ−ξ o ) ; C 1
ϕt, x =
j
T
( ξ−ξ o ) ( ξ−ξ o ) (6)
¿0 ; C2
Con C 1 ∈{ξ ;‖ξ−ξo‖≤ d seg+ r 0 } y C 2 ∈{ξ ;‖ξ−ξo‖ ¿ d seg +r 0 } . . Por lo tanto, λ depende
directamente de la distancia de seguridad deseada donde el potencial comienza la interacción
con el quadcopter, definiéndose como se muestra en la ecuación
r 2o
λ= 4 (7)
(d seg + r 0)
Para extender el uso de este campo potencial a los obstáculos a tierra, se considera que el
valor de ξ en la ecuación (6) está en X, Y.
Para garantizar la evitación dinámica de obstáculos, la variación temporal del campo potencial
debe tenerse en cuenta, esto se obtiene cuando la derivada del campo potencial resultante se
calcula como se muestra en (8).
d ϕt , x ∂ ϕt , x
=J ϕ ẋ ob + (8)
dt ∂t
∂ ϕt , x ∂ ϕt , x ∂ ϕt , x ∂ ϕt , x ∂ ϕt , x ∂ ϕt , x
J ϕ=
[ ∂ x1 ∂ y1 ∂ z1
⋯
∂ x3 ∂ y3 ∂ z3 ]
(9)
II Diseño de controlador
Para realizar el controlador basado en espacio nulo, se debe describir la matriz jacobiana para
cada tarea para relacionar la definición de formación con el modelo cinemático de los
cuadricópteros. Por lo tanto, la matriz jacobiana J_i de una tarea q_i se puede describir como
se muestra en (10), esto permite relacionar la definición de la tarea con la velocidad x ̇_i de
cada quadcopter. (∂f_i (x)) / ∂ x ̇
∂ f i(x )
q̇ i= ẋ=J i (x) ẋ (10)
∂
Un esquema para describir la estructura de este controlador se muestra en ¡Error! No se
encuentra el origen de la referencia., Donde N_i es el espacio nulo de un jacobiano J_i, y se
puede calcular como N_i = [15].
La ley de control básica para este controlador puede determinarse mediante la proyección del
jacobiano de la tarea secundaria en el espacio nulo del jacobiano de la tarea prioritaria [16].
Por lo tanto, una ley de control para el controlador basado en espacio nulo con v_ (d, i) como
control de la i-ésima tarea se puede realizar como se muestra en (11):
Donde v_d es la ley completa de control de espacio nulo, y v_ (d, i) se puede calcular
invirtiendo (10) y desarrollando un controlador q_ (c, i): (12)
v d ,i = ẋ d ,i =J †i q c, i=J Ti ( J i J Ti ) qc ,i (12)
v d , f =J †f ( q̇ fd + K f tanh ~
qf ) (13)
Controlador de postura
v d , p =J †p ( q̇ pd + K p tanh ~q p ) (14)
Controlador para evitar obstáculos
∂ ϕt ,x
(
v d , ϕ=J †ϕ ϕ̇d + K ϕ tanh ~
ϕ t , x−
∂t ) (15)
Por lo tanto, el controlador completo para evitar obstáculos basados en el espacio nulo
produce la ley de control mostrada en (16).
∂ϕ
(
J †ϕ ϕ̇ d + K ϕ tanh ~ )
ϕt ,x − t , x +...
U =R−1
T
( ( I −J †ϕ J ϕ )
(
†
∂t
J f ( q̇ fd + K f tanh ~q f ) +...
( I −J f J f ) J p ( q̇ pd + K p tanh ~q p )
† † )
)
(16)
Análisis de estabilidad
La estabilidad del controlador se analiza a través del primer método de Lyapunov para la
estabilidad. Por lo tanto, el candidato de la ecuación de Lyapunov (17) se propone para
analizar la estabilidad de una tarea
1 1 2 1~ 2
V = ~qf 2+ ~
q + ϕ (17)
2 2 p 2 t,x
El candidato presentado en (17) es positivo definido y satisface que V (0) = 0 cuando q ̃_f = 0.
Posteriormente, se analiza la derivada del candidato: (18)
V̇ =~
qfT ~
q˙ f + ~
q Tp ~
q˙ p + ~
ϕTt , x ~
ϕ˙ t , x <0(18)
J 1 J 2† =0 (19)
Por lo tanto, reemplazando en (17) la definición de q ̇_i con (10), suponiendo un seguimiento
de velocidad perfecto y el controlador propuesto en (16) y la propiedad jacobiana de (19),
†
considerando la definición de J i† mostrada en ( 12), se puede demostrar que J i ( I −J i J i ) =0,
entonces se obtiene la ecuación (20):
∂ϕ
V̇ =~
qTf q̇ fd −J f [ J f † ( q̇ fd + K f tanh ~
{ q f ) ] + ~qTp q̇ pd−J p [ J p† ( q̇ pd + K p tanh ~
} { } {
q p ) ] +~ [(
ϕTt , x ϕ̇d + t , x −J ϕ J †ϕ ϕ̇d + K ϕ tanh
∂t
Otra propiedad de los jacobianos es que = I entonces, simplificando (20) produce: (21)
V˙ f =−~
q Tf ( K f tanh ~q f )−~
qTp ( K p tanh ~
q p ) −~
ϕTt , x ( K ϕ tanh ~
ϕt , x ) (4)
Lo cual siempre es negativo si K_f> 0, K_p> 0 y K_ϕ> 0. Por lo tanto, el sistema es
asintóticamente estable para las tres tareas involucradas en el controlador.
Resultados
Fig. 9. Errores de la tarea de forma (a) el error de la distancia d_1 y d_2 (b) el error del ángulo α
Fig. 10. Errores de las tareas de posición y orientación (a) errores de la tarea de orientación (b) errores de la tarea de postura.
La Fig. 12 muestra el campo potencial percibido por el controlador de formación, durante los
segundos 25 hasta 50 la formación está cerca del obstáculo, entonces el campo potencial
aumenta, modificando la trayectoria de la formación.
Debido a la intensidad del campo potencial que se muestra en la Fig. 12, que siempre está
cerca de cero y su valor máximo es 0.04, se puede determinar que el seguimiento de la
trayectoria en presencia de obstáculos aéreos estaba libre de colisión, lo que se puede probar
con la trayectoria tarea de seguimiento de la figura 10.
Fig. 5. Evitación de obstáculos para la formación de un quadcopter que rastrea una ruta de referencia sinusoidal.
Luego, para garantizar que este experimento no tuviera colisión con los obstáculos y dentro de
los cuadricópteros en formación, la evolución de las trayectorias parametrizadas en el tiempo
de los cuadricópteros y el obstáculo se presentan en la figura 7. (a) (b)
Fig. 7. Trayectorias parametrizadas en el tiempo (a) trayectorias de cuadricópteros con el obstáculo móvil y (b) solo de los
cuadricópteros en formación
IV. CONCLUSIONES
En este trabajo, se utiliza una formación basada en una estructura líder virtual cuyo líder
virtual se define con el centroide de la formación.
V. AGRADECIMIENTOS
Saúl González agradece al Proyecto PROMETEO de SENESCYT, República del Ecuador, por su
patrocinio para la realización de este trabajo.
[1] M. Herrera, W. Chamorro, A. P. Gómez, and O. Camacho, “Sliding Mode Control: An approach to Control a Quadrotor,” in
Computer Aided System Engineering (APCASE), 2015 Asia-Pacific Conference on, 2015, pp. 314–319.
[2] R. Abbas and Q. H. Wu, “Leader follower formation tracking control for multiple quadrotors,” in Control Engineering and
Information Systems: Proceedings of the 2014 International Conference on Control Engineering and Information Systems
(ICCEIS 2014, Yueyang, Hunan, China, 20-22 June 2014)., 2015, p. 21.
[3] D. Cai, J. Sun, and S. Wu, “UAVs formation flight control based on behavior and virtual structure,” AsiaSim 2012, pp. 429–
438, 2012.
[4] B. Shirani, N. Majdeddin, and I. Izadi, Cooperative Load Transport Using Multiple Quadrotors. Distributed Autonomous
Robotic Systems, Serie Springer Tracts in Advanced Robotics, 2013.
[5] C. Rosales, P. Leica, M. Sarcinelli-Filho, G. Scaglia, and R. Carelli, “3d formation control of autonomous vehicles based on
null-space,” J. Intell. Robot. Syst., vol. 84, no. 1–4, pp. 453–467, 2016.
[6] V. Moya, V. Espinosa, D. Chávez, P. Leica, and O. Camacho, “Trajectory tracking for quadcopter’s formation with two
control strategies,” in Ecuador Technical Chapters Meeting (ETCM), IEEE, 2016, vol. 1, pp. 1–6.
[7] X. Dong, Z. Shi, Z. Ren, and Y. Zhong, “Output formation-containment control for high-order swarm systems with directed
topologies,” in Control and Decision Conference (CCDC), 2015 27th Chinese, 2015, pp. 36–43.
[8] G. Antonelli, F. Arrichiello, F. Caccavale, and A. Marino, “Decentralized centroid and formation control for multi-robot
systems,” in Robotics and Automation (ICRA), 2013 IEEE International Conference on, 2013, pp. 3511–3516.
[9] S. M. Khansari-Zadeh and A. Billard, “A dynamical system approach to realtime obstacle avoidance,” Auton. Robots, vol. 32,
no. 4, pp. 433–454, 2012.
[10] L. Zhu, H. Mao, X. Luo, and J. Xiao, “Determining null-space motion to satisfy both task constraints and obstacle
avoidance,” in Assembly and Manufacturing (ISAM), 2016 IEEE International Symposium on, 2016, pp. 112–119.
[11] V. T. Rampinelli, A. S. Brandao, F. N. Martins, M. Sarcinelli-Filho, and R. Carelli, “A multi-layer control scheme for multi-
robot formations with obstacle avoidance,” in Advanced Robotics, 2009. ICAR 2009. International Conference on, 2009, pp.
1–6.
[12] S. Bouabdallah and R. Siegwart, “Full control of a quadrotor,” in Intelligent robots and systems, 2007. IROS 2007. IEEE/RSJ
international conference on, 2007, pp. 153–158.
[13] G. V. Raffo, “Modelado y Control de un Helicóptero Quad-Rotor,” MS Disert. Dept Telemática Automática Robótica Univ
Sevilla, 2007.
[14] V. Artale, C. L. R. Milazzo, and A. Ricciardello, “Mathematical modeling of hexacopter,” Appl Math Sci, vol. 7, no. 97, pp.
4805–4811, 2013.
[15] A. Marino, “A Null-Space-based Behavioral Approach to Multi-Robot Patrolling,” PhD thesis, Universita degli Studi della
Basilicata, 2004.
[16] G. Antonelli, F. Arrichiello, and S. Chiaverini, “The null-space-based behavioral control for mobile robots,” in
Computational Intelligence in Robotics and Automation, 2005. CIRA 2005. Proceedings. 2005 IEEE International
Symposium on, 2005, pp. 15–20.
[17] G. Torkel and L. Ljung, “Control Theory, Multivariable and Nonlinear Methods,” Lond. Taylor Fancis, 2000.
[18] S. Chiaverini, “Singularity-robust task-priority redundancy resolution for real-time kinematic control of robot manipulators,”
IEEE Trans. Robot. Autom., vol. 13, no. 3, pp. 398–410, 1997.