Adatum
Мар
14
2016

Счётчик воды на Arduino (Water flow sensor)

water flow
Код счетчика воды на базе сенсора Water flow sensor SEN-HZ21WA

volatile int flow_frequency;               // Water flow  
unsigned int l_hour,f_val;                 // Water flow   
unsigned long ctTime,flow_val,cloopTime;   // Water flow


void flow () //  Water flow Interrupt function
{
   flow_frequency++;  f_val++;
}
void setup()
{
   Serial.begin(9600);
   attachInterrupt(1, flow, RISING);  sei();   ctTime = millis();  cloopTime = ctTime; // Water flow
}
void loop ()
{
   ctTime = millis();
   if(ctTime >= (cloopTime + 1000))
   {
      cloopTime = ctTime; 
      l_hour = (flow_frequency * 60 / 7.5);     
      flow_frequency = 0; // Сброс счётчика
      Serial.print(l_hour, DEC);     Serial.print(" L/hour");    // Литров в час    
   }

   if(f_val>=450){flow_val++;f_val=0;}
   Serial.println(flow_val);Serial.println("L"); // Всего литров
   
}

Похожие статьи

Оставить комментарий

  • Привет. А как вывести инфу на дисплей