Protótipo para transmissão de dados via RF

Transcrição

Protótipo para transmissão de dados via RF
Protótipo para transmissão de dados via RF
Luis Augusto Spranger
[email protected]; [email protected]
1. Introdução
Em determinadas situações faz-se
necessária a transmissão de dados entre
dois dispositivos em um meio que não
utilize contato físico (fios), para isso
podemos utilizar várias outras técnicas,
como o infravermelho ou ainda ondas de
rádio.
Existem no mercado módulos prontos
que fazem a comunicação via rádio. Estes
módulos podem ser adquiridos com
freqüências de trabalho pré-definidas
como: 315 Mhz, 418 Mhz e 433 Mhz
(outros módulos podem trabalhar com
freqüências diferentes). A sua modulação
é AM (modulação de amplitude).
Para estabelecer uma comunicação, é
necessário um módulo de transmissão
(TX) e ou de recepção (RX).
2.0 Módulos de TX e RX
O módulo de transmissão é composto
geralmente dos pinos de alimentação,
entrada de dados e antena (figura 1).
Figura 1 – Módulo de Transmissão (TX)
O módulo de recepção geralmente dos
pinos de alimentação, antena e duas
saídas de dados uma digital e outra
analógica, neste artigo será usada a saída
digital (figura 2).
Figura 2 – Módulo de recepção (RX)
Por padrão a alimentação destes
módulos é feita com 5V, mais detalhes
também podem ser encontrados nas
especificações dos módulos.
3.0 Principio de funcionamento
Estes módulos não fazem a
transmissão de dados diretamente na
forma serial. Para uma grande quantidade
de bits 0 ou 1 seguidos o os módulos
perdem a comunicação. Para isso foi
utilizada a modulação PWM, onde
constantemente o módulo de transmissão
esta transmitindo e o módulo de recepção
recebe o sinal, com isso os módulos não
perdem a comunicação. Por exemplo,
para transmitir o byte 00101100 é
colocado o seguinte sinal na entrada do
módulo de TX (figura 3).
Figura 3 – Sinal da transmissão do byte
00101100
O sinal alto com duração maior
representa o início da transmissão de um
byte, logo após são transmitidos os bits, o
bit 0 tem um tempo de sinal alto menor
que o bit 1, após cada bit transmitido e
após o sinal de inicio de byte, existe um
tempo t onde o sinal fica baixo. Na figura
4 os tempos dos três sinais podem ser
comparados.
Config Portd = Output
$crystal = 4000000
$baud = 9600
Config Serialin = Buffered , Size = 32
Dim A As Byte
Dim Batual As Byte
Dim Conta As Integer
L:
Portd.6 = 1
A = Inkey()
If A <> 0 Then Print Chr(a);
For Conta = 0 To 1500
Next
For Batual = 7 To 0 Step - 1
Portd.6 = 0
For Conta = 0 To 700
Next
Portd.6 = 1
For Conta = 0 To 500
Next
If A.batual = 0 Then
Portd.6 = 0
End If
For Conta = 0 To 500
Next
Next
Portd.6 = 0
For Conta = 0 To 700
Next
Goto L
Figura 4 – Comparação entre o tempo dos
sinais.
Programa para a recepção dos dados:
Config Portb = Output
Config Portd = Output
4. Implementação
Para implementar o protótipo foram
utilizados o microcontrolador 90S2313 da
Atmel, e o software foi desenvolvido com
a ferramenta BASCOM.
O circuito elétrico do transmissor esta
na figura 5, o do receptor na figura 6.
Abaixo o programa que faz a
transmissão dos dados:
Config Portb = Output
Config Pind.2 = Input
$crystal = 4000000
$baud = 9600
Config Int0 = Rising
On Int0 Int0_int
Dim A As Byte
Dim Batual As Byte
Dim Conta As Integer
A = 0
Batual = 7
Enable Interrupts
Enable Int0
End If
L:
Volta1:
Goto L
Int0_int:
If Batual = 0 Then
If A <> 0 Then Print Chr(a);
Goto Voltamarcainicio
End If
For Conta = 0 To 550
Next
Batual = Batual - 1
If Pind.2 = 0 Then
A.batual = 0
Goto Volta1
End If
For Conta = 0 To 550
Next
Return
Voltamarcainicio:
A = 0
Batual = 7
Return
If Pind.2 = 0 Then
A.batual = 1
Goto Volta1
End If
For Conta = 0 To 450
Next
If Pind.2 = 0 Then
5. Referencias bibliográficas
Atmel – www.atmel.com
BASCOM – www.mcselec.com
Goto Voltamarcainicio
Figura 5 - Esquema elétrico do transmissor
Figura 6 - Esquema elétrico do receptor