Introdução:
No mercado existe vários tipos e meios de comunicação para usar com Arduino. A comunicação entre eles é feita utilizando a biblioteca Virtual Wire e a documentação disponível aqui.
Neste tutorial vamos mostrar como mandar uma mensagem utilizando o transmissor RF 433Mhz com um Arduino e recebendo a mensagem utilizando o receptor RF 433Mhz com outro Arduino.
Antes de mais nada, baixe a biblioteca Virtual Wire e extraia para a pasta "libraries" localizada dentro da pasta da IDE do Arduino. Nesta biblioteca é bem fácil de usar, pois já existe um tratamento de erros para filtrar os erros que chegam no receptor.
Esse modulo é muito útil, tem grande alcance, é barato, opera a baixa tensão e consome pouca corrente. Como o sinal de RF é largamente usado por outros eletrônicos existem interferências, essas são tratadas por software, o que torna esses módulos muito especiais e uteis para todos projetos.
Características:
Modelo 433Mhz
Cor Verde
Material Cobre + plástico + PCB
Características Tensão de funcionamento: DC 5V,
Corrente de repouso: 4mA;
Modo de modulação: OOK; Recebendo a sensibilidade:-105dBm,
Freqüência de operação: 433.90MHz
Código de Exemplo:
#include <VirtualWire.h>
int led = 13;
void setup()
{
Serial.begin(9600);
Serial.println("Modulo Receptor");
Serial.println("Acao dos comandos:");
Serial.println("Comando 1: Acende 1 led");
Serial.println("Comando 2: Acende 2 leds");
Serial.println("Comando 3: Acende 3 leds");
pinMode(led, OUTPUT);
vw_setup(2000);
vw_rx_start();
}
void loop()
{
uint8_t buf[VW_MAX_MESSAGE_LEN];
uint8_t buflen = VW_MAX_MESSAGE_LEN;
if (vw_get_message(buf, &buflen))
{
int i;
for (i = 0; i < buflen; i++)
{
digitalWrite(led, HIGH);
Serial.print((char)buf[i]);
digitalWrite(led, LOW);
}
if(strcmp((char*)buf,"1")==0)
{
Serial.println("");
Serial.print("Comando 1 recebido");
}
if(strcmp((char*)buf,"2")==0)
{
Serial.println("");
Serial.print("Comando 2 recebido");
}
if(strcmp((char*)buf,"3")==0)
{
Serial.println("");
Serial.print("Comando 3 recebido");
}
Serial.println("");
}
}
Nenhum comentário:
Postar um comentário