curso de engenharia de computação projeto de...

39
Curso de Engenharia de Computação PROJETO DE CONSTRUÇÃO DE UM ROBÔ EXPLORADOR Ricardo Brino Campinas São Paulo Brasil Dezembro de 2008

Upload: lamnhi

Post on 08-Nov-2018

216 views

Category:

Documents


0 download

TRANSCRIPT

Curso de Engenharia de Computação

PROJETO DE CONSTRUÇÃO DE UM ROBÔ EXPLORADOR

Ricardo Brino

Campinas – São Paulo – Brasil

Dezembro de 2008

Curso de Engenharia de Computação

PROJETO DE CONSTRUÇÃO DE UM ROBÔ EXPLORADOR

Ricardo Brino

Monografia apresentada à disciplina de Trabalho de Conclusão do Curso de Engenharia de Computação da Universidade São Francisco, sob a orientação do Prof. Dr. Claudio Kiyoshi Umezu, como exigência parcial para conclusão do curso de graduação.

Orientador: Prof. Dr. Claudio Kiyoshi Umezu

Campinas – São Paulo – Brasil

Dezembro de 2008

Robô explorador

Ricardo Brino

Monografia defendida e aprovada em 11 de Dezembro de 2008 pela Banca

Examinadora assim constituída:

Prof. Dr. Claudio Kiyoshi Umezu (Orientador)

USF – Universidade São Francisco – Campinas – SP.

Prof. Dr. Ely Carneiro de Paiva

USF – Universidade São Francisco – Campinas – SP.

Prof. Dr. Claudio Maximiliano Zaina

USF – Universidade São Francisco – Campinas – SP.

Dedico o trabalho à minha noiva Juliana que me

apoiou desde o início e teve paciência para

compartilhar minha companhia com o TCC

durante os 14 meses de desenvolvimento. Dedico

também ao meu pai Luiz que espera ansioso pela

conclusão do meu curso.

v

Agradecimentos

Agradeço a Deus por iluminar meu caminho durante as dificuldades encontradas ao longo da

vida. Também agradeço aos meus pais pela educação e principalmente pelo modelo de caráter

e moral que me deram desde a infância. Aos professores que me incentivaram a prosseguir

com o projeto, mesmo nos momentos difíceis e de desânimo, em especial ao professor Dr.

André Leon Sampaio Gradvohl, coordenador do curso de Engenharia da Computação. Por

fim, agradeço aos professores Luiz Sergio Conceição, primeiro orientador do TCC, e Dr.

Cláudio Kiyoshi Umezu, atual orientador, por aceitarem a tarefa de orientação e emprestarem

seu vasto conhecimento para este trabalho.

vi

Sumário

Lista de Siglas........................................................................................................................ viii

Lista de Figuras........................................................................................................................ix

Resumo......................................................................................................................................xi

Abstract.....................................................................................................................................xi

1 Introdução...........................................................................................................................1 1.1 Contextualização ...........................................................................................................1 1.2 Definição do problema a ser tratado..............................................................................2 1.3 Estrutura do Texto .........................................................................................................2

2 Revisão bibliográfica..........................................................................................................3 2.1 Robótica.........................................................................................................................3 2.2 Direção Diferencial........................................................................................................4 2.3 Esteira tipo lagarta .........................................................................................................4 2.4 Conexão wireless tipo Ad-hoc .......................................................................................5 2.5 Motor de passo ..............................................................................................................5 2.6 Porta Paralela.................................................................................................................6

3 Desenvolvimento do Projeto..............................................................................................7 3.1 Estrutura ........................................................................................................................7

3.1.1 Gabinetes ................................................................................................................7 3.2 Esteira de tração.............................................................................................................8

3.2.1 Fixação da esteira....................................................................................................9 3.2.2 Aumento da capacidade de tração.........................................................................10

3.3 Sistema de tração .........................................................................................................11 3.4 Drive para motores ......................................................................................................12

3.4.1 Motor de tração.....................................................................................................12 3.4.2 Motor de passo......................................................................................................13

3.5 Captura de imagem......................................................................................................14 3.5.1 WebCam ................................................................................................................14 3.5.2 Movimento horizontal...........................................................................................14 3.5.3 Movimento vertical...............................................................................................14 3.5.4 Acoplamentos e engrenagens................................................................................15 3.5.5 Iluminação ............................................................................................................15

3.6 Sistema Computacional ...............................................................................................16 3.7 Alimentação do sistema...............................................................................................17 3.8 Conexão Wireless ........................................................................................................18

3.8.1 Controle remoto ....................................................................................................18 3.9 Software.......................................................................................................................19

3.9.1 Interface ................................................................................................................19

vii

3.9.2 Lógica de controle ................................................................................................20 3.9.3 Sistema Operacional .............................................................................................23

3.10 Teste do robô ...............................................................................................................23

4 Conclusão ..........................................................................................................................25 4.1 Contribuições...............................................................................................................25 4.2 Trabalhos futuros.........................................................................................................25

Referências Bibliográficas......................................................................................................27

viii

Lista de Siglas

IEEE Institute of Electrical and Electronics Engineers ou Instituto de Engenheiros

Elétricos e Eletrônicos

IDE Ferramenta gráfica para programação/compilação de linguagens

USB Universal Serial Bus ou Barramento Universal Serial

PCI Peripheral Component Interconnect ou Interface de Interconexão de Periféricos

DDR Double Data Rating - Tipo de memória de computadores com o dobro da taxa

de transferência das memórias convencionais

DC Direct Current - Corrente contínua

ix

Lista de Figuras

FIGURA 1 – TRATOR.....................................................................................................................4

FIGURA 2 - TANQUE DE GUERRA..................................................................................................4

FIGURA 3 - GABINETES EMENDADOS E CORTADOS .......................................................................7

FIGURA 4 - TAMPA INFERIOR DIANTEIRA......................................................................................7

FIGURA 5 - GABINETES PRONTOS .................................................................................................8

FIGURA 6 - GABINETES FECHADOS...............................................................................................8

FIGURA 7 - COROA DE BICICLETA.................................................................................................8

FIGURA 8 - COROAS UNIDAS ........................................................................................................8

FIGURA 9 - CUBO DE RODA DE BICICLETA ....................................................................................9

FIGURA 10 - CUDO DE RODA COM COROAS PRESAS ......................................................................9

FIGURA 11 - PLACA MADEIRA COMPENSADA................................................................................9

FIGURA 12 - CUBOS AFIXADOS NA PLACA ....................................................................................9

FIGURA 13 - OUTRA FOTO DA PLACA .........................................................................................10

FIGURA 14 - CONJUNTO ESTEIRA PRONTO..................................................................................10

FIGURA 15 - CÂMARA DE AR PARAFUSADA................................................................................10

FIGURA 16 - MOTOR DE VIDRO ELÉTRICO COM CAIXA DE REDUÇÃO EMBUTIDA .........................11

FIGURA 17 - LOCAL DE INSTALAÇÃO DO MOTOR........................................................................12

FIGURA 18 - LUVA E FUROS NOS EIXOS ......................................................................................12

FIGURA 19 - PLACA RE24/10.....................................................................................................12

FIGURA 20 - TABELA DE CONTROLE...........................................................................................12

FIGURA 21 - ESQUEMA ELETRÔNICO ..........................................................................................13

FIGURA 22 - PLACA SM4-2........................................................................................................13

FIGURA 23 - MOTOR DE PASSO...................................................................................................14

FIGURA 24 - CÂMERA MONTADA ...............................................................................................15

FIGURA 25 - ESQUEMA ELETRÔNICO DO SISTEMA DE ILUMINAÇÃO ............................................16

FIGURA 26 - ILUMINAÇÃO DA CÂMERA ......................................................................................16

FIGURA 27 - SISTEMA COMPUTACIONAL DENTRO DO ROBÔ .......................................................17

FIGURA 28 - BATERIA ................................................................................................................17

FIGURA 29 - CONFIGURAÇÃO DE REDE.......................................................................................18

FIGURA 30 - INTERFACE DO SOFTWARE DE CONTROLE...............................................................20

x

FIGURA 31 - CONTROLE DO ROBÔ ..............................................................................................20

FIGURA 32 - CONTROLE DA CÂMERA .........................................................................................20

FIGURA 33 - ROTINA DE LEITURA DO TECLADO..........................................................................21

FIGURA 34 - TABELA VERDADE MEIO-PASSO..............................................................................21

FIGURA 35 - LÓGICA DE CONTROLE DOS MOTORES DA CÂMERA.................................................22

FIGURA 36 - LIGAÇÃO LPT1.......................................................................................................23

FIGURA 37 - LIGAÇÃO LPT2.......................................................................................................23

xi

Resumo

Este documento descreve a construção de um protótipo de robô explorador com a

utilização de peças usadas retiradas de outros equipamentos. Além de demonstrar a interação

entre dispositivos eletrônicos como motores de passo e lógica de programação em linguagem

Delphi/Object Pascal.

PALAVRAS-CHAVE: Robô explorador, Motor de passo, Delphi.

Abstract

This document describes the construction of a prototype a robot explorer with the use

of used parts removed from other equipment. In addition to demonstrate the interaction

between electronic devices such as stepper motors and logic programming language Delphi /

Object Pascal.

KEY WORDS: Robot explorer, Stepper Motor, Delphi.

1

1 INTRODUÇÃO

1.1 Contextualização

O termo “robô” tem origem na palavra checa robota, que significa “trabalho forçado”.

Explorador é um tipo de robô capaz de percorrer terrenos acidentados ou áreas de difícil

acesso ao homem.

Algumas tarefas em que a vida humana corre risco, devem contar com o auxílio de

robôs para sua execução. Desativação de bombas, acesso a áreas com incêndio ou gases

perigosos, são apenas alguns exemplos das diversas aplicações em que um robô pode, e deve

ser utilizado. Existem também serviços domésticos, como limpeza e segurança de ambientes,

que podem ser atribuídos a essas máquinas.

Os robôs são normalmente controlados remotamente por um ser humano, havendo a

simulação de presença humana. Há alguns que também possuem certa inteligência e podem

tomar decisões independentes, tornando-os autônomos. Não é o caso do robô desse projeto,

que conta somente com o controle remoto.

Construir um robô do tipo explorador, para ambientes terrestres, utilizando o máximo

de peças de equipamentos usados ou disponíveis comercialmente, era um sonho pessoal que

se tornou projeto de TCC.

O robô desenvolvido não tem um braço mecânico, nem programação inteligente

devido ao aumento do tempo de execução e complexidade gerada, cabendo isto às futuras

implementações.

Apesar de o objetivo ser construí-lo a partir de peças consideradas como sucatas,

algumas peças como, por exemplo, pequenas luvas de conexão dos motores à tração, foram

confeccionadas no torno de propriedade da Universidade São Francisco, Campus de

Campinas.

A utilização da robótica em diversas as áreas demonstra o potencial deste mercado que

movimenta bilhões de dólares e é muito competitivo, favorecendo os consumidores dos

serviços oferecidos por essas máquinas, gerando conforto e poupando vidas.

2

1.2 Definição do problema a ser tratado

O objetivo deste trabalho foi demonstrar a interação entre dispositivos eletrônicos e a

lógica de programação com soluções baseadas no conceito da reutilização de peças

descartadas, construindo um robô explorador.

1.3 Estrutura do Texto

A Seção 2 trata de conceituar alguns conteúdos importantes e relevantes mencionados

na seção de desenvolvimento. A Seção 3 relata as etapas de desenvolvimento do protótipo e

testes. A Seção 4 finaliza com conclusões e possíveis contribuições para futuros trabalhos.

3

2 REVISÃO BIBLIOGRÁFICA

Visando conceituar alguns conteúdos citados no desenvolvimento, os itens a seguir

foram criados. O item 2.1 faz uma explanação sobre robótica em geral. O modo de locomoção

do robô possui algumas características de fundamental importância na lógica do software de

controle e são explicadas no item 2.2. A conexão wireless do tipo Ad-hoc atende

perfeitamente às necessidades do modelo de controle remoto adotado e, por isso, há um item

exclusivo, o de número 2.4.

Os motores de passo, utilizados nos movimentos da câmera, são motores que possuem

particularidades que são explicadas no item 2.5. O projeto do robô utiliza a porta paralela

como meio de controle dos motores e por isso, uma explicação sobre seu funcionamento foi

feita no item 2.6.

2.1 Robótica

Robótica é um ramo da tecnologia que engloba mecânica, eletricidade, eletrônica e

computação. O termo Robótica foi criado pelo escritor de ficção cientifica Isaac Asimov, no

seu romance "I, Robot" (Eu, Robô), de 1948. Neste mesmo livro, Asimov criou leis, que

segundo ele, regeriam os robôs no futuro.

Leis da robótica:

1ª) Um robô não pode fazer mal a um ser humano e nem, por omissão, permitir que

algum mal lhe aconteça.

2ª) Um robô deve obedecer às ordens dos seres humanos, exceto quando estas

contrariarem a Primeira Lei.

3ª) Um robô deve proteger a sua integridade física, desde que, com isto, não contrarie

a Primeira e a Segunda Leis.

4

2.2 Direção Diferencial

Esse modo de locomoção consiste em dois conjuntos de tração compostos por rodas

fixas (não direcionais) ou esteiras, dispostos em paralelo. Este conjunto permite a realização

dos seguintes movimentos:

Em linha reta: quando as duas rodas ou esteiras movimentam-se na mesma

velocidade.

Em forma de arco: quando as rodas ou esteiras apresentam velocidades diferentes.

Em volta do seu próprio eixo: quando vd = -ve, onde vd é a velocidade da roda ou

esteira direita e ve é a velocidade da roda ou esteira esquerda.

Esse tipo de direção é sensível a velocidade relativa das duas rodas ou esteiras, ou

seja, um pequeno erro resulta em diferentes trajetórias.

2.3 Esteira tipo lagarta

Seu nome originou-se da analogia com o movimento de uma lagarta. Esse tipo de

esteira é utilizado em tratores (Figura 1) e tanques de guerra (Figura 2) que, por aumentar a

área de contato com o solo, melhora a capacidade de tração. Outra vantagem deste sistema de

tração é que ele causa uma pequena compactação do solo, sendo ideal para terrenos alagados

ou com baixa capacidade de sustentação.

Figura 1 – Trator Figura 2 - Tanque de Guerra

5

2.4 Conexão wireless tipo Ad-hoc

A conexão wireless tem como principal atrativo a eliminação de fios em uma rede de

computadores e a mobilidade fornecida por este tipo de conexão possibilitou a criação de

diversos equipamentos que interagem entre si.

Em um enlace de rede padrão, sempre há no mínimo um gateway que gerencia os

demais hosts. Existem vários modelos de conexões wireless e dentre eles há o chamado Ad-

hoc. Essa conexão elimina a necessidade de um gerenciador ou centralizador da rede como,

por exemplo, um roteador. Dessa maneira, a conexão Ad-hoc possibilita a comunicação

diretamente entre dois dispositivos.

O padrão utilizado é o IEEE 802.11g que oferece velocidades de 54Mbps operando em

uma freqüência de 2,4GHz.

2.5 Motor de passo

Motores de passos são dispositivos mecânicos e eletro-magnéticos que podem ser

controlados digitalmente através de um hardware específico ou através de softwares. Eles são

encontrados em aparelhos onde a precisão é um fator muito importante. São usados em larga

escala em impressoras, plotters, scanners, drivers de disquetes, discos rígidos e muitos outros

aparelhos.

Existem três estados possíveis de um motor de passo:

Desligado: Não há alimentação suprindo o motor. Nesse caso não existe consumo

de energia, e todas as bobinas estão desligadas. Na maioria dos circuitos este estado

ocorre quando a fonte de alimentação é desligada.

Parado: Pelo menos uma das bobinas fica energizada e o motor permanece estático

num determinado sentido. Nesse caso há consumo de energia, mas em

compensação o motor se mantém alinhado numa posição fixa.

Rodando: As bobinas são energizadas em intervalos de tempos determinados,

impulsionando o motor a girar numa direção.

São três modos de acionamento dos motores:

1. Passo completo 1 (Full-step)

Somente uma bobina é energizada a cada passo;

Menor torque;

6

Menor consumo de energia;

Maior velocidade.

2. Passo completo 2 (Full-step)

Duas bobinas são energizadas a cada passo;

Maior torque;

Maior consumo de energia se comparado ao Passo completo 1;

Maior velocidade.

3. Meio passo (Half-step)

A combinação do passo completo1 e do passo completo 2 gera um

efeito de meio passo;

Consome mais energia que os passos anteriores;

É muito mais preciso que os passos anteriores;

O torque é próximo ao do passo completo 2;

A velocidade é menor que as dos passos anteriores.

2.6 Porta Paralela

A porta paralela foi criada pela empresa IBM com o objetivo de conectar uma

impressora a um computador, mas sua utilização foi bem mais abrangente do que isso. A

porta paralela é uma interface de comunicação bastante utilizada em projetos de automação

porque o acionamento de periféricos.em geral é muito simples. Ela conta oito pinos para saída

de dados, cinco pinos para entrada e outros cinco pinos com aterramento.

Na comunicação pela porta paralela, grupos de bits são enviados simultaneamente

através das oito saídas. Basta enviar, via software, um bit ativo em determinada posição, para

a porta paralela enviar um sinal de 5V na respectiva saída.

As portas paralelas possuem endereços de acesso 378H e 278H e comumente são

conhecidas por Lpt1 e Lpt2, respectivamente.

7

3 DESENVOLVIMENTO DO PROJETO

3.1 Estrutura

A estrutura do robô foi montada a partir da união de dois gabinetes de computadores. Os

componentes do computador (placa-mãe, processador, memória, disco rígido e fonte) foram

instalados na parte traseira juntamente com as duas baterias e os motores de tração, placas

eletrônicas de controle e o sistema de câmera foram instalados na parte dianteira.

3.1.1 Gabinetes

A parte dianteira foi recortada afim de que acompanhasse o desenho das esteiras, que

possuem um chanfro para ultrapassar obstáculos. As Figuras 3, 4, 5 e 6 mostram o resultado

da união dos gabinetes com as devidas curvaturas. Nas laterais da estrutura estão acopladas as

esteiras de tração.

Figura 3 - Gabinetes emendados e cortados Figura 4 - Tampa inferior dianteira

8

Figura 5 - Gabinetes prontos Figura 6 - Gabinetes fechados

3.2 Esteira de tração

A esteira de tração foi montada com duas rodas em contato com o chão e a terceira

suspensa, formando uma inclinação na parte dianteira, garantindo ao robô a mobilidade por

solos irregulares e a capacidade de transpor obstáculos.

Foram utilizadas coroas (Figura 7) e correntes de bicicletas para construir as esteiras.

As coroas possuem 36 dentes e foram unidas aos pares para formarem cada roda, conforme a

Figura 8. As correntes que formam a esteira também foram montadas em paralelo, unidas

lateralmente por parafusos transpassados pelos elos das correntes.

Figura 7 - Coroa de bicicleta Figura 8 - Coroas unidas

Os eixos da esteira foram feitos com cubos de roda de bicicleta (Figura 9), pois eles

possuem rolamentos, uma estrutura resistente e contam com um eixo para ligar as coroas aos

motores de tração.

9

Chapas de alumínio foram recortadas para conectar as rodas, os pares de coroas, ao

eixo do cubo de roda, uma vez que o furo central das coroas é bem maior que o eixo do cubo

de roda, conforme Figura 10.

Figura 9 - Cubo de roda de bicicleta Figura 10 - Cudo de roda com coroas presas

3.2.1 Fixação da esteira

A fixação dos cubos de roda diretamente na estrutura do robô limitaria uma possível

correção no projeto e principalmente deixaria o conjunto de esteira frágil, pois a estrutura do

robô é composta por finas chapas de alumínio que não resistiram ao alto grau de torção.

Para a construção da estrutura do conjunto de esteira foi utilizada uma chapa de

madeira compensada de 1,3cm de espessura, conforme visto nas Figuras 11, 12, 13 e 14.

Figura 11 - Placa madeira compensada Figura 12 - Cubos afixados na placa

10

Figura 13 - Outra foto da placa Figura 14 - Conjunto esteira pronto

3.2.2 Aumento da capacidade de tração

A utilização das correntes diretamente no chão poderia gerar uma série de problemas

com relação ao atrito, pois as correntes além de serem de metal, são banhadas com óleo

lubrificante, e isso certamente prejudicaria a tração do robô.

A partir de câmaras de ar de roda de automóveis cortaram-se tiras com

aproximadamente 5cm de largura para envolver a corrente, conforme ilustrado na Figura 15.

Os mesmos parafusos que transpassam as correntes foram utilizados para fixar as tiras de

borracha.

Figura 15 - Câmara de ar parafusada

11

3.3 Sistema de tração

Foram utilizados dois motores de acionamento elétrico de vidros de automóveis para

fornecer a tração ao robô, um em cada esteira. Utilizou-se motores DC da marca Bosch, que

operam com tensão de 12V e possuem uma caixa de redução embutida (Figura 16). A caixa

de redução é um conjunto de engrenagens que reduz a rotação do motor, aumentando seu

torque, tornando-o mais adequado para tracionar o robô.

Os motores foram fixados dentro da estrutura do robô e seus eixos foram alinhados aos

eixos de uma das rodas do conjunto de esteiras, conforme mostrado na Figura 17.

A decisão de qual roda ser a motriz considerou o estudo das possibilidades de

instalação do motor dentro da estrutura e, principalmente, de qual roda possuía maior contato

com as correntes da esteira, para que o torque gerado pelo motor fosse completamente

transmitido à esteira.

A roda traseira não poderia ser a motriz, pois na parte traseira da estrutura está

instalado o centro computacional que possui componentes eletrônicos. A roda dianteira que

toca o chão é a que menos tem dentes em contato com a corrente. Por isso, a terceira roda, ou

roda suspensa, foi a que melhor atendeu aos dois requisitos.

A Figura 18 mostra a luva de conexão, que foi confeccionada em alumínio, para

conectar o eixo do cubo de roda ao eixo do motor de tração. Ambos os eixos foram perfurados

longitudinalmente e a luva foi parafusada nos eixos.

Figura 16 - Motor de vidro elétrico com caixa de redução embutida

12

Figura 17 - Local de instalação do motor Figura 18 - Luva e furos nos eixos

3.4 Drive para motores

Drive é o termo utilizado para denominar as placas eletrônicas para acionamento de

motores. Sua função é realizar a interface entre os motores e o sistema computacional.

Existem inúmeros tipos e modelos de drives de acordo com a aplicação.

3.4.1 Motor de tração

A placa utilizada para controle dos motores de tração é chamada de Relé de Reversão,

modelo RE24/10 do fabricante T&S Equipamento e é mostrada na Figura 19. Tal placa possui

uma lógica de acionamento do motor para ambos os sentidos. Com isso, o robô pode mover-

se para frente e para trás. A Figura 20 mostra a tabela de sinais de controle.

Figura 19 - Placa RE24/10 Figura 20 - Tabela de controle

No momento da inicialização do sistema a placa RE24/10 recebe uma alimentação de

12V e os sinais de A e B recebem 0, pois não há sinal oriundo dos respectivos pinos da porta

paralela. Com isso ocorre o acionamento dos motores no modo direto. Para evitar tal

13

acionamento, um circuito adicional foi montado fazendo com que a placa tenha sua

alimentação controlada pelo software. Somente após o software enviar o sinal bit 1 na entrada

B, a alimentação da placa é ativada, com isso acionando os motores no modo freio. A Figura

21 exibe o esquema eletrônico do circuito.

Figura 21 - Esquema eletrônico

3.4.2 Motor de passo

Para controle dos motores de passo foi utilizada uma placa modelo SM4-2 do

fabricante T&S Equipamentos, vista na Figura 22.

Figura 22 - Placa SM4-2

14

3.5 Captura de imagem

Utilizou-se uma câmera digital para realizar a captura de imagem do ambiente ao

redor do robô. A câmera foi acoplada a um conjunto de motores e engrenagens para realizar

os movimentos vertical e horizontal.

3.5.1 WebCam

Foi utilizada uma Webcam, com conexão via porta USB que captura imagens com

resolução de 320 x 240 pixels e 640 x 480 pixels. Utilizou-se a resolução 320 x 240 pixels,

devido ao layout da inteface do software de controle.

Da câmera original utilizou-se apenas o circuito eletrônico e cabo USB.

3.5.2 Movimento horizontal

O movimento horizontal, que é comumente chamado de “pan”, é realizado por um

motor de passo de impressora matricial. É o modelo BS052-17, do fabricante Alkon

Tecnologia Ltda, que opera com tensão de 12V e corrente de 200 mA. Esse motor foi

acoplado a uma base de apoio.

3.5.3 Movimento vertical

O movimento vertical, que é comumente chamado de “tilt”, é realizado também por

um motor de passo de impressora matricial. Foi utilizado o modelo Astrosyn código 15BA-

H052-23, do fabricante Minebea Co. Ltda. que opera com tensão de 12V e corrente de

170mA, visto na Figura 23.

Figura 23 - Motor de passo

15

3.5.4 Acoplamentos e engrenagens

Construiu-se uma base em madeira e chapa de metal para conectar o motor de passo

do movimento horizontal com a câmera. Retirou-se uma caixa de engrenagem e um eixo

retangular de uma impressora matricial que foram conectados ao motor de passo para o

movimento vertical. A Figura 24 mostra a câmera pronta com os motores, as engrenagens e a

Webcam.

Figura 24 - Câmera montada

3.5.5 Iluminação

A iluminação artificial foi implementada utilizando LEDs (diodos emissores de luz) de

alto brilho, na cor branca. Esses LEDs operam com tensão de 3,6V e consomem uma corrente

de 25mA, cada um. Foram formados três conjuntos com três LEDs cada, em série com um

resistor de 51 para limitar a corrente.

Um pino de dados da porta paralela fará o acionamento da iluminação e a Figura 25

mostra o esquema eletrônico completo do sistema de iluminação.

16

Figura 25 - Esquema eletrônico do sistema de iluminação

Os LEDs, resistores e fios do conjunto foram afixados dentro de uma tampa cilíndrica

de pote de maionese, visto na Figura 26.

Figura 26 - Iluminação da câmera

3.6 Sistema Computacional

Algumas peças de um computador do tipo desktop foram utilizadas para formar a

central de processamento do robô, conforme mostra a Figura 27. Os itens que o compõem são:

1 Placa-mãe modelo M825G do fabricante PC Chips;

1 Processador Sempron 3000 de 1,7GHz do fabricante AMD;

17

1 Pente de memória DDR 266MHz com capacidade de 256MB;

1 Disco rígido de 40GB do fabricante Maxtor;

1 Fonte de alimentação de 300W modelo LC-B500E do fabricante Mtek;

2 Placas PCI com saída porta paralela

Figura 27 - Sistema Computacional dentro do robô

3.7 Alimentação do sistema

Foram utilizadas duas baterias recarregáveis (Figura 28), do fabricante PowerMAX,

modelo FP1270S, que operam com tensão de 12V e capacidade de 7Ah cada. As baterias

foram fixadas no interior do robô e conectadas a uma placa de No-break, cedido formalmente

pela Universidade São Francisco. São função é alimentar o sistema computacional, os

motores de passo e iluminação da câmera, os motores de tração e as placas drive dos motores.

Figura 28 - Bateria

18

3.8 Conexão Wireless

Utilizou-se conexão de rede wireless do tipo Ad-hoc entre o controlador remoto e o

robô. A Figura 29 mostra a configuração da conexão no robô e no controlador remoto.

Figura 29 - Configuração de rede

O computador utilizado no robô não possui placa de rede sem fio dedicada. Por isso

foi instalada uma placa wireless USB modelo F5D7050TT do fabricante Belkin. Ela

possibilita conexões no modo 802.11/g, com velocidade de até 54Mbps. Seu alcance, sem

barreiras como paredes, pode chegar a até cinqüenta metros.

3.8.1 Controle remoto

Foi utilizado um software para realizar o controle remoto do robô denominado Ultra-

VNC. O aplicativo Ultra-VNC servidor foi instalado no robô e aplicativo Ultra-VNC cliente é

instalado na máquina do controlador.

O software cliente efetua a conexão através do endereço IP do servidor e uma senha

pré-definida. A partir do acesso, o cliente executa todas as funções do servidor remotamente.

19

3.9 Software

Foi utilizada a ferramenta IDE Borland Delphi e a linguagem Object Pascal para

construir o software de controle do robô. A sigla IDE é utilizada para denominar uma

ferramenta gráfica que possibilita a programação em determinada linguagem.

Object Pascal é uma ramificação de linguagens derivativas de Pascal que, por sua vez,

é uma linguagem estruturada criada em 1970 pelo suíço Niklaus Wirth.

Utilizou-se essa linguagem devido ao fato do autor possuir conhecimento avançado,

por ela possuir uma dynamic link library, ou “DLL” para comunicação com a porta paralela,

além de ser uma linguagem muito utilizada em aplicações de qualidade.

A “DLL” utilizada chama-se inpout32.dll e nela já estão inclusas as rotinas de entrada

e saída para acesso à porta paralela, e também o driver que faz a comunicação com o núcleo

do sistema operacional.

3.9.1 Interface

A interface do software foi dividida em áreas de acordo com suas funcionalidades.

Conforme mostrado na Figura 30, no canto esquerdo está o controle de movimento da câmera

e do robô. Os mesmos botões realizam a operação de ambos, dependendo do selecionador

“Tipo” que fica abaixo dos botões. A operação de movimento lateral do robô aceita dois

modos. O modo “Arco” aciona apenas a esteira contraria ao lado em que se deseja realizar a

curva. Com isso, a curva é feita em arco. Quando selecionado o modo “Eixo”, o mesmo

movimento é realizado, mas a esteira do mesmo lado em que se deseja realizar a curva é

acionada no sentido contrário. Dessa maneira o robô realiza o movimento em torno do próprio

eixo.

No centro da tela está a exibição da câmera. Esta área possui os seguintes botões:

ativação da câmera, captura de imagem, captura de vídeo no disco rígido e visualização das

imagens capturadas anteriormente. Existe também um marcador para ativar a iluminação da

câmera.

No lado direito há um variador do ciclo de rotação dos motores da câmera que, por

padrão é 40 milissegundos (ms), mas pode operar entre 20ms até 200ms. Ciclos abaixo de

20ms podem fazer com que os motores de passo vibrem e percam a rotação.

Na parte inferior da tela foram adicionadas algumas informações sobre o computador

do robô como tempo de uso do sistema operacional e memória usada.

20

Figura 30 - Interface do software de controle

3.9.2 Lógica de controle

O software foi desenvolvido para identificar o acionamento de determinadas teclas no

teclado e executar as tarefas correspondentes. Conforme visto na Figura 31, as teclas “w”, “s”,

“a” e “d” foram definidas para o acionamento do movimento do robô para frente, trás,

esquerda e direita, respectivamente. O movimento da câmera foi vinculado às teclas “i”, “k”,

“j” e “l” para os movimentos cima, baixo, esquerda e direita, respectivamente.

Figura 31 - Controle do robô Figura 32 - Controle da câmera

21

A Figura 33 mostra o trecho de código do programa que controla a leitura do teclado e

inicializa o respectivo procedimento.

Figura 33 - Rotina de leitura do teclado

Adotou-se o modo meio-passo para o movimento dos motores da câmera devido às

suas características em relação aos outros modos. Dessa maneira, a tabela verdade para os

dois motores é visualizada na Figura 34.

Figura 34 - Tabela verdade meio-passo

22

A Figura 35 mostra o trecho do código do software responsável pela lógica de controle

dos motores da câmera, de acordo com a tabela verdade.

Figura 35 - Lógica de controle dos motores da câmera

Na inicialização do software é criada uma matriz com dimensão 4 x 8 que recebe os

valores dessa tabela verdade. Um vetor de duas posições, também criado na inicialização,

controla o índice dos motores da câmera. A posição 0 é o índice do motor horizontal e a

posição 1 o índice do motor vertical. Os 4 bits menos significativos são responsáveis pelo

controle do movimento vertical e os 4 mais significativos pelo controle do movimento

horizontal.

No momento do acionamento da tecla referente ao movimento, ocorre a variação de

incremento ou decremento do índice. Depois, soma-se os 4 bits do passo que o índice aponta

naquele instante para os dois motores, gerando um byte e em seguida esse byte é enviado à

23

porta paralela através da função “outportb”. Essa função tem como parâmetro o endereço da

porta paralela (378H ou 278H) e o byte de instrução.

No projeto utilizaram-se os oito pinos de saída de dados da porta paralela Lpt1 para

controle do movimento da câmera. A Figura 36 demonstra a lógica das saídas da Lpt1, e a

Figura 37 a lógica das saídas da Lpt2. A porta paralela Lpt2 foi utilizada para realizar a

comunicação com os motores de tração, que utilizam dois pinos de dados: um pino para

acionar a iluminação da câmera e um pino para ativar a alimentação da placa RE24/10. Nessa

porta paralela os dois pinos de dados restantes não foram utilizados, podendo ser aproveitados

em futuras implementações.

Figura 36 - Ligação Lpt1 Figura 37 - Ligação Lpt2

3.9.3 Sistema Operacional

O sistema operacional utilizado é o Windows XP do fabricante Microsoft, pois a

ferramenta IDE Borland Delphi é compilada para esse sistema.

3.10 Teste do robô

O teste do robô foi realizado no Campus da Universidade São Francisco, em

Campinas. O controle dos movimentos funcionou perfeitamente, apesar de existir um atraso

no tempo de resposta, devido principalmente à conexão remota.

A tarefa de subir escadas de alvenaria obteve sucesso. Algumas escadas não foram

escaladas pelo robô devido às proporções de altura e largura dos degraus estarem fora dos

padrões da construção civil. Durante o trajeto, ao transpor alguns obstáculos, as imagens da

câmera ficavam trêmulas. Isso poderia ser corrigido através de software específico que

elimina as variações bruscas realizando uma compensação do balanço.

24

A esteira de tração apresentou algumas dificuldades operacionais, pois em

determinados momentos apresentavam folgas e escapavam.

25

4 CONCLUSÃO

Quando se projeta um robô, todas as peças têm suas dimensões calculadas levando-se

em consideração o objetivo do robô e suas necessidades como velocidade, peso, capacidade

de tração, resistência à temperatura, entre outros fatores. Até simuladores são usados antes do

início da construção, para garantir o sucesso do projeto.

A construção de um robô a partir de peças usadas, retiradas de outros equipamentos,

não é uma tarefa fácil, devido, principalmente, à inexistência de um projeto completo antes de

iniciar a construção. O projeto do qual este documento relata, não foi completo e detalhado,

no início. Contudo, durante a construção, a criatividade foi fundamental para que peças

retiradas de outros equipamentos fossem aproveitadas e formassem o robô. Ao final, nota-se

que o projeto está completo.

A conclusão é de que a diversidade de robôs seja gigante ou nanométrico, terrestre ou

aquático, militar ou para serviços domésticos, é infinita. E dependem muito da criatividade de

quem os projeta, desde que tal criatividade esteja alinhada com um excelente conhecimento

teórico e vasta experiência prática.

4.1 Contribuições

O trabalho contribuiu para a prática no desenvolvimento de um protótipo, bem como

das solução de dificuldades encontradas no decorrer do cronograma. Reformulações e

correções foram necessárias e a criatividade foi fundamental para que o projeto tivesse êxito.

4.2 Trabalhos futuros

Este trabalho possibilita a extensão de diversos trabalhos como:

Criação de braço mecânico;

Criação de software inteligente para controle autônomo juntamente com a

instalação de sensores ao redor do robô;

Criação de software de captura de imagens da câmera para identificação de

objetos e possível movimento do robô para segui-lo;

26

Criação de software de controle por voz para acionar o movimento do robô e

da câmera.

27

Referências Bibliográficas

Tanenbaum, Andrews. Redes de Computadores, 2003.

Nehmzow, Ulrich. Mobile Robotics: A Pratical Introduction. Springer, 2000.

Dudek, Gregory and Jenkin, Michael. Computational Principles of Mobile Robotics. Cambridge University Press, 2000.

Pieri, Edson Roberto de. Curso de Robótica Móvel. UFSC. 2002.

<http://www.rogercom.com./>. Acesso em: 21 nov. 2008.

<http://www.roboticasimples.com./>. Acesso em: 21 nov. 2008.

<http://www.mecatronicaatual.com.br./>. Acesso em: 21 nov. 2008.

<http://www.tesequipamentos.com.br/>. Acesso em: 21 nov. 2008.

<http://www.fei.edu.br/>. Acesso em: 16 out. 2008.

This document was created with Win2PDF available at http://www.win2pdf.com.The unregistered version of Win2PDF is for evaluation or non-commercial use only.This page will not be added after purchasing Win2PDF.