Мар
14
2016
14
2016
Arduino /
Счётчик воды на Arduino (Water flow sensor)
Код счетчика воды на базе сенсора 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"); // Всего литров }
Метки: Arduino