Acessibilidade / Reportar erro

Controle de robôs móveis utilizando o modelo cinemático

Resumos

Este trabalho apresenta a prova de estabilidade para controladores de modelos cinemáticos de robôs móveis, onde o ponto de guiamento é diferente do ponto médio do eixo das rodas. A prova é baseada no segundo método de Lyapunov. Simulações comprovam o desenvolvimento teórico.

Estabilidade de Lyapunov; modelo cinemático; robôs móveis


This work presents the stability proof for the mobile robot kinematic controller, where the guidance point is different from the medium point of wheel axis. The proof is based on the Lyapunov second method. Simulation results assert the theoretical development.

Lyapunov stability; kinematic model; mobile robots


Controle de robôs móveis utilizando o modelo cinemático

Celso de Sousa Júnior; Elder Moreira Hemerly

Departamento de Sistemas e Controle, Instituto Tecnológico de Aeronáutica - ITA, CTA-ITA-IEEE, 12228-900 São José dos Campos - SP, celso_de_sousa_junior@hotmail.com, hemerly@ele.ita.br

RESUMO

Este trabalho apresenta a prova de estabilidade para controladores de modelos cinemáticos de robôs móveis, onde o ponto de guiamento é diferente do ponto médio do eixo das rodas. A prova é baseada no segundo método de Lyapunov. Simulações comprovam o desenvolvimento teórico.

Palavras-chave: Estabilidade de Lyapunov, modelo cinemático, robôs móveis.

ABSTRACT

This work presents the stability proof for the mobile robot kinematic controller, where the guidance point is different from the medium point of wheel axis. The proof is based on the Lyapunov second method. Simulation results assert the theoretical development.

Keywords: Lyapunov stability, kinematic model, mobile robots.

1 INTRODUÇÃO

O problema de controle de robôs móveis pode ser dividido em três vertentes: controle considerando apenas o modelo cinemático (Jiang e Nijmeijer, 1997), (Kim e Oh, 1999) e (Aicardi et al., 1995), controle considerando apenas o modelo dinâmico (Yamamoto e Yun, 1994) e (Lages e Hemerly, 1998b) e controle utilizando tanto o modelo cinemático quanto o modelo dinâmico (Fierro e Lewis, 1998; Sousa Jr e Hemerly, 2001). Neste trabalho discutiremos apenas os controladores baseados no modelo cinemático.

Em Kanayama et al. (1990) é proposta uma lei de controle para robôs móveis com prova de estabilidade local baseada no segundo método de Lyapunov e, através de linearização do modelo, é realizada a especificação dos ganhos do controlador. Para o caso de estabilidade global, Jiang e Nijmeijer (1997) propõem um controlador que utiliza a técnica denominada backstepping (Khalil, 1996). Já em Yang e Kim (1999) é proposto um controlador robusto baseado em modos deslizantes que considera o modelo dinâmico do robô. Aicardi et al. (1995) utiliza o modelo cinemático em coordenadas polares.

Os trabalhos de Jiang e Nijmeijer (1997), Kim e Oh (1999), Aicardi et al. (1995), Yang e Kim (1999) e Fierro e Lewis (1998) apresentam um ponto em comum: eles consideram que o ponto de guiamento do robô é igual ao ponto médio do eixo das rodas (vide a Figura 1 para maiores esclarecimentos). Ou em outras palavras, a distância entre o ponto de guiamento e o ponto médio do eixo das rodas é nula. Assim, essas referências não permitem o tratamento do caso prático mais comum, no qual o ponto de guiamento difere do ponto médio do eixo das rodas.


Yamamoto e Yun (1994) mostram que se o ponto de guiamento é o mesmo que o ponto médio do eixo das rodas, então o sistema não é controlável, considerando o modelo dinâmico de quinta ordem.

Em Kim e Oh (1999) a linearização entrada-saída é empregada para os casos onde é possível deslocar o ponto de guiamento do eixo das rodas. Obtém-se um controlador para o modelo cinemático considerando a melhor solução no sentido quadrático.

Este cenário, onde boa parte dos controladores existentes consideram apenas as situação em que o ponto de guiamento é o mesmo que o ponto médio do eixo das rodas, estimula a investigação de outras possibilidades para a posição do ponto de guiamento. Este trabalho apresenta a prova de estabilidade local utilizando o segundo método de Lyapunov para o controlador proposto por Aicardi et al. (1995) para estes casos.

Na seção 3 é apresentado o modelo cinemático em coordenadas polares e cartesianas. Nas seções 4 e 5 são discutidas estratégias de controle para os modelos apresentados na seção 3.

A contribuição deste trabalho é a prova de estabilidade utilizando o segundo método de Lyapunov para o controlador da seção 5, para situações onde o ponto de guiamento não coincide com o ponto médio do eixo das rodas traseiras do robô móvel. Este desenvolvimento é apresentado na seção 6. Resultados de simulação são mostrados na seção 7.

2 NOMENCLATURA

A seguinte notação é utilizada no estudo do robô móvel apresentado na Figura 1, bem como no restante deste trabalho:

P: intersecção do eixo de simetria com o eixo das rodas;

C: centro de massa, que aqui também é o ponto de guiamento;

d: distância entre C e P, ou seja, distância entre o ponto de guiamento e o ponto médio do eixo das rodas;

r: raio das rodas;

R: distância entre as rodas de tração e o eixo de simetria, e

c = .

3 MODELO CINEMÁTICO

Seja o robô móvel com acionamento diferencial da Figura 1. O vetor de postura é caracterizado pela tripla (xc,yc,q), onde xc e yc são as coordenadas do ponto C (que também é o centro de massa) e q é o ângulo de orientação do robô.

Uma representação mais detalhada da Figura 1 segue na Figura 2. Desta forma, pode-se escrever a velocidade do robô em termos de c, c e , ou seja,


ou, em notação matricial,

onde v : velocidade linear do móvel e w : velocidade angular.

O robô apresentado na Figura 1 é conhecido como uniciclo (Aicardi et al., 1995) ou do tipo (2,0) 1 1 O tipo (d m,d s) do robô é definido através do grau de mobilidade (d m), que corresponde ao número mínimo de rodas fixas, e grau de manobrabilidade (d s), que é o número de rodas convencionais centradas orientáveis que podem ser orientadas independentemente para manobrar o robô. Para maiores detalhes vide (Campion et al., 1996)(Lages, 1998a). 2 A função arctan2 1, 2) devolve o arco tangente de em quatro quadrantes. Ela utiliza o sinal dos argumentos para calcular o quadrante do valor devolvido. Esta função pertence ao software MATLAB e a linguagem C padrão ANSI. .

A Equação (2) também é conhecida como modelo cinemático de postura (Campion et al., 1996). Este modelo também poderia ser obtido em coordenas polares (Aicardi et al., 1995)(Lages, 1998a), onde o vetor de postura seria composto pela tripla (e,f,a) (vide Figura 1), que é relacionada com coordenadas cartesianas por 2 1 O tipo (d m,d s) do robô é definido através do grau de mobilidade (d m), que corresponde ao número mínimo de rodas fixas, e grau de manobrabilidade (d s), que é o número de rodas convencionais centradas orientáveis que podem ser orientadas independentemente para manobrar o robô. Para maiores detalhes vide (Campion et al., 1996)(Lages, 1998a). 2 A função arctan2 1, 2) devolve o arco tangente de em quatro quadrantes. Ela utiliza o sinal dos argumentos para calcular o quadrante do valor devolvido. Esta função pertence ao software MATLAB e a linguagem C padrão ANSI.

Diferenciando em relação ao tempo a Equação (3), tem-se

Utilizando as Equações (4) e (5),

e agrupando-se as Equações (4) e (6) obtém-se

Conforme mencionado em (Aicardi et al., 1995), as Equações (3) e (8) são válidas apenas quando o vetor de postura de referência é diferente de (0 m, 0 m, 0 rad), uma vez que os âgulos f e a são indefinidos quando e = 0m. Portanto, não existe uma relação de um para um entre a tranformada da Equação (1) e da Equação (3) pois a correspondência é perdida nestes pontos singulares.

Substituindo-se a Equação (2) nas Equações (7) e (8), tem-se o modelo cinemático em coordenadas polares

Nas seções seguintes serão abordadas técnicas de controle para robôs móveis considerando os modelos cinemáticos da Equação (2) e Equação (9).

4 CONTROLE EM COORDENADAS CARTESIANAS

Analisando a Equação (2), nota-se que os três componentes do vetor de postura [xc yc q]T devem ser controlados por apenas duas entradas vc e wc. Uma abordagem relevante utilizando o segundo método de Lyapunov é apresentada em e utilizada em Kanayama et al. (1990) e utilizada em Fierro e Lewis (1997),Fierro e Lewis (1998) e Zhang et al. (1999). Seja a candidata a função de Lyapunov (Kanayama et al., 1990)

onde o parâmetro de projeto k3 é positivo e

onde [ xr yr qr]T é o vetor de postura da referência.

Utilizando o modelo cinemático em coordenadas retangulares (Equação (2)) com d = 0, obtém-se a lei de controle

sendo vr e wr as velocidades lineares e angulares da trajetória de referência, respectivamente, e k1 e k2 são constantes positivas. Portanto, para vr > 0, (e1,e2,e3) é negativa semi-definida. Detalhes sobre esta lei de controle podem ser encontrados em Kanayama et al. (1990) e Fierro e Lewis (1997).

5 CONTROLE EM COORDENADAS POLARES

Quando o vetor de postura da referência (composto por xr, yr e qr) não é igual a tripla (0 m, 0 m, 0 rad), a tripla (e, f, a) não pode ser calculada através da Equação (3). Portanto, vide a Figura 3, onde a tripla (e, f, a) é calculada em relação ao sistema {Xr, Yr, R}, resultando em


sendo [ex ey eq]T = [xc yc q]T – [ xr yrqr]T. Para calcular o ângulo f deve-se determinar os catetos do triângulo COR, que são formados pelas projeções de ex e ey. O cateto CO será composto por excos(qr) + eysin(qr), o cateto OR é formado por –exsin(qr) + eycos(qr), logo

e conseqüentemente

Considere a Equação (9) com d = 0. Seja a candidata a função de Lyapunov (Aicardi et al., 1995)

onde h é uma constante positiva. Então

Utilizando-se os sinais de controle

resulta em (e, f, a) < 0, o que significa que e e a são limitadas. A segunda derivada temporal da Equação (16) é

logo, do lema de Barbalat, e e a convergem para zero, o que implica, das Equações (9) e (18), que e tendem para zero. Então f tende para um valor finito . A convergência de para zero (Equação (9)), faz com que convirja para o valor constante dado por g1h (Lages, 1998a). Note que existe e é limitada (Equação (9)). Portanto, da continuidade uniforme de juntamente com a convergência para zero de a, é garantido que ® 0 (Lema de Barbalat). Assim, deve necessariamente convergir para zero (Aicardi et al., 1995; Slotine e Li, 1991).

6 CONTROLE EM COORDENADAS POLARES PARA d ¹ 0

Seja o robô móvel da Figura 4, cuja orientação é contrária ao robô móvel apresentado na Figura 1.


Note que a distância entre o ponto C e o ponto P é –d, isto porque o ponto C foi deslocado, em relação a P, no sentido contrário do eixo Xc. Portanto d, conforme a Figura 4, é um valor negativo. As velocidades linear e angular do robô móvel podem ser decompostas conforme a Figura 5.


Portanto, as velocidades do robô no ponto de guiamento C, em termos das coordenadas cartesianas, são dadas por

A posição do robô também pode ser representada em coordenadas polares, possuindo a seguinte relação com as coordenadas cartesianas

e portanto, da Equação (3), tem-se

ou seja, o modelo cinemático do robô móvel apresentado na Figura 4 é idêntico ao da Figura 1 (Equações (2) e (9)).

Seja a candidata a função de Lyapunov

onde h Î e e variável que assume somente valores positivos, conforme a Equação (3) para "xc, ycÎ . A derivada no tempo de V(e,f,a) é

e da Equação (22), resulta

Utilizando as leis de controle da Equação (18), a Equação (25) pode ser escrita na forma

onde

e

Note que para A, B > 0, é negativa semi-definida. Desta forma, vamos estabelecer a seguir as condições para que a desigualdade se cumpra.

Análise de A: Como e é positivo, pois e representa o raio em coordenadas polares, basta estudar a desigualdade

ou

Nota 6.1 Para a Î [–p , p] Þ sgn(a) = sgn(sin(a)), onde sgn(.) é a função sinal.

Portanto, da Nota 6.1 e recordando que d < 0, o primeiro termo da Equação (30) apresenta a seguinte desigualdade

A Equação (30) pode ser reescrita como

Pela análise da Equação (32) a positividade de A é satisfeita se

Nota 6.2 a cos(a) Î [–p, p], "a Î [–p, p]

Sejam agora as variáveis auxiliares x¢ e x tais que

e

onde x¢ > x > 0. Assim a Equação (33) é reescrita como

A Figura 6 ilustra a restrição da desigualdade da Equação (36). Seja o ponto s(x¢a2,xacos(a)) a intersecção entre as curvas a2 e a cos(a). Neste caso, quanto maior x¢ em relação à x, menor será o valor de s(x¢a2,xacos(a)) da Figura 6. Para a Î [0,s(x¢a2,xacos(a))], a inequação (36) não é verdadeira. Para todo a tal que |a| > s(x¢a2,xacos(a)) a desigualdade da Equação (33) é válida, podendo o valor s ser alterado através x¢ e x. Note, da Equação (34), que é necessário e > x¢ – d e que o ganho h seja ajustado conforme a Equação (35). A região onde A é positivo pode ser ilustrada conforme a Figura 7. A região hachurada representa o conjunto de pares (e, a) onde a desigualdade da Equação (33) falha. Tal região é ajustada de acordo com x¢ e x. Neste trabalho será considerado –d > 0, pois d positivo representa um ponto de guiamento atrás do eixo de simetria das rodas, o que não seria muito conveniente, vide Figura 4.



Análise de B:

É necessário que B também seja positivo, ou seja, da Equação (28), tem-se

ou

o que também pode ser escrito como

Utilizando o intervalo da Nota 6.1 e tomando –d > 0, o lado esquerdo da Equação (39) será sempre positivo.

Nota 6.3 Considere 1 > –d > 0. Tomando, por exemplo, x = x¢ = |d|, deve-se ter e > 2|d|.

Considerando –d = 1 e hf = –1, que é um caso crítico para a desigualdade da Equação (39), temos a Figura 8. Nesta figura, lado 1 = e lado 2 =


Note, na Figura 8, que existe um intervalo onde a desigualdade da Equação (39) não é válida. Contudo, ainda continua negativa semi-definida, pois temos o termo A, que foi analisado anteriormente. Basta então ajustar os parâmetros g1 e g2, tal que –g2A – g1B < 0. Se -g2< g 1, sendo Bo o valor de B quando a desigualdade da Equação (39) não é válida.

Pode-se concluir que é negativa semi-definida, ou seja, e e a são limitados. Seria conveniente provar que f ® 0. Contudo, ao verificar a segunda derivada da candidata à função de Lyapunov,

donde se conclui não ser possível mostrar que o lado direito é limitado, devido à presença de variáveis no denominador. Logo, o lema de Barbalat não pode ser aplicado para provar a convergência de para zero.

Considerando a Figura 7, nota-se que existem algumas restrições para que a função definida na Equação (10) seja uma função de Lyapunov:

• e > x¢ – d, Equação (34)

• h < , Equação (35)

• 1 > –d > 0

• –g2< g1\dfrac

Assim, conclui-se que o sistema da Equação (22) utilizando a lei de controle proposta na Equação (18) é localmente estável quando obedecida as restrições acima. Caso o sistema esteja fora área hachurada da Figura 7, então A > 0 Þ < 0 fazendo com que os argumentos da função de Lyapunov sejam decrescente. Se o par (e, a) estiver dentro da área hachurada implica que o sistema já convergiu. Lembrando que a área é ajustada de acordo com as restrições.

7 SIMULAÇÕES

Resultados de simulação, utilizando somente o modelo cinemático de robôs móveis e considerando -d= 0.01 m, são apresentados nas Figuras 9, 10 e 11. Os parâmetros de ajuste do sinal de controle estão resumidos na Tabela 1. Três diferentes trajetórias de referência foram implementadas e simuladas em MATLAB:

• Estabilização em um ponto: vr e wr são nulos, e o robô móvel tem que alcançar um ponto específico. Tal situação é representada na Figura 9.

• Trajetória retilínea: vr constante (0.5 m/s) e wr nulo, mostrada na Figura 10.

• Trajetória do tipo sala: vr é constante (1 m/s) e wr é modificada com a posição e com a manobra (0 or 2 rad/s), apresentada na Figura 11.




As trajetórias foram geradas considerando o modelo cinemático baseado em coordenadas cartesianas (Equação (2)) com d = 0.

Nas Figuras 9, 10 e 11 a sub-figura (a) representa o desempenho do robô móvel no plano cartesiano e a sub-figura (b) apresenta a evolução das coordenadas do vetor de postura.

8 CONCLUSÕES

Este trabalho apresenta a prova de estabilidade local utilizando o segundo método de Lyapunov para o controlador baseado no modelo em coordenadas polares (Aicardi et al., 1995) do robô móvel. É importante salientar que o modelo utilizado tem o ponto de guiamento diferente do ponto médio do eixo das rodas, situação pouco discutida na literatura e que tem bastante relevância nas aplicações práticas.

Apesar das restrições estabelecidas durante a prova, concluímos que o controlador proposto por Aicardi et al., (1995) poderia ser aplicado em situações mais realistas que as consideradas nos demais trabalhos da área, por exemplo Kanayama et al. (1990) e Jiang e Nijmeijer (1997).

As simulações apenas corroboram os resultados teóricos. Para controlar o robô móvel de maneira realmente eficiente deveríamos considerar também o modelo dinâmico. O que seria também indicado para as implementações em tempo real, apesar da complexidade destes controladores. Assim, este trabalho poderia ser aplicado nas estratégias mistas propostas por Fierro e Lewis (1998) e Sousa Jr e Hemerly (2001).

AGRADECIMENTOS

O primeiro autor agradece ao CNPq (Conselho Nacional de Desenvolvimento Científico e Tecnológico) pela bolsa de mestrado. O segundo autor agradece ao CNPq e a FAPESP, processos 66.2015/1998-3(PRONEX) e 99/05772-2, respectivamente.

Artigo submetido em 10/4/2002

1a. Revisão em 22/1/2003; 2a. Revisão 12/2/2003 Aceito sob recomendação do Ed. Assoc. Prof. Liu Hsu

  • Aicardi, M., Casalino, G., Bichhi, A.  Balestrino, A. 1995 . Closed loop steering of unicycle-like vehicles via techniques, IEEE Robotics and Automation Magazine 2(1): 27-35.
  • Campion, G., Bastin, G.  D'Andréa-Novel, B. 1996 . Structural properties and classification of kinematic and dynamical models of wheeled mobile robots, IEEE Transactions on Robotics and Automation 12(1): 47-62.
  • Fierro, R.  Lewis, F. L. 1997 . Control of a nonholonomic mobile robots: backstepping kinematics into dynamics, Journal of Robotic Systems 14(3): 149-163.
  • Fierro, R.  Lewis, F. L. 1998 . Control of a nonholonomic mobile robot using neural networks, IEEE Transactions on Neural Networks 9(4): 589-600.
  • Jiang, Z.  Nijmeijer, H. 1997 . Tracking control of mobile robots: a case study in backstepping, Automatica 33(7): 1393-1399.
  • Kanayama, Y., Kimura, Y., Miyazaki, F.  Noguchi, T. 1990 . A stable tracking control method for an autonomous mobile robot, International Conference on Robotics and Automation, Vol. 1, IEEE, s.l., pp. 384-389.
  • Khalil, H. K. 1996 . Nonlinear systems, 2nd edn, Prentice Hall, New Jersey.
  • Kim, D.-H.  Oh, J. 1999 . Tracking control of a two-wheeled mobile robot using input-output linearization, Control Engineering Practice 7(3): 369-373.
  • Lages, W. F. 1998a . Controle e estimaçăo de posiçăo e orientaçăo de robôs móveis, PhD thesis, Instituto Tecnológico de Aeronáutica - ITA, Săo José dos Campos.
  • Lages, W. F.  Hemerly, E. M. 1998b . Adaptive linearizing control of mobile robots, in IEEE (ed.), IFAC Workshop on Intelligent Manufacturing Systems 5th, IFAC, Gramado.
  • Slotine, J.-J. E.  Li, W. 1991 . Applied nonlinear control, Prentice Hall, New Jersey.
  • Sousa Jr, C.  Hemerly, E. M. 2001 . Adaptive control of mobile robot using a neural network, International Journal of Neural Systems 11(3): 211-218.
  • Yamamoto, Y.  Yun, X. 1994 . Coordinating locomotion and manipulation of a mobile manipulator, IEEE Transactions on Automatic Control 39(6): 1326-1332.
  • Yang, J.-M.  Kim, J. 1999 . Sliding mode control for trajectory tracking of nonholonomic wheeled mobile robots, IEEE Transactions on Robotics and Automation 15(3): 578-587.
  • Zhang, Q., Shippen, J.  Jones, B. 1999 . Robust backstepping and neural network control of a low-quality nonholonomic mobile robot, International Journal of Machine and Tools & Manufacture 39: 1117-1134.
  • 1
    O tipo (d
    m,d
    s) do robô é definido através do grau de mobilidade (d
    m), que corresponde ao número mínimo de rodas fixas, e grau de manobrabilidade (d
    s), que é o número de rodas convencionais centradas orientáveis que podem ser orientadas independentemente para manobrar o robô. Para maiores detalhes vide (Campion et al., 1996)(Lages, 1998a).
    2
    A função arctan2
    1,
    2) devolve o arco tangente de
    em quatro quadrantes. Ela utiliza o sinal dos argumentos para calcular o quadrante do valor devolvido. Esta função pertence ao software MATLAB e a linguagem C padrão ANSI.
  • Datas de Publicação

    • Publicação nesta coleção
      15 Abr 2004
    • Data do Fascículo
      Dez 2003

    Histórico

    • Recebido
      10 Abr 2002
    • Revisado
      22 Jan 2003
    • Aceito
      12 Fev 2003
    Sociedade Brasileira de Automática Secretaria da SBA, FEEC - Unicamp, BLOCO B - LE51, Av. Albert Einstein, 400, Cidade Universitária Zeferino Vaz, Distrito de Barão Geraldo, 13083-852 - Campinas - SP - Brasil, Tel.: (55 19) 3521 3824, Fax: (55 19) 3521 3866 - Campinas - SP - Brazil
    E-mail: revista_sba@fee.unicamp.br