Controlador de bomba baseado em SMS com desligamento automático a seco

Neste post, construiremos um controlador de bomba de água baseado em SMS com desligamento automático da bomba quando nenhum fluxo de água for detectado através da bomba. Também construiremos outro circuito de prevenção a corrida a seco automático muito mais simples sem GSM na próxima metade do artigo.

O que é funcionamento a seco em motores?

Nós já discutimos Controlador de bomba baseado em GSM Confira neste site se você ainda não o fez. Aqui estamos adicionando um recurso adicional ao projeto existente, o que impedirá que o motor funcione a seco.

Funcionamento a seco significa operar a bomba de água sem fluxo de líquido. A conseqüência pode ser danos reparáveis ​​a danos não reparáveis, dependendo de quanto tempo o motor estava funcionando sem bombear a água e a qualidade da bomba de água.

Sim, as bombas de água não são baratas e se você é um agricultor que irriga o campo todos os dias, um pequeno problema com a bomba de água pode levar a perdas financeiras.

A manutenção da bomba pode levar algum tempo e dinheiro, por isso é melhor seguir o famoso slogan “Prevenir é melhor do que remediar”.

Funcionamento a seco do motor É um problema muito comum, quando não há água suficiente para fluir através da bomba, ela superaquece os componentes mecânicos e elétricos.

A certa altura, os componentes mecânicos começarão a derreter e também poderão causar um curto-circuito.

Esse desastre pode ser evitado usando o circuito proposto neste projeto.

Para detectar o fluxo de água, estamos usando o sensor de fluxo de água YF-S201. Quando o sensor não detecta o fluxo de água, ele interrompe a fonte de alimentação da bomba de água e envia uma confirmação por SMS ao destinatário sobre o corte a seco.

Com este controle GSM, você pode ligar e desligar a bomba e também o circuito reconhece o problema do funcionamento a seco da bomba.

Circuito de controle de bomba baseado em SMS:

Circuito de controle de bomba baseado em SMS:

O circuito consiste em um conversor CA para CC que usa um transformador de 9V, ponte retificadora, capacitor de suavização de 1000uF e regulador LM7809 de 9V. São fornecidas duas tomadas CC para alimentar a placa Arduino e o Módulo SIM 800 / SIM 900 GSM.

Nunca alimente o módulo GSM com um plugue de 5V do Arduino para um plugue de 5V do módulo GSM, pois a placa Arduino não pode fornecer corrente suficiente.

A conexão entre Módulo Arduino e GSM Como segue:

Arduino TX ———————- RX SIM 800/900

Arduino RX ——————— TX SIM 800/900

Arduino GND ——————- GND SIM 800/900

A fonte principal é fornecida pelo regulador LM 7809.

O indicador LED acenderá se o relé estiver ativado e se apagará quando o relé estiver desativado.

O diodo IN4007 absorve o pico de alta tensão que ocorre ao ligar e desligar o relé.

O sensor de fluxo de água está conectado ao pino A0 do Arduino, 5V e GND fornecido na placa Arduino.

Programa de design baseado em GSM:

//----------------Program developed by R.Girish------------//
int motor = 8;
int LED = 9;
int temp = 0;
int i = 0;
int j = 0;
int k = 0;
int X = 0;
int Y = 0;
int mtr_on = 0;
float Time = 0;
float frequency = 0;
const int input = A0;
const int test = 6;
char str[15];
void setup()
{
Serial.begin(9600);
pinMode(motor, OUTPUT);
pinMode(LED, OUTPUT);
digitalWrite(motor, LOW);
digitalWrite(LED, LOW);
analogWrite(test, 100);
for (k = 0; k < 60; k++) { delay(1000); } Serial.println("AT+CNMI=2,2,0,0,0"); delay(1000); Serial.println("AT+CMGF=1"); delay(500); Serial.println("AT+CMGS="+91xxxxxxxxxx"r"); // Replace x with mobile number delay(1000); Serial.println("System is ready to receive commands.");// The SMS text you want to send delay(100); Serial.println((char)26); // ASCII code of CTRL+Z delay(1000); } void loop() { if (temp == 1) { check(); temp = 0; i = 0; delay(1000); } if (mtr_on == 1) { X = pulseIn(input, HIGH); Y = pulseIn(input, LOW); Time = X + Y; frequency = 1000000 / Time; if (isinf(frequency)) { digitalWrite(motor, LOW); digitalWrite(LED, LOW); delay(1000); Serial.println("AT+CMGS="+91xxxxxxxxxx"r"); // Replace x with mobile number delay(1000); Serial.println("Motor Deactivated. Dry Run Shut Off!");// The SMS text you want to send delay(100); Serial.println((char)26); // ASCII code of CTRL+Z mtr_on = 0; delay(1000); } } } void serialEvent() { while (Serial.available()) { if (Serial.find("/")) { delay(1000); while (Serial.available()) { char inChar = Serial.read(); str[i++] = inChar; if (inChar == '/') { temp = 1; return; } } } } } void check() { if (!(strncmp(str, "motor on", 8))) { digitalWrite(motor, HIGH); digitalWrite(LED, HIGH); delay(1000); Serial.println("AT+CMGS="+91xxxxxxxxxx"r"); // Replace x with mobile number delay(1000); Serial.println("Motor Activated");// The SMS text you want to send delay(100); Serial.println((char)26); // ASCII code of CTRL+Z for (j = 0; j < 20 ; j++) { delay(1000); } mtr_on = 1; } else if (!(strncmp(str, "motor off", 9))) { digitalWrite(motor, LOW); digitalWrite(LED, LOW); mtr_on = 0; delay(1000); Serial.println("AT+CMGS="+91xxxxxxxxxx"r"); // Replace x with mobile number delay(1000); Serial.println("Motor deactivated");// The SMS text you want to send delay(100); Serial.println((char)26); // ASCII code of CTRL+Z delay(1000); } else if (!(strncmp(str, "test", 4))) { Serial.println("AT+CMGS="+91xxxxxxxxxx"r"); // Replace x with mobile number delay(1000); Serial.println("The System is Working Fine.");// The SMS text you want to send delay(100); Serial.println((char)26); // ASCII code of CTRL+Z delay(1000); } }

// ---------------- Programa desenvolvido por R.Girish ------------ //

Você deve inserir o código com o número de celular de 10 dígitos do destinatário.

Serial.println ("AT + CMGS = " + 91xxxxxxxxxx " r"); // Substitua x pelo número do celular

Você deve colocar o número do celular nesses 5 lugares no código.

Comandos SMS:

· Seu SMS sempre deve começar com "/" e terminar com "/"

· / Motor em funcionamento / para ativar o motor.

· / Motor desligado / para desativar o motor.

· / Teste / para testar o circuito.

Aqui está o SMS testado durante a criação de protótipos:

SMS testado durante a criação de protótipos

As seguintes coisas podemos observar na captura de tela:

· O motor é iniciado primeiro e o circuito é reconhecido com uma resposta.

· O motor é desativado e o circuito é confirmado com uma resposta.

· Mais uma vez o motor ativa e desconecta o sensor para simular uma situação de funcionamento a seco, o circuito desliga a bomba e responde com o reconhecimento de funcionamento a seco da bomba.

· Finalmente, um SMS de teste foi enviado e o circuito respondeu com "O sistema funciona bem".

Eu sugeriria a instalação do sensor de fluxo de água após alguns metros após a bomba de água.

Isso conclui o preventor da bomba de funcionamento a seco baseado em GSM.

Agora, vamos dar uma olhada no dispositivo simples de prevenção de funcionamento a seco de bomba de água não GSM, esse pode ser o mais fácil dos dois.

Diagrama de circuito:

Controlador de bomba baseado em SMS com desligamento automático a seco

Não há muito o que explicar aqui, basta conectá-lo de acordo com o esquema. A fonte de alimentação pode ser um adaptador de parede de 9V com pelo menos 500 mA ou a fonte ilustrada no esquema do controlador baseado em GSM.

O botão é fornecido para ligar e desligar a bomba.

Depois de pressionar o botão para iniciar a bomba, o circuito espera até 20 segundos inicialmente para detectar o fluxo de água, durante o qual o botão fica desativado por 20 segundos.

Após os primeiros 20 segundos, o botão é ativado e você pode desligar manualmente a bomba pressionando o botão novamente.

Se for detectado fluxo de água, o circuito mantém a bomba ligada após 20 segundos; caso contrário, o circuito cortará a energia do motor. Além disso, o circuito pode interromper o fornecimento a qualquer momento, se nenhum fluxo de água for detectado.

Se o circuito desligar devido ao funcionamento a seco, o LED pisca rapidamente.

Programa para a prevenção de funcionamento a seco com uma única bomba:

//--------------------------Program Developed by R.GIRISH------------------------//
int X = 0;
int Y = 0;
int i = 0;
int mtr_on = 0;
float Time = 0;
float frequency = 0;
const int input = A0;
const int test = 6;
const int button = A1;
const int LED = 8;
const int motor = 9;
void setup()
{
Serial.begin(9600);
pinMode(input, INPUT);
pinMode(test, OUTPUT);
pinMode(LED, OUTPUT);
pinMode(motor, OUTPUT);
analogWrite(test, 100);
digitalWrite(button, HIGH);
}
void loop()
{
if (digitalRead(button) == LOW && mtr_on == 0)
{
Serial.println("Motor Activated");
digitalWrite(LED, HIGH);
digitalWrite(motor, HIGH);
for (i = 0; i < 20; i++) { delay(1000); } mtr_on = 1; } if (digitalRead(button) == LOW && mtr_on == 1) { Serial.println("Motor Deactivated"); digitalWrite(LED, LOW); digitalWrite(motor, LOW); mtr_on = 0; delay(1000); } if (mtr_on == 1) { X = pulseIn(input, HIGH); Y = pulseIn(input, LOW); Time = X + Y; frequency = 1000000 / Time; if (isinf(frequency)) { Serial.println("Dry run shut off"); digitalWrite(motor, LOW); digitalWrite(LED, LOW); mtr_on = 0; while (true) { digitalWrite(LED, HIGH); delay(500); digitalWrite(LED, LOW); delay(500); } } } } //--------------------------Program Developed by R.GIRISH------------------------//

Isso conclui os dois projetos.

Se você tiver alguma dúvida específica sobre este controlador de bomba baseado em SMS com circuito de desligamento automático em funcionamento seco, expresse na seção de comentários, você pode obter uma resposta rápida



FONTE

Nota: Este foi traduzido do Inglês para português (auto)

Pode conter erros de tradução

Olá, se tiver algum erro de tradução (AUTO), falta de link para download etc...

Veja na FONTE até ser revisado o post.

Status (Não Revisado)

Se tiver algum erro coloque nos comentários

Mas se gostou compartilhe!!!


Veja mais

Axtudo
Axtudohttps://www.axtudo.com/
“Solidários, seremos união. Separados uns dos outros seremos pontos de vista. Juntos, alcançaremos a realização de nossos propósitos.” (Bezerra de Menezes) Axtudo Onde a união faz a força !

Comentários

DEIXE UMA RESPOSTA

Por favor digite seu comentário!
Por favor, digite seu nome aqui

Compartilhe

Últimos Posts

00:01:28

EU VOU SER O MENTOR DELE! com Tiago Fonseca

#VOU #SER #MENTOR #DELE #Tiago #Fonseca FAÇA PARTE DA COMUNIDADE SECRETA- link➤https:dominacaodigital.com.br/video1/ Neste vídeo, eu vou ser o mentor de...
00:03:40

VOU ENSINAR ESSE MÉTODO ÚNICO PARA O ENTREGADOR –...

#VOU #ENSINAR #ESSE #MÉTODO #ÚNICO #PARA #ENTREGADOR #Tiago #Fonseca FAÇA PARTE DA COMUNIDADE SECRETA- link➤https:dominacaodigital.com.br/video1/ Neste vídeo...

COMO GANHAR DINHEIRO COM BLOGS EM 2020 [renda passiva...

#COMO #GANHAR #DINHEIRO #BLOGS #renda #passiva #online 🔥🔥🔥Hostinger: Hospedagem de sites com até 91% off pelo site link➤https:hostinger.com.br/peter...
00:01:36

UMA DICA SIMPLES PARA AQUECER LEADS | ERICO ROCHA

Essa é a pessoa que mais precisa ver seus conteúdos. Entre para o nosso grupo #GaleraRaiz no Telegram: link➤http:formuladelancamento.com.br/raiz Você também pode me encontrar...

Como QUEBRAR A DIETA e Emagrecer Mais

#Como #QUEBRAR #DIETA #Emagrecer #Mais Neste vídeo dou 5 dicas de como quebrar a dieta certo e poder emagrecer, queimar...
00:44:29

Como criar do zero uma audiência que gere o...

Seguindo nossa ordem de Atalhos e Obstáculos, hoje entramos em mais um atalho: Audiência. Nesse episódio cobriremos tudo sobre criar uma audiência na internet do...