WERTHER ALEXANDRE DE OLIVEIRA SERRALHEIRO
Arquitetura de Controle de Movimento para umRobô Móvel sobre Rodas visando a Otimização
Energética
São Paulo
2015
WERTHER ALEXANDRE DE OLIVEIRA SERRALHEIRO
Arquitetura de Controle de Movimento para umRobô Móvel sobre Rodas visando a Otimização
Energética
Documento apresentado à Escola Politécnicada Universidade de São Paulo para a realiza-ção do Exame de Qualificação de Doutoradoem Ciências
Área de concentração:Engenharia Mecânica
Orientador:Prof. Dr. Newton Maruyama
São Paulo
2015
RESUMO
Este texto submete ao exame de qualificação um trabalho que propõe uma arquitetura
de controle de movimento para uma classe de robôs móveis sobre rodas (WMR) – os robôs
diferenciais acionados por motores elétricos – visando a otimização de seu movimento em
relação ao consumo energético. O modelo do WMR utilizado neste trabalho contempla a
cinemática do uniciclo, e as dinâmica do movimento do chassis do robô e do acionamento
elétrico, incluindo suas não-linearidades. Tendo como referência o Controlador Hierárquico
Aninhado (NHC), a arquitetura proposta neste trabalho possui duas camadas distintas: (i)
a camada superior, o Planejador de Trajetória, recebe como objetivo os pontos de controle
nos quais o WMR deve atingir em tempos especificos e planeja a trajetória ótima em re-
lação ao consumo energético; e (ii) a camada inferior, o Rastreador de Trajetória, gera o
sinal de controle para que o WMR acompanhe a seqüência de pontos interpolados pela
camada de planejamento. O Rastreador de Trajetórias é implementado com duas malhas
de controle: um controlador baseado em linearização entrada-saída para lidar com a cine-
mática e uma malha PID para controle da dinâmica do WMR. O conceito de splines suaves
é usado para formular o problema de otimização e então gerar as trajetórias ótimas para
o movimento do WMR. Os resultados parciais deste trabalho é apresentado, assim como
uma metodologia e um cronograma para o cumprimento de seus objetivos.
Palavras-chave: Robô Móvel. Controle. Não-linear.
ABSTRACT
This text submits to the qualifying exam a work which proposes a motion control archi-
tecture for a class of whelled mobile robot (WMR) - the differential robots driven by electric
motors - aiming at the optimization of their movement with respect to energy consumption.
The WMR model used in this work contains the kinematics of the unicycle, and both the ro-
bot chassis movement and electric drive dynamics, including their nonlinearities. Having as
reference the Hierarchical Nested Controller (NHC), the proposed architecture in this work
has two distinct layers: (i) the upper layer, the Trajectory Planner, gets the WMR movement
waypoints and corresponding times as inputs and plans the optimal trajectory in respecto
to energy consumtion; and (ii) the lower layer, the Trajectory Tracker generates the control
signal to force the WMR follow the sequence of points interpolated by the planning layer.
The Trajectory Tracker is implemented with two control loops: an input-output linearization
controller to handle the robot kinematics and a PID loop to control the WMR dynamics.
The concept of smoothing splines is used to formulate the optimization problem and hence
to generate the WMR movement optimal trajectories. The partial results of this work are
presented, as well as a methodology and a schedule for achieving the work objectives.
Keywords: Mobile Robot. Control. Non-Linear
LISTA DE ILUSTRAÇÕES
Figura 1 - Velocidade versus potência específica para alguns mecanismos de
locomoção. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Figura 2 - Robô comercial Pioneer P3-DX, da Adept Mobile Robots. . . . . . . 14
Figura 3 - Diagrama da arquitetura NHC. . . . . . . . . . . . . . . . . . . . . . 15
Figura 4 - O robô diferencial e seus sistemas referenciais. . . . . . . . . . . . . 17
Figura 5 - Diagrama de corpo livre de um ponto arbitrario no chassi do robô. . 19
Figura 6 - Modelo eletromecânico do Motor. . . . . . . . . . . . . . . . . . . . 21
Figura 7 - Diagrama de blocos do modelo não-linear do motor CC. . . . . . . . 22
Figura 8 - Diagrama de blocos dos modelos dinâmico e cinemático do robô. . . 23
Figura 9 - Ambiente virtual de simulação para o robô uniciclo diferencial. . . . . 24
Figura 10 - Problemas clássicos de controle de movimento de robôs móveis en-
contrados na literatura. . . . . . . . . . . . . . . . . . . . . . . . 26
Figura 11 - Abordagem ”siga a cenoura” original. . . . . . . . . . . . . . . . . . 31
Figura 12 - Abordagem ”siga a cenoura” modificada. . . . . . . . . . . . . . . . 32
Figura 13 - Diagrama de blocos do sistema de controle de Rastreamento de Tra-
jetória. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Figura 14 - Resposta ao degrau do controlador da dinâmica . . . . . . . . . . . 35
Figura 15 - Trajetórias de teste para o controle de Rastreamento de Trajetória. . 36
Figura 16 - A trajetória específica com um mix de seções de curvatura. . . . . . 37
Figura 17 - Sinais relevantes do experimento . . . . . . . . . . . . . . . . . . . 37
Figura 18 - A sensibilidade do erro linear el para alguns valores distintos do ga-
nho linear Kl. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Figura 19 - Uma trajetória lemniscata percorrida por oito ciclos. . . . . . . . . . 39
Figura 20 - Sinais do experimento com a trajetória lemniscata. . . . . . . . . . . 39
Figura 21 - Uma ilustração simplificada do problema de planejamento de caminho. 41
Figura 22 - A postura do WMR e sua trajetória de referência parametrizada em s. 44
Figura 23 - Controle de trajetória direcionada a waypoints. . . . . . . . . . . . . 46
Figura 24 - Planejamento de trajetória direcionada a waypoints no plano. . . . . 48
Figura 25 - Diagrama esquemático de blocos da Arquitetura de Controle proposta. 50
Figura 26 - Cronograma de Atividades Atualizado - Mensal. . . . . . . . . . . . 51
LISTA DE ABREVIATURAS E SIGLAS
AUV Autonomous underwater vehicle
CC corrente contínua
DARPA Defense Advanced Research Projects Agency
EPUSP Escola Politécnica da Universidade de São Paulo
LVNT Laboratório de Veículos Não Tripulados
MIMO Multiple Input, Multiple Output
NHC Nested Hierarchical Controller
PID Proporcional Integral Derivativo
WMR Wheeled Mobile Robot
LISTA DE SÍMBOLOS
ALFABETO ROMANO
a conjunto de equações diferenciais que representam um sistema
A, B, C matrizes da equação de estados de um sistema
b largura do WMR
bm coeficiente de amortecimento mecânico
Cp Ponto Cenoura (Carrot Point)
C matriz de controlabilidade
df distância entre o centro de rotação do robô e sua face frontal
ex, ey erros em coordenadas cartesianas
el, eθ erros em coordenadas polares
G Gramiano
h distância entre o centro de rotação do WMR e o seu centro de gravidade
I momento de inércia do chassi
ia corrente da armadura
J momento de inércia do motor
K matriz de ganho
Ke constante elétrica do motor
Kt constante de torque do motor
Kl, Kθ ganhos de um controlador de posição em coordenadas polares
Kp, Ki, Kd ganhos de um controlador PID
l comprimento do WMR
La indutância da armadura
M massa do WMR
N relação de engrenagens
O origem do sistema de inercial de referência
p saída de um sistema no espaço de estados
q estado de um sistema no espaço de estados
r raio das rodas do WMR
R centro de rotação do WMR
Ra resistência da armadura
R matriz de rotação ortogonal
s parâmetro de curva
T torque
T matriz de pesos para otimização
u tensão elétrica CC
v velocidade de translação
x, y coordenadas cartesianas
X, Y eixos de um sistema de coordenadas ou coordenadas parametrizadas
(dependendo do contexto)
ALFABETO GREGO
α, β limites para intervalos de interpolação
γ, λ multiplicadores de Lagrange
η coeficiente de otimização
θ ângulo entre o sistema de coordenadas do WMR e o sistema inercial no
domínio do tempo
Θ ângulo entre o sistema de coordenadas do WMR e o sistema inercial no
domínio da curva
µ parâmetro de suavização para splines
ξ vetor de postura do WMR no domínio do tempo
Ξ vetor de postura do WMR no domínio da curva
ρ peso da importância energética no problema de otimização
% hiato entre o erro linear e o Ponto Cenoura
τ torque ou peso do erro geométrico no problema de otimização (depen-
dendo do contexto)
τs coeficiente de torque relativo à static friction ou fricção estática
τc coeficiente de torque relativo à fricção de Coulomb
ϕ raio de curvatura
ψ ponto de interesse (waypoint)
ω velocidade angular
SIMBOLOGIA ESPECIAL
C caminho (path) no plano
F . sistema de coordenadas
sign(.) função que retorna o sinal de (.)
min(.) função que retorna o mínimo de (.)
negrito vetores ou matrizes
∧ and lógico
SUBESCRITOS
(.)a relativo à armadura do motor
(.)cp relativo ao Ponto Cenoura (Carrot Point)
(.)d relativo à referência desejada (desired)
(.)i índice para contagem ou somatória
(.)l relativo à esquerda (roda ou motor)
(.)m relativo ao motor
(.)max valor máximo de (.)
(.)min valor mínimo de (.)
(.)O relativo ao sistema inercial de referência
(.)R relativo ao WMR
(.)r relativo à direita (roda ou motor)
(.)ref relativo à referência
(.)Sat relativo à saturação
(.)ss relativo ao regime permanente (static state)
(.)x relativo à direção no eixo X
(.)y relativo à direção no eixo Y
(.)Zm relativo à zona morta
(.)ω relativo à velocidade angular
(.)0 velocidade fixa ou velocidade inicial (dependendo do contexto)
SOBRESCRITOS
(.)P relativo a um ponto arbitrário no chassi
(.)(n) enésima derivada de (.)
(.)R relativo ao WMR
(.)T operação de transposição matricial
(.)∗ ótimo de (.)
(.) (.) estimado˙(.) derivada no tempo
(.) erro
SUMÁRIO
1 INTRODUÇÃO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.1 CONTEXTUALIZAÇÃO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.2 ESCOPO E PROBLEMA DE PESQUISA . . . . . . . . . . . . . . . . . . . . . 13
1.3 OBJETIVOS DE PESQUISA . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.4 ORGANIZAÇÃO DO TEXTO . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2 O ROBÔ MÓVEL SOBRE RODAS . . . . . . . . . . . . . . . . . . . . . . 17
2.1 MODELAGEM MATEMÁTICA DO WMR . . . . . . . . . . . . . . . . . . . . . . 17
2.1.1 Modelo Cinemático Direto . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.1.2 Modelo Dinâmico do Chassis . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.1.3 Modelo do Motor de Corrente Continua . . . . . . . . . . . . . . . . . . . 21
2.1.3.1 Modelo Linear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.1.3.2 Modelo Não Linear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.2 IMPLEMENTAÇÃO COMPUTACIONAL . . . . . . . . . . . . . . . . . . . . . . 23
2.3 CONTROLE DE MOVIMENTO DE ROBÔS MÓVEIS SOBRE RODAS . . . . . 25
2.3.1 Controlabilidade para o Problema de Rastreamento de Trajetória . . . . 28
3 RASTREAMENTO DE TRAJETÓRIA . . . . . . . . . . . . . . . . . . . . 30
3.1 CONTROLE DA CINEMÁTICA . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.1.1 Linearização por Realimentação . . . . . . . . . . . . . . . . . . . . . . . . 30
3.1.2 A abordagem ”Siga a Cenoura” . . . . . . . . . . . . . . . . . . . . . . . . 31
3.1.3 Uma modificação da abordagem ”Siga a Cenoura” . . . . . . . . . . . . . 32
3.2 CONTROLE DA DINÂMICA . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3.3 IMPLEMENTAÇÃO COMPUTACIONAL . . . . . . . . . . . . . . . . . . . . . . 34
3.4 RESULTADOS EXPERIMENTAIS . . . . . . . . . . . . . . . . . . . . . . . . . 35
4 PLANEJAMENTO DE TRAJETÓRIA . . . . . . . . . . . . . . . . . . . . . 40
4.1 SPLINES SUAVES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
4.1.1 Descrição do caminho (path) . . . . . . . . . . . . . . . . . . . . . . . . . 44
4.1.2 Parametrização temporal do caminho . . . . . . . . . . . . . . . . . . . . 44
4.2 OTIMIZAÇÃO DA TRAJETÓRIA . . . . . . . . . . . . . . . . . . . . . . . . . . 45
5 METODOLOGIA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
5.1 FORMULAÇÃO DO PROBLEMA . . . . . . . . . . . . . . . . . . . . . . . . . . 47
5.2 PROPOSTA DE TRABALHO . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
5.3 CRONOGRAMA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
REFERÊNCIAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
ANEXO A – DATASHEET DO MOTOR CC . . . . . . . . . . . . . . . . . . . 59
12
1 INTRODUÇÃO
1.1 CONTEXTUALIZAÇÃO
A sociedade vem experimentando o advento de novas tecnologias com uma freqüên-
cia cada vez maior, e um dos campos de conhecimento que mais evoluíram científica e
tecnologicamente é o da Robótica Móvel.
Notadamente percebe-se o avanço tecnológico recente neste campo, com os drones
aéreos, automóveis com direção automática, submarinos autônomos, aspiradores de pó
robóticos, e toda a sorte de veículos automáticos que dia após dia têm feito parte de nosso
cotidiano. Se utilizado para fins pacíficos, estes avanços podem trazer melhorias significa-
tivas para a qualidade de vida do ser humano e benefícios para a sociedade.
Inicialmente, o foco na pesquisa neste campo se concentrou em aplicações aeronáuticas
e espaciais, incluindo veículos de lançamento, transferência orbital e aviação supersônica.
Em todas estas aplicações, a possibilidade de resolver problemas de controle complexos
só foi possível devido a avanços na computação de alta velocidade.
Mais recentemente, aplicações civis e comerciais de robôs móveis tem ganhado espaço
e atenção da comunidade acadêmica. Empresas que tradicionalmente são fabricantes
de robôs manipuladores, como a KUKA e a ABB, desenvolvem aplicações industriais em
plataformas móveis. Outras, como a Sony e a Boston Dynamics têm desenvolvido pesquisa
com robôs com pernas.
A agência estadunidense DARPA – Defense Advanced Research Projects Agency –
promove anualmente desafios a universidades, empresas e institutos de pesquisa inter-
nacionais no sentido de captar tecnologia para projetos de defesa. Enfim, este campo
tecnológico gera uma demanda de pesquisa científica que tem sido acolhida por universi-
dades pelo mundo, como por exemplo a ETH Zürich, a Georgia Institute of Technology, a
Oxford Mobile Robotic Group, dentre tantas outras.
O Departamento de Engenharia Mecatrônica e de Sistemas Mecânicos da Escola Poli-
técnica da Universidade de São Paulo (EPUSP) tem participado desse processo. O Labo-
ratório de Veículos Não Tripulados (LVNT) vem desenvolvendo projetos de pesquisa apli-
cada em veículos aquáticos e aéreos, tanto autônomos quanto semi-autônomos, com tra-
balhos voltados para a identificação da dinâmica veicular (AVILA, 2008; DANTAS, 2014),
para o desenvolvimento de arquiteturas de controle (FERREIRA, 2003; CUTIPA-LUQUE,
2012) e de sistemas de navegação (ZANONI, 2012) de AUV – Autonomous underwa-
ter vehicle, baseados em protótipos desenvolvidos pelo Laboratório, como o LAURS e o
Pirajuba.
13
Outros grupos do Departamento têm contribuído com este desenvolvimento através de
pesquisas científicas correlatas, como no campo de fusão sensorial (SANTANA, 2011;
CAMPOS FILHO, 2012), mapeamento e navegação por visão computacional (DECCÓ,
2004; OLIVEIRA, 2008) e posicionamento dinâmico (TANNURI, 2009; MIYAZAKI, 2013).
A autonomia energética de veículos autônomos é diretamente impactada pela energia
disponível e pela eficiência em sua movimentação. Estas considerações são de fundamen-
tal importância em áreas remotas e isoladas, como por exemplo, em ambientes espaciais
ou submarinos, onde a recuperação ou reabastecimento energético não é possível.
Especificamente, o consumo energético de robôs móveis pode ser minimizado pela oti-
mização da eficiência energética de seus sistemas, incluindo motores e drivers, em sua
etapa de projeto. Entretanto, ganhos consideráveis podem ser obtidos com o planeja-
mento eficiente de sua movimentação. Este campo de estudos tem emergido como uma
forma alternativa interessante para minimizar o consumo energético de robôs, e ainda não
tem sido suficientemente explorado (LIU; SUN, 2014).
A pergunta motivadora de pesquisa é então formulada: ”como um veículo autônomo
pode realizar seu movimento de forma a otimizar seu consumo energético?”
1.2 ESCOPO E PROBLEMA DE PESQUISA
Existe uma grande variedade de formas possíveis de movimentação robótica, a maioria
deles inspirados na biologia, permitindo que robôs possam andar, pular, correr, deslizar, na-
dar, voar e rolar (SIEGWART; NOURBAKHSH, 2004). Porém, existem exceções derivadas
de uma das mais antigas invenções humanas: a roda. Ela pode alcançar eficiência supe-
rior a mecanismos biológicos, como ilustrado na Figura 1, com uma relativa simplicidade
de implementação mecânica.
100
10
espe
cífic
a (h
p/to
n)
1
0.1100101
Pot
ênci
a es
pecí
fica
Velocidade (milhas/h)
Figura 1 - Velocidade versus potência específica para alguns mecanismos de locomoção.
Fonte: Siegwart e Nourbakhsh (2004).
14
Por estas características, este trabalho escolhe como objeto de pesquisa um robô móvel
terrestre sobre rodas (WMR – Wheeled Mobile Robot) com topologia diferencial. Esta
topologia robótica possui formato retangular e duas rodas tracionadas individualmente por
motores elétricos. Tais aspectos lhe conferem relativa facilidade de construção a custos
acessíveis, e por este motivo tem sido popularmente utilizado como plataforma de pesquisa
(AICARDI et al., 1995; ASHOORIRAD et al., 2006; CHWA, 2010; LI; YE, 2014). A Figura 2
ilustra um WMR comercial com esta configuração.
Figura 2 - Robô comercial Pioneer P3-DX, da Adept Mobile Robots.
Seja então um WMR diferencial num ambiente plano e estruturado1. Sua movimenta-
ção partindo de um ponto e chegando a outro depende de um sistema de controle de
movimento. Dentre as arquiteturas de controle de movimento mais utilizadas está o Con-
trolador Hierárquico Aninhado (MURPHY, 2000), ou Nested Hierarchical Controller (NHC),
uma arquitetura de controle hierárquico deliberativo, ilustrada na Figura 3.
Nesta adaptação da arquitetura NHC, o planejamento é decomposto em dois níveis hie-
rárquicos de abstração: o Planejador de Missão e o Planejador de Trajetória (ou Navega-
dor). De um nível para outro, o planejamento se torna mais específico e detalhado. Desta
forma, o Planejador de Missão envia objetivos da missão para o Planejador de Trajetória,
que por sua vez determina ações que devem ser enviadas ao controlador de baixo nível
(Rastreador de Trajetória), para que o robô percorra o trecho da trajetória.
Conforme o robô se move, novas informações são adquiridas por meio dos sensores do
robô para atualização do modelo do mundo. Quando necessário, o Planejador de Trajetória
corrige o movimento local do robô para controlar as eventuais divergências percebidas. Se
ainda assim esta correção não for suficiente, o Planejador de Missão refaz o planejamento
da missão, apresentando novos objetivos ao Planejador de Trajetórias.
1Num ambiente estruturado os parâmetros necessários à operacionalidade do sistema robótico – como
por exemplo obstáculos fixos ou móveis, coeficiente de atrito do solo ou inclinação do plano – possam ser
identificados e quantificados
15
Sentir
Modelo de Mundo/
Base de Conhecimento
Planejar
Planejador de
Missão
Planejador de
Trajetória
Objetivo
Trajetória
Agir
Rastreador de
Trajetória
Robô Móvel
Ação de
Controle
t
Figura 3 - Diagrama da arquitetura NHC (adaptado de Murphy (2000)).
O presente texto para o Exame de Qualificação apresenta uma proposta de trabalho
que foca na proposição de controladores para dois níveis desta arquitetura, destacadas na
Figura 3: o Planejador de Trajetória e o Rastreador de Trajetória.
Partindo-se do pressuposto de que o ambiente onde o robô se move é estruturado, as
tarefas de mapeamento, navegação e telemetria ficam transparentes ao problema desta
pesquisa. Então, o problema tem seus limites bem definidos: dado um WMR diferencial
acionado por motores elétricos em um ambiente plano estruturado, cujo objetivo é se des-
locar através de pontos definidos neste plano – waypoints, quais são as ações de controle
necessárias para atender tal objetivo de maneira ótima do ponto de vista energético?
1.3 OBJETIVOS DE PESQUISA
De forma geral, este trabalho objetiva definir uma arquitetura de controle hierárquico
para controle de movimento de um robô diferencial, visando a otimização de seu consumo
energético, baseado na arquitetura NHC proposta por Murphy (2000).
Tendo em vista o escopo da pesquisa cujo foco se limita à arquitetura de controle,
escolheu-se utilizar de um modelo matemático implementado computacionalmente, porém
que seja suficientemente complexo para se aproximar ao máximo possível de um WMR
real. Nørgaard, Poulsen e Ravn (2000) apresentam um modelo matemático de um robô
diferencial que atende esta expectativa. O primeiro objetivo específico é implementar com-
putacionalmente este modelo matemático como um bloco de Mathworks Simulink.
16
Os pontos de controle, ou waypoints, definidos externamente pelo Planejador de Missão
devem conter as coordenadas específicas dos pontos no plano, assim como o tempo na
qual o WMR deve atingir estes pontos. Então, o objetivo do Planejamento de Trajetória é
interpolar estes pontos de forma a traçar uma trajetória ótima, minimizando um funcional
de custo que contemple a energia necessária para a realização desta trajetória. A formula-
ção matemática e a implementação computacional desta otimização é o segundo objetivo
específico desta pesquisa.
Por fim, o terceiro objetivo específico desta pesquisa é formular e implementar com-
putacionalmente um controlador capaz de, dados os pontos interpolados pelo Planejador
de Trajetória, gerar sinais de controle (neste caso, a tensão em cada uma das rodas) ca-
paz de levar o WMR a rastrear a trajetória gerada. Ambos os controladores (Planejador e
Rastreador de Trajetória) serão implementados em Mathworks Matlab.
1.4 ORGANIZAÇÃO DO TEXTO
Alguns dos objetivos foram totalmente ou parcialmente alcançados neste processo de
doutoramento. Este texto de qualificação vem apresentar os resultados do trabalho até
então, assim como propostas para sua consecução.
No Capítulo 2, é apresentada a formulação do modelo matemático proposto por Nørga-
ard, Poulsen e Ravn (2000). A implementação computacional deste modelo em Mathworks
Simulink então é descrita. Neste capítulo também é apresentado uma revisão da literatura
sobre o problema de controle de movimento de robôs móveis, demonstrando que o modelo
proposto não permite um controlador universal, que dê conta de qualquer trajetória e sob
qualquer condição inicial.
Então, no Capítulo 3, uma proposta de controle de Rastreamento de Trajetória é apre-
sentada, tratando as questões cinemáticas e dinâmicas do modelo do WMR de forma
isolada. Para a cinemática, apresenta-se um controle baseado em linearização entrada-
saída (input-output feedback linearization) (SLOTINE; LI, 1991); para dinâmica, um con-
trole baseado em PID. Os resultados experimentais deste controlador em malha dupla são
apresentados e discutidos no capítulo.
Em seguida, no Capítulo 4, uma revisão na literatura de Planejamento de Trajetória in-
troduz o conceito de smoothing splines (ou splines suaves) para planejamento de caminho,
tão bem como formula o problema de otimização de trajetória.
Por fim, o Capítulo 5 propõe uma metodologia de trabalho para o problema de con-
trole ótimo e de formulação da arquitetura propostos neste documento, tão bem como um
cronograma de atividades para a consecução do trabalho.
17
2 O ROBÔ MÓVEL SOBRE RODAS
2.1 MODELAGEM MATEMÁTICA DO WMR
Nesta seção, o modelo matemático do robô móvel é apresentado. O robô escolhido
para este trabalho, um robô diferencial, possui um modelo cinemático uniciclo, que possui
restrições cinemáticas. É apresentado também um modelo dinâmico relativamente com-
pleto, contendo efeitos dinâmicos reais – como os efeitos Coriolis, aceleração centrifuga e
não-linearidades referentes às fricções e saturações dos motores DC.
2.1.1 Modelo Cinemático Direto
O modelo cinemático do uniciclo considera o robô como um corpo rígido sobre rodas,
operando em um plano horizontal. São também consideradas três dimensões que carac-
terizam o número de graus de liberdade do robô: duas para a sua posição no plano e uma
para a orientação do eixo de simetria do robô em relação ao plano. Também considera-se
o chassis do robô como sendo apenas seu corpo rígido retangular, ignorando as juntas
e os graus de liberdade internos ao robô e também as suas rodas (D’ANDREA-NOVEL;
CAMPION; BASTIN, 1993).
Neste trabalho considera-se o robô constituído de duas rodas de raio r montadas em
um eixo imaginário YR, e controladas por motores independentes, como ilustra a Figura 4.
Sejam também definidas as dimensões do robô, com largura b e comprimento l, e df a
distância entre o centro de rotação do robô R e sua face frontal.
YO
XO
YR
XR
θ
b
l
r
dfωl
ωr
vRxvRyy
x
R
O
Figura 4 - O robô diferencial e seus sistemas referenciais.
18
Para especificar a posição do robô no plano, são estabelecidos dois sistemas de refe-
rência - um sistema de coordenadas global FO : XO, YO a partir de uma origem iner-
cial O e um sistema de coordenadas do corpo do veículo a partir do ponto R dado por
FR : XR, YR. A posição do ponto R no sistema global de referência é especificada pelas
coordenadas x e y, e a diferença angular entre ambos os sistemas de referência é dada por
θ. Então, as coordenadas generalizadas (pose ou postura) do robô em um determinado
tempo t podem ser representadas pelo vetor
ξO(t) = [x(t), y(t), θ(t)]T . (1)
O mapeamento entre os sistemas de coordenadas FO e FR é dado pela matriz de rota-
ção ortogonal:
R(θ) =
cosθ senθ 0
−senθ cosθ 0
0 0 1
. (2)
Esta matriz pode ser usada para mapear o movimento entre os dois sistemas de coor-
denadas pela operação ξR =R(θ)ξO.
Como ambas as rodas são controladas individualmente, suas velocidades angulares
ωr(t) e ωl(t) são independentes. Então, podem-se relacionar as velocidades angulares
das rodas com a velocidade de translação v(t) = vRx (t) =√x2(t) + y2(t) na direção de
XR e com a velocidade de rotação ω(t) = θ do sistema de coordenadas do veículo da
seguinte forma (NØRGAARD; POULSEN; RAVN, 2000):
v(t) =r(ωr(t) + ωl(t))
2,
ω(t) =r(ωr(t)− ωl(t))
b. (3)
Se a velocidade linear do robô for decomposta em suas componentes referentes ao
sistema inercial FO, pode se escrever
ξO =
x(t)
y(t)
θ(t)
=
cosθ(t) 0
senθ(t) 0
0 1
[v(t)
ω(t)
]. (4)
Substituindo 3 em 4, e considerando o mesmo raio para ambas as rodas, tem-se o
modelo cinemático do uniciclo:
ξO =
x(t)
y(t)
θ(t)
=
rcosθ(t)/2 rcosθ(t)/2
rsenθ(t)/2 rsenθ(t)/2
r/b −r/b
[ωr(t)
ωl(t)
]. (5)
19
Observa-se pelas Equação 5 que este modelo é subatuado, ou seja, o número de entra-
das de controle independentes ([ωr ωl]T ∈ R2) é menor do que o grau de liberdade (DOF)
do robô (ξO ∈ R3). Esta divergência dimensional se deve a restrições de movimento, ou
restrições cinemáticas dadas pelas equações
xcosθ − ysenθ − (b/2)θ = rωl,
xcosθ − ysenθ + (b/2)θ = rωr,
xsenθ − ycosθ = 0. (6)
Quando as acelerações também são consideradas como particularidades do movimento
do robô, restrições dinâmicas também devem ser expressas.
2.1.2 Modelo Dinâmico do Chassis
As velocidades do robô nas direções perpendiculares XR e YR são dadas pelas compo-
nentes vRx e vRy respectivamente. Seja um ponto arbitrário P = (x∗, y∗) no corpo do veículo,
cujas componentes de velocidades são dadas por vPx e vPy como mostra a Figura 5.
YR
XR
vRy
vRx
y∗
x∗
P
R
vPy
vPx
ω
Figura 5 - Diagrama de corpo livre de um ponto arbitrario no chassi do robô.
A relação entre vPx , vPy e vRx , vRy e a velocidade angular ω = θ do chassis do WMR pode
ser descrita por
vPx = vRx − ωy∗,
vPy = vRy + ωx∗. (7)
Derivando-se as velocidades das equações 7 e aplicando-se a segunda lei de Newton
sob a massa M do veículo tem-se
FRx = M(vRx − ωy∗ − ωvRy − ω2x∗),
FRx = M(vRy + ωx∗ + ωvRx − ω2y∗). (8)
20
As forças em cada direção são compostas por quatro termos. Os primeiros são relativos
às acelerações do veículo em cada uma das direções (vRx e vRy ). Os segundos correspon-
dem às componentes da aceleração de Euler, ou aceleração tranversal, dado pelo produto
vetorial entre a aceleração angular e o vetor (~P − ~R).
Os dois últimos termos tem relação com as pseudo-forças inerciais: os terceiros estão
relacionados com as componentes da aceleração inercial de Coriolis, expressa pelo pro-
duto vetorial entre a velocidade linear e a velocidade angular; enquanto os quartos termos
são as componentes da aceleração inercial centrífuga.
Se o ponto P for escolhido como sendo o centro de massa do veículo, localizado a uma
distância h de R, no eixo XR, então tem-se que y∗ = 0, vRy = 0, x∗ = −h. Assumindo
vRx = v, as equações 8 podem ser reescritas como
FRx = Fxr + Fxl = M(v + ω2h),
FRy = Fyr + Fyl = M(−ωh+ ωv). (9)
Como o ponto R está localizado no ponto médio entre as rodas, I o momento de inércia
do chassi, pode-se escrever o momento angular da forma
Iω =b
2(Fxr − Fxl) + h(Fyr + Fyl). (10)
Substituindo 9 em 10, após alguns arranjos algébricos, as forças em cada uma das rodas
na direção XR são dadas por
Fxr =I +Mh2
bω +
Mh
2ω2 − Mh
bωv +
M
2v,
Fxl = −I +Mh2
bω +
Mh
2ω2 +
Mh
bωv +
M
2v. (11)
Substituindo as equações 3 – assim como suas derivadas no tempo – nas equações 11,
leva a relação entre as forças nas rodas e suas velocidades angulares:
Fxr =
(M
4+I +Mh2
b2
)rωr +
(M
4− I +Mh2
b2
)rωl+
+Mh
b2r2(ω2
l − ωrωl),
Fxl =
(M
4− I +Mh2
b2
)rωr +
(M
4+I +Mh2
b2
)rωl+
+Mh
b2r2(ω2
r − ωrωl). (12)
Maiores detalhes a respeito da formulação matemática deste modelo dinâmico podem
ser encontrados no relatório técnico de Nørgaard, Poulsen e Ravn (2000).
21
2.1.3 Modelo do Motor de Corrente Continua
Cada roda do robô é acionada por um motor de corrente contínua (CC) independente.
Os modelos lineares e não-lineares são descritos nesta subseção.
2.1.3.1 Modelo Linear
O circuito elétrico da armadura e o diagrama de corpo livre do rotor é mostrado na
Figura 6.
+−u
RaiaLa
+−e
θm Tm
Jm
bm
Figura 6 - Modelo eletromecânico do Motor.
Onde Ra é a resistência da armadura, La é a indutância da armadura, e a força contra-
eletromotriz que recai sobre o circuito do motor, Tm é o torque gerado pelo motor e θm é a
velocidade angular do eixo. O momento de inércia Jm e o coeficiente de amortecimento bm
são inerentes aos aspectos construtivos do motor.
Neste modelo de motor controlado por armadura, assume-se que a entrada do sistema
é a fonte de tensão u aplicada à armadura do motor, enquanto a saída do sistema é a
velocidade do eixo do motor ωm = θm. Assume-se também que o rotor e seu eixo são
rígidos. Também supõe-se que o motor não está sofrendo influência de torques de cargas
externos ao modelo.
Num modelo linear, o torque Tm = Ktia gerado pelo motor CC é proporcional à corrente
de armadura, e a força contra-eletromotriz e = Keθm é proporcional à velocidade angular
do eixo, onde Ke é a constante contra-eletromotriz induzida e Kt a constante de torque.
Aplicando-se a lei de Kirchoff no circuito da armadura e a lei de Newton rotacional no eixo
do motor, tem-se as duas equações diferenciais que regem o comportamento dinâmico do
sistema:
diadt
=1
La
(u−Raia −Ke
dθmdt
), (13)
d2θmdt2
=1
Jm
(Ktia − bm
dθmdt
). (14)
22
2.1.3.2 Modelo Não Linear
O diagrama de blocos do modelo não linear do motor CC proposto é apresentado na
Figura 7, onde s é o operador derivativo de Laplace. O modelo considera a tensão imposta
na armadura u como entrada e a velocidade do eixo do motor θm como saida.
−−+
u 1La
1s
diadt
Saturacao Kt−−+
Tm
τ
1Jm
1s
d2θmdt2
Zona−Morta
dθmdt
Raia
bm
FriccoesTs + Tc
Kee
Figura 7 - Diagrama de blocos do modelo não-linear do motor CC.
Neste modelo, foram incluídas a saturação da corrente na armadura iSat, a zona morta
relativa à partida do motor θZm e duas componentes de atrito - a estática Ts (static fricion
ou stiction) e a dinâmica Tc (fricção de Couloumb) dadas por:
iSat =
imax , i ≥ imax
i , imin < i < imax
imin , i ≤ imin
θZm =
θ , |θ| > θmin
0 , |θ| ≤ θmin
Ts =
sign(Tm).min(τs, |Tm − τ |) , θ 6= 0
0 , θ = 0
Tc =τcsign(θ),
onde τc é a magnitude do torque dado pela fricção de Coulomb, τs e o máximo torque dado
pelo atrito estático e τ é o distúrbio de torque causado pelas forças externas que agem
sobre a roda. Os limites de corrente são dados por imin e imax, e a mínima velocidade do
motor, que limita a sua zona-morta, dada por θmin.
O sistema de tração do robô é construído com uma relação linear entre os eixos do motor
e da roda, através de uma caixa de engrenagens com relação dada por 1/N . Se ambas
as rodas possuírem o mesmo raio rl = rr = r, a relação entre as velocidades angulares é
dada por ωm = Nωroda, e a relação entre torques dada por Fr = Nτ .
23
Considerando ambos os motores com as mesmas características eletromecânicas, a
Equação 12, a função transferência relativa ao diagrama de blocos na Figura 7, e que
usualmente La Ra, o modelo completo do robô é dada pelas equações2:
Jrωmr =Kt
Ra
ur +KtKe −Rabm
Ra
ωmr− (15)
− r2
N2
(M
4+I +Mh2
b2
)ωmr −
r2
N2
(M
4− I +Mh2
b2
)ωml−
− Mhr3
b2N3(ω2
ml − ωmrωml)− τcrsign(ωmr)− Tsr,
Jlωml =Kt
Ra
ul +KtKe −Rabm
Ra
ωml− (16)
− r2
N2
(M
4− I +Mh2
b2
)ωmr −
r2
N2
(M
4+I +Mh2
b2
)ωml−
− Mhr3
b2N3(ω2
ml − ωmrωml)− τclsign(ωml)− Tsl.
2.2 IMPLEMENTAÇÃO COMPUTACIONAL
O modelo dinâmico completo representado matematicamente pelas equações 15 e 16,
e o modelo cinemático descrito pela equação 5 foram implementados computacionalmente
no ambiente Mathworks Simulink, ilustrado como diagrama de blocos da Figura 8.
Modelo Dinâmico
Motor Direito
Não Linearidades
ur
τlr
Redutor
ωmr
Motor Esquerdo
Não Linearidades
Acopladas
ul
τrl
Redutor
ωml
ωr
Modelo Cinemático
x
y
ωl
θ
Figura 8 - Diagrama de blocos dos modelos dinâmico e cinemático do robô.
2Para que se possa escrever algebricamente estas equações, a saturação da corrente e a zona morta
foram negligenciadas.
24
Este é um sistema MIMO – Multiple Input, Multiple Output, cujas entradas ul e ur são as
tensões impostas para os motores esquerdo e direito respectivamente, e como saida do
sistema tem-se a postura do robô, representado pelo vetor ξO = [x, y, θ]T .
As constantes paramétricas para o modelo são apresentadas na Tabela 1. As carac-
terísticas geométricas do chassi foram definidas levando-se em consideração a proposta
de implementação deste trabalho. As características eletromecânicas dos motores foram
retiradas da folha de dados do motor, apresentada no Anexo A.
Tabela 1 - Parâmetros do robô usados para simulação.
Eletromecânicos Geometria do chassi
La 6.2*10−3 H b 0.3 m
Ra 8.33 Ω l 0.5 m
Ke 3.95*10−2 V s/rad df 0.15 m
Kt 3.95*10−2 Nm/A rl 0.1 m
bm 8.13*10−6 Nms/rad rr 0.1 m
τc 0.00353 Nms/rad M 10 kg
τs 0.0078 Nms/rad I 0.28 kgm2
Jm 7.13*10−9 kgm2 h 0 m
N 19.7
Um ambiente gráfico virtual de simulação foi desenvolvido em Matlab para se observar o
comportamento do robô em relação ao sistema inercial de referência. A Figura 9 -a ilustra
o ambiente virtual de simulação e a Figura 9 -b o detalhe do chassi do robô e suas rodas.
0 2 4 6 8 10−1
0
1
2
3
4
5
6
7
8
9
x[m]
y[m
]
(a) Mundo virtual com o robô e seus obs-
táculos,
3.5 4 4.5 5 5.5 6
3.5
4
4.5
5
5.5
x[m]
y[m
]
(b) Detalhe do robô.
Figura 9 - Ambiente virtual de simulação para o robô uniciclo diferencial.
25
2.3 CONTROLE DE MOVIMENTO DE ROBÔS MÓVEIS SOBRE RODAS
O controle de movimento para robôs móveis tem sido, e ainda é, foco de muitas pes-
quisas científicas na área de robótica. Convencionalmente, os problemas de controle de
movimento de veículos autônomos encontrados na literatura podem ser classificados em
três categorias básicas (SICILIANO; KHATIB, 2008; XIANG et al., 2011; TZAFESTAS,
2014):
• Estabilização de Postura – Pose Stabilisation
O objetivo deste problema de controle é estabilizar o vetor de postura ξO(t) = [x, y, θ]T
em uma determinada postura de referência, como mostra a Figura 10 -a . Um exem-
plo real correspondente a este problema é o estacionamento de um veiculo em uma
determinada vaga de garagem.
• Seguimento de Caminho – Path Following
O objetivo do controle é ter o ponto R fixo no robô seguindo a curva C ∈ FO quando
o robô move com uma velocidade fixa v0 6= 0. A variável que se deve estabilizar em
zero é, então, a distância d entre o ponto R e o ponto M mais próximo de C , como
ilustrado na Figura 10 -b. Este tipo de problema tipicamente corresponde a dirigir em
uma rodovia enquanto se tenta manter a distância entre o veículo e o lado da rodovia
constante.
• Rastreamento de Trajetória – Trajectory Tracking
Este problema difere do último no sentido em que a velocidade longitudinal do veículo
não é pré-fixada. O problema de rastreamento supõe que a curva geométrica C é
complementada com a velocidade da referência parametrizada com a variável tempo t.
Isto leva definir a trajetória t 7−→ (xref (t), yref (t)) ∈ FO. Então, o objetivo é estabilizar
o vetor de erro linear de posição e = (xref (t)−x(t), yref (t)−y(t)) a zero, como mostra
a Figura 10 -c.
O trabalho pioneiro de Dubins (1957) demonstra que, para um veículo com restrições
não-holonômicas em um espaço bidimensional, qualquer geodésica (i.e. o caminho mais
curto) entre duas posturas é sempre constituído de três curvas, que podem ser arcos para
a esquerda (L) e direita (R), ou um seguimento de reta (S). O caminho de tempo ótimo será
sempre pelo menos um dos seis tipos: RSR, RSL, LSR, LSL, RLR e LRL.
Apesar da proposta de Dubins se demonstrar eficaz para planejamento de caminho, o
problema de estabilização de postura para sistemas não-holonômicos não pode ser resol-
vido por lei de controle realimentado invariante no tempo (BROCKETT, 1983).
26
R
(a) Estabilização de Postura,
vd
R
vM
(b) Seguimento de Caminho,
Re
v(t)
(c) Rastreamento de Trajetória.
Figura 10 - Problemas clássicos de controle de movimento de robôs móveis encontrados
na literatura. Adaptado de Luca, Oriolo e Samson (1998)
Nos anos 90, Murray e Sastry (1991), apresentam uma conversão das equações ci-
nemáticas de WMRs não-holonômicos em uma forma nilpotente que denominam forma
encadeada (chained form). Os autores usam uma mudança das variáveis de estado e de
controle e mostram que é possível, utilizando esta forma, encontrar caminhos para condu-
zir o WMR entre posturas arbitrárias.
Esta forma de representação foi usada no trabalho pioneiro de Samson (1995) para de-
senvolver controladores realimentados como solução dos problemas de estabilização de
postura. A partir destes trabalhos pioneiros, duas abordagens principais têm sido pro-
postos na literatura: controle variante no tempo e realimentação descontínua (KOLMA-
NOVSKY; MCCLAMROCH, 1995; ZHEN-YING; CHAO-LI, 2011; SHANG; XIE, 2014; AL-
GER; VOTION; QIAN, 2014).
A problemática do rastreamento de trajetória para sistemas holonômicos é bem com-
preendida e soluções satisfatórias podem ser encontradas em livros de texto na área
de controle não linear (SLOTINE; LI, 1991; KHALIL, 1996). Porém, para sistemas não-
holonômicos, o problema ainda é foco de intensa pesquisa na área (SANHOURY; AMIN;
HUSAIN, 2011).
27
Tzafestas (2014) apresenta uma série de métodos de controle para WMR, baseados
em uma ampla pesquisa na literatura. Para movimento em ambientes controlados (ou
seja, baseado em regras determinísticas e conhecidas), e com parâmetros cinemáticos e
dinâmicos do robô precisamente conhecidos, é suficiente empregar algum tipo de controle
baseado em modelo.
Nesta categoria, o autor apresenta técnicas de projeto de controladores por linearização
baseadas no critério de estabilidade de Lyapunov (KANAYAMA et al., 1991; AICARDI et al.,
1995); utilizando linearização por realimentação de estados (state feedback linearization
de sistemas dinâmicos afins (YUN; YAMAMOTO, 2005; YANG et al., 2004); assim como
técnicas de controle seguindo a metodologia de variedades invariantes3 (REYHANOGLU,
1995; TAYEBI; TADJINE; RACHID, 2001; WATANABE et al., 2010)
Porém, se o modelo do WMR apresenta incertezas e/ou ele se movimenta em ambientes
não controlados, o algoritmo de controle deve ser mais sofisticado, envolvendo algum tipo
de inteligência.
Uma das metodologias básicas para tratar de incertezas do sistema é a metodologia
de controle adaptativo, que emprega um algoritmo para identificar os parâmetros variá-
veis em tempo real. Dentre as abordagens mais usadas estão o controle adaptativo por
modelo de referência (ASHOORIRAD et al., 2006) e a técnica de controle adaptativo por
backstepping (POURBOGHRAT; KARLSSON, 2002; HUANG; TSAI, 2008).
Outra metodologia empregada é o controle robusto, que requer um conhecimento à priori
dos limites das variações dos parâmetros. Quanto mais preciso o conhecimento destes
limites é, melhor é a robustez alcançados por esses controladores (DIXON et al., 2000; LI;
YE, 2014). Chwa (2004) apresenta uma resolução por modos deslizantes.
Por fim, Tzafestas (2014) apresenta algumas metodologias de IA como resolução do
problema de controle de movimento para WMR. Sistemas de controle por lógica fuzzy e por
redes neurais são aproximadores universais, ou seja, eles podem aproximar (ou mapear)
qualquer função não linear com certa precisão. Controladores para movimento de WMR
baseados por estas abordagens são apresentados pelo autor (RIGATOS; TZAFESTAS;
TZAFESTAS, 2000; DAS; KAR, 2006; MOUSTRIS; TZAFESTAS, 2005; OLIVEIRA; PIERI;
LAGES, 2003)
O controle para o problema de seguimento de caminho (path following) parte do pressu-
posto de que a velocidade de avanço do veículo é mantida constante, enquanto o contro-
lador age sobre a orientação do veículo para guiá-lo no caminho.
3Do inglês invariant manifolds. Apesar do termo em português parecer antitético, é desta forma que é
tratado dentro da literatura em controle na língua portuguesa.
28
Observa-se que os controladores de seguimento de caminho realizam uma convergência
mais suave pois são menos propensos à saturação quando comparados com os controla-
dores de rastreamento de trajetória. De fato, estes dois problemas foram historicamente
abordados de forma separada. Encarnação e Pascoal (2002) apresentam uma aborda-
gem de controle para WMRs combinando os problemas de seguimento de caminho e
de rastreamento de trajetória. Esta abordagem tem sido aperfeiçoada por outras pes-
quisas (AGUIAR; HESPANHA, 2007; XIANG et al., 2011; ALESSANDRETTI; AGUIAR;
JONES, 2013).
2.3.1 Controlabilidade para o Problema de Rastreamento de Trajetória
Ainda que o modelo do WMR seja sub-atuado, ele é controlável em seu espaço de confi-
guração (LUCA; ORIOLO; SAMSON, 1998), ou seja, dadas duas configurações arbitrárias,
sempre existe uma trajetória cinemática admíssivel (com suas entradas de velocidade as-
sociadas) que transfere o robô entre uma configuração e outra.
Porém, a controlabilidade do modelo uniciclo é intrinsecamente não-linear. Então, para
estudá-la, é necessário usar ferramentas da teoria de controle não-linear. Esta subse-
ção apresenta apenas a análise da controlabilidade para o problema de Rastreamento de
Trajetória.
Seja o vetor de postura do WMR dado por ξO(t) = [x(t), y(t), θ(t)]T , e o vetor que define
a postura de referência para movimento ξd(t) = [xd(t), yd(t), θd(t)]T . A postura de referên-
cia define também as velocidades lineares e angulares de referência, respectivamente vd
e ωd.
Definindo o erro de rastreamento como ξ = ξO − ξd e as variações de velocidade como
v = v−vd e ω = ω−ωd, a linearização tangencial (SLOTINE; LI, 1991) do sistema definido
pela Equação 4 é dada por
˙ξ =
0 0 −vdsenθd0 0 vdcosθd
0 0 0
ξ +
cosθd 0
senθd 0
0 1
[v
ω
], (17)
que é da forma ˙ξ = A(t)ξ+ B(t)[v ω]T . Como o sistema linearizado é variante no tempo,
uma condição necessária e suficiente para a sua controlabilidade é que seu Gramiano não
seja singular.
Luca, Oriolo e Vendittelli (2001) apresentam uma forma simplificada deste sistema, que
pode ser construída mapeando o sistema no sistema de coordenadas do robô FR, através
da transformação ξR =R(θ)ξO. Assim, a equação 17 pode ser reescrita como
29
˙ξR =
0 ωd 0
−ωd 0 vd
0 0 0
ξR +
1 0
0 0
0 1
[v
ω
]. (18)
Somente quando ωd e vd são constantes (i.e., a trajetória é uma linha reta ou uma cir-
cunferência, com velocidade linear constante), o sistema linear da Equação 18 é invariante
no tempo.
Então, seja a matriz de controlabilidade dada por
C =[B AB A2B
]=
1 0 0 0 −ω2
d vdωd
0 0 −ωd vd 0 0
0 1 0 0 0 0
. (19)
A condição de controlabilidade se dá por Rank[C] = 3 ⇐⇒ [vd ωd]T 6= [0 0]T .
Portanto, conclui-se que o sistema cinemático dado pela Equação 4 pode ser localmente
estabilizado por realimentação linear sobre uma trajetória que consiste em caminhos line-
ares ou circulares, executadas com velocidades constantes.
O modelo cinemático do uniciclo não permite um controlador universal, ou seja, que es-
tabilize o erro para qualquer trajetória, sob qualquer condição inicial. Isto significa que, em
princípio, o problema de Rastreamento de Trajetória deve ser conduzido utilizando aborda-
gens diferenciadas (ORIOLO, 2015). O Capítulo 3 apresenta uma proposta de controle de
Rastreamento de Trajetória utilizando a técnica de linearização por realimentação entrada-
saída.
30
3 RASTREAMENTO DE TRAJETÓRIA
Este capítulo apresenta a proposta de controle para o problema de Rastreamento de Traje-
tória. Em seu esquema, a cinemática e a dinâmica do WMR possuem sistemas de controle
projetados independentemente.
3.1 CONTROLE DA CINEMÁTICA
3.1.1 Linearização por Realimentação
A idéia central da metodologia de linearização por realimentação (feedback linearization)
é transformar algebricamente uma dinâmica não-linear de um sistema em uma dinâmica
linear, sob a qual técnicas de controle lineares podem ser aplicadas (SLOTINE; LI, 1991).
Seja um sistema descrito pela forma companheira (também conhecida como forma canô-
nica controlável), representado por
q(n) = f1(q) + f2(q)u, (20)
onde u é a entrada de controle, q é o estado de interesse para a saída, q = [q, q, . . . , q(n−1)]T
é o vetor de estados e f1(q) ∈ Rn, f2(q) ∈ RnXp são funções não-lineares dos estados.
Na representação da forma de equação no espaço de estados, o sistema (20) pode ser
escrito
d
dt
q1
. . .
qn−1
qn
=
q2
. . .
qn
f1(q) + f2(q)u
. (21)
Escolhendo a entrada de controle como sendo
u = (f2)−1 [v − f1] , (22)
e se f2 é não-singular, as não-linearidades são canceladas e se obtém uma relação entrada-
saída da forma q(n) = v.
Em se escolhendo a lei de controle v = −k0q− k1q− · · · − kn−1qn−1 tal que o polinômio
característico an + an−1an−1 + · · · + a0 tenha todas as raízes localizadas estritamente no
semi-plano complexo esquerdo, leva q(t)→ 0.
Esta abordagem tem sido aplicada para controle de movimento de WMR de forma sa-
tisfatória. Veja exemplos em (D’ANDREA-NOVEL; CAMPION; BASTIN, 1992; KIM; OH,
1999; ORIOLO; LUCA; VENDITTELLI, 2002; CHWA, 2010).
31
3.1.2 A abordagem ”Siga a Cenoura”
A abordagem ”Siga a Cenoura” (do inglês follow the carrot) foi apresentada inicialmente
por Rankin (1997) como uma solução para o problema de seguimento de caminho. Esta
abordagem vem da idéia de se segurar uma cenoura na frente de um cavalo para induzir
o animal a se mover em uma determinada direção. Com esta idéia, o método calcula
a orientação do veículo tal que este aponte para um ponto no caminho chamado ponto
cenoura.
O ponto cenoura Cp é localizado encontrando a intersecção de um círculo de raio L
centrado no ponto de rotação do veículo R e o caminho C . Se existirem duas intersec-
ções, será escolhida aquela à frente do ponto M mais próximo do caminho, como ilustra a
Figura 11.
R
M
v
eφ
L
Cp
Figura 11 - Abordagem ”siga a cenoura” original.
O objetivo do controle é minimizar o erro eϕ entre a direção do robô e do vetor entre R
e Cp. Tipicamente se utilizam estratégias de controle linear, como controlador proporcional
(BARTON, 2001) e controlador PID – Proporcional Integral Derivativo (WIT, 2000; HOGG
et al., 2002). Esta abordagem foi usada de forma satisfatória para a resolução do problema
de seguimento de caminho (YEU; PARK; HONG, 2006; WIT; CRANE; ARMSTRONG,
2004; HELLSTROM; RINGDAHL, 2006; DUAN et al., 2013; SUJIT; SARIPALLI; SOUSA,
2013)
32
3.1.3 Uma modificação da abordagem ”Siga a Cenoura”
Este trabalho vem apresentar uma nova abordagem de controle de cinemática para
WMR baseada na abordagem ”Siga a Cenoura”. O objetivo é adaptar a abordagem origi-
nal para que possa ser usada na resolução de problemas de Rastreamento de Trajetória -
Trajectory Tracking.
Seja o ponto-cenoura Cp = (xref , yref ) ∈ FO definido como a referência do movimento
para o WMR, movendo em um caminho parametrizado pelo tempo (i.e., uma trajetória) e
livre de obstáculos C ∈ FO.
O vetor vcp representa a velocidade do ponto-cenoura no plano FO. Um segmento de li-
nha é virtualmente traçada do centro de rotação do robôR = (x, y) ∈ FO ao ponto cenoura
Cp. Uma hiato % até o ponto cenoura neste segmento de linha também é considerado 4.
Baseado nestas considerações, dois erros são definidos: o erro linear (el) do WMR ao
hiato %; e o erro de orientação (eθ) entre a direção longitudinal do robô XR ∈ FR e o ponto
cenoura Cp, como ilustrado na Figura 12.
..R
XR
eθ
%
C
Cp
el
vcp
YO
XOFO
Figura 12 - Abordagem ”siga a cenoura” modificada.
As componentes cartesianas do erro linear el nas direçõesXO e YO são respectivamente
ex = (xref − x) e ey = (yref − y).
Por relações trigonométricas, os erros el e eθ podem ser escritos da forma
el =√e2x + e2y − %, (23)
eθ = tan−1(eyex
)− θ, (24)
4Este hiato % se faz importante para evitar uma possível singularidade na Equação 24
33
e suas derivadas dadas pelas equações
el =ex(xref − x) + ey(yref − y)
el, (25)
eθ =ex(yref − y)− ey(xref − x)
e2l− θ. (26)
Substituindo a cinemática do modelo dada pela Equação (5) nas equações 25 e 26, após
algumas manipulações algébricas e agrupando em uma equação matricial:[el
eθ
]= F1
[xref
yref
]+ F2
[ωr
ωl
], (27)
onde as funções não-lineares da metodologia de linearização por realimentação (feedback
linearization) são dadas por
F1 =
+(exel
)+(eyel
)−(eye2l
)+(exe2l
) , (28)
F2 =
−[r2el
(excosθ + eysinθ)]
−[r2el
(excosθ + eysinθ)]
−[r
2e2l(exsinθ − eycosθ)
]− r
b−[r
2e2l(exsinθ − eycosθ)
]+ r
b
. (29)
Seja então escolhido um sinal de controle da forma
ω =
[ωr
ωl
]= F−1
2 ·
(K
[el
eθ
]−F1
[xref
yref
]), (30)
onde a matriz K =(Kl 00 Kθ
)é definida como a matriz de ganhos, com Kl sendo o ganho
linear e Kθ o ganho de orientação.
Substituindo a Equação 30 na Equação 27, a dinâmica se transforma em:[el
eθ
]= F1
[xref
yref
]+ F2 · F−1
2 ·
(K
[el
eθ
]−F1
[xref
yref
]), (31)
Então, as não-linearidades F1 e F2 são canceladas, e a dinâmica do erro se torna sim-
plesmente
e =
[el
eθ
]= K
[el
eθ
]. (32)
A estabilização se dará na condição: e = [el eθ]T → [0 0]T ⇐⇒ Kl < 0 ∧Kθ < 0.
34
3.2 CONTROLE DA DINÂMICA
O modelo completo do WMR implementado em Simulink (Figura 8) é um sistema cujas
entradas são as tensões aplicada nos motores u = [ur ul]T e a saida é o vetor de postura
do robô ξO = [x y θ]T . Foi então implementado um segundo controlador para estabilizar
a dinâmica do robô.
Seja ω = [ωr ωl]T o vetor das velocidades angulares das rodas do WMR (em um
robô real podem ser medidas através de um encoder acoplado às rodas). Seja também
ωref = [ωrefr ωrefl]T o sinal de controle do Controlador da Cinemática.
Pode-se então definir os sinais de erro de velocidade angular para cada roda como
sendo eωl = (ωrefl − ωl) e eωr = (ωrefr − ωr).As diferenças do sinal de controle do algoritmo digital PID na Forma de Velocidade (Ve-
locity Form) para cada intervalo de tempo k pode ser recursivamente calculado pelas equa-
ções (ÅSTRÖM; WITTENMARK, 1997):
dur(k) = (Kpu +Kiu +Kdu)eωr(k)− (Kpu + 2Kdu)eωr(k − 1) + (Kdu)eωr(k − 2), (33)
dul(k) = (Kpu +Kiu +Kdu)eωl(k)− (Kpu + 2Kdu)eωl(k − 1) + (Kdu)eωl(k − 2). (34)
O subscrito u refere-se à tensão; Kpu, Kiu, Kdu sao os ganhos PID. Como resultado,
os sinais de controle são:
ul(k) = ul(k − 1) + dul(k), (35)
ur(k) = ur(k − 1) + dur(k). (36)
3.3 IMPLEMENTAÇÃO COMPUTACIONAL
O objetivo do controlador de rastreamento de trajetória e estabilizar a posição do WMR
no ponto-cenoura, ou seja, [x y]T → [xref yref ]T .
Tanto o Modelo Cinemático (Equação 5) quanto o Modelo Dinâmico (Equações 15 e 16)
foram implementados como bloco no Simulink.
O Cálculo dos Erros (Equações 23, 24), o Controlador da Cinemática (Equação 30) e o
Controlador da Dinâmica (Equações 35 e 36) são implementados no ambiente MatLab em
um loop com um tempo de discretização de δt = 0, 05s.
A malha de controle completa é ilustrada na Figura 13.
35
x
θ
yω
refl
ωrefr
xref
yref
Cálculo
dos Erros
exey
Controlador
da
Cinemáticaeleθ
Modelo
Dinâmicoω
l
ωr
Controlador
da
Dinâmica
ul
ur+
- +
-
+
- +
-
Modelo
Cinemático
Figura 13 - Diagrama de blocos do sistema de controle de Rastreamento de Trajetória. Em
verde, os modelos do WMR implementados em Simulink (Eq. 5, 15 e 16); em azul, os
controladores implementados em Matlab (Eq. 23, 24, 30, 35 e 36).
3.4 RESULTADOS EXPERIMENTAIS
Inicialmente, uma simulação específica foi realizada para sintonia dos parâmetros PID
do controlador da dinâmica. Foi imposta uma seqüencia de velocidades lineares de refe-
rência iguais para ambas as rodas tais que vref = ωrefr/N = ωrefl/N : 0, 5m/s durante 10
segundos, 1, 2m/s por mais 20 segundos e 0, 8m/s nos 10 segundos finais, o que levou o
WMR a percorrer uma linha reta por 40 segundos.
Alguns valores dos parâmetros PID foram testados para escolher empiricamente o ajuste
ótimo, via abordagem de Ziegler-Nichols. O conjunto de parâmetros de sintonia escolhido
foi [Kpu, Kiu, Kdu] = [60.0, 10.0, 0.0]. A Figura 14 ilustra o gráfico da resposta da veloci-
dade linear v = ω(r)/N = ω(l)/N ao sinal de referência imposta, assim como o gráfico
das tensões em ambos os motores ur = ul.
0 5 10 15 20 25 30 35 400
0.5
1
1.5
Tempo [s]
[m/s
]
ReferênciaVelocidade Linear
0 5 10 15 20 25 30 35 40
−15−10
−505
1015
Tempo [s]
Ten
são
[V]
Figura 14 - Resposta ao degrau do controlador da dinâmica. Na imagem superior, a velo-
cidade linear como resposta a uma sequencia de degraus), e na imagem inferior, a corres-
pondente tensão dos motores.
36
Em seguida, com uma matriz de ganhos ajustada em K =( −40 0
0 −60), algumas trajetó-
rias foram testadas, como ilustradas na Figura 15: uma linha reta e uma trajetória circular,
ambas com velocidades constantes da referência; um perfil senoidal com velocidade na
direção y constante, e uma trajetória em espiral com uma velocidade exponencial para a
referência.
Percebe-se na Figura que, em todas as simulações, o WMR (cujo comportamento do
movimento é ilustrado com uma linha azul) alcançou o caminho geométrico pré-definido e
rastreou a referência definida pelo movimento do ponto cenoura CP (linha vermelha).
−2 −1 0 1 2 3 4 5 6 7 8 9 10−2
−1
0
1
2
3
4
5
6
7
8
9
10
y[m
]
x[m]−5 −4 −3 −2 −1 0 1 2 3 4 5
−5
−4
−3
−2
−1
0
1
2
3
4
5
y[m
]
x[m]
−5 −4 −3 −2 −1 0 1 2 3 4 5−5
−4
−3
−2
−1
0
1
2
3
4
5
y[m
]
x[m]−5 −4 −3 −2 −1 0 1 2 3 4 5
−5
−4
−3
−2
−1
0
1
2
3
4
5
y[m
]
x[m]
Figura 15 - Trajetórias de teste para o controle de Rastreamento de Trajetória: uma linha
reta, um perfil circular, uma curva senoidal e um perfil em exponencial.
Além disso, uma trajetória especifica, com seções com curvaturas suaves e agressivas,
foi escolhido para estimular maiores discussões a respeito da efetividade desta abordagem
de controle.
O resultado do rastreamento desta trajetória é ilustrada na Figura 16. Da mesma forma
que as demais trajetórias testadas, é possível notar que depois de um período transiente,
o caminho geométrico é seguido satisfatoriamente.
37
−5 −4 −3 −2 −1 0 1 2 3 4 5−5
−4
−3
−2
−1
0
1
2
3
4
5
y[m
]
x[m]
t=35s
t=25sPosturaInicialt=0s
PosturaFinalt=40s
t=5st=15s
Figura 16 - A trajetória específica com um mix de seções de curvatura. Em vermelho, a
trajetória de referência, e os retângulos representam as posturas do WMR a cada segundo.
0 10 20 30 400
200
400
(a) Roda esquerda ωrefl
e ωl
[rad
/s]
0 10 20 30 400
200
400
(b) Roda direita ωrefr
and ωr
[rad
/s]
0 10 20 30 400
5
10
(c) Tensão do motor esquerdo − ul
[V]
0 10 20 30 400
5
10
(d) Tensão do motor direito − ur
[V]
0 10 20 30 40−2
0
2
(e) Erro Linear − el
[m]
Tempo[s]0 10 20 30 40
−0.5
0
0.5
(f) Erro de Orientação − eθ
[rad
]
Tempo[s]
Figura 17 - Sinais relevantes do experimento. Para cada roda, nas imagens superiores, a
velocidade angular de referência (em pontilhado) e o comportamento da roda; nas imagens
do centro, as tensões em cada motor; nas imagens inferiores os erros el e eθ.
38
A Figura 17 ilustra os sinais relevantes desta simulação. Quando a curva se torna agres-
siva, nos instantes de tempo t = 5, t = 15, t = 25 e t = 35, o controlador age para rejeitar
as perturbações e estabilizar a tarefa de rastreamento.
Porém, na parte inferior da figura, percebe-se que ambos os erros linear el de orientação
eθ não convergem a zero.
Um conjunto de simulações foi realizada para compreender este erro em regime per-
manente. Uma linha reta foi imposta como referência ao WMR, o ganho de orientação
foi ajustado em Kθ = −60, enquanto o ganho linear Kl foi variado dentro dos valores
[−5,−10,−20,−50,−100].
A Figura 18 ilustra o perfil do erro linear el neste conjunto de simulações. Pode-se notar
que ambos os tempos de resposta e o erro em regime permanente do erro linear são
dependentes do ganho Kl. A relação entre o regime permanente do erro linear e o ganho
foi calculado como elss = −5, 29/Kl.
0 5 10 15 20 25 30 35 400
0.5
1
1.5
Tempo[s]
[m]
Erro Linear − el
K
l = −5
Kl = −10
Kl = −20
Kl = −50
Kl = −100
Figura 18 - A sensibilidade do erro linear el para alguns valores distintos do ganho linear
Kl = [−5,−10,−20,−50,−100].
Por fim, foi realizado um experimento para verificar o comportamento do WMR em longo
prazo. Um perfil de trajetória específico – uma lemiscata – foi aplicado como referência ao
robô durante 360 segundos, o suficiente para que este percorresse o perfil por exatos oito
ciclos.
Assim como os outros experimentos, a matriz de ganhos foi ajustada emK =( −40 0
0 −60).
O resultado da simulação é ilustrado na Figura 19.
Percebe-se, assim como em outros experimentos, que o WMR segue o caminho de
referência. Também é possível verificar que o erro linear el não converge para zero, como
ilustrado na Figura 20-e. Porém, este erro é admissível pois é relativamente menor em
relação às dimensões do WMR (SICILIANO; KHATIB, 2008).
39
−4 −3 −2 −1 0 1 2 3 4−4
−3
−2
−1
0
1
2
3
4
y[m
]
x[m]
Figura 19 - Uma trajetória lemniscata percorrida por oito ciclos.
0 50 100 150 200 250 3000
200
400
(a) Roda esquerda ωrefl
e ωl
[rad
/s]
0 50 100 150 200 250 3000
200
400
(b) Roda direita ωrefr
and ωr
[rad
/s]
0 50 100 150 200 250 3000
5
10
(c) Tensão do motor esquerdo − ul
[V]
0 50 100 150 200 250 3000
5
10
(d) Tensão do motor direito − ur
[V]
0 50 100 150 200 250 300−2
0
2
(e) Erro Linear − el
[m]
Tempo[s]0 50 100 150 200 250 300
−0.5
0
0.5
(f) Erro de Orientação − eθ
[rad
]
Tempo[s]
Figura 20 - Sinais do experimento com a trajetória lemniscata. Para cada roda, nas imagens
superiores, a velocidade angular de referência (em pontilhado) e a velocidade da roda; nas
imagens do centro, as tensões em cada motor; nas imagens inferiores os erros el e eθ.
40
4 PLANEJAMENTO DE TRAJETÓRIA
O planejamento ótimo de trajetórias pode ampliar a performance de um robô consideravel-
mente, particularmente quando as principais preocupações em seu movimento tem relação
com a sua eficiência ou seu consumo energético. No sentido de se obter uma trajetória
ótima sobre limitações de movimento, não só a cinemática mas também a dinâmica do
robô deve ser explicitada na fase de planejamento. As interações entre geometria, cine-
mática e dinâmica aumentam a complexidade do problema consideravelmente em relação
a abordagens puramente cinemáticas.
Seja um WMR dado em um determinado ambiente. Sejam também definidos uma con-
figuração inicial e final. O problema de Planejamento de Trajetória consiste em gerar en-
tradas de referência para o sistema de controle de movimento do robô (Rastreador de
Trajetória) tal que realize o movimento do WMR entre a configuração inicial e final defi-
nidas, desviando-se de obstáculos nele presentes. Este problema lida com duas classes
básicas de requisitos:
• Requisitos Geométricos
Do ponto de vista cinemático, considerando a dimensionalidade da postura do WMR
(duas coordenadas cartesianas e uma de orientação), a trajetória deve ser planejada
em um espaço tridimensional com o propósito de evitar colisões com obstáculos. Es-
tes obstáculos podem ser tanto objetos presentes no ambiente de trabalho quanto
paredes, portas e corredores pelos quais o robô deverá passar. O problema dado por
estes requisitos é encontrar caminhos admissiveis entre a posição inicial e final do
robô – path planning, ilustrada de forma simplificada na Figura 21.
Existem vários métodos para resolver o problema de planejamento de caminho, e as
três abordagens mais usadas para tal – road-map, decomposição celular e campos
potenciais – podem ser encontrados em LaValle (2006).
• Requisitos Dinâmicos
Do ponto de vista do modelo dinâmico, trajetórias possíveis do robô devem satisfazer
requisitos relacionados com a saturação do atuador, limites máximos de velocidades
e acelerações, condições de fricção das rodas com pontos de contato, etc. Por exem-
plo, acelerações longitudinais e angulares devem permanecer abaixo de um dado
limite superior para certificar um rolamento puro das rodas, sem deslizamento com o
solo, pois forças centrifugas dependem da velocidade linear e da curvatura local do
caminho.
41
Posição
Inicial
Posição
Inicial
Posição
Final
Região de
Obstáculos
(a)
Uma solução
possível
(b)
Figura 21 - Uma ilustração simplificada do problema de planejamento de caminho (adap-
tado de LaValle (2006)). (a) Os obstáculos, a posição inicial, e a posição final especificados
como entradas. (b) Um algoritmo de planejamento resolve um caminho livre de colisões.
Em geral, mais de uma trajetória satisfaz ambos os requisitos (geométricos e dinâmicos).
Então, é necessário realizar um procedimento para escolher, dentre todas as trajetórias
admissíveis, a trajetória ótima que minimize um determinado funcional de custo.
Canny et al. (1988) apresentam pela primeira vez o termo Restrições Cinodinâmicas 5,
que sintetizam simultaneamente as restrições cinemáticas e dinâmicas, usando um espaço
de estado aumentado Q em que o estado q ∈ Q é definido como q = (ξ, ξ), composto
por sua configuração aumentada das coordenadas de velocidade (LAVALLE; KUFFNER,
2001).
Existem duas abordagens principais para o planejamento de trajetórias sobre restrições
cinodinâmicas. A primeira abordagem busca resolver o problema de planejamento tratando
com ambos os requisitos de forma concomitante, através das restrições cinodinâmicas.
Esta abordagem demonstra ser probabilisticamente completa (i.e., se a solução existe,
ela pode ser encontrada com probabilidade 1 depois de longa execução) (LAVALLE;
KUFFNER, 2001), e tem sido usado como ferramenta para o planejamento de trajetórias
(CANNY; REGE; REIF, 1991; DONALD et al., 1993; PHAM; CARON; NAKAMURA, 2013).
Porém, a abordagem cinodinâmica resulta em um problema com a dimensionalidade do-
brada. Por conta disso, algoritmos de planejamento em espaço de estados cinodinâmicos
tornam-se impraticáveis do ponto de vista computacional (PHAM; CARON; NAKAMURA,
2013).
5Como não existe equivalente na literatura acadêmica em língua portuguesa para o termo em inglês
kinodynamic, o candidato se sentiu na liberdade de criá-la.
42
Outra abordagem para planejamento de trajetórias consiste em decompor o problema
em dois sub-problemas:
(a) encontrar um caminho livre de colisões no espaço de configuração do robô para satis-
fazer os requisitos geométricos e;
(b) encontrar uma parametrização temporal ótima deste caminho, levando-se em conside-
ração algum funcional de custo.
A classe de funções que geram caminhos livres mais comumente usado em robótica são
as funções spline (em português, ranhadura ou estria).
Splines com derivadas segundas contínuas (C2-splines) têm sido usado para obter traje-
tórias de tempo mínimo para sistemas com apenas restrições cinemáticas (LIN; CHANG;
LUH, 1983).
Já a parametrização temporal é caracterizada por uma equação diferencial envolvendo
uma função das coordenadas da curva através do caminho. Para o tempo mínimo, tão bem
como para outro índice de performance (como valor máximo ou aceleração centrípeta) ser
minimizada, o problema se reduz à escolha ótima da função nas coordenadas curvilíneas
(BENAYAD et al., 2000).
A limitação desta abordagem recai sobre o fato de que o caminho livre encontrado na
primeira etapa de planejamento não contempla as restrições dinâmicas impostas no pro-
blema. Usualmente se inclui no primeiro passo alguma restrição no espaço de configura-
ção que garanta uma execução quasi-estática, ou seja, numa velocidade arbitrária baixa o
suficiente para que os efeitos da dinâmica não sejam significativos. Porém, esta solução
também sofre uma limitação, tendo em vista que a condição quasi-estática pode ser restri-
tiva, limitando muitas outras possíveis soluções (PHAM; CARON; NAKAMURA, 2013).
Graettinger e Krogh (1989) propõem, após estas etapas de planejamento, realizar uma
avaliação da viabilidade da trajetória gerada considerando as restrições cinemáticas e dinâ-
micas em separado, e corrigir a trajetória através de um simples escalonamento no tempo
por um fator multiplicador. Já Kiss e Szádeczky-Kardoss (2007) apresentam uma proposta
de escalonamento temporal on-line na qual este fator multiplicador é manipulado por um
controle externo.
A seguir são apresentados os conceitos básicos de splines suaves e de parametrização
temporal com foco no planejamento de trajetória.
43
4.1 SPLINES SUAVES
Uma spline é uma função numérica composta por funções polinomiais em partes, e que
possuem uma transição entre as partes suficientemente suaves. Várias são as classes
de funções splines (e.g. splines cúbicas, curvas de Bézier, B-splines) que podem ser
encontradas na bibliografia básica em interpolação numérica. Aqui é apresentada a classe
de splines suaves (ou smoothing splines).
Seja uma seqüência de n pares (ti, xi) ∈ R2 sendo i = 1, . . . , n e t1 < t2 < · · · < tn tal
que x = f(t). A spline suave cúbica é uma estimativa f para f definida como o minimizador
do critério
min
µ
n∑i=1
(xi − f(ti))2 + (µ− 1)
∫ tn
t1
(f (n)(t))2dt
, (37)
onde (.)(n) representa a enésima derivada de f em relação a t (usualmente n=2) e µ ∈ [0, 1]
é o parâmetro de suavização, que controla o balanceamento entre o erro de estimação e
a suavidade da curva. Para µ → 0, a curva estimada perde suavidade e converge para
uma interpolação spline cúbica; enquanto para µ → 1, a estimativa converge para uma
interpolação por mínimos quadrados. Splines suaves tem uma base teórica sólida e é
amplamente utilizado como método de regressão não-paramétrica (WAHBA, 1990).
Para o caso bidimensional, é necessário introduzir um parâmetro tal que a seqüência
de pontos seja representada como função de tal parâmetro. Então, seja a seqüência de
n pontos ψi = (Xi, Yi) ∈ R2, i = 1, . . . , n; e o parâmetro s ∈ [sI , sF ] ⊂ R. Para cada
dimensão existe uma função em s tal que X = X(s) e Y = Y (s), onde s1 < s2 < · · · < sn,
sendo o parâmetro s calculado como uma distância acumulada dada por
si+1 = si +√
(Xi+1 −Xi)2 + (Yi+1 − Yi)2, (38)
onde s1 = sI .
Então, seja dada uma seqüencia de n pontos parametrizados (Xi, Yi, si) ∈ R3 sendo
i = 1, . . . , n e s1 < s2 < · · · < sn tal que X = fX(s) e Y = fY (s). A spline suave cúbica
bidimensional é uma estimativa f para f definida pelas funções em cada dimensão fX(s)
e fY (s) sincronizadas em s tal que minimize os critérios
min
µ
n∑i=1
(Xi − fX(si))2 + (µ− 1)
∫ sF
sI
(f(n)X (s))2ds
, (39)
e
min
µ
n∑i=1
(Yi − fY (si))2 + (µ− 1)
∫ sF
sI
(f(n)Y (s))2ds
. (40)
44
4.1.1 Descrição do caminho (path)
Seja um WMR cujo centro de rotação R ∈ FO : XO, YO siga um dado caminho su-
ave IF ∈ FO caracterizado pela parametrização s → [X(s) Y (s)]T , com s ∈ [sI , sf ] e
[X ′(s) Y ′(s)]T 6= [0 0]T , onde X ′,Y ′ denotam respectivamente as derivadas de X e Y em
relação a s, como ilustrado na Figura 22 (BENAYAD et al., 2000).
I
F
YO
XOO
Y (s)
X(s)
Θ(s)
v(s)
R(s)
Figura 22 - A postura do WMR e sua trajetória de referência parametrizada em s.
A tangente da curva IF é caracterizada pelo ângulo Θ(s) = atan2(Y ′(s)/X ′(s)) – ver
nota 6. A configuração do WMR no espaço definido pela parametrização em s pode ser
então definida por Ξ(s(t)) = [X(s) Y (s) Θ(s)]T . Também é conveniente definir o raio de
curvatura local da curva IF , dado por:
ϕ(s) =((X ′(s))2 + (Y ′(s))2)
32
|Y (s)′X ′′(s)−X ′(s)Y ′′(s)|. (41)
4.1.2 Parametrização temporal do caminho
O movimento de R no caminho IF pode ser especificado como uma parametrização
temporal t → s(t) com t ∈ [ti, tf ] e s(ti) = si; s(tf ) = sf . Esta parametrização temporal
pode ser vista alternativamente como um perfil de velocidade, isto é, a curva s(s)s∈[si,sf ] no
plano (s, s), configurando uma trajetória.
Existe a relação direta entre as coordenadas de postura, ξ(t) = Ξ(s(t)), isto é,
x(t) = X((s(t)) (42)
y(t) = Y ((s(t))
θ(t) = Θ((s(t)).
6A função atan2 considera o sinal de dois argumentos para que se tenha condições de se calcular também
o correto quadrante do arco.
45
4.2 OTIMIZAÇÃO DA TRAJETÓRIA
O problema de otimização da trajetória pode ser descrito da seguinte forma: Seja um
sistema descrito pela equação de estado q(t) = a(q(t),u(t), t); p(t) = CTq(t); dada
uma seqüência de waypoints e tempos de interpolação (ψi, ti) onde ψi = (Xi, Yi) ∈ R2,
i = 1, . . . , n; encontrar a entrada ótima u∗(t) que leve a saída do sistema através (ou muito
próximo) destes waypoints nos tempos de interpolação, enquanto se minimiza o funcional
J(u) =1
2
∫ T
0
ρu2(t)dt, (43)
onde ρ é o peso da importância energética no problema.
Além das restrições impostas pelo sistema, outras restrições podem ser consideradas
no problema de otimização como, por exemplo: o desvio máximo da trajetória (p(ti)−ψi),velocidades máximas s(t), acelerações máximas s(t), ou raios de curvatura ϕ(s) máximos.
Em seu trabalho, Egerstedt e Martin (2001) estudaram um sistema linear controlável e
observável de simples entrada e múltiplas saídas.
Para tanto, definiu-se um conjunto de funções base, linearmente independentes:
gi(t) =
CT eA(ti−t)b t 6 ti
0 t > ti
i = 1, . . . ,m. (44)
Segundo o Teorema da Dualidade de Lagrange, minimizar o funcional J(u) da Equação
43, sujeito a restrições p(ti) ∈ [αi, βi], i = 1, . . . ,m, onde [αi, βi] é o intervalo de tolerância
dos waypoints, é equivalente a encontrar os máximos multiplicadores λ, γ ∈ Rpm que
minimizem o Lagrangeano
Lλ,γ(u) =1
2
∫ T
0
ρu2(t)dt+1
2
(∫ T
0
g(s)u(s)ds− ψ)TT(∫ T
0
g(s)u(s)ds− ψ)
+
+ λTα− λT(∫ T
0
g(s)u(s)ds
)−
− γTβ + γT(∫ T
0
g(s)u(s)ds
), (45)
onde T é uma matriz semi-positiva definida de pesos que pondera a importância da proxi-
midade da saída y de ψi.
Os multiplicadores de Lagrange são determinados por
minζ≥0
1
2ζTHζ + F T ζ, (46)
46
onde
ζ =
(λ
γ
)∈ R2pm, H =
(M −M−M M
),
M = G(ρI + T G)−1,
F T = (−ψTTM − αT , ψTTM − βT ), (47)
tal que G ∈ Rmpxmp é o Gramiano
G =
∫ T
0
g(s)g(s)Tds, (48)
e existe uma única entrada ótima u∗ ∈ L2[0, T ] dada por
u∗(t) = g(t)T (ρI + T G)−1(T ψ + λ− γ). (49)
Então, encontrar o controle ótimo u∗, é um problema de programação quadrática. Os re-
sultados do trabalho (EGERSTEDT; MARTIN, 2001) podem ser visualizados na Figura 23.
Na figura da esquerda, o exemplo sem saturação, percebe-se que a trajetória atinge efeti-
vamente os waypoints. Entretanto, quando se limitam os sinais da velocidade, aceleração
e arranque (jerk) – em pontilhado na figura da direita – os waypoints não são atingidos de
forma efetiva (embora dentro dos limites dados pelo intervalo [αi, βi].
Figura 23 - Controle de trajetória direcionada a waypoints (extraído de Egerstedt e Martin
(2001). A esquerda, os estados e a trajetória planejada sem restrições; na direita, com
restrições.
Nesta formulação, os autores apresentam um sistema linear de simples entrada. Já o
modelo do WMR possui como entrada um vetor bidimensional de tensão (ur, ul), descrito
através de equações diferenciais não-lineares (Equações 15 e 16).
O Capítulo 5 pretende apresentar uma proposta de trabalho para a resolução deste
problema de controle ótimo, alinhando-se com os objetivos traçados por este trabalho.
47
5 METODOLOGIA
O presente trabalho propõe a formulação e a implementação de uma arquitetura hierár-
quica de controle de movimento para um WMR diferencial, cujo modelo é apresentado no
Capítulo 2. Este modelo contempla a cinemática do uniciclo e a dinâmica não-linear tal que
o aproxima do robô real.
Duas camadas foram propostas para esta arquitetura. A sua camada inferior é um Ras-
treador de Trajetórias, implementado em laço duplo. Apesar dos resultados experimentais
apresentados no ítem 3.4 terem se mostrado satisfatórios, a literatura demonstra que o mo-
delo cinemático do uniciclo não é globalmente controlável (ítem 2.3.1). Então, uma análise
da robustez deste controlador deve ser realizado para que a abordagem proposta se torne
uma contribuição significativa para a comunidade acadêmica.
A segunda camada proposta, um Planejador de Trajetórias, ainda não foi formulada. O
Capítulo 4 apresenta uma revisão da literatura e a proposta da geração de trajetórias do
tipo smoothing splines apresentada por Egerstedt e Martin (2001). Porém, a proposta dos
autores não resolvem completamente o problema formulado para este modelo de WMR.
5.1 FORMULAÇÃO DO PROBLEMA
Seja uma dada sequência deN intervalos e tempos de interpolação ([αxi, βxi], [αyi, βyi], ti),
onde i = 1, . . . , N ; αxi < βxi, αyi < βyi,∀i ; αxi, βxi, αyi, βyi ∈ R. Estes intervalos definem
os waypoints no plano ψi = (ψxi, ψyi) ∈ R2 cujas coordenadas cartesianas são definidas
como o ponto médio entre os limites em cada dimensão:
ψxi = (βxi − αxi)/2, ψyi = (βyi − αyi)/2, (50)
que deverão ser atingidas nos tempos 0 ≤ t1 ≤ · · · ≤ tN ∈ R. Para ilustrar esta definição,
sejam dados como exemplo os vetores:
αx = (0, 8 1, 6 3, 6 4, 6)
βx = (1, 6 2, 4 4, 4 5, 4)
αy = (1, 6 3, 1 2, 6 4, 1)
βy = (2, 4 3, 9 3, 4 4, 9)
ti = (0, 0 1, 0 2, 0 3, 0)
Pela Equação 50, os waypoints são definidos por ψ1 = (1, 2; 2, 0), ψ2 = (2, 0; 3, 5),
ψ3 = (4, 0; 3, 0) e ψ4 = (5, 0; 4, 5).
48
A Figura 24 ilustra graficamente este exemplo. Na imagem da esquerda, os waypoints
ψi são ilustrados no plano com asteriscos azuis, e os limites impostos pelos intervalos
([αxi, βxi], [αyi, βyi]), estão ilustrados com um quadrado em vermelho.
Já nas imagens da direita, ambas as coordenadas cartesianas nos waypoints ψxi e ψyi
nos tempos de interpolação ti são grafadas com asterisco azul, e os limites impostos pelos
intervalos grafados com pontos vermelhos.
0 1 2 3 4 5 60
1
2
3
4
5
6
x[m]
y[m
]
0 0.5 1 1.5 2 2.5 3 3.5 40
2
4
6
t[s]
x[m
]0 0.5 1 1.5 2 2.5 3 3.5 4
0
2
4
6
y[m
]
Figura 24 - Planejamento de trajetória direcionada a waypoints no plano.
Seja, então, um modelo reduzido do WMR dado por
q(t) = a(q(t),u(t)),
p(t) = CTq(t), (51)
onde a representa o conjunto das n equações diferenciais ordinárias não-lineares e invari-
antes no tempo que regem o comportamento cinodinâmico do WMR, que são funções de
estados q(t) ∈ Rn e das entradas u(t) ∈ Rm, seguindo a notação de Kirk (2004).
A saída do sistema p(t) ∈ Rp é um mapa C ∈ Rpxn dos estados q(t).
O problema proposto é levar as saídas do sistema através destes intervalos, p(ti) ∈[αi, βi], nos tempos de interpolação ti, i = 1, . . . , N , enquanto se minimiza o funcional
J(u) =1
2
∫ tN
0
[ρu2(t) + (1− µ)p(t)
]dt+
1
2µ
N∑i=1
(p(ti)− ψi)2, (52)
onde ρ é o peso da questão energética e µ é a ponderação entre os erros aos waypoints e
a suavidade da curva; sujeito a
0 < u(t) < umax, (53)
ti dados. (54)
49
Este problema de otimização se diferencia em alguns aspectos daquele encontrado nos
trabalhos de Egerstedt e Martin (2001). Em sua formulação, os autores apresentam um
sistema linear de simples entrada. Já o modelo do WMR possui como entrada um vetor
bidimensional de tensão (ur, ul), descrito através de equações diferenciais não-lineares
relativos à cinemática (Equação 5) e à dinâmica (Equações 15 e 16) do sistema.
5.2 PROPOSTA DE TRABALHO
Então, apresenta-se para avaliação da Banca de Qualificação uma proposta metodoló-
gica para a resolução deste problema, traçando alguns objetivos parciais:
• Implementar em Matlab, analisar e compreender a solução proposta por Egerstedt e
Martin (2001) para um sistema linear de simples entrada. Esta etapa é importante para
que se compreenda a geração de smoothing splines na resolução de planejamento de
trajetórias ótimas;
• Definir um modelo cinodinâmico reduzido do WMR, da forma q(t) = a(q(t),u(t));
p(t) = CTq(t), onde u(t) = [ur(t) ul(t)]T e p(t) = [x(t) y(t)]T , para ser utilizado no
problema de controle ótimo. Este modelo deverá ser validado experimentalmente em
relação ao modelo completo utilizado neste trabalho (Equações 5, 15 e 16 e Figura 8);
• Resolver o problema de controle ótimo formulado, usando a Abordagem do Cálculo
Variacional (KIRK, 2004), ou uma variação da abordagem utilizada por Egerstedt e
Martin (2001);
• Implementar em Matlab um algoritmo numérico iterativo para determinar em tempo
real as trajetórias ótimas de controle u∗(t) e de saída p∗(t), dados os intervalos e
tempos de interpolação ([αxi, βxi], [αyi, βyi], ti) definidos como entrada da arquitetura
de controle;
• Usar as coordenadas cartesianas da trajetoria ótima p∗(t) como as coordenadas de
referência do ponto-cenoura Cp(t) = (xref (t), yref (t)) = (x∗(t), y∗(t)) no controlador
de Rastreamento de Trajetória;
• Por fim, realizar uma comparação analítica entre o controle ótimo u∗ gerado pelo Pla-
nejador de Trajetória com o sinal de controle u gerado pelo Rastreador de Trajetória.
Se possível e necessário, implementar um Supervisor que ajuste os parâmetros do
Planejador de Trajetória (ρ e µ) em função do resultado desta comparação analítica,
como ilustra a Figura 25.
50
Rastreador de TrajetóriaPlanejador de
Trajetória
Supervisor
u*
Controlador
da
Cinemática
ωref
Controlador
da Dinâmica
Cpα,β,t
Modelo do WMR
ξ0ωModelo
Dinâmico
Modelo
Cinemático
uControlador
da Dinâmica
Figura 25 - Diagrama esquemático de blocos da Arquitetura de Controle proposta.
5.3 CRONOGRAMA
Durante o ano de 2013, foram realizadas disciplinas oferecidas pelo Programa DINTER
entre a EPUSP e o IFSC, em Florianópolis, e no ano de 2014 o candidato realizou um
estágio no Laboratório de Sistemas Embarcados na EPUSP.
Os três primeiros objetivos parciais propostos na seção 5.2 serão desenvolvidos no se-
gundo semestre de 2015, enquanto a implementação computacional e a validação do mo-
delo proposto serão desenvolvidos no primeiro semestre de 2016. Pretende-se redigir o
documento final para a Tese de Doutorado durante todo o ano de 2016, com a defesa
prevista para o fim do ano.
Os resultados deste desenvolvimento serão submetidos a congressos e periódicos da
área durante o ano de 2016.
Tanto as atividades por ora realizadas, quanto as tarefas para a consecução deste tra-
balho estão cronologicamente ilustradas na Figura 26.
51
Hoje
2013 2014 2015 2016
J F M A M J J A S O N D J F M A M J J A S O N D J F M A M J J A S O N D J F M A M J J A S O N D
Discilplinas[IFSC]PMR5004PMR5023PME5014
Estágio [POLI]PTC5721PMR5023
Inglês RedaçãoProficiência
Pesquisa BibliográficaModelo e Ambiente GráficoRastreamento de Trajetória
Desenvolvimento [IFSC]Planejamento de TrajetóriaValidações Experimentais
RedaçãoDocumento de Qualificação
QualificaçãoCongressos
PeriódicosDocumento Final
RevisãoDefesa
Figura 26 - Cronograma de Atividades Atualizado - Mensal.
52
REFERÊNCIAS
AGUIAR, A.; HESPANHA, J. Trajectory-tracking and path-following of underactuated auto-nomous vehicles with parametric modeling uncertainty. IEEE Transactions on AutomaticControl, v. 52, n. 8, p. 1362–1379, 2007.
AICARDI, M. et al. Closed loop steering of unicycle-like vehicles via Lyapunov techniques.IEEE Robotics and Automation Magazine, v. 2, n. March, p. 27–35, 1995.
ALESSANDRETTI, A.; AGUIAR, A.; JONES, C. N. Trajectory-tracking and path-followingcontrollers for constrained underactuated vehicles using model predictive control. In: EU-ROPEAN CONTROL CONFERENCE, 2013, Zürich. Proceedings... [S.l.: s.n.], 2013, p.1371–1376.
ALGER, B.; VOTION, J.; QIAN, C. Sampled-Data Output Feedback Control of UncertainNonholonomic Systems in Chained Forms with Applications to Mobile Robots. In: AMERI-CAN CONTROL CONFERENCE (ACC), 2014, Portland. Proceedings... [S.l.: s.n.], 2014,p. 4659–4664.
ASHOORIRAD, M. et al. Model Reference Adaptive Path Following for Wheeled MobileRobots. In: IEEE INTERNATIONAL CONFERENCE ON INFORMATION AND AUTOMA-TION. Proceedings... [S.l.: s.n.], 2006, p. 289–294.
ÅSTRÖM, K.; WITTENMARK, B. Computer-Controlled Systems: Theory and design,third edition. Upper Saddle River, New Jersey: Prentice Hall, 1997. 555 p. (Dover Bookson Electrical Engineering Series).
AVILA, J. P. J. Modelagem e Identificação de Parâmetros Hidrodinâmicos de um Veí-culo Robótico Submarino. 2008. 156 p. Tese (Doutorado) — Escola Politécnica - Univer-sidade de São Paulo, São Paulo, 2008.
BARTON, M. Controller development and implementation for path planning and fol-lowing in an autonomous urban vehicle. 2001. Tese (Doutorado) — University of Syd-ney, Sidney, 2001.
BENAYAD, M. et al. Steering a mobile robot: Selection of a velocity profile satisfying dyna-mical constraints. Asian Journal of Control, v. 2, n. 4, p. 219–229, 2000.
BROCKETT, R. W. Asymptotic stability and feedback stabilization. In: BROCKETT, R. W.;MILLMAN, R. S.; SUSSMANN, H. J. (Ed.). Differential Geometric Control Theory. Bos-ton: Birkhauser, 1983. p. 181–191.
CAMPOS FILHO, R. F. Abordagem estocástica com fusão sensorial para mapea-mento geográfico utilizando VANTs. 2012. 91 p. Dissertação (Mestrado) — Escola Po-litécnica - Universidade de São Paulo, São Paulo, 2012.
53
CANNY, J.; REGE, A.; REIF, J. An exact algorithm for kinodynamic planning in the plane.Discrete & Computational Geometry, v. 6, n. 1, p. 461–484, 1991.
CANNY, J. et al. On the complexity of kinodynamic planning. In: 29TH ANNUAL SYMPO-SIUM ON FOUNDATIONS OF COMPUTER SCIENCE. Proceedings... [S.l.: s.n.], 1988,p. 306–316.
CHWA, D. Sliding-Mode Tracking Control of Nonholonomic Wheeled Mobile Robots in Po-lar Coordinates. IEEE Transactions on Control Systems Technology, v. 12, n. 4, p.637–644, jul. 2004.
CHWA, D. Tracking Control of Differential-Drive Wheeled Mobile Robots Using aBackstepping-Like Feedback Linearization. IEEE Transactions on Systems, Man, andCybernetics - Part A: Systems and Humans, v. 40, n. 6, p. 1285–1295, nov. 2010.
CUTIPA-LUQUE, J. C. Identificação e Controle de um Veículo Submersível AutônomoSub-atuado. 2012. 149 p. Tese (Doutorado) — Escola Politécnica - Universidade de SãoPaulo, São Paulo, 2012.
D’ANDREA-NOVEL, B.; CAMPION, G.; BASTIN, G. Dynamic feedback linearization of no-nholonomic wheeled mobile robots. In: IEEE INTERNATIONAL CONFERENCE ON RO-BOTICS AND AUTOMATION, 1992, Nice, France. Proceedings... [S.l.: s.n.], 1992, p.2527–2532.
D’ANDREA-NOVEL, B.; CAMPION, G.; BASTIN, G. Structural Properties and Classifica-tion of Kinematic and Dynamic Models of Wheeled Mobile Robots. IEEE Transactions onRobotics and Automation, v. 12, n. 1, p. 47–62, 1993.
DANTAS, L. D. Metodologia numérica para estimativa da manobrabilidade de veí-culos autônomos submarinos. 2014. 356 p. Tese (Doutorado) — Escola Politécnica -Universidade de São Paulo, São Paulo, 2014.
DAS, T.; KAR, I. Design and implementation of an adaptive fuzzy logic-based controller forwheeled mobile robots. IEEE Transactions on Control Systems Technology, v. 14, n. 3,p. 501–510, 2006.
DECCÓ, C. C. G. Construção de Mapas de Ambiente para Navegação de Robôs Mó-veis com Visão Omnidirecional Estéreo. 2004. 202 p. Tese (Doutorado) — Escola Poli-técnica - Universidade de São Paulo, São Paulo, 2004.
DIXON, W. et al. Robust tracking and regulation control for mobile robots. InternationalJournal of Robust and Nonlinear Control, v. 10, p. 199–216, 2000.
DONALD, B. et al. Kinodynamic Motion Planning. Journal of the Association for Com-puting Machinery, v. 40, n. 5, p. 1048–1066, 1993.
54
DUAN, J. et al. A path tracking control algorithm with speed adjustment for intelligent vehi-cle. In: IEEE CONFERENCE ON ROBOTICS AND BIOMIMETICS, Shenzhen, China. Pro-ceedings... [S.l.: s.n.], 2013, p. 2397–2402. December.
DUBINS, L. E. On curves of minimal length with a constraint on average curvature, and withprescribed initial and terminal positions and tangents. American Journal of mathematics,JSTOR, p. 497–516, 1957.
EGERSTEDT, M.; MARTIN, C. Optimal trajectory planning and smoothing splines. Auto-matica, v. 37, p. 1057–1064, 2001.
ENCARNAçãO, P.; PASCOAL, A. Combined trajectory tracking and path following controlfor dynamic wheeled mobile robots. In: IFAC WORLD CONGRESS, 2002, Barcelona.Proceedings... [S.l.: s.n.], 2002.
FERREIRA, G. A. N. Desenvolvimento de uma arquitetura de controle baseada emobjetos para um robô móvel aquático. 2003. 153 p. Dissertação (Mestrado) — EscolaPolitécnica - Universidade de São Paulo, São Paulo, 2003.
GRAETTINGER, T. J.; KROGH, B. H. Evaluation and Time-Scaling of Trajectories for Whe-eled Mobile Robots. Journal of Dynamic Systems, Measurement, and Control, v. 111,p. 222–231, 1989.
HELLSTROM, T.; RINGDAHL, O. Follow the Past: a path-tracking algorithm for autono-mous vehicles. International Journal of Vehicle Autonomous Systems, v. 4, n. 2-4, p.216–224, 2006.
HOGG, R. et al. Algorithms and sensors for small robot path following. In: IEEE INTER-NATIONAL CONFERENCE ON ROBOTICS AND AUTOMATION, 2002, Washington, DC.Proceedings... [S.l.]: IEEE, 2002, p. 3850–3857. v. 4.
HUANG, H. C.; TSAI, C. C. Adaptive trajectory tracking and stabilization for omnidirectio-nal mobile robot with dynamic effect. In: IFAC WORLD CONGRESS, 2008, Seoul. Proce-edings... [S.l.: s.n.], 2008, p. 5383–5388. v. 17.
KANAYAMA, Y. et al. A Stable Tracking Control Method for a Non-Holonomic Mobile Robot.In: IEEE/RJS INTERNATIONAL WORKSHOP ON INTELLIGENT ROBOT AND SYSTEMS(IROS), 1991, Osaka, Japan. Proceedings... [S.l.: s.n.], 1991, p. 1236–1241. 91.
KHALIL, H. Nonlinear Systems. 2nd. ed. New Jersey: Prentice-Hall, 1996.
KIM, D.-H.; OH, J.-H. Tracking control of a two-wheeled mobile robot using input–outputlinearization. Control Engineering Practice, v. 7, n. 3, p. 369–373, mar. 1999.
55
KIRK, D. Optimal Control Theory. Englewood Cliffs: Dover Publications (Reprint of thePrentice-Hall), 2004.
KISS, B.; SZáDECZKY-KARDOSS, E. On-line time-scaling control of a kinematic car withone input. In: MEDITERRANEAN CONFERENCE ON CONTROL AND AUTOMATION,2007, Athens. Proceedings... [S.l.: s.n.], 2007, p. 0–5.
KOLMANOVSKY, I.; MCCLAMROCH, N. H. Developments in nonholonomic control pro-blems. IEEE Control Systems Magazine, v. 15, p. 20–36, 1995.
LAVALLE, S.; KUFFNER, J. Randomized kinodynamic planning. The International Jour-nal of Robotics Research, v. 20, n. 5, p. 378—-400, 2001.
LAVALLE, S. M. Planning Algorithms. Cambridge, U.K.: Cambridge University Press,2006.
LI, D.; YE, J. Adaptive Robust Control of Wheeled Mobile Robot with Uncertainties. In:IEEE INTERNATIONAL WORKSHOP ON ADVANCED MOTION CONTROL (AMC), 2014,Yolohama. Proceedings... [S.l.: s.n.], 2014, p. 518–523.
LIN, C.-S. L. C.-S.; CHANG, P.-R. C. P.-R.; LUH, J. Y. S. L. J. Y. S. Formulation and optimi-zation of cubic polynomial joint trajectories for mechanical manipulators. IEEE Transactionon Automatic Control, AC-28, n. 12, 1983.
LIU, S.; SUN, D. Minimizing Energy Consumption of Wheeled Mobile Robots via OptimalMotion Planning. IEEE Transactions on Mechatronics, v. 19, n. 2, p. 401–411, 2014.
LUCA, A. D.; ORIOLO, G.; SAMSON, C. Feedback Control of a Nonholonomic Car-likeRobot. In: LAUMOND, J. (Ed.). Robot Motion Planning and Control. New York: Springer,1998. p. 171–253.
LUCA, A. D.; ORIOLO, G.; VENDITTELLI, M. Control of wheeled mobile robots: An ex-perimental overview. In: NICOSIA, S. et al. (Ed.). Ramsete - Articulated and MobileRobotics for Services and Technologies. London: Springer, 2001. p. 181–226.
MIYAZAKI, M. R. Desenvolvimento de sistema de posicionamento dinâmico comaproamento automático. 2013. 131 p. Dissertação (Mestrado) — Escola Politécnica -Universidade de São Paulo, São Paulo, 2013.
MOUSTRIS, G.; TZAFESTAS, S. G. A robust fuzzy logic path tracker for non-holonomicmobile robots. International Journal on Artificial Intelligence Tools, v. 14, n. 06, p.935–965, 2005.
MURPHY, R. Introduction to AI Robotics. Cambridge: MIT Press, 2000. 400 p.
56
MURRAY, R. M.; SASTRY, S. S. Steering nonholonomic systems in chained form. In: IEEECONFERENCE ON DECISION AND CONTROL, 1991, Brighton, England. Proceedings...[S.l.: s.n.], 1991, p. 1121–1126. December.
NØRGAARD, M.; POULSEN, N.; RAVN, O. Models for Iau’s Autonomous Guided Vehi-cle. Lyngby, DE: Technical University of Denmark, 2000. 16 p. Technical Report IMM-REP-1997-15. 2000.
OLIVEIRA, P. R. G. Auto-localização e construção de mapas de ambiente para robôsmóveis baseados em visão omnidirecional estéreo. 2008. 165 p. Dissertação (Mes-trado) — Escola Politécnica - Universidade de São Paulo, São Paulo, 2008.
OLIVEIRA, V. M.; PIERI, E. R.; LAGES, W. F. Wheeled mobile robot using sliding modesand neural networks: learning and nonlinear models. Review Soc.Brasileira de RedesNeurais, v. 1, n. 2, p. 103–121, 2003.
ORIOLO, G. Wheeled Robots. In: BAILLIEUL, J.; SAMAD, T. (Ed.). Encyclopedia of Sys-tems and Control. London: Springer-Verlag, 2015. p. 1–9.
ORIOLO, G.; LUCA, A.; VENDITTELLI, M. WMR control via dynamic feedback lineariza-tion: design, implementation, and experimental validation. IEEE Transactions on ControlSystems Technology, v. 10, n. 6, p. 835–852, nov. 2002.
PHAM, Q.-C.; CARON, S.; NAKAMURA, Y. Kinodynamic Planning in the ConfigurationSpace via Velocity Interval Propagation. In: ROBOTICS: SCIENCE AND SYSTEMS, 2013,Berlin. Proceedings... [S.l.: s.n.], 2013.
POURBOGHRAT, F.; KARLSSON, M. P. Adaptive control of dynamic mobile robots withnonholonomic constraints. Computers and Electrical Engineering, v. 28, p. 241–253,2002.
RANKIN, A. L. Development of Path Tracking Software for an Autonomous Steered-Wheeled Robotic Vehicle and its Trailer. 1997. 133 p. Tese (Tese) — University of Flo-rida, Florida, 1997.
REYHANOGLU, M. On the stabilization of a class of nonholonomic systems using invariantmanifold technique. In: IEEE CONFERENCE ON DECISION AND CONTROL, 1995, NewOrleans, LA. Proceedings... [S.l.: s.n.], 1995, p. 25–26. December.
RIGATOS, G. G.; TZAFESTAS, C. S.; TZAFESTAS, S. G. Mobile robot motion control inpartially unknown environments using a sliding-mode fuzzy-logic controller. Robotics andAutonomous Systems, v. 33, p. 1–11, 2000.
57
SAMSON, C. Control of Chained Systems Application to Path Following and Time-VaryingPoint-Stabilization of Mobile Robots. IEEE Transactions on Automatic Control, v. 40,n. 1, p. 64–77, 1995.
SANHOURY, I. M. H.; AMIN, S. H. M.; HUSAIN, A. R. Trajectory tracking of steering sys-tem mobile robot. In: IEEE CONFERENCE ON MECHATRONICS (ICOM), 2011, KualaLumpur, Malaysia. Proceedings... [S.l.]: IEEE, 2011, p. 1–5. May.
SANTANA, D. D. S. Navegação terrestre usando unidade de medição inercial de baixodesempenho e fusão sensorial com filtro de kalman adaptativo suavizado. 2011.230 p. Tese (Doutorado) — Escola Politécnica - Universidade de São Paulo, São Paulo,2011.
SHANG, Y.; XIE, J. Global Stabilization of Nonholonomic Chained Form Systems with InputDelay. Abstract and Applied Analysis, v. 2014, p. 1–6, 2014.
SICILIANO, B.; KHATIB, O.(Ed.). Springer Handbook of Robotics. Berlin: Springer Sci-ence and Business Media, 2008. 1611 p.
SIEGWART, R.; NOURBAKHSH, I. Introduction to autonomous mobile robot. London:MIT Press, 2004. 336 p.
SLOTINE, J.; LI, W. Applied nonlinear control. 1st. ed. Englewood Cliffs: Prentice-Hall,1991.
SUJIT, P.; SARIPALLI, S.; SOUSA, J. An evaluation of UAV path following algorithms. In:EUROPEAN CONTROL CONFERENCE (ECC), 2013, Zürich. Proceedings... [S.l.: s.n.],2013, p. 3332–3337. 1.
TANNURI, E. A. Sistema de Posicionamento Dinâmico: Projeto, Análise e Novos De-senvolvimentos. 2009. Tese (Concurso Livre Docência) — Universidade de São Paulo,São Paulo, 2009.
TAYEBI, a.; TADJINE, M.; RACHID, a. Invariant manifold approach for the stabilizationof nonholonomic chained systems: Application to a mobile robot. Nonlinear Dynamics,v. 24, p. 167–181, 2001.
TZAFESTAS, S. G. Introduction to Mobile Robot Control. London: Elsevier, 2014.750 p.
WAHBA, G. Spline Models for Observational Data. [S.l.]: Society for Industrial andApplied Mathematics, 1990. 169 p. (CBMS-NSF Regional Conference Series in AppliedMathematics).
58
WATANABE, K. et al. Underactuated control for nonholonomic mobile robots by usingdouble integrator model and invariant manifold theory. In: IEEE INTERNATIONAL CON-FERENCE ON INTELLIGENT ROBOTS AND SYSTEMS, 2010, Taipei, Taiwan. Procee-dings... [S.l.: s.n.], 2010, p. 2862–2867. v. 2.
WIT, J. Vector pursuit path tracking for autonomous ground vehicles. 2000. Tese(Tese) — University of Florida, Florida, 2000.
WIT, J.; CRANE, C. D.; ARMSTRONG, D. Autonomous ground vehicle path tracking. Jour-nal of Robotic Systems, v. 21, n. 8, p. 439–449, ago. 2004.
XIANG, X. et al. Path tracking: Combined path following and trajectory tracking for au-tonomous underwater vehicles. In: IEEE/RSJ INTERNATIONAL CONFERENCE ON IN-TELLIGENT ROBOTS AND SYSTEMS, 2011, San Francisco, CA. Proceedings... SanFrancisco: IEEE, setembro 2011, p. 3558–3563.
YANG, E. et al. Nonlinear tracking control of a car-like mobile robot via dynamic feedback li-nearization. In: UKACC CONTROL CONFERENCE, 2004, Bath, UK. Proceedings... [S.l.:s.n.], 2004. September.
YEU, T.; PARK, S.; HONG, S. Path tracking using vector pursuit algorithm for trackedvehicles driving on the soft cohesive soil. In: . SICE-ICASE. [S.l.: s.n.], 2006, p. 2781–2786.
YUN, X.; YAMAMOTO, Y. On feedback linearization of mobile robots. Philadelphia:University of Pennsylvania, 2005. Paper 503. Technical Reports No. MS-CIS-92-45, 2005.
ZANONI, B. I. O. D. Modelagem e implementação do sistema de navegação para umAUV. 2012. 273 p. Dissertação (Mestrado) — Escola Politécnica - Universidade de SãoPaulo, São Paulo, 2012.
ZHEN-YING, L.; CHAO-LI, W. Robust stabilization of nonholonomic chained form systemswith uncertainties. Acta Automatica Sinica, The Chinese Association of Automation andThe Institute of Automation, Chinese Academy of Sciences, v. 37, n. 2, p. 129–142, 2011.
59
ANEXO A – DATASHEET DO MOTOR CC
Product Details
DC GearmotorGM9213-2 Note: Product photo is for illustrativepurposes. Please refer to EngineeringDrawing for specifics.
Motor SeriesSeries GM9000 LO-COGBrush Commutated DCGearmotors
Price (USD)Frame Size (Mounting Face) (in) 2Motor Frame Size (in) 1.58Gear Frame Size (in) 2.000Overall Body Length (in) 3.476Supply Voltage (V) 12Continuous Output Torque (oz-in) 47Output Speed @ Cont. Torque (RPM) 24.8Current @ Cont. Torque (A) 0.81Continuous Output Power (W) 0.85No Load Current (A) 0.15No Load Output Speed (RPM) 129Peak Current (A) 1.4Peak Output Torque (oz-in) 100Motor Constant (oz-in/√W) 1.94Motor Torque Constant (oz-in/A) 5.6Motor Voltage Constant (V/krpm) 4.14Terminal Resistance (Ohms) 8.33Inductance (mH) 6.2Coulomb Friction Torque (oz-in) 0.5Viscous Damping Factor (oz-in/krpm) 0.011Electrical Time Constant (ms) 0.74Mechanical Time Constant (ms) 15Thermal Time Constant (min) 11Thermal Resistance (ºC/Watt) 19Maximum Winding Temperature (ºC) 155Rotor Inertia (oz-in-s2) 0.00039Output Bearing SleeveGear Series G51AGear Ratio (xx.x:1) 19.7Gear Type standard spurGear Efficiency 0.73Gear Maximum Torque (oz-in) 175Encoder Series n/aEncoder Resolution (CPR) n/aEncoder Output Channels n/aWeight (Mass) (oz) 15
Voltage Note
Note: rated voltage ofPittmanExpress item isdifferent than catalogreference voltage of basemotor.
Torque Warning N/A
Pittman Products • www.Pittman-Motors.com • Phone: 1-267-933-2105
Top Related