Laboratório de Máquinas Laboratório de Máquinas Inteligentes – LMI/ITAInteligentes – LMI/ITA
Jeeves Lopes dos Santos
Instituto Tecnológico de Aeronáutica – ITA/LMI
Simulação de Walking Simulação de Walking Machines usando Machines usando
MATLAB/SimMechanicsMATLAB/SimMechanics
2
Problema AtacadoProblema Atacado
O advento da locomoção permite uma maior versatilidade na utilização dos recursos disponíveis em um determinado equipamento.
RodasPernas
Pernas e Rodas Rasteja e Rodas
Rasteja
Meios de Locomoção
IntroduçãoIntrodução
3
Problema AtacadoProblema AtacadoLocomoçãoLocomoção
Estática X DinâmicaEstática X DinâmicaO equilíbrio do robô se dá a partir
da permanência do centro de gravidade sobre um polígono de suporte gerado pelas pernas em contato com o solo.
O equilíbrio do robô é obtido através da constante movimentação do centro de gravidade.
Coordenação dos atuadores de um robô munido de quatro ou mais pernas, visando uma locomoção estática, independente da sua arquitetura física.
4
A utilização de pernas permite:
Locomoção em ambientes irregulares e acidentados;Maior Idenficação com os seres humanos, facilitando a
aceitação dos mesmos; Estudar o sistema de locomoção dos seres vivos;Originar sistemas capazes de facilitar a locomoção de
deficientes físicos, idosos, ou até mesmo para diminuir o esforço físico desprendido por pessoas que tem que se locomover durante longos períodos de tempo.
MotivaçãoMotivação
5
Alternativas de SoluçãoAlternativas de Solução
VisãoVisãoMatemática X Matemática X
EvolucionistaEvolucionistaBaseada no modelo matemático do robô:
Desprende um esforço muito grande do projetista;
Gera uma solução específica para um determinado robô em particular em um determinado tipo de ambiente;
Em geral resulta em um resultado mais otimizado.
Baseada na evolução através da utilização de Inteligência Artificial:
Minimiza o esforço do projetista;
Permite uma maior adaptabilidade à arquitetura física do robô e ao terreno de locomoção.
6
Proposta de SoluçãoProposta de SoluçãoUtilizar inteligência artificial para permitir o aprendizado em camadas:
A primeira camada de aprendizado diz respeito à coordenação dos atuadores que compõe uma perna;
A segunda camada diz respeito à coordenação das pernas propriamente ditas.
O aprendizado deve ocorrer levando em consideração a relação entre três desempenhos:
Velocidade;Estabilidade;Consumo de Energia.
Como a depender da situação uma determinada relação “VECE” é mais indicada, deve-se utilizar três “zonas de aprendizado” definidas pelo operador. Além dessa definição, o operador deve criar as regras para o chaveamento entre cada zona.
7
Ambiente de Ambiente de DesenvolvimentoDesenvolvimento
Para o desenvolvimento do sistema proposto, há a necessidade de um ambiente no qual as idéias possam ser testadas.
Neste contexto, utilizar um ambiente simulado facilita no desenvolvimento em sua fase inicial, uma vez que:
Não há risco de danificar o robô;O reposicionamento do robô pode ser realizado sem intervenção
humana;Não há a necessidade de trocar e/ou recarregar a bateria do robô;Não há necessidade de manutenção do equipamento;A arquitetura física do robô é facilmente modificada.
Como ferramenta para realizar essa simulação, optou-se pelo toobox do Simulink chamado SimMechanics. Esta ferramenta é um ambiente de modelagem que utiliza diagrama de blocos para construir e simular equipamentos compostos por corpos rígidos e seus graus de liberdade utilizando as leis de Newton para a dinâmica das forças e torques.
8
Simulink/SimMechanicsSimulink/SimMechanics
O modelo de perna utilizado para a simulação é composto de três corpos rígidos (A,B,C) com quatro graus de liberdade (0,1,2,3).
Os corpos “B” e “C” tem as mesmas dimensões e são baseados no servo motor de modelo HSR-8498HB (modelo que pode ser utilizado na construção real), enquanto que “A” possui dimensões ajustadas para representar o pé do robô.
Os graus de liberdade “1”, “2” e “3” permitem apenas o movimento de rotação em um eixo. Já o grau de liberdade “0” permite a translação e a rotação nos 3 eixos
9
Simulink/SimMechanicsSimulink/SimMechanics
No SimMechanics pode-se atuar tanto nos corpos como nas juntas.No modelo implementado, as juntas “1”, “2” e “3” recebem um
estímulo externo (sinais que possuem os ângulos projetados nas juntas), a junta “0” recebe a atuação da força de atrito calculada e o corpo “A” recebe a atuação da reação de contato com o solo em 4 pontos distintos.
Atuação nas juntas e nos Atuação nas juntas e nos corposcorpos
10
Simulink/SimMechanicsSimulink/SimMechanicsModelo não linear de Reação Modelo não linear de Reação
de Contato Hunt-Crossleyde Contato Hunt-Crossley
Onde :p → Distância de Penetração;u → Termo que leva em consideração o formato dos objetos
que estão se encontrando;K → Constante Elástica;D → Constante de Amortecimento;FRC → Força de Reação de Contato;FN → Força Normal.
0 → p < 0pu.K.[ 1 + D.vy ] → p > 0
Fy =[FRC = [0 Fy 0]
FN = FRC1 + FRC2 + FRC3 + FRC4
11
Simulink/SimMechanicsSimulink/SimMechanicsModelo de atritoModelo de atrito
Onde :Vth → Velocidade Limite;FAE → Força de Atrito Estático;FAD → Força de Atrito Dinâmico;CAE → Coeficiente de Atrito Estático;CAD → Coeficiente de Atrito Dinâmico.
OBS.: O SimMechanics possui um bloco de atrito, porém devido a dependência da FN, a simulação acarretava em um erro de loop, criando a necessidade de utilizar o modelo proposto.
FAE = FN . CAEFAD = FN . CAD
12
Simulink/SimMechanicsSimulink/SimMechanicsModelo do robô com pernasModelo do robô com pernas
Hexápode
Quadrúpede
13
Simulink/SimMechanicsSimulink/SimMechanicsSinais de ControleSinais de Controle
Sinal 2
Sinal 1
S1 S2 S2S1
S1 S1 S1S2S2 S2
14
Resultados ObtidosResultados ObtidosSimulações - QuadrúpedeSimulações - Quadrúpede
Força Normal
15
Simulações - QuadrúpedeSimulações - Quadrúpede
Força de Atrito
Resultados ObtidosResultados Obtidos
16
Simulações - QuadrúpedeSimulações - Quadrúpede
Inclinação do Robô
Resultados ObtidosResultados Obtidos
17
Próximos passos.Próximos passos.• Estudar e implementar a técnica LegGen, desenvolvida na tese de
mestrado “Controle Inteligente do Caminhar de Robôs Móveis Simulados”;
• Analisar as técnicas de inteligência artificial, para definir qual a vai ser utilizada;
• Construir os circuitos de acionamento dos sensores que serão utilizados nos robôs reais montados com o Kit da Bioloid.