#include <SerialGSM.h> //Inclui a biblioteca SerialGSM.h #include <SoftwareSerial.h> //Incluir a biblioteca SoftwareSerial.h SerialGSM cell(2,3); //Configura os pinos 2 e 3 para serem utilizados como RX e TX
//Variáveis utilizadas para o cálculo do valor eficaz da corrente em AC float valorSensor_aux = 0; float valorSensor = 0; float valorCorrente = 0; float voltsporUnidade = 0.0048828125; //======================================================================
voidsetup() { Serial.begin(9600); //Inicializa a serial(Hardware) com Baud Rate = 9600
//Inicializa o Celular Shield cell.begin(9600); cell.Verbose(true); cell.Boot(); cell.FwdSMS2Serial(); //============================
Serial.println(); //Pula linha na Serial Serial.println(); //Pula linha na Serial delay(2000); //Delay de 2 segundos }
voidloop() { ajusteSensor(); //Chama a função para o cálculo da corrente if(valorCorrente >= 0.50) //Se lâmpada estiver acesa { Serial.println(); //Pula linha na Serial Serial.println(); //Pula linha na Serial cell.Rcpt("982823030"); //Seleciono o número de envio da SMS cell.Message("LAMPADA ACIONADA"); //Escreve a mensagem "Lâmpada Acionada" cell.SendSMS(); //Envia a SMS Serial.println(); //Pula linha na Serial Serial.println(); //Pula linha na Serial while(valorCorrente >= 0.50) //Enquanto a lâmpada estiver acesa { ajusteSensor(); //Chama a função para o cálculo da corrente } } }
void ajusteSensor() //Função para o cálculo do valor eficaz da corrente aferida { for(int i=500; i>0; i--) { valorSensor_aux = (analogRead(A0) - 511); // Faz a leitura do sensor e subtrai 511 (511 = sem corrente no circuito = 0A) valorSensor += pow(valorSensor_aux,2); // Soma os quadradosos das leituras no laço } valorSensor = (sqrt(valorSensor/ 500)) * voltsporUnidade; // Tira a raiz quadrada da média da somatória dos valores aferidos valorCorrente = (valorSensor/66)*1000; // Calcula a corrente considerando a sensibilida do sensor para 60mV/A if(v
Fabricio será que você pode me ajudar estou fazendo um projeto para ligar 04 valvulas intercaladas quando começa o funcionamento a valvula 1 e 4 ligam contam um tempo deliga e liga a valvula 3 conta mais um tempo desliga e liga a valvula 2 e 5 conta um tempo e desliga e liga novamente a valvula 3 conta um tempo desliga e inicia o ciclo de novo até ai tudo bem a dificuldade que tenho é que quando o presostato enviar sinal de 1 e a valvula 1 e 4 ligada eu tenho que cortar tudo essa é a dificuldade como posso fazer isso temalguma ideia pode me ajudar.
Sem comentários por enquanto!
Bem-vindo a Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
Comentários de Fabricio da Silva Junior
Caixa de Recados (2 comentários)
Você precisa ser um membro de Laboratorio de Garagem (arduino, eletrônica, robotica, hacking) para adicionar comentários!
Entrar em Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
Boa Tarde Fabricio
#include <SerialGSM.h> //Inclui a biblioteca SerialGSM.h
#include <SoftwareSerial.h> //Incluir a biblioteca SoftwareSerial.h
SerialGSM cell(2,3); //Configura os pinos 2 e 3 para serem utilizados como RX e TX
//Variáveis utilizadas para o cálculo do valor eficaz da corrente em AC
float valorSensor_aux = 0;
float valorSensor = 0;
float valorCorrente = 0;
float voltsporUnidade = 0.0048828125;
//======================================================================
void setup()
{
Serial.begin(9600); //Inicializa a serial(Hardware) com Baud Rate = 9600
//Inicializa o Celular Shield
cell.begin(9600);
cell.Verbose(true);
cell.Boot();
cell.FwdSMS2Serial();
//============================
Serial.println(); //Pula linha na Serial
Serial.println(); //Pula linha na Serial
delay(2000); //Delay de 2 segundos
}
void loop()
{
ajusteSensor(); //Chama a função para o cálculo da corrente
if(valorCorrente >= 0.50) //Se lâmpada estiver acesa
{
Serial.println(); //Pula linha na Serial
Serial.println(); //Pula linha na Serial
cell.Rcpt("982823030"); //Seleciono o número de envio da SMS
cell.Message("LAMPADA ACIONADA"); //Escreve a mensagem "Lâmpada Acionada"
cell.SendSMS(); //Envia a SMS
Serial.println(); //Pula linha na Serial
Serial.println(); //Pula linha na Serial
while(valorCorrente >= 0.50) //Enquanto a lâmpada estiver acesa
{
ajusteSensor(); //Chama a função para o cálculo da corrente
}
}
}
void ajusteSensor() //Função para o cálculo do valor eficaz da corrente aferida
{
for(int i=500; i>0; i--)
{
valorSensor_aux = (analogRead(A0) - 511); // Faz a leitura do sensor e subtrai 511 (511 = sem corrente no circuito = 0A)
valorSensor += pow(valorSensor_aux,2); // Soma os quadradosos das leituras no laço
}
valorSensor = (sqrt(valorSensor/ 500)) * voltsporUnidade; // Tira a raiz quadrada da média da somatória dos valores aferidos
valorCorrente = (valorSensor/66)*1000; // Calcula a corrente considerando a sensibilida do sensor para 60mV/A
if(v
Fabricio será que você pode me ajudar estou fazendo um projeto para ligar 04 valvulas intercaladas quando começa o funcionamento a valvula 1 e 4 ligam contam um tempo deliga e liga a valvula 3 conta mais um tempo desliga e liga a valvula 2 e 5 conta um tempo e desliga e liga novamente a valvula 3 conta um tempo desliga e inicia o ciclo de novo até ai tudo bem a dificuldade que tenho é que quando o presostato enviar sinal de 1 e a valvula 1 e 4 ligada eu tenho que cortar tudo essa é a dificuldade como posso fazer isso temalguma ideia pode me ajudar.
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
Registre-se
ou acesse
Or sign in with:
Destaques
Registre-se no Lab de Garagem
clicando aqui
Convide um amigo para fazer parte