UIVERSIDADE CATÓLICA DE GOIÁS
DEPARTAMETO DE COMPUTAÇÃO
GRADUAÇÃO EM EGEHARIA DE COMPUTAÇÃO
TECOLOGIA WIRELESS: ACIOADO UM DISPOSITIVO
ROBÓTICO POR MEIO DE UM MICROCOTROLADOR
ALEX ARGEMON FERNANDES
DAIANE BARBOSA MORI
KARINE CLAUDIO FERREIRA
JUNHO
2008
UIVERSIDADE CATÓLICA DE GOIÁS
DEPARTAMETO DE COMPUTAÇÃO
GRADUAÇÃO EM EGEHARIA DE COMPUTAÇÃO
TECOLOGIA WIRELESS: ACIOADO UM DISPOSITIVO
ROBÓTICO POR MEIO DE UM MICROCOTROLADOR
Trabalho de Projeto
Final de Curso II apresentado por Alex
Argemon Fernandes, Daiane Barbosa Mori e Karine Cláudio
Ferreira à Universidade Católica de Goiás, sob a orientação da
Profª. Mírian Sandra Rosa, MSc, como requisito parcial para a
Graduação do Curso de Engenharia de Computação.
ii
AGRADECIMETOS
Agradecimentos aos nossos pais ausentes e presentes, colegas e familiares, por nos
apoiarem em chegar ao final de mais uma etapa da vida. A nossa orientadora, Mírian Sandra
Rosa, que teve paciência e compreensão em nos orientar no desenvolvimento deste trabalho
de conclusão de curso. Para a nossa professora Solange Silva que não mediu esforços para nos
auxiliar na área de rede a nossa estima. Ao Departamento de Computação da Universidade
Católica de Goiás por nos ceder o laboratório de robótica para a realização dos experimentos
práticos por nós realizados.
iii
DEDICATÓRIA
A Deus, pelas nossas vidas e por ter
colocado pessoas no caminho que tanto nos
ajudaram, pela serenidade e sabedoria para
absorver os conhecimentos.
Aos nossos familiares pela força e
compreensão em nossos momentos de ausência e
falta de paciência.
Aos amigos pelo companheirismo.
“Deus, dai-me a serenidade para aceitar as
coisas que eu não posso mudar,
coragem para mudar as coisas que eu possa, e
sabedoria para que eu saiba a diferença:
vivendo um dia a cada vez, aproveitando um
momento de cada vez;
aceitando as dificuldades como um caminho
para a paz.”
Reinhold Niebuhr
iv
RESUMO
Este projeto tem como objetivo o desenvolvimento de módulos utilizando a
tecnologia sem fio para a transmissão de sinais, integrando-os a um microcontrolador que
acionará um dispositivo robótico. Estes módulos possibilitam o controle de outros
dispositivos que podem ser utilizados tanto em residências no acionamento de portões
eletrônicos ou na indústria no acionamento de grandes motores. Os módulos minimizam á
utilização de fios e cabos para controlar/acionar dispositivos elétricos.
Palavras-Chave: sem fio, microcontrolador, robótica
v
ABSTRACT
This project has as objective the development of modules using the technology
wireless for transmission of signals, integrating them into a microcontroller that will set in
motion a robotic device. These modules make possible the control of other devices that can in
such a way be used in residences in the drive of electronic gates or the industry in the drive of
great engines. The modules minimize the use of wires and handles to control/to set in motion
electric devices.
Word-Key: wireless, microcontroller, robotics
vi
TECOLOGIA WIRELESS: ACIOADO UM DISPOSITIVO
ROBÓTICO POR MEIO DE UM MICROCOTROLADOR
SUMÁRIO
LISTA DE FIGURAS.............................................................................................................. ix
LISTA DE TABELAS ............................................................................................................. xi
LISTA DE ABREVIATURAS E SIGLAS ........................................................................... xii
INTRODUÇÃO .......................................................................................................................... 1
FUNDAMENTAÇÃO TEÓRICA ............................................................................................. 3
2.1. Componentes Eletrônicos .............................................................................................. 3
2.1.1.
Resistor ............................................................................................................... 3
2.1.2.
Capacitores ......................................................................................................... 4
2.1.3.
Transistor ............................................................................................................ 5
2.1.4.
Diodo .................................................................................................................. 5
2.1.5.
LED .................................................................................................................... 6
2.1.6.
Circuito Integrado ............................................................................................... 6
2.1.7.
Cristal de Quartzo ............................................................................................... 7
2.2.
Porta Paralela .............................................................................................................. 8
2.3.
Motores de Passos .................................................................................................... 10
2.4.
Fonte de Tensão e Corrente ...................................................................................... 12
2.5.
Matriz de contato ...................................................................................................... 12
2.6.
Microcontrolador ...................................................................................................... 13
2.6.1.
Microcontrolador PIC16F877 .......................................................................... 15
2.7.
Transmissão e Recepção ........................................................................................... 22
2.8.
Estudo das Redes Wireless ....................................................................................... 26
vii
EXPERIMENTOS REALIZADOS .......................................................................................... 30
3.1. Primeiro Experimento: Teste de I/O do PIC 16F877 .................................................. 30
3.2. Segundo experimento: Acionamento de um motor de passo ..................................... 31
3.3. Terceiro experimento: Transmissão wireless .............................................................. 33
3.4. Quarto Experimento: Envio de dados usando o RT4 e RR3 ...................................... 34
4.1. Módulo de Comunicação ............................................................................................ 38
4.2. Módulo de Controle ..................................................................................................... 39
5.4. Módulo Físico .............................................................................................................. 44
CONCLUSÃO .......................................................................................................................... 47
BIBLIOGRAFIA ...................................................................................................................... 49
APÊNDICE .............................................................................................................................. 53
Apêndice A – Código-fonte em Linguagem C do Primeiro Experimento ......................... 53
C do Segundo Experimento ......................... 55
Apêndice B – Código-fonte em Linguagem
Apêndice C – Código-fonte em Linguagem C do Módulo de Controle ............................. 56
viii
TECOLOGIA WIRELESS: ACIOADO UM DISPOSITIVO
ROBÓTICO POR MEIO DE UM MICROCOTROLADOR
LISTA DE FIGURAS
Figura 1 - Resistor [MIL2007] .................................................................................................. 4
Figura 2 - Capacitores [CAP2007] ........................................................................................... 4
Figura 3 - Transistores[XAT2007] ............................................................................................ 5
Figura 4 - Tipos de diodos [E)C2007] ..................................................................................... 6
Figura 5 - LED [PAG2007] ....................................................................................................... 6
Figura 6 - Circuito Integrado [CI2008] .................................................................................... 7
Figura 7 - Cristal de Quartzo .................................................................................................... 8
Figura 8 - Conector DB25[ROG2007] ......................................................................................
9
Figura 9 - Dados enviados através da porta paralela[ROG2007] ........................................... 9
Figura 10 - Pinagens do CI UL)2003 [ROG2007] ................................................................ 11
Figura 11 - Pinagens do CI UL) 2803[ROG2007] ................................................................ 11
Figura 12 - Controle de 1 motor de passo usando o CI UL) 2003[ROG2007] ..................... 12
Figura 13 - Matriz de contato[MI)2007] ............................................................................... 13
Figura 14 - Componentes de um Microcontrolador [MZE2007] ............................................ 14
Figura 15 - PIC16F877 [MEC2007] ....................................................................................... 15
Figura 16 - Diagrama de pinos do PIC16F877[SOU2003] .................................................... 16
Figura 17 - Gravadora mcFflash[LAB2007] .......................................................................... 21
Figura 18 - Circuito Equivalente do Transmissor[SAB2007] ................................................ 23
Figura 19 - Identificação dos terminais[SAB2007] ................................................................ 24
Figura 20 - RT4[TEL2007] ...................................................................................................... 24
ix
Figura 21 - Pinagem do receptor[SAB2007] .......................................................................... 25
Figura 22 - Receptor RR3 [ROG2007] .................................................................................... 26
Figura 23 - Esquema Elétrico do Microcontrolador ............................................................... 30
Figura 24 - Esquema do Acionamento .................................................................................... 32
Figura 25 - Acionando um motor de passo no PIC Simulator ................................................ 33
Figura 26 - CIs MC145026 e MC145027-[ROG2007] ........................................................... 33
Figura 27 - Teste de transmissão entre o codificador e o decodificador [ROG2007] ............ 34
Figura 28 - Esquema elétrico do RR3 e MC145027 adaptada [ROG2007] ........................... 35
Figura 29 - Esquema elétrico do RT4 e MC145026 - adaptada [ROG2007] ......................... 35
Figura 30 - O Esquema dos Módulos ...................................................................................... 37
Figura 31 - Módulo de Comunicação ...................................................................................... 38
Figura 32 - Esquema Elétrico do Transmissor ........................................................................ 39
Figura 33 - Matriz de Contato .................................................................................................
40
Figura 34 - Esquema elétrico da matriz de contato. ............................................................... 40
Figura 35 - Módulo Controle................................................................................................... 41
Figura 36 - Esquema Elétrico do Receptor ............................................................................. 41
Figura 37 - Interface dos Sinais[ROG2007] ........................................................................... 43
Figura 38 - Configuração do Registro[ROG2007] ................................................................. 43
Figura 39 - Robô ARM modelo RA-01..................................................................................... 44
Figura 40 - Protótipo ............................................................................................................... 45
Figura 41 - Protótipo com Módulo de Controle ...................................................................... 46
x
TECOLOGIA WIRELESS: ACIOADO UM DISPOSITIVO
ROBÓTICO POR MEIO DE UM MICROCOTROLADOR
LISTA DE TABELAS
Tabela 1 - Endereçamento e formas de acesso aos registradores [ROG2007] .......................... 8
Tabela 2 - Meio passo[ROG2007]........................................................................................... 10
Tabela 3 - Nomenclatura dos pinos do PIC16F877 [MIC2006] ............................................. 17
Tabela 4 - Continuação da nomenclatura dos pinos do PIC16F877 ........................................ 18
Tabela 5 - Descrição dos parâmetros de controle [PER2004] ................................................. 19
Tabela 6 - Enviar pulsos [GRA2007] ...................................................................................... 21
Tabela 7 - Comparativo entre as redes Wireless ..................................................................... 29
xi
TECOLOGIA WIRELESS: ACIOADO UM DISPOSITIVO
ROBÓTICO POR MEIO DE UM MICROCOTROLADOR
LISTA DE ABREVIATURAS E SIGLAS
A/D
Analógico / Digital
CCS
Custom Computer Services
CI
Circuito Integrado
CLP
Controlador Lógico Programável
CPU
Central Processor Unit (Unidade Central de Processamento)
EEPROM
Electrically Erasable Programmable Read-Only Memory
GND
Ground (Terra)
IDE
Integrated Development Environment
I/O
Input/Output (Entrada/Saída)
LCD
Liquid Crystal Display (Display de Cristal Líquido)
LED
Light Emitting Diode (Diodo Emissor de Luz)
PC
Personal Computer (Computador Pessoal)
PIC
Peripherical Interface Controller
PWM
Pulse-Width Modulation (Modulação por Largura de Pulso)
RAM
Random Access Memory (Memória de Acesso Randômico)
RCX
Robotic Command Explorer
RISC
Reduced Instruction Set Computer
UCG
Universidade Católica de Goiás
UCP
Unidade Central de Processamento
ULA
Unidade Lógica Aritmética
USB
Universal Serial Bus (Barramento Serial Universal)
VT
Transmissão válida
xii
1
TECOLOGIA WIRELESS: ACIOADO UM DISPOSITIVO
ROBÓTICO POR MEIO DE UM MICROCOTROLADOR
CAPITULO I
ITRODUÇÃO
A comunicação de dados digitais é uma realidade em nosso cotidiano em que o
crescimento de trocas de informações vem fazendo parte, tanto na indústria, quanto nas
residências. No início, as infra-estruturas de redes que faziam essa comunicação eram feitas
através de cabos, ou seja, a conexão era puramente física.
Devido à necessidade de se ter mobilidade para a troca de informações, surgiu à
transmissão sem fio, permitindo ao usuário de qualquer lugar realizar a troca de informações
sem a necessidade de estar conectado a uma rede.
Este projeto visa o estudo de uma tecnologia de comunicação sem fio, especificamente
a utilização de dois chips, um transmissor (RT4) e um receptor (RR3) fabricados pela
Telecontrolli, empresa privada que produz componentes híbridos com tecnologia de
radiofreqüência. A partir de uma abordagem experimental, foi proposta uma aplicação para
testar e analisar o desempenho dos chips que estavam disponíveis no Laboratório de Robótica
do Departamento de Computação da Universidade Católica de Goiás.
Para essa aplicação foram desenvolvidos três módulos: um para enviar um sinal vindo
de um computador usando o transmissor RT4, outro para receber este sinal via wireless
utilizando o receptor RR3, e o último módulo é um dispositivo robótico contendo dois
motores de passo concedendo ao mesmo dois graus de liberdade, isto é, tem mobilidade nos
eixos horizontal e vertical.
Este projeto está dividido em sete capítulos.
O segundo capítulo mostra a fundamentação teórica (como): os componentes
eletrônicos utilizados, como o microcontrolador, o dispositivo periférico do computador
(porta paralela), motores de passo, linguagem de programação (C), e o estudo das tecnologias
wireless.
O terceiro capítulo traz os experimentos realizados com microcontrolador e os chips
de transmissão e recepção.
2
O quarto capítulo faz a descrição dos módulos implementados para a aplicação deste
projeto a fim de validá-lo.
O quinto capítulo traz as conclusões e as dificuldades encontradas.
O sexto capítulo é a bibliografia que contém as referências que embasam a aplicação.
O sétimo capítulo traz em apêndices os programas desenvolvidos na linguagem C para
os experimentos.
3
TECOLOGIA WIRELESS: ACIOADO UM DISPOSITIVO
ROBÓTICO POR MEIO DE UM MICROCOTROLADOR
CAPITULO II
FUDAMETAÇÃO TEÓRICA
Esse capítulo apresenta uma pesquisa teórica a respeito das tecnologias atuais
utilizadas no desenvolvimento da aplicação deste projeto, dentre os quais podem-se destacar:
redes sem fio, microcontroladores, motores de passo, porta paralela, e componentes
eletrônicos, os quais serão descritos neste capítulo.
2.1. Componentes Eletrônicos
Nesta seção é feita uma descrição dos componentes eletrônicos utilizados na aplicação
deste projeto, a fim de mostrar o seu conceito e características pelas quais foram selecionadas
(para compor a parte física deste projeto.)
2.1.1. Resistor
Os resistores têm por finalidade apresentar uma resistência elétrica, ou seja, uma
oposição à passagem de corrente. A medida da resistência é feita em uma unidade
denominada ohm (Ώ). O tamanho do resistor está relacionado com sua capacidade de dissipar
calor. Quanto mais intensa for a corrente num resistor, mais calor ele irá gerar, e este calor
precisará ser transferido ao meio ambiente. Assim, o tamanho do resistor está relacionado
com sua potência em watts (W) e não com sua resistência. [BRA2005]
Os principais resistores fixos são os de carbono e os de fio enrolado. Estes possuem
um código de cores de três a cinco faixas que corresponde a um sistema de padrões adotados
para a identificação da resistência que pode ser verificada também através de um ohmímetro
(ou multímetro).
4
A Figura 1 mostra um exemplo de resistor.
Figura 1 - Resistor de Carbono[MIL2007]
Neste projeto foi usado para proteger os componentes para não danificá-los.
2.1.2. Capacitores
Capacitores são elementos que têm a finalidade de armazenar energia na forma de
campo elétrico em um circuito e, por apresentarem uma impedância são utilizados como
elementos de filtragem e modificadores do ângulo de fase entre corrente e tensão. Estas
funções são conseguidas graças à propriedade
física dos materiais dielétricos que submetidos
a um campo elétrico, se tornam polarizados e acumulam energia. Um capacitor só admite
corrente enquanto estiver sendo carregado ou descarregado, de modo que, quanto mais carga
existir no capacitor maior será o campo elétrico criado. [QUE2000]
Capacitores também são utilizados com o fim de eliminar sinais indesejados,
diminuindo a possibilidade da invasão do circuito por ruídos.
Atualmente, existem vários tipos de capacitores, como mostra a Figura 2, sendo que
estes podem ser classificados da seguinte forma: eletrolíticos, filme plástico, cerâmicos, mica
e redes capacitivas.
Figura 2 - Capacitores [CAP2007]
5
Neste projeto foi usado para filtrar ruídos e interferências.
2.1.3. Transistor
Um transistor é um dispositivo semicondutor de três camadas, PNP ou NPN, com
duas junções. Essa estrutura é formada por duas camadas de cristais do mesmo tipo,
intercalada por uma camada de cristal do tipo oposto, que tem como função controlar a
passagem de corrente entre elas.
Esse dispositivo possui três terminais: a base (B), o coletor (C), e o emissor (E). O
coletor e o emissor não podem ser invertidos, devido ao fato das características e dos valores
nominais mudarem significativamente. O transistor possui dois tipos básicos de aplicação:
amplificação e chaveamento. [AHM2000]
Na amplificação, o sinal de saída é igual ao de entrada, mas com maior amplitude,
devido à potência fornecida pela fonte de alimentação, controlando assim o fluxo de corrente
elétrica e o chaveamento é uma técnica de ligar e desligar a corrente elétrica.
Alguns tipos de transistores são mostrados na Figura 3.
ɜ
Figura 3 - Transistores[XAT2007]
Neste projeto foi usado para o motor de passo de 1 A.
2.1.4. Diodo
O diodo é um componente eletrônico composto de cristal semicondutor de silício ou
germânio contendo dois terminais: um terminal ânodo A (na camada P) e um terminal cátodo
K (na camada N). [MAR1996]
Quando a tensão no ânodo é mais positiva do que no cátodo, o diodo está
diretamente polarizado, permitindo a condução de corrente que terá o sentido convencional.
Ao ocorrer o contrário, o diodo está inversamente polarizado e bloqueia o fluxo de corrente.
A Figura 4 é mostra alguns tipos de diodos.
6
Figura 4 - Tipos de diodos [E)C2007]
2.1.5. LED
LED, Figura 5, é um diodo emissor de luz que quando polarizado diretamente emite
brilho visível (infravermelho) ou invisível (ultravioleta), em que é possível obter a modulação
da luz por um sinal de alta freqüência. Isso ocorre devido a sua luminosidade ter a
propriedade de acompanhar as variações produzidas por corrente alternada e de freqüência
elevada. [AHM2000]
Eles possuem as mesmas características dos diodos comuns, sendo que para se
polarizar um LED, deve-se utilizar um resistor
limitador de corrente para não danificá-lo
喀Յ
devido à sua sensibilidade. Neste projeto os LED’s foram utilizados para testar a presença da
comunicação sem fio.
Figura 5 - LED [PAG2007]
2.1.6. Circuito Integrado
Circuito Integrado (CI), Figura 6, é um circuito eletrônico completo contendo
componentes eletrônicos e sua interconexão dentro de um único empacotamento.
Eles podem se dividir em monolítico e híbrido. O CI monolítico tem seus elementos
(transistores e resistores) construídos sobre uma base de material semicondutor, quase sempre
7
silício, já os CI’s híbridos são feitos pelo agrupamento de diversos microelementos, entre eles
CI monolítico, capacitores e transistores, montados sobre uma placa cerâmica chamada
substrato e interligados por condutores metálicos sobre essa placa, cujas dimensões são
extremamente reduzidas. [BOR1990]
A principal vantagem dessa miniaturização, segundo Borges, é o baixo custo e um
melhor desempenho, ou seja, alta confiabilidade e estabilidade de funcionamento. Uma vez
que os componentes são formados ao invés de montados, a resistência mecânica destes
permite montagens cada vez mais potentes, permitindo a portabilidade dos dispositivos
eletrônicos, e na microeletrônica.[BOR1990]
喀Յ
Figura 6 - Circuito Integrado [CI2008]
Neste projeto foi usado o CI codificador MC145026 e o decodificador MC145027.
2.1.7. Cristal de Quartzo
O Cristal de quartzo, Figura 7 é um componente utilizado em circuitos variantes no
tempo, para contagem de tempo. O componente possui 2 terminais, ligados a um cristal
piezoeléctrico interno. Esse cristal contrai quando submetido a tensão elétrica, e o tempo de
contração varia conforme a construção do cristal. Quando a contração chega a um certo ponto,
o circuito libera a tensão e o cristal relaxa, chegando ao ponto de uma nova contração. Assim,
os tempos de contração e relaxação desse ciclo determinam uma freqüência de operação,
8
muito mais estável e controlável que circuitos com capacitores. Cristais de quartzo são usados
neste projeto para sincronizar o microcontrolador. [WIK2007-2]
Neste microcontrolador o clock interno é equivalente ao clock externo dividido por 4.
Desta forma quando trabalha com um cristal de 4MHz, o PIC estará trabalhando internamente
com uma freqüência de 1 MHz.
Figura 7 - Cristal de Quartzo
O próximo item descreve a porta paralela que é o dispositivo periférico do
computador utilizado para a comunicação neste projeto.
2.2.
Porta Paralela
喀Յ
A porta paralela é um dispositivo de acesso externo relativamente fácil via
programação, disponibilizando até 8 bits de saída, 4 de entrada, e outros 4 que podem operar
como entrada ou saída. Ela é constituída de três registradores, endereçados seqüencialmente.
Geralmente o endereço base é o endereço do primeiro registrador: 378h. São vários os
periféricos que utilizam-se desta porta para enviar e receber dados para o computador como,
por exemplo: scanners, câmeras de vídeo, unidade de disco removível (e outros.)
O registro é a posição do mapa de memória em que a Unidade Central de
Processamento (CPU) escreve o dado. Assim, ao escrever no registro, o hardware controlador
da porta paralela trata de enviar estes dados para os respectivos pinos do DB-25. Os registros
são mostrados na Tabela-1.
Tabela 1 - Endereçamento e formas de acesso aos registradores [ROG2007]
End(1)
378h
379h
37ah
End(2)
278h
279h
27ah
Registro de
Dados
Estado
Controle
No. bits
8
5
4
Direção
OUT
IN
IN/OUT
Read/Write
R/W
R
R/W
9
O DB25 é um conector que fica na parte de trás do gabinete do computador, e é
através deste, que o cabo paralelo se conecta ao computador para enviar e receber
dados. Nele, um pino está em nível lógico zero quando a tensão elétrica no mesmo está entre
0 à 0,4 V. Um pino se encontra em nível lógico um quando a tensão elétrica no mesmo está
acima de 3.1 e até 5 V. A Figura 8 mostra o conector DB25.
Figura 8 - Conector DB25[ROG2007]
A porta paralela foi usada neste projeto para fazer os testes da transmissão dos dados
usando o software Dspcom ®1.
喀Յ
A Figura-9 mostra a janela do Dspcom com a opção de enviar ilustrando a
transmissão de sinais.
Figura 9 - Dados enviados através da porta paralela[ROG2007]
1
Dspcom é um software registrado de interface da porta paralela, conforme site www.rogercom.com .
10
2.3.
Motores de Passos
Os motores de passo se diferenciam dos outros motores pelo modo em que suas
bobinas são organizadas. Eles apresentam uma construção bastante simples, podendo ser
controlados através de um hardware específico ou software e sua principal vantagem é a
possibilidade de controlar sua posição e sua velocidade sem a necessidade de realimentação
da malha de controle. Eles são utilizados largamente em impressoras, plotters, scanners,
drivers de disquetes, discos rígidos e muitos outros aparelhos em que a precisão é
indispensável. [TOR1999]
O seu funcionamento é baseado em três estados: desligado, parado e rodando. O
primeiro ocorre quando não há alimentação para suprir o motor, não existindo assim o
consumo de energia. Com isso todas as bobinas encontram-se desligadas. O segundo acontece
quando pelo menos uma das bobinas fica energizada e o motor permanece estático em um
sentido, neste caso, ocorre o consumo de energia, mas o motor permanece alinhado em uma
determinada posição. O terceiro estado possui suas bobinas energizadas em intervalos de
tempos determinados fazendo com que o motor gire em uma direção.
Na operação de motor de passopԺ completo, somente uma bobina é energizada,
havendo assim menor torque devido ao pouco consumo de energia e maior velocidade. O
motor de meio passo consume mais energia que o motor de passo completo, além de ser mais
preciso, possui menor velocidade que a operação anterior. [TOR1999]
Para se fazer o controle e o cálculo da velocidade de um motor de passo enviam-se
uma seqüência de pulsos digitais conforme Tabela 2 num determinado intervalo. Quanto
menor esse intervalo, maior será a velocidade em que o motor irá girar. Sendo necessário um
valor superior a 10 ms entre cada passo, pois ao invés do motor rodar irá somente vibrar.
Tabela 2 - Meio passo[ROG2007]
Nº do
B3 B2 B1 B0 Decimal
passo
1-->
1 0 0 0
8
2-->
1 1 0 0
12
3-->
0 1 0 0
4
4-->
0 1 1 0
6
5-->
0 0 1 0
2
6-->
0 0 1 1
3
7-->
0 0 0 1
1
8-->
1 0 0 1
9
11
A mudança do sentido de rotação do rotor pode ser feita invertendo os valores da
Tabela 2 onde o número de passo assume novo valor decimal. Os valores dos pulsos
digitais utilizando passo inteiro rotacional, o motor no sentido horário são 8, 4, 2, 1
invertendo passam a ser 1, 2, 4 e 8 que muda o sentido para anti-horário
Para controlar o motor é necessário um driver específico, sendo que a maneira
mais simples deste controle pode ser feita utilizando-se drivers já desenvolvidos, como
é o caso do ULN 2003 (Figura 10) ou ULN 2803 (Figura 11), que estão em forma de
circuitos integrados prontos para serem utilizados em interfaces que necessitam
controlar motores de passos, solenóides, relês, motores DC e muitos outros dispositivos.
[ROG2007]
Figura 10 - Pinagens do CI UL)2003 [ROG2007]
O CI ULN 2003 possui 7 entradas que controlam até 7 saídas. Com ele podese controlar um motor de passo. Se desejar controlar 2 motores, deve-se usar dois CI’s
ULN 2003, ou somente um CI ULN 2803 (Figura 11).
Figura 11 - Pinagens do CI UL) 2803[ROG2007]
CI ULN 2803 possui oito entradas que controlam até oito saídas. Com ele
pode-se controlar até dois motores de passo simultaneamente. Ambos os CIS trabalham
12
com correntes de 500 mA e tensão de até 50 V. A Figura 12, mostra a utilização do
motor de passo que utiliza o CI ULN 2003 e porta paralela para o controle.[ROG2007]
Figura 12 - Controle de 1 motor de passo usando o CI UL) 2003[ROG2007]
A próxima seção explica como trabalha fonte de tensão e corrente.
2.4.
Fonte de Tensão e Corrente
A Fonte de Tensão e Corrente é um dispositivo eletrônico constituído
basicamente por quatro componentes que喀Յsão: um transformador - que aumenta ou
reduz a tensão, um circuito retificador, um filtro capacitivo e/ou indutivo, e um
regulador de tensão. Uma das funções exercidas por ela é transformar a energia elétrica
sob a forma de corrente alternada (CA) da rede em energia elétrica de corrente contínua
(CC).[WIK2007]
Uma fonte de tensão de sentido contínua é um elemento que mantém seu valor
de tensão constante, independente do que possa ocorrer ao circuito. Na prática, as fontes
suportam correntes até um determinado valor, pois a resistência interna produz
aquecimento. Neste projeto foram utilizadas as fontes de tensão de um PC que gera
tensões de 5 e 12 volts.
2.5.
Matriz de Contato
Matriz de contato é uma placa com milhares de furos e conexões condutoras
para montagem de circuitos elétricos experimentais. Na superfície de uma matriz de
contato há uma base de plástico em que existem centenas de orifícios onde são
encaixados os componentes, já em sua parte inferior são instalados contatos metálicos
13
interligados segundo um padrão básico. O modelo de uma matriz de contato é mostrado
Figura-13 e foi usada para os experimentos, testando-os antes de montar a placa de
circuito impresso.
Figura 13 -Matriz de contato[MI)2007]
pԺ
O próximo item traz a explicação
detalhada de microcontrolador,
particularmente do PIC 16F877 utilizado neste projeto.
2.6.
Microcontrolador
Em relação aos microcontroladores, é importante salientar sua diferença com
os microprocessadores, onde o primeiro possui circuitos integrados num só chip
enquanto que no segundo precisa-se de circuitos externos para funcionar. [MIC2007]
Dentre as partes que compõem um microprocessador, podem-se citar as
seguintes: memória de programa, memória de dados, portas de entrada e saída de sinais
(portas
de
I/O,
Input/Output),
circuito
de
reset,
circuito
oscilador,
contador/temporizador, portas lógicas para selecionar endereços, circuito de
comunicação serial e paralela, conversor A/D, etc.
Já o microcontrolador é composto por: Unidade de Memória, Unidade Central
de Processamento, Barramento, Unidade de Entrada e Saída, Unidade de Temporização,
Watchdog, Conversor Analógico-Digital e Programa. Estes componentes serão
detalhados nos subitens a seguir, segundo a referência. [SOU2002]
14
Diagrama de blocos de microcontrolador é apresentado na Figura 14.
Figura 14 - Componentes de um Microcontrolador [MZE2007]
•
Unidade de memória: A memória é a parte do microcontrolador cuja função
é guardar dados. É constituída de diversas partes, é associado um endereço de
memória diferente, sendo que para identificar e acessar o conteúdo desse
endereço é utilizado um código numérico. Este código é o endereço único.
•
Unidade Central de Processamento (UCP): A UCP é a parte responsável
por interpretar e executar as instruções contidas no programa, comandando
ɜ
todas as demais partes da máquina de forma ordenada e rápida. É também
responsável pelo processamento de todos os tipos de dados e pela
apresentação do resultado do processamento.
•
Barramento: O barramento é o meio pelo qual a informação trafega.
Fisicamente ele corresponde a um grupo de 8, 16 ou mais fios ou trilhas que
fazem a interligação entre os diversos componentes do microcontrolador.
Existem dois tipos de barramento, que são os de dados e os de endereço.
•
Unidade de Entrada e Saída (E/S): A unidade de E/S é a porta entre o
microcontrolador e o meio externo. É através desse componente que o
microcontrolador troca informações com o circuito no qual ele está inserido.
Ela é basicamente composta por registradores de entrada e registradores de
saída, que funcionam como buffers de dados.
•
Unidade de Temporização: A unidade de temporização tem por função
gerar sinais em intervalos de tempo regulares. Sua unidade básica é um
15
registrador cujo conteúdo é incrementado num intervalo de tempo fixo.
Calculando a diferença entre dois intervalos de tempo pode-se descobrir o
tempo decorrido.
•
Watchdog: O watchdog ou “cão de guarda” é o bloco responsável por
resetar o microcontrolador, caso a execução do programa seja submetida a
uma interferência ou reiniciar quando a processo for interrompido sem
necessitar da intervenção humana.
•
Conversor Analógico-Digital: Como os sinais dos periféricos são
substancialmente diferentes daqueles que o microcontrolador pode entender
(zero e um), eles devem ser convertidos num formato que possa ser
compreendido pelo microcontrolador. Esta tarefa é executada por intermédio
de um bloco destinado à conversão analógico-digital ou com um conversor
A/D. Este bloco vai ser responsável pela conversão de uma informação de
valor analógico para um número binário e pelo seu trajeto através do bloco do
CPU, de modo a que este o possa processar de imediato.
•
Programa: Escrever um programa é uma parte especial do trabalho com
microcontroladores e é designado por "programação". Um programa é um
conjunto de instruções ou operações que são executadas seqüencialmente
pelo microcontrolador.
2.6.1. Microcontrolador PIC16F877
Os microcontroladores da família Peripherical Interface Controller (PIC) são
muito versáteis, podem possuir de 6 até 66 pinos de I/O, e trabalhar em frequências de
até 40MHz. O microcontrolador utilizado neste projeto é um PIC 16F877, Figura 15
disponível no laboratório da UCG.
Figura 15 - PIC16F877 [MEC2007]
16
O PIC 16F877 é de 40 pinos, o que possibilita a montagem de um hardware
complexo e capaz de interagir com diversos recursos e funções ao mesmo tempo, suas
principais características são:
•
Via de programação com 14 bits e 35 instruções;
•
33 portas configuráveis como entrada ou saída;
•
15 interrupções disponíveis;
•
Memória de programa EEPROM FLASH com 8Kwords;
•
Memória de dados EEPROM interna com 256 bytes;
•
Memória RAM de dados com 368 bytes;
•
3 timers (2x8 bits e 1x16 bits);
•
Comunicações seriais: SPI, I2C e USART;
•
Conversores analógicos de 10 bits (8x) e comparadores analógicos (2x);
•
2 modos CCP: Capture, Compare e PWM;
•
Programação in-circuit (alta e baixa tensão);
A pinagem do PIC 16F877 é mostrada na Figura 16, e a descrição da
pԺ
nomenclatura utilizada para a identificação dos pinos nas Tabelas 3 e 4.
Figura 16 - Diagrama de pinos do PIC16F877[SOU2003]
17
Tabela 3 - Nomenclatura dos pinos do PIC16F877 [MIC2006]
ome do pino
OSC1 / CLKIN
OSC2 /
CLKOUT
MCLR /Vpp
Vss
Vdd
RA0 / AN0
RA1 / AN1
RA2 / AN2
/VREF- / VREF
RA3 / AN3 /
VREF+
RA4 / T0CKI /
C1OUT
RA5 / SS / AN4
/C2OUT
RB0 / INT
RB1
RB2
RB3 / PGM
RB4
RB5
RB6 / PGC
RB7
RC0 / T1OSO /
T1CKI
RC1 / T1OSI /
CCP2
RC2 / CCP1
RC3 / SCK /
SCL
RC4 / SDI /
DAS
RC5 / SDO
RC6 / TX / CK
um
pino
13
Descrição
Entrada para cristal.
Entrada para osciladores externos (híbridos ou RC)
14
Saída para cristal. Os cristais ou ressonadores devem ser ligados aos
pinos OSC1 e OSC2.
Saída com onda quadrada em ¼ da freqüência imposta em OSC1
quando em modo RC equivalente aos ciclos de máquina internos.
1
Master Clear externo.
12/31 GND.
11/32 Alimentação positiva.
2
I/O digital ou entrada analógica AN0.
3
I/O digital ou entrada analógica AN1.
4
I/O digital ou entrada analógica AN2 ou tensão negativa de referência
analógica
5
I/O digital ou entrada analógica AN2 ou tensão positiva de referência
analógica
6
I/O digital ou entrada externa do contador TMR0 ou saída do
comparador 1.
7
I/O digital ou entrada analógica AN4 ou habilitação externa para
comunicação SPI ou saída do comparador 2.
33
I/O digital com interrupção externa.
34
I/O digital.
35
I/O digital.
36
I/O digital ou entrada para programação em baixa tensão (5V).
pԺ
37
I/O digital com interrupção
por mudança de estado.
38
I/O digital com interrupção por mudança de estado.
39
I/O digital com interrupção por mudança de estado ou clock da
programação serial ou pino de in-circuit debugger.
40
I/O digital com interrupção por mudança de estado ou data da
programação serial ou pino de in-circuit debugger.
15
I/O digital ou saída do oscilador externo para TMR1 ou entrada de
incremento para TMR1.
16
I/O digital ou entrada do oscilador externo para TMR1 ou entrada do
Capture2 ou saídas para Compare2/PWM2.
17
I/O digital ou entrada do Capture1 ou saídas para Compare1/PWM1.
18
I/O digital ou entrada/saída de clock para comunicação serial SPI / I2C.
23
I/O digital ou entrada de dados para SPI ou via de dados para I2C.
24
25
I/O digital ou saída de dados para SPI.
I/O digital ou TX para comunicação USART assíncrona ou clock para
comunicação síncrona.
I/O digital ou RX para comunicação USART assíncrona ou data para
comunicação síncrona.
I/O digital ou dado 0 (comunicação paralela).
I/O digital ou dado 1 (comunicação paralela).
I/O digital ou dado 2 (comunicação paralela).
I/O digital ou dado 3 (comunicação paralela).
I/O digital ou dado 4 (comunicação paralela).
I/O digital ou dado 5 (comunicação paralela).
RC7 / RX / DT
26
RD0 / PSP0
RD1 / PSP1
RD2 / PSP2
RD3 / PSP3
RD4 / PSP4
RD5 / PSP5
19
20
21
22
27
28
18
Tabela 4 - Continuação da nomenclatura dos pinos do PIC16F877
ome do pino
RD6 / PSP6
RD7 / PSP7
RE0 / RD / AN5
RE1 / WR /
AN6
RE2 / CS / AN7
um
pino
29
30
8
9
10
Descrição
I/O digital ou dado 6 (comunicação paralela).
I/O digital ou dado 7 (comunicação paralela).
I/O digital ou controle de leitura da porta paralela ou entrada analógica
AN5.
I/O digital ou controle de escrita da porta paralela ou entrada analógica
AN6.
I/O digital ou habilitação externa da porta paralela ou entrada
analógica AN7.
A arquitetura do PIC16F877 está preparada para operar com uma RAM de até 512
bytes, mas nem toda a memória está disponível para o usuário. Existem 19 endereços
indisponíveis que retornam zeros no caso de leitura e 48 equivalentes às posições
espelhadas de 16 endereços válidos.
2.6.1.1. Programação em C
C é considerada uma linguagem de médio nível por combinar elementos de alto
nível com a funcionalidade da linguagem ԺAssembly. Permite a manipulação de bits,
p
bytes e endereços, é muito portável, ou seja, adapta um software escrito para um tipo de
computador a outro. Possui uma linguagem estruturada, isto é, a divisão do código e dos
dados. O principal componente estrutural de C é a função – a sub-rotina, funções são
blocos de construção em que toda a atividade do programa ocorre. C foi a linguagem
utilizada para desenvolver os experimentos deste projeto.
2.6.1.2. Diretivas do compilador
Todo compilador possui uma lista de comandos internos que não são diretamente
traduzidos em código. Esses comandos são utilizados para especificar determinados
parâmetros internos usados pelo compilador no momento de compilar o código-fonte.
Os itens seguintes mostram as sintaxes dos comandos usados nestes programas nos
apêndices para os experimentos que estão relatados no terceiro capítulo.
a. #DEFI)E
Utilizada para substituir o identificador pelo texto especificado imediatamente
depois dele.
Sintaxe:
19
#define identificador texto
Exemplo:
#define tempo 50
b. #DEVICE
Define o nome do processador utilizado.Sintaxe:
#device chip opções
Exemplos:
#device PIC16F628
#device PIC16F877*=8
#device ICD = TRUE
# device PIC16F876 ADC=8
c. #FUSES
Utilizada para configurar o PIC em C. Os parâmetros de controle mais utilizados na
Tabela-5.
喀Յ
Tabela 5 - Descrição dos parâmetros de controle
[PER2004]
Descrição
–
XT
HS
WDT
)OLVP
PUT
Oscilador do tipo Cristal
Oscilador HS
Watchdog desligado, ou seja, o clock interno do PIC está
Programação em baixa tensão desabilitada
Temporizador de Power-up ligado
Ex.: #fuses HS, )OLVP, )OWDT, PUT
20
# I)CLUDE
d.
Utilizada para inserir um arquivo texto externo especificado dentro de um parâmetro
<> a partir da posição atual do arquivo. Esta diretiva é utilizada para inserir arquivos de
bibliotecas e funções de código do programa atual.
Ex.: #include <16f877.h>
2.6.1.3. Funções do Compilador C
Existem várias funções disponíveis na linguagem C, os ícones seguintes
mostram as que foram usadas nos código-fonte dos experimentos, conforme referência
[PER2004].
a.
DELAY_MS( )
Função que retarda a execução do programa aguardando n milissegundos.
Ex.: Delay_ms (10); // retarda 10 milissegundos
b.
I)PUT( )
Ն
Lê o estado lógico de um pino do microcontrolador.
Ex.: input(pin_RE0); // lê o estado do pino RE0
c.
OUTPUT_X( )
Escreve um byte completo nas portas do microcontrolador determinadas. O valor binário
1 representa o pino em nível alto, e 0 para nível baixo.
Ex.: output_b(0b10000000); // escreve no portb 10000000, pino 33
d.
SET_TRIS_X( )
Configura a direção dos pinos de uma porta do PIC. O valor binário 1 indica que o pino é
configurado como entrada e o valor 0 indica que opino é configurado como saída.
Ex.: set_tris_b(0x00); //configurando PORTB para saídas em hexadecimal.
Set_tris_b(0b00000000); //configurando PORTB para saídas em binário.
21
2.6.1.4. Gravadora de PIC
A gravadora é o hardware, que converte os impulsos eletrônicos ativados pelo
software via porta serial para os pinos do microcontrolador. Após codificar os
comandos, em número hexadecimal, eles são transcodificados em impulsos elétricos
seriais para gravadora, que vai atingir os níveis de tensões necessários para possibilitar a
transferência dos códigos na memória de dados no PIC.
O princípio de gravação é o mesmo para todas as gravadoras, o que muda é o
hardware que o desenvolvedor vai utilizar para garantir segurança para seu computador,
seu microcontrolador e sua gravadora.
Em determinado momento da gravação precisaremos de um pulso entre 13Vcc e
15Vcc no pino 5 - MCLR (Limpar memória), portanto também teremos uma outra fonte
para gerar esta tensão. O pino SDA (RB7) transmite e recebe dados. É por este pino que
os dados a serem gravados são inseridos ou lidos, conforme o comando selecionado. O
pino SCL (RB6) é o relógio de sincronismo das informações. O grande segredo é saber
onde enviar estes pulsos (ver Tabela 6).
蕐Յ
Tabela 6 - Enviar pulsos [GRA2007]
Pino
SOQUETE 8
SOQUETE 18
SOQUETE 28
SOQUETE 40
DAS
7
13
28
40
SCL
6
12
27
39
MCLR
4
4
1
1
A Figura 17 mostra um gravador de PIC de até 40 pinos.
Figura 17-Gravadora mcFflash[LAB2007]
VCC
1
14
20
11/20
GND
8
5
8
12/31
22
Para execução de gravação no PIC foi utilizado o programa MPLAB que serve
tanto para criação/edição de programas quanto para gravar no PIC. O arquivo que será
gravado dentro do PIC deve ser inicialmente em hexadecimal. Dentro do programa
MPLAB deve selecionar a opção Programmer e dentro dela a opção PICSTART PLUS.
O programa PICSTART PLUS irá verificar se o PIC está conectado e realizará a
gravação do programa no PIC. O arquivo gravado dentro do PIC foi compilado e
transformado para hexadecimal usando o plug-in CCS que é descrito no próximo item.
2.6.1.5. O MPLAB e o CCS PIC C Compiler
O MPLAB é um ambiente integrado para o estudo e desenvolvimento com a
família PIC de microcontroladores. Sua principal característica é a total integração de
seus módulos com o ambiente Windows, permitindo com facilidade a cópia de arquivos
e trechos do mesmo de um aplicativo para outro, contendo todas as funções necessárias
para gravação de um PIC, proporcionando, o gerenciamento de projetos, compilação,
simulação, emulação e gravação do chip.
CCS, o plug-in utilizado para compilar
os programas em hexadecimal, consiste
簐Պ
em um ambiente integrado de desenvolvimento (IDE) também com o sistema
operacional Windows e suporta toda linha de microcontroladores PIC (séries PIC12,
PIC14,PIC16, PIC18). O IDE é constituído de três módulos compiladores
independentes: PCB, PCM, PCH. Suas características são: compatibilidade com a
padronização ANSI e ISO, grande eficiência no código gerado, diversidade de funções e
bibliotecas
da
linguagem
C,
portabilidade
de
código
entre
os
diversos
microcontroladores PIC e inclusive com código escrito para outros microcontroladores
ou sistemas. Neste projeto foi utilizado o plug in CCS.
O próximo item mostra o funcionamento da transmissão wireless com os
componentes utilizados no projeto.
2.7.
Transmissão e Recepção
Projetos de sistemas sem fio para uso geral como, por exemplo, sistemas de
segurança sem fio, alarmes de carros, controles remotos para portas de garagem,
monitoramento de sensores, etc. Podem ser simplificados e ter um grau de compacidade
23
muito maior se forem usados módulos híbridos de baixo custo e fácil utilização.
[SAB2007]
A Telecontrolli2 produz módulos híbridos que recebem essa denominação por
usarem uma tecnologia de montagem que agrega componentes discretos e integrados
numa mesma placa. Essa tecnologia híbrida, denominada Tick Film Hybrid Technology,
possibilita a fabricação de produtos extremamente compactos, estáveis e de reduzidas
dimensões, ideais para várias aplicações. Neste projeto são utilizados dois módulos RT4
para transmitir e o RR3 para receber sinais.
O par, transmissor e receptor, pode ser obtido nas freqüências de 315, 418 e
433 MHz. A freqüência é indicada pelo XXX na designação RT4-XXX, por exemplo. O
transmissor tem uma entrada de código que permite realizar a modulação do sinal e o
receptor possui uma saída para o código que pode ser aplicada à lógica de controle.
A freqüência tanto do transmissor quanto do receptor é ajustada a laser na
própria fábrica, o que quer dizer que eles não necessitam de qualquer tipo de ajuste.
Na Figura 18 tem-se o circuito equivalente do transmissor RT4 que utiliza um
ressonador SAW e uma antena externa.
Ն
Figura 18- Circuito Equivalente do Transmissor[SAB2007]
F.A tensão de alimentação do transmissor pode ficar entre 2 e 14 V, com uma
corrente típica de 4 mA. A Figura 19 traz a identificação dos terminais desse
componente. [SAB2007]
2
Telecontrolli: Produz módulos híbridos, acessar site: http://www.telecontrolli.com
24
Figura 19 -Identificação dos terminais[SAB2007]
Onde os pinos são:
1 – Vcc – Tensão de alimentação
2 – GND – Terra
3 – IN – Entrada de modulação
4 – EA – Antena externa
A Figura 20 mostra o chip RT4.
簐Պ
Figura 20 - RT4[TEL2007]
O RR3 é com indutor ajustado a laser. Nesse caso, também o “XXX” indica a
freqüência de operação. O ajuste a laser possibilita a obtenção de uma grande precisão.
A tensão de operação desse chip deve ficar entre 4,5 a 5,5 V, sendo o valor
recomendado é 5 V e seu consumo típico é de 2,5 mA. A taxa máxima de transmissão
de dados é de 2 kHz.
Deve-se levar em conta esse fato ao fazer sua modulação a partir de
microcontroladores, pois podem ocorrer problemas se a velocidade não for compatível.
[SAB2007]
25
A saída no nível alto tem um mínimo de 3,6 V, o que é suficiente para excitar
tanto a tecnologia TTL (Lógica Transistor Ttransistor) quanto a CMOS (Complementary
Metal-Oxide-Semiconductor). A tecnologia TTL trabalha com funções de porta lógica e
de amplificação pelos transistores, sendo que os sinais de entrada e saída de
equipamentos eletrônicos são chamados de entrada ou saída TTL. Já a tecnologia
CMOS é composta de um transistor MOSFET canal N e um transístor MOSFET canal
P, tal como um inversor lógico CMOS. A principal vantagem sobre os circuitos
integrados CMOS é o baixíssimo consumo de energia.
A Figura 21 mostra o invólucro com a pinagem do receptor.
Figura 21 - Pinagem簐do receptor[SAB2007]
Պ
Onde os pinos são:
2 – RF – GND (terra)
3 – IN
4 – NC –não conectado
5 – NC – não conectado
6 – NC – não conectado
7 – RF GND (terra)
8 – NC – não conectado
9 – NC – não conectado
10 – AF - +Vcc
11 – AF – GND (terra)
12 – AF - +Vcc
13 – Ponto de teste
14 – OUT (saída)
15 – AF - +Vcc
26
Na Figura 22 mostra o chip RR3.
Figura 22 - Receptor RR3 [ROG2007]
O próximo item relata o estudo feito em redes sem fio e suas tecnologias
wireless.
2.8.
Estudo das Redes Wireless
Esta sessão faz uma breve descrição das redes wireless existentes na
atualidade. Com o estudo teórico realizado em relação essas tecnologias existentes, que
realizam trocas de sinais sem estar conectado fisicamente a uma rede, neste projeto
pԺŴ
optou-se em utilizar os chips RT4 e RR3 fabricados pela Telecontrolli, o transmissor
RT4 envia sinais ao receptor RR3.
A rede sem fio wireless é uma ampliação da Local Área )etwork (LAN) com
fio, inserindo as características de mobilidade, interligação de redes provisórias e
cobertura a locais de difícil acesso.
A comunicação das LANs sem fio pode ser feita através de uma interconexão
com estação de uma LAN com fio, já nas LANs sem fio com infra-estrutura, utilizam-se
módulos de controle que se conectam aos dois tipos de LAN. Os módulos móveis
utilizam uma estação de trabalho alimentada por baterias que precisam de longo tempo
de duração quando usadas em adaptadores sem fio. O uso de LANs sem fio possui
recursos para diminuir o consumo de energia e evitar o uso da rede com um modo de
espera, esta rede oferecer uma transmissão mesmo em ambientes com ruídos e deve
garantir a segurança no envio dos dados. As LANs sem fio são classificadas segundo a
técnica de transmissão utilizada [STAL2005].
Existe a LAN sem fio de infra-estrutura e LAN sem fio ad hoc. Na primeira,
os nós estão em contato direto com um Ponto de Acesso (AP) na rede fixa. Nesta, a
comunicação deve passar por uma central, mesmo que os nós estejam a uma
27
proximidade onde a conexão possa ser estabelecida diretamente entre eles, a adição ou
remoção de um nó deve ser pré-configurada garantindo assim o bom funcionamento da
rede.
A LAN sem fio Ad Hoc é uma rede temporária para resolver problemas
imediatos e diferencia-se das demais por não possuir infra-estrutura. Os dispositivos
podem fazer parte da rede apenas durante o tempo de comunicação, os nós podem
movimentar-se de forma inesperada e comunicam-se entre si sem a necessidade de uma
central, acrescenta-se ou remove-se dispositivos sem a necessidade de uma préconfiguração [STAL2005].
As LANs sem fio seguem os padrões da IEEE (Institute of Electrical and
Electronies Engineers). O padrão IEEE 802.11 especifica uma forma de ligação entre as
redes sem fios, facilitando assim as conexões. As transmissões são realizadas na
freqüência de rádio (RF) ou infravermelho, no caso, este projeto usa o tipo de
transmissão de RF.
O Bluetooth é uma tecnologia que utiliza uma conexão a rádio e de curto
alcance e baixa potência, está disponível para o uso de baixa potência não licenciados,
oferece uma lista de aplicações incluindo dados, operando em um sistema com vários
pԺŴ
usuários. É mais indicado para aplicações como: sincronização de computadores,
telefones celulares, aplicações de áudio como fone sem fio, transferência de arquivos
entre computadores e impressoras e outros. No Bluetooth, os sinais se propagam em
todas as direções não necessita estar alinhado, tornando assim a locomoção mais fácil
[BLU2008].
A tecnologia ZigBee foi projetada para autorizar uma conexão sem fio
confiável, utilizando a definição 802.15.4 do IEEE. O objetivo deste tipo de rede é a
redução do consumo de energia e o uso de redes com vários dispositivos. A vantagem
desta é que os dispositivos podem permanecer por um tempo sem estabelecer
comunicação, e consegue detectar se houve perda ou adição de dispositivo. A diferença
existente entre Bluetooth e ZigBee é que na primeira conexão os dispositivos são
carregados periodicamente, enquanto na segunda eles são alimentados com pilhas
comuns com uma longa durabilidade [ZIG2008].
Wi-fi é uma tecnologia de rede sem fio baseada no padrão IEEE 802.11
utilizada para estabelecer conexões entre dispositivos sem fio. Opera em baixa
freqüência, não necessita de licença para sua utilização, por isso é muito atrativa. No
28
Brasil, para uso comercial, é necessária a licença na Agência Nacional de
Telecomunicações (Anatel) [WIF2008].
O
nome
WiMAX
(Worldwide
Interoperability
for
Microwave
Access/Interoperabilidade Mundial para Acesso de Micro-ondas) é um padrão similar ao
Wi-Fi (IEEE 802.11), com conhecimentos e recursos mais recentes, visando uma
melhor comunicação, utiliza a transmissão e a recepção de ondas de rádio, porém com
maior alcance e banda larga.
A tecnologia de radiofreqüência, é bem conhecida entre os profissionais de
telecomunicação, passou a ser utilizada como meio de transmissão entre computadores.
O uso deste recurso é possível uma vez que o sinal digital seja convertido para sinal de
rádio. Sendo que, para que ocorra a transmissão de forma satisfatória, o sinal deve ser
transmitido pelo modulo de comunicação com potência suficiente para ser recuperado
pelo modulo de controle, e com o mínimo de distorção [Tafner, 1996].
A Tabela 7 mostra um comparativo dessas tecnologias em função de suas
características como: tipo de transmissão, velocidade, aplicação, alcance, vantagens e
desvantagens, baseadas em várias fontes citadas na referência bibliográfica.
Os componentes híbridos de radiofreqüência deste projeto utilizam o protocolo
pԺ
AX. 25, conforme Tafner, protocolo é um conjunto de regras pré-estabelecidas, cuja
função é fazer com que a comunicação de dados entre equipamentos seja realizada com
segurança e de forma ordenada. Estas regras devem obedecer a uma seqüência lógica e
padronizada.
Quanto aos controles durante o processo de comunicação, os protocolos se
apresentam sobre a orientação a caractere ou sob a orientação por bit. A mensagem não
deve distorcer-se durante o período de comunicação, os bits serão escolhidos
aleatoriamente e enviados sendo que pode ocorrer uma mudança no sentido do envio
dos mesmos, não afetando assim a integridade dos dados enviados.
Protocolos orientados a bit não utilizam caracteres especiais para
delimitar blocos de mensagem. Todo o controle é tratado em nível de bit, isto é, campos
formados por combinações binárias bem definidas, não existindo caracteres que
designem funções especiais.
29
Tabela 7 - Comparativo entre as redes Wireless
Tecnologia
Desvantagen
s
Transmissão
de dados.
-Necessita de
antena
- Número
limitado de
dispositivos
que podem se
conectar ao
mesmo tempo.
1 Mbps
-Baixo consumo
de energia
-Segurança
-Confiabilidade
- Mobilidade.
- Flexibilidade.
-Facilidade de
instalação e
configuração
-Baixa
comunicação
20kbps
250kbps
-Exige maior
nível de
segurança
-Menor tráfego
de dados
Confiabilidade
-Requer linha
de visão entre
os pontos
- Interferência
com
obstáculos epԺ
ruídos
54 Mbps
- Sofre
interferência
pela chuva,
diminuindo a
taxa de
transferência e
o raio de
cobertura
Vantagens
Bluetooh
Zigbee
Wi-fi
-Mobilidade
-Flexibilidade
RR3 e RT4
-Conexão
internet banda
larga em regiões
onde não existe
infra-estrutura
Wi-max
Aplicação
Alcance
-Rede dial-up
-Fax
- Celular
- Fone de
ouvido
-Transferência
de arquivos
-sincronização
10 m
-Saúde
-Automação
-Periféricos
eletrônicos.
-Redes locais
internas
de
escritórios e
residências
-Redes
públicas
de
acesso
a
internet.
10 à 100
m
- 2 kHz
-Sensores
- Robótica
-Saúde
-Controle em
geral
-Até
100m
70 Mbps
-Celulares
até
Km
a
100 m
50
O próximo capítulo apresenta os experimentos realizados durante o estudo dos
componentes, juntamente com o microcontrolador 16F877.
30
TECOLOGIA WIRELESS: ACIOADO UM DISPOSITIVO
ROBÓTICO POR MEIO DE UM MICROCOTROLADOR
CAPÍTULO III
EXPERIMETOS REALIZADOS
Neste capítulo serão descritos os experimentos realizados com o intuito de
familiarizar com o microcontrolador 16F877 e os chips RT4 e RR3 utilizados na
comunicação wireless.
3.1. Primeiro Experimento: Teste de I/O do PIC 16F877
O primeiro experimento é uma aplicação que utiliza as portas de entrada e saída,
com microcontrolador PIC16F877 originalmente o software foi codificado em C. O
experimento consiste em acender seqüencialmente oito LED’s, de acordo com os
valores de entrada que estão fisicamente representados por dois botões. Os LED’s foram
conectados no PORTB do pino P33 ao P40,
pԺ e os botões conectados ao PORTE nos
pinos P8 e P9. A Figura 23 exibe o esquema elétrico do experimento.
Os pinos do PORTB foram configurados como saída, cujos níveis são alternados
para alto e nível baixo em seqüência, conforme o programa (Apêndice A). Cada LED é
aceso por um instante e depois é apagado em seqüência, ou seja, o primeiro LED é
aceso seguido por um atraso, ao término deste atraso, ele é apagado e o segundo LED é
aceso. O atraso é novamente executado, seguido por instruções de apagar o segundo
LED e acender o terceiro, e assim sucessivamente.
Figura 23 - Esquema Elétrico do Microcontrolador
31
O programa primeiramente faz com que todos os LED’s sejam apagados. Entra-se
em um laço de repetição indefinidamente, e conforme os botões de entrada são
pressionados é executada uma seqüência diferente para acender os LED’s. Caso o botão
1 seja pressionado os LED’S serão acionados da direita para esquerda. Caso o botão 2
seja pressionado será executada seqüência da esquerda para direita e caso ambos ou
nenhum dos botões sejam pressionados, os LED’s serão acionados da extremidade para
o centro.
Em todos os exemplos, o microcontrolador tem um resistor de 10kΩ ligado ao
pino que recebe uma alimentação de 5 volts, um oscilador pizoelétrico de 4kHz, e dois
capacitores de 5µF conectados em paralelo ao cristal, ligados aos pinos 13 e 14
necessários para a geração do sinal de clock. Os pinos 12 e 31 são aterrados e os pinos
11 e 32 são alimentados em 5 volts.
3.2. Segundo experimento: Acionamento de um motor de passo
O segundo experimento consiste em acionar o motor de passo utilizando o
pԺ
simulador de PIC3 para verificar o funcionamento
do programa antes de ser gravado no
PIC.
O microcontrolador PIC16F877, o programa em C está no (Apêndice B) e
executa o acionamento das bobinas do motor.
Utiliza-se o CCS C para compilar o programa e depois o simulador para testar o
código fonte. O uso deste é bastante simples e pode-se observar claramente os LED`s
acessos que indicam o acionamento das bobinas do motor.
A seqüência de LED`s a serem acessos está conectada aos pinos RB7, RB6, RB5
e RB4, indicando assim que as bobinas são acionadas corretamente. A Figura 24 exibe
o esquema elétrico do experimento do motor de passo.
3
PIC Simulador: é um programa para simular o código fonte antes de ser gravado no microcontrolador.
32
Figura 24 - Esquema do Acionamento
Nos experimentos foram utilizados um simulador para PIC, PICSimulator4
desenvolvido
com
um
ambiente
gráfico
para
Windows
que
suporta
os
microcontroladores da família 12F e 16F. A versão usada permite o usuário entrar na
IDE e utilizá-lo por trinta vezes, e a cada entrada pode-se trabalhar somente por cento e
pԺ
vinte minutos.
O intuito de utilizar o simulador foi de verificar a veracidade do código fonte
antes de testar no PIC 16F877, deixando a gravação do código fonte em hexadecimal
para ser feita somente após comprovada a sua eficiência .
A Figura 25 mostra a tela do PIC Simulador IDE no momento da simulação feita
para um motor de passo. O programa em C utilizado na aplicação deste projeto também
foi testado no simulador e encontra-se no apêndice C. Usou-se o MPLab com o plug-in
da CCS para compilar o código fonte em C para hexadecimal, pois o simulador só aceita
carregar códigos fonte em hexadecimal.
4
PIC Simulator fabricado pela OshonSoft Soluções em Software, www.oshonsoft.com
33
Figura 25 - Acionando um motor de passo no PIC Simulator
pԺ
3.3. Terceiro experimento: Transmissão wireless
No terceiro experimento foram utilizados os CIs MC 145026 (codificador) e MC
145027 (decodificador), conforme mostra a Figura 26, com a função de verificar se
estão oscilando na mesma freqüência, para isso basta endereçar igualmente os pinos de
A1 a A5 de ambos os CIs.
Figura 26 - CIs MC145026 e MC145027-[ROG2007]
34
O componente MC 145026 codifica o sinal a ser enviado enquanto o MC
145027 decodifica o sinal recebido.
A Figura 27 mostra o teste de transmissão entre o codificador e decodificador.
No pino 11 (VT- transmissão válida) do decodificador conecta-se a um resistor de 470
ohm e um LED. Para testar se há um sincronismo entre os CIs, leva-se o pino 14
(transmissão disponível) do MC145026 ao nível baixo (0V), ao fazer isso, o LED
conectado ao pino VT do MC145027 deverá acender.
Figura 27 -Teste de transmissão entre o codificador e o decodificador [ROG2007]
O CI MC145026 pode trabalhar numa faixa de tensão de 2,5 a 18V. Já os
decodificador MC145027 trabalha entre 4,5 a 18V. Os componentes presentes neste
experimento são: CIs MC 145026, MC145027, 3 capacitor (5,6nF ,100nF e 22nF) e 4
resistências (2 de 51K,100K e 200K).
3.4. Quarto Experimento: Envio de dados usando o RT4 e RR3
O quarto experimento tem como objetivo montar os circuitos para o envio de
dados utilizando o RT4 e RR3. O receptor RR3 captura os dados e repassa-os para o
decodificador MC145027 que faz uma comparação nos bits do endereço recebido com
os bits do endereço de sua própria configuração. Se os endereços forem iguais, os bits
de dados ficam disponíveis nos pinos (D6, D7, D8 e D9) e o pino VT é levado a nível
alto (1). O pino VT só permanece ativo por um instante informando que um dado foi
reconhecido e está disponível. Já o pino dos dados retém a última informação. Isso só
35
acontece porque os pinos estão ligados a um latch (um tipo de memória volátil), estes
dados permanecem nele até que um novo dado seja enviado e aceito,ou interrompa a
alimentação da fonte.
O circuito da Figura 28 utiliza um decodificador MC145027 para tornar-se
disponível um conjunto de 4 bits de saída responsável pelo envio do sinal para o
microcontrolador.
pԺ
Figura 28 - Esquema elétrico do RR3 e MC145027 adaptada [ROG2007]
A Figura 29 mostra o circuito completo do transmissor conectado a Porta
Paralela.
Figura 29 - Esquema elétrico do RT4 e MC145026 - adaptada [ROG2007]
36
Os componentes presentes neste experimento são: o esquema elétrico receptor:
•
•
•
•
•
1 RR3;
1 capacitores (4 de 100nF e 2 de 22Nf);
2 resistores (1 de 200K ohm, 1 de 51K ohm);
1 LED, antena, 2 MC 145027 ;
1 fonte de 5 V.
Já no módulo transmissor:
•
•
•
•
•
•
•
Porta Paralela;
MC 145026;
RT4;
2 resistores (51 K ohm, 100 K ohm);
2 capacitores (5,6 nF,100 Nf);
1 antena;
1 fonte de 5V.
O funcionamento dos módulos conforme Figura 30.
Figura 30- Modulação da mensagem através da portadora de RF [ROG2007]
Os componentes estão funcionando corretamente, eles foram testados e a
realização de transmissão wireless foi realizada com sucesso. Foi feito testes com
obstáculos, onde o módulo comunicador foi posicionado no quarto andar na sala 410F
no final do corredor com a porta fechada e levamos o módulo receptor para a sala 401F
que se encontra no início do corredor, a comunicação foi bem sucedida. Depois, levouse o receptor para o quinto andar e não obteve resultado satisfatório, percebeu-se que a
laje de concreto não permitiu a passagem de sinal, portanto não houve a comunicação.
O próximo capítulo traz a descrição dos módulos e o seu funcionamento.
37
TECOLOGIA WIRELESS: ACIOADO UM DISPOSITIVO
ROBÓTICO POR MEIO DE UM MICROCOTROLADOR
CAPITULO IV
DESCRIÇÃO DOS MÓDULOS
A aplicação feita para ilustrar a tecnologia estudada e experimentada neste
projeto consiste em enviar sinais através da porta paralela (DB25), na qual está
conectado junto ao transmissor RT4, que envia sinais ao receptor RR3. O mesmo
transmite pulsos ao microcontrolador 16F877, no qual excita transistores que acionam
dois motores de passo, um que movimenta a base horizontalmente do dispositivo físico
e o outro que o movimenta no sentido vertical.
De acordo com suas funções e características os componentes foram
agrupados formando três módulos específicos os quais foram denominados de, módulo
de comunicação, módulo de controle, e módulo físico. Os mesmos estão ilustrados na
Figura 31 e são descritos nos itens seguintes.
簐Պ
Figura 31 - O Esquema dos Módulos
38
4.1. Módulo de Comunicação
O módulo de comunicação tem a característica de transmitir dados oriundos do
computador via porta paralela utilizando a tecnologia wireless que possui um alcance de
até 100 metros sem obstáculos.
Os componentes que fazem parte desse módulo são:
•
•
•
•
•
•
2 resistores: 1 de 51k ohm (R1) e 1 de 100k ohm (R2);
1 transmissor RT4;
1 capacitor 5µF (C1);
1 antena 17,5 cm;
1 codificador MC145026;
3 borners.
A Figura 32 mostra a placa de circuito impresso do módulo de comunicação, a
Figura 33 mostra o esquema elétrico do mesmo. Os fios ligados aos borners estão
conectados aos conectores do DB25, que é o periférico de comunicação externa do
computador utilizada neste projeto.
簐Պ
Figura 32 - Módulo de Comunicação
39
Figura 33 - Esquema Elétrico do Transmissor
Esse módulo está sendo alimentado com uma tensão externa de 5,0 V
respeitando as faixas de tensão do MC 145026 que opera em uma faixa de tensão de 2,5
a 18 V e o RT4 entre 2 a 14 V.
4.2. Módulo de Controle
pԺ
O módulo de controle tem como função receber os dados enviados pelo
módulo de comunicação. Os dados são recebidos codificados e enviados para o
microcontrolador que irá ativar um dos motores conforme o desejado. A Figura 34
mostra o módulo de controle desenvolvido em uma matriz de contato.
Os componentes que fazem parte desse módulo são:
•
•
•
•
•
•
•
7 resistores: 4 de 470 ohm (R1), 1 de 200k ohm (R2), 1 de 50k ohm (R3)
e 1 de 470 ohm (R4).
1 receptor RR3
3 capacitores de 250nF
5 LEDs
1 antena 17,5 cm
1 decodificador MC145027
1 microcontrolador 16F877
40
Figura 34 - Matriz de Contato do módulo de Controle
Esse módulo está sendo alimentado com uma tensão externa de 5,0 V
respeitando as faixas de tensão do MC 145027 que opera numa faixa entre 4,5 á 18 V de
tensão, o RR3 entre 4,5 á 5,5 V e o microcontrolador que alimentado com uma tensão
de 4,5 a 5,5 V. A Figura 35 mostra o esquema elétrico do módulo de controle.
pԺ
Figura 35 – Esquema elétrico da matriz de contato.
41
Neste módulo foi utilizada a matriz de contato, pois ocorreram problemas
com a placa de circuito impresso. A Figura 36 mostra a placa de circuito impresso
do módulo de controle somente com o chip RR3.
4
Figura 36 - Módulo Controle
O esquema elétrico da placa do receptor está representado na Figura 37, este
esquema foi feito no programa Diptrace4.
Figura 37 - Esquema Elétrico do Receptor
4
Programa destinado a desenvolver esquema elétrico encontrado no site www.diptrace.com Diptrace 1.50
Freeware.
42
Confeccionaram-se diversas placas de circuito impresso para este esquema
elétrico do receptor, mas não obteve sucesso. Problemas com interferência prejudicaram
a comunicação entre os módulos. A mesma não recebe sinais e possíveis soluções para a
correção do problema são descritas nos próximos parágrafos.
Os problemas de GND ocorrem quando o analógico e o digital se encontram, a
qualidade do sistema cai devido ao não conhecimento de manter o GND analógico e
digital separados, outro ponto é que as trilhas dos sinais digitais não devem cruzar com
um sinal analógico e as trilhas analógicas não devem cruzar a área do plano do GND
digital, evitar alinhar as trilhas digitais e analógicas também contribui para diminuir o
ruído irradiado.
Outro problema são os laços de GND (ground loops), ocorrem quando um
dispositivo elétrico está conectado ao GND em mais de um ponto, estes podem gerar
ruídos significantes, quanto maior o laço (o comprimento da trilha), mais ruído será
gerado, solução, um único ponto comum de GND, conhecido também como árvore de
GND.
Cada condutor possui sua própria impedância, qualquer corrente fluindo
através dele resultará em quedas de tensões, o que se deve fazer é engrossar as trilhas,
pԺ
pois fios mais grossos, significam menos impedância, ou seja, menos radiação devido às
quedas de tensão.
4.3. Transmissão dos sinais
Para gerar e transmitir os sinais via porta paralela foi utilizado o programa
Dspcom, este programa possibilita gerar várias combinações de sinais digitais e envialós a porta paralela. Os sinais utilizados nesta aplicação são: o sinal binário 0001 que irá
acionar o motor da base no sentido horário, enquanto o sinal 0010 aciona o mesmo
motor em sentido anti-horário. O sinal 0100 irá ativar o motor do eixo no sentido
horário e o sinal 1000 irá ativar o mesmo em sentido anti-horário. A Figura 38 ilustra a
interface do programa e os botões devidamente nomeados que irão acionar os motores.
43
Figura 38 - Interface dos Sinais[ROG2007]
O programa Dspcom necessita de algumas configurações para ser utilizado. Na
aba “Registros de Controle”, é necessáriopԺque em “Enviar sinais de controle” esteja
ligada a opção “Auto Feed”, Figura 39.
Figura 39 - Configuração do Registro[ROG2007]
44
5.4. Módulo Físico
O módulo físico se caracteriza em um dispositivo baseado no robô ARM
Figura 40. Este dispositivo Figura 41, irá ser comandado pelo módulo de controle. Os
componentes que integram o módulo físico são:
•
•
•
•
4 transistores TIP 122;
2 motores de passo: 1 de 500mA e 1 de 1 A;
1 ULN 2803;
4 resistores de 470Ώ.
Baseado no trabalho de conclusão de curso dos graduados Eduardo Henrique Alves
Amorim e Junio Alves de Oliveira, defendido em dezembro de 2007, intitulado como
“Manipulador Robótico com Quatro Graus de Liberdade”, o dispositivo robótico deste
projeto aproveitou parte do protótipo do projeto supracitado, que por sua vez, se baseou
no robô ARM Figura 40.
Figura 40 - Robô ARM modelo RA-01 [IMA2008]
O protótipo da Figura 41, oferece dois graus de liberdade, sendo que a base é
fixa. A segunda peça conectada à base é giratória e possibilita um giro de até 270º. A
45
terceira um movimento em relação ao eixo horizontal, com limite de giro de até 90º,
para pegar um objeto foi usado um imã preso à terceira peça.
ɜ
Figura 41 – Protótipo
Para um perfeito acoplamentos das peças, foram utilizados alguns mecanismos
objetivando eliminar o atrito, facilitando o movimento entre elas. Foi utilizado um
rolamento do tipo axial entre a primeira e a segunda peça, onde o eixo do motor da base
foi fixado à parte superior do rolamento através de um eixo, facilitando a movimentação
entre as peças envolvidas.
Ao receber os pulsos vindos do microcontrolador, para enviá-los às bobinas do
motor, foi utilizado o CI ULN 2803, com seis entradas e seis saídas e dois pinos para
alimentação e o GND que controla o segundo motor que tem uma corrente inferior
500mA. O motor utilizado possui seis fios e estão conectados ao PORTC do
microcontrolador nos pinos 15 ao 18.
Foram utilizados quatro transistores, TIP122, os quais estão conectados nos pinos
33 ao 36 do microcontrolador (PORTB), motor que possui uma corrente de 1 A. Cada
transistor está conectado a um bobina do motor da base, conforme Figura 42.
46
Figura 42 – Protótipo com Módulo de Controle
O próximo capítulo traz as conclusões
e dificuldades que ocorreram durante a
elaboração do projeto.
47
TECOLOGIA WIRELESS: ACIOADO UM DISPOSITIVO
ROBÓTICO POR MEIO DE UM MICROCOTROLADOR
CAPITULO V
COCLUSÃO
Com o avanço tecnológico criam-se recursos que estão facilitando as nossas
atividades diárias. A robótica vem despertando cada vez mais interesse aos profissionais
que buscam estas inovações. O tema escolhido para o desenvolvimento deste trabalho
foi o interesse de relacionar a robótica com comunicação wireless.
Algumas alterações foram feitas em relação à idéia inicial, devido ao tempo de
duração deste projeto, sendo que inicialmente pensou-se em construir protótipo de um
kit educacional de robótica contendo um carro com controle wireless que pudesse ser
usado em competições. Com a evolução das pesquisas e a experimentação dos
componentes, verificou-se que o desenvolvimento deste kit englobaria mais
implementações que exigiriam mais tempo para estudo e análise.
Toda a implementação eletrônica deste projeto foi desenvolvida no laboratório
da UCG, mas o módulo mecânico precisou de recursos externos, especificamente na
adaptação dos motores de passo à placa de metalon.
Todos os experimentos foram bem sucedidos utilizando a matriz de contato,
sendo que o módulo de controle não obteve os sinais enviados pelo módulo de
comunicação depois de confeccionados numa placa de fenolite devido aos ruídos e
interferências ocorridos nas trilhas. Foram encontradas também dificuldades ao
descrever os chips RT4 e RR3, pois seus datasheets não possuíam dados técnicos
suficientes. Foram pesquisados artigos relacionados ao assunto, mas o tratamento com
esses chips é superficial, (não entrando em detalhes.)
Salienta-se a complementação da formação profissional de conteúdos utilizados
para o desenvolvimento deste projeto e não contemplados em disciplinas do curso,
como por exemplo, microcontroladores.
Para trabalhos futuros recomenda-se implementar um protocolo que garanta a
segurança dos dados enviados entre os módulos, bem como um estudo detalhado da
autonomia dos módulos eletrônicos para os mesmos sejam suficientes por um
determinado período conforme a necessidade da aplicação sem a necessidade de serem
48
conectados diretamente a uma rede elétrica, suprindo-os com fontes alternativas que
assegurem a perfeita comunicação transmissão entre os módulos.
pԺ
49
TECOLOGIA WIRELESS: ACIOADO UM DISPOSITIVO
ROBÓTICO POR MEIO DE UM MICROCOTROLADOR
CAPITULO VI
BIBLIOGRAFIA
[AHM2000] AHMED, ASHFAQ. Eletrônica de Potência.1ª edição, São Paulo,
Editora Prentice Hall,2000.
[BRA2005] BRAGA, NEWTON C. Eletrônica Básica para Mecatrônica.1ªedição,
São Paulo, Editora Saber, 2005.
[BOR1990] BORGES, JOSÉ, SCHAMITZ, EBER. Projeto de Circuitos
integrados.1ªedição, São Paulo, Editora LTC,1990.
[MAR1996] MARQUES, ÂNGELO , EDUARDO CESAR, SALOMAO
CHOUERI. Dispositivos Semicondutores: Diodos e Transistores. 4ª edição, São
Paulo, Editora Érica 1996.
[PER2004] PEREIRA, FÁBIO. Microcontroladores PIC – Programação em C. 3ª
edição, São Paulo, Editora Érica 2004.
[QUE2000] QUEVEDO, CARLOS. Circuitos Elétricos e Eletrônicos. 2ª edição,
Rio de Janeiro, Editora LTC -Livros Técnicos e Científicos 2000.
[SOU2003] SOUZA, DAVID JOSÉ DE. LAVINIA, NICOLAS CÉSAR.
Conectando o PIC 16F877A: Recursos Avançados. 1ª edição, São Paulo, Editora
Érica 2003.
[STAL2005] STALLING, WILLIAM. Redes e Sistemas de Comunicação de
Dados. 5ª edição, Rio de Janeiro, Editora CAMPUS 2005.
[SCH1997] SCHILDT, HERBERT. C Completo e Total. 3ª edição, São Paulo,
Editora Pearson, 1997.
50
[TAN2003] TANEBAUM, ANDREW S. Redes de Computadores. 4ª edição, Rio
de Janeiro, Editora CAMPUS 2003.
[TOR1999] TORO, VICENT DEL. Fundamentos de Máquinas Eétricas, Rio de
Janeiro, LTC- Livros Técnicos e Científicos Editora S.A.
[CAP2007]
Capacitor
Industries.
Disponível
em:<
http://www.capacitorindustries.com/images/CapacitorLine.jpg .>Acessado em:
21/10/07
[CI2008]Images Burgos Eletrônica
Circuito Integrado. Disponível em:<
http://images.google.com.br/imgres?imgurl=http://www.burgoseletronica.net/citot
al.jpg&imgrefurl=http://www.burgoseletronica.net/citotal.htm&h=458&w=526&s
z=63&hl=ptBR&start=17&um=1&tbnid=0J75q6AnFWOdcM:&tbnh=115&tbnw=132&prev=
/images%3Fq%3Dcircuito%2Bintegrado%26um%3D1%26hl%3DptBR%26sa%3DN >Acessado em: 21/05/2008.
[ENC2007]
Enciclopédia
pԺ
Diodo.
Disponível
em:<
http://enciclopedia.us.es/index.php/Diodo.> Acessado em: 31/10/2007.
[IMA2008] ROBOTIC. Disponível em: <
http://www.imagesco.com/catalog/robot/arm.html>
Acessado em: 20/05/08.
[LAB2007] Labtools Produtos. Disponível em:<
http://www.labtools.com.br/index.asp?area=07&subarea=a&idioma=por&script=
produtos&prod=165# . > Acessado em: 21/11/2007.
[MIL2007] Milcomp. Disponível em:< http://www.milcomp.com.br/default.asp.>
Acessado em: 25/10/2007.
[MIN2007]
Matriz
de
contato.
Disponível
em:<
http://www.minipa.com.br/prod_esp.asp?id=151&cod_produto=MP-1680#name
> Acessado em: 31/10/2007.
[MZE2007]
Artigo
Mzeditora
Mic
Modernos
http://www.mzeditora.com.br/artigos/mic_modernos.htm.>
31/10/2007.
.
Disponível
Acessado
em:<
em
:
51
[MEC2007]
Mecanique
Produts.
Disponível
http://www.mecanique.co.uk/products/parts/index.html#PIC16F877A.
em:<
Acessado
em: 31/10/2007.
[PAG2007]
Paginas
Terra.
Disponível
em:<
http://paginas.terra.com.br/arte/risnik/led.htm Acessado em: 31/10/2007.
[ROG2007] PORTA PARALELA. Disponível em: <http://www.rogercom.com/
Acessado em: 01/10/2007.
[ROG2007]
Motor
de
Passo
Paralela.
Disponível
http://www.rogercom.com/pparalela/IntroMotorPasso.htm>.
em:<
Acessado
em:
15/09/2007.
[SAB2007]
SABER
DA
ELETRÔNICA.
Disponível
www.sabereletrocica.com.br/files/file/modulos_hibridos.pdf>
Acessado
em:
em:
15/09/2007.
[SPE2008] Suporte Eletrônico. Disponível
em: <
pԺ
http://www2.eletronica.org/artigos/outros/evitando-ruido-em-projetos-de-pcb>
Acessado em : 05/05/2008.
[TEL2007]
RR3
Receptor.
Disponível
em:
<http://www.telecontrolli.com/pdf/receiver/rr3.pdf> Acessado em: 31/10/2007.
[TEL2007]
RT4
Transmissor.
Disponível
em:
<http://www.telecontrolli.com/pdf/receiver/rt4.pdf> Acessado em : 31/10/2007.
[XAT2007] XAT Transistor. Disponível em: <http:// xataka.com/2006/06/22-eltransistor-100-veces-mas-rapido-que-los-actuales> Acessado em : 31/10/2007.
[ZIG2008] ZIGBEE. Disponível em: <http://pt.wikipedia.org/wiki/ZigBee>
Acessado em : 31/10/2007.
[WIF2008] WI-FI. Disponível em: <http://pt.wikipedia.org/wiki/Wi-Fi> Acessado
em : 31/10/2007.
52
[WIK2007]
WIKIPEDIA
<http://pt.wikipedia.org/wiki/Circuito_integrado>
Acessado em : 31/10/2007
[WIMAX2008]
WIMAX.
Disponível
<http://pt.wikipedia.org/wiki/WiMAX> Acessado em : 31/10/2007.
pԺ
em:
53
TECOLOGIA WIRELESS: ACIOADO UM DISPOSITIVO
ROBÓTICO POR MEIO DE UM MICROCOTROLADOR
CAPITULO VI
APÊDICE
Apêndice A – Código-fonte em Linguagem C do Primeiro Experimento
Este é o código-fonte em Linguagem C do primeiro experimento(Teste E/S do
PIC16F877).
/*
EXPERIMETO
1
Teste
de
I/O
do
Port
B
Seqüenciamento de LEDs executados conforme comandos de botões entrada. */
#include<16f877.h>
e
E
do
PIC
16F877
// declaração da biblioteca do PIC 16F877
#fuses XT,NOLVP,NOWDT,PUT // Definiçao das palavras de controle internas do PIC
// Oscilador tipo cristal
// NOLVP Programação em baixa tensão desabilitada
// NOWDT Watch Dog desabilitado
// PUT Temporizador de Power-Up ligado
#use delay(clock=4000000) // define clock do PIC
#define tempo 50
// o registrador tempo recebe o valor 50
void main() {
set_tris_b(0x00);
set_tris_e(0b111);
// configurando PORTB para saídas - LEDs
// configurando PORTE para entradas - botões
output_b(0b00000000); // zera as oito saídas do PORTB
output_e(0b000);
// zera as três entradas do PORTE
while(true){
// Se pin_e0 ligado e pin_e1 desligado acende os leds da direita para a esquerda
&& !input(pin_e1)) {
output_b(0b00000001); // Acende led conectado ao pino RB7
delay_ms(tempo);
// tempo de espera com LED aceso
output_b(0b00000010); // Acende led conectado ao pino RB6
delay_ms(tempo);
output_b(0b00000100); // Acende led conectado ao pino RB5
delay_ms(tempo);
output_b(0b00001000); // Acende led conectado ao pino RB4
delay_ms(tempo);
output_b(0b00010000); // Acende led conectado ao pino RB3
delay_ms(tempo);
output_b(0b00100000); // Acende led conectado ao pino RB2
delay_ms(tempo);
output_b(0b01000000); // Acende led conectado ao pino RB1
delay_ms(tempo);
output_b(0b10000000); // Acende led conectado ao pino RB0
delay_ms(tempo);
if(input(pin_e0)
54
}
// Se pin_e1 ligado e pin_e0 desligado acende os leds da esquerda para a direita
else if(input(pin_e1) && !input(pin_e0)){
output_b(0b10000000);
delay_ms(tempo);
output_b(0b01000000);
delay_ms(tempo);
output_b(0b00100000);
delay_ms(tempo);
output_b(0b00010000);
delay_ms(tempo);
output_b(0b00001000);
delay_ms(tempo);
output_b(0b00000100);
delay_ms(tempo);
output_b(0b00000010);
delay_ms(tempo);
output_b(0b00000001);
delay_ms(tempo);
}
//Se pin_e0 e pin_e1 ligados acende leds da direita e da esquerda para o centro
else if(input(pin_e0) && input(pin_e1)){
output_b(0b10000001);
delay_ms(tempo);
output_b(0b01000010);
delay_ms(tempo);
output_b(0b00100100);
delay_ms(tempo);
output_b(0b00011000);
delay_ms(tempo);
output_b(0b00100100);
pԺÎ
delay_ms(tempo);
output_b(0b01000010);
delay_ms(tempo);
}
}
}
55
Apêndice B – Código-fonte em Linguagem C do Segundo Experimento
#include<16f877.h>
// declaração da biblioteca do PIC 16F877
#fuses XT,NOLVP,NOWDT,PUT // Definiçao das palavras de controle internas do PIC
// Oscilador tipo cristal
// NOLVP Programação em baixa tensão desabilitada
// NOWDT Watch Dog desabilitado
// PUT Temporizador de Power-Up ligado
#use delay(clock=4000000)
// define clock do PIC
#define tempo 50
// o registrador tempo recebe o valor 50
void main() {
set_timer0(0);
// zerando timer0
set_tris_b(0x00);
// configurando PORTB para saídas - LEDs
set_tris_e(0b111);
// configurando PORTE para entradas - botões
output_b(0b00000000);
output_e(0b000);
// zera as oito saídas do PORTB
// zera as três entradas do PORTE
while(true)
{
if(input(pin_e0) && !input(pin_e1))
pԺ
{
output_b(0b00000001); // Acende led conectado ao pino RB0
delay_ms(tempo);
// tempo de espera com LED aceso
output_b(0b00000011); // Acende led conectado ao pino RB0 e RB1
delay_ms(tempo);
output_b(0b00000010); Acende led conectado ao pino RB1
delay_ms(tempo);
output_b(0b00000110); // Acende led conectado ao pino RB1 E RB2
delay_ms(tempo);
output_b(0b00000100); // Acende led conectado ao pino RB2
delay_ms(tempo);
output_b(0b00001100); // Acende led conectado ao pino RB2 e RB3
delay_ms(tempo);
output_b(0b00001000); // Acende led conectado ao pino RB3
delay_ms(tempo);
output_b(0b00001001); // Acende led conectado ao pino RB3 e RB0
delay_ms(tempo);
}
}
}
56
Apêndice C – Código-fonte em Linguagem C do Módulo de Controle
#include <16f877A.h>
#fuses XT,*OLVP,*OWDT,PUT
#use delay(clock=4000000)
#define tempo 50
void main()
{
set_timer0(0);
set_tris_d(0b111111); //configurando PORTD para entrada
set_tris_b(0x00); // configurando PORTB para saida MOTOR DA BASE (pinos 33,34,35,36)
set_tris_c(0x00); // configurando PORTC para saida MOTOR DA BRACO (pinos 15,16,17,18)
output_b(0b00000000); // zerando as 8 saidas do PORTB
output_c(0b0000); // zerando as 4 saidas do PORTC
while(true){
if(input(pin_d0)) {
output_b(0b00000001);
delay_ms(tempo);
output_b(0b00000011);
delay_ms(tempo);
output_b(0b00000010);
delay_ms(tempo);
output_b(0b00000110);
delay_ms(tempo);
output_b(0b00000100);
delay_ms(tempo);
output_b(0b00001100);
delay_ms(tempo);
output_b(0b00001000);
delay_ms(tempo);
output_b(0b00001001);
delay_ms(tempo);
}
else if(input(pin_d1)){
output_b(0b00001001);
delay_ms(tempo);
output_b(0b00001000);
delay_ms(tempo);
output_b(0b00001100);
delay_ms(tempo);
output_b(0b00000100);
pّ
57
delay_ms(tempo);
output_b(0b00000110);
delay_ms(tempo);
output_b(0b00000010);
delay_ms(tempo);
output_b(0b00000011);
delay_ms(tempo);
output_b(0b00000001);
delay_ms(tempo);
}
else if(input(pin_d2)){
output_c(0b0001);
delay_ms(tempo);
output_c(0b0011);
delay_ms(tempo);
output_c(0b0010);
delay_ms(tempo);
output_c(0b0110);
delay_ms(tempo);
output_c(0b0100);
delay_ms(tempo);
output_c(0b1100);
delay_ms(tempo);
output_c(0b1000);
delay_ms(tempo);
output_c(0b1001);
delay_ms(tempo);
}
else if(input(pin_d3)){
output_c(0b1001);
delay_ms(tempo);
output_c(0b1000);
delay_ms(tempo);
output_c(0b1100);
delay_ms(tempo);
output_c(0b0100);
delay_ms(tempo);
output_c(0b0110);
delay_ms(tempo);
output_c(0b0010);
delay_ms(tempo);
output_c(0b0011);
Ժ
58
delay_ms(tempo);
output_c(0b0001);
delay_ms(tempo);
}
}
}
Ժ
Download

u PDF - Computacao.net