Escolar Documentos
Profissional Documentos
Cultura Documentos
MANAUS – AM
2007
Universidade do Estado do Amazonas – UEA
Escola Superior de Tecnologia – EST
MANAUS – AM
2007
2
Universidade do Estado do Amazonas – UEA
Escola Superior de Tecnologia – EST
Banca Examinadora:
Nome:
____________________________________________________________________
Nome:
____________________________________________________________________
Nome:
___________________________________________________________________
MANAUS – AM
2007
3
Dedicatória
4
Agradecimentos
5
Resumo
6
Sumário
1 Introdução ..............................................................................................................9
1.1 Situação Problemática....................................................................................9
1.2 Justificativa ..................................................................................................10
1.3 Objetivos deste Trabalho .............................................................................10
1.4 Organização deste trabalho ..........................................................................11
2 Revisão da Literatura ...........................................................................................12
2.1 Robótica .......................................................................................................12
2.1.1 Definição de Robô ...............................................................................12
2.1.2 Robô Móvel .........................................................................................13
2.2 Robôs Móveis ..............................................................................................13
2.3 Modelo Cinemático do Robô Móvel............................................................16
2.3.1 Modelos Cinemáticos e Restrições ......................................................16
2.3.1.1 Representação da Posição do Robô .................................................17
2.3.1.2 Modelos de Cinemática Direta.........................................................19
2.3.1.3 Restrições Cinemáticas de Rodas ....................................................21
2.3.1.4 Mobilidade e Classificação de Robôs Móveis .................................24
2.3.1.5 Modelo Cinemático de Postura........................................................27
3 Concepção do Projeto do Robô Móvel ................................................................31
3.1 O microcontrolador Atmel AVR ATMEGA16 ...........................................31
3.1.1 Ferramentas de desenvolvimento.........................................................33
3.1.1.1 Hardware..........................................................................................33
3.1.1.2 Software ...........................................................................................34
3.1.2 Procedimentos Básicos para o Funcionamento....................................38
3.1.2.1 Registros de configuração................................................................38
3.1.2.2 Seleção da freqüência do relógio .....................................................40
3.1.3 Funcionalidades particulares................................................................41
3.2 Sensores .......................................................................................................42
3.2.1 Sensores de Toque ...............................................................................43
3.2.2 Sensores de Distância ..........................................................................43
3.2.3 Sensores de Proximidade .....................................................................43
3.2.4 Sensores de Visão ................................................................................44
3.3 Motores ........................................................................................................44
3.4 Baterias ........................................................................................................45
3.5 Modelo Cinemático do Robô WinoFire.......................................................46
3.6 Modelo Cinemático de Postura do WinoFire...............................................46
4 Resultados ............................................................................................................49
4.1 Robô Autônomo Inteligente: WinoFire .......................................................49
4.2 Características do robô WinoFire ................................................................50
4.2.1 Motores ................................................................................................51
4.2.2 Sensores ...............................................................................................51
4.2.3 Bateria ..................................................................................................51
4.2.4 Sistema Eletrônico ...............................................................................52
4.3 Testes e Resultados ......................................................................................52
5 Conclusões ...........................................................................................................53
7
5.1 Conclusões ...................................................................................................53
5.2 Trabalhos Futuros ........................................................................................53
8
Capítulo 1
1 Introdução
Cada vez mais a interação entre homem máquina pode ser vista em nossos
dias. Seja desde a compra de um jornal até o piloto automático de um avião, os
sistemas automatizados fazem parte da vida cotidiana de bilhões de pessoas no
mundo. E com o avanço da tecnologia e com o melhoramento do desempenho de
sensores, sistemas robóticos móveis têm ganhado mais espaço no cenário comercial e
industrial.
9
No futuro, robôs móveis dotados com biosensores poderão auxiliar soldados
ante o perigo de armas químicas, identificando a presença e a natureza dos gases, e
alertando os humanos. Robôs móveis voadores poderão ainda monitorar e
supervisionar a poluição do meio ambiente.
1.2 Justificativa
10
1.4 Organização deste trabalho
• Capítulo 2: Neste capítulo está uma revisão da literatura sobre o tema robótica,
conceitos de modelagem de robôs móveis, mostrando a modelagem cinemática e
como os aspectos estruturais, como número de rodas e suas características podem
influenciar no modelo cinemático do robô móvel como um todo.
• Capítulo 3: Este capítulo está dividido em duas partes: Na primeira parte são
mostradas características de microcontrolador em geral, critério para seleção do
microcontrolador, características e tipos de sensores e atuadores utilizados no
robô. E numa segunda parte tem o modelo cinemático do robô WinoFire,
construído neste trabalho;
11
Capítulo 2
2 Revisão da Literatura
2.1 Robótica
12
2.1.2 Robô Móvel
É necessário também definir o que vem a ser um robô móvel. Segundo ( Muir,
1988), define o robô como: : “um robô capaz de se locomover sobre um superfície
somente através da atuação de rodas montadas no robô e em contato com a superfície”
(Victorino,1998). Por meio da rotação das rodas é obtido um movimento relativo
entre o eixo do robô e a superfície de contato.
13
pesquisa para estes robôs. Houve falta de perspectivas palpáveis por parte dos
pesquisadores, como por parte dos financiadores que queriam resultados imediatos.
Desta forma, houve ascensão dos robôs manipuladores de aplicação imediata e de
resultados palpáveis a curto prazo. Com a tecnologia dos microprocessadores uma
retomada do interesse pelos robôs móveis,
14
robótica integrando muitos sensores e atuadores em um espaço pequeno, formando
uma espécie de comunidade robótica estruturada a partir destes indivíduos. Este
projeto foi inspirado em colônias de formigas.
15
2.3 Modelo Cinemático do Robô Móvel
16
Descrever um modelo para o movimento do robô como um todo é um
processo bottom-up. Cada roda individualmente contribui com o movimento do robô
e, ao mesmo tempo, impõe restrições à sua locomoção. Rodas estão ligadas à
geometria do chassi do robô, e consequentemente suas restrições são combinadas
formando restrições no movimento geral do robô. Entretanto as forcas e restrições de
cada roda devem ser expressas com respeito a um consistente Sistema de Referencia.
Isto é particularmente importante em robótica móvel porque de sua natureza móvel;
um claro mapeamento entre o Sistema de Referência Global e o sistema de Referência
Local é necessário. Pode-se começar definindo formalmente estes Sistemas de
Referencia, então usando o resultante formalismo para obter a cinemática das rodas
individualmente e do robô como um todo.
Através desta análise pode-se modelar o robô como um corpo rígido sobre
rodas, operando em um plano horizontal. A dimensionalidade total do chassi do robô
é igual a três, duas para sua posição no plano e uma para orientação ao longo do eixo
vertical, o qual é ortogonal ao eixo do plano. É claro que existem graus de liberdade
adicionais e flexibilidade devido aos eixos da rodas, juntas das rodas, e rodas bobas.
Contudo o chassi do robô pode ser somente referenciado como um corpo rígido,
ignorando juntas ou graus de liberdade internos do robô e de suas rodas.
17
elementos. Nota-se o subscrito I para mostrar a base desta posição como sendo em
relação ao sistema de referência global:
x
ξ I = y (2.1)
θ
cos θ senθ 0
R(θ ) = − senθ cos θ 0 (2.2)
0 0 1
18
Esta operação é denotada por R(θ )ξ&I porque a computação desta operação depende
do valor de θ:
π
Por exemplo, considerando o robô da Figura 2.3, tem – se um ângulo θ = ,
2
logo se pode facilmente computar a matriz de rotação instantânea R:
0 1 0
π
R ( ) = − 1 0 0 (2.4)
2
0 0 1
Dada uma velocidade ( x& , y& , θ&) no sistema de referência global pode-se
computar os componentes de movimento ao longo dos eixos locais XR e YR. Neste
caso, devido ao ângulo do robô, o movimento ao longo de XR é igual a y& e ao longo
de YR é x& :
0 1 0 x& y&
π &
ξ R = R( )ξ I = − 1 0 0 y& = − x&
& (2.5)
2
0 0 1 θ& θ&
19
o robô se move, dada sua geometria e as velocidades das rodas? A título de ilustração,
considere o exemplo mostrado na Figura 2.4.
Este robô com tração diferencial possui duas rodas, cada uma com diâmetro r.
Dado um ponto P no ponto central em relação às duas rodas motoras, cada roda tem
uma distância l de P. Dados r, l, θ, e a velocidade de rotação de cada roda, ϕ&1 e ϕ& 2 , a
modelo da cinemática direta pode prever a velocidade geral do robô como um todo no
sistema de referência global:
x&
ξ&I = y& = f (l , r ,θ , ϕ&1 , ϕ&2 ) (2.6)
θ&
rϕ&1
ω1 = (2.7)
2l
− rϕ& 2
ω2 = (2.8)
2l
20
Combinando estas equações individuais resulta em um modelo cinemático
para o robô com tração diferencial do exemplo:
rϕ&1 rϕ&2
2 + 2
ξ&I = R(θ ) −1 0
(2.9)
rϕ&1 + rϕ&2
2l 2l
Esta aproximação para a modelagem cinemática provê informação sobre o
movimento de um robô dado as componentes das velocidades das rodas em casos
onde o robô move-se para frente. Para os vários tipos de robôs existentes será
necessária à mesma análise de modo a verificar as componentes levando em
consideração as restrições impostas pela geometria e pela estrutura. A seguir será
mostrado como se podem verificar as restrições impostas pelo uso de rodas
adicionais, chamadas caster.
Figura 2.5 – Tipos de Rodas: (a) Roda Padrão. (b) Roda orientada fora do centro (Caster). (c)
Roda Sueca. (d) Roda Bola ou Esférica
21
Neste trabalho a proposta é estudar e verificar o comportamento de um robô
com tração diferencial, e usando uma roda do tipo Caster, este trabalho mostrará as
restrições vindas neste tipo de roda. Com o intuito de facilitar o modelo serão
realizadas algumas suposições. Será assumido que o plano das rodas sempre
permanece vertical e que em todos os casos sempre existe apenas um ponto de contato
entre a roda e o chão. Isto é, a roda entrará em movimento apenas sob condições de
rolamento puro.
22
A geometria do Castor possui significativo impacto sobre as restrições de
deslizamento. O tema crítico é que a força lateral sobre a roda ocorre no ponto A
porque este é o ponto de acoplamento da roda com o chassi do robô. A restrição pode
ser vista na equação a seguir:
23
2.3.1.4 Mobilidade e Classificação de Robôs Móveis
Um robô móvel pode ser equipado com N rodas, podendo ter Nf rodas fixas, Nc
rodas convencionais orientadas no centro, Nfc orientadas fora de centro, e Nsw rodas
suecas [JACOBO, 2001].
N=Nf+Nc+Nfc+Nsw
x
Postura ξ I = y
θ
ϕ f (t )
ϕ (t )
Coordenadas de Rotação, ângulos de rotação das rodas
ϕ = c ϕ
em torno do centro. ϕ fc (t )
ϕ sw (t )
N f + 2 N c + 2 N fc + N sw + 3 (2.13)
24
J1 f
J (β )
J1 ( β c , β fc ) = 1 f c ; J 2 = diag (r , r cos γ ) (2.18)
J1 fc ( β fc )
J1sw
J1f, J1c, Jfc, Jsw são matrizes com dimensões (Nf x 3), (Nc x 3). (Nfc x 3), (Nsw x
3), respectivamente, cuja forma vem diretamente das equações de restrições ao longo
do plano da roda. J2 é uma matriz (N x N) cuja diagonal são os raios das rodas suecas
o qual é multiplicado por cos γ .
C1 f 0
c1 ( β c , β fc ) = C1 f ( β c ) ; C 2 = 0 (2.19)
C ( β ) C
1 fc fc 2 fc
C1f, C1c, C1fc são matrizes com dimensões (Nf x 3), (Nc x 3), (Nfc x 3), cuja
forma vem diretamente das restrições na direção ortogonal ao plano da roda. C2fc é
uma matriz diagonal constante com elementos iguais a d, parâmetro das Nfc rodas
orientadas fora do centro (Caster).
π π
A1: Para cada roda sueca: γ ≠ . O valor de γ =
corresponderá à direção
2 2
da componente zero da velocidade que é ortogonal ao plano da roda. Tal roda seria
sujeita a uma restrição idêntica à restrição de não escorregamento das rodas
convencionais, daí o benefício de implementar rodas suecas.
25
C
C1* ( β c ) = 1 f (2.22)
C1c ( β c )
O grau de mobilidade para um robô móvel pode então ser definido da seguinte
forma
δ s = posto[C1c ( β c )]
26
Tabela 2.1 – Classes de robôs Móveis de acordo com ( δ m , δ s ).
δm 3 2 2 1 1
δs 0 0 1 1 2
1 ≤ δm ≤ 3 (2.24)
Os limites indicam o número máximo de graus de liberdade que o robô pode
ter no plano, as translações nas direções x, y e a rotação θ, e com no mínimo um
movimento possível.
1 ≤ δs ≤ 2 (2.25)
O limite superior aplica-se para os robôs sem rodas fixas (Nf = 0), e o inferior
corresponde aos robôs sem rodas convencionais orientadas no centro (Nc = 0).
81687054
2 ≤ δm + δs ≤ 3 (2.26)
São modelos matemáticos de estado que dão uma descrição geral dos robôs
móveis, permitindo que se discutam as propriedades de manobra do robô.
Possibilitam uma análise do robô dentro do contexto de sistemas não-holonômicos
[JACOBO, 2001].
27
R (θ )ξ& ∈ N C1* ( β c ) , conclui-se que para qualquer instante de tempo t, existe um vetor
de tempo η (t ) , entrada de controle, tal que.
β& c = ζ (2.29)
B (z) = R T
(θ ) Σ
u =η
Se Nc ≠ = 0 ξ
z = ;
β c
RT (θ )Σ 0
B( z ) = ;
0 1
η
u=
ζ
28
Para cada classe de robô móvel entre as definidas na Tabela 2.2, existe um
modelo cinemático de postura diferente. Os robôs da mesma classe podem ser
representados pelo mesmo modelo, variando a posição do ponto P e do referencial.
Para cada robô móvel com rodas pertencente à mesma classe, o mesmo
modelo cinemático de postura é o utilizado. Para um móvel com rodas é sempre
possível selecionar o ponto de referência P e a base {X, Y} solidário ao chassi do robô
tal que o modelo cinemático de postura tome exatamente a forma correspondente ao
tipo de robô dado na .
• Para o tipo de robô (3,0) o ponto de referência P e a base {X, Y} podem ser
escolhidos arbitrariamente.
• Para o tipo de robô (2,0) o ponto de referência P é escolhido como um ponto do
eixo das rodas fixas, com X alinhado ao longo deste eixo.
• Para o tipo de robô (2,1), selecionamos uma das rodas centradas e P é escolhido
como o centro desta roda, com (X, Y) escolhido arbitrariamente.
• Para o robô (1,1), selecionamos uma das rodas centradas, P; e a intersecção da
linha perpendicular que passa pelo centro da roda selecionada, com o eixo comum
da rodas fixas. L é a longitude perpendicular do robô.
• Para o tipo de robô (1,2) se seleciona duas rodas orientáveis centradas. P é
escolhido como o ponto médio da distancia entre os centros destas duas rodas,
com X alinhado ao longo da linha que junta estes centros. L é a distância média
entre estes centros
29
x
x& − Lsenθsenβ c 3 0
y 0 η1
y& L cosθ cos β c 3 0
(1,1) θ Lsenβ c 3 θ& =
cos β cos β c 3 0
β c3 c3
ζ 1
β& 1
c1 0
− L( senβ c1 sen(θ + β c 2 )
0 0
x x& + senβ sen(θ + β ))
c2 c1
y − 2 Lsenβ c1senβ c 2 y& L( senβ c1 cos(θ + β c 2 ) η 1
θ& = + senβ cos(θ + β )) 0 0
(1,2)
θ Lsen( β c1 + β c 2 ) c2 c1 ζ 1
β c1 sen( β − β ) β& c1 sen( β c 2 − β c1 ) 0 0 ζ
2
β& 1 0
c2 c1
β c3 c2
0
0 0 1
30
Capítulo 3
3 Concepção do Projeto do Robô
Móvel
31
O Atmega16 é um microcontrolador 8-bit de tecnologia CMOS e arquitetura
RISC (Reduced Instruction Set Computer ) [ATMEL,2004]. Uma característica
interessante deste dispositivo é sua capacidade de executar uma instrução por ciclo de
relógio. Esta taxa de execução de instruções foi possível de ser alcançada em virtude
da conexão direta de seus 32 registradores de propósito geral com a unidade lógica
aritmética. Esta característica o deixa em vantagem quando comparado com os
concorrentes da família PIC da Microchip Technology. Além do mais, apesar de ser
RISC, possui um grande número de instruções (130), o que permite melhor
otimização de código de alto nível em linguagem C.
32
Figura 3.1 – Diagrama de Blocos do Microcontrolador [ATMEL].
3.1.1.1 Hardware
33
paralela de microcomputadores PC. As seções seguintes apresentam seus circuitos e
descrevem os procedimentos de montagem.
3.1.1.2 Software
34
Tendo disponíveis a gravadora e o circuito do microcontrolador, deve-se
providenciar o ambiente computacional que se comunicará com o dispositivo de
acordo com o protocolo estabelecido pelo fabricante.
De fato, necessita-se ao menos de um compilador e/ou um montador para o
microcontrolador, e um programa responsável pela gravação do dispositivo por meio
do hardware da gravadora.
O programa utilizado neste trabalho foi o WinAVR, um pacote de programas
em código aberto para desenvolvimento com microcontroladores da família AVR da
Atmel no ambiente Windows, que inclui um editor de texto, debugger, bibliotecas em
C, entre outros. Entre os programas mais importantes que acompanham o pacote, são
descritos a seguir:
• Programmer’s Notepad: Ambiente Integrado de Desenvolvimento, que é gratuito,
e permite ser configurado para trabalhar com as ferramentas de desenvolvimento
AVR;
3.1.1.2.1 WinAVR
35
que é composto de um ou mais arquivos, editar os arquivos e compilar o projeto. A
Figura 9 mostra o PC aberto com um projeto, em que se vêem os arquivos que
compõem o projeto (main.c e makefile), o arquivo main.c aberto para edição com
diferentes cores para as estruturas do programa em linguagem C, e uma janela de
saída, que contém mensagens de compilação. Quando instalado, o PN deve ser o
programa default para abrir arquivos com a extensão .pnproj, que é a extensão do
arquivo principal de um projeto.
3.1.1.2.3 Avrdude
A gravadora BSD nada mais é do que uma peça de hardware que precisa ser
comandada por um programa. Um destes programas é o Avrdude, que é um programa
que permite gerenciar várias gravadoras, entre elas a BSD. O Avrdude é
disponibilizado atualmente em duas versões, disponíveis no diretório WinAVR/bin:
• avrdude-gui.exe: versão caixa de diálogo do Avrdude, mostrada na Figura 10. Esta
versão é a mais utilizada devido à facilidade de configuração. O mínimo de
configuração que se sugere é:
36
de configuração do microcontrolador (Seção 4.2), apesar de disponibilizar na sua
interface espaços reservados a estes registros. Esta característica permite que
usuários menos avisados cometam algum erro de configuração por utilizarem à
interface gráfica. A única forma de alterar os registros de configuração é por meio
do programa avrdude.exe, que deve ser lançado a partir de uma linha de comando
DOS. A Seção 4.2 descreve com mais detalhe alguns procedimentos básicos de
uso do avrdude.exe. Ao leitor recomenda-se consultar o anual do avrdude.exe que
acompanha o CD de iniciação ao AVR (ver Anexo A).
O projeto GNU (GNU is not GNU)1 foi iniciado em 1984 por Richard
Stallman com o objetivo de criar um sistema operacional totalmente livre, além de
ferramentas para desenvolvimento. O projeto iniciou com as ferramentas, e abraçou o
sistema operacional Linux em 1991 como alvo dos desenvolvimentos. Entretanto,
muitas das ferramentas também funcionam no Windows, permitindo assim uma maior
difusão do software livre. Desta forma, é possível desenvolver programas para vários
microprocessadores e microcontroladores sem a necessidade de comprar ferramentas
comerciais. Para o caso do AVR, tem-se, entre outras ferramentas, o avr-gcc
(compilador C), avr-g++ (compilador C++), avr-as (assembler) e avr-ld (linker). No
WinAVR, estas ferramentas estão instaladas no diretório \WinAVR\bin.
37
Figura 3.3 – Interface Gráfica do avrdude
38
Estes registros são descritos na seção Memory Programming do manual [Atmel
2004]. São registros de proteção de código e dados (Lock bit byte), fusíveis de
configuração (Fuse High byte e Fuse Low Byte), bytes de assinatura do dispositivo e
byte de calibração do oscilador interno. Destes registros, um dos mais usados é o Fuse
Low byte pois determina principalmente a principal fonte de relógio da CPU.
Para alterar qualquer um dos registros de configuração, isto somente pode ser
feito através do programa avrdude.exe operando no modo unsafe (opção -u). Por
exemplo, a seqüência de operações abaixo permite obter os valores gravados nos
registros Fuse High byte (hfuse no avrdude) e Fuse Low byte (lfuse no avrdude):
39
No exemplo acima, a opção -t permite entrar no modo terminal, em que o
usuário usa alguns comandos para manipular os registros. Para conhecer melhor o
avrdude, sugere-se uma leitura no manual avrdude.pdf.
Este comando muda a fonte de relógio para cristal externo, o que permite fazer o
ATmega16 operar a até 16MHz.
• Cristal externo, segundo conexão mostrada na Figura 12(a). Esta fonte de relógio
é a de maior precisão, podendo chegar a até 16MHz. Quando o bit CKOPT do
registro Fuse High byte é programado em 0, a saída XTAL2 possui faixa de
variação de 0 a VCC, tornando o microcontrolador mais imune à interferência
externa e permitindo XTAL2 ser conectado a uma porta CMOS/TTL. Por outro
lado, com CKOPT programado em 1, a faixa de variação de XTAL2 é bem
pequena, o que implica também em menor consumo de energia;
• Oscilador externo, que gera uma onda quadrada a ser aplicada ao pino 9 (XTAL1)
do Atmega16, conforme mostrado na Figura 12(c). O período da onda quadrada
não pode sofre alteração de mais de 2% de seu período entre dois ciclos
consecutivos. Se isto ocorrer, o comportamento do microcontrolador será
imprevisível;
40
Ainda de acordo com a Figura 11, cada um dos sinais de relógio gerados pode
ser desligado independentemente (ver seção Power Managament and Sleep Modes,
em [Atmel 2004]). Além disso, é importante destacar que o Watchdog Timer, que
funciona como um dispositivo de proteção que reinicia o microcontrolador após o não
cumprimento de determinada condição em um intervalo de tempo especificado, é
conectado diretamente à fonte de relógio, e não à Unidade de Controle do Relógio,
para proporcionar maior confiabilidade ao sistema.
Deve ser observado que o Atmega16 já vem de fábrica configurado para fonte
de relógio dada pelo circuito RC interno a 1MHz [Atmel 2004]. Para alterar a fonte de
relógio a ser utilizada, deve-se escrever no registro de configuração Fuse Low Byte,
conforme ilustrado pela Seção 4.2. A Tabela 3.1 apresenta as fontes de relógio e o
conteúdo que deve conter os bits CKOPT (registro Fuse High Byte) e CKSEL3,
CKSEL2, CKSEL1 e CKSEL0 (registro Fuse Low Byte). Algumas vezes, algum
efeito externo provoca a gravação do Fuse Low Byte para 00h, que implica no uso de
fonte externa de relógio. Se isto ocorrer, um procedimento utilizado consiste em
aplicar uma onda quadrada de aproximadamente 1MHz em XTAL1 e refazer a
programação dos registros usando o avrdude.exe.
Uma vez alterada a fonte do relógio, a alteração somente tem efeito após
reiniciar o microcontrolador. Isto significa que da próxima vez que avrdude for usado
para gravação, à nova fonte de relógio já passa a ser utilizada. O mesmo ocorre com o
programa da memória Flash, que passa a operar com a nova fonte de relógio
selecionada.
41
Tabela 3.1: Seleção da fonte de relógio e bits CKOPT, CKSEL3..0 do registro
Low FuseByte
3.2 Sensores
42
3.2.1 Sensores de Toque
Sensores de toque são dispositivos que indicam o contato entre eles próprios e
algum outro objeto. Normalmente são usados em robôs industriais ou manipuladores.
A informação de toque pode ser usada, por exemplo, para a localização e
reconhecimentos de objetos, indicando ainda a magnitude da forca de contato entre os
dois. Um dos objetivos de se usar sensores deste tipo é identificar e controlar a
interação entre o robô e o ambiente onde ele se encontra.
43
de medir a distancia ao objeto [Bradshaw , 1990]. Embora este tipo de sensor não
devolva a distancia entre ele e um objeto qualquer, eles podem identificar se algo está
presente ou não, dentro do seu cone de detecção [Jones, 1993].
3.3 Motores
44
Os motores DC são usados na robótica móvel porque a fonte de energia neles
é tipicamente uma bateria DC.
Na figura a seguir pode ser observado o princípio do funcionamento de um
motor elétrico.
3.4 Baterias
No caso de robôs móveis, o uso de baterias é uma boa solução. Uma bateria
converte energia química em energia elétrica. A seguir são apresentadas algumas
características importantes [Jones, 1993]:
Recarregáveis: Uma unidade que gera energia através de uma reação química
e que não pode ser recarregada é uma célula primária. Uma que pode ser recarregada
é dita de secundária ou bateria de armazenamento.
Densidade de Energia (Wh/Kg): É a máxima quantidade de energia por
unidade de massa.
Capacidade (Amp-hora ou mA-h): É a máxima armazenada na célula. Ela é o
produto da Densidade de Energia vezes a massa da bateria.
Voltagem (V): Esta é uma característica particular da reação química na
bateria, dependendo do estado de carga da célula.
45
Resistência Interna (Ohm): Quando se faz um curto circuito, a corrente
fornecida por uma bateria é limitada pela resistência interna da mesma.
Taxa de Descarga (mA): É a taxa na que uma bateria é descarregada. A taxa
máxima
Após estes aspectos práticos da construção de um robô móvel, será mostrado o
estudo do modelo cinemático do robô WinoFire. Este estudo segue o mesmo padrão
dos modelos cinemáticos no Capítulo 2.
46
base inercial e o eixo principal do robô, variante durante o movimento. Deste modo, o
movimento é restringido pela equação [Latombe, 1996]:
x& − senθ 0
η
y& = cos θ 0 1
η
θ& 0
1 2
47
Figura 3.9 – Fluxograma do comportamento do robô WinoFire
Da figura Figura 3.9, pode se observar que o robô afere as distâncias a partir
de sensores ultra-sônicos e com esta informação escolhe-se a direção apropriada para
seguir. Este é um algoritmo simples, porém existem inúmeras aplicações onde pode
aplicá-lo, cabendo ao projetista julgar onde melhor adequa-se.
48
Capítulo 4
4 Resultados
O robô WinoFire foi construído com o intuito de ser um robô móvel cm uma
inteligência embarcada de modo que cumpra determinadas tarefas de forma
autônoma. Este robô foi construído pela equipe ProficLan, composta pelos alunos
Andrei Silva, Carlos Alexandre, Gustavo Myrria, Moisés Bastos e Walter Nakano. A
partir de materiais alternativos, tais como placas de acrílico, servo-motores de
aeromodelos, o robô foi construído. Estes materiais possibilitaram construir um robô
móvel com um preço acessível, não obstante a suas muitas funcionalidades. Como
mostrado na seção anterior, o robô possui duas rodas motrizes e uma roda orientada
fora de centro. Por meio do movimento relativo entre estas duas rodas a postura do
robô é definida.
49
Os motores utilizados foram o HOBBICO-55, bastante difundido em projetos
de aeromodelos. Para inferir o ambiente externo, foram utilizados dois sensores ultra-
sônicos. Estes sensores realizam a medição da distância de obstáculos. Ainda o robô
conta com um sensor infravermelho na região inferior e um sensor para identificação
de chamas, HAMAMATSU. Este sensor é bastante útil para a verificação de chamas
de fogo em um ambiente.
50
4.2.1 Motores
4.2.2 Sensores
Figura 4.3 - Detalhe da Montagem do Sonar e seu suporte montado sobre servo-motor
4.2.3 Bateria
51
4.2.4 Sistema Eletrônico
O robô WinoFire foi submetido a uma bateria de testes para averiguar suas
capacidades e julgar os métodos e soluções encontradas para o cumprimento de
determinadas tarefas.
Para tanto, robô foi exposto às seguintes situações:
• Vagar em um sistema estruturado;
• Desviar de obstáculos que impedem o livre transcurso do robô livremente;
• Identificação de uma chama de fogo.
52
Capítulo 5
5 Conclusões
5.1 Conclusões
53
• Implementação de encoders nas rodas de modo que a velocidade do robô possa
ser controlada, e seja implementado um controle de malha fechada para a
movimentação do robô;
• Um sistema de rádio freqüência para a comunicação do robô com uma base
servidora;
• Desenvolvimento de um programa de simulação computacional para o estudo do
comportamento do robô em diversas situações.
• Construção de novos módulos atuadores acima da plataforma do robô WinoFire,
tais como braços manipuladores entre outros;
• Construção de um novo protótipo utilizando a tecnologia de micromáquinas.
Sendo este um micro-robô.
54
Referências Bibliográficas
Han, Min-Hong; Rhee, Sang-Yong. Navigation Control for a Mobile Robot. Journal
of Robotic Systems, v. 11, n. 3, p. 169-179, 1994.
LAUMOND, J.P. Robot Planning and Control. Lectures Notes in Control and
Information Sciences 229, Springer, 1998, 343 p. Disponível na Internet:
www.laas.fr/~jpl/book.html
Muir, P.F., Modelling and Controlo f wheeled mobile robots. Pittsburgh, PA, USA:
Department of Eletric and Computer Engineering and Robotics Institute,
Canegie Mellon University, 1998. 335p. These (PhD.)
Ohya, Akihisa; Kosaka, Akio; Kak, Avinash. Vision based Navigation by a Mobile
Robot with Obstacle Avoidance Using Single-Camara and Ultrasonic Sensing.
IEEE Transactions on Robotics and Automation, v. 14, n. 6, p. 969-978, 1998.
55
SIEGWART, Roland. NOURBAKHSH, IIlah. Introduction to Autonomous Mobile
Robots. USA. Bradford Book. 2004. 317p.
56