Olá Galera, desculpem-me por ter afastado um pouco do grupo de discussão,  mas agora eu quero mostrar um código que adaptei para um anemômetro funcionar em KM/H, desde que o sensor (efeito hall) esteja ligado á porta analógica 0 do arduino, e o diâmetro do seu anemômetro esteja colocado na variável diameter, na 6ª linha do código. Segue o código:

int val;
long last=0;
int stat=LOW;
int stat2;
int contar=0;
int diameter=40; //o diametro deve estar em cm
int sens=75;
int nPalas=2;
int milisegundos=500;

void setup()
{
Serial.begin(9600);
pinMode(13,OUTPUT);
}

void loop()
{
val=analogRead(0);
if(val<sens)
stat=LOW;
else
stat=HIGH;
digitalWrite(13,stat);

if(stat2!=stat){
contar++;
stat2=stat;
}
if(millis()-last>=milisegundos){
double kmph=(((double)contar/nPalas)/2.0*60000.0/(milisegundos)*(diameter/100000))*60;
Serial.print(kmph);
Serial.print("\n");
contar=0;
last=millis();
}
}

Atenciosamente Murilo Lima Nogueira

Exibições: 1813

Respostas a este tópico

Qual sensores voce esta usando?

Olá Armando, vou usar um reed switch talvez, mas com esse código voce pode usar inúmeros sensores, desde que estejam ligados á porta analógica 0.

RSS

Destaques

Registre-se no
Lab de Garagem
Clicando aqui

Convide um
amigo para fazer
parte

curso gratis de arduino

© 2018   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço