Olá galera estou com um probleminha com arduino mega.
Eu preciso executar uma função a cada 1 minuto no código do arduino. Alguém sabe como posso fazer isso na programação? segue código abaixo. A função que quero executar a cada 1 minuto é a "sensor.calibrate()"
void setup() {
// É necessário calibrar o sensor antes de usar a primeira vez com o método abaixo
Serial.begin(9600);
sensor.calibrate();
//Serial.println("Fim da calibração");
emon1.voltage(0, VOLT_CAL, 1.7);
}
void loop() {
emon1.calcVI(20,2000);
float V = emon1.Vrms;
float I = sensor.getCurrentAC(60);
float P = V * I;
Serial.print(P);
Serial.print(":");
Serial.print(I);
Serial.print(":");
Serial.println(V);
delay(2000);
}
Tags:
Olá Renato.
Fis algumas alterações no seu código, ver se te ajuda.
Todas as alterações estão comentadas, para melhor compreensão.
Segue código:
unsigned long time, dif; //Time para armazenar o tempo da função millis(), e dif para armazenar a diferença do millis() e o time
void setup() {
// É necessário calibrar o sensor antes de usar a primeira vez com o método abaixo
Serial.begin(9600);
sensor.calibrate();
//Serial.println("Fim da calibração");
emon1.voltage(0, VOLT_CAL, 1.7);
time = millis(); //Armazena o tempo que faz que a placa está ligada
}
void loop() {
dif = millis() - time; //Subtrai o tempo em que a placa está ligada menos o time que atualizamos a cima
if(dif == 60000) { //Se a subtração que armazenamos em dif for igual a 60000(60 segundos) faz:
sensor.calibrate(); //Executa a função
time = millis(); //Atualiza nosso time, armazenando novamente o tempo que faz que a placa foi ligada
}
emon1.calcVI(20,2000);
float V = emon1.Vrms;
float I = sensor.getCurrentAC(60);
float P = V * I;
Serial.print(P);
Serial.print(":");
Serial.print(I);
Serial.print(":");
Serial.println(V);
delay(2000);
}
Ola Matheus testei o código que você passou e não deu certo.
Recomendações:
1. Remova seu sketch da área de texto do seu tópico;
2. Leia http://labdegaragem.com/forum/topics/sugest-o-de-como-postar
3. Comente as linhas do seu sketch. Fica mais fácil entender o que vc quer fazer com cada linha e facilita a ajuda.
4. Clique em : " Deseja carregar arquivos? " e depois em " Escolher arquivo" e anexe o arquivo
com o seu sketch.
ok
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por