HomeWaterLeaksDetection
LimitsDefinition.h
Go to the documentation of this file.
1 #ifndef LIMITS_DEFINITION_H
2 #define LIMITS_DEFINITION_H
3 
4 #include "DateTime.h"
5 #include "Setup.h"
6 
7 //===============sensor input coversion=================
8 
12 #define LITER_TO_PULSE(l) ((int)(l) / SENSOR_PULSE_IN_LITERS)
13 
17 #define PULSE_TO_LITER(p) (p * SENSOR_PULSE_IN_LITERS)
18 
19 #define UNUSED 0
20 
21 //============HIGH-water leak default params============
22 
23 #define HIGH_LEAK_RESET_TIME SEC_TO_MILLIS(10)
24 #define HIGH_LEAK_LIMIT_ACTION LITER_TO_PULSE(300)
25 
26 //============LOW-water leak default params=============
27 
28 #define LOW_LEAK_RESET_TIME SEC_TO_MILLIS(12)
29 #define LOW_LEAK_LIMIT_ACTION SEC_TO_MILLIS(40)
30 
31 //============TOTAL-water leak default params===========
32 
33 #define TOTAL_LEAK_RESET_TIME MIN_TO_MILLIS(5)
34 #define TOTAL_LEAK_LIMIT_ACTION LITER_TO_PULSE(400)
35 
36 //==========Passing parameters to constructors==========
37 
39 #define HIGH_LEAK_NORMAL_DEFAULT_CONFIG \
40 {HIGH_LEAK_RESET_TIME, \
41 UNUSED, \
42 HIGH_LEAK_LIMIT_ACTION, \
43 HIGH_BYPASS_PIN}
44 
46 #define LOW_LEAK_NORMAL_DEFAULT_CONFIG \
47 {LOW_LEAK_RESET_TIME, \
48 LOW_LEAK_LIMIT_ACTION, \
49 UNUSED, \
50 LOW_BYPASS_PIN}
51 
53 #define TOTAL_LEAK_NORMAL_DEFAULT_CONFIG \
54 {TOTAL_LEAK_RESET_TIME, \
55 UNUSED, \
56 TOTAL_LEAK_LIMIT_ACTION, \
57 TOTAL_BYPASS_PIN}
58 
59 #endif
DateTime.h
Setup.h