Projeto 43 - Módulo de RF 433Mhz com arduino

  • Junho 21, 2015
  • Comentários

Hoje iremos fazer um simples projeto que constitui em transferir uma mensagem do módulo transmissor para o receptor utilizando dois arduinos. Neste projeto foi utilizado um arduino Uno e um Mega, porém se você possuir ambos do mesmo modelo você pode utiliza-los sem problemas. Então vamos lá !!!

Componentes necessários

1 Protoboard

2 Arduinos

1 Módulo RF transmissor

1 Módulo RF receptor

Fios jumper

Fazendo o download e importando a biblioteca necessária

1) Acesse o link https://onedrive.live.com/?cid=F877FDED1DE63FAA&id=F877FDED1DE63FAA%21122;

2) Faça o download do arquivo VirtualWire;

3) Após o download descompacte o arquivo;

4) Agora entre no diretório (C:) e na pasta Arquivos de Programas, Arduino, libraries, copie os arquivos descompactados nesta pasta;

5) Pronto para utilizar;

Conectando os componentes (Transmissor)

Código para o transmissor

// Projeto 43 - Módulo de RF 433Mhz com arduino

#include <VirtualWire.h>  // Biblioteca necessário para comunicação
void setup()
{
// Initializa o IO e ISR
vw_setup(2000); // Bits por segundo
}
void loop()
{
// Mensagem a ser enviada para o receptor
send("Dados enviados com sucesso!"); 
delay(1000);
}
void send (char *message)
{
vw_send((uint8_t *)message, strlen(message));
vw_wait_tx(); // Aguarde até que toda a mensagem seja enviada 
}

Conectando os componentes (Receptor)

Código para o receptor

// Projeto 43 - Módulo de RF 433Mhz com arduino
#include <VirtualWire.h> // Biblioteca necessário para comunicação
// Um buffer para guardar as mensagens recebidas
byte message[VW_MAX_MESSAGE_LEN]; 
byte messageLength = VW_MAX_MESSAGE_LEN; // Tamanho da mensagem 
void setup()
{
Serial.begin(9600);
// Se comunicação entre o receptor e transmissor estiver correta irá...  
//aparecer essa mensagem de confirmação no serial monitor
Serial.println("Dispositivo pronto! Recebendo dados: "); 
// Inicializa o IO e ISR
vw_setup(2000); // Bits por segundo
vw_rx_start(); // Inicializa o receptor
}
void loop()
{
if (vw_get_message(message, &messageLength)) // Sem bloqueio
{
Serial.print("Recebido: ");
for (int i = 0; i < messageLength; i++) 
{
Serial.write(message[i]); 
}
Serial.println(); // Irá mostrar a menssagem "Dados enviados com sucesso!" 
}
}

Após ter passado o código para os respectivos arduinos vá até o código do receptor e abra o Serial Monitor pressionando simultaneamente as teclas Crtl + Shift + M, se tudo estiver correto você verá a mensagem "Dados enviados com sucesso!" sendo impresso na tela.

Vídeo do projeto pronto

- Se você gostou do post, por favor comente! Nos dê um feedback, isto nos incentiva a continuar! :)



Deixe seu comentário abaixo