



Esse conjunto de Módulos de transmissão(TX) e recepção(RX) de RF 433 MHz serve para o envio de dados digitais entre dois Arduinos (ou outro tipo de Microcontrolador). A comunicação é unidirecional , isto é, os dados são enviados pelo transmissor e recebidos pelo receptor.
A tipo de modulação da portadora de Radio frequência é o ASK (amplitude shift keying) - modulação por chaveamento de amplitude. Isto é, quando existe o Bit 1 a portadora transmite o sinal de 433 MHz. Quando o Bit é zero, nenhum sinal é transmitido.
Referência : Modulação ASK
Essas são algumas aplicações para esses módulos RF 433 MHz :
Módulo transmissor 433 MHz e Módulo Receptor 433 MHz
Modulo Transmissor - pinagem:Módulo Transmissor 433 MHz (FS1000A) :
Circuito do Transmissor 433 MHz
Módulo Receptor 433 MHz (XY-MK-5V) :
Circuito do Receptor 433 MHz
Para um perfeito funcionamento dos módulos de RF 433 MHz, é necessário a instalação das antenas tanto no transmissor quanto no receptor. Sabendo-se que a frequência da portadora é de 433,92 MHz e a velocidade da onda eletromagnética no espaço é de 3 x 108 m/s , o comprimento de onda é :
λ = v/f = 300.000.000 / 433.920.000 = 0,69 metros
Usando uma antena com 1/4 do comprimento de onda :D = 0,69 m / 4 = 17,28 cm
Portanto solde fios rígidos de aproximadamente 17,3 cm nos locais indicados na foto dos módulos. Uma antena para o transmissor e outra para o receptor, ambas com o mesmo tamanho.Os primeiros tutoriais que descobri na WEB sobre o uso desses módulos TX/RX RF 433 MHz , usavam a biblioteca VirtualWire. Mas no site do idealizador dessa Biblioteca, ele indica outra biblioteca mais recente - a RadioHead, que permite o uso de vários tipos de módulos de comunicação. Apesar dela ser antiga também, a ADAFRUIT inseriu-a no seu repositório do GITHUB. Biblioteca RadioHead / Adafruit Para instalar a Biblioteca RadioHead:
Módulo Transmissor RF 433 Mhz
Obs : O Módulo Transmissor pode ser montado com um Arduino Uno ou Mega. A alimentação do módulo Transmissor poderá ser de até 12V, para um maior alcance. Conecte o pino D12 do Arduino no pino DATA do Módulo Transmissor. Esse é o Sketch para ser gravado no Arduino conectado ao Módulo Transmissor. Uma mensagem de teste será enviada à cada meio segundo. RF433askTX.ino/* Programa para envio de Mensagem
Blog Eletrogate https://blog.eletrogate.com/guia-basico-dos-modulos-tx-rx-rf-433mhz
Arduino UNO - IDE 1.8.5 - Modulo TX RF 433 MHz
Gustavo Murta 6/setembro/2018
Baseado em https://github.com/adafruit/RadioHead/tree/master/examples/ask
*/
#include <RHReliableDatagram.h> // biblioteca Radiohead reliableDatagram
#include <RH_ASK.h> // biblioteca Radiohead ASK
#include <SPI.h> // biblioteca SPI
#define TX_ADDRESS 1 // endereço do transmissor
#define RX_ADDRESS 2 // endereço do recept
RH_ASK driver; // instância RH ASK
RHReliableDatagram gerente(driver, TX_ADDRESS); // configurando o gerenciador
uint8_t count = 1; // contador
uint8_t data[] = "Mensagem de teste"; // mensagem a ser enviada
uint8_t buf[RH_ASK_MAX_MESSAGE_LEN]; // buffer da mensagem
void setup()
{
Serial.begin(9600); // inicializa console serial 9600 bps
if (!gerente.init()) // se a inicialização do gerenciador falhar
Serial.println("Falha na inicializacao"); // print na console serial
}
void loop()
{
Serial.print("Transmitindo mensagem n. "); // print na console serial
Serial.println(count); // print do contador
if (!gerente.sendtoWait(data, sizeof(data), RX_ADDRESS)) // se gerenciador enviar mensagem
{
count++; // incrementa contador
}
delay(500); // atraso 0,5 segundo
}
Montagem do Módulo Receptor RF 433 MHz:
Módulo Receptor 433 MHz
Obs : O Módulo Receptor pode ser montado com um Arduino Uno ou Mega. Conecte o pino D11 do Arduino no pino DATA do Módulo Receptor. Esse é o Sketch para ser gravado no Arduino conectado ao Módulo Receptor. Uma mensagem de teste será recebida à cada meio segundo. Durante os testes iniciais, coloque o transmissor perto do Receptor. Depois faça o teste distante um do outro. Obstáculos como paredes maciças, portões metálicos poderão prejudicar a recepção. Uma transmissão ao ar livre poderá ter um alcance bem maior. RF433askRX.ino/* Programa para recepção de Mensagem
Blog Eletrogate https://blog.eletrogate.com/guia-basico-dos-modulos-tx-rx-rf-433mhz
Arduino UNO - IDE 1.8.5 - Modulo RX RF 433 MHz
Gustavo Murta 6/setembro/2018
Baseado em https://github.com/adafruit/RadioHead/tree/master/examples/ask
*/
#include <RHReliableDatagram.h> // biblioteca Radiohead reliableDatagram
#include <RH_ASK.h> // biblioteca Radiohead ASK
#include <SPI.h> // biblioteca SPI
#define TX_ADDRESS 1 // endereço do transmissor
#define RX_ADDRESS 2 // endereço do receptor
uint8_t count = 0; // contador
uint8_t buf[RH_ASK_MAX_MESSAGE_LEN]; // buffer da mensagem
uint8_t tamanho; // tamanho da mensagem
uint8_t from; // endereço de quem transmite
RH_ASK driver; // instância RH ASK
RHReliableDatagram gerente(driver, RX_ADDRESS); // configurando o gerenciador
void setup()
{
Serial.begin(9600); // inicializa console serial 9600 bps
if (!gerente.init()) // se a inicialização do gerenciador falhar
Serial.println("Falha na inicializacao"); // print na console serial
}
void loop()
{
if (gerente.available()) // se gerenciador estiver ativo
{
tamanho = sizeof(buf); // determina o tamanho do buffer
if (gerente.recvfromAck(buf, &tamanho, &from)) // se o gerenciador receber mensagem
{
Serial.print("Recebido de: 0x"); // print na console serial
Serial.print(from, HEX); // print do endereço do transmissor em Hexadecimal
Serial.print(": "); // print na console serial
Serial.println((char*)buf); // print da mensagem recebida
}
}
}
Essa é a tela da Console Serial da IDE do Arduino Receptor (9600 bps), com as mensagens recebidas :
Desvendando o controle remoto RF Decodificador para o Encoder HT6P20B com Arduino
|
Esse conjunto de Módulos de transmissão(TX) e recepção(RX) de RF 433 MHz serve para o envio de dados digitais entre dois Arduinos (ou outro tipo de Microcontrolador). A comunicação é unidirecional , isto é, os dados são enviados pelo transmissor e recebidos pelo receptor.
Encontre tudo na Loja Eletrogate com frete grátis para compras acima de R$ 200