Upload
vumien
View
213
Download
0
Embed Size (px)
Citation preview
CENTRO UNIVERSITÁRIO UNIVATES
CURSO DE ENGENHARIA DA COMPUTAÇÃO
PROJETO E DESENVOLVIMENTO DE UMA PLATAFORMA DE
ROBÓTICA EDUCACIONAL PARA ENSINO MÉDIO
Mateus Ohse
Trabalho de conclusão de curso
apresentado ao Centro Universitário
UNIVATES para a obtenção de título de
Bacharel em Engenharia da Computação.
Orientador: Ronaldo Hüsemann
Lajeado, dezembro de 2007.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
RESUMO
O presente trabalho apresenta o desenvolvimento de uma plataforma de controle para robótica educacional para ensino tecnológico, cuja finalidade é prover o controle microcontrolado de robôs. Com base na análise de tecnologias atualmente disponíveis para os mercados de robótica educacional e de competição, foi desenvolvida uma plataforma de controle que suporta os principais recursos demandados por aplicações deste tipo. A placa desenvolvida inclui entradas analógicas para sensores, entradas ou saídas digitais para sensores ou atuadores tipo liga/desliga e saídas para acionamento e controle de velocidade de motores de corrente contínua. A plataforma contém ainda suporte a interrupções, comunicação serial e/ou USB para programação e, além da alimentação principal, alimentação de backup, ambas monitoradas. Uma aplicação didática foi montada a fim de validar a plataforma em condições reais de operação.
PALAVRAS-CHAVE: robótica educacional, ensino tecnológico, plataforma microcontrolada.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
ABSTRACT
This document presents the development of a control platform for educational robotics, which allows microcontrolled control of robots. After analysis of currently available technologies for educational and competition robotics markets was designed a control platform containing the most important functionalities for those applications. The developed board includes analog inputs for sensors, digital input/output for sensors and actuators and PWM outputs for DC motors control. The platform also has interrupts, serial and USB communications and two monitored power sources (main and backup). An educational application was developed to validate the platform in real operational conditions. KEYWORDS: educational robotics, technological education, microcontrolled platform.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
LISTA DE ABREVIATURAS E SIGLAS
A/D Analógico/Digital
CC Corrente Contínua
CCD Charged Couple Device
CCS Custom Computer Service
CPU Central Processor Unit
D/A Digital/Analógico
DC Direct Current
DSP Digital Signal Processor
FIRST For Inspiration and Recognition of Science and Technology
GND Ground
GPL General Public License
I/O Input/Output
ICSP In-Circuit Serial Programming
JTAG Joint Test Action Group
LDR Light Dependent Resistor
LED Light Emissor Diode
MIPS Milhões de instruções por segundo
MIT Massachusetts Institute of Technology
NASA National Aeronautics and Space Administration
NQC Not Quite C
PC Personal Computer
PCI Placa de Circuito Impresso
PCN Parâmetros Curriculares Nacionais
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
PIR Passive infrared sensor
PWM Pulse Width Modulation
RAM Random Access Memory
ROM Read Only Memory
SMD Surface Mounting Device
SRAM Static Random Access Memory
TCP/IP Transmission Control Protocol/Internet Protocol
TQFP Thin Quad Flat Pack
TTL Transistor–Transistor Logic
UART Universal Asynchronous Receiver Transmitter
USB Universal Serial Bus
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
LISTA DE FIGURAS
FIGURA 1: Robô mecânico utilizado na peça teatral R.U.R. Fonte: Currie, 2007. ................15
FIGURA 2: Aplicações atuais de robótica: a) à esquerda, o primeiro robô cirurgião a ser
utilizado no Brasil e b) à direita, robôs da empresa ABB, utilizados para soldagem. Fontes:
Santa Lúcia, 2007 e ABB, 2007. ..............................................................................................17
FIGURA 3: Robôs humanóides: a) QRIO b) Asimo c) PINO. Fontes: Sony, 2007; Honda,
2007 e Kitano, 2007. ................................................................................................................18
FIGURA 4: Diagrama de blocos de um robô. ..........................................................................19
FIGURA 5: Módulo de controle MC2 da empresa PNCA.......................................................28
FIGURA 6: Diagrama de blocos da CPU Robótica Fácil da empresa Symphony...................29
FIGURA 7: Plataforma Gogo Board, na versão 3.0.................................................................29
FIGURA 8: Plataforma Handy Board, do MIT........................................................................30
FIGURA 9: RCX, o “tijolo programável” da LEGO ...............................................................31
FIGURA 10: NXT, sucessor do RCX, da LEGO.....................................................................31
FIGURA 11: Plataforma de controle ROBO INTERFACE, da alemã Fischertechnik............32
FIGURA 12: RC (Robot Controller), da americana Inovation FIRST Robotics. ....................33
FIGURA 13: PIC24FJ128GA006. ...........................................................................................42
FIGURA 14: Utilização dos pinos. ..........................................................................................44
FIGURA 15: Circuito de alimentação da plataforma...............................................................47
FIGURA 16: Circuito de PWM................................................................................................48
FIGURA 17: Circuito de I/O. ...................................................................................................49
FIGURA 18: Entradas analógicas. ...........................................................................................50
FIGURA 19: Comunicação serial RS-232. ..............................................................................51
FIGURA 20: Circuito de gravação ICSP. ................................................................................52
FIGURA 21: Esquemático e placa de circuito impresso do primeiro protótipo. .....................54
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
FIGURA 22: Foto do primeiro protótipo. ................................................................................54
FIGURA 23: Esquemático do segundo protótipo. ...................................................................55
FIGURA 24: Placa de circuito impresso do segundo protótipo. ..............................................55
FIGURA 25: Foto do segundo protótipo..................................................................................56
FIGURA 26: Circuito final da plataforma................................................................................57
FIGURA 27: Placa de circuito impresso da plataforma. ..........................................................58
FIGURA 28: Foto da placa de circuito impresso da plataforma. .............................................59
FIGURA 29: Plataforma pronta, montada em PCI. .................................................................60
FIGURA 30: Circuito do sensor para detecção da linha. .........................................................62
FIGURA 31: Circuito do robô seguidor de linha. ....................................................................63
FIGURA 32: Plataforma aplicada em robô seguidor de linha. ................................................63
FIGURA 33: Exemplo de PWM. .............................................................................................66
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
LISTA DE TABELAS
TABELA 1: Comparação entre as principais características dos módulos de robótica
avaliados ...................................................................................................................................34
TABELA 2: Ligação dos pinos do microcontrolador na plataforma. ......................................44
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
SUMÁRIO
1 Introdução.........................................................................................................................12
2 Revisão Bibliográfica .......................................................................................................14
2.1 Robótica........................................................................................................................14
2.1.1 História da Robótica .................................................................................................15
2.1.2 Aplicações ................................................................................................................16
2.2 Detalhamento de um Robô ...........................................................................................17
2.2.1 Tipos de Robôs .........................................................................................................17
2.2.2 Diagrama funcional ..................................................................................................18
2.2.2.1 Plataforma de controle..............................................................................................19
2.2.2.2 Sensores....................................................................................................................20
2.2.2.2.1 Sensores passivos .................................................................................................21
2.2.2.2.2 Sensores ativos .....................................................................................................21
2.2.2.3 Módulo de condicionamento de sinais .....................................................................21
2.2.2.4 Atuadores..................................................................................................................22
2.2.2.4.1 Solenóides.............................................................................................................22
2.2.2.4.2 Motores CC ..........................................................................................................22
2.2.2.4.3 Motores CC sem escovas (brushless)...................................................................23
2.2.2.4.4 Motores de passo ..................................................................................................24
2.2.2.4.5 Atuadores hidráulicos e pneumáticos...................................................................24
2.2.2.5 Módulos de potência.................................................................................................24
2.2.2.6 Baterias .....................................................................................................................25
3 Contextualização do Projeto.............................................................................................26
3.1 Educação Tecnológica..................................................................................................26
3.2 Robótica Educacional ...................................................................................................27
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
3.3 Cenário Atual................................................................................................................27
3.3.1 Módulo de Controle MC2 ........................................................................................28
3.3.2 CPU Robótica Fácil ..................................................................................................28
3.3.3 Gogo Board 3.0 ........................................................................................................29
3.3.4 The Handy Board .....................................................................................................30
3.3.5 RCX..........................................................................................................................30
3.3.6 NXT Intelligent Brick...............................................................................................31
3.3.7 Fischertechnik ROBO INTERFACE .......................................................................32
3.3.8 IFI Robotics Robot Controller..................................................................................32
3.4 Comparativo de recursos de plataformas comerciais ...................................................33
4 Definição do sistema ........................................................................................................36
5 Análise das tecnologias de microcontroladores................................................................38
5.1.1 Microcontroladores Atmel........................................................................................38
5.1.2 Microcontroladores Freescale...................................................................................39
5.1.3 Microcontroladores Microchip.................................................................................39
5.1.4 Microcontroladores Texas Instruments ....................................................................40
5.1.5 Microcontroladores Zilog.........................................................................................40
6 Definição da arquitetura ...................................................................................................41
7 Projeto do circuito ............................................................................................................43
7.1 Pinagem do microcontrolador ......................................................................................43
7.2 Alimentação..................................................................................................................47
7.3 PWM.............................................................................................................................48
7.4 Entradas e saídas digitais (I/O).....................................................................................49
7.5 Entradas analógicas ......................................................................................................49
7.6 RS-232..........................................................................................................................50
7.7 USB ..............................................................................................................................51
7.8 Circuito de Gravação ICSP...........................................................................................51
8 Montagem de protótipos...................................................................................................53
8.1 Primeiro Protótipo ........................................................................................................53
8.2 Segundo Protótipo ........................................................................................................55
9 Desenvolvimento da placa de circuito impresso ..............................................................57
9.1 Layout...........................................................................................................................57
9.2 Montagem.....................................................................................................................59
10 Aplicação de validação.................................................................................................61
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
10.1 Hardware ......................................................................................................................61
10.2 Software........................................................................................................................64
11 Conclusões e Trabalhos futuros....................................................................................67
BIBLIOGRAFIA......................................................................................................................68
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
1 Introdução
A área de robótica, que engloba diferentes áreas exatas, como informática, eletrônica,
mecânica e controle, tem crescido muito nos últimos anos, não somente para aplicações
industriais como também para educacionais. Nessa tecnologia, elementos eletromecânicos
formam conjuntos capazes de desenvolver tarefas mecânicas ou mesmo simular o
comportamento humano. Para tanto os componentes empregados (motores, sensores, pistões,
etc.) devem ser precisamente controlados através de uma plataforma ou placa principal
microcontrolada. Esta placa microcontrolada, de forma geral, realiza o controle dos diferentes
acionamentos necessários para uma dada aplicação com base na avaliação do programa
desenvolvido pelo operador, bem como das leituras realizadas por sensores.
O objetivo deste trabalho foi projetar e desenvolver uma plataforma microcontrolada,
utilizando um microcontrolador de baixo custo, interfaces de entrada e saída digitais, entrada
analógica e saída para controle de motores de corrente contínua. Todos componentes
utilizados no projeto são de fácil aquisição e montados sobre um mesmo módulo integrado
(placa de circuito impresso única), permitindo utilização facilitada por alunos de Ensino
Médio e Técnico em atividades didáticas de robótica.
O presente trabalho se insere como um projeto de desenvolvimento próprio de uma
plataforma didática para ensino de robótica em escolas de Ensino Médio e Técnico. Na fase
inicial do trabalho, são apresentadas as principais alternativas tecnológicas disponíveis para
este mercado. Este estudo foi utilizado para definir a arquitetura adotada para o sistema,
enfocando basicamente a parte de hardware. Etapas de potência não estão previstas neste
projeto, mas os sinais gerados são padronizados, para permitir interconexão direta com os
módulos de potência existentes no mercado.
O produto desenvolvido neste trabalho tem a pretensão de promover a melhoria da
formação de alunos técnicos e de ciência de nível médio pela maior flexibilidade na
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
13
realização de experiências práticas e didáticas. Além disso, pode contribuir para o
desenvolvimento tecnológico nacional, pois atualmente produtos deste tipo são, na sua
maioria importados, o que dificulta a aquisição e mesmo acompanhamento do material de
apoio (para alunos de ensino médio a língua estrangeira pode significar uma grande barreira).
O produto gerado, tendo características compatíveis e preço de comercialização
inferior ao dos concorrentes importados, pode aumentar a participação de escolas e institutos
técnicos na implantação de projetos na área da eletrônica e robótica, o que pode ter impacto
direto na formação de profissionais e desenvolvimento de tecnologia no país.
Inicialmente, no Capítulo 2, é realizada uma Revisão Bibliográfica sobre os assuntos
envolvidos no trabalho. No Capítulo 3 é feito um estudo de mercado das plataformas
existentes e atualmente disponíveis para Robótica Educacional. Com base neste estudo, no
Capítulo 4 são definidos os requisitos mínimos necessários à plataforma a ser desenvolvida.
Após estas definições, no Capítulo 5 é realizado um estudo dos microcontroladores
atualmente disponíveis no mercado e que atendam aos requisitos. No Capítulo 6 é definido o
microcontrolador a ser usado no projeto, baseado nos estudados no capítulo anterior. Após as
definições dos requisitos e do microcontrolador, no Capítulo 7, são projetados os circuitos
envolvidos na plataforma. O Capítulo 8 trata dos protótipos montados durante o
desenvolvimento do projeto, enquanto no Capítulo 9 é apresentado o desenvolvimento da
versão final da placa de circuito impresso da plataforma. No Capítulo 10 é mostrado uma
aplicação para a validação da plataforma. O Capítulo 11 trata da conclusão e trabalhos
futuros, sugerindo possíveis recursos que podem ser incorporados à plataforma.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
2 Revisão Bibliográfica
2.1 Robótica
A simples palavra robô desperta fascínio nas pessoas, principalmente devido a tantos
filmes, jogos e livros de ficção científica empregados como forma de entretenimento pela
sociedade desde a década de 50. Como exemplo deste fascínio, pode-se destacar a grande
popularidade observada em feiras e exposições ao se utilizar de demonstrações que empregam
robôs sejam eles humanóides ou não. Neste campo, o Japão, sem dúvida, é um dos países que
mais difunde esta cultura (Robot Museum, 2006).
O termo robô, entretanto é bem mais amplo. Existem várias definições para robô e
robótica, dependendo da área em que estes conceitos são aplicados ou estudados. Uma
dificuldade para esta definição se dá pelo fato da robótica ser uma área multidisciplinar,
englobando pelo menos três áreas distintas: mecânica, eletricidade e computação. Algumas
aplicações mais robustas incluem adicionalmente a área de controle
Atualmente as máquinas criadas desta integração multidisciplinar, os robôs, têm sido
largamente utilizadas no setor industrial, principalmente em empresas montadoras de
produtos ou equipamentos. Em sua grande maioria representam robôs manipuladores
reprogramáveis, capazes de operar sobre ferramentas de solda, pintura ou mesmo
manipulação de peças em uma linha de produção (García, 2001).
Na área residencial, robôs têm sido idealizados para prestar apoio a tarefas do dia-a-
dia como aspirar pó, lavar ou mesmo cozinhar (Gates, 2006). Robótica tem sido empregada
em diversas outras aplicações como transporte, segurança, manipulação de artefatos
explosivos e exploração espacial como será visto a seguir (McComb e Predko, 2006).
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
15
Estas diferentes aplicações, cada vez mais próximas de nossas vidas, servem de
motivação para se acrescentar a robótica no currículo de escolas de ensino médio e
profissionalizante.
2.1.1 História da Robótica
Máquinas automáticas são almejadas e idealizadas desde tempos remotos. Na Grécia
antiga (século IV a.C.) o filósofo Aristóteles escreveu: "Se toda ferramenta, quando ordenada,
ou mesmo por vontade própria, fizesse o trabalho para qual foi feita, então, não seriam
necessários trabalhadores nem escravos”. Pode-se dizer que os primeiros inventos de
máquinas automáticas começaram a ser construídos nessa época, mas eram muito primários.
Foi a partir do século XVIII, com o advento da revolução industrial, que o aparecimento de
autômatos começou a se tornar uma realidade. Máquinas a vapor, alimentadas com carvão,
foram criadas para os mais diversos fins, desde a produção industrial em série, até
entretenimento em shows públicos de teatro e circense (Pazos, 2002).
Curiosamente, a palavra “robô” surgiu em 1921, em uma peça de teatro. A peça
chamava-se “R.U.R. (Rossuum's Universal Robots)”, do escritor tcheco Karel Čapek. A peça
se passa em uma fábrica de servos humanóides (Figura 1), os quais são chamados robôs. Josef
Čapek (irmão de Karel) foi responsável pela criação do nome “robô” e usou a palavra tcheca
“ robota”, que significa escravo, para designar os humanóides da obra (Kurfess, 2000).
FIGURA 1: Robô mecânico utilizado na peça teatral R.U.R. Fonte: Currie, 2007.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
16
Mais tarde, em 1950, o famoso escritor de ficção científica Isaac Asimov, em sua
compilação de obras “Eu, Robô”, usa, pela primeira vez, o termo robótica para designar a
ciência que estuda os robôs (Asimov, 1950).
Já na década de 60, os primeiros braços robóticos foram produzidos para serem
utilizados em trabalhos perigosos nas indústrias, procurando afastar o trabalhador de áreas de
risco. Esses manipuladores não eram muito diferentes dos utilizados nas indústrias hoje em
dia. Tratavam-se de soluções que empregavam acionamentos hidráulicos ou elétricos,
controlados por computadores.
Hoje em dia, com os computadores com cada vez maior capacidade de processamento
e freqüência de operação, a robótica tornou-se um ramo em grande expansão. A computação
permite sistemas cada vez mais avançados, e o desenvolvimento de áreas complexas como
inteligência artificial, visão computacional, reconhecimento e síntese de voz (Gudwin, 2005).
2.1.2 Aplicações
Atualmente os robôs são utilizados nas mais diversas áreas da sociedade. Robôs estão
sendo projetados para trabalhar nas residências para efetuar tarefas domésticas, divertimento e
proteção; nos hospitais para cuidar de pacientes ou mesmo atuar em cirurgias de precisão
(Figura 2a); nas indústrias, para produzir itens padronizados com qualidade e velocidade
(Figura 2b) e até em outros planetas para explorar, filmar e coletar amostras.
A maioria dos robôs ainda está na indústria (cerca de 90%), principalmente na
automobilística. Manipuladores automatizados são utilizados em todas as etapas de produção
de um carro, atingindo níveis de produção que nenhum ser humano jamais atingiria (Pazos,
2002).
Entretanto, o mercado de robôs em outras áreas está crescendo vertiginosamente.
Como exemplo os robôs AIBO, da Sony, e Asimo, da Honda, foram projetados e têm sido
continuamente aperfeiçoados para atender ao mercado de brinquedos e entretenimento. AIBO
é um cão companheiro, e Asimo, um humanóide, que se apresenta em shows e feiras
(McComb e Predko, 2006).
Há, claro, vários robôs com fins didáticos e educacionais, e escolas e universidades do
mundo inteiro estão, cada vez mais, interessadas nesse novo nicho (Mehl, 2002).
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
17
FIGURA 2: Aplicações atuais de robótica: a) à esquerda, o primeiro robô cirurgião a ser utilizado
no Brasil e b) à direita, robôs da empresa ABB, utilizados para soldagem. Fontes: Santa Lúcia, 2007 e
ABB, 2007.
2.2 Detalhamento de um Robô
2.2.1 Tipos de Robôs
Existem várias classificações para os robôs, e elas podem muitas vezes acabar gerando
confusão, pois não são de fato excludentes. Estas várias classificações distintas se dão
principalmente pelo fato de que diferentes mercados têm visões diferentes sobre o que é
exatamente um robô. Pode-se, entretanto classificar os robôs, em linhas gerais, como
manipuladores, móveis ou humanóides.
Os robôs manipuladores têm sua funcionalidade ligada a braços mecânicos estáticos
(capazes de realizar movimentos limitados na extensão de seus braços), sendo utilizados,
geralmente, na indústria e programados para fazer sempre a mesma seqüência de movimentos,
comum para tarefas de produção serial.
Os robôs móveis são aqueles capazes de se locomover como um todo por um trajeto
delimitado ou mesmo em uma área desconhecida, ou seja, são dotados de algum meio de
locomoção, com mecanismo de acionamento, alimentação e controle embarcados. Geralmente
são robôs complexos, pois necessitam de sensores para navegação e um sistema próprio de
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
18
controle. Exemplos altamente complexos destes robôs são o Opportunity e o Spirit, dois robôs
da NASA enviados a Marte em 2003.
Robôs humanóides, também chamados de andróides, são robôs que imitam a forma
humana (bípedes, com dois braços e sistema de visão na cabeça). Exemplos de robôs
humanóides são o QRIO (Figura 3a), da Sony, que é capaz de dançar, correr e subir e descer
escadas; o Asimo (Figura 3b), da Honda, atualmente considerado o robô mais desenvolvido já
criado, capaz de correr, dançar, subir e descer escadas e reconhecer vozes e rostos; e o PINO
(Figura 3c), fruto de um desenvolvimento de código livre seguindo a filosofia da GPL
(General Public License).
a) b) c)
FIGURA 3: Robôs humanóides: a) QRIO b) Asimo c) PINO. Fontes: Sony, 2007; Honda, 2007 e Kitano, 2007.
2.2.2 Diagrama funcional
Conforme já comentado existem diferentes aplicações e condições de operação de um
robô, o que faz também com que seus projetos sejam distintos. Por exemplo, um robô
manipulador usado para pintura de chassis de veículos tem características funcionais e
operativas bastante distintas de um robô humanóide capaz de guiar uma bicicleta.
De uma forma simplificada, entretanto existem características básicas comuns, que
podem ser utilizadas para descrevê-los genericamente. Isto é apresentado de forma resumida
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
19
na Figura 4. O diagrama apresentado na figura foi montado com base nas estruturas descritas
em McComb e Predko (2006) e Meggiolaro (2006).
FIGURA 4: Diagrama de blocos de um robô.
A seguir cada um destes módulos internos do diagrama será apresentado com maior
detalhamento.
2.2.2.1 Plataforma de controle
Módulo principal do sistema, que é responsável por controlar o funcionamento do
robô, a partir de um programa especialmente desenvolvido para o mesmo. Entre suas funções
está ler entradas dos sensores, processá-las, determinar ações e controlar os circuitos de
movimentação ou sinalização (atuadores) (Nogueira, 2002).
O elemento fundamental da plataforma de controle é o microprocessador ou
microcontrolador. Um microprocessador genericamente incorpora uma CPU (unidade central
de processamento) e uma memória interna para armazenamento de informações temporárias.
Os microcontroladores, além disso, integram na mesma pastilha de silício diversas outras
funcionalidades também importantes, como memória ROM (memória somente de leitura) ou
Sensores Digitais
Bateria Secundária
Atuadores
Bateria Principal
Proteção (Fusíveis)
Plataforma de Controle
Sensores Analógicos
Módulos de Condicionamento
de Sinal
Legenda: Sinal
Potência
Módulos de Potência
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
20
FLASH para gravação de código, portas de I/O (entrada/saída), interfaces de comunicação
serial e paralela, temporizadores (timers) e, algumas vezes, outros periféricos como
conversores analógico-digital (A/D) e digital-analógico (D/A). Assim sendo, os
microcontroladores se mostram mais adequados, permitindo placas menores capazes de
carregar, guardar e rodar programas diretamente no chip do microcontrolador (Iovine, 2004).
A placa de controle de um robô está fortemente ligada ao conceito de realimentação. A
realimentação, em inglês feedback, se baseia na coleta de dados internos de um sistema ou do
ambiente externo onde o mesmo se encontre, a fim de otimizar uma tomada de decisão. Estes
dados são capturados através de sensores e enviados ao sistema de controle do robô. Numa
analogia, a realimentação empregada para controle de um robô segue o mesmo princípio de
funcionamento dado pelos sentidos (visão, audição, tato, olfato e paladar), que são usados
para orientar os atos dos humanos. Considerando isso, quanto mais sensores um robô tiver,
teoricamente, melhor ele irá agir e reagir às mudanças do ambiente. É claro que quanto mais
sensores, maior será a quantidade de sinais (dados) entrando no sistema e uma maior
capacidade de processamento será exigida (McComb e Predko, 2006).
2.2.2.2 Sensores
O sistema de controle de um robô se baseia em sensores, que são elementos capazes de
perceber e medir informações externas como luminosidade, distância, temperatura,
deslocamento, etc. Existem basicamente dois tipos principais de saída de sensores: digital
(com duas opções: ativo ou não) e analógico, cujo valor de saída varia dentro de uma faixa de
valores. Normalmente os sensores digitais podem ser lidos diretamente pelo
microcontrolador. Sensores analógicos freqüentemente exigem circuitos adicionais de
condicionamento de sinais e filtragem antes de serem aplicados para leitura.
Miles e Carrol (2002) aprofundam a classificação dos sensores, dividindo-os entre
passivos e ativos.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
21
2.2.2.2.1 Sensores passivos
Sensores passivos monitoram alguma condição do ambiente. Eles não introduzem
nada ao ambiente; eles simplesmente captam o que está acontecendo em volta, logo, não
necessitam de alimentação. Um termômetro ou uma fotocélula são exemplos de sensores
passivos usados no dia-a-dia. Outro tipo de sensor passivo é o sensor infravermelho passivo
(PIR), algumas vezes chamado sensor piroelétrico. Estes sensores são comumente usados para
detectar a presença de uma pessoa e a partir desta informação ativar um circuito.
Os sensores passivos mais complexos são as câmeras CCD, que são usadas para
“visualizar” o ambiente. Câmeras CCD fazem partes de sistemas de visão (Miles e Carroll,
2002).
2.2.2.2.2 Sensores ativos
Sensores ativos freqüentemente emitem algum som ou luz, captam o retorno, e
analisam como a energia emitida reage com o ambiente, necessitando, para isso, alimentação.
Alguns exemplos deste tipo de sensor são sonar, laser e detectores reflexivos de
infravermelho (Miles e Carroll, 2002). Exigem maior complexidade operacional para sua
adequada interpretação como a manutenção de valores estáveis de referência analógicos (para
conferir amplitude de leitura) e/ou temporais (para conferir tempo de resposta).
2.2.2.3 Módulo de condicionamento de sinais
Este módulo que trata sinais provenientes de sensores analógicos tem função de ajustar
os valores lidos para uma faixa de valores desejada. Dentre suas funções estão linearização de
curvas, remoção de ruído, ajuste de ganho, entre outras.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
22
2.2.2.4 Atuadores
Os atuadores são responsáveis pela transformação dos comandos gerados pela placa de
controle em movimentos do robô. A grande maioria das implementações conta com motores
elétricos associados a algum sistema de transmissão convencional (engrenagens, alavancas,
correias, etc.). Alguns casos, porém, utilizam atuadores hidráulicos, pneumáticos, ligas com
memória de forma e outros atuadores flexíveis (Soares, 2003). A utilização de certo atuador
depende do tipo de movimento, condições e ambiente de operação, precisão requerida e
custos de implementação envolvidos (Barros, 2002).
2.2.2.4.1 Solenóides
Solenóide é o tipo mais básico de atuador eletromagnético. O conceito do solenóide
linear consiste no uso de uma bobina fixa em ferro ou aço, e um êmbolo magnético móvel. A
parte do êmbolo é que se recolhe para dentro da estrutura conforme a energização.
Quando a corrente flui através da bobina, um campo magnético é gerado. A estrutura
serve para concentrar o campo magnético para que o máximo da força magnética seja
exercida no êmbolo. A força magnética faz com que o êmbolo seja atraído para dentro da
estrutura.
O campo magnético em torno da bobina causará movimento puxando o êmbolo para o
centro da bobina. Quando não há corrente circulando na bobina, o êmbolo está “solto” e, para
retornar à posição inicial, deve-se usar uma mola (Kurfess, 2000).
2.2.2.4.2 Motores CC
Motores CC (corrente contínua) convertem a corrente elétrica em movimento
mecânico de rotação. Os motores de corrente contínua são dispositivos cuja potência depende
da tensão aplicada e também da sua construção.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
23
Quando carregamos um motor, sua rotação diminui e com isso a intensidade da
corrente aumenta, tentando retomar a rotação normal e elevando-se assim a potência que ele
consome.
Sob carga constante, a potência consumida aumenta com a tensão de um modo mais
ou menos linear, juntamente com a corrente e a sua velocidade de rotação. A maneira mais
simples de se controlar a velocidade de um motor CC é modificando-se a corrente que passa
através dele por meio de algum tipo de dispositivo externo (Braga, 2002).
Motores CC permitem movimentos suaves e alto pico de torque e podem ser usados
para velocidades mais altas do que outros motores, mas para operar de forma estável exigem
um sinal de realimentação (Kurfess, 2000).
2.2.2.4.3 Motores CC sem escovas (brushless)
Um motor CC sem escovas é muito parecido com um motor CC montado de forma
invertida, porque o rotor (parte girante do motor) contém um imã permanente e o estator
(parte estática do motor) contém as bobinas. As bobinas são comutadas eletronicamente,
então o comutador mecânico de escovas (usado nos motores CC comuns) não é mais
necessário.
Motores CC sem escovas são comumente usados em aplicações robóticas por causa de
sua capacidade de atingir altas velocidades, alta eficiência, e baixa manutenção em
comparação a motores CC comuns. Eles são capazes de atingir altas velocidades por causa da
eliminação do comutador mecânico. Eles são mais eficientes porque o aquecimento das
bobinas, no estator, pode ser dissipado mais rapidamente no chassi do motor. E, finalmente,
ele requer menos manutenção porque não tem escovas, que requerem trocas periódicas. No
entanto, o custo total do sistema para motores sem escovas é maior do que para motores
comuns, devido à complexidade do comutador eletrônico (Kurfess, 2000).
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
24
2.2.2.4.4 Motores de passo
Motores de passo convertem pulsos elétricos em movimento mecânico discreto. Eles
estão disponíveis para propósitos rotacionais ou lineares, mas os rotacionais são os mais
comuns. Para os motores de passo rotatórios, cada passo corresponde a certo número de graus
de rotação. A quantidade de pulsos elétricos determina o número de passos, enquanto a
freqüência dos pulsos controla a velocidade do motor de passo. Não é necessário nenhum
sensor para sua operação e eles se encaixam bem na utilização em aplicações de
posicionamento, além de serem fáceis de usar (Scherz, 2006; Kurfess, 2000).
2.2.2.4.5 Atuadores hidráulicos e pneumáticos
Atuadores hidráulicos são freqüentemente usados como juntas ou “pernas” em
aplicações robóticas que requerem a capacidade de levantar grandes cargas. Atuadores
hidráulicos geram movimento mecânico através do controle de vazão ou pressão de um fluído
incompressível. Pelo fato de o fluído ser incompressível, estes atuadores podem ser usados
em aplicações de força, posicionamento, e controle de velocidade. Outra opção útil, quando
trabalhando com hidráulica, é que amortecimento mecânico pode ser incorporado ao projeto.
Atuadores pneumáticos são similares aos hidráulicos, no ponto que ambos usam
fluído. A diferença é que nos pneumáticos é utilizado um fluído compressível, como ar
comprimido. A capacidade de carga dos atuadores pneumáticos é menor do que dos
hidráulicos, pois eles trabalham com pressões mais baixas. No entanto, os atuadores
pneumáticos têm a vantagem de ter tamanho e peso relativamente menores. Eles também são
menos complexos, pois o ar utilizado em um cilindro pode ser liberado ao ambiente através de
uma válvula e não precisa de uma linha de retorno (Kurfess, 2000).
2.2.2.5 Módulos de potência
Os módulos de potência servem para acionamento dos atuadores. Eles recebem um
sinal de baixa intensidade da plataforma de controle e o amplifica. Para essa amplificação eles
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
25
devem ser ligados à bateria principal. Há diversas marcas e modelos disponíveis no mercado,
dependendo da tensão e corrente de trabalho do atuador. Módulos comerciais suportam
correntes de saída de algumas unidades a centenas de ampéres, dependendo do tipo de
acionamento a ser realizado (Meggiolaro, 2006).
2.2.2.6 Baterias
Baterias são utilizadas para alimentação de robôs móveis, e, geralmente, representam a
parte mais pesada no robô. As baterias devem ser ligadas ao circuito através de fusíveis ou
disjuntores, para proteção em caso de curto-circuito ou sobrecarga. A bateria secundária,
geralmente, não alimenta etapas de potência, servindo apenas para que não haja a perda do
controle sobre o robô em caso de falta da bateria principal. Os principais tipos de baterias são:
chumbo-ácido, níquel-cádmio, níquel-hidreto metálico, alcalina e de lítio (Meggiolaro, 2006).
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
3 Contextualização do Projeto
3.1 Educação Tecnológica
Pode-se dizer que o século passado se distinguiu dos demais pela incrível velocidade
dos avanços tecnológicos e das transformações que os mesmos introduziram na sociedade.
Em nossos dias, a quantidade de equipamentos que envolvem tecnologia de todos os tipos que
usamos, e dos quais dependemos, é imensa.
Esta característica tão importante acabou causando impacto também na formação das
pessoas, que passaram a incorporar em seus currículos o ensino de tecnologia.
Apesar disso, grande parte das escolas ainda ensinam ciências de forma tradicional,
com visão teórica e generalista, deixando as aplicações, que representam de fato a tecnologia,
para faculdades ou escolas de nível Técnico ou Superior.
Com o passar do tempo, esta metodologia tem se alterado, sendo adotado o conceito
da educação tecnológica. O objetivo da educação tecnológica é preparar os alunos, desde as
séries iniciais, para aplicações práticas das matérias de ciência estudadas. Isso tem
contribuição direta no aumento de conhecimento dos estudantes como um todo e na melhor
adequação do currículo de profissionais da área tecnológica, que poderão ingressar
diretamente do ensino médio para as faculdades de engenharia e computação (Braga, 2007).
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
27
3.2 Robótica Educacional
A Robótica Educacional representa o uso da robótica como ferramenta para ensinar
tecnologia. Desde 2000, com os novos PCNs (Parâmetros Curriculares Nacionais), que dizem
que a formação do aluno deve ter como alvo principal a aquisição de conhecimentos básicos,
a preparação científica e a capacidade de utilizar as diferentes tecnologias relativas às áreas
das ciências, as escolas estão buscado ferramentas para isto (Santos, 2006). Então as
instituições de ensino no Brasil estão incrementando cada vez mais seus currículos com
projetos educacionais que fazem uso de kits e ferramentas de robótica.
Em contrapartida, o estudo da robótica tem sido realizado, ainda, com baixa
intensidade em nosso país. O principal fator que limita a implementação da robótica nas
escolas está no alto custo da montagem de um laboratório de robótica (Mehl, 2002).
3.3 Cenário Atual
O ensino técnico de nível médio ou mesmo profissionalizante tem crescido bastante
nos últimos anos no Brasil. Neste cenário, a introdução de atividades práticas de física,
eletrônica e robótica têm transformado o modelo educacional tradicional, baseado em aulas
expositivas, para um modelo mais dinâmico e participativo, onde teoria e prática se
complementam. Como exemplo disso pode-se destacar os campeonatos de robótica tipo
competições FIRST (FIRST, 2007), futebol de robôs e guerra de robôs (Guerra de Robôs,
2007).
Para fins educacionais, normalmente as escolas adquirem plataformas didáticas
comerciais, que já contam com material de apoio e roteiros de atividades. Estas plataformas
são modulares, de forma a possibilitar que diversas experiências distintas possam ser
realizadas apenas inserindo-se ou removendo-se módulos específicos. Esta característica é
muito importante, pois permite maior flexibilidade, promovendo o conhecimento e a
criatividade dos alunos.
A seguir é apresentado, de forma resumida, um levantamento de algumas plataformas
atualmente disponíveis no mercado nacional e internacional, baseado nas informações
técnicas contidas nas documentações dos equipamentos.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
28
3.3.1 Módulo de Controle MC2
Fabricada pela empresa nacional PNCA Robótica e Eletrônica (Figura 5), é
programada em uma linguagem própria chamada LEGAL. Possui como características
principais: quatro entradas digitais e quatro analógicas. Possui também quatro saídas para
acionamento de servomotores e mais duas saídas de potência para acionamento direto de
cargas. Atualmente é vendida como um pacote fechado que inclui os módulos citados (PNCA,
2007).
FIGURA 5: Módulo de controle MC2 da empresa PNCA.
3.3.2 CPU Robótica Fácil
Também de fabricação nacional, da Symphony Robótica Educacional, esta plataforma
(Figura 6) tem como CPU principal um microcontrolador Atmel Atmega8, rodando a 8 MHz.
Pode ser programada em C para Atmega8 ou ainda em BASIC. Possui oito entradas ou saídas
digitais, compartilhadas com seis entradas analógicas. Possui também quatro saídas de
potência para acionamento direto de cargas (até 0,6 A), uma saída e uma entrada serial a nível
TTL, porta USB 1.1, PS/2 e suporte a TCP/IP opcional (Symphony, 2007).
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
29
FIGURA 6: Diagrama de blocos da CPU Robótica Fácil da empresa Symphony.
3.3.3 Gogo Board 3.0
Plataforma mantida pelo MIT (Massachusetts Institute of Technology) como
plataforma didática de bancada (Figura 7). Não é fabricada nem vendida, mas seus esquemas
podem ser baixados gratuitamente da Internet. É programado em Cricket Logo, que é uma
variante, desenvolvida também pelo MIT, da linguagem LOGO ou em C para PIC (CCS,
2007). Possui como CPU um microcontrolador PIC16F877, da Microchip, rodando a 20
MHz. Possui oito entradas ou saídas digitais compartilhadas com quatro saídas para
servomotores e comunicação serial (MIT, 2007).
FIGURA 7: Plataforma Gogo Board, na versão 3.0.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
30
3.3.4 The Handy Board
Trata-se de outra plataforma não comercial desenvolvida pelo MIT (Figura 8) mais
completa e complexa que a Gogo Board e fabricada por muitas empresas estrangeiras. Seus
esquemas e aplicações podem ser encontrados no site do projeto. Possui microcontrolador
MC68HC11, da Motorola, rodando a 2 MHz. Pode ser programada em Interactive C, do MIT,
ou qualquer outra linguagem suportada pela família HC11. Possui 32 kB de memória RAM
para programa, quatro saídas de potência para até 1 A e display de cristal líquido. Possui
ainda sete entradas analógicas e nove entradas digitais (MIT, 2007).
FIGURA 8: Plataforma Handy Board, do MIT.
3.3.5 RCX
O “tijolo programável” da fabricante de brinquedos LEGO (Figura 9) é amplamente
difundido e utilizado no mundo inteiro. Seu processador é um Hitachi H8, com 32 kB de
RAM, tendo compilador para várias linguagens, entre elas NQC (Not Quite C) e Robolab,
linguagem gráfica da própria LEGO. Possui três entradas para os sensores da linha LEGO e
três saídas, além de comunicação serial via infravermelho. Está sendo descontinuado e
substituído pelo NXT. No Brasil encontra-se a venda na empresa Edacom, representante
oficial da LEGO no Brasil (LEGO, 2007).
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
31
FIGURA 9: RCX, o “tijolo programável” da LEGO
3.3.6 NXT Intelligent Brick
Sucessor do RCX, esta plataforma (Figura 10) possui como microcontrolador principal
um ARM7 de 32 bits, 256 kB de memória FLASH e 64 kB de RAM. Possui porta USB 2.0,
comunicação Bluetooth e display de cristal líquido. Possui ainda quatro entradas para os
sensores LEGO e três saídas. Ainda sem previsão para lançamento no Brasil, é
comercializado, pelo site americano da LEGO (LEGO, 2007).
FIGURA 10: NXT, sucessor do RCX, da LEGO.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
32
3.3.7 Fischertechnik ROBO INTERFACE
Fabricado pela empresa alemã Fischertechnik, esta plataforma (Figura 11) possui um
microcontrolador de 16 bits e 128 kB de memória FLASH. Tem comunicação serial e USB.
Possui ainda quatro saídas de potência com controle de velocidade por PWM para até 0,25 A,
oito entradas digitais e quatro analógicas. A Fischertechnik no Brasil é representada pela Nek-
technik (Fischertechnik, 2007).
FIGURA 11: Plataforma de controle ROBO INTERFACE, da alemã Fischertechnik.
3.3.8 IFI Robotics Robot Controller
Plataforma de controle oficial da FIRST Robotics Competition (Figura 12), é a
plataforma mais completa disponível no mercado. É produzida e comercializada pela empresa
americana Inovation FIRST Robotics e possui como microcontrolador principal um
PIC18F8722, que pode ser programado em qualquer linguagem para PIC, inclusive a
ferramenta gráfica EasyC, da Intelik. Possui 128 kB de memória FLASH para programa e
comunicação serial nos padrões TTL e RS-232. Para acionamentos e interação tem 14 saídas
PWM, 16 saídas para relés, 16 entradas ou saídas digitais e seis interrupções. Além disto,
ainda possui entrada de alimentação para bateria principal e de backup e monitoramento do
nível das baterias (IFI, 2007).
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
33
FIGURA 12: RC (Robot Controller), da americana Inovation FIRST Robotics.
3.4 Comparativo de recursos de plataformas comerciais
A tabela a seguir (Tabela 1) apresenta, de forma resumida, um estudo comparativo
entre as principais opções de módulos de robótica educacional atualmente disponíveis no
mercado. São descritas as principais características e recursos disponíveis de forma
padronizada a fim de facilitar a identificação de vantagens de cada um, bem como as
funcionalidades importantes de serem considerados para o protótipo proposto pelo autor.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
TABELA 1: Comparação entre as principais características dos módulos de robótica avaliados
Plataforma Processador Barramento Freqüência Memória I/O Entradas
Analógicas
Saídas de
potência
Comunicação Linguagem
MC2 ND* ND ND ND 4 4 2 ND LEGAL
Robótica
Fácil
Atmega8 8 bits 8 MHz ND 8 6 4 Serial, USB 1.1, TCP/IP
C, BASIC
Gogo Board PIC16F877 8 bits 20 MHz ND 8 ND 4 Serial Cricket Logo, C
Handy Board MC68H11 16 bits 2 MHz 32 kB (RAM) 9 7 4 ND Interactive C
RCX Hitachi H8 8 bits 16 MHz 32 kB (RAM) - 3 (ou digitais)
3 Serial infra-vermelho
NQC, Robolab
NXT ARM7 32 bits ND 256 kB (FLASH)
- 4 (ou digitais)
3 USB 2.0, Bluetooth
NBC, NXC
ROBO
INTERFACE
ND 16 bits ND 128 kB (FLASH)
8 4 4 Serial, USB ND
IFI RC 2 x PIC18F8722
8 bits 40 MHz 128 kB (FLASH)
16 16 0 Serial (TTL e RS-232)
EasyC
*ND: Não disponível para consulta.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
35
Analisando os microcontroladores modernos percebe-se uma grande tendência da
utilização de CPUs com barramento de 16 bits, em situações mais complexas, buscando-se
maior velocidade de processamento, e custos cada vez mais reduzidos. Os microcontroladores
com barramento de 8 bits, apesar de muito baratos, apresentam desempenho baixo,
principalmente quando se deseja trabalhar com múltiplas entradas e saídas. Analisando a
tabela comparativa, pode-se perceber que há uma tendência, principalmente pela relação entre
o custo e o desempenho, ao desenvolvimento de plataformas usando microcontroladores de
16 bits, ainda que plataformas com projetos a mais tempo no mercado continuem com 8 bits.
Pode-se perceber também que o número médio de I/O’s nas plataformas é oito e que o
mínimo de entradas analógicas é quatro (exceto RCX). Conexão do tipo USB é uma tendência
de mercado, tanto que vários PCs (principalmente notebooks) são, atualmente, vendidos
somente com esse tipo de comunicação serial.
Em relação ao tipo de memória, a maioria dos produtos possui memória FLASH. A
opção por este tipo se dá por não ser volátil, diferentemente das memórias RAM. Ou seja,
permite gravação e leitura elétrica de informações, sem perda de dados mesmo após a
interrupção da alimentação. Quanto à quantidade, nota-se que, as plataformas com memória
FLASH têm, no mínimo, 32 kB, migrando para 128kB nas versões mais sofisticadas.
Quanto à linguagem a ser utilizada, predomina a C e suas variantes, principalmente
por ser uma linguagem de alto nível, mas que pode acessar funções de baixo nível. Também
traz vantagem de ser altamente difundida na área técnica.
Com base nessas análises e nas conclusões descritas, chegou-se à definição do sistema
que segue.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
4 Definição do sistema
Comparando os produtos nacionais e os estrangeiros, percebe-se uma grande diferença
na quantidade de recursos disponíveis. Percebe-se também, ainda hoje, uma pequena
quantidade de produtos nacionais disponíveis. De uma forma geral, isso reflete uma carência
no mercado brasileiro por produtos deste tipo. Baseando-se nesta carência de mercado e nos
levantamentos feitos até o momento chegou-se a uma definição de arquitetura a ser seguida,
que será a seguir descrita.
Pelos motivos acima elencados, optou-se por utilizar uma CPU de 16 bits, que garanta
maior eficiência e velocidade para o sistema proposto, além de um melhor custo/benefício em
comparação aos microcontroladores de 8 e 32 bits.
Previu-se uma demanda máxima de até 128 kB de memória FLASH para programa.
Esta quantidade de memória é perfeitamente suficiente para a armazenagem de programas
desenvolvidos para robôs construídos em práticas de Ensino Médio.
A plataforma precisa ter dezesseis entradas ou saídas (I/O) digitais configuráveis, que
permitam como entrada sinais provenientes de sensores digitais, teclados ou interruptores, e
como saída, a ligação de relés, LEDs, entre outros. Caso, em alguma montagem, seja
necessária uma quantidade maior de entradas ou saídas digitais, o aluno pode recorrer à
técnica de multiplexação, aumentando assim a quantidade de I/Os.
Além das saídas digitais, se fazem necessárias saídas especiais com recursos de
controle de potência. Essas saídas, geralmente utilizadas para o controle de velocidade de
motores de corrente contínua, são do tipo PWM (pulse width modulation ou modulação de
largura de pulso). A plataforma deve ter oito saídas de sinais PWM, nas quais são ligados os
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
37
módulos de potência para motores de corrente contínua, possibilitando controle de
velocidade.
Para os sensores analógicos a plataforma tem oito entradas, onde poderão ser ligados
potenciômetros, extensômetros, LDRs, e outros sensores analógicos, comumente usados na
robótica para aquisição de dados externos. Para sensores mais complexos, onde se faz
necessário o condicionamento de um sinal, módulos externos poderão ser utilizados.
O programa desenvolvido pelo usuário deve ser baixado para a plataforma através de
um gravador externo, não incorporado na plataforma.
Para comunicação externa a plataforma possui uma conexão serial RS-232, e uma
segunda conexão serial, prevista para possível conexão USB (não incluso atualmente na
placa).
Outra característica da plataforma é a modularidade. Todos os motores, lâmpadas,
solenóides, motores de passo, e outras saídas, são acionados através de módulos ligados à
plataforma. As saídas não fornecem corrente suficiente para acionamentos diretos, ou seja,
não há etapas de potência na plataforma, reduzindo, com isto, custos de fabricação e tamanho
físico. Esta modularidade também permite a integração de vários equipamentos de várias
marcas, visto que a forma de comunicação é padrão e os módulos são facilmente adquiridos
no mercado.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
5 Análise das tecnologias de microcontroladores
Atualmente, são muitas as opções de microcontroladores disponíveis no mercado,
capazes de atender as especificações mínimas necessárias para a presente proposta (descritas
no capítulo anterior). É apresentada abaixo uma descrição resumida das principais opções
disponíveis, que foi obtida após um detalhado estudo sobre as principais tecnologias de
microcontroladores, mostrando suas características técnicas e viabilidade de uso no projeto.
Este estudo se fez necessário para validar a escolha da CPU como a mais adequada entre as
várias disponíveis no mercado.
5.1.1 Microcontroladores Atmel
São duas as famílias de microcontroladores 16 bits da Atmel: a AT9x, baseada nos
microcontroladores AVR e a AT8x, que se baseia na arquitetura dos microcontroladores
8051. Os microcontroladores AT9x são voltados para o mercado de segurança, com
características bastante próprias, como por exemplo, aceleradores criptográficos (Atmel,
2007). Já a linha AT8x foi concebida como substituta da tecnologia MCS-51 de 8 bits,
apresentando basicamente a mesma arquitetura interna, porém com o dobro da largura de bits.
A família não possui memória FLASH, apenas memória ROM em alguns modelos, o que
impede seu uso no presente projeto.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
39
5.1.2 Microcontroladores Freescale
A Freescale Semiconductor possui três famílias de microcontroladores 16 bits:
56800/E, HC12 e HC16. Usando a busca paramétrica (Freescale, 2007) encontrou-se 16
microcontroladores tecnicamente viáveis a serem utilizados no projeto.
Os componentes da família 56800/E são processadores digitais de sinais (Digital
Signal Processors) com um núcleo de 16 bits, principalmente voltados para o processamento
matemático de grandes quantidades de dados, geralmente áudio ou vídeo. O custo deles é
mais alto que microcontroladores comuns, por possuírem componentes de hardware interno
dedicados.
As famílias HC12 e HC16 da Freescale englobam microcontroladores de 16 bits
projetados para substituir produtos no mercado de 8 bits. Podem operar com freqüências de
até 25 MHz. A família HC12 visa o mercado embarcado de pequeno porte e automotivo. Já a
família HC16 visa aplicações de maior porte, pois possui uma arquitetura que permite
operações de DSP e tratamento de grandes volumes de dados.
5.1.3 Microcontroladores Microchip
A Microchip possui três famílias de microcontroladores 16 bits: PIC24, dsPIC30 e
dsPIC33. Analisando o catálogo de produtos (Microchip, 2007) e comparando com as
características desejadas para o projeto, tem-se 26 microcontroladores disponíveis. A
Microchip é concorrente direta da Freescale, sendo que as famílias dsPIC30 e dsPIC33 são
DSPs (aplicações que exigem processamento digital de sinais), enquanto os componentes da
família PIC24 são microcontroladores para uso genérico. Uma característica importante que
vale salientar nos microcontroladores Microchip é a funcionalidade ICSP (In-circuit Serial
Programming, ou programação serial em-circuito), que é uma técnica onde o
microcontrolador é programado diretamente na placa onde está montado.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
40
5.1.4 Microcontroladores Texas Instruments
A família de microcontroladores de 16 bits da Texas Instruments é a MSP430. São
microcontroladores de baixíssimo consumo, próprios para aplicações embarcadas. Um ponto
fraco desta família, entretanto, é que a maioria dos dispositivos disponíveis possui pequena
capacidade de memória FLASH. Apenas um microcontrolador MSP430 que possui
capacidade de memória na ordem de 120 kB foi localizado (Texas Instruments, 2007).
5.1.5 Microcontroladores Zilog
Também a Zilog possui disponível uma linha de microcontroladores 16 bits.
Analisando as características necessárias para o projeto tem-se duas famílias disponíveis:
Z16F2810 e Z16F2811. Estas famílias contém 15 microcontroladores que podem ser usados
no projeto (Zilog, 2007). A dificuldade de se encontrar pontos de venda e suporte para
microcontroladores Zilog no mercado nacional foi considerado como fator negativo para
escolha desta tecnologia.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
6 Definição da arquitetura
Com base no estudo de mercado apresentado no capítulo anterior, optou-se pelo
PIC24FJ128GA006, da Microchip. Fatores importantes que levaram à escolha deste
microcontrolador, além das características técnicas, foram a disponibilidade deste no mercado
nacional, a facilidade de uso das ferramentas de desenvolvimento e o conhecimento e
experiência prévia do autor com esta tecnologia de microcontrolador e suas ferramentas de
desenvolvimento.
O microcontrolador escolhido é uma CPU para uso genérico com barramento de 16
bits, capaz de processar 16 milhões de instruções por segundo (MIPS) rodando a 32 MHz.
Possui 128 kB de memória FLASH, em conformidade com o que foi definido como desejado
para o projeto. Além da memória FLASH, possui 8 kB de memória SRAM. Tem 53 pinos que
podem ser utilizados como I/O, dos quais 16 serão diretamente utilizados na plataforma.
Possui 16 canais de conversão analógico-digital (A/D), sendo que oito serão utilizados para
leitura de entradas analógicas. Em relação às saídas PWM, o microcontrolador possui
internamente um total de cinco. Neste quesito para atender aos requisitos da proposta (o
projeto demanda um total de oito canais PWM), serão utilizados implementações em software
com programação de temporizadores para atualização de três pinos de I/O, constituindo os
três sinais PWM faltantes. A disponibilidade de temporizadores para este fim é garantida, pois
o microcontrolador possui cinco timers. O microcontrolador possui ainda cinco pinos de
interrupção, dos quais quatro serão utilizados.
A comunicação é feita através de dois canais seriais (UART) disponíveis no
microcontrolador, aos quais serão conectados circuitos de transceiver para implementação de
interfaces USB e RS-232. A programação da memória pode ser feita de duas maneiras:
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
42
através de uma interface JTAG (Joint Test Action Group), ou através de ICSP (In-Circuit
Serial Programming). Ambas as maneiras de programação são padrões de programação serial
e não há a necessidade da retirada ou desligamento do microcontrolador do circuito para a
gravação do mesmo.
A alimentação deste microcontrolador deve ser entre 2 e 3,6 V, sendo que o
encapsulamento é de montagem em superfície (SMD, surface mounting device), tendo 64
pinos TQFP (thin quad flat pack) (Figura 13).
FIGURA 13: PIC24FJ128GA006.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
7 Projeto do circuito
7.1 Pinagem do microcontrolador
Conforme já comentado, o microcontrolador escolhido possui 64 pinos em
encapsulamento TQFP. Na Figura 14 é apresentada a distribuição dos pinos do
PIC24FJ128GA006 e a forma como estes foram empregados para os diferentes recursos
do presente projeto.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
44
FIGURA 14: Utilização dos pinos.
Na tabela abaixo (Tabela 2) são descritas as ligações dos pinos na plataforma e suas
funções.
TABELA 2: Ligação dos pinos do microcontrolador na plataforma. Ligação Pino
plataf.
Pino
PIC
Função Descrição
AD1 11 AN5
AD2 12 AN4
AD3 13 AN3
AD4 14 AN2
A/D
AD5 17 AN6
Entrada analógica.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
45
AD6 18 AN7
AD7 29 AN14
AD8 30 AN15
- 9
- 25
- 41
Vss Pólo negativo (GND).
- 10
- 26
- 38
Vdd Pólo positivo (3,3 V).
- 19 AVdd Pólo positivo para canais A/D (3,3 V).
- 20 AVss Pólo negativo para canais A/D (GND).
- 56 Vddcap Conexão para capacitor externo de
filtragem.
Alimentação
- 57 ENVREG Habilita regulador de tensão interno.
- 39 OSC1 Conexão de entrada do oscilador
principal.
Clock
- 40 OSC2 Conexão de saída do oscilador
principal.
- 7 MCLR Master Clear Input.
- 15 PGC1 Entrada de clock para gravação serial
in-circuit.
ICSP
- 16 PGD1 Entrada de dados para gravação serial
in-circuit.
INT1 42 INT1
INT2 43 INT2
INT3 44 INT3
Interrupção
INT4 45 INT4
Entrada de interrupção externa.
IO1 47 RC13
IO2 48 RC14
IO3 59 RF1
I/O
IO4 35 RF6
Entrada / Saída digital.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
46
IO5 37 RG2
IO6 36 RG3
IO7 4 RG6
IO8 5 RG7
IO9 60 RE0
IO10 61 RE1
IO11 62 RE2
IO12 63 RE3
IO13 64 RE4
IO14 1 RE5
IO15 2 RE6
IO16 3 RE7
BAT1 21 AN8 Entrada analógica da tensão da bateria
principal.
BAT2 22 AN9 Entrada analógica da tensão da bateria
secundária.
- 23 RB10
- 24 RB11
- 27 RB12
Monitor
Baterias
- 28 RB13
Saída para LED’s de monitoramento
de nível de bateria.
PWM1 46 OC1
PWM2 49 OC2
PWM3 50 OC3
PWM4 51 OC4
PWM5 52 OC5
Saída PWM.
PWM6 53 RD5 Saída digital com PWM gerado com
TIMER1.
PWM7 54 RD6 Saída digital com PWM gerado com
TIMER2.
PWM
PWM8 55 RD7 Saída digital com PWM gerado com
TIMER3.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
47
Reset - 7 MCLR Este pino é colocado em nível baixo
para resetar.
RS1 33 U1RX Receptor serial. RS-232
RS2 34 U1TX Transmissor serial.
USB1 32 U2TX Transmissor serial. USB
(UART2) USB2 31 U2RX Receptor serial.
7.2 Alimentação
Os diferentes circuitos da placa levam à necessidade de pelo menos duas tensões de
alimentação (3,3 V para o microcontrolador e 5 V para drivers e transceiver). Assim, o
circuito de alimentação da placa emprega dois reguladores de tensão e capacitores para
filtragem. Na prática, o microcontrolador será alimentado com tensão positiva de 3,3 V
regulado por um LM1086-3.3. O outro regulador, LM7805, é utilizado para regular a tensão
em 5 V que serve de alimentação para outros componentes da plataforma.
Existem duas entradas para baterias: uma principal, com tensão nominal de 12 V, e
uma secundária, onde deverá ser ligada uma bateria de 7,2 V. A bateria secundária somente
irá alimentar a plataforma caso a primária fique descarregada. A Figura 15 mostra o circuito
de alimentação.
FIGURA 15: Circuito de alimentação da plataforma.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
48
7.3 PWM
O microcontrolador PIC24FJ128GA006 possui cinco geradores de PWM internos. São
eles: OC1, OC2, OC3, OC4 e OC5, disponíveis nos pinos 46, 49, 50, 51 e 52,
respectivamente. As outras três saídas (pinos 53, 54 e 55) terão os sinais PWM gerados por
software usando temporizadores do microcontrolador.
Para geração de sinais de saída compatíveis com outros equipamentos comerciais, foi
empregado um array de oito transistores (ULN2803) com resistores pull-up de 10 kΩ, para
elevar a tensão de saída dos PWMs de 3,3 V para 5V.
A conexão externa é feita através de barras com oito conjuntos de três pinos cada,
sendo um para o sinal de PWM, um para 5 V e um para o terra, padrão este utilizado no
mercado de modelismo. Os dois pinos de alimentação (5 V) são utilizados, geralmente, para
alimentar o circuito lógico do módulo de potência. A Figura 16 mostra o circuito de PWM.
FIGURA 16: Circuito de PWM.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
49
7.4 Entradas e saídas digitais (I/O)
São 16 pinos que podem ser programados como entrada de sinal digital ou saída digital (0
ou 1). São usados resistores de pull-up de 10 kΩ, que garantem como padrão na entrada o
sinal da tensão de alimentação (3,3 V). A corrente máxima de saída dos pinos de I/O do
microcontrolador é de 18 mA (Microchip, 2006). Sendo assim colocou-se um resistor de
220Ω (calculado como R = 3,3 / 18m = 183,33 Ω) para limitá-la, evitando danos aos pinos. A
conexão de cada I/O é feita com uma barra de pinos duplos, sendo um ligado ao pino e o
outro ao negativo (GND). A Figura 17 mostra o circuito de I/O.
FIGURA 17: Circuito de I/O.
7.5 Entradas analógicas
Para as oito entradas analógicas está prevista a conexão direta através dos pinos 11,
12, 13, 14, 17, 18, 29 e 30. Nestes pinos há conversores analógico-digitais internos, de 10 bits
de resolução. Não foram projetados filtros ou quaisquer circuitos de condicionamento de
sinais neste projeto devido ao tempo limitado de execução. A Figura 18 mostra o circuito das
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
50
entradas analógicas. Procurou-se apenas reduzir no layout a distância entre os terminais do
microcontrolador e o conector de entrada, procurando reduzir assim a incidência de ruídos. Os
conversores internos trabalham na faixa de tensão de 0 a 3,3 V.
FIGURA 18: Entradas analógicas.
7.6 RS-232
Para comunicação serial será usado o padrão RS-232, que é amplamente difundido no
mercado. Para a conversão dos sinais TTL gerados pela UART (Universal Asynchronous
Receiver Transmitter) do microcontrolador para o padrão RS-232 é utilizado o conversor
MAX203, que dispensa o uso de componentes externos, reduzindo assim o tamanho da placa.
A saída dos sinais RS-232 estará disponível em uma barra de dois pinos (Tx e Rx). A
comunicação serial permite assim a ligação de dispositivos externos à plataforma, além da
possibilidade de troca de dados entre duas plataformas. A Figura 19 mostra o circuito de
comunicação RS-232.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
51
FIGURA 19: Comunicação serial RS-232.
7.7 USB
O conversor USB (TUSB3410) não será montado na placa principal da plataforma.
Este será montado de forma modular, em uma placa separada. Optou-se por essa forma de
implementação para diminuir o tamanho, o peso e o consumo da plataforma. Tem-se
disponível então a conexão UART2 do microcontrolador, através de dois pinos, os quais
podem ser conectados ao módulo USB quando este se fizer necessário.
7.8 Circuito de Gravação ICSP
A memória FLASH do PIC24FJ128GA006 será gravada de forma serial através de
três pinos (MCLR, PGC1 e PGD1) pelo método ICSP. Está previsto na plataforma um
conector RJ-12, padrão utilizado nos gravadores da Microchip. Para gravação se faz
necessário o uso de um gravador, disponível no mercado nacional.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
52
O método de gravação ICSP exige ainda um circuito simples, com um resistor de
10kΩ para pull-up no pino Vpp/MCLR. A Figura 20 apresenta o circuito implementado.
FIGURA 20: Circuito de gravação ICSP.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
8 Montagem de protótipos
Durante o desenvolvimento e para testes de funcionamento e programação, foram
montados dois protótipos, descritos a seguir:
8.1 Primeiro Protótipo
O primeiro protótipo montado consistia no circuito de filtragem da alimentação, clock,
ICSP e três saídas de I/O. Foi utilizado somente para testes de gravação do gravador e do
microcontrolador. Nesta etapa foi desenvolvido um programa que piscava LEDs colocados
nas três saídas de I/O (RE0, RE1 e RE2) e, com isso, comprovava o funcionamento do
gravador, do circuito de gravação, do circuito de clock e da alimentação do microcontrolador.
Para a programação do protótipo foram utilizados dois compiladores de linguagem C:
MPLAB C30 Compiler (Microchip, 2005) e o CCS C Compiler (CCS, 2007). Ambos os
compiladores foram utilizados no ambiente de desenvolvimento MPLAB. O compilador
MPLAB C30 é da própria Microchip, voltado para CPUs de 16 bits, sendo um compilador
mais complexo, porém mais recente. Como tem menor tempo de mercado, traz uma biblioteca
de funções mais limitada, o que acaba tornando a programação mais difícil. O compilador
CCS C, da empresa Custom Computer Service Inc., possui uma biblioteca de funções bem
mais elaborada, com recursos prontos para leitura A/D, programação dos TIMERs,
comunicação serial, geração de PWM, e várias outras. Estas funções deixam a programação
muito mais simples, preferível de ser aplicada a alunos de Ensino Médio.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
54
Para a gravação da plataforma foram testados dois gravadores ICSP: o MPLAB ICD2
(Microchip, 2005) e o nacional Exsto ICD2 (Exsto, 2007). Ambos os gravadores funcionaram
perfeitamente, sendo totalmente compatíveis com a plataforma. Para o gravador da Exsto foi
necessária a montagem de um cabo adicional, pois o cabo que acompanha o gravador possui
um conector diferente do utilizado na plataforma e no gravador da Microchip (RJ-12).
Na Figura 21 é apresentado o circuito e a placa do protótipo desenvolvido com a
ferramenta Eagle, versão 4.16r2. A placa do primeiro protótipo (Figura 22) ficou com 51 x 83
mm, e a alimentação teve de ser regulada em 3,3 V, visto que ela não possuía regulador de
tensão.
FIGURA 21: Esquemático e placa de circuito impresso do primeiro protótipo.
FIGURA 22: Foto do primeiro protótipo.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
55
8.2 Segundo Protótipo
O segundo protótipo já se aproximava bastante da versão final, tendo todos os recursos
previstos na plataforma e o tamanho de 100 x 160 mm. A Figura 23 apresenta o esquemático
do segundo protótipo, enquanto a Figura 24 mostra a placa de circuito impresso desenvolvida
para este protótipo.
FIGURA 23: Esquemático do segundo protótipo.
FIGURA 24: Placa de circuito impresso do segundo protótipo.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
56
Com o segundo protótipo montado foi realizada uma série de testes de funcionamento,
como leitura de canais A/D, temporizadores, geração de PWM, acionamento simultâneo e
alternado de pinos de I/O, buscando-se validar o projeto. Durante esta fase perceberam-se
algumas melhorias que poderiam ser feitas, como, por exemplo, a alocação de saídas I/O para
indicação de carga das baterias através de LEDs bicolores.
Outra modificação implementada com base nos testes foi a troca dos diodos zener dos
pinos de I/O por resistores de pull-up de 10 kΩ . A Figura 25 é uma foto do segundo protótipo
montado.
FIGURA 25: Foto do segundo protótipo.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
9 Desenvolvimento da placa de circuito impresso
9.1 Layout
Após a realização dos testes e a implementação das melhorias no circuito, foi realizado
o roteamento do layout da placa de circuito impresso final da plataforma. Para o
desenvolvimento do esquemático e roteamento da placa foi utilizado o software Eagle, versão
4.16r2. A Figura 26 apresenta o circuito final e a Figura 27 mostra a versão final da placa
desenvolvida para a plataforma.
FIGURA 26: Circuito final da plataforma.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
58
FIGURA 27: Placa de circuito impresso da plataforma.
A placa final ficou com 64 x 83 mm. Utiliza tecnologia dupla face com trilhas de 8
mils (0,2 mm) de espessura, espaçamento entre trilhas de 8 mils, metalização, estanhamento e
máscara de solda. Por questões de acabamento e confiabilidade, esta placa foi fabricada por
uma empresa especializada. A Figura 28 é uma foto da placa produzida.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
59
FIGURA 28: Foto da placa de circuito impresso da plataforma.
9.2 Montagem
A etapa seguinte engloba a soldagem dos componentes e montagem da plataforma. A
seguir é apresentada a lista dos componentes eletrônicos utilizados na montagem.
Semicondutores IC1 - PIC24FJ128GA006 - microcontrolador IC2 - LM1086-3.3 - regulador para 3,3V IC3 - MAX203 – conversor RS-232 IC4 - LM7805 - regulador para 5V IC5 - ULN2803 – array de transistores D17 - 1N5400 – diodo de uso genérico para 3A D18 - 1N5400 – diodo de uso genérico para 3A LED1 - LED comum vermelho 5mm D1 - LED bicolor 5mm D2 - LED bicolor 5mm Resistores: 5% - 1/8W R7 a R22 - 220 Ω R23 - 1k Ω R24 - 10k Ω R45 a R48 - 220 Ω RN1 a RN3 - 10k Ω - rede resistiva de oito elementos Capacitores C6 - 1uF - eletrolítico C7 e C8 - 33pF - cerâmico C9 - 1uF - cerâmico C10 a C14 - 100n - cerâmico C16 - 100uF - eletrolítico
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
60
Conectores AD - Barra de pinos 8x2 AL - Conector parafusável com três segmentos p/ bater ia BAT – Barra de pinos 2x1 INT – Barra de pinos 4x2 IO - Barra de pinos 16x2 J1 - Conector RJ-12 PWM - Barra de pinos 8x3 RS232 - Barra de pinos 2x1 UART - Barra de pinos 2x1 Q1 - 32MHz - oscilador RESET – chave push-button
A Figura 29 mostra a plataforma pronta.
FIGURA 29: Plataforma pronta, montada em PCI.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
10 Aplicação de validação
A fim de validar a plataforma de controle desenvolvida foi elaborada uma aplicação
exemplo, que utiliza diversas funcionalidades da placa, tais como entradas analógicas, saídas
digitais e acionamento PWM.
A aplicação escolhida é bastante tradicional para aulas práticas de robótica
educacional, servindo como estudo de caso real para demonstração do funcionamento da
plataforma.
Trata-se de uma aplicação de um robô seguidor de linha. Nesta aplicação o robô,
controlado pela plataforma desenvolvida, tem a tarefa de seguir uma linha preta em uma mesa
branca.
A seguir serão detalhadas as características de hardware e software montadas para
desenvolver a aplicação citada.
10.1 Hardware
Para alimentação do robô foi utilizada uma bateria de 12 V / 6 A/h. O oscilador
montado na plataforma foi de 32 MHz. Para a detecção da linha foram confeccionados
sensores utilizando emissores e receptores de infravermelho. Os sensores utilizados foram o
TIL32 (LED emissor infravermelho) e TIL78 (fotoreceptor). A fim de operar com sinais de
3,3 V, compatível com o microprocessador da placa, foi utilizado o circuito abaixo (Figura
30). O potenciômetro é de 10 kΩ.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
62
FIGURA 30: Circuito do sensor para detecção da linha.
Os sensores são ligados às entradas analógicas AN4 e AN5. São usados dois conjuntos
de sensores (fotoemissor e fotoreceptor) a fim de detectar as bordas da direita e esquerda da
linha a ser seguida. Desta forma o robô estará sempre andando centrado sobre a linha mestre.
Conforme a cor da mesa (linha preta sobre um fundo branco) os sensores retornam à
entrada um valor de tensão diferente.
O acionamento do robô é feito através de dois motores controlados, através de um
módulo de potência, por pinos de I/O da plataforma. A plataforma de potência utilizada foi
montada para esta aplicação com um circuito simples de amplificação empregando um
transistor TIP120 (Figura 31). Os pinos escolhidos para acionamento dos motores são RE7 e
RE6.
Foram utilizados na aplicação dois motores de 12 V, cujo consumo sem carga é de 150
mA. Os motores foram retirados de impressoras a jato de tinta e em seus eixos foram
colocadas reduções de 9:1. O tamanho dos motores é de 3,6 cm de diâmetro e 9 cm de
comprimento. Os motores são da marca HP, modelo C2162-60006.
Na montagem do robô, o sensor da esquerda foi ligado à entrada analógica AN5, e o
da direita na entrada AN4. O motor da esquerda foi ligado à saída RE7, enquanto o da direita
na saída RE6.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
63
FIGURA 31: Circuito do robô seguidor de linha.
A Figura 32 mostra o robô, com a plataforma, na pista.
FIGURA 32: Plataforma aplicada em robô seguidor de linha.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
64
10.2 Software
A partir das definições de forma de conexão e pinagem envolvida na montagem
mecânica, passou-se para a etapa de programação. A plataforma foi então programada, usando
o compilador MPLAB C30 (Microchip, 2007), para que controlasse o robô da forma desejada,
conseguindo assim atingir o objetivo. A seguir é apresentado o código-fonte do programa
desenvolvido para o teste da plataforma com a aplicação de seguidor de linha.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
#include <p24FJ128GA006.h> #include <adc.h> int main(void) OC1CON = 0x0006; // Aciona PWM1 OC5CON = 0x0006; // Aciona PWM5 // Comum para todos os PWMs PR2 = 0x1869; // Inicializa PR2 T2CONbits.TON = 1; // Inicia o TIMER2 // Configuracao dos canais AD AD1CON1 = 0x80E4; // Liga, com auto amostragem e auto conversao AD1CON2 = 0; // AVdd, AVss, conversao para inteiro AD1CON3 = 0x1F05; // Tad auto amostragem, Tad = 5* Tcy AD1PCFGbits.PCFG5 = 0; // Desabilita AN5 como entra da digital AD1PCFGbits.PCFG4 = 0; // Desabilita AN4 como entra da digital AD1CSSL = 0; // Nenhuma entrada é auto escaneada // Configuracoes do TIMER1, usado para delay T1CON = 0x00; // Desliga TIMER1 e reseta reg. de contole TMR1 = 0x00; // Limpa o valor do registrador do TI MER1 PR1 = 0x009F; // Seta o registrador de Período IFS0bits.T1IF = 0; // Limpa a flag de estouro do TI MER1 unsigned long v1, v2, temp; for(;;) // Primeiro ADC - esquerda AD1CHS = 5; TMR1 = 0x00; T1CONbits.TON = 1; while (!IFS0bits.T1IF); T1CONbits.TON = 0; IFS0bits.T1IF = 0; while(!AD1CON1bits.DONE); //le valor do AD v1 = (long) ADC1BUF0; if (v1 > 0xfe) //ta no preto OC1RS = 0x1869; //tempo desligado OC1R = 0x0000; //tempo ligado
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
65
45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72
else //ta no branco OC1RS = 0x124E; //tempo desligado OC1R = 0x061A; //tempo ligado // Leitura Segundo ADC - direita AD1CHS = 4; TMR1 = 0x00; T1CONbits.TON = 1; while (!IFS0bits.T1IF); T1CONbits.TON = 0; IFS0bits.T1IF = 0; while(!AD1CON1bits.DONE); //le valor do AD v2 = (long) ADC1BUF0; if (v2 > 0xfe) // ta no preto OC5RS = 0x1869; //tempo desligado OC5R = 0x0000; //tempo ligado else // ta no branco OC5RS = 0x124E; //tempo desligado OC5R = 0x061A; //tempo ligado return(0);
Os delays de 10 microssegundos (linhas 33 a 37 e 53 a 57, sendo que o TIMER1 foi
utilizado para este delay) entre a seleção de uma entrada analógica (linhas 32 e 52) e a leitura
do dado (linhas 38 e 58) são necessários para a estabilização do valor na entrada a ser lida
pelo microcontrolador.
Ao encontrar a linha preta com o sensor da esquerda, quando a leitura do A/D for
muito alta (linha 40) a plataforma reduz a zero o PWM do motor esquerdo (linhas 42 e 43), o
qual volta a ser ativado ao sair da linha (linhas 47 e 48). O mesmo acontece para o lado
direito, mantendo-se assim em cima da linha guia.
Para o acionamento dos motores foi utilizada a técnica de PWM, que consiste em
modular a largura do pulso elétrico, controlando, assim a velocidade do motor, sem alterar
significativamente seu torque.
O princípio de funcionamento do PWM é a geração de um clock e a aplicação deste
clock para o acionamento da carga. Este clock terá um ciclo ativo (duty cycle), que é a parte
em nível alto do sinal, responsável pela entrega de potência à carga. Este ciclo ativo pode ser
variado de 0% a 100%, variando, assim, a potência entregue à carga. Observando a Figura 30,
a qual apresenta um exemplo de PWM, percebe-se que a tensão média (e a potência entregue
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
66
à carga) do último gráfico é maior que os dois outros. Então, com este PWM aplicado a um
motor, a velocidade do último seria maior do que as dos outros dois anteriores (Valentine,
1998).
FIGURA 33: Exemplo de PWM.
O PWM gerado para a aplicação foi de 2 kHz de clock, com ciclo ativo de 25%. Este
valor de clock e ciclo ativo foram definidos empiricamente. No programa o clock é definido
pelo valor do registrador PR2, que é calculado em função da freqüência do cristal do circuito
e do prescaler do TIMER utilizado para o controle (Microchip, 2007), como no exemplo:
Período do Clock = (PR2 + 1) * Período do ciclo ativo * Prescaler
500 µs = (PR2 + 1) * 80 ns * 1
PR2 = 6249
O ciclo ativo é definido pelo valor de OC1R, e o valor de OC1RS define o valor de
ciclo inativo (carga não alimentada).
O sistema foi ensaiado em laboratório, respondendo e funcionando conforme o
esperado.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
11 Conclusões e Trabalhos futuros
O trabalho teve grande validade na formação acadêmica do autor, pois serviu para
consolidar e aprofundar os conhecimentos em diversas áreas estudadas durante o curso de
Engenharia da Computação.
Para este trabalho foi necessário o projeto e desenho de esquemas eletrônicos e a
geração e fabricação de placas de circuito impresso em softwares específicos. Também foi
necessário o estudo de compiladores e ferramentas em C para programação em
microcontroladores.
A plataforma desenvolvida tem todas as características e recursos necessários para
atingir os objetivos propostos, nas áreas de robótica educacional e robótica de competição.
Alguns recursos ainda podem ser implantados, e como trabalhos futuros destacam-se,
na parte de software, a criação de bibliotecas de funções para uso dos recursos da plataforma.
Na parte de hardware alguns módulos como o módulo de comunicação USB, o gravador
ICSP, módulos de potência e condicionamento de sinais de sensores, devem ser projetados e
desenvolvidos.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
BIBLIOGRAFIA
ABB. ABB Automotive. Asea Brown Boveri Ltd. Zurique, Suíça. Disponível em:
<http://www.abb.com/industries/us/9AAC910032.aspx>. Acessado em 20 nov. 2007.
ASIMOV Isaac. I, Robot. 1.ed. New York: Gnome Press, 1950.
ATMEL. Secure Microcontrollers 8-/16-bit RISC CPU. Atmel. Minnesota, EUA.
Disponível em:
<http://www.atmel.com/dyn/products/param_table.asp?family_id=662&OrderBy=part_no&D
irection=ASC>. Acessado em 24 out. 2007.
BARROS, Ettore. Robôs Móveis Autônomos. Mecatrônica Fácil, São Paulo: Editora Saber,
n. 3, mar. 2002.
BRAGA, Newton C. Controles Lineares de Potência. Mecatrônica Fácil, São Paulo: Editora
Saber, n. 5, jul. 2002.
BRAGA, Newton C. Educação Tecnológica. Mecatrônica Fácil, São Paulo: Editora Saber, n.
34, mai. 2007.
CCS. Compiler for Microchip PIC24 MCUs & dsPIC® DSCs. Custom Computer Service,
Inc. Wisconsin: EUA. Disponível em:
<http://www.ccsinfo.com/content.php?page=dspic>. Acessado em 07 nov. 2007.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
CURRIE, Adam. The History of... ROBOTS. The University of Birmingham. Birmingham,
Reino Unido. Disponível em:
<http://www.cs.bham.ac.uk/research/labs/robotics/cbbc/history.php>. Acessado em 20 nov.
2007.
EXSTO. ICD2 - Gravador e Depurador de Microcontroladores PIC. Exsto Tecnologia
Ltda. Minas Gerais, Brasil. Disponível em:
<http://www.exsto.com.br/inside.php?g=produtos&p=icd2>. Acessado em 06 nov. 2007.
FIRST. For Inspiration and Recognition of Science and Technology. Manchester, EUA.
Disponível em: <http://www.usfirst.org/>. Acesso em 14 abr. 2007.
FISCHERTECHNIK. Fischertechnik ROBO INTERFACE. Fischertechnik Group.
Waldachtal, Alemanha. Disponível em: <http://www.fischertechnik.de/en/products
/index.aspx?KatID=5&sprache=&ArtID=93293>. Acesso em 11 abr. 2007.
FREESCALE. 16-bit Microcontrolers. Freescale. Texas, EUA. Disponível em:
<http://www.freescale.com/webapp/search/MainSERP.jsp>. Acessado em 24 out. 2007.
GARCÍA, Cristina U. Introduccion a la robotica. 1. ed. Málaga: Universidad de Málaga,
2001.
GATES, Bill. A Robot in Every Home. Scientific American Magazine. Jan. 2007. 8 páginas.
Disponível em <http://www.cs.virginia.edu/~robins/A_Robot_in_Every_Home.pdf> Acessa-
do em 19 de julho de 2007.
GUDWIN, Ricardo Ribeiro. Novas Fronteiras na Inteligência Artificial e na Robótica. 4o
DINCOM - Congresso Temático de Dinâmica, Controle e Aplicações, 6-10 de junho de
2005. UNESP. Campus de Bauru, Bauru, SP.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
GUERRA DE ROBÔS. Winter Challenge. Amparo, São Paulo, Brasil. Disponível em:
<http://www.guerraderobos.com.br/modules.php?name=GR_Eventos&evento=3>. Acesso em
14 abr. 2007.
HONDA. The Honda Humanoid Robot ASIMO. Honda Motors Co., Ltd. Tókio, Japão.
Disponível em: <http://world.honda.com/ASIMO/>. Acessado em 20 nov. 2007.
IFI. IFI Robotics Robot Controller. Innovation First, Inc. Greenville, EUA. Disponível em:
<http://www.ifirobotics.com/rc.shtml>. Acessado e em 11 abr. 2007.
IOVINE, John. PIC Robotics: A Beginner's Guide to Robotics Projects Using the
PICmicro. 1. ed. New York: McGraw-Hill, 2004.
KITANO, Symbiotic Systems Project. Open PINO Platform. Kitano Symbiotic Systems
Project. Tókio, Japão. Disponível em: <http://www.symbio.jst.go.jp/PINO/>. Acessado em 20
nov. 2007.
KURFESS, Thomas R. Robotics and Automation Handbook. 1. ed. New York: CRC Press,
2005.
LEGO. NXT Intelligent Brick. LEGO Group. Billund, Dinamarca. Disponível em:
<http://shop.lego.com/product/?p=9841>. Acesso em 11 abr. 2007.
LEGO. RCX. LEGO Group. Billund, Dinamarca. Disponível em:
<http://shop.lego.com/product/?p=9709>. Acesso em 11 abr. 2007.
MCCOMB, Gordon; PREKDO, Myke. Robot Builder’s Bonanza. 3. ed. New York:
McGraw-Hill, 2006.
MEGGIOLARO, Marco Antonio. Tutorial em Robôs de Combate. 1. ed. Rio de Janeiro:
Equipe RioBotz PUC-Rio, 2006.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
MEHL, Ewaldo L. de M. Futebol de Robôs. Mecatrônica Fácil, São Paulo: Editora Saber, n.
4, mai. 2002.
MICROCHIP. 16-bit PIC® Microcontrollers & dsPIC ® Digital Signal Controllers.
Microchip. Arizona, EUA. Disponível em:
<http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=75>.
Acessado em 12 mai. 2007.
MICROCHIP. PIC24FJ128GA Family Data Sheet. Arizona, EUA: Microchip, 2006.
Disponível em: <http://ww1.microchip.com/downloads/en/devicedoc/39747C.pdf>. Acessado
em 06 nov. 2007.
MICROCHIP. MPLAB® C30 C Compiler User’s Guide. Arizona, EUA: Microchip, 2007.
Disponível em:
<http://ww1.microchip.com/downloads/en/DeviceDoc/51432C.pdf>. Acessado em: 06 nov.
2007.
MICROCHIP. MPLAB® ICD 2 In-Circuit Debugger User's Guide. Arizona, EUA:
Microchip, 2005. Disponível em:
<http://ww1.microchip.com/downloads/en/DeviceDoc/51331B.pdf>. Acessado em 06 nov.
2007.
MILES, Pete; CARROLL, Tom. Build Your Own Combat Robot. 1. ed. New York:
McGraw-Hill/Osborne, 2002.
MIT. Gogo Board. Massachussetts Institute of Technology. Massachussetts, EUA. Disponí-
vel em: <http://padthai.media.mit.edu:8080/cocoon/gogosite/documentation.xspp?lang=en>.
Acesso em 11 abr. 2007.
MIT. The Handy Board. Massachussetts Institute of Technology. Massachussetts, EUA.
Disponível em: <http://www.handyboard.com/techdocs/hbmanual.pdf>. Acesso em 11 abr.
2007.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
NOGUEIRA, Octávio. Basic Step: 4ª Parte. Mecatrônica Fácil, São Paulo: Editora Saber, n.
6, set. 2002.
PAZOS, Fernando. Automação de Sistemas & Robótica. 1. ed. Rio de Janeiro: Axcel
Books, 2002.
PNCA. Módulo do Controle MC2. PNCA Robótica e Eletrônica. São Carlos, SP, Brasil.
Disponível em: <http://www.pnca.com.br/index.php?option=com_content&task=view&id=65
&Itemid=55>. Acesso em 14 abr. 2007.
ROBOT MUSEUM. ROBOTHINK In Robot Museum in Nagoya. Japan. 2006. 6 páginas.
Disponível em <http://www.robot-museum.net/pdf/robothink_english.pdf> Acessado em 10
de julho de 2007.
SANTA LÚCIA, Hospital. Robótica no Hospital Santa Lúcia. Hospital Santa Lúcia.
Brasília, DF, Brasil. Disponível em: <http://www.santalucia.com.br/robotica/robotica.htm>.
Acessado em 20 nov. 2007.
SANTOS, Paulo G. A brincadeira que se torna coisa séria. Mecatrônica Fácil, São Paulo:
Editora Saber, n. 34, mai. 2007.
SCHERZ, Paul. Practical Electronics for Inventors. 1. ed. New York: McGraw-Hill, 2006.
SOARES, Márcio J. SMA Muscle Wire. Mecatronica Fácil, São Paulo: Editora Saber, n. 10,
mai. 2003.
SONY. World's First Running Humanoid Robot. Sony Corporation. Tókio, Japão.
Disponível em: <http://www.sony.net/SonyInfo/News/Press_Archive/200312/03-060E/>.
Acessado em 20 nov. 2007.
BD
U –
Bib
liote
ca D
igita
l da
UN
IVAT
ES
(htt
p://w
ww
.uni
vate
s.br/
bdu)
SYMPHONY. CPU Robótica Fácil. Symphony Robótica Educacional. São Paulo, SP, Brasil.
Disponível em: <http://www.roboticafacil.com.br/cpu_rfacil.pdf>. Acesso em 11 abr. 2007.
TEXAS INSTRUMENTS. MSP430 Ultra-Low Power Microcontrollers. Texas
Instruments. Texas, EUA. Disponível em:
<http://focus.ti.com/paramsearch/docs/parametricsearch.tsp?sectionId=95&tabId=1200&fami
lyId=342&family=mcu>. Acessado em 24 out. 2007.
VALENTINE, Richard. Motor Control Electronics Handbook. 1. ed. New York:
McGraw-Hill, 1998.
ZILOG. 16-bit MCU Solutions Product Line. Zilog. Califórnia, EUA. Disponível em:
< http://www.zilog.com/productserver/ss2.asp?FAM=16bit>. Acessado em 12 mai 2007.