39
UNIVERSIDADE TECNOL ´ OGICA FEDERAL DO PARAN ´ A DEPARTAMENTO ACAD ˆ EMICO DE INFORM ´ ATICA DEPARTAMENTO ACAD ˆ EMICO DE ELETR ˆ ONICA CURSO DE ENGENHARIA DE COMPUTAC ¸ ˜ AO CAIO ARCE NISHIBE JOHN TH ´ EO SIERPINSKI DE SOUZA RENATO GIRARDI GASOTO THIAGO AVELINO DA SILVA TUI ALEXANDRE ONO BARANIUK DESENVOLVIMENTO DE SISTEMA DE CONTROLE SEM FIO PARA ROB ˆ O OMNIDIRECIONAL RELAT ´ ORIO DE CONCLUS ˜ AO CURITIBA 2010

DESENVOLVIMENTO DE SISTEMA DE ... - dainf.ct.utfpr.edu.brfabro/IF66J/Relatorios_Finais/2010_1/... · o homem em tarefas que tipicamente envolviam riscos como: ... T opicos sobre eletr^onica

Embed Size (px)

Citation preview

Page 1: DESENVOLVIMENTO DE SISTEMA DE ... - dainf.ct.utfpr.edu.brfabro/IF66J/Relatorios_Finais/2010_1/... · o homem em tarefas que tipicamente envolviam riscos como: ... T opicos sobre eletr^onica

UNIVERSIDADE TECNOLOGICA FEDERAL DO PARANA

DEPARTAMENTO ACADEMICO DE INFORMATICA

DEPARTAMENTO ACADEMICO DE ELETRONICA

CURSO DE ENGENHARIA DE COMPUTACAO

CAIO ARCE NISHIBE

JOHN THEO SIERPINSKI DE SOUZA

RENATO GIRARDI GASOTO

THIAGO AVELINO DA SILVA

TUI ALEXANDRE ONO BARANIUK

DESENVOLVIMENTO DE SISTEMA DECONTROLE SEM FIO PARA ROBO

OMNIDIRECIONAL

RELATORIO DE CONCLUSAO

CURITIBA

2010

Page 2: DESENVOLVIMENTO DE SISTEMA DE ... - dainf.ct.utfpr.edu.brfabro/IF66J/Relatorios_Finais/2010_1/... · o homem em tarefas que tipicamente envolviam riscos como: ... T opicos sobre eletr^onica

CAIO ARCE NISHIBE

JOHN THEO SIERPINSKI DE SOUZA

RENATO GIRARDI GASOTO

THIAGO AVELINO DA SILVA

TUI ALEXANDRE ONO BARANIUK

DESENVOLVIMENTO DE SISTEMA DECONTROLE SEM FIO PARA ROBO

OMNIDIRECIONAL

Relatorio apresentado a Disciplina deOficina de Integracao 3, do DepartamentoAcademico de Informatica - DAINF - e doDepartamento Academico de Eletronica -DAELN - do Curso Superior de Engenhariade Computacao da Universidade TecnologicaFederal do Parana - UTFPR, como requisitoparcial para finalizacao da disciplina.

Prof. Dr. Joao Alberto FabroProf. Dr. Heitor Silverio Lopes

CURITIBA

2010

Page 3: DESENVOLVIMENTO DE SISTEMA DE ... - dainf.ct.utfpr.edu.brfabro/IF66J/Relatorios_Finais/2010_1/... · o homem em tarefas que tipicamente envolviam riscos como: ... T opicos sobre eletr^onica

RESUMO

Este relatorio apresenta uma abordagem pratica do desenvolvimento de um sistema decontrole para um robo omnidirecional. Futuramente este robo sera empregado como basepara o desenvolvimento de um sistema de navegacao e mapeamento de ambientes comobstaculos, atraves de sensores, e principalmente a miniaturizacao deste robo para con-strucao de um time de futebol de robos totalmente desenvolvidos e construıdos na Univer-sidade Tecnologica Federal do Parana. Aliando recursos de software e de hardware paracomunicacao, processamento, controle e visualizacao, o sistema aqui apresentado possi-bilita o controle de um robo omnidirecional remotamente e a visualizacao de velocidade,angulacao (desvio da orientacao Norte) e nıvel de baterias.

Palavras-chave: Robo Omnidirecional. Sistema de Controle. Software de Controle eVisualizacao. Controle de Robo Remotamente.

Page 4: DESENVOLVIMENTO DE SISTEMA DE ... - dainf.ct.utfpr.edu.brfabro/IF66J/Relatorios_Finais/2010_1/... · o homem em tarefas que tipicamente envolviam riscos como: ... T opicos sobre eletr^onica

LISTA DE FIGURAS

1 Primeira plataforma evidenciando a disposicao das rodas . . . . . . . . p. 13

2 Sistema de encoders . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 13

3 Segunda Plataforma evidenciando os suportes para as baterias . . . . . p. 14

4 Primeiro Prototipo do Software de Interfaceamento . . . . . . . . . . . p. 20

5 Estado da Arte do Software de Interfaceamento . . . . . . . . . . . . . p. 21

6 Transwheel 2051KX unica (KORNYLAK CORPORATION, 2010). . . . . . p. 22

7 Bussola Analogica Dinsmore 1650. . . . . . . . . . . . . . . . . . . . . . p. 24

8 Diagrama Esquematico do Circuito Impresso da Placa V1 . . . . . . . . p. 25

9 Esquema da Placa V1 . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 26

10 Diagrama Esquematico do Circuito Impresso da Placa V2 . . . . . . . . p. 27

11 Esquema da Placa V2 . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 28

12 Placa V2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 28

13 Placa V2 - Vista Superior . . . . . . . . . . . . . . . . . . . . . . . . . p. 29

14 Placa V2 - Vista Lateral . . . . . . . . . . . . . . . . . . . . . . . . . . p. 29

Page 5: DESENVOLVIMENTO DE SISTEMA DE ... - dainf.ct.utfpr.edu.brfabro/IF66J/Relatorios_Finais/2010_1/... · o homem em tarefas que tipicamente envolviam riscos como: ... T opicos sobre eletr^onica

LISTA DE TABELAS

1 Comparacao entre ER400RTS e MRF24J40MA . . . . . . . . . . . . . p. 35

Page 6: DESENVOLVIMENTO DE SISTEMA DE ... - dainf.ct.utfpr.edu.brfabro/IF66J/Relatorios_Finais/2010_1/... · o homem em tarefas que tipicamente envolviam riscos como: ... T opicos sobre eletr^onica

LISTA DE ABREVIATURAS E SIGLAS

ERS Especificacao de Requisitos de SoftwarePMBOK Project Management Body of KnowledgePMI Project Management InstituteSVN Subversion

Page 7: DESENVOLVIMENTO DE SISTEMA DE ... - dainf.ct.utfpr.edu.brfabro/IF66J/Relatorios_Finais/2010_1/... · o homem em tarefas que tipicamente envolviam riscos como: ... T opicos sobre eletr^onica

SUMARIO

1 INTRODUCAO p. 8

1.1 Escopo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 8

1.2 Objetivo Geral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 9

1.3 Objetivos Especıficos . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 9

1.4 Justificativa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 9

1.5 Metodologia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 10

1.6 Estrutura . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 11

2 Levantamento Teorico p. 12

2.1 O robo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 12

2.2 O microcontrolador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 14

2.2.1 Microchip PIC R© . . . . . . . . . . . . . . . . . . . . . . . . . . p. 14

2.2.1.1 dsPic30F3010 . . . . . . . . . . . . . . . . . . . . . . . p. 15

2.3 Comunicacao sem Fio . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 16

2.4 Sistema de Controle de Versao . . . . . . . . . . . . . . . . . . . . . . . p. 16

3 Conclusao e Resultados p. 19

3.1 O Software de Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 19

3.1.1 Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 19

3.1.2 Comunicacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 20

3.2 Controle de Movimentacao do Robo e Perifericos . . . . . . . . . . . . . p. 22

3.3 Placa de Circuito Impresso . . . . . . . . . . . . . . . . . . . . . . . . . p. 24

3.4 Configuracao do Microcontrolador . . . . . . . . . . . . . . . . . . . . . p. 30

Page 8: DESENVOLVIMENTO DE SISTEMA DE ... - dainf.ct.utfpr.edu.brfabro/IF66J/Relatorios_Finais/2010_1/... · o homem em tarefas que tipicamente envolviam riscos como: ... T opicos sobre eletr^onica

3.4.0.1 Microprocessador . . . . . . . . . . . . . . . . . . . . . p. 30

3.5 Dificuldades . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 34

3.5.1 Hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 34

3.5.2 Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 35

3.6 Controle de Versoes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 36

3.7 Trabalhos Futuros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . p. 36

Referencias p. 37

Page 9: DESENVOLVIMENTO DE SISTEMA DE ... - dainf.ct.utfpr.edu.brfabro/IF66J/Relatorios_Finais/2010_1/... · o homem em tarefas que tipicamente envolviam riscos como: ... T opicos sobre eletr^onica

8

1 INTRODUCAO

A algumas decadas atras, os robos faziam parte apenas da imaginacao do homem. No

comeco da decada de 1960, os primeiros robos comecaram a ser empregados para substituir

o homem em tarefas que tipicamente envolviam riscos como: altos nıveis de calor, ruıdo,

gases toxicos, grande esforco fısico e atividades repetitivas (FRANCHIN, 2005).

Atualmente, robos moveis estao, cada vez mais, sendo utilizados em aplicacoes tecnicas

e industriais como: vigilancia, inspecao, transporte e ate mesmo entretenimento (DO-

ROFTEI; GROSU; SPINU, 2009).

A robotica movel possui diversas areas de pesquisa, que vao desde a modelagem e

estrategias de controle, ate os tipos de sistemas de locomocao e tecnicas de inteligencia

artificial. (SCHROEDER et al., 2005).

Este projeto engloba o controle em baixo nıvel, para que futuramente o robo aqui

desenvolvido possa ser empregado em diversas aplicacoes, principalmente navegacao em

ambientes com obstaculos e futebol de robos.

1.1 Escopo

A estrutura mecanica a qual este projeto utiliza, e proveniente de outro projetos

desenvolvidos dentro da mesma universidade e que visaram a Robocup mas focados no

desenvolvimento do que chamou-se de carcaca(estrutura metalica, motores, rodas).

Este robo possui um sistema de propulsao capaz de atingir a velocidade de 2m/s para

qualquer direcao, fazendo com que ele possa atravessar em diagonal um campo padrao da

liga F180 em aproximadamente 3s em linha reta.

Para o funcionamento deste robo alguns pontos devem ser observados:

(a) Deve possuir sistema de comunicacao sem fio em um computador para envio e rece-

bimento de comandos.

Page 10: DESENVOLVIMENTO DE SISTEMA DE ... - dainf.ct.utfpr.edu.brfabro/IF66J/Relatorios_Finais/2010_1/... · o homem em tarefas que tipicamente envolviam riscos como: ... T opicos sobre eletr^onica

1.2 Objetivo Geral 9

(b) Deve possuir sistema de controle da potencia de tres motores a fim de definir para

que direcao este se movimentara e com que velocidade, respeitando o limite maximo

de 2m/s.

(c) Deve possuir sistemas de analise de movimento para sistema em malha fechada de

correcao de rota definida, envolvendo controle de encoders e bussola.

(d) Deve possuir sistema de gerenciamento de energia para alcancar um bom desempenho

de bateria.

Para agrupar estes requisitos em um unico sistema foi decidido utilizar um sistema

microcontrolado capaz de realizar o controle de potencia dos motores, comunicar-se com

outros dispositivos atraves de um protocolo sem fio, possuir sistema de gerenciamento de

energia, coletar dados de sensores analogicos e utilizar estes dados em uma realimentacao

via firmware para correcao de rota.

Os problemas que nao serao resolvidos neste projeto sao: controle de um time de fute-

bol de robos; implementacao de inteligencia artificial; realimentacao via camera; acopla-

mento e tratamento de sensores que nao sejam a bussola analogica e os encoders;

1.2 Objetivo Geral

O objetivo geral deste projeto e auxiliar a Universidade Tecnologica a ingressar na

RoboCupTM

.

1.3 Objetivos Especıficos

• Controlar um robo omnidirecional remotamente.

• Implementar sensoriamento de feedback.

• Implementar um software que auxilie no controle do robo.

1.4 Justificativa

O desenvolvimento da eletronica de controle do robo bem como as funcoes que de-

sempenham esta tarefa e os protocolos envolvidos na mesma, e o passo inicial e basico

Page 11: DESENVOLVIMENTO DE SISTEMA DE ... - dainf.ct.utfpr.edu.brfabro/IF66J/Relatorios_Finais/2010_1/... · o homem em tarefas que tipicamente envolviam riscos como: ... T opicos sobre eletr^onica

1.5 Metodologia 10

para a producao de um time futebol de robos e precede o desenvolvimento do software

de inteligencia artificial. Tendo conhecimento das exigencias feitas pela categoria Middle

Size da RobocupTM1 adequou-se o projeto para que futuramente atendesse essas especi-

ficacoes. Sendo assim, a execucao deste projeto e justificada pelo engajamento neste ideal

maior.

1.5 Metodologia

Como metodologia de gerenciamento de projetos, seguir-se-a o PMI/PMBOK. Para

maiores informacoes consulte o Material de Apoio fornecido com este.

Para alcancar os objetivos descritos anteriormente, o projeto se desenvolvera nas eta-

pas a saber:

• revisao da literatura: a pesquisa se iniciara pelo levantamento teorico necessario.

Topicos sobre eletronica de controle, programacao de microcontroladores, dinamica

(estudo de vetores e forca), padroes de desenvolvimento de software, deverao ser

abordados.

• construcao do hardware: a partir da revisao da literatura e seguindo um plano de

trabalho, sera iniciada a construcao do hardware de controle do robo omnidirecional,

que envolve a montagem e desenvolvimento das ferramentas de suporte para os

circuitos de controle dos motores, leitura dos encoders e bussola, comunicacao sem

fio e logica de movimentacao.

• implementacao do software: o mesmo sera implementado em Java, comunicando

com o robo atraves de uma interface sem fio. Alem de efetivamente controlar o

robo, mostrara velocidade, angulacao e nıveis do conjunto de baterias do mesmo.

• testes de software e hardware: etapa em que serao realizados testes, calibracoes e

ajustes finais, para um bom funcionamento do robo.

• analise dos resultados e conclusoes: etapa onde sera redigida a monografia em sua

versao final, englobando todos os resultados obtidos bem como o desenvolvimento e

as dificuldades encontradas durante o projeto.

1Robocup (2010)

Page 12: DESENVOLVIMENTO DE SISTEMA DE ... - dainf.ct.utfpr.edu.brfabro/IF66J/Relatorios_Finais/2010_1/... · o homem em tarefas que tipicamente envolviam riscos como: ... T opicos sobre eletr^onica

1.6 Estrutura 11

1.6 Estrutura

Este documento abordara os seguintes topicos:

(a) Levantamento Teorico - este capıtulo e complementado com os demais documentos

do projeto e o Material de Apoio.

(b) Conclusao e Resultados - este capıtulo descreve todas as conclusoes e resultados obti-

dos.

Page 13: DESENVOLVIMENTO DE SISTEMA DE ... - dainf.ct.utfpr.edu.brfabro/IF66J/Relatorios_Finais/2010_1/... · o homem em tarefas que tipicamente envolviam riscos como: ... T opicos sobre eletr^onica

12

2 LEVANTAMENTO TEORICO

2.1 O robo

Segundo J.A.M. (2005), a muitos seculos o homem vem buscando maneiras de melho-

rar diversos processos produtivos. Somente a partir do seculo XX, com o desenvolvimento

da tecnologia, foi possıvel automatizar esses processos. Assim surgiram os conceitos de

robo e inteligencia artificial.

Os primeiros robos foram produzidos no final da decada de 1950 e inıcio da decada

de 1960, impulsionados pelo desenvolvimento dos transistores e dos circuitos integrados

(J.A.M., 2005, p. 6).

Conforme J.A.M. (2005), o termo robo vem da palavra tcheca robota, que significa

“trabalhos forcados”. Este termo foi criado pelo escritor tcheco Karel Capek em seu

romance publicado em 1921 chamado “R.U.R.” (Robos Universais de Rossum). Posteri-

ormente o termo robo foi adaptado para significar um mecanismo automatico que realiza

trabalhos e movimentos humanos.

Para a Robotics Industries Association (apud J.A.M., 2005) um robo e “um dispositivo

mecanico articulado reprogramavel, que consegue, de forma autonoma e recorrendo a sua

capacidade de processamento obter informacao do meio envolvente utilizando sensores,

tomar decisoes sobre o que deve fazer com base nessa informacao e manipular objetos do

meio envolvente utilizando atuadores”.

Para que um robo efetivamente funcione, os engenheiros que o projetaram devem con-

hecer diversos ramos da ciencia, como: matematica, fısica, economia, mecanica, eletronica,

teoria de controle de sistemas, automacao industrial, visao computacional, comunicacoes,

processamento de sinais, computacao, energia, entre outras (J.A.M., 2005).

As pecas mecanicas do robo aqui utilizado sao feitas de aco inoxidavel, alumınio e

latao. Esta, definida por “carcaca” possui tres rodas dispostas a 120o, controladas por

tres motores DC, com um sistema de encoders acoplados em cada eixo bem como redutores

Page 14: DESENVOLVIMENTO DE SISTEMA DE ... - dainf.ct.utfpr.edu.brfabro/IF66J/Relatorios_Finais/2010_1/... · o homem em tarefas que tipicamente envolviam riscos como: ... T opicos sobre eletr^onica

2.1 O robo 13

(Figuras 1 e 2). E composto de tres plataformas, sendo que na primeira encontram-se

os motores, na segunda as baterias (Figura 3) e na terceira o sistema de controle. Tal

diposicao foi adotada pois proporciona uma agregacao de peso ao robo abaixando o seu

centro de gravidade e deixa a bussola em uma posicao melhor do que se estivesse na

segunda plataforma, onde estaria mais sujeita a intereferencia.

Figura 1: Primeira plataforma evidenciando a disposicao das rodas

Figura 2: Sistema de encoders

Page 15: DESENVOLVIMENTO DE SISTEMA DE ... - dainf.ct.utfpr.edu.brfabro/IF66J/Relatorios_Finais/2010_1/... · o homem em tarefas que tipicamente envolviam riscos como: ... T opicos sobre eletr^onica

2.2 O microcontrolador 14

Figura 3: Segunda Plataforma evidenciando os suportes para as baterias

2.2 O microcontrolador

Segundo Martins (2005), para uma melhor eficiencia no processamento de dados, na

decada de 70 comecaram a ser utilizados microprocessadores em computadores. A partir

do microprocessador precursor da Intel, a corrida em busca de uma melhora no sistema

de processamento de dados desses componente ficou mais acirrada. Assim, com base na

arquitetura de um microprocessador e seus perifericos, surgiu o microcontrolador. Com o

passar dos anos e por meio da abordagem dos aspectos teoricos e praticos dos microcontro-

ladores, foi possıvel desenvolver projetos e implementacoes de sistemas microcontrolados

de pequeno, medio e grande portes com melhor relacao custo/benefıcio, custo de hardware

reduzido e pequena necessidade de espaco fısico.

2.2.1 Microchip PIC R©

A Microchip e uma fabricante de microcontroladores e semicondutores com foco em

sistemas embarcados, com liderancade mercado em microcontroladores de 8 bits (MI-

CROCHIP, 2003) de proposito geral e possuem tambem boa aceitacao na area de Proces-

sadores Digitais de Sinais, com a familia dsPic30f, que sao microcontroladores de 16 bits

e que possuem integrados rotinas de controle digital de sinal.

Assim como todos os microcontroladores, a famılia dsPic30F possui em seus micro-

controladores alguns perifericos associados a sua unidade de processamento, que sao

Page 16: DESENVOLVIMENTO DE SISTEMA DE ... - dainf.ct.utfpr.edu.brfabro/IF66J/Relatorios_Finais/2010_1/... · o homem em tarefas que tipicamente envolviam riscos como: ... T opicos sobre eletr^onica

2.2 O microcontrolador 15

• Timers (32 ou 16 bits)

• Input Capture

• Output Compare

• Motor Control PWM

• Quadrature Encoder Interface (QUEI)

• Conversores A/D de 12 e 10 bits

• UART

• I2C

• SPI

• Data Converter Interface

• Modulo CAN

Dependendo do microcontrolador escolhido algumas funcoes podem nao estar disponıveis.

2.2.1.1 dsPic30F3010

O dsPic30F3010 e uma CPU de arquitetura RISC modificada de alta performance e

84 instrucoes base de 24 bits e dados de 16 bits. possui 1KB de RAM e 1KB de memoria

EEPROM nao volatil.

Este microconrolador pode operar em ate 30 MIPS, utilizando uma fonte externa de

clock de 0 a 40MHz, ou um oscilador de 4 a 10Mhz com PLL de 4x,8x ou 16x.

Uma grande vantagem deste microcontrolador e que para atender as necessidades de

um processador digital de sinais este possui multiplicacao por hardware em ciclo unico de

maquina, agilizando calculos mais pesados, como por exemplo um filtro PID.

As caracterısticas deste microcontrolador desejadas para o projeto sao os conversores

A/D de 10 bits e 500ksps, as ate 6 saıdas de controle de PWM para controle de mo-

tores, a interface UART, tres interrupcoes externas com fonte em pinos, multiplicacao

por hardware, Timer de 16 bits.

Page 17: DESENVOLVIMENTO DE SISTEMA DE ... - dainf.ct.utfpr.edu.brfabro/IF66J/Relatorios_Finais/2010_1/... · o homem em tarefas que tipicamente envolviam riscos como: ... T opicos sobre eletr^onica

2.3 Comunicacao sem Fio 16

2.3 Comunicacao sem Fio

A aplicacao de radiofrequencia(RF) ou WiFi concentra-se no envio de sinais de con-

trole para o robo movel, bem como a recepcao de sinais pelo computador que controla

esse. Esta tecnologia e aplicada nestes projeto visando a mobilidade do robo, o que, um

vez com fios, tornaria-se inviavel (BIANCHINI; MENESES; MARCHI, 2009).

O radiofrequencia e um sistema de comunicacao utilizado para fins diversos como

televisao, radio, aviacao, controle de dispositivos, onde ondas eletromagneticas sao propa-

gadas no espaco. Os sitesmas de comunicacao basicos sao formados por dois elementos:

o transmissor e o receptor (FEPLAM, 1977). O trasmissor e composto por um circuito os-

cilador, um transdutor e um modulador. O circuito oscilador converte a corrente eletrica

em oscilacoes de uma determinada frequencia de radio. Fica a cargo do transdutor con-

verter a infrormacao a ser transmitida em impulsos eletricos equivalentes a cada valor.

O modulador controla as variacoes na intensidade de oscilacao ou na frequencia da onda

portadora. Ha a presenca de uma antena no tramissor para que ele possa enviar os sinais.

O receptor e basicamente composto por uma atena receptora acoplada a um circuito que

converte as ondas eletromagneticas captadas em oscilacoes eletricas e um demodulador

(FEPLAM, 1977).

A tecnologia de Wifi diferencia-se da RF principalemente por trabalharem em frequencias

mais altas (2,4 Ghz ou 5Ghz), por utilizarem padroes de rede 802.11 por poder transmitir

em quaisquer das faixas de frequencia, chaveando rapidamente entre elas. Comutar en-

tre as frequencias ajuda a reduzir a interferencia e permite que varios dispositivos usem

a mesma conexao sem fio, simultaneamente (BRAIN; WILSON, ). A adocao da tecnolo-

gia de RF ou WiFi, e escolhida de acordo com a realidade do projeto em que se aplica

sendo avaliados quesitos como: performace, custo, consumo, facilidade de implementacao,

alcance entre outro que podem tornar-se pertinentes.

2.4 Sistema de Controle de Versao

Na funcao pratica de Ciencia da Computacao, Engenharia da Computacao e Engen-

haria de Software, comumente utilizado no desenvolvimento de softaware, um Sistema de

Controle de Versao (ou versionamento) desempenha o gerenciamento de diferentes versoes

do que se esta desenvolvendo. No caso de software, versiona os codigos fonte, bem como

a documentacao (CRISTIANO, 2004). Esse tipo de sistema e muito presente em empresas

Page 18: DESENVOLVIMENTO DE SISTEMA DE ... - dainf.ct.utfpr.edu.brfabro/IF66J/Relatorios_Finais/2010_1/... · o homem em tarefas que tipicamente envolviam riscos como: ... T opicos sobre eletr^onica

2.4 Sistema de Controle de Versao 17

e instituicoes de tecnologia e desenvolvimento de software. E tambem muito comum no

desenvolvimento de software livre. E util, em diversos aspectos, tanto para projetos pes-

soais pequenos e simples como tambem para grandes projetos comerciais (MIKKELSEN;

PHERIGO, 1997).

Entre os mais comuns encontram-se as solucoes livres: CVS, Git e SVN; e as comerci-

ais: SourceSafe e ClearCase. A eficacia do controle de versao de software e comprovada por

fazer parte das exigencias para melhorias do processo de desenvolvimento de certificacoes

tais como CMMI e SPICE (DIAS, 2009)

As principais vantagens de se utilizar um sistema de controle de versao para rastrear

as alteracoes feitas durante o desenvolvimento de software ou o desenvolvimento de um

documento de texto qualquer sao: controle do historico, trabalho em equipe, resgate e

marcacao de versoes estaveis, ramificacao do projeto/citemolinari.

A maior parte das informacoes - com todo o historico - ficam guardadas num repositorio

alojado em um servidor qualquer. Geralmente o acesso e feito por um cliente pela rede

(via socket) e pode ser feito localmente quando o cliente esta na mesma maquina do servi-

dor. Pode-se criar nıveis hierarquico para os utiliadores do repositorio. E possıvel que

o armazenamento seja feito em outros dispositivos capazes de fazer persistir e resgatar

facilmente a informacao.Cada desenvolvedor possui em sua maquina uma copia local so-

mente da ultima versao de cada documento. A cada alteracao relevante do desenvolvedor

e necessario ”atualizar”as informacoes do servidor submetendo (commit) as alteracoes.

O servidor entao guarda a nova alteracao junto de todo o historico mais antigo. Se o

desenvolvedor quer atualizar sua copia local e necessario atualizar as informacoes locais,

e para isso e necessario baixar novidades do servidor (update) (MOLINARI, 2007).

Uma sequencia de passos demostrativa para uma mesclagem poderia ser da seguinte

forma:

1. Atualizacao: desenvolvedor atualiza sua versao local

2. Desenvolvimento: cada desenvolvedor trabalha em sua copia. Esta tarefa de desen-

volvedores ocrre simulataneamente

3. Submissao: desenvolvedor submete sua alteracao

4. Necessidade de atualizacao: este fluxo ocorre quando dois desenvolvedores estiveram

trabalhando sobre o mesmo arquivo e um deles submeteu sua versao antes do outro.

Assim esse Segundo precisa atualizar sua pasta antes de submeter.

Page 19: DESENVOLVIMENTO DE SISTEMA DE ... - dainf.ct.utfpr.edu.brfabro/IF66J/Relatorios_Finais/2010_1/... · o homem em tarefas que tipicamente envolviam riscos como: ... T opicos sobre eletr^onica

2.4 Sistema de Controle de Versao 18

5. Mescla: as alteracoes feitas pelos usuarios que estiveram trabalhando sobre o mesmo

arquivo sao mescladas.

6. Submissao: mais uma vez ocorre a submissao, mas dessa vez e da versao final

Page 20: DESENVOLVIMENTO DE SISTEMA DE ... - dainf.ct.utfpr.edu.brfabro/IF66J/Relatorios_Finais/2010_1/... · o homem em tarefas que tipicamente envolviam riscos como: ... T opicos sobre eletr^onica

19

3 CONCLUSAO E RESULTADOS

3.1 O Software de Interface

No intuito de prover uma interface de controle para o robo idealizou-se um software

que permitisse tal tarefa. Este software serviria, a princıpio, como um centralizador de

possıveis comandos que o robo executaria e leituras que poderiam ser feitas, criando assim

um conjunto de funcoes alto nıvel para controle e monitoramento do robo. O desenvolvi-

mento desse software de interfaceamento deu-se atraves da linguagem de programacao

Java.

3.1.1 Interface

A interface inicialmente idealizada continha as funcoes basicas que desejava-se execu-

tar e mensurar com o robo (Figura 4). Ao longo do desenvolvimento do projeto, notou-se

que essa interface inicial fugia do escopo definido para o robo: movimentacao omnidire-

cional. A interface inicial provia os movimentos definidos como: “Movimento Angular”

pois ao clicar na seta para que aponta para o lado direito, ou para a seta que aponta para

o lado esquerdo, o robo iria girar. Ao clicar na seta que aponta para frente ou na seta

que aponta para tras, o mesmo se deslocaria linearmente no sentido acionado. Para que a

interface estivesse em conformidade com o o que foi proposto, incluiu-se o que foi definido

como “Movimento Linear” que permite o software enviar comandos para o robo mover-se

em conformidade com o o comportamento omnidirecional, bem como a inclusao de out-

ras funcionalidades que se mostraram pertinentes e tambem fez-se uma reformulacao na

mesma com modificacoes no que diz respeito a identidade visual do programa (CLIFTON,

2004).

O estado da arte do software e mostrado na Figura 5. Na parte superior encontram-se

os campos de monitoramento do robo. Periodicamente, o software envia comandos de

monitoramento ao robo, ou seja, solicita ao robo algumas informacoes para sua utilizacao.

Page 21: DESENVOLVIMENTO DE SISTEMA DE ... - dainf.ct.utfpr.edu.brfabro/IF66J/Relatorios_Finais/2010_1/... · o homem em tarefas que tipicamente envolviam riscos como: ... T opicos sobre eletr^onica

3.1 O Software de Interface 20

Figura 4: Primeiro Prototipo do Software de Interfaceamento

Tais informacoes sao: velocidade, angulo do robo e nıvel da bateria e servem para que o

utilizador mantenha-se ciente sobre estes parametros.

Abaixo encontra-se o que definiu-se por “Historico de Comandos”,onde tem-se uma

lista de comandos enviados e uma lista de comandos recebidos. De acordo com o proto-

colo de comunicacao implementado, ao receber a confirmacao de um comando enviado, e

retirado da lista de comandos enviados definida como “Buffer de Envio” tal ocorrencia.

Na sequencia, sao apresentados dois paineis para controle do robo. Sao estes o “Movi-

mento Angular” e o “Movimento Linear”, tais como descritos anteriormente, sendo que o

segundo permite que o utilizador, a partir de um espaco dedicado com o desenho do robo

inserido no meio, clique em uma posicao deste espaco fazendo com que o robo se desloque

de acordo com acao executada, ou seja, tendo como referencia o robo, o utlizador clica

em um lugar da janela. Tal evento gera como saıda um modulo (distancia da posicao do

clique ao robo) e um angulo (referente ao robo centrado em um cırculo trigonometrico).

Essa interface permite, tambem, a escolha de uma entre as portas seriais listadas, a

ser utilizada, e estabelece a conexao somente apos definido este para5metro. Tais portas

sao apresentadas em uma ComboBox na parte mais inferior da janela do programa e sao

listadas de acordo com a disponibilidade das mesmas na maquina onde o software esta

em execucao.

3.1.2 Comunicacao

Atraves de um circuito RF conectado ao computador, e possıvel enviar comandos

para o robo. Tal circuito esta conectado em uma serial emulada. Sendo assim, os dados

Page 22: DESENVOLVIMENTO DE SISTEMA DE ... - dainf.ct.utfpr.edu.brfabro/IF66J/Relatorios_Finais/2010_1/... · o homem em tarefas que tipicamente envolviam riscos como: ... T opicos sobre eletr^onica

3.1 O Software de Interface 21

Figura 5: Estado da Arte do Software de Interfaceamento

enviados do computador deverao sair por esta porta serial emulada e diante da realidade

da linguagem de programacao Java, duas API’s para comunicacao serial foram estudadas:

JavaComm e RxTx.

A JavaComm e uma API que teve sua divulgacao inicial em 1997, e que facilita o de-

senvolvimento aplicacoes que envolvam plataformas de comunicacao independentes para

tecnologias diversas, e atualmente a implementacao desta API esta disponıvel para Solaris

SPARC e X86 e Linux86 (SUN MICROSYSTEMS - ORACLE, 2010). No inıcio do estudo das

possibilidades de se fazer comunicacao serial com Java, foi abordada a utilizacao da API

JavaComm sem saber da sua limitacao e por haver alguns exemplos de implementacoes

em outras fontes. Tais exemplos, quando implementados resultaram em falhas demasiadas

e pelo grande tempo despendido nesta atividade, resolveu-se partir para uma nova abor-

dargem. Este novo rumo foi a bibliotexa RxTx que e uma biblioteca nativa, ou seja, uma

biblioteca desenvolvida em linguagem C e portada para Java, e que prove comunicacao

serial e paralela para o JDK (JARVI, 2006). Tal solucao pode ser implementada em tempo

muito inferior que a anterior e com sucesso. Utilizou-se um modelo de codigo para estab-

elecimento da comunicacao serial postado ao site DevMedia por Petter Rafael Villa Real

Silva (SILVA, 2007).Para o teste das funcionalidades utilizou-se um virtualizador de portas

seriais [colocar nome do programa] e a partir do software RealTerm e do software Java

Page 23: DESENVOLVIMENTO DE SISTEMA DE ... - dainf.ct.utfpr.edu.brfabro/IF66J/Relatorios_Finais/2010_1/... · o homem em tarefas que tipicamente envolviam riscos como: ... T opicos sobre eletr^onica

3.2 Controle de Movimentacao do Robo e Perifericos 22

com comunicacao serial implementada, realizar testes de recepcao e envio de informacoes

de forma serial.

Visto que o codigo estava funcional, portou-se este para o codigo ja existente da inter-

face resultando assim no software de interfaceamento que aos pouco foi sendo aprimorado

com as novas funcionalidades a medida que os testes eram feitos.

3.2 Controle de Movimentacao do Robo e Perifericos

Para o controle da movimentacao do robo foram levados em conta o formato da

carcaca, o tipo e numero de rodas disponıveis, e as respostas dos sensores utilizados: uma

bussola analogica e encoders.

A roda omnidirecional e uma roda com 2 angulos de liberdade, e nao possui as

limitacoes de movimentacao presentes nas rodas bidirecionais, permitindo uma movi-

mentacao rapida. Com tres rodas o controle e simples e as possibilidades de movimentacao

sao amplas, o robo consegue se mover livremente para qualquer direcao, assim como re-

alizar rotacoes.

As rodas omnidirecionais utilizadas sao do modelo 2051KX cat-trak transwheels, col-

una unica, da Kornylak. No robo elas sao separadas de modo que seus eixos de rotacao

apontam para o centro e formam entre eles um angulo de 120 graus.

Figura 6: Transwheel 2051KX unica (KORNYLAK CORPORATION, 2010).

A velocidade linear de cada roda dependera de um vetor velocidade, com modulo e

direcao, relativo a frente do robo, e cujo inicio e o centro da carcaca, no mesmo ponto em

que os eixos de rotacao se encontram.

Velocidade Linear Roda A = Velocidade.cos(0 graus - Angulo);

Velocidade Linear Roda B = Velocidade.cos(-120 graus - Angulo);

Velocidade Linear Roda C = Velocidade.cos(120 graus - Angulo);

Sendo velocidade e angulo os atributos do vetor velocidade.

Page 24: DESENVOLVIMENTO DE SISTEMA DE ... - dainf.ct.utfpr.edu.brfabro/IF66J/Relatorios_Finais/2010_1/... · o homem em tarefas que tipicamente envolviam riscos como: ... T opicos sobre eletr^onica

3.2 Controle de Movimentacao do Robo e Perifericos 23

A velocidade final de cada roda e a velocidade linear mais a angular, que e uma variavel

de mesma velocidade e direcao para todas as rodas. Se esta soma ultrapassar o limite de

velocidade suportada pela roda, entao o conjunto e proporcionalmente decrementado.

Foi tambem implementado um sistema de distancias, cujo calculo e semelhante ao

da velocidade. No movimento linear, alem da velocidade e direcao, pode ser dada uma

distancia a percorrer, sendo que com esta distancia vencida o robo termina o movimento.

Distancia a ser percorrida pela roda A = Distancia.cos(0graus - Angulo);

Distancia a ser percorrida pela roda B = Distancia.cos(-120graus - Angulo);

Distancia a ser percorrida pela roda C = Distancia.cos(120graus - Angulo);

Ja no movimento angular alem da velocidade de entrada pode ser dado um angulo

limite para a rotacao, quando este angulo for vencido o giro para.

A velocidade calculada e direcao sao enviadas pelo micro-controlador a 3 microchips

L298, que possuem 2 pontes H cada um. Como o motor utilizado (modelo MN37-5655, da

Inmepe Maia) e de corrente direta, DC, as velocidades podem ser controladas por meio

de modulacao de largura de pulso, PWM, gerado pelo micro-controlador.

Para verificacao da velocidade real de cada roda e distancias percorridas por cada uma,

e utilizado um encoder em cada roda, implementados com foto interruptores GP1A51HRJ00F

da Sharp Microeletronics e encoders circulares feitos com impressao a laser em papel para

transparencia. Com os dados do encoder conseguimos comparar se a velocidade e distancia

percorrida por cada roda correspondem aos resultados dos calculos previos, possibilitando

tomada de acoes como re-ajuste de velocidade de uma roda, ou parar o robo quando certa

distancia for percorrida.

Para verificar a direcao apontada pela dianteira do robo, assim como variacoes da

mesma, e utilizada uma bussola analogica Dismore 1650. Na deteccao de uma variacao

de angulo durante um movimento linear - sem estar ocorrendo um movimento angular ao

mesmo tempo -consegue-se verificar a ocorrencia de um erro na rota e corrigi-la. Tambem

conseguimos saber quanto o robo girou em um movimento angular e podemos mandar

para-lo se houver um angulo limite para a rotacao e esta for ultrapassada.

Page 25: DESENVOLVIMENTO DE SISTEMA DE ... - dainf.ct.utfpr.edu.brfabro/IF66J/Relatorios_Finais/2010_1/... · o homem em tarefas que tipicamente envolviam riscos como: ... T opicos sobre eletr^onica

3.3 Placa de Circuito Impresso 24

Figura 7: Bussola Analogica Dinsmore 1650.

3.3 Placa de Circuito Impresso

A primeira versao da placa e apresentada nas Figuras 8 e 9. Nesta versao utilizou-se

apenas dois L298 (Pontes H) para controlar os tres motores - um dos CIs controlava dois

motores e o outro controlava o motor restante. Isso acabou ocasionando o aquecimento

exagerado e ate danos as Pontes H devido a corrente que circulava pelo circuito.

A segunda versao da placa e apresentado na Figuras 10, 11, 12, 13 e 14. Nesta versao

utilizou-se duas pontes H para controlar cada motor, diminuindo assim a corrente que

circula pelo circuito, consequentemente houve drecrescimo do aquecimento dos L298.

Page 26: DESENVOLVIMENTO DE SISTEMA DE ... - dainf.ct.utfpr.edu.brfabro/IF66J/Relatorios_Finais/2010_1/... · o homem em tarefas que tipicamente envolviam riscos como: ... T opicos sobre eletr^onica

3.3 Placa de Circuito Impresso 25

11

22

33

44

55

66

77

88

DD

CC

BB

AA

Title

Num

ber

Rev

ision

Size A3

Dat

e:26

/05/

2010

Shee

t o

fFi

le:

V:\R

enat

o\D

arw

in\O

mni

-Sch

\Om

ni_1

.Sch

DocD

raw

n B

y:

MC

LR1

EMU

D3/

AN

0/V

REF

+/C

N2/

RB

02

EMU

C3/

AN

1/V

REF

-/CN

3/R

B1

3

AN

2/SS

1/C

N4/

RB

24

AN

3/IN

DX

/CN

5/R

B3

5

AN

4/Q

EA/IC

7/C

N6/

RB

46

AN

5/Q

EB/IC

8/C

N7/

RB

57

VSS

8

OSC

1/C

LKI

9

OSC

2/C

LKO

/RC

1510

EMU

D1/

SOSC

I/T2C

K/U

1ATX

/CN

1/R

C13

11

EMU

C1/

SOSC

O/T

1CK

/U1A

RX

/CN

0/R

C14

12

VD

D13

EMU

D2/

OC

2/IC

2/IN

T2/R

D1

14EM

UC

2/O

C1/

IC1/

INT1

/RD

015

FLTA

/INT0

/SC

K1/

OC

FA/R

E816

PGD

/EM

UD

/U1T

X/S

DO

1/SC

L/R

F317

PGC

/EM

UC

/U1R

X/S

DI1

/SD

A/R

F218

VSS

19

VD

D20

PWM

3H/R

E521

PWM

3L/R

E422

PWM

2H/R

E323

PWM

2L/R

E224

PWM

1H/R

E125

PWM

1L/R

E026

AV

SS27

AV

DD

28

U4

DSP

IC30

F301

0-20

I/SP

EN A

6

EN B

11

IN1

5

IN2

7

IN3

10

IN4

12O

UT1

2

OU

T23

OU

T313

OU

T414

ISEN

A1

ISEN

B15

VS

4V

SS9

GN

D8

U5

L298

N

EN A

6

EN B

11

IN1

5

IN2

7

IN3

10

IN4

12O

UT1

2

OU

T23

OU

T313

OU

T414

ISEN

A1

ISEN

B15

VS

4V

SS9

GN

D8

U3

L298

N

+19.

2VC

C

+5V

CC

GN

D

12

Y1

XTA

L 10

MH

z

GN

DG

ND

27pF

C6

27pF

C8

GN

D

NV

cc1

2

GN

D3

Vcc

45

GN

D6

BS1

Din

smor

e166

5

CW

100K

R1

CW

100K

R2

+5V

CC

GN

DG

ND

12

34

56

78

910

P1 Enco

der 1

+5V

CC

GN

D

+5V

CC

47uF

C1

GN

D

IN1

2

OU

T3

GN

D

U1

GN

D

47uF

C2

GN

D

100n

FC

410

0nF

C3

GN

DG

ND

GN

D

4,7K

R5

+5V

CC

270K

R6

GN

D

GN

D

12

34

56

JP1

MC

LRPG

C

PGD

+5V

CC

1 2 3 4 65

CN

2

GN

D

+19.

2VC

C

123C

N1

KR

E-3

GN

D

+19.

2VC

C+9

.6V

CC

+9.6

VC

C+5

VC

C

+5V

CC

CW 100K

R7

1mH

L1

+5V

CC

GN

D

i1

i2 i

2

i1

i1

i1

i1

i1

i2

100n

FC

9

GN

D

100n

FC

10

GN

D

100n

FC

11

GN

D

GN

D

TVS1

TVS2

TVS3

AN

T1

GN

D2

RSS

I3

BU

SY4

D O

UT

5

D IN

6

RD

Y7

VC

C8

GN

D9

U2

Easy

Rad

io

PIBS101

PIBS102

PIBS103

PIBS104

PIBS105

PIBS106CO

BS1

PIC101 PIC102COC

1PIC201 PIC202

COC2

PIC301PIC302COC

3PIC401PIC402

COC4

PIC601PIC602COC

6PIC801PIC802

COC8

PIC901PIC902COC

9PIC1001PIC1002

COC1

0

PIC1101PIC1102CO

C11

PICN

101

PICN

102

PICN

103

COCN

1

PICN

201

PICN

202

PICN

203

PICN

204

PICN20

5PI

CN20

6 COCN

2

PIFX

101 CO

FX1

PIJP101

PIJP102

PIJP103

PIJP104

PIJP105

PIJP106CO

JP1

PIL1

01PI

L102

COL1

PIP101

PIP102

PIP103

PIP104

PIP105

PIP106

PIP107

PIP108

PIP109

PIP1010COP

1

PIR1

01

PIR102PI

R103

COR1

PIR2

01

PIR202PI

R203

COR2

PIR501PIR502 COR5

PIR601PIR602COR

6

PIR701PI

R702

PIR703COR

7

PITVS101PITVS102COTVS1

PITVS201PITVS202COTVS2

PITVS301PITVS302COTVS3

PIU101

PIU102

PIU103

COU1

PIU201

PIU202

PIU203

PIU204

PIU205

PIU206

PIU207

PIU208

PIU209COU

2

PIU301

PIU302

PIU303

PIU304

PIU305

PIU306

PIU307

PIU308

PIU309

PIU3010

PIU3011

PIU3012

PIU3013

PIU3014

PIU3015

COU3

PIU401

PIU402

PIU403

PIU404

PIU405

PIU406

PIU407

PIU408

PIU409

PIU4010

PIU4011

PIU4012

PIU4013

PIU4014

PIU4015

PIU4016

PIU4017

PIU4018

PIU4019

PIU4020

PIU4021

PIU4022

PIU4023

PIU4024

PIU4025

PIU4026

PIU4027

PIU4028CO

U4

PIU501

PIU502

PIU503

PIU504

PIU505

PIU506

PIU507

PIU508

PIU509

PIU5010

PIU5011

PIU5012

PIU5013

PIU5014

PIU5015

COU5

PIY101

PIY102

COY1

PIBS101

PIBS104

PIC201PIC402

PIJP103

PIP101

PIP104

PIP107

PIR1

03PI

R203

PIR502

PIU103

PIU208

PIU309

PIU4013

PIU4020

PIU4028

PIU509

NL05VCC

PICN

102

PIL1

01

PICN

103

PIR602

PIU304

PIU504

PIJP106

PIR501

PIU401

NL\M\C

\L\R

PIBS103

PIBS106

PIC102PIC202

PIC301PIC401

PIC601PIC801

PIC901PIC1001

PIC1101

PICN

101

PIJP102

PIP103

PIP106

PIP109

PIR1

01PI

R201

PIR701

PIU102

PIU202

PIU207

PIU209

PIU301

PIU308

PIU3015

PIU408

PIU4019

PIU4027

PIU501

PIU508

PIU5010

PIU5011

PIU5012

PIU5015

PIBS102

PIU404

PIBS105

PIU405

PIC101PIC302

PIL1

02PIU101

PIC602PIU409

PIY102

PIC802

PIU4010

PIY101

PIC902

PIR102

PIU402

PIC1002

PIR202

PIU403

PIC1102

PIR601 PIR703PI

CN20

1

PITVS102

PIU302

PICN

202

PITVS101

PIU303

PICN

203

PITVS202

PIU3013

PICN

204

PITVS201

PIU3014

PICN20

5

PITVS302

PIU502

PICN

206

PITVS301

PIU503

PIFX

101

PIU201

PIJP101

PIP102

PIU4015

PIP105

PIU4014

PIP108

PIU4016

PIP1010

PIR7

02

PIU406

PIU203

PIU204

PIU205

PIU4012

PIU206

PIU4011

PIU305

PIU4026

PIU307

PIU4025

PIU3010

PIU4024

PIU3012

PIU4023

PIU407

PIU4021

PIU507

PIU4022

PIU505

PIU5013

PIU5014

PIJP104

PIU306

PIU3011

PIU4018

PIU506

NLPG

C

PIJP105

PIU4017

NLPG

D

Figura 8: Diagrama Esquematico do Circuito Impresso da Placa V1

Page 27: DESENVOLVIMENTO DE SISTEMA DE ... - dainf.ct.utfpr.edu.brfabro/IF66J/Relatorios_Finais/2010_1/... · o homem em tarefas que tipicamente envolviam riscos como: ... T opicos sobre eletr^onica

3.3 Placa de Circuito Impresso 26

PABS106PABS105PABS104

PABS103PABS102PABS101COBS1

PAC102

PAC101COC1

PAC202

PAC201COC2

PAC302

PAC301COC3

PAC402

PAC401

COC4

PAC602 PAC601

COC6

PAC802PAC801

COC8

PAC902PAC901 COC9

PAC1002PAC1001 COC10PAC1102PAC1101 COC11

PACN101 PACN102 PACN103

COCN1

PACN206PACN205PACN204PACN203PACN202PACN201

COCN2

PAFX101COFX1

PAJP106 PAJP105PAJP104 PAJP103PAJP102 PAJP101

COJP1

PAL101

PAL102

COL1

PAP101PAP102

PAP103PAP104

PAP105PAP106

PAP107PAP108

PAP109PAP1010

COP1 PAR103PAR102PAR101

COR1PAR203PAR202PAR201

COR2

PAR502PAR501 COR5

PAR602PAR601COR6

PAR703PAR702PAR701

COR7

PATVS102

PATVS101

COTVS1PATVS202

PATVS201

COTVS2PATVS302

PATVS301

COTVS3PAU103PAU102PAU101

COU1

PAU201

PAU203PAU204PAU205PAU206PAU207PAU208PAU209

PAU202 COU2

PAU301

PAU308PAU309

PAU3010PAU3011

PAU302PAU303

PAU304PAU305

PAU306PAU307

PAU3012PAU3013

PAU3014PAU3015

COU3

PAU4015 PAU4016 PAU4017 PAU4018 PAU4019 PAU4020 PAU4021 PAU4022 PAU4023 PAU4024 PAU4025 PAU4026 PAU4027 PAU4028

PAU4014 PAU4013 PAU4012 PAU4011 PAU4010 PAU409 PAU408 PAU407 PAU406 PAU405 PAU404 PAU403 PAU402 PAU401 COU4

PAU501

PAU508PAU509

PAU5010PAU5011

PAU502PAU503

PAU504PAU505PAU506

PAU507

PAU5012PAU5013 PAU5014PAU5015

COU5

PAY101 PAY102COY1

PABS101PABS104

PAC201 PAC402

PAJP103

PAP101PAP104

PAP107 PAR103PAR203

PAR501

PAU103

PAU208

PAU309

PAU4013

PAU4020 PAU4028

PAU509

PACN102

PAL101

PACN103

PAR602

PAU304

PAU504

PAJP106

PAR502

PAU401

PABS103

PABS106

PAC102

PAC202PAC301

PAC401

PAC601PAC801PAC901

PAC1001PAC1101

PACN101

PAJP102

PAP103PAP106

PAP109

PAR101PAR201 PAR701

PAU102

PAU202

PAU207

PAU209

PAU301

PAU308

PAU3015

PAU408

PAU4019 PAU4027

PAU501

PAU508PAU5010

PAU5011PAU5012

PAU5015

PABS102

PAU404

PABS105

PAU405

PAC101

PAC302

PAL102PAU101

PAC602

PAU409

PAY102

PAC802

PAU4010

PAY101

PAC902

PAR102

PAU402

PAC1002

PAR202

PAU403

PAC1102

PAR601

PAR703

PACN201

PATVS102

PAU302

PACN202

PATVS101

PAU303

PACN203

PATVS202

PAU3013

PACN204

PATVS201PAU3014

PACN205

PATVS302

PAU502

PACN206

PATVS301

PAU503

PAFX101PAU201 PAP102

PAU4015

PAP105

PAU4014

PAP108

PAU4016

PAR702

PAU406PAU205

PAU4012

PAU206

PAU4011

PAU305

PAU4026

PAU307

PAU4025

PAU3010

PAU4024

PAU3012

PAU4023PAU4021

PAU507

PAU4022

PAU505

PAJP104

PAU306

PAU3011

PAU4018

PAU506

PAJP105

PAU4017

Figura 9: Esquema da Placa V1

Page 28: DESENVOLVIMENTO DE SISTEMA DE ... - dainf.ct.utfpr.edu.brfabro/IF66J/Relatorios_Finais/2010_1/... · o homem em tarefas que tipicamente envolviam riscos como: ... T opicos sobre eletr^onica

3.3 Placa de Circuito Impresso 27

11

22

33

44

55

66

77

88

DD

CC

BB

AA

Title

Num

ber

Rev

isio

nSi

ze A3

Dat

e:10

/06/

2010

Shee

t o

fFi

le:

\\..\O

mni

_1.S

chD

ocD

raw

n By

:

MC

LR1

EMU

D3/

AN

0/V

REF

+/C

N2/

RB

02

EMU

C3/

AN

1/V

REF

-/CN

3/R

B1

3

AN

2/SS

1/C

N4/

RB

24

AN

3/IN

DX

/CN

5/R

B3

5

AN

4/Q

EA/IC

7/C

N6/

RB

46

AN

5/Q

EB/IC

8/C

N7/

RB

57

VSS

8

OSC

1/C

LKI

9

OSC

2/C

LKO

/RC

1510

EMU

D1/

SOSC

I/T2C

K/U

1ATX

/CN

1/R

C13

11

EMU

C1/

SOSC

O/T

1CK

/U1A

RX

/CN

0/R

C14

12

VD

D13

EMU

D2/

OC

2/IC

2/IN

T2/R

D1

14EM

UC

2/O

C1/

IC1/

INT1

/RD

015

FLTA

/INT0

/SC

K1/

OC

FA/R

E816

PGD

/EM

UD

/U1T

X/S

DO

1/SC

L/R

F317

PGC

/EM

UC

/U1R

X/S

DI1

/SD

A/R

F218

VSS

19

VD

D20

PWM

3H/R

E521

PWM

3L/R

E422

PWM

2H/R

E323

PWM

2L/R

E224

PWM

1H/R

E125

PWM

1L/R

E026

AV

SS27

AV

DD

28

U4

DSP

IC30

F301

0-20

I/SP

EN A

6

EN B

11

IN1

5

IN2

7

IN3

10

IN4

12O

UT1

2

OU

T23

OU

T313

OU

T414

ISEN

A1

ISEN

B15

VS

4V

SS9

GN

D8

U5

L298

N

EN A

6

EN B

11

IN1

5

IN2

7

IN3

10

IN4

12O

UT1

2

OU

T23

OU

T313

OU

T414

ISEN

A1

ISEN

B15

VS

4V

SS9

GN

D8

U3

L298

N+1

9.2V

CC

+5V

CC

GN

D

12

Y1

XTA

L 10

MH

z

GN

DG

ND

27pF

C6

27pF

C8

GN

D

CW

100K

R1

CW

100K

R2

+5V

CC

GN

DG

ND

12

34

56

78

910

P1 Enco

der 1

+5V

CC

GN

D

+5V

CC

47uF

C1

GN

D

IN1

2

OU

T3

GN

D

U1

GN

D

47uF

C2

GN

D

100n

FC

410

0nF

C3

GN

DG

ND

GN

D

4,7K

R5

+5V

CC

270K

R6

GN

D

GN

D

12

34

56

JP1

MC

LRPG

C

PGD

+5V

CC

1 2 3 4 65

CN2

GN

D

+19.

2VC

C

123CN

1

KRE

-3 GN

D

+19.

2VC

C

+9.6

VC

C

+9.6

VC

C+5

VC

C

+5V

CC

CW 100K

R7

1mH

L1

+5V

CC

GN

D

i1

i2

i2

i1

i1

i1

i1

i1

i2

100n

FC

9

GN

D

100n

FC

10

GN

D

100n

FC

11

GN

D

GN

D

TVS1

TVS2

TVS3

AN

T1

GN

D2

RSS

I3

BUSY

4

D O

UT

5

D IN

6

RDY

7

VCC

8

GN

D9

U2

Easy

Rad

ioEN

A6

EN B

11

IN1

5

IN2

7

IN3

10

IN4

12O

UT1

2

OU

T23

OU

T313

OU

T414

ISEN

A1

ISEN

B15

VS

4V

SS9

GN

D8

U6

L298

N

GN

D

GN

D

+5V

CC

+19.

2VC

C

+5V

CC

+19.

2VC

C

+5V

CC

1KR8

1KR9

1KR10

+5V

CC

+5V

CC

+5V

CC

100n

FC

15

100n

FC

16

100n

FC

17

GN

D

GN

D

GN

D

100n

FC

18

GN

D

100n

FC

1910

0nF

C20

GN

DG

ND

1mH

L2

i2

470u

FC

21

GN

D

4K7

R13

Q3

GN

D

GN

D

+5V

CC 4K

7R

11

Q2

GN

D

GN

D

+5V

CC 4K

7R

3

Q1

GN

D

4K7

R4 4K

7

R12 4K

7

R14

100u

FC

5

100u

FC

7

100u

FC

14

100u

FC

1310

0uF

C12

100u

FC

22

N

Vcc

1 3

GN

D2

Vcc

4 6

GN

D5

* Din

smor

e166

5

Figura 10: Diagrama Esquematico do Circuito Impresso da Placa V2

Page 29: DESENVOLVIMENTO DE SISTEMA DE ... - dainf.ct.utfpr.edu.brfabro/IF66J/Relatorios_Finais/2010_1/... · o homem em tarefas que tipicamente envolviam riscos como: ... T opicos sobre eletr^onica

3.3 Placa de Circuito Impresso 28

PABS106PABS105PABS104

PABS103PABS102PABS101COBS1

PAC102PAC101

COC1

PAC202PAC201COC2

PAC302

PAC301COC3

PAC402

PAC401

COC4

PAC502PAC501

COC5

PAC602 PAC601COC6

PAC702PAC701COC7

PAC802PAC801COC8

PAC902PAC901 COC9

PAC1002PAC1001 COC10

PAC1102PAC1101 COC11

PAC1202PAC1201

COC12

PAC1302PAC1301

COC13

PAC1402PAC1401

COC14

PAC1501PAC1502COC15

PAC1601PAC1602 COC16

PAC1701PAC1702COC17

PAC1801

PAC1802COC18

PAC1901

PAC1902

COC19

PAC2001 PAC2002COC20

PAC2102

PAC2101

COC21

PAC2202PAC2201

COC22

PACN101 PACN102 PACN103

COCN1

PACN206PACN205PACN204PACN203PACN202PACN201

COCN2

PAFX101COFX1

PAJP106PAJP105

PAJP104PAJP103

PAJP102PAJP101COJP1

PAL101

PAL102

COL1

PAL202

PAL201

COL2

PAP101PAP102

PAP103PAP104

PAP105PAP106

PAP107PAP108

PAP109PAP1010

COP1

PAQ101PAQ102

PAQ103

COQ1

PAQ201PAQ202

PAQ203

COQ2

PAQ301PAQ302

PAQ303

COQ3

PAR103PAR102PAR101

COR1PAR203PAR202PAR201

COR2

PAR301

PAR302COR3

PAR401

PAR402COR4

PAR502

PAR501

COR5PAR602

PAR601COR6

PAR703PAR702PAR701

COR7

PAR801 PAR802COR8

PAR901 PAR902COR9PAR1001 PAR1002COR10

PAR1101

PAR1102COR11

PAR1201

PAR1202COR12

PAR1301

PAR1302COR13

PAR1401

PAR1402COR14

PATVS102

PATVS101

COTVS1PATVS202

PATVS201

COTVS2PATVS302

PATVS301

COTVS3

PAU103PAU102PAU101

COU1

PAU201

PAU203PAU204PAU205PAU206PAU207PAU208PAU209

PAU202 COU2PAU301

PAU308PAU309

PAU3010PAU3011

PAU302PAU303 PAU304PAU305

PAU306PAU307

PAU3012PAU3013

PAU3014PAU3015

COU3

PAU4015 PAU4016 PAU4017 PAU4018 PAU4019 PAU4020 PAU4021 PAU4022 PAU4023 PAU4024 PAU4025 PAU4026 PAU4027 PAU4028

PAU4014 PAU4013 PAU4012 PAU4011 PAU4010 PAU409 PAU408 PAU407 PAU406 PAU405 PAU404 PAU403 PAU402 PAU401 COU4

PAU501

PAU508PAU509PAU5010

PAU5011

PAU502PAU503

PAU504PAU505 PAU506PAU507

PAU5012PAU5013PAU5014

PAU5015

COU5

PAU6015 PAU6014PAU6013

PAU6012

PAU607PAU606

PAU605PAU604PAU603PAU602

PAU6011PAU6010

PAU609PAU608

PAU601COU6

PAY101 PAY102COY1

Figura 11: Esquema da Placa V2

Figura 12: Placa V2

Page 30: DESENVOLVIMENTO DE SISTEMA DE ... - dainf.ct.utfpr.edu.brfabro/IF66J/Relatorios_Finais/2010_1/... · o homem em tarefas que tipicamente envolviam riscos como: ... T opicos sobre eletr^onica

3.3 Placa de Circuito Impresso 29

Figura 13: Placa V2 - Vista Superior

Figura 14: Placa V2 - Vista Lateral

Page 31: DESENVOLVIMENTO DE SISTEMA DE ... - dainf.ct.utfpr.edu.brfabro/IF66J/Relatorios_Finais/2010_1/... · o homem em tarefas que tipicamente envolviam riscos como: ... T opicos sobre eletr^onica

3.4 Configuracao do Microcontrolador 30

3.4 Configuracao do Microcontrolador

Para ajustar o microcontrolador para operar com o hardware especificado devem ser

feitos alguns ajustes em seus registradores de modo que o microprocessador opere na

frequencia correta e todos os seus perifericos em seguida respondam da maneira como

desejado.

3.4.0.1 Microprocessador

Para configurar os detalhes da unidade de microprocessamento no compilador uti-

lizado para o codigo (HITEC ANSI C Compiler for pic24 and dsPics) ha uma macro

chamada CONFIG que ativa os bits do registro de configuracao do processador. Em

nosso sistema ficou:

__CONFIG(FOSC, HS2PLL16 & CLKSWDIS & FSCMDIS);

// Ajusta frequencia de oscilac~ao para fonte externa dividida

//por 2 com PLL16

__CONFIG(FWDT, WDTDIS);

//Desabilita Watchdog Timer

__CONFIG(FBORPOR, MCLREN & BORDIS & PWRTDIS & PWMPIN);

//Desativa Brownout Reset e Power on Reset, pinos de PWM como PW

//habilita uso do pino MCLR para manter o dsPic em Reset

__CONFIG(FGS, GCPU & GWRU);

//Code & Write protect desabilitado

__CONFIG(FICD, PGEMU);

//Ativa Emulac~ao usando pinos padr~ao para emular

O restante das configuracoes sao ajustadas dentro da funcao principal do sistema,

comecando pela selecao do oscilador principal e o setup das Entradas e Saıdas do PIC

(ajustado pelo parametro TRISx, onde 1 e Input e 0 e Output):

OSCCON=0x3300;

//Seleciona Oscilador Primario

//Setup das IOs

Page 32: DESENVOLVIMENTO DE SISTEMA DE ... - dainf.ct.utfpr.edu.brfabro/IF66J/Relatorios_Finais/2010_1/... · o homem em tarefas que tipicamente envolviam riscos como: ... T opicos sobre eletr^onica

3.4 Configuracao do Microcontrolador 31

TRISB = 0xFFDF;

TRISC = 0xFFFF;

TRISD = 0xFFFF;

TRISE = 0x0100;

TRISF = 0xFFFF;

LATB = 0x0000;

//portas de saıda com nıvel de saıda em zero

LATE = 0x0000;

//portas de saıda com nıvel de saıda em zero

PDC1 = 0;

//Valor do pwm 1 em zero

PDC2 = 0;

//Valor do pwm 2 em zero

PDC3 = 0;

//Valor do pwm 3 em zero

O proximo passo e configurar os perifericos a serem utilizados, de acordo com o funciona-

mento esperado. O primeiro a ser configurado sao os conversores A/D:

//Setup ADC

ADCON2 = 0x643C;

//0b0110 0100 0011 1100

//VrefG = pino Vref+(ad0), VrefL = pino Vref-(ad1)

//Convers~ao dos canais CH0, CH1, CH2 e CH3

//Interrupt a cada 8 sequencias sample/convert

//buffer de 16 bits, sempre no MUX A

ADCON3 = 0x003F;

//0b0000 0000 0011 1111

//AutoSample time delay = 0

//clock base do sistema

//Perıodo do A/D clock : 32*TCY

ADCHS = 0x2222;

Page 33: DESENVOLVIMENTO DE SISTEMA DE ... - dainf.ct.utfpr.edu.brfabro/IF66J/Relatorios_Finais/2010_1/... · o homem em tarefas que tipicamente envolviam riscos como: ... T opicos sobre eletr^onica

3.4 Configuracao do Microcontrolador 32

//0b0010 0010 0010 0010

//valor positivo para CH0, CH1, CH2 e CH3

//Respectivamente para AN2, AN3, AN4 e AN5

//Valor Negativo para todos os canais em Vref-

ADPCFG = 0x0000;

//todos os pinos de A/D como A/D

ADCSSL = 0xFFFF;

//scan de todos os A/D’s

ADCON1 = 0x80EC;

//1000 0000 1110 1100

//A/D on, n~ao para no IDLE

//Formato de saıda como inteiro n~ao sinalizado

//auto convert

//Medida dos quatro canais simultaneamente

//auto start( mantem continuamente convertendo)

ADIE = 1;

//Habilita interrupc~ao de fim de convers~ao

O funcionamento dos encoders baseia-se em contar a largura do pulso gerado. Para

isto foi colocado cada encoder em uma interrupcao externa que ira medir o numero de

vezes em que entra em um timer de tempo fixo desde a ultima vez em que se entrou na

interrupcao. Para isto e habilitada a interrupcao externa e configurado o timer:

INT0IE = 1;

//Interrupt enable para os enconders

INT1IE = 1;

INT2IE = 1;

//Setup Timer para medir Velocidade dos Encoders

PR4 = 0x1388;

// 0x1388/20MHz = 250us T4IF = 0;

T4IE = 1; /

/interrupt enable

T4CON = 0xA000;

Page 34: DESENVOLVIMENTO DE SISTEMA DE ... - dainf.ct.utfpr.edu.brfabro/IF66J/Relatorios_Finais/2010_1/... · o homem em tarefas que tipicamente envolviam riscos como: ... T opicos sobre eletr^onica

3.4 Configuracao do Microcontrolador 33

//0b1010 0000 0000 0000(TON + TSIDL) -> Timer enable, Stop in IDLE mode,

//no Prescale, internal clock source (Fosc/4 = 5MHz)

Para a comunicacao sem fio e utilizado um modulo transceiver que comunica-se com

o microcontrolador atraves da uart a 19200bps, com 8 bits de dados, um de parada e

nenhum de paridade:

//Setup UART

U1BRG = 64;

//19200Baud for 20MIP (See FRM Tables)

U1MODE=0x8000;

//Enable, 8data, no parity, 1 stop

U1STA =0x8400;

//Enable TX

U1_ALTIO = 1;

//I/O alternativa para uart (para permitir debug nos pinos padr~ao

U1RXIE = 1;

//Interrupt de recebimento ativa

Por Fim, a configuracao do PWM para obter o tipo de onda esperado pelas Pontes

H:

//Setup PWM

PTCON = 0xA00A;

//0b1010 0000 0000 0110 (Time base Enable, Stop in Idle mode, No PostScale,

//64 Prescale, Continuous up/down mode)

PTMR = 0x03E8; /

/(0b0111 1010 0001 0010) - Periodo do timer base do PWM

PTPER = 0x07FF;

//Contagem do pwm ate 0x7FF - aproximadamente 50us

SEVTCMP = 0x0000;

// special event ocorre quando o timer base do pwm conta pra cima,

//quando atinge zero(logo no comeco)

PWMCON1 = 0x0707;

//0b0000 0111 0000 0111 PWM modo indep., com as 3 saidas L ligadas como pwm

Page 35: DESENVOLVIMENTO DE SISTEMA DE ... - dainf.ct.utfpr.edu.brfabro/IF66J/Relatorios_Finais/2010_1/... · o homem em tarefas que tipicamente envolviam riscos como: ... T opicos sobre eletr^onica

3.5 Dificuldades 34

PWMCON2 = 0x0000;

//0b0000 0000 0000 0000

//Sem postscale no PWM special Event Trigger

//Updates ao PDC sincronizados com a base de tempo do pwm, habilitados updates nos dutycicles;

FLTACON = 0x3F00;

//0b0011 1111 1000 0000 Desabilitado FAULT para os 3 motores

OVDCON = 0x1500;

//0b0001 0101 0000 0000 PWMxH I/O e controlada pelo gerador PWM

DTCON1 = 0x0000;

// 0b0000 0000 0000 0000 dead time de 0us

Para aproveitar recursos, na mesma interrupcao gerada pelo timer de contagem do

perıodo dos encoders foi introduzida a rotina de calculo do PID, oned a cada vez que e

gerada a interrupcao e realizado o calculo de correcao de um dos motores circularmente

3.5 Dificuldades

3.5.1 Hardware

Na primeira semana de execucao do projeto, foi constatado que os encoders fornecidos

(produzidos em material plastico) juntamente com o robo apresentavam problemas. A

especificacao do diametro do furo central para encaixe nos eixos dos motores estava errada.

O furo central estava 1mm menor que o diametro do eixo. Apesar dos encoders serem

projetados para fixacao nos eixos por pressao, o furo central estava muito apertado para

o devido encaixe no eixo. Foi entao necessaria a utilizacao de uma morca para que os

encorders fossem posicionados corretamente. Um dos exemplares acabou sendo danificado

neste processo. Quando iniciou-se os testes de funcionamento dos mesmos, verificou-se

que estavam tortos, o que acabava ocasionando a colisao destes com os fotointerruptores.

Partiu-se entao para a construcao de outros exemplares de encoders em transparencia.

Inicialmente foi proposto a utilizacao do transciever MRF24J40 para comunicacao sem

fio, utilizando o protocolo MiWi, pois segundo o fabricante o microcontrolador escolhido

para o projeto teria suporte ao protocolo. Porem quando iniciou-se a implementacao da

comunicacao sem fio, verificou-se que este nao estava devidamente testado, apresentando

diversos erros. Decidiu-se entao, abandonar o transciever MRF24J40 e migrar para o tran-

sciever de radio frequencia Easy-Radio ER400TRS. Apos algumas comparacoes (Tabela

1) verificou-se que esta troca nao afetaria o escopo do projeto.

Page 36: DESENVOLVIMENTO DE SISTEMA DE ... - dainf.ct.utfpr.edu.brfabro/IF66J/Relatorios_Finais/2010_1/... · o homem em tarefas que tipicamente envolviam riscos como: ... T opicos sobre eletr^onica

3.5 Dificuldades 35

ER400RTS MRF24J40MAFrequencia de Operacao 433MHz 2.405-2.48 GHzTensao de Operacao 3.3-5.5V 2.4-3.6VRX mode: 12.5mA 19 mATX mode: <23mA 23 mAVelocidade de Transmissao 19200 bps 250 kbpsAntena Integrada Nao SimAlcance ate 250m ate 100mInterface de comunicacao Serial (uart) SPIBibliotecas necessarias parao uso

– Miwi ou ZigBee

Tabela 1: Comparacao entre ER400RTS e MRF24J40MA

O sistema de leitura dos encoders tambem apresentou problemas. Este estava fixado

junto ao eixo do motor com um parafuso nao isolado, o que acabou ocasionando um

curto-circuito na carcaca do robo.

Outro problema registrado foi que a bussola em certos momentos salta valores, o que

acaba gerando grande imprecisao no movimento angular.

3.5.2 Software

Para desenvolvimento do software teve-se como guia os requisitos estabelecidos no

ERS. Por falta de experiencia dos membros envolvidos no desenvolvimento desse com

os padroes e requisitos estabelecidos para o mesmo, nao foi raro haver desenvolvimento

de codigo fora das conformidades previstas. Outro fator que colaborou com para esse

desenvolvimento foi a elaboracao de codigo conforme as dificuldades surgiam, resultando

no acrescimo de novas funcionalidades para sanarem tais problematicas. Tais fatores

resultaram em um codigo documentado, mas que por vezes foge da conformidade, mas

nao prejudicando o entendimento e continuidade do mesmo.

As dificuldades encontradas no que diz respeito a implementacao do software podem

ser desconsideradas ao passo que a complexidade deu-se apenas em estabelecer a forma

da interacao do software com o robo. Problemas de se usar uma linguagem interpretada e

uma biblioteca portada para a mesma nao apresentaram caracterısticas mensuraveis que

pudessem interferir no projeto ou mesmo ter relevancia no mesmo.

O controle de versoes do software apresentou alguns empecilhos no tratamento da

compatibilidade de arquivos, o que resultou na adocao da pratica de desenvolvimento

serializada ou modularizada e nao paralela, fazendo com que cada classe do codigo fosse

Page 37: DESENVOLVIMENTO DE SISTEMA DE ... - dainf.ct.utfpr.edu.brfabro/IF66J/Relatorios_Finais/2010_1/... · o homem em tarefas que tipicamente envolviam riscos como: ... T opicos sobre eletr^onica

3.6 Controle de Versoes 36

editada por apenas uma pessoa por vez.

3.6 Controle de Versoes

Para um melhor gerenciamento do codigo fonte, utilizou-se o SVN para controle de

versoes. O repositorio pode ser acessado em:

https://subversion.assembla.com/svn/darwinomni

3.7 Trabalhos Futuros

Como sugestao para trabalhos futuros fica a utilizacao deste robo como base para o

desenvolvimento de robos capazes de navegar em ambientes com obstaculos estaticos e

dinamicos, faltando apenas incluir alguns sensores ao redor da carcaca do robo e utilizar

estes dados para desviar dos obstaculos. Outra sugestao e adaptar este robo para competir

na liga F180 da RoboCupTM

, para tanto e necessaria a implementacao de inteligencia

artificial atraves de processamento de imagens, onde um computador servidor captura a

imagem do campo, faz os calculos necessarios e envia os comandos para os robos.

Page 38: DESENVOLVIMENTO DE SISTEMA DE ... - dainf.ct.utfpr.edu.brfabro/IF66J/Relatorios_Finais/2010_1/... · o homem em tarefas que tipicamente envolviam riscos como: ... T opicos sobre eletr^onica

37

REFERENCIAS

BIANCHINI, D.; MENESES, M. B.; MARCHI, V. L. de. 2009. Disponıvel em:<http://www.mecatronicaatual.com.br/secoes/leitura/582/>.

BRAIN, M.; WILSON, T. Como funciona a rede WiFi. Disponıvel em:<http://informatica.hsw.uol.com.br/rede-wifi.htm>.

CLIFTON, R. O mundo das marcas. Lisboa: [s.n.], 2004.

CRISTIANO, C. CVS: Controle de Versoes e Desenvolvimento Colaborativo de Software.[S.l.]: Novatec, 2004.

DIAS, A. F. Conceitos Basicos de Controle de Versao deSoftware Centralizado e Distribuıdo. 2009. Disponıvel em:<http://www.pronus.eng.br/artigos tutoriais/gerencia configuracao/conceitos basicos controle versao centralizado e distribuido.php>.

DOROFTEI, I.; GROSU, V.; SPINU, V. Omnidirectional Mobile Robot - Design andImplementation. 2009. Disponıvel em: <intechweb.org/downloadpdf.php?id=465>.

FEPLAM. O homem que apertou o botao da comunicacao. 2. ed. Porto Alegre: FEPLAM,1977.

FRANCHIN, M. N. Elementos de Robotica. Dezembro 2005. Disponıvel em:<http://www.dee.feb.unesp.br/ marcelo/robotica/conteudo.html>.

J.A.M., F. de S. Robotica. 2005. Disponıvel em: <http://webx.ubi.pt/ fe-lippe/main pgs/mat didp.htm>.

JARVI, T. 2006. Disponıvel em: <http://users.frii.com/jarvi/rxtx/>.

KORNYLAK CORPORATION. 2010. Disponıvel em:<http://www.kornylak.com/images/wheel/transwheel/fxa110-s.jpg>.

MARTINS, N. A. Sistemas Microcontrolados. Sao Paulo: Novatec, 2005.

MICROCHIP. dsPIC30F Family Reference Manual. [S.l.], 2003.

MIKKELSEN, T.; PHERIGO, S. Parctical Software Configuration Management: TheLatenight Developer’s Handbook. Upper Saddle River, NJ, EUA: Prentice Hall, 1997.

MOLINARI, L. Gerencia de Configuracao - Tecnicas e Praticas no Desenvolvimento doSoftware. Florianopolis: Visual Books, 2007.

ROBOCUP. Small Size Robot League. 2010. Disponıvel em: <http://small-size.informatik.uni-bremen.de/rules:main>.

Page 39: DESENVOLVIMENTO DE SISTEMA DE ... - dainf.ct.utfpr.edu.brfabro/IF66J/Relatorios_Finais/2010_1/... · o homem em tarefas que tipicamente envolviam riscos como: ... T opicos sobre eletr^onica

Referencias 38

ROBOTICS INDUSTRIES ASSOCIATION. 2005. Disponıvel em:<http://www.robotics.org/>.

SCHROEDER, G. N. et al. Simulador Grafico para Cont-role de Robos Moveis Omnidirecionais. 2005. Disponıvel em:<http://www.dcc.ufla.br/infocomp/artigos/v4.4/art05.pdf>.

SILVA, P. R. V. R. 2007. Disponıvel em: <http://www.devmedia.com.br/post-6722-Utilizando-a-API-RXTX-para-manipulacao-da-serial-Parte-I.html>.

SUN MICROSYSTEMS - ORACLE. 2010. Disponıvel em:<http://java.sun.com/products/javacomm/>.