Leitura automática de medidor (AMR) usando Arduino

Leitura automática de medidor (AMR) usando Arduino

Não há outra ferramenta disponível que ajude na prototipagem fácil como o Arduino. A placa Arduino possui todos os circuitos necessários para fazer o microcontrolador AVR integrado funcionar. As placas do microcontrolador AVR que são fornecidas com todos os circuitos básicos para a operação do microcontrolador que foi atualizado com o boot-loader Arduino são chamadas de placas Arduino. O IDE do Arduino é tão simples de usar que qualquer pessoa que tenha conhecimento básico de programação C pode começar a usá-lo rapidamente.Portanto, para este projeto, o leitor deve ter conhecimento de como começar com arduino e Interface LCD com Arduino .

Este documento discute sobre o desenvolvimento e funcionamento de um protótipo de um AMR (Leitura Automática do Medidor) usando placa Arduino. O AMR é agora um termo geral para todos os tipos de medidores que podem ler os dados, armazenar a leitura e transmitir a leitura sem fio, mediante solicitação, para outro dispositivo. Já existem hidrômetros disponíveis que permitem a interface do reed-switch. Este projeto usa um reed-switch junto com um ímã giratório para demonstrar o trabalhando de RAM.

Protótipo de Sistema Automático de Leitura de Medidores baseado em Arduino

Figura 1: Protótipo de Sistema Automático de Leitura de Medidores baseado em Arduino

DESCRIÇÃO:

O AMR possui basicamente duas unidades, uma unidade transmissora de armazenamento de dados que é fixada no medidor e uma unidade receptora portátil. A unidade transmissora possui um reed-switch com o qual faz a leitura do medidor e um transmissor RF que transmite os dados. A unidade portátil possui um receptor RF que recebe os dados e um LCD 16*2 no qual os dados são exibidos.

Visão geral da leitura automática do medidor

Fig. 2: Visão geral da leitura automática do medidor

Neste projeto, tanto o Transmissor quanto o Receptor são realizados utilizando placas Arduino pro-mini e par transmissor-receptor RF 433Mhz. A principal peculiaridade da placa Arduino pro-mini é seu tamanho e sua capacidade de operar na alimentação de 3V. É pequeno em tamanho, possui pinos compatíveis com placa de ensaio e pode ser facilmente conectado a placas de circuito de protótipo. A comunicação entre dois dispositivos é uma comunicação UART sem fio com uma taxa de transmissão de apenas 600.

Imagem do Arduino Pro Mini

Figura 3: Imagem do Arduino Pro Mini

Unidade Transmissora

Unidade Transmissora

A unidade transmissora possui um reed-switch com o qual lê os dados do medidor. Tem um Arduíno placa que guarda os dados, um micro-switch para o usuário iniciar o envio dos dados e um módulo transmissor que é conectado diretamente na porta serial da placa Arduino. A unidade é alimentada por duas baterias AA.

Diagrama de blocos da unidade transmissora do sistema de leitura automática de medidor baseado em Arduino

Fig. 4: Diagrama de blocos da unidade transmissora do sistema automático de leitura de medidor baseado em Arduino

Cada vez que o ímã do medidor se aproxima do reed-switch, ele faz um contato e o pino de entrada digital da placa Arduino onde está conectado indicará lógica alta. Cada vez que o pino fica alto, o Arduino incrementa uma variável no código. Sempre que o usuário pressiona o microinterruptor, o

a placa recebe uma interrupção externa e começará a transmitir o valor daquela variável serialmente para o módulo RF, que o transmitirá sem fio. Para receber os dados sem erros no receptor, a unidade transmissora transmite os dados no seguinte formato.

AMR

Protótipo de unidade transmissora de sistema automático de leitura de medidor baseado em Arduino

Fig. 5: Protótipo de unidade transmissora de sistema automático de leitura de medidor baseado em Arduino

Unidade receptora

Unidade receptora

A unidade receptora possui outra placa Arduino com um módulo receptor RF conectado à sua porta serial. Também faz a comunicação serial com a mesma taxa de transmissão de 600 para poder receber os dados transmitidos da unidade transmissora. A placa Arduino nesta unidade pode exibir os dados em um LCD 16×2.

Diagrama de blocos da unidade receptora do sistema de leitura automática de medidor baseado em Arduino

Fig. 6: Diagrama de blocos da unidade receptora do sistema automático de leitura de medidor baseado em Arduino

Cada vez que o botão na unidade transmissora é pressionado, os dados serão atualizados no LCD. A unidade receptora portátil funciona com uma bateria de 9V. O código na unidade receptora espera que um 'A' chegue à sua porta serial vindo da unidade receptora de RF e confirma que se trata de um dado do medidor transmissor quando o próximo caractere receptor for 'M'. O código atualizará o restante dos dados recebidos no LCD até receber o caractere 'R' do medidor transmissor, representando o fim da transmissão de dados.

Protótipo de unidade receptora de sistema de leitura automática de medidor baseado em Arduino

Fig. 7: Protótipo de unidade receptora de sistema automático de leitura de medidor baseado em Arduino

Trabalhando

Trabalhando

O protótipo parece funcionar normalmente com bateria AA na unidade transmissora do medidor. Os dados podem ser recebidos usando o dispositivo portátil a um alcance superior a 10 metros, sem quaisquer antenas, exceto trilhas de PCB nas unidades transmissoras e receptoras. A antena de pista PCB feita na unidade transmissora do medidor é equivalente a uma antena de fio de 60 cm de comprimento

Imagem da antena de trilha PCB

Fig. 8: Imagem da antena de trilha PCB

Imagem mostrando a antena de trilha PCB conectada à unidade transmissora

Fig. 9: Imagem mostrando a antena de trilha PCB conectada à unidade transmissora

Para demonstrar o funcionamento, um ímã redondo é colado em um disco de plástico, ligeiramente deslocado de seu centro. O disco é então conectado a um eixo de motor CC para que possa ser ligado ou girado manualmente. Um interruptor Reed é colocado próximo ao ímã giratório, pois o ímã está ligeiramente deslocado do centro do disco; ele se aproxima em um ponto e se afasta em algum outro ponto do Reed Switch conforme o disco gira. Conseqüentemente, a chave Reed abre e fecha continuamente conforme o ímã gira, simulando um medidor com a chave Reed conectada. A qualquer momento, o usuário pode pressionar o botão na unidade transmissora do medidor e a leitura do medidor será atualizada na unidade receptora.

Código-fonte do projeto

###


#include 
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
int led = 13;
char x;
char dat(6);
int i = 0;
int o;
void setup 
{
    lcd.begin(16, 2);
    delay(1000);
    Serial.begin(600);
    delay(1000);
    pinMode(led, OUTPUT); 
    digitalWrite(led, HIGH);
    lcd.setCursor(5, 0);
    lcd.print("A M R");
    lcd.setCursor(4, 1);
    lcd.print("0000000");
}
void loop 
{
   i = 0;
   do
   {
     do
     {
       while(!Serial.available );
       x = Serial.read ;
     }
     while(x != 'A');   
     while(!Serial.available );
     x = Serial.read ;
   }
   while(x != 'M');  
   do
   {
     while(!Serial.available );
     x = Serial.read ;
     if(x != 'R') 
     {
       dat(i) = x;
       i ++;
     }else;
   }while(x != 'R'); 
   dat(i) = '';  
   lcd.setCursor(5, 0);
   lcd.print("A M R");
   lcd.setCursor(4, 1);
   for(o = 0; o < (7 - i); o ++)
     lcd.print('0');
     lcd.print(dat);
} 




//Transmitter code



volatile int meter_reading = 0;
int reedsensor = 6;
void setup 
{            
  attachInterrupt(1, data_tx, RISING);
  Serial.begin(600);
  pinMode(reedsensor, INPUT);
}
void loop 
{
  do
  {
    while(!digitalRead(reedsensor));
    delay(10);
  }while(!digitalRead(reedsensor));
  meter_reading ++;
  do
  {
    while(digitalRead(reedsensor));
    delay(10);
  }while(digitalRead(reedsensor));
}
//========== ISR ============//

void data_tx 

{

   detachInterrupt(1);

   Serial.print("AM");

   Serial.print(meter_reading);

   Serial.print('R'); 

   attachInterrupt(1, data_tx, RISING);

}

//========== ISR ============//


###

Diagramas de circuito

Sistema de leitura automática de medidor baseado em Arduino
Sistema de leitura automática de medidor baseado em Arduino

Vídeo do projeto

Conteúdo Relacionado

Uma rede de sensores é incorporada em todos os...
O controlador do motor é um dos componentes mais...
ESP32-CAM é um módulo de câmera compacto que combina...
A evolução dos padrões USB foi fundamental para moldar...
A SCHURTER anuncia um aprimoramento para sua conhecida série...
A Sealevel Systems anuncia o lançamento da Interface Serial...
A STMicroelectronics introduziu Diodos retificadores Schottky de trincheira de...
Determinar uma localização precisa é necessário em várias indústrias...
O novo VIPerGaN50 da STMicroelectronics simplifica a construção de...
A Samsung Electronics, fornecedora de tecnologia de memória avançada,...
O mercado embarcado tem uma necessidade de soluções de...
Você provavelmente já se deparou com o termo 'arrastar'...
Você provavelmente tem um Isolador de suporte Se você...
Você provavelmente já viu permanecer um isolante sente-se em...
Você provavelmente já viu Isoladores de manilha entronizados em...
Você provavelmente já passou por situações em que o...
Вернуться к блогу

Комментировать

Обратите внимание, что комментарии проходят одобрение перед публикацией.