Você está na página 1de 140

 

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO CEARÁ


DIRETORIA DA ÁREA DA INDÚSTRIA
CURSO SUPERIOR DE TECNOLOGIA EM MECATRÔNICA INDUSTRIAL

DESENVOLVIMENTO DE UM ROBÔ HEXÁPODE

HELANO PIMENTEL RABELO

FORTALEZA
2015
 
 

HELANO PIMENTEL RABELO

DESENVOLVIMENTO DE UM ROBÔ HEXÁPODE

Trabalho de final de curso apresentado e


julgado adequado para aprovação na sua
forma final pelos professores do Curso
de Tecnologia em Mecatrônica Industrial
do Instituto Federal de Educação, Ciência
e Tecnologia do Ceará.

ORIENTADOR: Prof. Dr. Auzuir Ripardo de Alexandria

FORTALEZA-2015
TERMO DE APROVAÇÃO
 
 

A Deus, criador das coisas visíveis e


invisíveis aos olhos humanos.
 
 

AGRADECIMENTOS

A Deus, que me permitiu chegar até aqui.

A todos aqueles que contribuíram para que eu pudesse realizar esta obra,
familiares, primeiramente, e amigos. Em especial Natanael e Davi.

Ao meu orientador, que proporcionou fontes de pesquisa e orientação tanto


de escrita, quanto de ideias.

Aos professores da disciplina de Trabalho de Conclusão de Curso, que


orientaram no processo de formatação e concatenação da metodologia do
trabalho.

Aos professores do curso da área da indústria que contribuíram também.

A todos da Comunidade Caminhando com Jesus e Maria pelo incentivo e


orações.
 
 

“Porque Deus não dos deu o espírito de temor, mas de

fortaleza, e de amor, e de moderação.”

2 Timóteo 1:7
 
 

RESUMO

Nos últimos anos, um forte incentivo tem sido dado ao desenvolvimento de máquinas
para realizar atividades em ambientes hostis aos seres humanos ou em locais de difícil
acesso. Como é possível fazer inspeção, reconhecimento ou levar equipamentos a esses
locais e ainda desempenhar tarefas por longos períodos de tempo e retornar sem riscos?
O presente trabalho apresenta a construção de um robô hexápode biologicamente
inspirado, modelo tipo Phoenix, e de baixo custo para uso como plataforma de
desenvolvimento de arquiteturas de controle a fim de operar em ambientes não
estruturados, desconhecidos, ou hostis, pois, sendo um dos que se locomove por meio
de seis patas, apresenta vantagens para superar obstáculos em relação às outras
configurações de robôs móveis rotacionais, atendendo a necessidade de acesso a
ambientes de relevo acidentado ou com inclinação. O processo de manufatura de um
robô desse tipo é apresentado neste trabalho, contendo um desenho 3D no software
SOLID EDGE, um modelo utilizando acrílico como material de estrutura, servosmotores
de 9g e torque de aproximadamente 1,8 kg.cm como atuadores das patas, com três
graus de liberdade cada uma, e uma placa de desenvolvimento contendo um módulo de
controle da TIERTEX, com um microcontrolador da família PIC (o PIC 18F4550),
utilizando-se de interface USB para bootloader e linguagem C, com código escrito no
ambiente MPLAB X. Este projeto permitiu a construção do protótipo proposto, bem como
um firmware desenvolvido para acionamento inicial das patas, com o recurso de criar
sinais PWM variados para múltiplos servomotores, fazendo o robô deixar a posição de
repouso para uma posição elevada de espera para locomoção segura.

Palavras-chave: Robôs Móveis Biologicamente Inspirados. Robôs com patas.


Hexápode. Phoenix Hexapod.
 
 

ABSTRACT

In recent years, a strong incentive has been given to the development of machines to
carry out activities in hostile environments to humans or hard to reach places. How you
can make inspection, recognition or take equipment to these places and still perform tasks
for long periods of time and return them safely? This paper presents the construction of a
biologically inspired hexapod robot, type model Phoenix, and low cost for use as a
development platform control architectures to operate in unstructured environments,
unknown, or hostile of them, being a robot that can walk with six legs, has advantages to
overcome obstacles in relation to other rotational mobile robot configurations, given the
need for access to rugged or tilted environments. The manufacturing method of a robot of
this type is presented in this paper, containing a 3D design in software SOLID EDGE,
using a model structure as acrylic material, 9g micro servos, with torque of approximately
1,8 Kg.cm how actuators of the legs, with three degrees of freedom each, and a
development board containing a control module TIERTEX with a PIC family
microcontroller (PIC 18F4550), using USB interface for bootloader and C language with
code written in MPLAB X environment. This project allowed the construction of the
proposed prototype, and firmware designed for initial activation of the legs, with ability to
create various PWM signals for multiple servos, making the robot let the rest position to a
raised position waiting for secure mobility.

Keywords: Mobile Robots Biologically Inspired. Robots with legs. Hexapod. Phoenix
Hexapod.
 
 

LISTA DE FIGURAS

Figura 1 - The Pigeon, pássaro mecânico a vapor, de Archytas de Tarentum. ..... 17 
Figura 2 - Cavaleiro mecânico baseado nos desenhos de Leonardo da Vinci
(1452-1519) ....................................................................................................................... 18 
Figura 3 - acima o pato mecânico de Jacques de Vaucanson, abaixo os três
bonecos autômatos dos irmãos Droz e ao lado foto do mecanismo de um dos
bonecos. ............................................................................................................................. 19 
Figura 4 - Robô Explorador Viking (1975) .................................................................... 21 
Figura 5 - Elementos funcionais de um robô................................................................ 25 
Figura 6 - (a) Shakey; (b) Planejamento de trajetória por Lozano-Perez................ 29 
Figura 7 - Evolução do robô humanoide da Honda até o robô Asimo. .................... 30 
Figura 8 - Robô Dante usado para inspeção no de vulcão no Alaska ..................... 31 
Figura 9 - Classificação segundo a anatomia .............................................................. 32 
Figura 10 - (a) UAV MQ-9 Reaper, no Afeganistão, 4 de novembro de 2007; (b)
MQ-8B – helicóptero autônomo, 8 de maio de 2009. ................................................. 33 
Figura 11 - (a) Quadrotor levando um bloco de concreto; (b) HALE-D – um LTA . 33 
Figura 12 - (a) Robô Nereus; (b) AUV MT-88, já usado em salvamentos, na
Rússia. ................................................................................................................................ 34 
Figura 13 - Remora 6000. ............................................................................................... 34 
Figura 14 - Os quatro tipos básicos de roda: (a) roda comum com rotação em
torno do eixo motorizado; (b) roda com rotação na junta; (c) roda de três graus de
liberdade com pequenos rolos livres em volta; (d) roda esférica. ............................ 35 
Figura 15 - (a) Rezero, robô com roda esférica; (b) robô omnidirecional. .............. 36 
Figura 16 - (a) iRobot 710 Warrior; (b) Nanokhod ....................................................... 36 
Figura 17 - (a) A-Pod; (b) Walking Harveste ................................................................ 37 
Figura 18 - Classificação Segundo a funcionalidade .................................................. 39 
Figura 19 - (a) Robô SILO-6, (b) Robô AIBO, (c) Robô Curiosity, (d) Robô AGV
Falcon F150 ....................................................................................................................... 41 
Figura 20 - Esquema Geral do Sistema de Controle de um Robô Móvel. .............. 44 
Figura 21 - Tipos de Atuadores: (a) Pistões Pneumáticos e Hidráulicos, (b) Pistões
Pneumáticos, (c) Motor AC, (d) Motor DC, (e) Motor de Passo, (f) Servo. ............. 47 
Figura 22 - Mecanismos de Locomoção baseados em sistemas biológicos. ......... 55 
Figura 23 - (a) Sistema original de Chebychev; (b) Mecanismo adaptado. ............ 57 
Figura 24 - (a) Máquina quadrúpede da General Electric (b) Hexapode OSU....... 59 
Figura 25 - Robô com uma pata ..................................................................................... 60 
Figura 26 - (a) Robô WAP-1, (b) atual robô Asimo da Honda, (c) robô Sony Dream
............................................................................................................................................. 62 
Figura 27 - (a) Big Dog (2008), (b) Ajax hexapod (2005) ........................................... 62 
Figura 28 - (a) ASV, (b) robô quadrúpede do MIT. ..................................................... 63 
Figura 29 - (a) Robô Genghis, (b) Robô Hannibal; Robôs com Arquitetura
Subsumption. ..................................................................................................................... 64 
Figura 30 - Convenção de numeração de patas. ........................................................ 75 
Figura 31 - Diagramas de Marcha de um hexápode: (a) wave gait, (b) ripple gait,
(c) tripod gait. ..................................................................................................................... 76 
Figura 32 - Esquema de locomoção tripod gait em um hexápode. .......................... 76 
Figura 33 - (a) pata do bio-sistema inspirado, (b) tipos de patas com três graus de
liberdade............................................................................................................................. 78 
 
 

Figura 34 - Ciclo de passo básico de uma pata .......................................................... 79 


Figura 35 - Fases do projeto, com realimentação e iterações .................................. 84 
Figura 36 - Esquema de um projeto preliminar de um robô caminhante hexápode
............................................................................................................................................. 86 
Figura 37 - Fluxograma de design para robôs hexápodes ........................................ 87 
Figura 38 - Tipos de patas de um robô hexápode ...................................................... 88 
Figura 39 - Ajustes de PWM para reposicionamento do eixo do servomotor ......... 90 
Figura 40 - Sinais modulados por PWM ....................................................................... 90 
Figura 41 - Modulação PWM com tensão constante .................................................. 91 
Figura 42 - Comparação para obtenção de sinais PWM ........................................... 91 
Figura 43 - Onda dente de serra para obtenção de sinais de PWM ........................ 92 
Figura 44 - Servomotor utilizado .................................................................................... 92 
Figura 45 - Módulo TDSDB4550MINI e diagrama de pinos ...................................... 94 
Figura 46 - Gerenciador USB Bootloader. .................................................................... 95 
Figura 47 - Vista Frontal modelo Phoenix Hexápod. .................................................. 95 
Figura 48 - Estrutura das Patas...................................................................................... 98 
Figura 49 - Dimensionamento das peças das patas ................................................... 99 
Figura 50 - Peças de Acoplamento, vistas frontal e traseira. .................................... 99 
Figura 51 - Peças da Estrutura do chassi................................................................... 100 
Figura 52 - Modelo do robô em 3D. ............................................................................. 101 
Figura 53 - Corte das peças. ........................................................................................ 103 
Figura 54 - Robô Hexápode montado. ........................................................................ 104 
Figura 55 - Soldagem dos pinos. ................................................................................. 104 
Figura 56 - Esquemático do circuito no Proteus ........................................................ 105 
Figura 57 - LM317 com ajuste de tensão de saída ................................................... 106 
Figura 58 - Placa de circuito e disposição dos componentes, respectivamente. . 107 
Figura 59 - Robô com placa de circuito e tampa inferior, respectivamente. ......... 108 
Figura 60 - Perfis de onda dos sinais PWM gerados. .............................................. 109 
Figura 61 - Acoplagem de Elos e Articulações .......................................................... 110 
Figura 62 - Teste por pata ............................................................................................. 111 
Figura 63 - Ganho de amplitude de trabalho.............................................................. 114 
 
 

LISTA DE SIGLAS

CAD: Computer Aided Design

R.U.R: Robôs Universais de Rossum

NASA: National Aeronautics and Space Administration

PUMA: Programmable Universal Machine for Assembly

SCARA: Selective Compliance Assembly Robot Arm

R.I.A: Robotics Institute of America

JIRA: Japanese Industrial Robot Association

SI: Sistema Internacional de unidades

BRA: The British Robot Association

ISO: International Standards Organization

CAM: Computer Aided Manufacturing

AGMA: American Gear Manufacturing Association

ACME: American Control of Mechanical Engineering

FEA: Finite Element Analysis


 
 

SUMÁRIO

1 INTRODUÇÃO .......................................................................................... 13
1.1 Contextualização do Problema ............................................................... 13
1.2 Objetivos .................................................................................................. 14
1.2.1 Objetivos Gerais ...................................................................................... 14
1.2.2 Objetivos Específicos.............................................................................. 14
1.3 Justificativa .............................................................................................. 14
1.4 Metodologia.............................................................................................. 15
1.5 Escopo ...................................................................................................... 15
1.6 Estrutura do trabalho .............................................................................. 15
2 FUNDAMENTAÇÃO TEÓRICA ................................................................ 17
2.1 Contexto histórico ................................................................................... 17
2.2 Definições de Robô ................................................................................. 24
2.2.1 O que é e o que não é um robô .............................................................. 24
2.3 Robótica Móvel ........................................................................................ 28
2.4 Classificação de Robôs........................................................................... 31
2.4.1 Segundo a Anatomia ............................................................................... 32
2.4.2 Segundo o Tipo de Controle ................................................................... 37
2.4.3 Segundo a Funcionalidade ..................................................................... 38
2.5 Aplicações para a Robótica Móvel ......................................................... 40
2.6 Desafios de Implementação em Robótica Móvel .................................. 43
2.7 Componentes de um Robô Móvel .......................................................... 45
2.7.1 Estrutura Mecânica .................................................................................. 45
2.7.2 Atuadores ................................................................................................. 45
2.7.3 Sensores................................................................................................... 49
2.7.4 Controladores .......................................................................................... 53
2.7.5 Baterias..................................................................................................... 53
2.8 Locomoção............................................................................................... 54
2.9 Sistemas Robóticos de Locomoção por Patas ..................................... 56
2.9.1 Contexto Histórico e Primeiros Estudos ............................................... 57
2.9.2 Tipos de Robôs com patas ..................................................................... 60
2.9.3 Robôs Hexápodes ................................................................................... 65
 
 

2.9.4 Robôs com Aproximações Biológicas................................................... 74


2.9.5 Marcha (Gait) e Estabilidade ................................................................... 74
2.9.6 Configurações de Patas .......................................................................... 77
2.9.7 Ciclo da pata (Passo)............................................................................... 78
2.9.8 Modelos de Andadura e seus parâmetros ............................................. 80
3 PROJETO E DESCRIÇÃO DO ROBÔ ...................................................... 82
3.1 Metodologia de Projeto de Máquinas..................................................... 82
3.2 Ferramentas de Projeto e Recursos....................................................... 84
3.2.1 Ferramentas computacionais (CAD) ...................................................... 84
3.3 Projeto de Robôs ..................................................................................... 85
3.4 Modelando um Robô Hexápode ............................................................. 85
3.4.1 Considerações de Design ....................................................................... 86
3.4.2 Arquitetura do Corpo do Robô Hexápode ............................................. 88
3.4.3 Arquitetura Cinemática das Patas .......................................................... 88
3.5 Atuador ..................................................................................................... 89
3.6 Módulo de Controle ................................................................................. 93
3.6.1 Bootloader ................................................................................................ 94
3.7 O Modelo Hexápode Phoenix ................................................................. 95
4 TRATAMENTO METODOLÓGICO ........................................................... 97
4.1 Desenvolvimento do Projeto do Robô Hexápode ................................. 97
4.2 Configuração das Patas .......................................................................... 98
4.3 Configuração do Chassi........................................................................ 100
4.4 Modelagem do robô em 3D ................................................................... 100
4.5 Construção do Robô Hexápode ........................................................... 101
4.6 Acionamento das Patas ........................................................................ 104
4.7 Código e Ambiente de Programação. .................................................. 108
5 TESTES E RESULTADOS ...................................................................... 110
5.1 Teste 1 – Acoplamento de Motores ...................................................... 110
5.2 Teste 2 – Teste de PWM ........................................................................ 110
5.3 Transferência do Firmware pelo Bootloader ....................................... 111
5.4 Testes de Acionamento......................................................................... 111
6 CONCLUSÃO E TRABALHOS FUTUROS............................................. 116
13 
 

1 INTRODUÇÃO

1.1 Contextualização do Problema

Nos últimos anos, um forte incentivo tem sido dado ao desenvolvimento de


máquinas com características cada vez mais vantajosas para que se possa
realizar tarefas em locais perigosos ou de difícil acesso ao ser humano. Como é
possível fazer inspeção, reconhecimento ou levar equipamentos a esses locais e
ainda desempenhar tarefas por longos períodos de tempo e retornar sem riscos?
Por meio de vídeos, reportagens, artigos e pesquisas veiculados em
diversos sites sobre tecnologia, a humanidade pode observar um aumento das
vertentes que abrangem o potencial de aplicações da Robótica Móvel, sobretudo
aquelas voltadas a tarefas perigosas, insalubres, desagradáveis, salvamento e
emergência, patrulhamento e segurança, limpeza industrial e doméstica, em
hospitais e laboratórios, operações militares, operações em ambientes distantes
e/ou hostis.
A escolha do tipo de mobilidade que um robô pode oferecer vai depender
da sua finalidade, do grau de habilidade de locomoção em relação ao ambiente
no qual desempenhará suas atividades, evitando obstáculos e sendo capaz de se
posicionar em locais específicos, onde as tarefas serão realizadas. De acordo
com estas exigências a respeito da locomoção e posicionamento, dois grupos de
robôs móveis são normalmente utilizados: os que se utilizam de rodas e os que se
utilizam de elos interligados, simulando o movimento das patas de animais
(PIERE, 2002).
Entretanto, para resolver tais problemas de acesso e realizar algumas
atividades nos locais onde robôs com rodas não conseguem chegar, alguns robôs
com patas são utilizados atualmente, embora sejam de um custo mais elevado.
Dessa forma, pode-se perceber a falta de opções mais acessíveis desses robôs,
tanto no mercado, quanto a nível didático para auxiliar o estudo deles.
A construção de um robô hexápode de baixo custo é o foco deste trabalho,
pois apresenta vantagens para superar obstáculos em relação às outras
configurações de robôs móveis rotacionais, atendendo a necessidade de acesso
e navegação a tais ambientes, para inspeção ou exploração também.
14 
 

1.2 Objetivos

1.2.1 Objetivos Gerais

Este trabalho visa construir um robô de custo viável para estudo, do tipo
hexápode, tendo o design voltado à inspeção de locais de difícil acesso humano,
locais insalubres e/ou perigosos. Além de iniciar o controle primário dos
atuadores, que consiste em acionar as seis patas para locomoção.

1.2.2 Objetivos Específicos

Os objetivos específicos deste trabalho são:

1) Efetuar revisão bibliográfica sobre Robótica e expor os tipos de robôs móveis


com patas que existem atualmente por meio de um breve estudo;
2) Especificar características mecânicas, materiais para construção que sejam
facilmente acessíveis e métodos de construção viáveis ao usuário;
3) Desenvolver um desenho em três dimensões a fim de dimensionar o projeto e
visualizar o protótipo, utilizando o software SOLID EDGE® da SIEMENS®;
4) Construir o modelo estrutural baseado no dimensionamento e na mecânica;
5) Desenvolver um programa de acionamento primário e testá-lo no protótipo.

1.3 Justificativa

Devido às observações dos diferentes tipos de robôs móveis existentes


que são utilizados na prática e de suas funções, nota-se que muitos deles se
locomovem por meio de rodas ou esteiras, não sendo muito eficientes em se
locomover em ambientes pedregosos, de relevo acidentado, onde é preciso
manter a estabilidade e operar com baixa taxa de erro, com precisão e
velocidade. Embora os robôs que se locomovem por meio de articulações,
simulando o movimento de animais, necessitem de um maior processamento de
informações para manter um controle satisfatório e com bom desempenho, eles
têm vantagens sobre os demais, sobretudo por serem capazes de se locomover
em várias direções, e são cotados para o uso em campo, quando se deseja
realizar tarefas em locais não estruturados, inclinados e até verticais, perigosos
ou pouco conhecidos, mesmo sendo o estudo de robôs móveis com “patas” uma
área pouco explorada para estes fins (TEDESCHI; CARBONE, 2014).
15 
 

O interesse pelo tema cresceu em vários lugares, como Japão, EUA e


Europa, onde protótipos foram desenvolvidos para desempenhar tarefas em áreas
hostis, levando manipuladores em sua estrutura ou funcionando como plataforma
de trabalho, atuando em manutenção, inspeção e segurança. Devido ao sucesso
desses protótipos e com o crescimento da consciência sobre a segurança e
saúde em locais de trabalho, os setores industriais estão buscando essas
tecnologias (SILVA, 2005). Por isso foi escolhido esse tema, para experimentar
tais recursos da Robótica e poder ter a chance de vê-los em campo.
Com isso, há necessidade de pesquisar uma configuração de robô móvel
(robô hexápode) e demonstrar como ele pode ser construído, considerando seu
desempenho, funcionamento e viabilidade nas situações propostas para simular
uma inspeção em local de difícil acesso humano ou de acesso a locais perigosos.

1.4 Metodologia

A pesquisa apresentada neste trabalho tem caráter experimental aplicado,


por meio da elaboração de um protótipo de um tipo de robô hexápode, e é
dividida em construção mecânica, desenvolvimento do controle e testes.
Primeiramente, foi feito um estudo das diferentes configurações de robôs
móveis, com ênfase naqueles que são providos de patas, como eles se
comportam, onde são empregados, como são deduzidos seus movimentos por
meio de cálculos. Com os parâmetros obtidos das características da estrutura de
cada um, número de articulações e forma de acionamento, comparação entre eles
e suas formas de controle.
Posteriormente é apresentado o processo de construção de um modelo em
menor escala do robô Phoenix hexapod, ilustrando os passos de montagem,
descrevendo os materiais escolhidos, equipamentos utilizados para sua usinagem
e mecanismo e, por fim, serão mostrados acionamento e testes realizados.

1.5 Escopo

Este trabalho se limita a desenvolver o protótipo de um robô móvel do tipo


hexápode de baixo custo, do modelo Phoenix hexapod, desenho conceitual,
demonstrando sua mecânica, o tipo de acionamento inicial aplicado aos
atuadores das patas e também descrever os resultados dos testes.
16 
 

1.6 Estrutura do trabalho

No Capítulo 2 é apresentada primeiramente uma revisão histórica do


desenvolvimento da Robótica Móvel e sua evolução, desde o princípio dos
autômatos até os exemplos de robôs móveis fabricados atualmente, assim como
sua definição, configurações utilizadas com ênfase nos que possuem membros
articulados para locomoção, área de atuação e peculiaridades. É relatado também
o trabalho de pesquisa realizado a respeito do funcionamento dos membros
utilizados para a locomoção dos robôs hexápodes, os possíveis movimentos que
ele pode realizar por meio da combinação de seus graus de liberdade. Neste
capítulo também é relatado um histórico sobre a necessidade de se empregar
robôs articulados com patas em atividades nas quais estes pudessem ter
vantagens sobre os demais e nas situações propostas.
No Capítulo 3 são abordadas considerações de métodos para projetar
robôs, parâmetros envolvidos nesta prática, projeto de máquinas, sistemática de
trabalho e explicações sobre o modelo proposto neste trabalho.
No Capítulo 4 é descrito o processo de montagem de um robô hexápode
do estilo Phoenix Hexapod, desde a ilustração dos desenhos para a visualização
em três dimensões do protótipo, listagem dos materiais usados, manufatura de
peças e equipamentos utilizados até o desenvolvimento do controle, bem como
um breve relato de como o projeto foi sendo melhorado em conformidade com os
recursos disponíveis.
O Capítulo 5 é destinado à apresentação dos ensaios e testes com o
objetivo de demonstrar o acionamento e simulação de situações em que o robô
hexápode estaria desempenhando funções em locais de difícil acesso humano,
locais insalubres e/ou perigosos. São relatados também os resultados obtidos e
problemas enfrentados e sugestões.
O Capítulo 6 traz as conclusões e análise dos resultados segundo o que foi
exposto e o que foi obtido do experimento em campo, relatando os objetivos
alcançados, limitações e sugestões também.
17 
 

2 FUNDAMENTAÇÃO TEÓRICA

Neste capítulo são abordados referenciais teóricos relacionados à Robótica


em geral e aplicações, visando focar no desenvolvimento da robótica móvel.

2.1 Contexto histórico

Quando se fala no termo “robô”, a maioria das pessoas pode lembrar-se de


alguns tipos de robôs vistos no cinema, como os de forma humanoide que
aparecem nos filmes da série Star Wars (Guerra nas Estrelas) e do recente I robot
(Eu, robô), filme que retrata as três leis principais da Robótica, escritas por Issac
Asimov (1920-1992), publicadas em seu livro, de mesmo nome do filme.
Segundo Piere (2002), desde a antiguidade, as civilizações têm o desejo
de construir máquinas que possam imitar os movimentos de seres humanos e de
animais. Homens mecânicos em forma de estátua, com articulações móveis e
ajustáveis, foram construídos pelos egípcios e tem-se descrição de estátuas
munidas de tubos falantes da Grécia antiga, assim como as marionetes acionadas
por sistemas de polias e pesos, a partir do século IV A.C.
As ideias mais antigas registradas sobre Robótica são de 350 A.C., pelo
matemático grego Archytas de Tarentum, amigo de Platão que construiu um
pássaro mecânico de madeira, mostrado na Figura 1, propulsionado por vapor,
que tinha a capacidade de voar, batizado de The Pigeon (HIRANO, 2006).

Figura 1 - The Pigeon, pássaro mecânico a vapor, de Archytas de Tarentum.

   
 
 
 
 
 

Fonte: ancient-origins.net – The steam-powered pigeon of Archytas.


18 
 

Detalhes de um cavaleiro mecânico foram desenhados por Leonardo da


Vinci (1452-1519). Estes desenhos ficaram perdidos e foram reencontrados
somente nos anos cinquenta. O projeto era baseado na sua investigação
anatômica e tinha pernas com três graus de liberdade, braços com quatro graus
de liberdade (ombro, cotovelo, pulso e mãos), como mostra a Figura 2. Isso o
levou a desenhar o famoso Homem Vitruviano (BIANCHI, 2011; SOUZA, 2005).

Figura 2 - Cavaleiro mecânico baseado nos desenhos de Leonardo da Vinci (1452-1519).

Fontes: http://pinterest.com, http://dvitt.wordpress.com – Fundamentos da Computação.

Bonecos mecânicos em geral, acionados por sistemas de cordas, os então


chamados autômatos, chamavam a atenção para a possibilidade de descrever a
natureza humana, no século XVI. Além disso, Piere (2002) ainda cita que, em
1589, Bernardino Baldi, abade de Guastalla, publicou um ensaio contendo
reflexões sobre a natureza e as potencialidades dos autômatos.
Marcados pelo pensamento dualista de Descartes, no século XVII, com sua
célebre frase “Penso, logo existo”, muitos filósofos passaram a se questionar
sobre os limites do mecanicismo: afinal, os autômatos seriam adequados para
explicar a natureza humana pelo fato de serem capazes de descrever a natureza
e os animais (PIERE, 2002)?
19 
 

No século XVIII, a construção dos autômatos cresceu, destaca Piere


(2002), e entre os mais conhecidos se destacam: o pato mecânico de Jacques de
Vaucanson (1709-1782), em 1750, e os três bonecos autômatos – um escrivão,
um desenhista e uma tocadora – construídos pelos irmãos Droz, na Suíça, em
1733, mostrados na Figura 3.

Figura 3 - Acima o pato mecânico de Jacques de Vaucanson, abaixo os três bonecos autômatos
dos irmãos Droz e ao lado foto do mecanismo de um dos bonecos.

(Fonte: http://pinterest.com)

Com a revolução industrial e a consequente adoção do modelo mecanicista


de Taylor e Fayol, no final do século XVIII, desencadeou-se a mudança definitiva
das formas de produção, levando o uso de máquinas à indústria, iniciando a era
da produção em larga escala.
A palavra robô é originária da palavra tcheca robota, que significa trabalho
forçado ou escravo, e foi utilizada pela primeira vez pelo dramaturgo Karel
Capeck (1890-1938) em seu famoso conto de ficção “R.U.R.” (Rossum's Universal
Robots), em 1921 (PIERE, 2002; SOUZA, 2005).
Considerado o pai da Robótica, Issac Asimov popularizou o termo robô em
seu livro I robot, onde foram estabelecidas por ele as três leis da Robótica:
20 
 

 Lei nº 1: Um robô jamais deve causar danos a um ser humano nem, por
inação, permitir que isso aconteça.
 Lei nº 2: Um robô deve sempre obedecer à ordem do ser humano, a menos
que isso entre em conflito com a primeira Lei.
 Lei nº 3: Um robô deve proteger sua própria existência a menos que isto
entre em conflito com a primeira ou a segunda lei.

Posteriormente foi formulada a Lei Zero, baseada nas outras três, que diz:
um robô não pode prejudicar a humanidade ou, por meio de sua falta de ação,
permitir que a humanidade sofra algum mal.
Essas leis devem dirigir o comportamento que um robô deve ter, mesmo
estando um pouco longe da aplicabilidade tecnológica atual, como robôs de uso
militar ou pelo fato da complexidade de criar robôs autônomos que ajam conforme
seres humanos. Entretanto, o conteúdo dessas leis pode servir de guia para
formular uma linha de diretrizes a serem aplicadas durante a concepção,
desenvolvimento, teste, implementação, utilização e manutenção de sistemas
robóticos (CLARKE, 1994).
Em 1948, após a invenção do transistor, os robôs puderam ser controlados
por computador e, em 1954, a primeira patente para um robô industrial controlado
por computador, chamado Programmed Article Transfer (Máquina de
Transferência Programada), foi criada e registrada por George Devol (1912-2011),
sendo sua principal função a de transferência de objetos de um ponto a outro.
Devol criou uma memória computadorizada, assim como um sistema de controle
com o nome de Universal Automation. Juntamente com Joseph F. Engelberger,
ambos desenvolvem o primeiro robô industrial pela Unimation Inc., primeira
empresa de robôs industriais, formada por eles em 1956. Já em 1961, o primeiro
robô UNIMATE, capaz de desempenhar várias tarefas automaticamente e
podendo ser reprogramado com custos pequenos, foi produzido e instalado na
General Motors, em Trenton, New Jersey. (BIANCHI, 2011; PIERE, 2002;
ROSÁRIO, 2005).
O primeiro sistema para visão de robôs surge em 1963 e o primeiro robô de
pintura, que podia ter sua trajetória treinada e armazenada, em 1966. Em meados
desta década, a confiabilidade, a qualidade e a produtividade oferecida por vários
21 
 

robôs foram reconhecidas pela indústria e vários centros mundiais de pesquisa


nessas áreas foram formados. Esse novo campo de Robótica foi apoiado pelo
desenvolvimento tecnológico nas áreas de Inteligência Artificial (AI), Visão
Artificial e desenvolvimento de microcomputadores digitais. Entre 1967 e 1968,
houve relatos das primeiras máquinas utilizando patas e rodas, Visão Artificial e
outros sensores. Os servomotores foram usados substituindo dispositivos
hidráulicos, em 1970, para acionar robôs, e em 1974 os primeiros robôs com
servo motores e controlados por microcomputador foram lançados
comercialmente. Em 1976, foram usados pela NASA no Programa Viking, num
veículo explorador de mesmo nome, a fim de coletar amostras da superfície de
Marte (MITTAL; NAGRATH, 2007). A seguir, na Figura 4, o robô explorador
Viking.

Figura 4 - Robô Explorador Viking (1975)

Fonte: nasa.gov – mission pages - Viking

De acordo com Mittal e Nagrath (2007), o desenvolvimento de robôs


móveis cresceu substancialmente na década de 70 com projetos de veículos
baseados na locomoção de seres humanos e insetos.
No Quadro 1 é apresentado um resumo histórico da Robótica, segundo
Bianchi (2011) e Rosário (2005).
22 
 

Quadro 1: resumo dos fatos importantes para o desenvolvimento da Robótica.

PERÍODO FATO HISTÓRICO


Século XV A.C. Aristóteles relata os primeiros princípios da robótica, referentes à
(Grécia) utilização de instrumentos dedicados a trabalhos determinados, sem o
auxílio das mãos humanas, o que reduziria os esforços do homem,
com ênfase no conceito de mestre e escravo.

Século XVIII Inicia-se a Revolução Industrial, com a evolução de novas fontes de


energia, novos mecanismos e instrumentos. Os novos conceitos
industriais tornam possível a evolução da maquinaria capaz de
controlar uma série de ações sequenciadas.

Século XIX No final do século XIX inicia-se o desenvolvimento da máquina.


Exposições de máquinas, para promover os mais recentes eventos
tecnológicos, são realizadas com frequência. O motor elétrico é
introduzido na indústria.
Tear programável de Jacquard e a máquina analítica de Babbage.

1914-1918 A Primeira Guerra Mundial acarreta várias mudanças. O poder da


máquina mostra sua forma negativa e destrutiva.

1921 O dramaturgo Karel Kapek usa pela primeira vez a palavra ‘robot’ na
peça teatral Rossum’s Universal Robots (R.U.R.), que retrata a criação
de robôs para substituir o homem nos trabalhos pesados. O robô
começa a ser visto como uma máquina ‘humana’ com inteligência e
personalidade.

1928 Um robô mecânico abre uma exposição de modelos técnicos em


Londres.

1940 O grande escritor norte-americano de ficção científica Isaac Asimov


estabelece quatro leis muito simples para a robótica.

1943 Colossus – 1º computador eletrônico (Inglaterra).

1951 Teleoperador mestre-escravo / Whirlwind (MIT), 1º computador tempo


real.

1952 Máquina ferramenta de comando numérico (MIT).


Robô manipulador – teleoperadores com comando numérico.

1959 Devol e Joseph F. Engelberger desenvolvem o primeiro robô industrial


pela Unimation Inc., capaz de executar automaticamente várias tarefas
e ser reprogramado.

1960 Nos anos 60, torna-se significativo o fato de a flexibilidade destas


máquinas aumentar mediante o emprego de diferentes tipos de
sensores. Dessa década em diante a investigação a respeito da
robótica começa a incidir sobre o tema robótica móvel.

1962 H. A. Ernst inicia o desenvolvimento de um computador capaz de


controlar uma mão mecânica com sensores táteis (MH-1). Essa
invenção consegue mover e ‘sentir’ blocos, tornando possível, por
meio do controle da mão, o empilhamento de blocos sem ajuda
humana. Tomovic e Boni desenvolvem um protótipo equipado com um
sensor de pressão que, após ‘sentir’ o objeto, transmite para o
computador informações referentes ao seu tamanho e um sinal para o
motor, que dá início à ação de diferentes moldes.
23 
 

1963 A American Machine & Foundry Company (AMF) introduz no Mercado


uma versão de um robô comercial (Versatran). São desenvolvidos
diversos projetos de braços para manipuladores, tais como o braço
Roehampton e o braço Edinburgh.
1968 McCarthy e outros, no Laboratório de Inteligência Artificial de Stanford,
desenvolvem um computador com ‘mãos, olhos, pernas, ouvidos’
(manipuladores, câmeras de vídeo e microfones), demonstrando
capacidade de identificação, reconhecimento e manipulação de blocos
espalhados sobre uma mesa mediante a decodificação de mensagens
faladas. Pieper estuda o problema de cinemática de um manipulador
controlado por computador.

1969 O homem pisa no solo lunar pela primeira vez. Nessa época já se
utilizam manipuladores para recolher amostras e executar pequenas
tarefas em resposta ao comando de um controle remoto. O modo de
teleoperação serve para efetuar escavações e outras tarefas de
complexidade reduzida.

1971 Kahn e Roth analisam a dinâmica e o controle de braços flexíveis


usando controladores do tipo bangue-bangue (‘near minimum time’).

1973 Em Stanford, Balles e Paul utilizam um sensor visual e um sensor de


peso demonstrando um braço controlado por computador para
montagem de bombas d’água de automóveis.

1974 A Cincinnati Milacron introduz o primeiro robô industrial controlado por


computador, denominado T3 (‘The Tomorrow Tool’, ou Ferramenta do
Futuro), que move objetos numa linha de montagem. Inoue, no
Laboratório de Inteligência Artificial, aprofunda estudos sobre a
utilização de sensores de peso (força), enquanto Nevins, no Draper
Laboratory, investiga diferentes técnicas de sensoriamento.

1980 A General Motors, em Detroid, nos Estador Unidos, introduz um robô


industrial com ‘inteligência’ eletrônica, capaz de reconhecer diferentes
componentes numa tela transportadora e de escolher aqueles de que
necessita.

Década de O “baixo custo” e o aumento da capacidade dos microcomputadores


1990 possibilita a introdução dos robôs em novas atividades comerciais,
indústria de serviços e uso doméstico.

Século XXI Pesquisa com ênfase em robôs móveis e humanóides


Fontes: Bianchi (2011) e Rosário (2005).
24 
 

2.2 Definições de Robô

2.2.1 O que é e o que não é um robô

Ferreira (1991) afirma que atualmente os robôs não são caracterizados


como máquinas de aparência humana, mas por suas funcionalidades, embora
não haja um consenso sobre quais máquinas são ou não robôs.
Mittal e Nagrath (2007) ratificam dizendo que pessoas leigas são
influenciadas pela ficção científica sobre o que seria um robô, imaginando um
robô humanoide que pode ver, ouvir, falar e realizar trabalhos desejados, mas a
interpretação científica geral propõe que um robô é uma máquina automática que
é capaz de interagir e modificar o ambiente, indiferente das fontes disponíveis.
Como primeira tentativa de caracterização, robôs podem ser definidos
como máquinas que não necessariamente repetem a mesma classe de ações, ou
por meio de seus elementos estruturais ou sistemas que os constituem:

 Sistemas de controle;
 Sistema de percepção (sensoriamento);
 Sistema de ação mecânica (manipulação ou locomoção);
 Sistema de inteligência (processamento, representação, decisões, troca de
informações).

Na Figura 5, é mostrado como se organizam os elementos funcionais de


um robô, de acordo com Ferreira (1991) e, posteriormente, é apresentada uma
série de definições formais de robô, traçada para estabelecer um universo mais
restrito, embora essas definições não mudem o uso indiscriminado do termo
“robô” devido à publicidade comercial, uma vez que em alguns países, como na
França, eletrodomésticos mais sofisticados são também chamados de robôs.
Essa caracterização formal envolve a utilização de alguns conceitos,
conforme Ferreira (1991), como:
 Adaptabilidade, ou inteligência, que permite ao robô executar tarefas em
ambientes desconhecidos e é definida pela complexidade das variáveis
que ele é capaz de captar e se adaptar.
25 
 

 Polivalência, capacidade de executar classes de ações diferentes.


 Versatilidade, de modo geral, usada englobando os conceitos anteriores,
mostrando o grau de desempenho de ambos.
 Grau de automatismo, capacidade de executar trabalhos sem interferência
de um operador humano ou outro secundário.

Figura 5 - Elementos funcionais de um robô

O P E R A D O R 

DEFINIÇÃO   DAS TAREFAS 

COMUNICAÇÃO / INTELIGÊNCIA

CONTROLE / ACIONAMENTO 

ESTRUTURA MECÂNICA 

EXECUÇÃO  
SENSORES  INTERNOS  DAS  
TAREFAS 

PERCEPÇÃO  SENSORES   AMBIENTE 


EXTERNOS 

Fonte: Ferreira (1991)

Para compreender tais conceitos, a seguir são descritos os três sistemas


que inspiram o desenvolvimento dos robôs, ainda de acordo com Ferreira (1991):

 O ser humano, que visto pelo âmbito mecânico, é frágil, pois não pode
trabalhar em ambientes tóxicos ou contaminados, nem suporta
temperaturas extremas, executa número limitado de operações por período
de tempo. Contudo, ele é imensamente versátil, uma vez que a polivalência
de seu braço, com 7 graus de liberdade, e a adaptabilidade gerada por
meio de sua percepção e inteligência são imensuráveis.
26 
 

 Telemanipuladores, máquinas extremamente polivalentes que podem


reproduzir ou superar as funções do braço humano, porém é quase nulo o
grau de automatismo delas. O conceito de polivalência é essencial para o
exemplo dos robôs de uso médico, a fim de suprir limites motores humanos
e concebidos para executar várias tarefas diferentes com alguma
repetibilidade.
 Máquinas-ferramentas a controle numérico, que possuem alto grau de
automatismo, mas polivalência quase nula, pois a classe de ações a ser
executada tem sempre a mesma sequência.

Dessa forma, robôs podem ser definidos como máquinas que conjugam a
polivalência de telemanipuladores, o alto grau de automatismo de máquinas a
controle numérico e a adaptabilidade para que seja capaz de atuar em ambientes
desconhecidos (FERREIRA, 1991).
Segundo a AFRI (Association Française de Robotique Industrialle),
manipuladores modestos que executam automaticamente sequências, variáveis
ou fixas, de tarefas recebem denominação de robôs, mas não somente isso, pois
a Robótica deve englobar, com base na utilização de técnicas modernas de
controle, da informática e de novos sensores, todas as adaptações em máquinas
conhecidas ou desenvolvidas. Contudo, o R.I.A (Robotics Institute of America),
Instituto de Robótica da América, apresenta uma definição mais abrangente,
enfatizando a função de reprogramação ao invés da de adaptação: “Robô é um
manipulador multifuncional, reprogramável, projetado para mover materiais,
peças, ferramentas ou dispositivos específicos, por meio de movimentos
programáveis variáveis a fim de executar várias tarefas (FERREIRA, 1991;
BIANCHI, 2011).
De mesma forma, Mittal e Nagrath (2007) citam as categorias que a
Associação Japonesa de Robôs Industriais (Japanese Industrial Robot
Association – JIRA), juntamente com o Comitê de Padrões Industriais Japonês,
definiu para os robôs industriais:

 Manipulador: uma máquina que tem funções semelhantes às dos membros


superiores humanos e move objetos no espaço.
27 
 

 Robôs de ciclos programáveis: um manipulador que é capaz de executar


uma operação ou uma sequência delas, por meio da leitura de informações
memorizadas anteriormente ou gerada por um sistema CAD-CAM.
 Robôs inteligentes: robôs que podem determinar seu próprio
comportamento e conduta por meio de funções de sentido e
reconhecimento do ambiente.

A Associação de Robótica Britânica (British Robot Association – BRA) já


define um robô industrial como sendo um dispositivo reprogramável com quatro
graus de liberdade no mínimo, destinado a ser capaz de manipular e transportar
peças ou ferramentas, assim como realizar tarefas de produção específicas por
meio de movimentos variáveis programados.
A maioria dos usuários e fabricantes adota a definição da ISO (International
Standards Organization) que aponta um robô industrial como um manipulador
automático, multifuncional, programável de forma livre e servo-controlado para
atuar em diversas áreas, podendo manipular peças ou dispositivos especiais. A
multiplicidade de tarefas torna-se possível por causa da reprogramação de
operações variáveis (MITTAL; NAGRATH, 2007).
Apesar de haver uma vasta gama de definições, nenhuma delas abrange
por completo as características de um robô, mas um perfil pode ser traçado,
envolvendo o grau de versatilidade e automatismo, importantes para a indústria e
linhas de produção, a polivalência, permitindo o uso do mesmo dispositivo para
tarefas variadas e, para algumas classes de robôs, a inteligência, que se baseia
em captar informações do ambiente por meio de sensores, tomar decisões
conforme essas informações obtidas e executar a ação escolhida de acordo com
o programa que está sendo executado. Dessa forma, o que importa é onde e qual
tarefa o robô irá desempenhar para que haja a escolha adequada.
28 
 

2.3 Robótica Móvel

Os robôs móveis surgiram em 1968 incorporando conceitos da Mecânica e


da Robótica Fixa. Segundo Piere (2002), com os avanços nas áreas de
Sensoriamento, Processamento de Imagens e Inteligência Artificial, a princípio,
aprimorar um robô com capacidades para desenvolver atividades em ambientes
dinâmicos parecia ser algo simples. Contudo, percebeu-se a grande
complexidade de desenvolver sistemas para um robô móvel que fosse robusto ou
adaptável o suficiente para realizar tarefas em locais não estruturados.
Nilsson, em 1969, descreve o primeiro sistema robótico móvel que utiliza
quadtrees (estrutura de dados em forma de árvore que é gerada pela
decomposição de uma imagem bidimensional, codificando-a em quatro
quadrantes) para representar o ambiente e grafos de visibilidade para o
planejamento da trajetória. De 1966 a 1972, o primeiro robô móvel controlado por
inteligência artificial foi desenvolvido pelo Dr. Charles Rosen (1917–2002) e sua
equipe no SRI International’s Artificial Intelligence Center (AIC), fundada no
Instituto de Pesquisa de Stanford, na Califórnia. Denominado de Shakey,
mostrado na Figura 6 (a), foi o primeiro a fundamentar sua trajetória por meio de
informações do ambiente ao redor, sendo equipado por uma câmera de televisão,
um sistema de localização por triangulação, sensores fim de curso, conexões via
rádio e vídeo aos computadores DEC PDP-10 e PDP-15, possuindo três níveis de
programação para perceber, modelar e interagir com o ambiente, com rotinas, de
nível mais baixo, projetadas para locomoção básica e planejamento de rotas
(KURFESS, 2005; PIERE, 2002).
Piere (2002) ainda fala que, em 1983, dois métodos foram criados para
resolver os problemas relacionados a movimentos rotacionais e translacionais que
tornavam crítica a modelagem do ambiente por um robô. O primeiro método foi o
de Lozano-Pérez, que introduziu uma ideia sobre uma “região de incerteza”,
criada por meio de crescimento de obstáculos, Figura 6 (b). Dessa forma, o robô
poderia ser considerado como um ponto na configuração do espaço utilizando
grafos de visibilidade para planejar caminhos livres de colisão, sendo esse o
primeiro método exato para solucionar o problema de planejamento de trajetória.
29 
 

Figura 6 - Planejamento de trajetória (a) Shakey; (b) Algoritmo Lozano-Perez.


 

(a) (b)

Fontes: http://www.ai.sri.com/shakey; http://www1.cs.columbia.edu- An Algorithm for Planning


Collision

Brooks (1983) introduziu o segundo método, chamado de freeway,


utilizando o conceito de cones generalizados (aproximação mais rápida) como
alternativa de modelagem do espaço livre e ao planejamento da trajetória.
Como relata Piere (2002), esses métodos, baseados em um mapa do
ambiente, chamados de arquiteturas deliberativas ou planejadas, sofriam sérias
restrições com relação à criação e manutenção do mapa e, para minimizar tais
problemas, foram assumidas simplificações, usando ambientes estáticos e
conhecidos. O problema é contornado, mas a aplicação do robô permanece
restrita a ambientes imutáveis.
Para generalizar as aplicações dos robôs móveis e já se inspirando no
comportamento de alguns insetos, em 1986, Brooks formula uma arquitetura
algorítmica reativa ao ambiente, chamada Subsumption Architecture (arquitetura
de subsunção), onde o robô reage baseando-se na leitura de informações do
ambiente por meio de seus sensores. Esse tipo de arquitetura baseia-se na
decomposição da inteligência em comportamentos individuais, gerando camadas
que coexistem, cooperando para atuar prontamente em comportamentos mais
30 
 

complexos. É um marco nas pesquisas de métodos reativos e deu um novo


estímulo na construção de robôs aptos a interagir com o ambiente.
Nesse mesmo ano, Khatib (1986) introduziu o método de campos
potenciais próximos ao robô, transformando este em uma partícula sob influência
de campos eletromagnéticos, constituídos pelos obstáculos e pelo ponto de
objetivo. A Honda começa a trabalhar no desenvolvimento de um robô
humanoide, o E0, que evoluiria até o atual Asimo, Figura 7.

Figura 7 - Evolução do robô humanoide da Honda até o robô Asimo.

Fonte: http://world.honda.com – Robô Asimo.

Entre os anos de 1987 e 1989, vários artigos científicos descrevendo uma


arquitetura reativa, fundamentada em esquemas motores, foram escritos por
Arkin, que posteriormente desenvolveu em uma arquitetura híbrida, que foi
denominada de AuRA (Autonomous Robot Architecture), e comparou as
abordagens planejada e reativa, apresentando as vantagens de uma arquitetura
híbrida. Já em 1990, conforme cita Piere (2002), Kumpel apresenta um artigo
sobre um projeto que integra mapas geométricos e topológicos, usando um
método hierárquico para navegar por meio de mapas globais a fim de traçar o
caminho e desviar de obstáculos no local por meio de sensores. Neste mesmo
ano, Brooks propõe melhorias à arquitetura de subsunção, apresentando robôs
com esse tipo de arquitetura, desenvolvidos no MIT.
31 
 

Em 1992, um método reativo utilizado juntamente com a arquitetura de


subsunção é proposto por Mataric, ressaltando a necessidade de fornecer ao robô
capacidades mais elaboradas por meio de uma representação do ambiente, ao
invés de navegação aleatória. Neste método, utiliza-se um mapa construído por
meio de marcas (landmarks) no ambiente, onde o robô as detecta e atualiza este
mapa conforme mudanças locais. Zelinsky propôs, neste mesmo ano, um método
simples para mapeamento que utiliza sensores de contato, onde o ambiente é
mapeado em uma quadtree, a menor célula corresponde ao tamanho do diâmetro
do robô e o caminho é dado por uma linha reta primeiramente. Durante a
execução dessa trajetória as leituras dos sensores são obtidas para atualizar a
estrutura da quadtree e replanejar a trajetória.
Em 1994, em conjunto com a Carnegie Mellon University e o Observatório
de Vulcões do Alaska, a NASA desenvolveu um robô com patas, chamado Dante
II, com o objetivo de inspecionar vulcões, em altas temperaturas e em locais com
gases tóxicos (Figura 8). Posteriormente, em janeiro de 2000, um robô de quatro
rodas é apresentado pela Carnegie Mellon University para buscar amostras de
meteoritos na Antártida, coletá-las e classificá-las por meio de técnicas de
Inteligência Artificial (PIERE, 2002).
Figura 8 - Robô Dante II usado para inspeção no vulcão no Alaska

Fonte: Bombled (2011)
32 
 

2.4 Classificação de Robôs

Taxonomias variadas são utilizadas para classificar robôs em geral, porém


não há nenhuma delas que seja definitiva. Segundo Machado (2001), os sistemas
robóticos autônomos podem ser classificados genericamente em duas grandes
áreas: robótica de manipulação, normalmente robôs fixos (série ou paralelo), e
robótica móvel. Sobre esta última área, Piere (2002) diz que: “De uma forma
geral, podemos agrupar os robôs existentes de acordo com três aspectos:
anatomia, tipo de controle e funcionalidade”.

2.4.1 Segundo a Anatomia

Quanto à anatomia os robôs podem ser classificados em três grandes


grupos: os robôs aéreos, os aquáticos e os terrestres, como mostra a Figura 9,
onde neste último grupo há robôs com rodas, esteiras e patas.
Figura 9 - Classificação segundo a anatomia

Robôs Móveis

Aéreos Aquáticos Terrestres

Rodas
Esteiras
Pernas

Fonte: Piere (2002)

De acordo com Machado (2001), no que concerne à Robótica Móvel, e


relativamente à forma de locomoção a ser adotada, torna-se necessário
considerar os seguintes aspectos do problema:

 Os objetivos das tarefas a serem cumpridas pelo robô;


 As restrições do terreno em que o robô estará operando;
 As limitações dos atuadores adotados;
 A fonte de energia disponível para alimentar o robô e a autonomia
energética para suprir os atuadores e os controladores dos equipamentos.
33 
 

Segundo Souza (2005), robôs aéreos são geralmente aeromodelos, como


os UAV, Figura 10 (a), Unmanned Aerial Vehicles, veículos aéreos não tripulados,
podendo ser aeronaves ou helicópteros, figura 2.9 (b).

Figura 10 - (a) UAV MQ-9 Reaper, no Afeganistão, 4 de novembro de 2007; (b) MQ-8B –
helicóptero autônomo, 8 de maio de 2009.

(a) (b)

Fontes: http://www.olive-drab.com-drones

Há também aqueles com um ou mais rotores, Figura 11 (a), e os balões


dirigíveis, Figura 11 (b) (conhecidos como LTAs – Lighter Than Air), ambos
utilizados para inspeção de grandes áreas por meio de câmeras de vídeo
acopladas, para fins bélicos, busca e salvamento ou estudos geográficos.

Figura 11 - (a) Quadrotor levando um bloco de concreto; (b) HALE-D – um LTA

(a) (d)

Fontes: http://www.impactlab.net, http://www.gizmag.com

Os robôs aquáticos em geral são plataformas equipadas com propulsores,


compartimentos de ar, que lhes permitem permanecer submersos, e alguns
podem possuir braços mecânicos ou patas, conforme Figura 12 (a).
34 
 

Os AUV, Autonomous Underwater Vehicles (Veículos Submarinos


Autónomos) são exemplos desses robôs, sendo não tripulados e alguns podendo
também ser teleguiados, Figura 12 (b) (PIERE, 2002; SOUZA, 2005).

Figura 12 - (a) Robô Nereus; (b) AUV MT-88, já usado em salvamentos, na Rússia.

(a) (b)
Fonte: http://www.inovacaotecnologica.com.br-Nereus; Souza (2005)

Alguns submarinos teleguiados podem chegar a profundidades da zona


abissal, podendo ter precisão de cinco metros para localizar determinado ponto
no espaço, como o Remora 6000, com autonomia de 6000 metros, Figura 13.

Figura 13 - Remora 6000.

(c)

Fonte: http://news.seadiscovery.com

Segundo Piere (2002), os mais populares são os robôs terrestres, que


podem utilizar três tipos de atuadores: rodas, esteiras ou patas. Este último é
usado em terrenos acidentados, como subidas ou descidas íngremes ou escadas,
embora haja dificuldade no desenvolvimento do projeto do controle das patas.
35 
 

 Robôs com rodas: não necessitando de um hardware tão complexo como o


dos robôs com esteiras ou patas, pois geralmente seu equilíbrio é alcançado
facilmente, uma vez que são projetados para que suas rodas fiquem em
contato com o solo a todo instante, tendo normalmente custo bem inferior
comparado às outras configurações e apresentando design e construção
simples. Sua desvantagem principal é que, em terrenos irregulares, o
desempenho pode não ser satisfatório, por perda de tração ou área de contato
insuficiente. Apenas três rodas já são suficientes para manter seu equilíbrio,
embora haja robôs com menos e de controle mais complexo. Os que possuem
a partir de quatro rodas devem ter sistema de suspensão para garantir que
todas elas alcancem o solo. As configurações de rodas existentes e alguns
exemplos de robôs com rodas são mostradas na Figura 14 (PIERE, 2002;
SIEGWART; NOURBAKHSH, 2004).

Figura 14 - Os quatro tipos básicos de roda: (a) roda comum com rotação em torno do eixo
motorizado; (b) roda com rotação na junta; (c) roda de três graus de liberdade com pequenos rolos
livres em volta; (d) roda esférica.
(a) (b) (c) (d)

Fonte: Siegwart; Nourbakhsh (2004)

Na Figura 15 há alguns exemplos de robôs que utilizam configurações com


roda esférica e com rolos livres.
36 
 

Figura 15 - (a) Rezero, robô com roda esférica; (b) robô omnidirecional.

(a) (b)

Fonte: http:/vidabinaria.com.br/tecnologia/rezero; Siegwart; Nourbakhsh (2004)

 Robôs com esteiras: são utilizados em ambientes irregulares, com solo de


superfície solta, pedregosa, ou fofa. Apesar de não adicionar força (torque)
adicional, as esteiras reduzem o deslizamento em solos frouxos e
distribuem o peso do robô. Sua construção mecânica é mais complexa e
não apresenta muitas configurações, sendo sua maior desvantagem a
dissipação de energia no movimento de giro da própria esteira e o número
de motores é limitado devido às rodas dentadas no interior da esteira. É
também impreciso devido a derrapagens em curvas, deixando o centro de
rotação difícil de prever. Alguns exemplos são mostrados na Figura 16, um
deles com eixo articulado (PIERE, 2002; SIEGWART; NOURBAKHSH,
2004).
Figura 16 - (a) iRobot 710 Warrior; (b) Nanokhod

(a) (b)

Fonte: http://www.irobot.com-irobot; Siegwart; Nourbakhsh (2004)


37 
 

 Robôs com pernas: configuração de robô mais utilizada em ambientes com


subidas íngremes, terrenos acidentados ou com escadas. A maior
desvantagem desse tipo de robô é desenvolver o controle das pernas, visto
que cada uma deve ter pelo menos dois graus de liberdade. O custo atrelado
ao projeto é mais alto por causa do número atuadores, que é bem maior
comparado a outras configurações. Também há maior complexidade mecânica
e maior gasto de energia. É caracterizada por contatos pontuais entre o robô e
o solo, tendo como vantagem adaptabilidade e maior capacidade de manobra
nos ambientes em questão, podendo atravessar até fendas (quando seu
alcance excede a largura destas) e manipular objetos, desde que as patas
apresentem graus de liberdade suficientes para transmitir a força em direções
diferentes e sejam capazes de sustentar parte do peso distribuído do robô.
(PIERE, 2002; SIEGWART; NOURBAKHSH, 2004).

Figura 17 - (a) A-Pod; (b) Walking Harveste

(a) (b)

Fonte: http://www.lynxmotion.com-phoenix hexapod; Júnior (2010)

2.4.2 Segundo o Tipo de Controle

De acordo com cada tipo de controle, os robôs podem ser classificados nas
seguintes categorias:
38 
 

 Tele-operados: os robôs que se enquadram nesta categoria necessitam de


um operador para realizar o controle de todos os movimentos remotamente
(HIRANO, 2006). Em tal grupo, esses robôs são justificados pelas
aplicações de tarefas que são incômodas ou hostis ao ser humano, como
por exemplo: manipulação e transporte de material perigoso, mineração,
limpeza e inspeção industrial e desarmamento de bombas, onde a
exposição do trabalhador aos riscos é evitada, ou, no caso de robôs
cirúrgicos e indústria cinematográfica, em que se deseja realizar
procedimentos precisos (SECCHI, 2012; FREIRE, 2007).
 Semi-autônomos: são robôs que recebem um comando macro do
operador, ou seja, são programados para realizar, sozinhos, uma
determinada tarefa indicada previamente, como é o caso de robôs
industriais de montagem e transporte, uso doméstico (SOUZA, 2005;
FREIRE, 2007).
 Autônomos: o robô é capaz de realizar suas tarefas por conta própria,
tomando decisões baseadas em informações obtidas do ambiente por meio
de sensores instalados nele (FREIRE, 2007). Uma das tarefas mais
importantes desempenhadas por esse tipo de robô é a percepção, onde o
robô adquire conhecimento do ambiente extraindo informações das
medições dos sensores e, logo após, reage de acordo com a leitura
(SIEGWART; NOURBAKHSH, 2004). Certa autonomia em um robô móvel
é interessante em casos onde operações de teleoperação sofrem atrasos
de comunicação, como, por exemplo, em exploração interplanetária,
submarina ou vulcânica (SECCHI, 2012).

2.4.3 Segundo a Funcionalidade

Os robôs podem ser agrupados em quatro categorias, conforme a


funcionalidade que apresentam: robôs industriais, robôs de serviço, robôs de
campo e robôs pessoais, havendo uma intercessão nas áreas de atuação entre
os três primeiros, de acordo com a Figura 18 (PIERI, 2002).
39 
 

Figura 18 - Classificação Segundo a funcionalidade

Fonte: Piere (2002)

 Robôs Industriais: robôs utilizados em linhas de produção, programados


com uma sequência de ações a serem executadas automaticamente em
um ambiente com estrutura adequada para cada tarefa. Nesses ambientes,
geralmente o robô tem ciência da posição dele e da posição dos objetos.
Em relação os robôs industriais móveis, estes são plataformas utilizadas
para realizar tarefas como transportar materiais ou produtos finais,
seguindo uma trajetória determinada por uma linha desenhada no chão.
Esses robôs móveis são os AGVs (Automated Guided Vehicles), veículos
autônomos guiados (PIERE, 2002; HIRANO, 2006).
 Robôs de Serviço Industrial: robôs que possuem as características de um
robô de serviço, embora trabalhe em um ambiente totalmente estruturado.
 Robôs de Serviço: robôs que realizam serviços gerais em um ambiente
estruturado que é conhecido antecipadamente por ele. Contudo, esses
robôs possuem certa autonomia a fim de processar informações recebidas
do local pelos sensores e reagir em situações não previstas, como desviar
de objetos. São robôs semi-autônomos, recebendo macro-comandos das
ações previamente, e são utilizados para limpeza, vigilância e transporte de
objetos (PIERE, 2002; HIRANO, 2006).
 Robôs de Serviço de Campo: são robôs de campo que atuam em
ambientes externos antecipadamente modelados ou não. Há a
40 
 

necessidade de informação sensorial e processamento dessa informação


para dar suporte ao modelo. São geralmente robôs agrícolas ou que
navegam em auto-estradas (PIERE, 2002).
 Robôs de Campo: são robôs que desempenham tarefas em ambientes não
modelados, pouco conhecidos e até hostis ao ser humano, como é o caso
da exploração espacial e vulcânica, mineração, resgate e robôs militares
(PIERE, 2002; HIRANO, 2006).
 Robôs Pessoais: são robôs utilizados em geral para entretenimento,
interagem e podem aprender a se localizar no ambiente local.

2.5 Aplicações para a Robótica Móvel

O tipo de tarefa que cada robô móvel irá desempenhar determinará as


características que tais robôs terão, em primeira análise, estruturalmente, no tipo
de locomoção, navegação, forma física e dimensões, e, em segunda análise,
cognitivamente, no que está relacionado ao sensoriamento (SECCHI, 2012).
De acordo com Silva (2005), esses tipos de robôs devem estar aptos a
substituir o ser humano em trabalhos perigosos e que estão relacionados a altos
níveis de segurança, ou em ambientes em que o acesso seja inviável, a fim de
evitar riscos à vida humana. Não apenas isso, como exemplifica Hirano (2006),
mas o robô deve estar capacitado para perceber os sinais do ambiente por meio
do sensoriamento, se localizar e se locomover em ambientes desse tipo.
Jácobo (2001) cita que alguns problemas atuais, como terrorismo,
escassez de recursos, problemas ambientais, sociais e até envelhecimento da
população, serão resolvidos com o auxílio de robôs, onde a evolução de
tecnologias e os avanços em programação irão permitir o surgimento de novas
ideias para fabricar materiais inteligentes e uma inteligência artificial melhor
elaborada.
As aplicações, segundo Marchi (2001), conduzem, em resumo, ao
desenvolvimento de robôs industriais, de serviço e de campo. Os do tipo
industriais geralmente se estruturam em plataformas que são utilizadas para
transporte de materiais, peças e produtos numa linha de produção e recebem a
41 
 

denominação de AGVs (Automated Guided Vehicles), atuando em ambientes


controlados e estruturados de forma autônoma (SOUZA, 2005).
Com relação aos robôs móveis de serviço, existem os destinados à limpeza
em geral, os que auxiliam em sistemas de vigilância e no transporte de pequenos
objetos. Assim como os robôs industriais, esses também realizam suas funções
em ambientes estruturados e os conhecem. Já os robôs de campo,
desempenham tarefas como exploração, mineração, inspeção, entre outras, em
ambientes desconhecidos, perigosos e não estruturados.
Em se tratando de robôs que se locomovem por meio de patas, estes se
aplicam a locais remotos, no caso da exploração de vulcões (robô Dante),
exploração espacial e planetária (robô Curiosity), exploração subaquática e em
plataformas petrolíferas sob grandes profundidade e pressão (Remora 6000); ou
em ambientes perigosos, em contato direto com radiação (robô Pakbot em
Fukushima), detecção de minas terrestres (robô SILO 6), auxiliando em
operações em áreas que sofreram catástrofes e/ou operações de busca e
salvamento, assim como em operações militares (MACHADO, 2001; Júnior, 2010;
http://www.irobot.com; nasa.gov; http://news.seadiscovery.com).
A seguir, na Figura 19, são apresentados alguns robôs móveis atuais,
segundo seu campo de atuação.

Figura 19 – Robôs Móveis: (a) Robô SILO-6, (b) Robô AIBO, (c) Robô Curiosity, (d) Robô AGV

(a) (b)

(c) (d)

Fonte: Júnior (2010); Demasi (2012); www.nasa.gov/curiosity; www.coreconagvs.com)


42 
 

Hirano (2006) expõe tais aplicações da Robótica Móvel, citando as nos


principais temas de pesquisa, mostrados no Quadro 2 abaixo.

Quadro 2: Aplicações da Robótica Móvel.


Problema Aplicação
Segurança e Vigilância O robô deve simular as atividades de um vigia, tendo
como objetivo em localizar em determinado ambiente e
alarmar caso haja a presença de intrusos.
Procura e Salvamento O robô é programado para encontrar, num ambiente
desconhecido, um alvo, a fim de desempenhar tarefas
de salvamento e/ou resgate em ambiente hostil, ou
desarmamento de bombas.
Manutenção e Inspeção de Acontece normalmente quando é necessário realizar
locais de difícil acesso físico manutenção em locais com pouca disponibilidade de
espaço ou com alguma fragilidade, sendo aplicado um
robô leve e de pequeno porte para se deslocar até o
destino para identificar, confirmar e reparar o erro.
Exploração Planetária O robô tem o objetivo de capturar imagens, coletar e
analisar amostras do solo e fazer o reconhecimento das
condições ambientais. Sua estrutura deve ser capaz de
se locomover em relevo irregular, portando sensores,
câmeras, baterias, placas fotovoltaicas e possuindo
programação direcionada à economia de energia.
Exploração Subaquática O robô deve ser capaz de se locomover em ambientes
subaquáticos, tendo que manter a estabilidade de sua
estrutura.
Exploração de Ambientes São exemplos de aplicação da robótica móvel nesses
Hostis ambientes: a manipulação e transporte de materiais
radioativos ou tóxicos, exploração de vulcões, inspeção
e alguns casos anteriores, como desarmamento de
bombas e resgate.
Entretenimento Nesse caso, o robô deve reagir a estímulos,
correspondendo com gestos, expressões, sons ou com
a própria linguagem falada.

Fontes: Hirano (2006)


43 
 

2.6 Desafios de Implementação em Robótica Móvel

Conforme relata Pieri (2002), muitos problemas ainda existem em torno do


desenvolvimento e construção de robôs móveis devido a erros de posição,
orientação, estabilidade, ruídos gerados nas leituras de sensores, problemas com
energia, com programação, ou com a estrutura.
Percebe-se que há grande dificuldade em modelar robôs com
características de seres humanos, no que consiste na visão, coordenação motora,
equilíbrio, tempo de resposta reativa a estímulos, distribuição de energia para
desempenhar tarefas, entre outras que tornam o homem capaz de realizar certas
atividades com tanta destreza.
Os robôs mostrados até aqui apresentam mobilidade e capacidades
aproximadas a sistemas biológicos, principalmente quando se trata de controle de
robôs com patas devido a limitações no conhecimento de coordenação motora,
limitações de atuadores e limitações estruturais (MACHADO, 2001).
Como primeiro desafio, um robô móvel deve se locomover em variados
tipos de ambientes, sejam estes estruturados ou perigosos, como é o caso da
exploração planetária em Marte, ou em outros casos onde robôs teleoperados
complexos permitem ao ser humano controlar atividades como localização ou
cognição, sendo impossível o operador controlar diretamente a coordenação da
movimentação, como é o caso do robô Curiosity e de robôs subaquáticos com
várias hélices controladas de forma autônoma, onde o operador humano escolhe
posição e objetivos. Já outros tipos de robôs comerciais dividem o mesmo espaço
com humanos, sendo capazes de se localizar e navegar sem intervenção do
operador.
A concepção de um robô móvel integra diferentes tipos de conhecimento, e
para resolver problemas de locomoção, deve-se entender de Mecanismos e de
Cinemática, Dinâmica e Controle. No caso da percepção, deve-se aprimorar os
campos de Análise de Sinais, Visão Computacional, sensoriamento em geral,
conhecimento de algoritmos para localização, navegação, Inteligência Artificial,
informação e probabilidade (SIEGWART; NOURBAKHSH, 2004).
Siegwart e Nourbakhsh (2004) ainda mostram um esquema geral de um
sistema de controle de um robô móvel para exemplificar, conforme representado
44 
 

na Figura 20, atualizando o esquema proposto por Ferreira (1991), mostrado


anteriormente.

Figura 20 - Esquema Geral do Sistema de Controle de um Robô Móvel.


Banco de Dados de Comandos da
Conhecimento Missão

Cognição
Localização Posição
Mapa Global Planejamento da
no Mapa
Trajetória

Modelo do Ambiente Trajeto


Mapa Local

Extração e Execução da
Interpretação das Trajetória
Informações
Comandos aos
Dado Bruto Atuadores

Sensoriamento Ação

Mundo Real

Fontes: Siegwart; Nourbakhsh (2004). Figura traduzida pelo autor.

Munido com mecanismos de locomoção e equipado com hardware e


software para percepção (esta devendo ser tratada não apenas como sentido,
mas também como interpretação dos dados detectados), um robô móvel pode
mover-se e interagir com o ambiente, sendo o primeiro ponto que esta mobilidade
e este sentido devem atender é a localização (SIEGWART; NOURBAKHSH,
2004).
A seguir, conforme Pieri (2002), alguns pontos a se considerar sobre
desenvolvimento de robôs móveis:

 Navegação: o robô deve representar o ambiente num modelo livre de erros


de sensoriamento o quanto for possível, levando em conta a navegação
reativa para um melhor desempenho;
45 
 

 Reconhecimento: envolve problemas complexos de processamento de


imagem e de dados para que o robô seja capaz de reconhecer o ambiente
em que está, filtrando quaisquer ruídos dos sensores;
 Aprendizado: permite que o robô desempenhe suas tarefas de forma cada
vez mais autônoma, adaptando-se às variáveis captadas, sendo capaz de
reagir de forma mais rápida, coordenar a movimentação e recalibrar os
sensores;
 Cooperação: permite que vários robôs possam realizar tarefas juntos,
cooperando uns com os outros;
 Cognição: desenvolver novas formas de armazenar dados e de aprender
com eles, possibilitando utilizar o conhecimento para a tomada de
decisões, tornando o robô capaz de relações de alto nível com o meio. É o
que propõe o estudo da Inteligência Artificial;

2.7 Componentes de um Robô Móvel

De acordo com Hirano (2006), basicamente os robôs móveis apresentam


os seguintes componentes:

 Estrutura Mecânica;
 Atuadores;
 Sensores;
 Controladores;
 Baterias.

A seguir tais componentes serão descritos detalhadamente.

2.7.1 Estrutura Mecânica

É a base de suporte para todos os outros componentes do robô móvel,


sendo construída de acordo com o propósito e com o meio em que o robô irá
operar, levando em conta dimensões, peso, índice de resistência a impactos,
umidade, resíduos e o modo de locomoção (HIRANO, 2006; SECCHI, 2012).
46 
 

2.7.2 Atuadores

São os dispositivos responsáveis pela movimentação (locomoção), usando


rodas, patas, ou pela articulação de uma máquina ou de um robô, executando os
comandos enviados pelo sistema de controle (principalmente sob a forma de sinal
elétrico), produzindo força, sendo equivalentes aos músculos em sistemas
biológicos. São exemplos de atuadores os motores DC padrão, motores de passo,
servo motores, atuadores pneumáticos (pistões) com válvulas e músculos
artificiais. Em geral os mecanismos de acoplamento, os sistemas de transmissão
e redução e os sensores de posição e velocidade atuam em conjunto com os
atuadores (PIERI, 2002; BRÄUNL, 2008; BISHOP, 2006).
Os sistemas de transmissão e redução modificam e distribuem a potência
do movimento gerado nos atuadores, cumprindo exigências para um
funcionamento harmonioso e coordenado do sistema geral, sendo responsável
também por suavizar partidas e paradas de motores.
Os atuadores podem ser classificados em função do tipo de energia, sendo
essencialmente eletromecânicos, eletromagnéticos, pneumáticos ou hidráulicos e
as novas gerações que incluem atuadores de materiais inteligentes,
microatuadores e nanoatuadores. Também podem ser classificados em binários
contínuos, baseado no número de estados finais, como por exemplo, um relé com
dois estados é um atuador binário, enquanto um motor de passo é um contínuo,
com o controle de posição, podendo fornecer vários tipos de saídas estáveis por
meio de um pequeno movimento incremental. Tudo isso depende da aplicação,
ambiente, tipo de controle e operação (BISHOP, 2006).
De acordo com os princípios de operação de cada atuador, pneumáticos e
hidráulicos fazem uso da energia transmitida pela movimentação de fluidos,
sendo necessária ao sistema de atuação a presença de bombas, compressores,
filtros, válvulas, entre outros dispositivos, o que demonstra o quão esse tipo de
sistema requer manutenção em relação aos demais.
Os tipos de atuadores mais utilizados em Robótica devido à sua robustez,
sensibilidade e precisão são os que se baseiam em motores elétricos, pois há
vários tipos de motores, com diversas características e dimensões, atendendo a
47 
 

muitas situações. São limpos, silenciosos e convertem energia elétrica em


mecânica e são classificados em:

 Motores de Corrente Alternada (CA) Síncronos ou Assíncronos


(conhecidos como Motores de Indução);
 Motores de Corrente Contínua (CC);
 Motores de Passo;
 Servo motores.

Figura 21 - Tipos de Atuadores: (a) Pistões Pneumáticos e Hidráulicos, (b) Pistões Pneumáticos,
(c) Motor AC, (d) Motor DC, (e) Motor de Passo, (f) Servo.

(a) (b)

(d)
(c)

(e)
(f)

Fontes: Pieri (2002); Santos (2007)


48 
 

Na arquitetura do robô utilizado neste trabalho, são utilizados servos como


atuadores. Basicamente são dispositivos eletromecânicos compostos por um
motor CC em conjunto com alguns dispositivos eletrônicos, utilizados para
controle de posição angular, incluindo engrenagens, potenciômetro, para
realimentação dessa posição, e eixo. Pelo fato de serem compactos e permitirem
um controle angular preciso, são bastante usados em Robótica e modelismo
(PIERI, 2002; SANTOS, 2007).
Segundo Bräunl (2008), motores de corrente contínua recebem algumas
vezes a referência de servo motores, mas não quer dizer que sejam “servos”, pois
um servo motor é um motor de corrente contínua de alta qualidade que o qualifica
ser usado em aplicações de servos, ou seja, num controle fechado de giro. Tal
motor deve ser capaz de lidar com mudanças rápidas de posição e velocidade e
deve ter alto torque intermitente. Já um servo, pelo contrário, é um motor de
corrente contínua (CC), com partes eletrônicas encapsuladas para controle PWM,
como visto anteriormente, possuindo três fios (VCC, GND e sinal de controle
PWM). No PWM para motores DC, o sinal de pulso de entrada é transformado em
uma velocidade equivalente e não convertido a um valor analógico para
especificar a posição de rotação do disco do eixo. Tal eixo não pode executar
uma rotação contínua, num servo, pois possui um limitador nas engrenagens,
fazendo com que varie de 0 a 180º. Se o circuito detecta que o ângulo não foi
atingido, o motor para, caso contrário, continua o giro.
Uma tabela comparativa entre os tipos de atuadores utilizados em Robótica
é apresentada a seguir.
Tabela 1: Comparativo entre os tipos de Atuadores
Pneumático Hidráulico Elétrico
Energia Ar Comprimido (5-10 bar) Óleo mineral (50-100 bar) Corrente Elétrica
Opções Cilindros Cilindros Corrente contínua
Motor de Aletas Motor de aletas Corrente alternada
Motor de pistão. Motor de pistão axial. Motor de passo.
Vantagens Baratos, rápidos, Rápidos, alta relação peso- Precisos,
sensíveis, robustos. potência, autolubrificantes, confiáveis, fácil
alta capacidade de carga, controle, fácil
estabilidade frente à cargas instalação,
estáticas. silenciosos.
49 
 

Desvantagens Dificuldade de controle Difícil manutenção, Potência limitada.


contínuo, instalação instalação especial,
especial (filtros, frequentes fugas, caros.
compressores, etc),
ruidoso.

Fonte: Pieri (2002)

Como faz parte de um dos objetivos deste trabalho apresentar o


acionamento dos servos utilizados no modelo de robô hexápode proposto, esse
tópico será discutido posteriormente, detalhadamente.

2.7.3 Sensores

Os robôs móveis autônomos se caracterizam por serem capazes de captar


informações do ambiente, conhecido ou não, permitindo ver alterações locais ou
eventos imprevistos, a fim de manter uma navegação segura. Isso depende de
dispositivos sensoriais que juntos possam realizar essa captura da forma mais
próxima possível aos sistemas biológicos (SECCHI, 2012).
As aplicações em Robótica Móvel utilizam sensores ligados ao sistema de
controle, sendo que cada tipo de sensor está relacionado ao campo de atuação
do robô. Para que estes estejam aptos a desempenharem as tarefas
determinadas pelo operador, alguns problemas precisam ser resolvidos, como os
encontrados nas áreas de recursos computacionais, para aumentar o
processamento e interpretação de informações, em comunicações, para que haja
um melhoramento nos protocolos de comunicação entre dispositivos e em
sensores propriamente ditos, a fim de que o robô interaja cada vez melhor com o
ambiente e com os elementos contidos nele (PIERI, 2002; BRÄUNL, 2008).
Os sensores podem ser classificados de acordo com a interação com o
objeto, quando a informação é captada diretamente pelo contato com o sensor ou
quando não ocorre contato físico, ou de acordo com o nível de informações que o
robô vai trabalhar, quando é preciso obter e processar dados digitais ou
analógicos, ou quando tais dados são mais complexos, tendo que ser
representados por meio de matrizes ou vetores (SECCHI, 2012).
50 
 

Secchi (2012) apresenta também outra classificação, baseada não mais no


objeto, mas sim no meio. Fazendo referência ao meio interno ao robô (estrutura
mecânica embarcada), o sensor é classificado como proprioceptivo ou interno,
sendo os primeiros a serem utilizados odômetros e sensores inerciais, obtendo
dados como posição, orientação e velocidade sem depender de parâmetros
externos, enquanto sensores classificados como exteroceptivos ou externos
correspondem aos que obtém informações do ambiente, como sonares, radares,
sistemas de satélite para navegação, determinando velocidade e distância relativa
por meio da leitura das energias coletadas.
Sensores podem ser passivos, quando coletam dados do meio externo
utilizando energia desse meio, como termômetros, microfones e algumas
câmeras, ou podem ser ativos, quando emitem energia e coletam dados do meio
externo a partir das reações do ambiente com essa energia emitida previamente.
Conforme Tabela 2, podem-se observar os tipos de sensores divididos de acordo
com a aplicação e com o meio (HIRANO, 2006).
Tabela 2: Sensores Passivos (P) e Ativos (A)
Sensores Sensores de Não óticos Potenciômetros P
Internos Posição Sincronizadores P
Escala Indutiva Linear P
Transformadores P/A
diferenciais
Resolvedores P/A
Óticos Interruptores óticos A
Encoders óticos A
Sensores de Tacômetros P
Velocidade Encoders óticos A
Sensores de A
Aceleração
Sensores Sensores de Sensores de P/A
Externos proximidade Contato
Sensores de não Sensores óticos de A
contato proximidade
Sensores indutivos A
Sensores de efeito Hall A
Sensores capacitivos A
Sensores de proximidade A
ultrasônicos
Sensores de Por triangulação A
distância Por luz estruturada A
Por tempo de vôo Laser A
Pulso de luz A
Deslocamento de fase A
Ultra-som A
Sensores de Binários P/A
Tato Analógicos P/A
51 
 

Pele artificial P/A


Sensores de Sensores de Por monitoração da A
deslizamento força e torque corrente do motor
Usando um LVDT A
Visão Câmeras CCD A
CMOS A
Fonte: Hirano (2006)

Podem ser classificados ainda de acordo com Marchi (2001), que cita dois
grupos de sensores principais usados em robótica, os sensores de colisão
(fazendo referência aos sensores externos), usados para detecção de obstáculos
e mapear o ambiente externo, e os de posicionamento (internos), utilizados para
determinar a posição do robô.
São exemplos de Sensores Externos (MARCHI, 2001; SECCHI, 2012):

 Sensor Infravermelho
Sendo um dos mais utilizados, com baixo custo e funcionamento simples,
este sensor emite luz infravermelha que, caso seja refletida por um objeto, é
captada por um receptor, permitindo ao controlador calcular a distância por
meio de incidência refletida.

 Sonar
Sensor de baixo custo que se baseia pela emissão de um sinal ultrassônico
(alta frequência) que, ao atingir o obstáculo, é refletido e captado pelo
receptor (transdutor). O controlador obtém a distância calculando o tempo
entre início da emissão e recebimento da onda. Embora precise de pouco
processamento, pode haver falha no recebimento da onda, no caso de
objetos com superfície plana ou quando o receptor capta outra informação de
outro objeto, tornando a leitura imprecisa.

 Laser
Apropriados para ambientes onde há mudanças na iluminação,
necessitando de circuitos para detectar de forma correta a alta velocidade do
feixe de luz, que é emitido em sequência rápida de período curto. O tipo mais
simples é semelhante aos infravermelhos, tendo um emissor e um receptor.
52 
 

 Câmeras
Utilizadas como sensores de visão para o robô, onde as imagens obtidas
são processadas por meio de reconhecimento de padrões, embora haja
sensibilidade à luz e complexidade envolvendo tal processamento.

 Sensor de Contato
São representados por botões que são acionados em contato com algum
obstáculo.

São exemplos de Sensores que ficam dentro da estrutura do robô


(MARCHI, 2001; SECCHI, 2012):

 Odômetro
Dispositivos que medem o estado interno e a dinâmica do robô, por meio
do cálculo da distância percorrida, sendo possível obter a posição estimada.
Os mais usados são os encoders, que é um transdutor no formato de um
disco com espaços radiais, que converte movimento angular dos motores em
pulsos digitais que são contabilizados.

 Bússolas e Giroscópios
Tem como objetivo transmitir o ângulo do robô em relação ao ambiente,
embora sejam facilmente afetados por ruídos devido à sensibilidade do metal
usado. Compensam o maior problema nos sistemas odométricos, onde um
método de posicionamento baseado unicamente em odometria submetido a
um erro de orientação ou variação. Já um giroscópio baseia-se no princípio da
inércia, independente de coordenadas geográficas, ao contrário da bússola,
acoplados numa barra estabilizadora à estrutura do robô, não sendo afetado
por magnetismo, servindo como referência de direção.

 GPS
Utilizado para determinar latitude e longitude em robôs por meio da
transmissão de dados com satélites em órbita no planeta, sendo mais
53 
 

utilizados em robôs de campo, longe de centros urbanos devido a falhas de


comunicação e interferências.

 Triangulação e Trilaterização
Desenvolvida na Segunda Guerra Mundial, tendo a implementação original
conhecida como LORAN (Long Range Navigation), Navegação de Longo
Alcance, é um método de navegação passiva, onde o sistema faz uma
comparação dos tempos de chegada de dois sinais iguais gerados por
transmissores de coordenadas já determinadas. A diferença de tempo entre a
obtenção dos sinais é diretamente proporcional à distância entre os
transmissores e o robô. Já a Trilaterização é um sistema ativo que mede o
atraso de propagação de um sinal às estações conhecidas.

Com relação aos sensores de posição e velocidade, são os dispositivos


responsáveis por captar tais dados das partes móveis e realimentar o sistema de
controle com essas informações para que as próximas decisões sejam tomadas
com base em valores atualizados (PIERI, 2002).

2.7.4 Controladores
O controlador é a parte do robô que opera outras partes que fazem parte
do próprio robô. Tal controle depende de atuadores, de sensores, de um algoritmo
de controle no software e de um hardware, tendo um retorno (feedback) de
informações para que atualize os comandos (velocidade do motor, posição,
localização do robô) (BRÄUNL, 2008).

2.7.5 Baterias
O fornecimento de energia está relacionado diretamente à autonomia do
robô, sendo necessário alimentar todos os sistemas que fazem parte dele, como
motores, sensores, controladores, comunicações, podendo ser por meio de
baterias de Chumbo, LI-Ion, NiCD, LiMH, entre outras, como energia alternativa
obtida de painéis solares (RIBEIRO, 2004).
54 
 

2.8 Locomoção

Robôs móveis necessitam de mecanismos apropriados de locomoção que


lhes permitam mover-se dentro do ambiente em que irão desempenhar suas
atividades. A forma com que o robô se movimenta é determinada de acordo com
o ambiente, seja andando, pulando, correndo, por escorregamento, nadando,
voando ou por fricção, sendo a maioria desses mecanismos, que possibilitam tal
mobilidade, inspirados em sistemas biológicos homólogos existentes.
Estes sistemas têm conseguido se mover em variados ambientes
agressivos, e, por serem eficientes, desejou-se analisar e reproduzir tais
mecanismos de locomoção (Figura 22), embora seja um processo extremamente
difícil, visto que na natureza existe a complexidade mecânica, diferença e
especialização de células para desempenhar cada tarefa. Além disso,
possibilitando miniaturização, como é o caso de insetos terem um sofisticado
conjunto de patas, sistema de armazenamento de energia, ativação muscular,
força e um sistema eficiente de comunicação interna entre as células.
Devido a essas limitações, grande parte dos robôs móveis se locomove
utilizando rodas, embora sejam restritos a ambientes planos ou com relevo pouco
acidentado. Outro conjunto de robôs móveis locomove-se por meio de patas
articuladas, sendo muito eficientes em terrenos hostis, inclinados ou macios, pois
sofre menos atrito por possuírem apenas contatos pontuais entre as patas e o
solo. Contudo ainda existem robôs com outras configurações para locomoção,
usando fricção ou combinação de sistemas (RIBEIRO, 2004; SIEGWART;
NOURBAKHSH, 2004).
Para que o robô esteja apto a se locomover em terrenos irregulares, deve-
se equacionar adequadamente de acordo com o padrão de locomoção adotado.
Tais padrões de locomoção periódicos concedem ao veículo um ganho de
velocidade sem maior processamento computacional, embora nesses casos o
ambiente ainda seja controlado e conhecido, o que não é viável para robôs
autônomos utilizados principalmente em terrenos irregulares, desconhecidos ou
hostis, onde é necessário adotar padrões de locomoção não periódicos ou livres,
que demandam maior processamento, leitura de dados e sensoriamento (SILVA,
2005).
55 
 

Figura 22 - Mecanismos de Locomoção baseados em sistemas biológicos.

Tipo de Locomoção Resistência Cinemática Básica

Força gravitacional
Fluxo e hidrodinâmica
  Onda
 
Força gravitacional
Rastejamento e fricção
  Vibração longitudinal

Força gravitacional
e fricção
Deslizamento   Vibração transversal
Força gravitacional Movimento
e atrito oscilatório
Corrida   pendular

Força gravitacional Movimento


e atrito oscilatório
Saltos   pendular

Movimento
Força gravitacional oscilatório
e atrito pendular -
Caminhada   rolamento

Fontes Siegwart; Nourbakhsh (2004)

Siegwart e Nourbakhsh (2004) descrevem que na manipulação, o robô é


fixo e move objetos no espaço de trabalho, ao contrário da locomoção, onde o
ambiente é fixo e o robô se move quando transmite força para ele. Ambos os
casos compartilham questões fundamentais envolvendo atuadores, mecanismos
e propriedades cinemáticas e dinâmicas:

 Estabilidade: relaciona-se ao número e geometria de pontos de contato


com o ambiente, centro de gravidade, estabilidade estática e dinâmica e
inclinação do terreno.
 Características do contato: ponto de contato, tamanho, forma, angulação
com o ambiente e fricção.
 Tipo de ambiente: estrutura, consistência.

Este trabalho centra-se em demonstrar questões relacionadas à locomoção


por meio de patas, robôs caminhantes, sobretudo o robô hexápode.
56 
 

2.9 Sistemas Robóticos de Locomoção por Patas

Esse tipo de locomoção se caracteriza por possuir um ou mais contatos


pontuais entre o robô e o solo, utilizando as patas como suspensão ativa, e tem
como principal vantagem adaptabilidade e capacidade de fazer manobras em
relevos acidentados, não importando a qualidade deste. O robô que anda pode
atravessar uma fenda no solo, desde que o alcance se suas patas ultrapasse o
diâmetro desta fenda. As patas podem ter vários graus de liberdade a fim de
transmitir força em direções diferentes para manobras sem escorregar, mas
devem ser capazes de suportar o peso total da base do robô, enquanto se
locomovem, elevando ou abaixando a base (MACHADO, 2001; SIEGWART;
NOURBAKHSH, 2004; ERDEN, 2006).
Segundo Erden (2006), a locomoção por patas requer um complexo
sistema de controle e de energia, além de possuir muitos atuadores em
comparação com as demais configurações, sendo necessário coordená-los
continuamente. O consumo de energia é alto devido à quantidade de atuadores,
pois cada junta é impulsionada por um destes, e ao modo de locomoção, pois em
determinado momento da caminhada, algumas patas estão em movimento (fase
de balanço), enquanto outras estão fazendo o papel de suporte da base, o que
reduz muito a velocidade do robô.
Ridderström (2003) questiona o uso de robôs com patas ao invés dos
robôs com outro tipo de locomoção e traz algumas razões para o
desenvolvimento desse tipo de locomoção: de acordo com uma investigação do
exército dos Estados Unidos, cerca de metade da superfície deste planeta é
inacessível a veículos com rodas ou esteiras; robôs com patas são superiores
mecanicamente às demais configurações de robôs em grande variedade de solos
e para transpor obstáculos; o espaço para a caminhada pode ser variado, o que
permite um maior grau de mobilidade em ambientes estreitos ou em locais com
poucos pontos de apoio (ambientes perigosos e áreas de desastres naturais);
robôs com patas provocam pouco impacto no terreno onde estão se
locomovendo, o que é importante na agricultura.
Em se tratando de robôs com locomoção por patas, basicamente há duas
situações de aplicação, visto suas vantagens: exploração de locais remotos
57 
 

(vulcões, planetas, ambiente marinho), ou ambientes hostis ou perigosos (usinas


nucleares, mineração, indústria química, uso militar, áreas de desastres, busca e
salvamento, escavação, obras, Agricultura, corte e transporte de árvores).

2.9.1 Contexto Histórico e Primeiros Estudos

O primeiro estudo científico documentado sobre locomoção de animais foi


desenvolvido por Eadweard Muybridge. Há mais de um século, a pedido do
governador da Califórnia Leland Stanford, a fim de descobrir se durante o trote, os
cavalos ficariam suspensos no ar em algum momento. Muybridge determinou um
padrão de locomoção dos cavalos por meio de fotografias em sequência e os
resultados foram publicados na revista Scientific American em 1878.
Posteriormente ele documentou o comportamento de caminhada de outros 40
mamíferos, incluindo o ser humano (RAIBERT, 1986; SILVA, 2005).
Segundo Raibert (1986), o estudo de máquinas que andam teve sua
origem na época de Muybridge, com um modelo que apareceu por volta de 1870,
usando mecanismos articulados para desenhar curvas, com quatro barras, que,
em determinado ponto do movimento, eram capazes de traçar uma reta. Tal
mecanismo (Figura 23) simulava o movimento do pé humano em caminhada e foi
proposto pelo matemático russo Chebyshev. Muitos projetos foram desenvolvidos
ao longo de 80 anos, mas tais máquinas eram limitadas por padrões de
movimentos fixos, não podendo se adaptar a variações do terreno, ajustando as
patas nos melhores pontos de apoio e no final dos anos de 1950 ficou clara a
necessidade de controle.

Figura 23 - (a) Sistema original de Chebychev; (b) Mecanismo adaptado.

(a) (b)

Fontes: Hartenberg (1964); Raibert (1986)


58 
 

Por volta de 1893, Lewis Rygg projetou e patenteou a primeira máquina de


quatro patas, com o nome de “The Mechanical Horse”, que funcionava com um
conjunto de engrenagens que transmitiam o movimento às pernas por meio de
pedais, embora não haja registros da construção desta máquina (RAIBERT,
1986).
Em 1960, Shigley desenvolveu um estudo sobre uma série de mecanismos
que poderiam ser viáveis às máquinas locomotoras, principalmente engrenagens
de quatro barras e mecanismos pantográficos. Posteriormente, Shigley construiu
um veículo com quatro patas, que se moviam em pares, com base em sua
publicação (SILVA, 2005).
No início da década de 60, um pesquisador da empresa General Electric
chamado Ralph Mosher iniciou projetos de um braço mecânico e de um
exoesqueleto (nomeados de Handyman e Hardiman) a fim de conceder ao ser
humano maior capacidade de força, mas a contribuição mais significativa de
Mosher ocorreu em 1968, com um dos primeiros veículos a adotar padrões de
locomoção diferentes, um quadrúpede de aproximadamente três metros de altura
e 1300 kg. Cada perna tinha 3 graus de liberdade (aproximando-se da
configuração da perna humana) e se ligavam a um cilindro hidráulico. O veículo
era controlado por uma pessoa no seu interior por meio de manipulação de
alavancas e pedais e era capaz de transpor obstáculos. Logo, veio a necessidade
de controle computacional, pois uma pessoa se cansava facilmente operando por
muito tempo a máquina (MOSHER, 1967; RAIBERT, 1986; SILVA, 2005).
A empresa General Space Corporation desenvolveu em meados dos anos
60 duas máquinas, uma com seis e outra com oito patas, a fim de conceituar um
veículo lunar com locomoção por pernas, sendo que ambas tinham movimentos
coordenados por engrenagens. O robô octópode já era autônomo, embora a
alimentação ainda fosse externa e as duas possuíam pouca adaptabilidade
devido à falta de graus de liberdade para manobras. Somente em 1970 houve
sucesso ao utilizar uma abordagem de controle computacional e em 1977 a
equipe de Robert McGhee, na Universidade do Estado de Ohio, construiu um
robô hexápode semelhante a um inseto, que podia caminhar seguindo um padrão,
manobrar, girar e vencer alguns obstáculos. O computador era responsável pelas
59 
 

equações cinemáticas para sincronizar os 18 motores elétricos (RAIBERT, 1986;


SILVA, 2005).
O primeiro robô com patas a se locomover automaticamente, sendo
controlado por computador, foi o Phony Pony, projetado por McGhee e Frank. Era
um quadrúpede que possuía dois graus de liberdade em cada perna, usava
motores elétricos nas juntas e tinha alimentação externa, embora só apresentasse
dois padrões de caminhada e andasse em linha reta.
Em 1977, dois hexápodes foram construídos, o “Masha Hexapod” (modelo
russo) e o OSU Hexapod (modelo dos EUA), conforme Figura 24. Somente a
partir dos anos 80 e com o avanço da tecnologia de atuadores, sensores e
processadores, os robôs ganharam mais habilidade para se adaptarem,
reproduzindo melhor os sistemas biológicos (DEMASI, 2012).

Figura 24 - (a) Máquina quadrúpede da General Electric (b) Hexapode OSU.

(a) (b)
Fontes: Bombled (2011); Demasi (2012)
60 
 

2.9.2 Tipos de Robôs com patas

Embora não haja aplicações industriais em grande abrangência, a


locomoção de robôs por meio de pernas ou patas é uma importante área de
pesquisa de longo prazo. A seguir são apresentados alguns exemplos citados por
Machado (2001), Siegwart e Nourbakhsh (2004), Silva (2005) e Demasi (2012):

 Robôs com uma pata: o número mínimo de patas que um robô pode ter,
onde não é necessário coordenar movimentos com outras patas. Um robô nesta
configuração será bem sucedido somente se for dinamicamente estável, uma vez
que, para manter o equilíbrio ativo estável, deve mudar seu centro de gravidade e
transmitir forças para correção angular, movimento esse propício em terrenos
mais ásperos. Além disso, esses robôs podem ultrapassar orifícios no solo com
largura bem maior do que o passo deles, enquanto robôs com várias patas tem
que executar uma sequência de passos para locomoção limitada ao intervalo do
alcance. Robôs bípedes quando desempenham movimentos de corrida seguem o
mesmo modelo de estabilidade dinâmica de um robô com uma pata. A Figura 25
mostra o robô de “salto” de Raibert hopper, um dos mais conhecidos, fazendo
correções contínuas em salto, ajustando o ângulo da pata (dotada de mola e
conectada a uma bomba hidráulica) em relação ao corpo.

Figura 25 - Robô com uma pata

(Fonte: Siegwart; Nourbakhsh, 2004)


61 
 

 Robôs Bípedes: Inicialmente a maior limitação dessas máquinas era a sua


baixa velocidade, devido a sua grande exigência quanto à estabilidade dinâmica
relativa e dificuldade de estabelecer um controle estável. Assim, as pesquisas
nesse tipo de locomoção avançam mais lentamente em comparação aos outros
sistemas com mais patas, embora muitos robôs bípedes tenham sido bem
sucedidos nos últimos dez anos, correndo, pulando, subindo escadas e até
mesmo fazendo manobras.
Vários sistemas bípedes controlados por computador foram desenvolvidos
desde o final da década de 60 na Universidade de Waseda, no Japão. O robô
WAP-1 foi desenvolvido no Humanoid Research Laboratory, em 1969, por Ichiro
Kato, dispondo de músculos artificiais de borracha com atuação pneumática e
locomoção pela repetibilidade de movimentos programados, como mostrado na
Figura 26.
No setor comercial, as empresas que contribuíram com avanços
significativos, aumentando a capacidade de locomoção dessa configuração de
robô, foram a Honda e a Sony. Ambas projetaram articulações pequenas
suficientes para suprir a relação entre o peso e a energia, disponibilizando no
mercado novos servomotores que não só agem como atuadores, mas também
como sensores do torque e controle de giro em malha fechada.
O robô Sony Dream, modelo SDR-4X II, mostrado na Figura 26, é resultado
de uma pesquisa iniciada em 1997, com o objetivo de entretenimento por meio de
movimento e comunicação. Este robô tem cinquenta e oito centímetros,
aproximadamente seis quilogramas e meio, trinta e oito graus de liberdade,
microfones para captar som ambiente, reconhecimento de imagem e fala. Já a
Honda iniciou em 1986 o desenvolvimento de um modelo de robô humanoide bem
maior do que o SDR-4X II, com um metro e vinte centímetros e cinquenta e dois
quilogramas, permitindo aplicações práticas no mundo humano repleto de
escadas e batentes e trazendo como ideias principais “inteligência” e “mobilidade”
para cooperar com seres humanos e participar de suas atividades.
62 
 

Figura 26 – Bípedes: (a) Robô WAP-1, (b) robô Asimo da Honda, (c) robô Sony Dream.

(a) (b) (c)

Fontes: Siegwart; Nourbakhsh (2004); Hirano (2006); Machado (2001)

 Robôs com quatro patas ou mais: a maioria dos robôs articulados por patas
já desenvolvidos enquadra-se nesta configuração. Embora com um número maior
de patas o robô fique passivelmente estável, a locomoção ainda continua um
desafio, pois, para manter essa estabilidade, o centro de gravidade deve se
deslocar durante a marcha. Contudo, Vieira (2010) fala sobre os fatores
estruturais, explicando que a construção de sistemas com quatro patas implicam
economia e simplificação do mecanismo, uma vez que o movimento é mais
simples e, consequentemente, a estrutura também, embora a desvantagem seja a
dificuldade em obter equilíbrio na locomoção, pois há menos pontos de contato
com o solo quando comparados aos de sistemas com seis patas.
Figura 27 – Robôs com patas: (a) Big Dog (2008), (b) Ajax hexapod (2005).

(a) (b)

Fonte: Bombled (2011)


63 
 

Desde 1980 as máquinas que andam se tornaram um campo de pesquisa


importante em todo o mundo. A seguir a evolução das pesquisas de robôs com
quatro e seis membros articulados é apresentada, conforme Bombled (2011).
Em 1985, Song e Waldron concluíram o projeto em desenvolvimento na
Universidade de Ohio de Veículo de Suspensão Adaptável (ASV), juntamente
com a Universidade de Wisconsin e o Instituto de Pesquisa Ambiental de
Michigan. Com 2700 Kg e 5,6 metros de comprimento, o veículo era dirigido por
um operador humano, tinha acionamento hidráulico alimentado por um motor de
combustão, um radar óptico para analisar o terreno à frente e determinar a
disposição dos membros frontais. Podia vencer uma inclinação de 60%,
ultrapassar fendas de 1,8m, degraus e paredes e atingia cerca de 2,3 m/s em
terrenos regulares, conforme Figura 28(a) (MACHADO, 2001; BOMBLED, 2011).
Diversos laboratórios de Robótica no Instituto de Tecnologia de
Massachusetts (MIT) contribuíram para o desenvolvimento de robôs que
caminham, como já foi visto na sessão de robôs de salto, em que M. Raibert
estudou mais profundamente a dinâmica e o equilíbrio no ato de caminhar.
Outra importante contribuição veio do Grupo de Robôs Humanoides do
MIT, nos anos 80, onde Rodney Brooks desenvolveu a arquitetura de subsunção
(subsumption) e a implementou em dois robôs (conforme Figura 29). Esse novo
tipo de arquitetura diferencia dos outros tipos de inteligência artificial, pois é
baseada num comportamento reativo ao ambiente, em que existem várias
camadas independentes entre o sensoriamento e os atuadores, cada uma
representando uma tarefa, ao invés de dar ênfase ao conhecimento prévio
(JÁCOBO, 2001; BOMBLED, 2011).
Figura 28 – Robôs com patas: (a) ASV, (b) robô quadrúpede do MIT.

(a) (b)
Fonte: Bombled (2011)
64 
 

Figura 29 - Robôs com Arquitetura Subsumption: (a) Robô Genghis, (b) Robô Hannibal.

(a) (b)

Fonte: http://www.ai.mit.edu/projects/hannibal

RIMHO-2 e SILO-4 foram dois robôs construídos em 1993 e em 2000,


respectivamente, pelo Instituto de Automação Industrial (CSIC) de Madri, sendo o
RIMHO-2 o primeiro robô que caminha da Espanha, usando patas pantográficas,
tinha o objetivo de detectar minas terrestres, enquanto o SILO-4 foi uma
plataforma para fins de pesquisa com algoritmos de inteligência artificial e
locomoção, mas ambos não eram adaptáveis a terrenos muito irregulares (DE
SANTOS, 2007).
Entre 1999 e 2005 a Sony desenvolveu o robô AIBO, um robô quadrúpede
doméstico para entretenimento capaz de andar, reconhecer voz e imagem e
aprender novos movimentos, embora não seja mais vendido.
Houve três robôs desenvolvidos e com melhor autonomia: são o SCOUT-II
(de 2003, quadrúpede com algoritmo de controle simples e um atuador em cada
pata, baseado na pesquisa de Raibert, é estável e tem velocidade considerável de
1,3 m/s), o Tekken-IV (de 2006, quadrúpede autônomo capaz de percorrer longas
distâncias, com sistema de controle baseado em redes neurais para que se
adapte a terrenos complexos, dispõe de visor de navegação a LASER) e o
BigDog, que será visto a seguir (DEMASI, 2008).
Em 1992, M. Raibert e alguns amigos fundaram a Boston Dynamics
Company para a criação de robôs com comportamento avançado e inovador,
semelhantes a animais. O robô que se destaca é o BigDog, de 2008, um
quadrúpede autônomo de 2,5 m, tendo 4 atuadores em cada pata (mostrado na
figura 27a), capaz de andar em terrenos variados, inclusive com lama e neve,
correr, subir inclinações e levar carga de até 150 kg, tem um giroscópio e é
65 
 

alimentado por um motor que impulsiona um sistema hidráulico. Tem um


computador de bordo que lida com o processamento dos sensores, locomoção e
comunicação com o usuário (bostondynamics.com/robot_bigdog; BOMBLED,
2011).

2.9.3 Robôs Hexápodes

Esse tipo de configuração tem sido muito difundido em Robótica Móvel


devido à estabilidade estática durante a locomoção, o que reduz a complexidade
do controle, pois não necessita de um sistema de controle destinado ao equilíbrio.
Além disso a locomoção pode ser obtida pela repetição das fases de movimento
do mecanismo das patas (INGRAM, 2006).
Vieira (2010, p. 7) ratifica as vantagens de configurações hexápodes
dizendo que:

Construir mecanismos que caminham utilizando quatro pernas significa


uma economia e simplificação no mecanismo, em comparação com os
mecanismos de seis pernas, o movimento se torna mais simples e a
estrutura de fácil construção. No entanto, o equilíbrio se torna de mais
difícil obtenção, pois se diminui o número de pontos de apoio do
mecanismo, sendo necessário aumentar a área de contado com o solo,
ou seja, aumentar o tamanho dos pés.

Baseando-se na locomoção de insetos, que são criaturas bem sucedidas


ao se adaptarem e movimentando-se em ambientes acidentados variados, os
robôs hexápodes que possuem três graus de liberdade em cada pata conseguem
uma aproximação em transpor obstáculos maiores, enquanto os que apresentam
apenas dois graus de liberdade em cada pata estão aptos a apenas alguns tipos
de terrenos mais planos (SIEGWART; NOURBAKHSH, 2004).
Conforme Quadro 3, a seguir, será apresentado um histórico da evolução
das pesquisas com robôs hexápodes até a atualidade.
66 
 

Quadro 3: Robôs Hexápodes – Linha do Tempo.


Robô Hexápode / Ano Histórico
Robô Lunar Caminhante (1961) Desenvolvido pelos projetistas da Space
General Corp, era um veículo com seis patas e
dois braços, corpo triangular, câmera, painel
solar e garra mecânica para exploração do solo
lunar. Projeto não foi continuado devido a
problemas de transporte até à Lua, porém
serviu de base para as pesquisas de Morrison.

Hexápode de Morrison (1968)  Morrison em 1968 construiu um robô de seis


patas que podia caminhar alternando três patas
por passo. Também construiu um octópode (Big
Iron).

Hexápode de Mocci e Peternelle (1969) Construído na Universidade de Roma por Mocci


e Peternelle, o robô possuía juntas telescópicas
para movimento vertical e uma articulação, em
cada pata.

Modelo de Hexápode Tripulado (1974) Hexápode com patas dispostas radialmente em


torno de um eixo vertical foi criado no Instituto
Instrumento de Aviação, em São Petersburgo.

Hexápode Masha (1976)  Modelo Russo desenvolvido por Gurfinkel,


Schneider, Gorinevski e outros, enfatizando a
interface de detecção de força em diferentes
tipos de solo e tinha os movimentos baseados
num conjunto de funções.

 
67 
 

OSU Hexapod (1977) Robert McGhee e sua equipe, na Universidade


do Estado de Ohio, construíram um robô
hexápode semelhante a um inseto, que podia
caminhar seguindo um padrão, manobrar, girar
e vencer alguns obstáculos. O computador era
responsável pelas equações cinemáticas para
sincronizar os 18 motores elétricos. Era
equipado com sensores de força, de
proximidade e um sistema de câmera.
Hexápode da IPM (1977) Controlada com base em um modelo
matemático de controle de movimento,
desenvolvido no Instituto de Matemática
Aplicada (IPM) da Academia de Ciências da
Rússia, podia andar em terreno acidentado e
tinha sistema de varredura a laser e dois
microcomputadores.

Hexápode Hidráulico de Sutherland (1983) Ivan Sutherland e Raibert construíram nesse


ano um veículo com microcomputador
embarcado. Era capaz de transportar um ser
humano

ASV (1985) Em 1985, Song e Waldron concluíram o projeto


em desenvolvimento na Universidade de Ohio
de Veículo de Suspensão Adaptável (ASV),
juntamente com a Universidade de Wisconsin e
o Instituto de Pesquisa Ambiental de Michigan.
Era dirigido por um operador humano, tinha
acionamento hidráulico alimentado por um
motor de combustão, um radar óptico para
analisar o terreno à frente e determinar a
disposição dos membros frontais. Podia vender
uma inclinação de 60%, ultrapassar fendas de
1,8m, degraus e paredes e atingia cerca de 2,3
m/s em terrenos regulares.
68 
 

AMBLER (1988-1991) Robô Autônomo Móvel de Exploração,


desenvolvido pela Universidade de Carnegie
Mellon e pelo Jet Propulsion Laboratory, pesava
quase 3 toneladas e 5 metros de altura. Foi
projetado para andar sob as restrições
particulares do terreno planetário, onde há
pedras de 1 metro, fendas profundas, e
encostas íngremes, construindo mapas
detalhados do terreno; planeja sua própria
sequência e localização das etapas e controla o
seu movimento, equilíbrio e estabilidade.
ODEX I (1983) Desenvolvido primeiramente por Stephen
Bartholet para a empresa Odetics Inc.,
Califórnia, é um hexápode radialmente
simétrico, com um computador de bordo que
reproduz movimentos pré-programados e podia
ser controlado remotamente, vencia escadas e
cada pata suporta até 180 kg.

NMIIIA (1985) Hexápode tripulado desenvolvido na Rússia


para investigar o sistema de controle de
propulsão na caminhada, podia transportar 80
kg e ser controlado manualmente ou por
computador embarcado.

Aquarobots (1989) Utilizado para medições submarina de perfis do


solo para construção, foi projetado após o
projeto do octópode japonês ReCUS.
69 
 

hexápode Genghis (1989) Um robô de pequeno porte comparado aos


anteriores, com 0,35 metros de comprimento e
aproximadamente 1 kg. Desenvolvido no Grupo
de Robôs Humanoides do MIT, foi o primeiro a
receber uma arquitetura baseada na reação de
estímulos do ambiente em que várias camadas
de controle atuam em paralelo à camada mais
simples.

Attila e Hannibal (1989 – 1990) Desenvolvidos no Laboratório Mobot entre 1989


e 1990, foram robôs autônomos inspirados em
insetos para servir de plataformas
experimentais para exploração planetária. São
descendentes do robô Genghis, são muito
sofisticados, com 3 graus de liberdade em cada
pata, 60 entradas sensoriais, 8
microprocessadores e controle reativo. Eram
idênticos, diferindo apenas na cor (Hannibal é
vermelho, enquanto o outro era dourado).

 
Hexápode TUM (1991) Desenvolvido na Universidade Técnica de
Munique, tinha design e marcha inspirados em
estudos do inseto graveto, tendo cada pata três
graus de liberdade, sendo operadas por um
sistema de rede neural, ajustando a altura da
estrutura conforme o tamanho dos obstáculos
encontrados.

Biobot (2000) Aplicação: Locomoção em ambientes


acidentados, em situações de busca e
salvamento. Cada barata é equipada com uma
placa eletrônica que permite aos pesquisadores
controlá-las remotamente.
70 
 

Hamlet (2001) Aplicação: teste de força e controle de posição


Construído na Universidade de Canterbury,
Nova Zelândia, possuía patas idênticas com 3
graus de liberdade cada.

Rhex (2001) Hexápode com atuadores e redução. O projeto


vem de uma iniciativa interdisciplinar de várias
universidades financiadas pela DARPA, que
aplica técnicas matemáticas de teorias de
sistemas dinâmicos a problemas de locomoção
inspirada em animais. Esse hexápode é
constituído de um corpo rígido e 6 patas curvas,
cada uma com apenas um motor, que giram
como uma roda, o que faz com que o sistema
tenha apenas 6 atuadores.
Sprawlita (2002) Hexápode inspirado nos princípios básicos de
locomoção de baratas, mantendo postura
estável, funções variadas para as patas,
estrutura visco-elástica, controle de malha
aberta.

Lauron I – V (1999-2013) Lauron V foi o robô que resultou de um trabalho


de mais de 10 anos de melhorias progressivas.
Inspirado no inseto graveto, possui 6 patas,
com 4 articulações cada, fixas a um corpo
central. Cada pé tem um sensor de força de 3
eixos e um sensor de corrente que detecta
oposições de movimento. O projeto ainda está
em atividades atualmente.
71 
 

Bill-Ant-p (2005)  Baseado no comportamento das formigas, cada


pata tem 3 graus de liberdade e sensor de
força, uma cabeça com 3 graus de liberdade
com mandíbulas com sensor de força capaz de
manipular objetos.

Aqua II (2010) Robô hexápode subaquático, construído pela


Universidade McGill, em Montreal, podendo
utilizar as patas para se locomover em terra ou
para natação, pode explorar até uma
profundidade de 120 pés. É bastante rápido por
causa do movimento sequencial das patas.

Gregor I (2006) Este robô reproduz a locomoção de uma barata,


baseando-se na teoria do gerador de padrão
central. Cada par de patas tem um design
característico: o par frontal e o mediano têm 3
graus de liberdade e o par traseiro tem apenas
dois.

Athlete (2006) Um hexápode teleoperado para navegação em


solo lunar. Cada pata possui uma roda em sua
extremidade, podendo combinar movimentos de
caminhada com o giro das rodas. Tem 36 graus
de liberdade ao todo.

RiSe (2006) Esse robô tem a capacidade de escalar


superfícies verticais utilizando um mecanismo
com micro pinos em cada pata, de forma que
possam se inserir na textura da superfície. A
marcha ou passo utilizado por esse robô na
escalada difere um pouco dos demais.
72 
 

Comet IV (2009-2011) Projetado para operar em tipos de terrenos


muito desestruturados, é acionado
hidraulicamente. Tem controle de força,
navegação autônoma com mapeamento a laser
e possibilidade de ser teleoperado.

CR200 (2013) Robô subaquático que é capaz de caminhar.


Foi criado para inspeção de navios naufragados
ou vasculhar e levantar dados ambientes turvos
marinhos. Foi baseado no robô Crabster.

Mantis (2009-2013) Hexápode de grande porte acionado por um


sistema hidráulico capaz de erguê-lo cerca de 3
metros. Desenvolvido pela Micromagic
Systems, é o maior hexápode da atualidade,
pesando aproximadamente 2 toneladas. É
usado como entretenimento.

No Brasil, um robô hexápode foi


premiado no Congresso Internacional da IEEE
(Instituto de Engenheiros Elétricos e
Eletrônicos). Projeto de cinco alunos da
Universidade São Judas Tadeu, em 2008, o
robô foi criado de forma experimental, funciona
por controle e tem uma ligação com uma fonte
de alimentação externa à estrutura.
Também no Brasil, um trabalho de três alunos
da Universidade Federal do Paraná constitui-se
de um robô de seis partes: mecânica do robô,
eletrônica dos motores, hardware de controle
robô, firmware, driver de comunicação e
software de interface gráfica. A estrutura

  mecânica é a MSR-H01, desenvolvida pela


73 
 

Micromagic Systems, com três motores por


pata. Utilizaram-se seis motores Corona
DS329MG nos ombros, e doze BMS-620MG
nas demais articulações, todos alimentados por
uma fonte ATX 140W em regime na linha de
5V), isolada do restante do hardware por
acoplamento ótico. O hardware de controle do
robô engloba a FPGA e seus periféricos: os
optoacopladores dos motores, o magnetômetro
(HMC5883), o acelerômetro (ADXL345) e o
módulo XBee. A FPGA gera os sinais de
controle para os motores e para os demais
dispositivos e embarca um processador NIOS II,
com arquitetura RISC de 32 bits de até 250
DMIPS. O firmware, desenvolvido em
linguagem C++, é responsável pela leitura dos
sensores, por enviar sinais de controle para os
motores e por comunicar-se com o driver,
desenvolvido em Java, através do módulo
XBee. O software de interface gráfica permite
ao usuário enviar comandos de movimentação
para o robô através do driver e apresenta
leituras dos sensores.

Fontes: Schneider; Schmucker (2006); Bombled (2011); Tedeschi; Carbone (2014)


74 
 

2.9.4 Robôs com Aproximações Biológicas

Conforme visto no quadro apresentado no item anterior, vários robôs são,


por meio da biomimética, inspirados nos sistemas de locomoção de animais e
insetos, que são mais versáteis e adaptados aos vários tipos de ambiente. No
entanto, as pesquisas não estão restritas a representar o desenho estrutural
desses sistemas biomecânicos em robôs, mas também aproximar, o quanto for
possível, a estrutura operacional que controla a forma de locomoção deles,
sobretudo o padrão de marcha ou caminhada (gait), que determina a sequência
de passos coordenados entre as patas (MACHADO, 2001; ERDEN, 2006).
Entre os sistemas biológicos mais observados para serem representados
em robôs destacam-se os insetos, devido à capacidade de transpor obstáculos
facilmente sem haver perda considerável de velocidade (MACHADO, 2001).
A seguir serão apresentados conceitos sobre o padrão de locomoção
(marcha) e sobre a configuração e a arquitetura das patas utilizadas por robôs
que se locomovem desse modo.

2.9.5 Marcha (Gait) e Estabilidade

O “gait” (marcha) é uma sequência de movimentos coordenados entre as


patas de um robô e a sequência de movimentos do corpo estrutural realizada a
fim de mover todo o sistema em uma direção desejada, de um lugar para outro. É
descrita como um período entre os estados de movimentos semelhantes das
patas, quando a sucessão de cursos ocorrer num mesmo intervalo em todas as
patas (TEDESCHI; CARBONE, 2014). Nesse ciclo repetitivo de passos, formando
um padrão de movimentação de patas, assume-se que cada pata é um dispositivo
de dois estados: em contato com o solo e fora do solo. As patas em contato com
o solo estão apoiando o robô e impulsionando-o, enquanto as que estão
suspensas são retraídas para voltar posteriormente ao solo (DE BERNARDI;
FORNER-CORDERO; CRUZ, 2011).
O modo de locomoção de robôs inspirados em animais pode ser dividido
em dois grupos principais: estaticamente estável e dinamicamente estável. Em
locomoção estaticamente estável, a projeção do centro de gravidade no solo está
sempre inserida no polígono formado pelas patas de suporte. Normalmente esse
75 
 

caso ocorre em robôs com seis ou oito patas. A desvantagem é que para manter
a estabilidade, a locomoção se torna mais lenta. Já no caso de dinamicamente
estável, a locomoção é mais rápida devido ao fato de o robô está em movimento
em todos os passos da marcha, pois a projeção do centro de gravidade não se
encontra sempre dentro do polígono formado pelas patas de suporte,
impossibilitando o equilíbrio estático do sistema. Isso ocorre com robôs bípedes
ou quadrúpedes (ERDEN, 2006).
Dentre os padrões de locomoção existentes, há três mais utilizados por
robôs com patas: wave gait, ripple gait e tripod gait. Uma convenção de
numeração das patas é adotada para melhor visualização, conforme é indicado
na Figura 30. A Figura 31 mostra o diagrama com os três padrões, onde a cor
branca indica a pata em contato com o solo e a cor preta, a pata suspensa.
No padrão wave, Figura 31 (a), o robô mantém cinco patas em contato com
o solo durante a locomoção, todas as patas de um lado movem-se
sucessivamente, começando com a pata traseira, e posteriormente isso é repetido
pelo lado oposto. É o mais lento, porém mais estável. No padrão ripple, Figura 31
(b), o robô alterna entre quatro e cinco patas no chão em determinado momento.
Já no caso do padrão tripod, Figura 31 (c), o robô faz uso de dois conjuntos de
três patas durante a locomoção, um conjunto serve de suporte, enquanto o outro
realiza o passo, sendo o mais rápido e mais comum. No caso de um robô
hexápode, pode haver mais um quarto tipo de padrão, chamado livre, onde o robô
escolhe qual modo de locomoção é mais adequado por meio de percepção do
ambiente, sobretudo o tipo de terreno (TEDESCHI; CARBONE, 2014).

Figura 30 - Convenção de numeração de patas.

L1

L2 R1

L3
R2

R3

Fonte: Tedeschi; Carbone (2014). Figura modificada pelo autor.


76 
 

Figura 31 - Diagramas de Marcha de um hexápode: (a) wave gait, (b) ripple gait, (c) tripod gait.

(a) (b) (c)

Fonte: Tedeschi; Carbone, (2014)

Dessa forma, pode-se ver na Figura 32 um esquema mostrando o método


mais comum de marcha que um robô de seis patas realiza, onde é descrito a
marcha de oposição trípode (tripod gait). As linhas pontilhadas representam a
base de apoio, os pontos pretos são as patas em contato com o solo e os brancos
são as patas suspensas, a elipse delimita o corpo do robô. O movimento é
representado da seguinte forma:

1ª Fase: robô com as seis patas em contato com o solo;


2ª Fase: três patas são erguidas diagonalmente opostas formando um triangulo;
3ª Fase: as patas erguidas realizam o passo para frente;
4ª Fase: as patas erguidas vão de encontro ao solo;
5ª Fase: é erguido o outro conjunto de patas que havia servido de sustentação;
6ª Fase: as patas erguidas realizam o passo para frente.

Figura 32 - Esquema de locomoção tripod gait em um hexápode.

Fonte: Vieira (2010); Woering (2011)


77 
 

Segundo Siegwart e Nourbakhsh (2004), há uma questão relacionada à


coordenação de patas para locomoção ou controle de marcha (gait) para robôs
com várias patas. O número de marchas possíveis depende do número de patas,
uma vez que é uma sequência de ciclos de elevação e liberação de cada uma.
Dessa forma, para um robô móvel caminhante com um número k de patas, o
número total de possíveis eventos N é dado por:

N  (2k  1)! (1)

Para um bípede, por exemplo, k = 2 patas, então o número de eventos é:

N  (2k  1)! 3! 3.2.1  6 (2)

Os seis eventos são: retrair perna direita, liberar perna direita, retrair perna
esquerda, liberar perna esquerda, retrair ambas as pernas juntas e liberar ambas
as pernas juntas. Um robô de seis patas pode ter 39.916.800 possíveis eventos,
tornando o controle muito mais complexo.

2.9.6 Configurações de Patas

Em sistemas biológicos, há diferentes tipos de patas, algumas


especializadas para determinadas tarefas, mas todas são capazes de suportar,
em conjunto, o peso do corpo e mantê-lo estável enquanto caminham, manipulam
objetos, ou escalam (MANOOPONG; WÖRGOTTER; PASEMANN, 2010).
Tomando como exemplo o pé humano (que tem mais de seis graus de
liberdade, atuação adicional dos dedos, atuação de mais de quinze grupos
musculares e oito articulações complexas) em geral, a adição de graus de
liberdade a uma perna ou pata aumenta a capacidade de manobra e dá ao
sistema a capacidade de se locomover em terrenos mais irregulares, assim como
permite uma variedade de tipos de passos. Como desvantagem, quanto mais
atuadores, mais energia e controle são necessários, além de adicionarem mais
massa ao corpo como um todo.
78 
 

No caso de robôs móveis com patas, um mínimo de dois graus de


liberdade é necessário para conseguir mover uma pata para frente,
movimentando para cima e deslocando para frente. Contudo, o ideal é adicionar
um terceiro grau de liberdade, como mostra a Figura 33, a fim de rotacionar uma
segunda articulação e assim realizar manobras mais complexas (SIEGWART;
NOURBAKHSH, 2004).

Figura 33 - (a) pata do bio-sistema inspirado, (b) tipos de patas com três graus de liberdade.

(b)

Fontes: Machado (2001); Ridderström (2003); Kingsley (2005); Siegwart; Nourbakhsh (2004)

Três tipos de projetos de patas são apresentados na Figura 33 (b)


utilizando, respectivamente, motores elétricos; mecanismo pantográfico, que
permite que o último elo da pata se mova pela transmissão do movimento, por
meio de um acionamento simples linear, dois atuadores e uma estrutura de quatro
hastes, possibilitando à pata completar a trajetória tridimensional do passo, e
atuadores pneumáticos (DEMASI, 2012).

2.9.7 Ciclo da pata (Passo)

Durante a caminhada ou corrida, cada pata desempenha um movimento


cíclico típico, sendo dividido em duas fases: fase de suporte, onde a pata é
utilizada para suportar e impelir o peso do robô, e fase de transferência, onde a
pata se move para a posição seguinte.
79 
 

A seguir são apresentados alguns termos utilizados para descrever o ciclo


de movimento das patas, mostrado na Figura 34, conforme Ferrel (1995):

 Protrusão: a pata se move em direção à dianteira do robô;


 Retração: a pata se move em direção à traseira do robô;
 Curso de potência (power stroke): a pata está em contato com o solo, onde
suporta e impulsiona o corpo do robô para frente. A pata retrai durante
essa fase, também chamada de fase de apoio, suporte ou posição;
 Curso de retorno (return stroke): a pata é suspensa e vai em direção ao
ponto inicial do próximo curso de potência. A pata se prolonga durante esta
fase, chamada também de fase de balanço ou recuperação;
 Posição Extrema Anterior (AEP): na protrusão, este é o ponto extremo que
a pata alcança. É o ponto de início do curso de potência;
 Posição Extrema Posterior (PEP): na retração, este é o ponto extremo que
a pata alcança. É o ponto de início do curso de retorno.

Figura 34 - Ciclo de passo básico de uma pata

Fonte: Ferrel (1995); Bombled (2011)


80 
 

Durante o curso de recuperação (fase de transferência), a pata é suspensa


e vai em direção ao ponto onde terá início o próximo curso de potência (AEP).
Durante o curso de potência (fase de suporte), a pata suporta e impulsiona o
corpo do robô na direção do movimento e vai em direção ao ponto onde terá início
o curso de retorno (PEP).

2.9.8 Modelos de Andadura e seus Parâmetros

Para um robô móvel poder andar, conforme já visto no item sobre


locomoção, há um processo de três etapas, que consiste na entrada de dados do
ambiente por meio de sensores para o sistema central de processamento;
processamento desses dados; resposta para o sistema de atuação e, assim,
gerando a movimentação.
As formas de andar encontradas na natureza são: de forma contínua,
encontradas em mamíferos e insetos em baixa velocidade, onde o corpo se move
a uma velocidade constante e o movimento das patas tem sequência determinada
em que as patas em contato com o solo se movem para trás e as patas de
transferência para frente; e de forma descontínua, quando o corpo e as patas
seguem uma sequência, sendo que o movimento de cada pata acontece quando
as demais estão no solo e o movimento do corpo se dá quando as patas estão em
contato com o solo, tornando o controle mais fácil (ARAÚJO, 2005).
O conceito de marcha (gait), ciclo completo realizado por todas as patas,
ou período, durante a locomoção (andadura), é caracterizado por uma série de
índices propostos na literatura a fim de comparar robôs com patas de diferentes
massas, formas e tamanhos (RIDDERSTRÖM, 2003; CAMPOS; MATOS;
SANTOS, 2010; TEDESCHI; CARBONE, 2014):

 Duty Factor (fator de carga): relação entre a duração da fase de apoio e o


tempo de ciclo. Para 0 < β < 1, se o robô está andando, então β ≥ 0,5, e se
está correndo, então β ≤ 0,5.

í
(3)

81 
 

 Froude Number: outra forma de diferenciar a locomoção entre uma


caminhada ou uma corrida é usar essa medida adimensional. Pode ser
calculada por:

(4)

Onde V é a velocidade de locomoção, g é a aceleração devida à gravidade


e h é a distância do solo até a articulação do quadril (articulação ligada ao corpo)
(RIDDERSTRÖM, 2003; TEDESCHI; CARBONE, 2014).
O fator de carga para uma pata também pode ser calculado como uma
relação entre a duração da fase de suporte e o tempo de ciclo:

Τ (5)

Τ Τ

O aumento da velocidade de locomoção se dá pelo decréscimo da duração


do ciclo de passo, aumentando o número de passos por segundo por meio da
diminuição da duração da fase de suporte Τ , enquanto a duração da fase de
balanço, Τ , permanece praticamente constante ao longo de todas as
velocidades de locomoção.
Para um robô hexápode em wave gait, movimento adotado em locomoção
mais lenta, normalmente com o fator de carga é de . Em ripple gait,

movimento adotado para velocidade mediana, o fator geralmente é ·. Para

mover-se rapidamente, o tripod gait é utilizado, tendo .

De acordo com a fundamentação teórica apresentada neste capítulo, pode-


se notar a diversidade de robôs hexápodes utilizados na atualidade para realizar
tarefas em diferentes tipos de ambientes, de forma versátil e robusta, reduzindo
riscos, sobretudo em locais desconhecidos, ambientes subaquáticos e terrenos
irregulares. Devido às características apresentadas dessa configuração de robô,
há informações suficientes para o próximo passo do projeto, de desenvolver um
protótipo, desde o desenho conceitual aos testes de um controle de acionamento
inicial.
82 
 

3 PROJETO E DESCRIÇÃO DO ROBÔ

Neste capítulo são abordadas considerações sobre como projetar robôs e


os parâmetros envolvidos nessa prática, conceitos de projetos de máquinas,
ferramentas utilizadas, sistemática do trabalho e breves explicações prévias.

3.1 Metodologia de Projeto de Máquinas

O termo projeto, ou design, em alguns exemplos é relacionado


principalmente à aparência estética do objeto desenhado, mas no caso de uma
máquina, como um automóvel, os outros aspectos, estruturais e funcionais,
também são envolvidos (NORTON, 2004).
Designar ou escolher são os significados para a palavra latina designare,
de onde provém a palavra design. Segundo o dicionário Webster, a definição que
melhor se aplica a projetos de engenharia é “esboçar, traçar ou planejar como
ação ou trabalho [...] para conceber, inventar, produzir”. Dessa forma, a essência
do projeto de máquinas consiste na tarefa de definir e calcular dimensões,
determinadas pelos movimentos das peças, forças e mudanças de energia, as
formas e materiais adequados (NORTON, 2004).
A metodologia de projetos é esse exercício criativo e aplicado, com etapas
variadas, dependendo da exigência do problema a ser solucionado. Projetar
consiste em, ao mesmo tempo, formular um plano satisfatório para solucionar um
problema e atender as necessidades específicas, como: ser funcional, seguro,
confiável, útil, manufaturável, legal e viável em termos de mercado. De forma
geral, algumas etapas metodológicas para resolver problemas são apresentadas
na Tabela 3 (NORTON, 2004; SHIGLEY, 2005).
Projetar é um processo inovador e iterativo, que consiste em repetir e
analisar estágios anteriores na metodologia do projeto. Depende de tomada de
decisões e de distinguir a solução mais satisfatória para o problema.
Comunicação está intensamente relacionada ao projeto, por meio de palavras e
desenhos. Dessa forma, ferramentas como criatividade, habilidade de
comunicação e conhecimento tecnológico e de princípios fundamentais
(Matemática, Estatística, Computação, desenho e linguagem) são combinadas
para obter um produto final (NORTON, 2004; SHIGLEY, 2005).
83 
 

Tabela 3: Etapas metodológicas


Etapas de Metodologia de Projetos
1 – Identificação da necessidade Primeira exposição do problema, sendo de
forma vaga a princípio.
2 – Pesquisa de suporte Necessária para definir e compreender o
problema.
3 – Definição dos objetivos Expor de forma mais realista o problema
4 – Especificações de tarefas Especificações que delimitam o problema,
delineando o alcance dele.
5 – Síntese Busca por todas as alternativas possíveis,
sendo chamada também de etapa de
concepção ou invenção. É onde acontece
também a estimativa de valor qualitativo.
6 – Análise Consiste em analisar as soluções da etapa
anterior, aceitá-las, rejeitá-las ou modificá-las.
7 – Seleção Selecionar a alternativa mais adequada
8 – Projeto detalhado Etapa onde os croquis são desenhados, os
fornecedores são especificados,
disponibilidade de materiais e especificações
de planos de fabricação.
9 – Protótipo e teste Primeira construção do projeto real
10 – Produção Manufatura em massa e onde se observa se
a decisão trouxe resultados satisfatórios.

Fonte: Norton (2004)

Na descrição das etapas metodológicas, o processo não se dá de forma


sequencial, pois a iteração é necessária em todas as etapas, dando ênfase à
repetibilidade, a fim de perceber as imperfeições. Shigley (2005) traz uma
abordagem mostrando a presença da iteração nas fases do projeto, conforme
Figura 35.
No projeto de máquinas, a síntese do tipo de configuração cinemática
adequada aos movimentos necessários requer a escolha de um mecanismo
específico mais adequado ao problema (NORTON, 2004).
84 
 

Figura 35 - Fases do projeto, com realimentação e iterações

Fonte: Shigley (2005)

3.2 Ferramentas de Projeto e Recursos

Atualmente os projetistas contam com muitos recursos que os assistem na


resolução de problemas, como o uso de microcomputadores e programas,
capazes de prover simulações para análise prévia, informação técnica, na forma
de ciências aplicadas, ciência básica, padronizações e codificações.

3.2.1 Ferramentas computacionais

Programas de projeto assistido por computador, CAD (Computer Aided


Design), permitem desenvolver projetos tridimensionais a partir de visualizações
ortográficas bidimensionais, a fim de modelar, manipular e representar os
modelos escolhidos em diversos ângulos de visualização (vistas). Além disso, em
alguns casos, peças podem ser criadas diretamente por meio de métodos de
prototipagem. Tais ferramentas também podem fazer cálculos rápidos das
propriedades dos modelos, como massa, dimensões, áreas geométricas e centro
de massa.
Engenharia Auxiliada por Computador (CAE) engloba as aplicações
relacionadas a computador, sendo o CAD um subconjunto dela. Assim, os
85 
 

programas são divididos em dois tipos, o dos fundamentos de engenharia e o dos


não específicos dela, embora o primeiro possa ser carregado em alguns
programas do segundo tipo (NORTON, 2004; SHIGLEY, 2005).
Neste trabalho, o programa utilizado para criar um modelo tridimensional
do robô é o SOLID EDGE®, da SIEMENS®, onde é possível, a partir dele, ver a
quantidade de peças, dimensões, montagem e medidas de usinagem para o
plano de manufatura, possibilitando o controle do desenho paramétrico.

3.3 Projeto de Robôs

Em primeiro lugar, a definição inicial, onde se deve ter em mente qual a


aplicação do robô e, consequentemente, qual a estrutura adequada para tal.
Nessa fase é respondido qual é o ambiente de navegação e qual o tipo de
terreno. Após isso, é definido o que o robô é capaz de realizar e o que realmente
é essencial que ele faça: é necessário que ele tenha sensores para mapear o
ambiente, que detecte objetos e que navegue autonomamente?
A etapa seguinte é definir, então, o tipo de controle e o processamento dos
dados: o robô pode ser autônomo, semi-autônomo, ou tele-operado. Assim, por
conseguinte, o sistema de comunicação também é definido.
Na próxima etapa são definidos os tipos de atuadores e por último, o
sistema de alimentação, para que haja uma boa autonomia do robô. Outras
configurações, como microcontrolador, módulos de comunicação e energia,
também fazem parte das características físicas (GUIMARÃES, 2007).
O robô desenvolvido neste trabalho teve como definição inicial ser
construído com baixo custo a fim de ter testado, futuramente, em situações de
inspeção de locais desconhecidos, sendo capaz de navegar e se locomover
nesses ambientes. Contudo, os primeiros testes apresentados nos próximos
capítulos se referem ao controle e acionamento das patas.

3.4 Modelando um Robô Hexápode

Para atingir os objetivos propostos e fornecer o conhecimento necessário


para o passo de síntese ser realizado e detalhar o projeto, foram apresentados
86 
 

até aqui vários princípios e definições em relação aos robôs com patas e as
diferenças com relação às demais configurações.

3.4.1 Considerações de Design

De acordo com Zielinska (2010), projetar robôs hexápodes não é uma


tarefa trivial devido a uma grande variedade de possibilidades para conceber o
design final. O projetista precisa tomar muitas decisões que influenciam no
funcionamento e nas características técnicas que restringem o projeto, tais como:

 Estrutura mecânica do corpo do robô;


 Arquitetura das patas;
 Tamanho máximo;
 Atuadores e mecanismos de acionamento;
 Arquitetura de controle;
 Fonte de alimentação;
 Gait e velocidade;
 Capacidade de desviar obstáculos;
 Carga útil;
 Autonomia;
 Recursos operacionais
 Custo

Essas questões mencionadas podem ser classificadas em dois tipos,


entradas (recursos chave) e saídas de projeto (características de design
principais), conforme Figura 36. 
Figura 36 - Esquema de um projeto preliminar de um robô caminhante hexápode

Gait e velocidade Estrutura mecânica


Capacidade de desviar obstáculos Arquitetura das patas
Carga útil Projeto Tamanho máximo
Autonomia Preliminar Atuadores e Mecanismos
Recursos Operacionais Esquemático Arquitetura de controle
Custo Fonte de alimentação

Fonte: Tedeschi; Carbone (2014)


87 
 

Robôs hexápodes podem ser desenvolvidos em várias configurações e


cada solução tem um critério de projeto, especificações, formato, vantagens
intrínsecas, embora na literatura seja precário um projeto sistemático de
procedimento referindo-se aos recursos necessários.
Um exemplo prático do procedimento é mostrado na Figura 37, em
fluxograma, a fim de auxiliar na solução do projeto preliminar mais adequado,
considerando sistematicamente os recursos chave, as características de design e
funcionalidades (TEDESCHI; CARBONE, 2014).
Figura 37 - Fluxograma de design para robôs hexápodes
Início

Identificação das principais características


relacionadas às tarefas Design de
Arquitetura
Análise de função Primário
Características do design principais

Síntese refinada de tipos de Corpo

Síntese de dimensão do corpo

Síntese refinada do tipo de pata

Síntese de dimensão da pata

Refinamentos
Validação do OK
De Design

Modelo
Cinemático
OK
Arranjo de atuadores e configurar modelo
dinâmico

OK Validação do
Modelo
Dinâmico

OK

Design ideal

Design da arquitetura de controle e


desenvolvimento do gait de caminhada

OK
Arquitetura de
controle e validação
do gait
OK

END

Fonte: Tedeschi; Carbone (2014)


88 
 

3.4.2 Arquitetura do Corpo do Robô Hexápode

Há duas arquiteturas básicas presentes na literatura: retangular e circular


(hexagonal). O chassi em formato circular, com patas distribuídas em simetria
axial, tem a vantagem de se movimentar em qualquer direção sem a necessidade
de rotacionar o robô, pois a simetria radial implica que todas as patas são iguais e
o robô não tem definido uma região dianteira e uma traseira. No entanto, esta
configuração possui uma área maior em relação à outra (retangular), o que
dificulta a locomoção em locais estreitos. A estrutura adotada no projeto deste
trabalho é a retangular, com três patas em cada um dos dois lados, o que facilita
a movimentação em linha reta (TEDESCHI; CARBONE, 2014).

3.4.3 Arquitetura Cinemática das Patas

A arquitetura cinemática depende de fatores relacionados à aplicação do


robô, forma do terreno, espaço de trabalho e carga útil. Como já visto na sessão
de robôs hexápodes no capítulo anterior, há diferentes tipos de patas empregadas
na locomoção de hexápodes.

Figura 38 - Tipos de patas de um robô hexápode

Tipos de Patas

Patas Bio inspiradas Patas não zoomórficas

Mamíferos Aracnídeos Répteis Atuador Telescópica Híbrida

Configuração das Juntas


Orientação das Patas

Frontal Lateral Circular Para o Mesma Para o


exterior orientação interior

Fonte: Tedeschi; Carbone (2014)


89 
 

De forma esquemática esses tipos de patas são classificados na Figura 38,


separados em sistemas biologicamente inspirados (baseado na marcha de
mamíferos, répteis, insetos) e não zoomórficos, de acordo com a orientação das
patas em relação ao corpo (frontal, lateral, circular) e agrupando as configurações
de juntas (articulações) (TEDESCHI; CARBONE, 2014).
O robô proposto neste trabalho é um sistema biologicamente inspirado em
insetos (aracnídeos), com orientação de patas frontal, corpo retangular e juntas
dobradas para fora da área do corpo do robô, a fim de facilitar a locomoção em
ambientes não estruturados.

3.5 Atuador

Muitos tipos de atuadores são empregados em robôs hexápodes, sendo a


maioria acionado por motores elétricos, por serem mais baratos e de controle
mais fácil. Alguns robôs utilizam também atuadores pneumáticos, ou músculos
artificiais, capazes de oferecer tempos de resposta rápidos, mas precisam de um
sistema de suprimento de ar. Outros tipos de robôs hexápodes de grande porte
utilizam atuadores hidráulicos, que possuem alta relação entre potência e peso,
fornecendo muita força. Outros ainda utilizam materiais compósitos de metal-
polímero que respondem a variações de tensão, mudando de forma (TEDESCHI;
CARBONE, 2014).
Neste trabalho, devido às dimensões do modelo de robô hexápode
escolhido e às tarefas que ele deve desempenhar, optou-se por utilizar o micro
servomotor 9g da Tower Pro® nas articulações das patas. Cada pata tem três
motores, tendo o robô dezoito servomotores ao todo para locomoção.
Um servomecanismo, como apresentado na sessão de atuadores no
capítulo anterior, é um mecanismo que, por meio de um sistema de malha
fechada, variam a velocidade e a posição de eixo de um motor de corrente
contínua. O controle da posição angular desejada é feito utilizando-se de técnicas
de PWM, do inglês Pulse Width Modulation, enviado à entrada do sinal do
servomotor, e da duração dele. O padrão para gerar o pulso, onde o sinal pode ter
0 Volts ou 5 Volts, o circuito de controle monitora este sinal em intervalos de 20
ms e caso haja alteração do sinal durante 1 ms a 2 ms, a posição do eixo é
90 
 

ajustada. As características de ajuste do padrão de reposicionamento são


mostradas na Figura 39.
Figura 39 - Ajustes de PWM para reposicionamento do eixo do servomotor

Largura de pulso 1 ms – 2 ms 

Fonte: Santos (2007)

Para o controle dos servomotores, foi necessário gerar um sinal de PWM


utilizando-se do contador e dos Timers do microcontrolador, sendo possível gerar
um sinal analógico, apesar de sua saída ser um sinal digital que assume valor
lógico alto ou baixo (um ou zero). Essa saída é uma onda quadrada com
frequência constante, largura de pulso variável, relacionada com o período fixo e
o ciclo ativo (duty cycle).
Conforme mostra a Figura 40, a frequência de uma onda é definida como a
quantidade de vezes que ela se repete ao longo de determinado tempo. O
período, por sua vez, é cada região dessa onda que se repete. Já o ciclo ativo, ou
de trabalho (duty cycle), define o tempo em que o nível lógico está em estado alto
no período, ou seja, sinal ativo. Um duty cycle de 50% define que a metade do
período está em nível lógico alto (DENARDIN, 2010). 
Figura 40 - Sinais modulados por PWM

Fonte: Denardin (2010)


91 
 

Para e obter tal modulação, é preciso um modulador e um sinal de


referência ( ) para comparação. Os sinais resultantes são os pulsos em onda
quadrada, conforme Figura 41.

Figura 41 - Modulação PWM com tensão constante

Fonte: Praça (2012)

O ciclo ativo (largura do pulso ou duty cycle) é modificado de acordo com a


amplitude do sinal modulador, obtendo-se o sinal desejado por meio da
comparação do sinal modulante com a onda triangular, que, por sua vez, deve ter
sempre frequência superior a maior componente do sinal modulante.
Um temporizador pode ser utilizado para várias saídas de sinal PWM, com
a mesma frequência, porém larguras diferentes, como mostra a Figura 42.

Figura 42 - Comparação para obtenção de sinais PWM

Fonte: Praça (2012)


92 
 

Neste trabalho, uma onda dente de serra é gerada a partir do contador,


fornecendo os valores de pico, implementado no programa, incrementado de
acordo com o Clock (20 MHz no caso) e zerado sempre que o contador atinge
este valor máximo. Para ilustrar, na Figura 43, PWM1H e PWM2H são dois
registradores que representam dois canais de PWM, enquanto o registrador
PTPER possui o valor de pico que se refere ao período.

Figura 43 - Onda dente de serra para obtenção de sinais de PWM

Registrador
Duty Cycle 1

Registrador
Duty Cycle 2

Fonte: Denardin (2010)

A seguir, na Figura 44, é mostrado o motor utilizado com a descrição de


seus contatos e medidas em milímetros. Cada motor tem torque de 1,5 Kg.

Figura 44 - Servomotor utilizado

Laranja (Sinal)
Vermelho (+)

Marrom (-)

Fonte: filipeflop.com – micro servo 9 g


93 
 

A resolução do PWM utilizada é de 16 bits, implicando num valor máximo


de 65535 e a frequência de operação é dada, de acordo com datasheet
PIC18F4550 (2006) do microcontrolador utilizado, por:

(6)

4 . . 65535

O registrador TMR é utilizado como flag de interrupção da onda, é a


frequência do cristal oscilador de entrada (20 MHz), é o valor que divide
a frequência do clock do Timer (no caso Timer0, utilizando = 4).
No Apêndice A é apresentado o código de programação em linguagem C
para microcontroladores PIC, com os blocos e valores utilizados.

3.6 Módulo de Controle

Neste projeto, entende-se por módulo de controle somente a malha


responsável por processar e transmitir aos servomotores os pulsos determinados
para as posições desejadas. Posteriormente será apresentado o circuito de
potência e placa receptora do módulo.
O TDSDB4550MINI, mostrado na Figura 45, é uma placa de
desenvolvimento da TIERTEX®, com um microcontrolador PIC18F4550 no
formato PDIP, da Microship®, incorporado, com 32 kb de memória flash
programável, 2048 bytes de memória RAM, oscilador interno de 20 MHz, I2C,
UART e 3 módulos de Timer, 13 canais A/D e várias interfaces na placa, como
dois botões (RESET E RB2) e dois LEDs. A placa tem as mesmas dimensões e
configurações de pinos (40 pinos) do PIC em questão, sendo no formato DIP,
permitindo o acesso facilitado às portas e aos componentes da placa compacta,
além de poder ser usado em matriz de contatos para testes.
O módulo vem com um conector Mini USB 2.0, para alimentação e
transmissão de dados de programa, cabo USB com filtro e os pinos para serem
soldados. Além disso, há um software de bootloader pré-carregado e
disponibilizado, sendo desnecessário o uso de gravadoras para transmitir o
programa hexadecimal ao controlador. Contudo, ele ainda traz um soquete para
94 
 

ICSP (In Circuit Serial Programming), método de gravação de dispositivos


programáveis que permite que este possa ser programado já instalado no circuito
por meio da interface serial.
Figura 45 - Módulo TDSDB4550MINI e diagrama de pinos

Tamanho da placa

Conector Mini USB

(Botão)
  (Cristal)
(Botão bootloader)

Fonte: tiertex.com – PIC18F4550 board

3.6.1 Bootloader

O PIC18F4550 permite uma comunicação por Bootloader, que já vem pré-


instalado e permite a gravação do firmware usando apenas a conexão USB. O
aplicativo gerenciador de inicialização, bibliotecas, compilador para C18 e MPLAB
IDE são gratuitos e fornecidos no site da Microship® e pelo site da TIERTEX®.
O bootloader ocupa apenas 4 kb de espaço dos 32 kb disponíveis, não
necessitando de instaladores. Para iniciar o modo bootloader, o botão RB2 deve
ficar pressionado após inserir o cabo USB. Caso haja sucesso os LEDs RE0 e
RE1 devem piscar alternadamente, rapidamente. O gerenciador deve ser iniciado
no PC para inicialização da conexão com o módulo, conforme mostra Figura 46.
95 
 

Figura 46 - Gerenciador USB Bootloader.

Fonte: tiertex.com – PIC18F4550 board bootloader Tiertex MINI

3.7 O Modelo Hexápode Phoenix

O robô Phoenix é um robô de seis patas, equipado com dezoito


servomotores, três em cada pata, como mostra a Figura 47, permitindo-o andar
em qualquer direção. É um modelo proposto pela empresa LynxMotion, que
produz soluções comerciais e vende conjuntos incluindo chassis, motores,
módulos eletrônicos e software, possui o corpo de alumínio, na categoria
retangular, ou seja, patas dispostas em cada lado. Pode ser tele-operado com
controles de Playstation2. O modelo atualmente é vendido completo por
aproximadamente 800 dólares (LINDSTRÖM; PERSSON, 2011).

Figura 47 - Vista Frontal modelo Phoenix Hexápod.

Fonte: lynxmotion.com – Phoenix hexapod


96 
 

O modelo de robô hexápode desenvolvido neste trabalho se deu pela


facilidade construtiva de suas peças, encaixe e peso, uma vez que a carga útil
não poderia ser muito elevada em relação ao conjunto de servomotores
escolhidos e viáveis ao projeto, pois um dos fatores que foi levado em
consideração foi o custo total.
Seguindo as orientações de arquitetura para a construção do projeto,
conforme o modelo do hexápode Phoenix, o robô hexápode final apresenta patas
orientadas para locomoção frontal, com juntas voltadas para a parte externa,
sendo um protótipo bio-inspirado em um aracnídeo. O corpo tem formato elíptico,
o que diminui a largura total para facilitar a passagem por entre obstáculos, dá
maior espaço entre as patas para permitir um espaço angular livre e seguro de
conflitos entre os movimentos destas. O tamanho máximo do modelo é variável,
pois as patas podem se estender além do corpo devido à configuração das juntas,
possibilitando uma locomoção mais rápida, como observada em insetos.
97 
 

4 TRATAMENTO METODOLÓGICO

Neste capítulo aborda-se a concepção do projeto real, onde é apresentado


o desenvolvimento do protótipo (construção) e a aplicação das soluções no
sistema robótico proposto, da construção e funcionamento às limitações
encontradas, de acordo com a fundamentação teórica e metodologia.

4.1 Desenvolvimento do Projeto do Robô Hexápode

De acordo com a metodologia de projetos mecatrônicos abordada no


Capítulo 3 e na descrição do robô proposto, primeiramente houve o
reconhecimento da necessidade de construir um robô com baixo peso, custo e
com características voltadas a atender as vantagens que um robô dessa
configuração possui, sobretudo para, futuramente, poder ser utilizado em
aplicações em ambientes hostis e não estruturados, além de atender o objetivo de
testes de acionamento inicial.
Como primeiro problema enfrentado, devido à peculiaridade e
complexidade do controle, foi decidir, de acordo com as soluções propostas na
literatura, a forma de acionamento dos atuadores das juntas das patas (18
servomotores, ou seja, 18 graus de liberdade), uma vez que apenas um módulo
de acionamento não possui tantos canais PWM quanto o número necessário.
Quanto à arquitetura do robô, conforme já apresentado, entre as várias
configurações, o modelo escolhido foi um robô hexápode biologicamente
inspirado (baseado em aracnídeos), com chassi em formato que se encaixa na
categoria retangular, juntas das patas dobradas para fora da área do corpo, após
análise de vantagens morfolóficas, funcionais, dimensionais, custo e recursos
disponíveis para a construção, baseado na fundamentação teórica realizada pelo
autor. O material escolhido para compor o chassi e elos foram chapas de acrílico
de 2,5 mm de espessura, na cor preta, e para construir as peças de acoplamento
dos motores da base e da articulação 1, utilizou-se rodapés de alumínio de 2 mm
de espessura, em formato de “u”, na cor preta.
O software utilizado para a modelagem foi o SOLID EDGE ST4, versão
educacional disponibilizada pelo site da SIEMENS®, com o módulo iso.part e
assembly.
98 
 

4.2 Configuração das Patas

As dimensões das patas foram escolhidas visando alcançar um amplo


espaço de trabalho e permitir movimentos mais largos e livres. Não houve uso de
rolamentos, sendo os elos acoplados diretamente nas peças do eixo dos
servomotores. Cada pata possui três atuadores, chamados de motor da base
(MB), motor da articulação 1 (M1) e motor da articulação 2 (M2), onde MB e M1
são acoplados de forma que seus eixos fiquem perpendiculares, conforme mostra
Figura 48. Como o robô tem uma simetria radial, as três patas de um lado são
simétricas às patas do outro lado, ou seja, de forma espelhada.

Figura 48 - Estrutura das Patas

Fonte: Acervo do autor

As dimensões escolhidas para as peças das patas foram baseadas numa


proporção aproximada em relação ao chassi do robô, onde as seis patas serão
acopladas. Mas o principal ponto de referência foram as chapas de acrílico
disponíveis para usinagem, que tinham medidas de 210 x 290,7 mm cada
(tamanho de folha padrão A4). A seguir são mostradas as medidas em milímetros
das peças das patas na Figura 49.
99 
 

Figura 49 - Dimensionamento das peças das patas

Fonte: Acervo do autor

A estrutura de acoplamento dos servomotores MB e M1 é feita em rodapés


de alumínio e foi dimensionada a fim de utilizar as abas presentes nos
servomotores para passar os parafusos e com espaço para o motor M1 poder
realizar a movimentação sem conflitos. Dessa forma foi modelada em uma peça
única, com 20,2 mm de largura, conforme mostra a Figura 50, assimétrica, de
forma que os servomotores possam ficar encaixados e parafusados seguramente.
Figura 50 - Peças de Acoplamento, vistas frontal e traseira.

Fonte: Acervo do autor


100 
 

4.3 Configuração do Chassi

A estrutura do chassi, ou corpo, também foi modelada com a referência da


chapa de acrílico no padrão A4. Dessa forma, foi possível obter as duas partes,
superior e inferior, para a montagem do chassi, utilizando apenas uma chapa de
acrílico. As dimensões em milímetros das estruturas do chassi são mostradas na
Figura 51.

Figura 51 - Peças da Estrutura do chassi.

Fonte: Acervo do autor

4.4 Modelagem do robô em 3D

Para modelagem em 3D, utilizou-se o módulo assembly do SOLID EDGE,


carregando todos os arquivos das peças desenhadas no iso.part e iso.sheet metal
para montagem. O modelo em 3D do robô montado é apresentado na Figura 52 a
seguir.
101 
 

Figura 52 - Modelo do robô em 3D.

  Fonte: Acervo do autor

 
102 
 

4.5 Construção do Robô Hexápode

Primeiramente os desenhos das peças foram impressos em papel padrão


A4, o mesmo padrão das chapas de acrílico. Após isso, os perfis das peças foram
riscados na superfície do acrílico, a fim de marcar o corte, que foi realizado com
uma fresa de módulo 2mm, numa furadeira de bancada. Posteriormente foi feito
um acabamento com uma Micro Retífica DREMEL 300 e rolo de lixa.
As peças de acoplamento foram cortadas utilizando a micro retífica e um
disco de corte, as medidas foram gravadas sobre o metal com régua e caneta
retroprojetor. Após o corte, as abas foram dobradas com alicate, devido a
resiliência do rodapé de alumínio e sua espessura.
A furação das peças das patas e das peças de acoplamento foi feita com
uma borca de 2 mm, onde indicado. Na estrutura do chassi, foram feitos seis furos
de 5 mm para os parafusos e mais três furos de 10 mm na parte superior, para a
passagem dos cabos dos servomotores até a placa de circuito.
O processo de usinagem e peças acabadas são mostrados na Figura 53.
O acoplamento entre os motores da base e os motores da articulação 1, de
cada pata, se deu por meio da peça de junção feita em alumínio. Esta peça
passou por um processo de corte, dobra (proporcionada pelas propriedades
plásticas do material) e furação.
Os parafusos foram ajustados na peça de encaixe do eixo do micro servo
motor que é vendida juntamente com este. Após esse passo, o motor da
articulação 2 é acoplado com o último elo, completando a montagem da pata.
O chassi foi devidamente furado em três pontos para passagem de
cabos e para a passagem dos parafusos de montagem das duas placas que
compõem o corpo do robô.
103 
 

Figura 53 - Corte das peças.

Fonte: Acervo do autor


104 
 

A seguir, na Figura 54, é mostrado o robô montado e patas acopladas ao


chassi, com parafusos de 2 mm.

Figura 54 - Robô Hexápode montado.

Fonte: Acervo do autor

4.6 Acionamento das Patas

Primeiramente foram soldados os pinos no módulo de controle, conforme


Figura 55, e depois uma placa de recepção do módulo e dos servomotores foi
desenvolvida, a fim de fornecer também potência necessária ao módulo (5 V) e
aos servomotores.

Figura 55 - Soldagem dos pinos.

Fonte: Acervo do autor


105 
 

O esquema do circuito receptor e fornecedor de potência foram modelados


no software Proteus Design, da Labcenter Electronics Ltd., onde foi possível
carregar o firmware (que será apresentado na sessão de código) e fazer
simulações, como mostrado na Figurar 56.
Figura 56 - Esquemático do circuito no Proteus

Fonte: Acervo do autor

Como cada servomotor consome até 0.8 A em carga, e cada pata tem três
deles, a corrente que o sistema de seis patas pode vir a consumir é de 14,4 A.
Dessa forma, foi necessário o uso de reguladores de tensão e corrente, a fim de
fornecer a energia requerida. Além disso, a bateria utilizada foi uma Firefox de
Lítio-Polímero, com 7,4 V, 1,6 Ah e 20 C, o que requer um regulador para que a
tensão de entrada nos servomotores seja a de operação, no caso, 5 V.
O regulador escolhido foi o LM317, onde se pode ajustar a tensão de
saída, como mostra a Figura 57, por meio da utilização de dois resistores (R1 e
R2), conforme cálculo apresentado no datasheet do componente:

2 (7)
1 2
1
106 
 

Figura 57 - LM317 com ajuste de tensão de saída.

Fonte: Datasheet LM317

Onde é a tensão de 1,25 V referente à tensão nominal de operação do


regulador, entre a saída e o terminal de ajuste. Uma vez que a corrente de 100 µA
do terminal de ajuste representa um erro, o regulador foi projetado para minimizar
o e torná-lo constante, sendo essa corrente devolvida para a saída. Caso
haja uma carga insuficiente para atender a demanda, o valor da tensão de saída
aumenta.
Para a escolha dos resistores, segue o cálculo, onde o é a tensão de
saída para os servomotores (5 V) e um dos resistores disponíveis é de 520 Ω:

2 (8)
1
1
2
5 1,25 1
520
2 1,5. 10

Cada regulador pode fornecer até 3,4 A, sendo necessários cinco deles
ligados em paralelo para fornecer até 17 A.
Para suprir a alimentação para o módulo de controle, outro regulador foi
escolhido, o LM7805, podendo fornecer até 1,5 V e evitar sobrecarga, além de
fornecer tensão de saída e corrente, ambas ajustáveis.
Os pinos de recepção dos servomotores e do módulo de controle, os
reguladores e o botão de acionamento foram soldados conforme esquema,
utilizando ferro de solda de 60 W e uma placa protótipo de fenolite perfurada. Os
componentes soldados e a disposição deles na placa são demonstrados na
Figura 58.
107 
 

Figura 58 - Placa de circuito e disposição dos componentes, respectivamente.

Fonte: Acervo do autor

A seguir, na Figura 59, é mostrado o robô montado, juntamente com a


placa de acionamento acoplada e a tampa inferior de fechamento do chassi,
respectivamente.
Uma lista de componentes, materiais e ferramentas utilizados, com seus
valores de mercado referentes, estão descritos no APÊNDICE A.
108 
 

Figura 59 - Robô com placa de circuito e tampa inferior, respectivamente.

Fonte: Acervo do autor

4.7 Código e Ambiente de Programação.

O código em linguagem C foi desenvolvido no ambiente MPLAB X, versão


1.50, e compilado usando o MPLAB C18 Complier, para microcontroladores da
família PIC18. As linhas de código estão no APÊNDICE B.
O firwmware liga todos os motores de um mesmo nível, ou seja, três níveis,
motores da base (MB), motores da articulação 1 (M1) e motores da articulação 2
109 
 

(M2), uma vez que cada nível corresponde a uma porta do controlador (porta A, B
e D, respectivamente).
Conforme Equação 6, o período do PWM é controlado por um contador,
incrementado a cada interrupção. Sempre a cada início de interrupção, os pinos
de saída correspondentes a um nível de servomotores são colocados em nível
lógico alto. Posteriormente, o processo de contagem e comparação do valor de
contagem do Timer com o valor desejado de pulso são iniciados. Quando o valor
de contagem for maior ou igual ao valor desejado de pulso, a saída referente
àquele pino volta a nível lógico baixo, voltando ao nível lógico alto no início de um
novo período. No osciloscópio virtual do Proteus o perfil das ondas para os
motores dos três níveis é demonstrado na Figura 60. Os valores que
correspondem a 1 ms, 1,5 ms e 2 ms, para o posicionamento dos servomotores,
são respectivamente 35, 75 e 130.
Como acionamento primário, o programa aciona todos os servos de forma
que o robô saia da posição de repouso e entre em posição de espera, a uma
altura satisfatória do solo, esperando o comando.

Figura 60 - Perfis de onda dos sinais PWM gerados.

Fonte: Acervo do autor


110 
 

5 TESTES E RESULTADOS

Neste capítulo são apresentados e discutidos os resultados obtidos para


verificar a capacidade do sistema de acionar todos os dezoito motores do
conjunto de patas, verificar a integridade da estrutura, testes de PWM e
posicionamento primário de erguimento do corpo do robô.
 
5.1 Teste 1 – Acoplamento de Motores
 
A peça única, desenhada e usinada em alumínio para acoplar os motores
da base (MB) e da articulação 1 (M1) de cada pata, mostrou-se eficiente, não
apresentando folgas ou espaçamentos, conforme Figura 61.
Figura 61 - Acoplagem de Elos e Articulações

Fonte: Acervo do autor

5.2 Teste 2 – Teste de PWM


 
Para realização dos testes de sinal PWM, os valores foram substituídos na
Equação 6, para se obter o valor do registrador TMR que servirá de flag de
interrupção. Para um Período de PWM 0,5 ms, temos que a frequência de PWM é
2000 Hz, pois a frequência é igual ao inverso do período.

(9)

4 . . 65535
111 
 

20000000
2000
4 . 4. 65535

Temos que o TMR inicial será de 64911, o que equivale a FD8F em valor
hexadecimal a ser carregado no registrador.

5.3 Transferência do Firmware pelo Bootloader

O sistema bootloader mostrou-se eficiente e prático, facilitando os testes de


firmware. Em aproximadamente 05 segundos, o módulo habilitava o processo de
gravação e carregava o programa. A interface USB mostrou-se satisfatória para
gravação direta do firmware no microcontrolador do módulo, não necessitando de
gravadoras para isso.

5.4 Testes de Acionamento

Quanto aos testes, foram realizados primeiramente testes de acionamento


com apenas uma pata a fim de testar o tempo de resposta, posicionamento e
valores de corrente requeridos para a operação. Tais testes foram realizados
primeiramente numa matriz de contatos comum para poder analisar se o circuito
simulado no software Proteus estava de acordo com o simulado, conforme Figura
62. Nesses testes, cinco motores foram descartados por apresentarem falhas,
travamentos internos ou avaria de engrenagens internas, tendo que ser
substituídos por novos.
Figura 62 - Teste por pata.

Fonte: Acervo do autor


112 
 

O acionamento consistia em carregar os valores equivalentes a um ângulo


de 90º, primeiramente a cada pata, uma por vez, e posteriormente carregar o
valor a todos os motores, que estão ligados em três grupos, cada um em uma
porta, conforme apresentado na sessão de controle.
Posteriormente, outro teste realizado foi com relação à sustentação do robô
com relação ao seu peso próprio e se poderia carregar peso adicional, simulando
o peso de alguma ferramenta, end-effector, câmera ou sensor. A soma de cada
torque do servo motor foi suficiente para sustentar a estrutura em posição de
espera (erguida), bateria, placa de controle e uma pequena câmera para simular
carga. Contudo foi observada uma vibração dos motores e uma leve inclinação do
chassi em relação ao solo.
Portanto, o resultado obtido foi devido ao valor carregado no registrador
para o pico da onda dente de serra ultrapassa o tempo de estouro do timer para
zerar o período, fazendo com que os motores vibrem intermitentemente. A
resolução usada no PWM deve ser menor do que a utilizada (16 bits), a fim de
não sobrecarregar o processamento do módulo e diminuir o tempo de resposta.
Segundo Almeida (2011), em suas notas de aula, a frequência de PWM
tem que ser suficientemente alta e depende do circuito do microcontrolador.
Porém, no caso do PIC, trabalhar com frequências altas implica em perda de
resolução na definição do duty cycle. Isso foi comprovado nos testes, uma vez
que se a frequência e o duty cycle tiverem valores baixos, o próximo pulso do
PWM atuará nos motores quando estes já estiverem parados, gerando a vibração
intermitente. Ao se aumentar o duty cycle, este efeito tende a diminuir.
O PIC utilizado no módulo de controle (PIC18f4550) permite resolução de
até 16 bits. Contudo, há duas vantagens observadas em testes: primeiramente, se
a frequência é baixa, há maior facilidade de implementar o PWM no firmware do
microcontrolador, pois a varredura do programa terá condições, entre um pulso e
o seguinte, para processar as demais linhas de programação; em segundo lugar,
uma frequência menor possibilita uma resolução maior do PWM, aumentando a
precisão para determinar a posição do servomotor.
Dessa forma, outro teste foi feito utilizando resolução de apenas 8 bits,
valor de prescaler 2, utilizando o Timer 0, porém mantendo a mesma frequência e
113 
 

inserindo um novo limite de onda dente de serra para comparação com os valores
de referência para determinar os ângulos:

(10)
4 . . 255

20000000
50
4 . 2. 255

Assim, o valor de TMR é 155 (valor a ser carregado no programa


registrador do Timer 0), para que se tenha a mesma frequência. Para se obter o
novo limite da onda dente de serra, temos:
1 1 (11)
0,02
50 . 10
Para um período de 20 ms:
20 (12)
1000
0,02
Portanto, o novo valor limite da onda dente de serra para estouro do timer é
1000, porém, no programa, este valor é multiplicado por 2 para reduzir a
velocidade de movimentação do robô, como segurança também ao tempo de
resposta e fragilidade das engrenagens dos servo motores.
Neste teste, o robô presentou melhoria quanto à vibração dos motores. Por
isso, outro fator foi analisado para solucionar o problema: a linguagem de
programação e a quanto o código requer de esforço do processador para realizar
as tarefas.
O comando de acionamento primário, ou seja, a função que controla o
primeiro movimento do robô, o de levantar-se, era composta anteriormente por
um if-else, onde os valores eram comparados a uma variável auxiliar para enviar
o sinal às portas correspondentes a cada pata. O comando foi transferido para
uma função case, em que, quando o valor for “0”, o robô faz o movimento de
levantar, quando o valor for “1”, o robô retrai todas as patas para a posição inicial.
Com isso, o novo código foi transferido para testes e a vibração dos motores foi
resolvida, pois se dividiu o esforço de processamento na varredura do programa
em camadas separadas.
114 
 

Para que o robô realize a segunda fase de movimentação, que ocorre


quando ele já estiver “de pé”, uma tabela de valores é usada para que se tenha
referência de onde começa e onde termina tal movimento, de acordo com os
ângulos iniciais e finais. Como todos os motores estão divididos em camadas
(motores da base, da articulação 1 e da articulação 2), uma terceira função é
utilizada para alternar entre os casos, para que, quando um movimento termine, o
outro comece.
O gait implementado no programa é o tripod gait, conforme visto no
Capítulo 2, onde há a alternância de movimento entre dois conjuntos de três
patas.
Num dos testes de retração das patas, mais dois motores foram
danificados devido a um movimento brusco, onde um deles perdeu a trava e o
outro teve as engrenagens desvinculadas do eixo.
O robô não foi capaz de realizar a segunda fase de locomoção no teste
seguinte devido a erros na retração das patas que travavam alguns servo
motores. Quanto ao propósito de acionamento primário, o robô se mostrou
eficiente. Observou-se uma área de trabalho útil bastante ampla, como mostrado
na Figura 63, a qual ele poderá se locomover e transpor obstáculos a uma altura
segura do solo. Uma sequência de movimentos é mostrada no Apêndice D, onde
uma pata desempenha o ciclo de passo, conforme visto no Capítulo 2.

Figura 63 - Ganho de amplitude de trabalho

Fonte: Acervo do autor

Posteriormente foi feito um teste de acionamento de uma das patas


utilizando uma plataforma Arduino UNO, onde foi carregado um programa para
115 
 

que uma das patas simulasse um ciclo de passo completo, conforme mostrado no
Apêndice C. A alimentação da placa foi por fonte externa, fornecendo 5 V e 3,4
mA. O resultado foi satisfatório e os motores não apresentaram vibração, pois foi
utilizada uma porta PWM especificada na placa para essa função.
A fundamentação teórica apresentada no Capítulo 2 e a metodologia
aplicada na construção do protótipo proposto mostraram-se eficientes como
alternativa dos problemas encontrados no decorrer do trabalho, como por
exemplo: como construir um robô de baixo custo aplicado a ambientes não
estruturados e como resolver a complexidade de controle de dezoito atuadores?
A modelagem por meio de uma ferramenta CAD possibilitou ver o protótipo
montado e previamente ver a viabilidade de construção, visualizar problemas de
conflitos mecânicos, ver a área de trabalho das patas e descrever
detalhadamente um plano de produção baseado das dimensões e posição das
peças, a fim de garantir reprodutibilidade do modelo proposto, iteração e tomadas
de decisões e ou modificações.
Embora o maquinário disponível fosse apenas furadeira de bancada com
fresa e micro retífica, o processo resultou peças com dimensões muito próximas
do modelo desenhado, facilitando o processo de acabamento. Não foi preciso
realinhar furos, pois o acrílico estava marcado em sua superfície com as devidas
posições.
Quanto ao protótipo da placa de circuito, esta se mostrou eficiente para os
testes de acionamento, mas pode ser reavaliada para uma placa definitiva por um
processo de placa de circuito impresso. Todos os conectores foram compatíveis
com os furos e o processo de soldagem não apresentou conflitos entre contatos.

 
116 
 

6 CONCLUSÃO E TRABALHOS FUTUROS

O trabalho atendeu ao objetivo de manufatura e montagem no protótipo


apresentado, mas conclui-se que os acionadores escolhidos não apresentaram
bom desempenho nos testes devido à sua fragilidade, embora tal escolha tenha
sido feita para atender o custo. Dessa forma, para trabalhos futuros, recomenda-
se o uso de servo motores com engrenagens de metal para garantir maior
robustez.
Contudo, houve bastante ganho de informações com relação ao estudo e
ao desenvolvimento do firmware, uma vez que foi levada em consideração a
abordagem do uso de outros recursos para a criação do sinal PWM. Além disso, o
uso da ferramenta SOLID EDGE®, como programa de assistência de desenho 3D
se mostrou eficiente para estruturar, analisar, iterar e simular.
Uma placa de circuito final, com todos os reguladores de tensão, o módulo
Tiertex MINI e outros componentes (como capacitores), deve ser finalizada, a fim
de melhorar o projeto, evitar interferências e obter melhor isolamento do meio
externo.
Para projetos futuros, deve-se também implementar sensores, mesmo que
os testes tenham sido inicialmente para analisar outros parâmetros como
acionamento primário, angulação e sustentação, imprescindíveis para as
próximas fases do projeto. Uma vez que as correções tenham sido feitas, o passo
seguinte é inserir tais sensores (ópticos, de contato, ou câmera), juntamente com
servo motores melhores, desenvolver a Inteligência Artificial para navegação e
controle.
Desse modo, o trabalho vai ser continuado a fim de ser aprimorado, mas
conclui-se que os objetivos, baseados na metodologia, de expor os modelos de
robôs hexápodes existentes na literatura, expor suas características mecânicas,
materiais, métodos para escolha de arquitetura adequada, desenvolvimento do
modelo conceitual tridimensional com uma ferramenta CAD, construção de um
protótipo e desenvolvimento de um programa primário de acionamento, tenham
sido atendidos.
117 
 

REFERÊNCIAS

ARAÚJO, Carlos Roberto de. Dinâmica de Locomoção de Máquinas Caminhantes.


2005. Disponível em:
<http://www.em.ufop.br/cecau/monografias/2005/CARLOS%20ROBERTO.pdf>, acesso
em 25.10.2012.

BOMBLED, Quentin. Modeling and Control os Six-Legged Robots-Application to


AMRU5. Universite de Mons. 2011. Disponível em:
<http://mecara.fpms.ac.be/Theses/QuentinBombled_phd.pdf>, acesso em 01.12.2012.

BIANCHI, Reinaldo A. C. Robótica. Centro Universitário da FEI. 2011. Disponível em:


<http://fei.edu.br/~rbianchi/robotica/>, acesso em 31.10.2012.

BRÄUNL, Thomas. Embedded Robotics: Mobile Robot Design and Applications with
Embedded Systems. Springer Science & Business Media. 2 ed. 2008

BERNARDI, Reinaldo de; FORNER-CORDERO, Arturo; CRUZ, José Jaime Da.


Biologically InspiredLocomotion Control of a Climbing Robot. Biomimetic Based
Applications, Prof. Marko Cavrak (Ed.), ISBN: 978-953-307-195-4, InTech. 2011.
Disponível em: <http://cdn.intechopen.com/pdfs-wm/15776.pdf>, acesso em 05.02.2015.

BISHOP, Robert H. Mechatronics: an introduction. CRC Press, Taylor & Francis


Group, LLC. 2006.

CAMPOS, Ricardo; MATOS, Vitor; SANTOS, Cristina. Hexapod locomotion: A


nonlinear dynamical systems approach. IECON 2010-36th Annual Conference on
IEEE Industrial Electronics Society. IEEE. p. 1546-1551. 2010. Disponível em:
<http://www.researchgate.net/profile/Cristina_Santos6/publication/224207895_Hexapod_l
ocomotion_A_nonlinear_dynamical_systems_approach/links/540849680cf23d9765afc27f.
pdf>, acesso em 27.03.2014.

CLARKE. Roger. Asimov’s Laws of Robotics Implications for Information


Technology. IEEE Computer 26,12; 27,1. 1994. Disponível em:
<http://www.rogerclarke.com/SOS/Asimov.html>, acesso em 13.11.2012

DEMASI, Djalma. Modelagem Dinâmica e de Controle de um Mecanismo de três


Graus de Liberdade para aplicação em um Robô Hexápode. 2012. Disponível em:
<http://dippg.cefet-
rj.br/index.php?option=com_docman&task=doc_download&gid=1174&Itemid=159>,
acesso em 25.10.2012

DENARDIN, Gustavo Weber. Microcontroladores. 2010.34 f. Apostila – Coordenação


de Eletrônica - COELE, Universidade Tecnológica Federal do Paraná - UTFPR, Pato
Branco, 2010. Disponível em: < http://pessoal.utfpr.edu.br/gustavo/apostila_micro.pdf>,
acesso em 15.03.2015.

ERDEN, Mustafa Suphi. Six-legged walking machine: the Robot-EA308. Tese de


Doutorado. Middle East Techinical University. 2006. Disponível em:
<http://etd.lib.metu.edu.tr/upload/12607356/index>, acesso em 01.11.2012.
118 
 

FERRELL, Cynthia. A comparison of three insect-inspired locomotion


controllers. Robotics and autonomous systems, v. 16, n. 2, p. 135-159. 1995. Disponível
em: <http://web.media.mit.edu/~cynthiab/Papers/Breazeal-RAS95.pdf>, acesso em
05.03.2015.

FERREIRA, Edson de Paula . Robótica Básica: Modelagem de robôs. Campinas:


R.Vieira, 1991.
FREIRE, Ananda Lima. Rede Neural Artificial Aplicada à Navegação de uma Unidade
Robótica Móvel. Instituto Federal de Eduação, Ciência e Tecnologia do Ceará. 2007.

GUIMARÃES, Fábio de Almeida. Desenvolvimento de robô móvel utilizado para a


exploração de ambientes hostis. São Caetano do Sul. 2007. Disponível em:
<https://www.google.com.br/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&uact
=8&ved=0CB0QFjAA&url=http%3A%2F%2Fwww.maua.br%2Farquivos%2Fdissertacao%
2Fh%2Fd5a9bfc19e4814517fc93c2fa97bef59&ei=FaQ9VfD-
BMayggT4tYCQBA&usg=AFQjCNGgJHqp1IPt09H_zjEmXVlHrfwZDw&sig2=Oi9SGID7nQ
afnaXZ9gs9cA&bvm=bv.91665533,d.eXY>, acesso em 12.11.2014.

HARTENBERG, Richard Scheunemann; DENAVIT, Jacques. Kinematic synthesis of


linkages. McGraw-Hill, 1964. Disponível em:
<http://ebooks.library.cornell.edu/k/kmoddl/toc_hartenberg1.html>, acesso em
03.06.2014.

HIRANO, Laos Alexandre. Trajetórias Caóticas para o Problema da Exploração de


Terrenos com Metas de Busca ou Vigilância usando Robôs Móveis. 2006. Disponível
em:
<http://www.em.ufop.br/cecau/monografias/2006/LAOS%20HIRANO.pdf>, acesso em
30.10.2012.

JÁCOBO, Justo E. A. Desenvolvimento de um Robô Autônomo Móvel Versátil


Utilizando Arquitetura Subsumption. Curso de Engenharia Mecânica da Universidade
Estadual de Campinas, São Paulo. 2001. Disponível em:
<http://www.fem.unicamp.br/~lva/pdf/Pablo/TeseJustoEmilioAlvarez2001.pdf>, acesso em
18.08.2013

JÚNIOR, Orivaldo Vieira de Santana. Mapa auto-organizável para controle e


gerenciamento de locomoção artificial. 2010. Disponível em
<http://orivaldo.net/web/projetos.html>, acesso em 28.10.2012.

KINGSLEY, Daniel A. A cockroach inspired robot with artificial muscles. Intelligent


Robots and Systems, IEEE/RSJ International Conference on. IEEE, 2006. p. 1837-1842.
2005. Disponível em
<http://bdmlx.stanford.edu/twiki/pub/HSR/HumanSafeRobot/Kingsley_thesis.pdf>, acesso
em 11.09.2014.

KURFESS, Thomas R. Robotics and Automation Handbook. CRC Press LLC, 2005.

LINDSTRÖM, Mattias; PERSSON, Fredrik. The Memec Hexapod Robot: a


demonstration platform. 2010. Disponível em: <http://www.diva-
portal.org/smash/record.jsf?pid=diva2%3A357559&dswid=2907>, acesso em 15.05.2014.
119 
 

MACHADO, J. A. Tenreiro. Sistemas Robóticos de Locomoção – Estado da Arte.


Departamento de Engenharia Eletrotécnica, Instituto Superior de Engenharia do Porto.
Porto, Portugal. 2001. Disponível em:
http://www.dei.isep.ipp.pt/~ana/ROBOTICA/docs/sistemas_roboticos_locomocao_artigo.p
df, acesso em 29.11.2012.

MANOONPONG, Poramate; WÖRGÖTTER, Florentin; PASEMANN, Frank. Biological


inspiration for mechanical design and control of autonomous walking robots:
Towards life-like robots. The International Journal of Applied Biomedical Engineering
(IJABME), v. 3, n. 1, p. 1-12, 2010. Disponível em:
<https://users.dimi.uniud.it/~antonio.dangelo/Robotica/2012/helper/leggedRobot/Towards
_Life-like_Robots_bio.pdf>, acesso em 10.09.2014.

MARCHI, Jerusa. Navegação de Robôs Móveis Autônomos: Estudo e


Implementação de Aborgadens. Universidade Federal de Santa Catarina. 2001.
Disponível em: <https://repositorio.ufsc.br/xmlui/handle/123456789/81441>, acesso em
29.03.2013.

MOSHER, Ralph S. Handyman to hardiman. SAE Technical Paper, 1967. Disponível


em: <http://cyberneticzoo.com/wp-content/uploads/2010/04/Mosher-Handyman-to-
Hardiman-1967.pdf>, acesso em 05.06.2014.

NAGRATH, I. J.; MITTAL, R. K. Robotics and Control. 6. ed. Nova Deli: Tata McGraw-
Hill, 2007.
PIERI, Edson Roberto de. Curso de Robótica Móvel. UFSC–Universidade Federal de
Santa Catarina, 2002. Disponível em:
<http://www.adororobotica.com/CURSO_DE_ROBOTICA_MOVEL.pdf>, acesso em
04.09.2012.

NORTON, Robert L. Projeto de Máquinas: uma abordagem integrada. 2.ed São Paulo:
ARTMED, 2004. PRETZER, Willian S. Industrial Robot. Net, S.L, S.D. Disponível em:
<http://www.madehow.com/Volume-2/Industrial-Robot.html#b>, acesso em 14.12.2012

PRAÇA, Paulo. PWM - Modulação por Largura de Pulso. Prática 05. Universidade
Federal do Ceará. Técnicas Avançadas em Eletrônica Digital. Departamento de
Engenharia Elétrica. 2012.

RAIBERT, Marc H. Legged robots. Communications of the ACM, Volume 29, número
6:499–514. 1986. Disponível em:
<http://www.sci.brooklyn.cuny.edu/~sklar/teaching/f06/air/papers/p499-raibert.pdf>,
acesso em 03.06.2014.

RIBEIRO, Maria Isabel. Uma Viagem ao Mundo dos Robots. Ciclo Colóquios
Despertar para a Ciência. Universidade do Porto, p.1. 2004. Disponível em:
<http://users.isr.ist.utl.pt/~mir/pub/ViagemRobots-IsabelRibeiro05.pdf>, acesso em
28.10.2012.

RIDDERSTRÖM, Christian. Legged locomotion: Balance, control and tools-from


equation to action. Tese de Doutorado. Department of Machine Design. Royal Institute
of Technology. Stockholm, Sweden. 2003. Disponível em:
<http://www.diva-portal.org/smash/get/diva2:9324/FULLTEXT01.pdf>, acesso em
01.11.2012.
120 
 

ROSÁRIO, João Maurício. Princípios de Mecatrônica, 1.ed. São Paulo-SP: Pearson


Prentice Hall, 2005.

SANTOS, André. Servomotores. Porto Alegre. 2007. Disponível em:


<http://www.pictronics.com.br/downloads/apostilas/servomotores.pdf>, acesso em
21.08.2012.

SCHNEIDER A.; SCHMUCKER U. Force Sensing for Multi-Legged Walking Robots:


Theory and Experiments Part 1: Overview and Force Sensing. Mobile Robotics,
Moving Intelligence, Jonas Buchli (Ed.), ISBN: 3-86611-284-X, InTech. (2006). Disponível
em: <http://cdn.intechopen.com/pdfs-wm/98.pdf>, acesso em 03.02.2015.

SECCHI, Humberto Alejandro. Uma Introdução aos Robôs Móveis. Tradução de


Cynthia Netto de Almeida e Felipe Nascimento Martins. Núcleo de Estudo de Robótica e
Automação. Instituto Federal de Eduação, Ciência e Tecnologia do Espírito Santo. 2012.
Disponível em: <http://www.obr.org.br/wp-
content/uploads/2013/04/Uma_Introducao_aos_Robos_Moveis.pdf>, acesso em
27.09.2013.

SIEGWART, Roland; NOURBAKHSH, Illah Reza. Introduction to autonomous mobile


robots. MIT press. Cambridge, Massachusetts. London, Engrand. 2011.

SHIGLEY, Joseph Edward. Projeto de engenharia mecânica. Bookman. Michigan, USA.


2005.

SILVA, Regiane de Souza e. Locomoção de Robôs Caminhantes Inspirada em


Sistemas Biológicos. 2005. Disponível em:
<http://www.em.ufop.br/cecau/monografias/2005/REGIANE%20DE%20SOUZA%20E%20
SILVA.pdf>, acesso em 18.08.2012.

SOUZA, J. A. M. Felipe de. Robótica, Cap.1-Introdução aos Robôs, 2005. Disponível


em: <http://webx.ubi.pt/~felippe/main_pgs/mat_didp.htm>, acesso em 30.10.2012.

SOUZA, J. A. M. Felipe de. Robótica, Cap.3-Robôs na Indústria, 2005. Disponível em:


<http://webx.ubi.pt/~felippe/main_pgs/mat_didp.htm>, acesso em 30.10.2012.

SOUZA, J. A. M. Felipe de. Robótica, Cap.4-Robôs não Industriais, 2005. Disponível


em: <http://webx.ubi.pt/~felippe/main_pgs/mat_didp.htm>, acesso em 30.10.2012.

TEDESCHI, Franco; CARBONE, Giuseppe. Design Issues for Hexapod Walking


Robots. Robotics, v. 3, n. 2, p. 181-206, 2014. Disponível em: <https://mdpi.com/2218-
6581/3/2/181/robotics-03-00181.pdf>, acesso em 05.02.2015.

VIEIRA, Jardel. Uma Introdução ao Projeto e Desenvolvimento de Robôs Autômatos


que Caminham. Universidade Federal de Goiás. 2010. Disponível em:
<http://www.sbpcnet.org.br/livro/63ra/conpeex/pibic/trabalhos/JARDEL_V.PDF>, acesso
em 01.11.2012.

WOERING, Ing. R. Simulating the “first steps” of a walking hexapod robot.University


of Technology Eindhoven, 2011. Disponível em:
<http://www.mate.tue.nl/mate/pdfs/12670.pdf>, acesso em 05.02.2015.

http://www.ai.sri.com/shakey. Acesso em 14.11.2012.


121 
 

http://www.olive-drab.com. Acesso em 30.11.2012.

http://www.impactlab.net. Acesso em 30.11.2012.

http://www.gizmag.com. Acesso em 30.11.2012.

http://www.inovaçãotecnológica.com.br. Acesso em 30.11.2012.

http://news.seadicovery.com. Acesso em 30.11.2012.

http://www.irobot.com. Acesso em 30.11.2012.

http://www.lynxmotion.com. Acesso em 30.11.2012.

http://www.nasa.gov. Acesso em 29.03.2013

http://www.coreconagvs.com. Acesso em 25.10.2013

http://www.ai.mit.edu. Acesso em 06.07.2014

http://www.bostondynamics.com. Acesso em 06.07.2014

http://www.lynxmotion.com. Acesso em 02.04.2012. 


122 
 

APÊNDICE A

Lista de componentes e custos

Componente Quantidade Valor Unitário (em


Reais)
Chapa acrílico 2,5mm 3 15,00
Cantoneira Alumínio “U” 2 16,00
Parafusos 2mm 60 00,15
Placa protótipo de fenolite 1 5,00
LM317 5 2,00
LM7805 1 2,00
Resistores 2 00,10
Botão com trava 1 10,00
Bateria 1 60,00
Servomotores TP 9g 25 8,00
Conectores e pinos 10 20,00
Ferro de Solda 1 30,00
Micro Retífica Dremel 1 300,00
Módulo TIERTEX 1 45,00
TOTAL 948,2
123 
 

APÊNDICE B

CÓDIGO PIC

//HEXAPODE 

#include <p18cxxx.h> 

#include <delays.h> 

void YourHighPriorityISRCode(); 

void YourLowPriorityISRCode(); 

//variáveis 

//configuração do PWM 

long int p_alta = 0xFF, 

         p_baixa = 0x37, 

         limite = 1820;//4 ciclos de 20ms/ que não tremem os motores 

short int flag = 0; 

long int serra=0; 

long int ref[]={35,75,130};//1ms,1,5ms e 2ms em nível alto; valores que não vibram 

int motor[]={243,//0b11110011, seta toda a porta D(BASE) 

            251,//0b11111011, seta toda a porta B(ART2) 

            63//0b00111111, seta toda a porta A(ART1) 

}; 

#define BOOTVERSION        // Using a PICKIT? comment this line out for a non‐
bootloaded version 

#if !defined BOOTVERSION    // Bootloaded code cannot set configuration register.   
124 
 

     #pragma config PLLDIV   = 5         // (20 MHz crystal ) 

     #pragma config CPUDIV   = OSC1_PLL2    

     #pragma config USBDIV   = 2         // Clock source from 96MHz PLL/2 

     #pragma config FOSC     = HSPLL_HS   // 48Mhz operation 

     #pragma config FCMEN    = OFF 

     #pragma config IESO     = OFF 

     #pragma config PWRT     = OFF 

     #pragma config BOR      = ON 

     #pragma config BORV     = 3 

     #pragma config VREGEN   = ON      //USB Voltage Regulator 

     #pragma config WDT      = OFF 

     #pragma config WDTPS    = 32768 

     #pragma config MCLRE    = ON 

     #pragma config LPT1OSC  = OFF 

     #pragma config PBADEN   = OFF 

     #pragma config STVREN   = ON 

     #pragma config LVP      = OFF 

     #pragma config XINST    = OFF       // Extended Instruction Set 

     #pragma config CP0      = OFF 

     #pragma config CP1      = OFF 

     #pragma config CPB      = OFF 

     #pragma config WRT0     = OFF 

     #pragma config WRT1     = OFF 

     #pragma config WRTB     = OFF       // Boot Block Write Protection 

     #pragma config WRTC     = OFF 

     #pragma config EBTR0    = OFF 

     #pragma config EBTR1    = OFF 
125 
 

     #pragma config EBTRB    = OFF 

#endif 

// set addresses of reset, high int and low int. 

#if defined BOOTVERSION 

  #define REMAPPED_RESET_VECTOR_ADDRESS      0x1000 

  #define REMAPPED_HIGH_INTERRUPT_VECTOR_ADDRESS  0x1008 

  #define REMAPPED_LOW_INTERRUPT_VECTOR_ADDRESS  0x1018 

#else 

  #define REMAPPED_RESET_VECTOR_ADDRESS      0x00 

  #define REMAPPED_HIGH_INTERRUPT_VECTOR_ADDRESS  0x08 

  #define REMAPPED_LOW_INTERRUPT_VECTOR_ADDRESS  0x18 

#endif 

// If bootloaded a reset vector needs to be added at 0x1000 to point to 'c' start‐up code. 

// It's done automatically for non‐bootloaded code. 

#if defined(BOOTVERSION) 

  extern void _startup (void);        //  This runns the 'c' statud routines in c018i.c (system 'c' 
file)  

  #pragma code REMAPPED_RESET_VECTOR = REMAPPED_RESET_VECTOR_ADDRESS 

  void _reset (void) 

  { 

      _asm goto _startup _endasm 

  } 

#endif 

// Insert actual interrupt vectors 

#pragma code REMAPPED_HIGH_INTERRUPT_VECTOR = 
REMAPPED_HIGH_INTERRUPT_VECTOR_ADDRESS 

  void Remapped_High_ISR (void) 
126 
 

  { 

       _asm goto YourHighPriorityISRCode  _endasm 

  } 

#pragma code REMAPPED_LOW_INTERRUPT_VECTOR = 
REMAPPED_LOW_INTERRUPT_VECTOR_ADDRESS 

  void Remapped_Low_ISR (void) 

  { 

       _asm goto YourLowPriorityISRCode _endasm 

  } 

// This bit of code is for safety, but not always needed. It puts interuupt vectors at 0x8 and 0x18 in 
case you program a bootversion  

// of this code on a system not using the bootloader. The bootloader ignores all code below 
0x1000 so will not program this. 

#if defined(BOOTVERSION) 

#pragma code HIGH_INTERRUPT_VECTOR = 0x08 

  void High_ISR (void) 

  { 

       _asm goto REMAPPED_HIGH_INTERRUPT_VECTOR_ADDRESS _endasm 

  } 

#pragma code LOW_INTERRUPT_VECTOR = 0x18 

  void Low_ISR (void) 

  { 

       _asm goto REMAPPED_LOW_INTERRUPT_VECTOR_ADDRESS _endasm 

  } 

#endif   

#pragma code 

//These are your actual interrupt handling routines. 

// 
127 
 

#pragma interrupt YourHighPriorityISRCode 

  void YourHighPriorityISRCode() 

  { 

  // for this demo we will use a timer interrupt to toggle the LED RE0 (RD2 TDS4550MINI)
   

  if (INTCONbits.TMR0IF == 1 )        // is it a timer 0 interrupt? 

    {     

    INTCONbits.TMR0IF = 0;          // yes, so reset the 
interrupt flag. 

                TMR0L = p_baixa; 

                TMR0H = p_alta; 

          serra++; 

                flag=1; 

                       } 

  }  //This return will be a "retfie fast", since this is in a #pragma interrupt section  

#pragma interruptlow YourLowPriorityISRCode 

  void YourLowPriorityISRCode() 

  { 

    //Check which interrupt flag caused the interrupt. 

    //Service the interrupt 

    //Clear the interrupt flag 

    //Etc. 

  }   

void pwm_base(); 

void pwm_art1(); 

void pwm_art2(); 

void repouso(); 

 
128 
 

void main() 

     ADCON1 = 0x0F;           // Default all pins to 
digital 

    

    // set up the Port I/O directions 

    TRISD = 0;//Pinos utilizados: 0b00000000, mas D2 e D3 são LEDS 

                TRISB = 0b00000100;//Pinos utilizados: 0b00000100. pois B3 é um botão 

                TRISA = 0;//Pinos utilizados: 0b00000000 

    // set up the Timer 0 interrupt. 

    T0CON = 0x88;           // 16 bit timer, 1 prescaler. ( 
interrupt every 20000000 / 4*1*65536 ) 

                TMR0L = p_baixa; 

                TMR0H = p_alta; 

    INTCON2bits.TMR0IP = 1;       // Make the Timer 0 interrupt a 
high priority interrupt 

    INTCONbits.TMR0IE = 1;       // Enable the Timer 0 interrupt 

     INTCONbits.GIE=1;         // Global interrupts on 

                                

    while(1) 

                { 

                    PORTDbits.RD2 = 1;//Para led mostrar que o sistema está ligado 

                if (serra==limite)serra=0;//período aproximado de 20ms necessário para serra 

                repouso();     

                           } 
129 
 

//FUNÇÕES DO PROGRAMA 

/*Função PWM possui como primeiro valor a referência e segundo valor os pinos ativados no 
PWM*/ 

//void pwm_base(referencia de tempo, pinos setados) 

void pwm_base(int aux, int aux2)//{35,75,130};//1ms,1,5ms e 2ms em nível alto 

{ if (serra<=aux) 

     LATD = aux2;//pinos da porta setados em nível alto 

     else LATD = 0;//pulso baixo no resto do tempo 

void pwm_art1(int aux, int aux2) 

{ if (serra<=aux) 

     LATA = aux2; 

     else LATA = 0;//pulso baixo no resto do tempo 

void pwm_art2(int aux, int aux2) 

{ if (serra<=aux) 

     LATB = aux2; 

     else LATB = 0;//pulso baixo no resto do tempo 

void repouso()//Falta um timer pra garantir a posição do robô 

pwm_base(ref[1],motor[0]);//void pwm_XXX(referencia de tempo, pinos setados) 

pwm_art1(ref[1],motor[2]);//{35,75,130};//1ms,1,5ms e 2ms em nível alto 

pwm_art2(ref[1],motor[1]); 


130 
 

Programa Utilizando o case:


//HEXAPODE

#include <p18cxxx.h>
#include <delays.h>
void YourHighPriorityISRCode();
void YourLowPriorityISRCode();

//variáveis
//configuração do PWM
int p_alta = 0xFF,
p_baixa = 0x9B;//155 no timer

short int flag = 0;

int function = 0;//Funcção para swtich que muda conforme aperta o botão B2

long int serra=0;//Contador do dente de serra


long int limite = 2000;//4 ciclos de 20 ms; Contador do limite do dente de serra

int ref[]={100,150,150};//Tabela de referência de tempo de PWM


int ref_b=150,
ref_1=100,
ref_2=125;

int base=243,//0b11110011, seta toda a porta D(BASE)


art1=63,//0b00111111, seta toda a porta A(ART1)
art2=251;//0b11111011, seta toda a porta B(ART2)

int motor []={243, //0b11110011, seta toda a porta D(BASE)


63,//0b00111111, seta toda a porta A(ART1)
251};//0b11111011, seta toda a porta B(ART2)
131 
 

long int aux=0;

#define BOOTVERSION // Using a PICKIT? comment this


line out for a non-bootloaded version

#if !defined BOOTVERSION // Bootloaded code cannot set


configuration register.
#pragma config PLLDIV = 5 // (20 MHz crystal )
#pragma config CPUDIV = OSC1_PLL2
#pragma config USBDIV = 2 // Clock source from 96MHz PLL/2
#pragma config FOSC = HSPLL_HS // 48Mhz operation
#pragma config FCMEN = OFF
#pragma config IESO = OFF
#pragma config PWRT = OFF
#pragma config BOR = ON
#pragma config BORV =3
#pragma config VREGEN = ON //USB Voltage Regulator
#pragma config WDT = OFF
#pragma config WDTPS = 32768
#pragma config MCLRE = ON
#pragma config LPT1OSC = OFF
#pragma config PBADEN = OFF
#pragma config STVREN = ON
#pragma config LVP = OFF
#pragma config XINST = OFF // Extended Instruction Set
#pragma config CP0 = OFF
#pragma config CP1 = OFF
#pragma config CPB = OFF
#pragma config WRT0 = OFF
#pragma config WRT1 = OFF
#pragma config WRTB = OFF // Boot Block Write Protection
#pragma config WRTC = OFF
#pragma config EBTR0 = OFF
132 
 

#pragma config EBTR1 = OFF


#pragma config EBTRB = OFF
#endif

// set addresses of reset, high int and low int.


#if defined BOOTVERSION
#define REMAPPED_RESET_VECTOR_ADDRESS 0x1000
#define REMAPPED_HIGH_INTERRUPT_VECTOR_ADDRESS 0x1008
#define REMAPPED_LOW_INTERRUPT_VECTOR_ADDRESS 0x1018
#else
#define REMAPPED_RESET_VECTOR_ADDRESS 0x00
#define REMAPPED_HIGH_INTERRUPT_VECTOR_ADDRESS 0x08
#define REMAPPED_LOW_INTERRUPT_VECTOR_ADDRESS 0x18
#endif

// If bootloaded a reset vector needs to be added at 0x1000 to point to 'c' start-up


code.
// It's done automatically for non-bootloaded code.
#if defined(BOOTVERSION)
extern void _startup (void); // This runns the 'c' statud routines in
c018i.c (system 'c' file)
#pragma code REMAPPED_RESET_VECTOR =
REMAPPED_RESET_VECTOR_ADDRESS
void _reset (void)
{
_asm goto _startup _endasm
}
#endif

// Insert actual interrupt vectors


#pragma code REMAPPED_HIGH_INTERRUPT_VECTOR =
REMAPPED_HIGH_INTERRUPT_VECTOR_ADDRESS
void Remapped_High_ISR (void)
133 
 

{
_asm goto YourHighPriorityISRCode _endasm
}
#pragma code REMAPPED_LOW_INTERRUPT_VECTOR =
REMAPPED_LOW_INTERRUPT_VECTOR_ADDRESS
void Remapped_Low_ISR (void)
{
_asm goto YourLowPriorityISRCode _endasm
}

// This bit of code is for safety, but not always needed. It puts interuupt vectors at
0x8 and 0x18 in case you program a bootversion
// of this code on a system not using the bootloader. The bootloader ignores all
code below 0x1000 so will not program this.
#if defined(BOOTVERSION)
#pragma code HIGH_INTERRUPT_VECTOR = 0x08
void High_ISR (void)
{
_asm goto REMAPPED_HIGH_INTERRUPT_VECTOR_ADDRESS
_endasm
}
#pragma code LOW_INTERRUPT_VECTOR = 0x18
void Low_ISR (void)
{
_asm goto REMAPPED_LOW_INTERRUPT_VECTOR_ADDRESS
_endasm
}

#endif

#pragma code
134 
 

//These are your actual interrupt handling routines.


//
#pragma interrupt YourHighPriorityISRCode
void YourHighPriorityISRCode()
{
// for this demo we will use a timer interrupt to toggle the LED RE0 (RD2
TDS4550MINI)
if (INTCONbits.TMR0IF == 1 ) // is it a timer 0
interrupt?
{
INTCONbits.TMR0IF = 0; // yes, so reset
the interrupt flag.
TMR0L = p_baixa;
TMR0H = p_alta;
serra++;
flag=1;

}
} //This return will be a "retfie fast", since this is in a #pragma interrupt
section

#pragma interruptlow YourLowPriorityISRCode


void YourLowPriorityISRCode()
{
//Check which interrupt flag caused the interrupt.
//Service the interrupt
//Clear the interrupt flag
//Etc.
}
135 
 

void pwm_base();
void pwm_art1();
void pwm_art2();
void acordar();

void main()
{

ADCON1 = 0x0F; // Default all pins to


digital

// set up the Port I/O directions


TRISD = 0;//Pinos utilizados: 0b00000000, mas D2 e D3 são LEDS
TRISB = 0b00000100;//Pinos utilizados: 0b00000100. pois B3 é um
botão
TRISA = 0;//Pinos utilizados: 0b00000000

// set up the Timer 0 interrupt.


T0CON = 0xC8; // 16 bit timer, 1
prescaler. ( interrupt every 20000000 / 4*1*65536 )
TMR0L = p_baixa;
TMR0H = p_alta;
INTCON2bits.TMR0IP = 1; // Make the Timer 0
interrupt a high priority interrupt
INTCONbits.TMR0IE = 1; // Enable the Timer 0
interrupt
INTCONbits.GIE=1; // Global interrupts on

while(1)
136 
 

{
PORTDbits.RD2 = 1;//Para led mostrar que o sistema está ligado

switch (function)
{
case 0:// acordar(); //Essa função coloca todos as articulações em
pouco mais de 90º
if (serra<=ref[0]) LATB=art2; else LATB=0;
if (serra<=ref[1])
{
LATA=art1;
LATD=base;
}
else {LATA=0;LATD=0;}
break;
case 1://Robô se retrai
if (serra<=ref_b)
LATD = motor[0]; else LATD=0;
if (ref_b>=150) ref_b=150;
if (serra<= ref_1){LATA = motor[1]; LATB=motor[2];} else
{LATA=0;LATB=0;}
if (ref_1<=50) ref_1=50;
break;
case 2://acionamento de patas

break;
}
if (serra==limite){serra=0;ref_b++;ref_1--;}

}
}
137 
 

//FUNÇÕES DO PROGRAMA
/*Função PWM possui como primeiro valor a referência e segundo valor os pinos
ativados no PWM*/
//void pwm_base(referencia de tempo, pinos setados)
void pwm_base(int aux, int aux2)//{35,75,130};//1ms,1,5ms e 2ms em nível alto
{ if (serra<=aux)
LATD = aux2;//pinos da porta setados em nível alto
else LATD = 0;//pulso baixo no resto do tempo
}

void pwm_art1(int aux, int aux2)


{ if (serra<=aux)
LATA = aux2;
else LATA = 0;//pulso baixo no resto do tempo
}

void pwm_art2(int aux, int aux2)


{ if (serra<=aux)
LATB = aux2;
else LATB = 0;//pulso baixo no resto do tempo
}

void acordar()
{
if (serra<=ref[1])
{
LATA=art1;
LATD=base;
}
else {LATA=0;LATD=0;}
if (serra<=ref[0]) LATB=art2; else LATB=0;
}
138 
 

APÊNDICE C

Programa em Arduino para ciclo de uma pata


 

// Sweep 

// by BARRAGAN <http://barraganstudio.com>  

// This example code is in the public domain. 

#include <Servo.h>  

Servo base; 

Servo art1; 

Servo art2; // create servo object to control a servo  

                // a maximum of eight servo objects can be created  

//variable to store the servo position  

void setup()  

{  

  base.attach(11); 

  art1.attach(12); 

  art2.attach(13);// attaches the servo on pin 9 to the servo object  

}  

void loop() 

art2.write(90); 

  int c = 90; 

  for (int i = 110; i > 0; i‐‐) 

     {   

  art1.write(i); 

  base.write(i); 
139 
 

  delay(30);   

  if (c > 30) 

  art2.write(c); 

  delay (30); 

   c = c‐1;  

}   

  }  

  for (int i = 0; i < 110; i++) 

  { 

    art1.write(i); 

    delay (30);  

if (c < 90) 

art2.write(c); 

delay(30); 

c = c+1; 

for (int i = 0; i < 110; i++) 

base.write(i); 

delay(30); 

delay(30); 

 
140 
 

APÊNDICE D

Você também pode gostar