- Módulo RFM69HCW RF
- RFM69HCW
- Pinagem e descrição do módulo RFM69
- Preparando a placa de desenvolvimento personalizado
Etapa 3: Prepare um PCB para isso, estou seguindo este tutorial de PCB feito em casa. Eu imprimi a pegada em uma placa de cobre e coloquei na solução de gravação
Etapa 4: Siga o procedimento para ambas as placas e solde seu módulo ao footprint. Depois de soldar ambos os meus módulos ficam assim abaixo
A pinagem do Módulo RFM69HCW é dada na figura abaixo
- Materiais requisitados
- Conexão de hardware
- Executando o esboço de exemplo
- Trabalho do esboço de exemplo
Quando se trata de fornecer recursos sem fio a seus projetos, o transmissor e receptor híbrido 433Mhz ASK é uma escolha comum entre engenheiros, desenvolvedores e entusiastas por causa de seu preço baixo, bibliotecas fáceis de usar e suporte da comunidade. Também construímos alguns projetos como automação residencial controlada por RF e campainha sem fio usando este módulo RF de 433 MHz. Mas, muitas vezes, um transmissor e receptor híbrido ASK não é suficiente, é de baixo alcance e a natureza da comunicação unilateral torna-o inadequado para muitas aplicações
Para resolver esse problema constante, os desenvolvedores da HopeRF conceberam um novo módulo de RF bacana chamado RFM69HCW. Neste tutorial, aprenderemos sobre o módulo RFM69HCW e suas vantagens. Primeiro, faremos PCB caseiro para RFM69HCW e, em seguida, faremos a interface do RFM69HCW com o Arduino para verificar o seu funcionamento para que você possa usá-lo em projetos de sua escolha. Então vamos começar.
Módulo RFM69HCW RF
O RFM69HCW é um módulo de rádio barato e fácil de usar que opera na banda ISM (Indústria, Ciência e Medicina) não licenciada semelhante ao Módulo RF nRF24L01 que usamos em projetos anteriores. Ele pode ser usado para se comunicar entre dois módulos ou pode ser configurado como uma rede Mesh para se comunicar entre centenas de módulos, o que o torna uma escolha perfeita para a construção de redes sem fio de curto alcance baratas para sensores usados em automação residencial e outros projetos de aquisição de dados.
Características do RFM69HCW:
- +20 dBm - capacidade de saída de energia de 100 mW
- Alta Sensibilidade: até -120 dBm a 1,2 kbps
- Baixa corrente: Rx = 16 mA, retenção de registro 100nA
- Pout programável: -18 a +20 dBm em etapas de 1dB
- Desempenho de RF constante em uma faixa de tensão do módulo
- Modulações FSK, GFSK, MSK, GMSK e OOK
- Sincronizador de bits integrado realizando recuperação de relógio
- 115 dB + intervalo dinâmico RSSI
- Sensor RF automático com AFC ultrarrápido
- Motor de pacote com CRC-16, AES-128, sensor de temperatura embutido FIFO de 66 bytes
- Orçamento de link alto
- Custo muito baixo
RFM69HCW
Frequência
O RFM69HCW foi desenvolvido para funcionar na banda ISM (Industry, Scientific and Medical), um conjunto de radiofrequências não licenciadas para dispositivos de curto alcance e baixa potência. Freqüências diferentes são legais em áreas diferentes, então é por isso que o módulo tem muitas versões diferentes 315.433.868 e 915MHz. Todos os principais parâmetros de comunicação de RF são programáveis e a maioria deles pode ser configurada dinamicamente. Além disso, o RFM69HCW oferece a vantagem exclusiva de modos de comunicação de banda estreita e banda larga programáveis.
Nota: Por causa de seu poder comparativamente baixo e curto alcance, a implementação deste módulo em um pequeno projeto não vai ser um problema, mas se você está pensando em fazer um produto com ele, certifique-se de usar a frequência correta para sua localização.
Alcance
Para entender melhor o intervalo, temos que lidar com um tópico bastante complicado chamado Orçamento do link de RF. Então, qual é esse orçamento de link e por que ele é tão importante? O orçamento de link é como qualquer outro orçamento, algo que você tem no início e que gasta com o tempo, se o seu orçamento acabar, você não pode gastar mais.
O orçamento do link também tem a ver com o link ou a conexão entre o emissor e o receptor, é preenchido pela potência de transmissão do emissor e a sensibilidade do receptor e é calculado em decibéis ou dB também é frequência- dependente. O orçamento do link é deduzido por todos os tipos de obstáculos e ruídos entre o emissor e o receptor, como cabos de distância, paredes, árvores, prédios, se o orçamento do link se esgotar, o receptor apenas cria algum ruído na saída e não obteremos nenhum sinal utilizável. De acordo com o datasheet do RFM69HCW , ele tem um link budget de 140 dB em comparação com 105 dB do ASK Hybrid Transmitter, mas o que isso significa é uma diferença importante? Felizmente, encontramosCalculadoras de orçamento de link de rádio on-line, então vamos fazer alguns cálculos para entender melhor o tópico. Primeiro, vamos supor que temos uma conexão de linha de visão entre o remetente e o receptor e tudo está perfeito, pois sabemos que nosso orçamento para RFM69HCW é de 140 dB, então vamos verificar a maior distância teórica que podemos comunicar, definimos tudo para zero e a distância a 500KM, Frequência a 433 MHz e obtemos uma potência horizontal recebida de 139,2 dBm
Agora, eu configurei tudo para zero e a distância para 9KM. Frequência para 433MHz e nós temos uma potência horizontal recebida de 104,3 dBm
Portanto, com a comparação acima, acho que todos podemos concordar que o módulo RFM69 é muito melhor do que o Transmissor Híbrido ASK e um módulo receptor.
A antena
Cuidado! Conectar uma antena ao módulo é obrigatório porque sem ela o módulo pode ser danificado por sua própria potência refletida.
Criar uma antena não é tão difícil quanto pode parecer. A antena mais simples pode ser feita apenas com um fio 22SWG de fita simples. O comprimento de onda de uma frequência pode ser calculado pela fórmula v / f , onde v é a velocidade de transmissão ef é a frequência (média) de transmissão. No ar, v é igual ac , a velocidade da luz, que é 299,792,458 m / s. O comprimento de onda para a banda de 433 MHz é, portanto, 299,792.458 / 433.000.000 = 34,54 cm. Metade disso tem 17,27 cm e um quarto tem 8,63 cm.
Para a banda de 433 MHz, o comprimento de onda é 299,792.458 / 433.000.000 = 69,24 cm. Metade disso tem 34,62 cm e um quarto tem 17,31 cm. Portanto, pela fórmula acima, podemos ver o processo de cálculo do comprimento do fio da antena.
Requisito de energia
O RFM69HCW tem uma tensão operacional entre 1,8 V a 3,6 V e pode consumir até 130 mA de corrente quando está transmitindo. Abaixo na tabela, podemos ver claramente o consumo de energia do módulo em diferentes condições
Aviso: se o Arduino escolhido usar níveis lógicos de 5 V para se comunicar com o periférico, conectar o módulo diretamente ao Arduino danificará o módulo
Símbolo |
Descrição |
Condições |
Min |
Typ |
Max |
Unidade |
IDDSL |
Atual em modo de suspensão |
- |
0,1 |
1 |
uA |
|
IDDIDLE |
Atual em modo de espera |
Oscilador RC habilitado |
- |
1,2 |
- |
uA |
IDDST |
Atual em modo de espera |
Oscilador de cristal habilitado |
- |
1,25 |
1,5 |
uA |
IDDFS |
atual no sintetizador modo |
- |
9 |
- |
uA |
|
IDDR |
atual no modo de recepção |
- |
16 |
- |
uA |
|
IDDT |
Fornecer corrente no modo de transmissão com correspondência apropriada, estável em toda a faixa VDD |
RFOP = +20 dBm, em PA_BOOST RFOP = +17 dBm, em PA_BOOST RFOP = +13 dBm, no pino RFIO RFOP = +10 dBm, no pino RFIO RFOP = 0 dBm, no pino RFIO RFOP = -1 dBm, no pino RFIO |
- - - - - - |
130 95 45 33 20 16 |
- - - - - - |
mA mA mA mA mAmA |
Neste tutorial, usaremos dois Arduino Nano e dois conversores de nível lógico para nos comunicarmos com o módulo. Estamos usando o Arduino nano porque o regulador interno integrado pode gerenciar a corrente de pico com muita eficiência. O diagrama de Fritzing na seção de hardware abaixo irá explicar isso mais claramente para você.
NOTA: Se sua fonte de alimentação não puder fornecer 130mA de corrente de pico, seu Arduino pode reiniciar ou pior, o módulo pode falhar para se comunicar corretamente, nesta situação um capacitor de grande valor com baixo ESR pode melhorar a situação
Pinagem e descrição do módulo RFM69
Rótulo |
Função |
Função |
Rótulo |
FORMIGA |
Saída / entrada de sinal RF. |
Power Ground |
GND |
GND |
Aterramento da antena (igual ao aterramento de energia) |
E / S digital, software configurado |
DIO5 |
DIO3 |
E / S digital, software configurado |
Reiniciar entrada de gatilho |
RST |
DIO4 |
E / S digital, software configurado |
Entrada de seleção de chip SPI |
NSS |
3,3 V |
Alimentação de 3,3 V (pelo menos 130 mA) |
Entrada SPI Clock |
SCK |
DIO0 |
E / S digital, software configurado |
Entrada de dados SPI |
MOSI |
DIO1 |
E / S digital, software configurado |
Saída de dados SPI |
MISSÔ |
DIO2 |
E / S digital, software configurado |
Power Ground |
GND |
Preparando a placa de desenvolvimento personalizado
Quando comprei o módulo, ele não vinha com uma placa de breakout compatível com a placa de ensaio, então decidimos fazer uma para mim. Se você precisar fazer o mesmo, basta seguir as etapas. Além disso, observe que não é obrigatório seguir essas etapas, você pode simplesmente soldar os fios ao módulo RF e conectá-los à placa de ensaio e ainda funcionará. Estou seguindo este procedimento apenas para obter uma configuração estável e robusta.
Etapa 1: Prepare o esquema para o módulo RFM69HCW
Etapa 3: Prepare um PCB para isso, estou seguindo este tutorial de PCB feito em casa. Eu imprimi a pegada em uma placa de cobre e coloquei na solução de gravação
Etapa 4: Siga o procedimento para ambas as placas e solde seu módulo ao footprint. Depois de soldar ambos os meus módulos ficam assim abaixo
A pinagem do Módulo RFM69HCW é dada na figura abaixo
Materiais requisitados
Aqui está a lista de coisas que você precisa para se comunicar com o módulo
- Dois módulos RFM69HCW (com frequências correspondentes):
- 434 MHz (WRL-12823)
- Dois Arduino (estou usando o Arduino NANO)
- Dois conversores de nível lógico
- Duas placas de breakout (estou usando uma placa de breakout feita sob medida)
- Um botão de pressão
- Quatro LEDs
- Um resistor 4.7K quatro resistor 220Ohms
- Fios de ligação
- Fio de cobre esmaltado (22AWG), para fazer a antena.
- E finalmente soldar (se você ainda não fez isso)
Conexão de hardware
Neste tutorial, estamos usando Arduino nano, que usa lógica de 5 volts, mas o módulo RFM69HCW usa níveis lógicos de 3,3 volts, como você pode ver claramente na tabela acima, para se comunicar adequadamente entre dois dispositivos, um conversor de nível lógico é obrigatório, no diagrama fritzing abaixo mostramos como conectar o Arduino nano ao módulo RFM69.
Nó Remetente do Diagrama de Fritzing
Nó Remetente da Tabela de Conexão
Pin Arduino |
Pino RFM69HCW |
Pinos I / O |
D2 |
DIO0 |
- |
D3 |
- |
TAC_SWITCH |
D4 |
- |
LED_GREEN |
D5 |
- |
LED_RED |
D9 |
- |
LED_BLUE |
D10 |
NSS |
- |
D11 |
MOSI |
- |
D12 |
MISSÔ |
- |
D13 |
SCK |
- |
Nó receptor do diagrama de Fritzing
Nó receptor da tabela de conexão
Pin Arduino |
Pino RFM69HCW |
Pinos I / O |
D2 |
DIO0 |
- |
D9 |
- |
CONDUZIU |
D10 |
NSS |
- |
D11 |
MOSI |
- |
D12 |
MISSÔ |
- |
D13 |
SCK |
- |
Executando o esboço de exemplo
Neste tutorial, vamos configurar dois nós Arduino RFM69 e fazer com que eles se comuniquem entre si. Na seção abaixo, saberemos como colocar o módulo em funcionamento com a ajuda da biblioteca RFM69 que foi escrita por Felix Rusu da LowPowerLab.
Importando a Biblioteca
Com sorte, você já fez um pouco de programação em Arduino antes e sabe como instalar uma biblioteca. Caso contrário, verifique a seção Importando uma biblioteca.zip deste link
Conectando os nós
Conecte o USB do Nó Remetente ao seu PC, um novo número de porta COM deve ser adicionado à lista "Ferramentas / Porta" do IDE do Arduino, digite-o, agora conecte o nó Receptor, outra porta COM deve aparecer em Ferramentas / Lista de portas, também anotada, com a ajuda do número da porta faremos o upload do esboço para o emissor e o nó receptor.
Abrindo duas sessões do Arduino
Abra duas sessões do Arduino IDE clicando duas vezes no ícone do Arduino IDE após o carregamento da primeira sessão, é obrigatório abrir duas sessões do Arduino porque é assim que você pode abrir duas janelas de monitor serial do Arduino e monitorar simultaneamente a saída de dois nós
Abrindo o código de exemplo
Agora, quando tudo estiver configurado, precisamos abrir o código de exemplo em ambas as sessões do Arduino para fazer isso, vá para
Arquivo> Exemplos> RFM6_LowPowerLab> Exemplos> TxRxBlinky
e clique para abri-lo
Modificando o Código de Exemplo
- Perto do topo do código, procure #define NETWORKID e altere o valor para 0. Com este Id, todos os seus nós podem se comunicar uns com os outros.
- Procure por #define FREQUENCY altere para coincidir com a frequência da placa (a minha é 433_MHz).
- Procure a #define ENCRYPTKEY, esta é a sua chave de criptografia de 16 bits.
- Procure #define IS_RFM69HW_HCW e descomente-o se estiver usando um módulo RFM69_HCW
- E, finalmente, procure por #define NODEID; ele deve ser definido como um RECEIVER por padrão
Agora carregue o código para o seu nó receptor que você configurou anteriormente.
É hora de modificar o esboço para o nó remetente
Agora, na macro #define NODEID, mude para SENDER e carregue o código para o seu Node Sender.
É isso, se vc tiver feito tudo corretamente vc tem dois modelos completos de trabalho prontos para testar.
Trabalho do esboço de exemplo
Após o upload bem sucedido do Sketch você observará que o LED vermelho que está conectado com o pino D4 do Arduino acende, agora pressione o botão no Nó Remetente e você observará que o LED vermelho apaga e o LED verde que está conectado ao pino D5 do Arduino acende conforme mostrado na imagem abaixo
Você também pode observar o botão pressionado! texto na janela do monitor serial conforme mostrado abaixo
Observe agora o LED Azul que está conectado ao Pino D9 do Nodo Remetente, ele piscará duas vezes e na janela Monitor Serial do Nodo Recebido você verá a seguinte mensagem e também o LED Azul que está conectado ao pino D9 no o nó receptor acenderá. Se você vir a mensagem acima na janela Serial Monitor do nó receptor e também se o LED acender Parabéns! Você comunicou com êxito o módulo RFM69 com o Arduino IDE. O funcionamento completo deste tutorial também pode ser encontrado no vídeo fornecido no final desta página.
Todos esses módulos são ótimos para construir estações meteorológicas, portas de garagem, controlador de bomba sem fio com indicador, drones, robôs, seu gato… o céu é o limite! Espero que você tenha entendido o tutorial e gostado de construir algo útil. Se você tiver alguma dúvida, deixe-a na seção de comentários ou use os fóruns para outras dúvidas técnicas.