mbed Sensor node for Instrumented Booth over ETH.

Dependencies:   EthernetInterface-1 MaxbotixDriver Presence HTU21D_TEMP_HUMID_SENSOR_SAMPLE Resources SHARPIR mbed-rtos mbed-src WDT_K64F nsdl_lib

Fork of Trenton_Switch_LPC1768_ETH by Demo Team

Committer:
andcor02
Date:
Thu Jul 16 13:28:49 2015 +0000
Revision:
46:807e9cf63f4c
Parent:
44:f70163204018
Added Serial VCOM debug over USB.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
andcor02 25:cb16c5248769 1 #ifndef SENSOR_CTL_H_
andcor02 25:cb16c5248769 2 #define SENSOR_CTL_H_
andcor02 25:cb16c5248769 3 /** Defines sensor control functionality for CES Instrumented Booth demonstrations */
andcor02 25:cb16c5248769 4
andcor02 25:cb16c5248769 5
andcor02 25:cb16c5248769 6
andcor02 25:cb16c5248769 7 /******* Sensor Timer/Debounce Periods (ms) **********/
erigow01 27:6017a643f386 8 #define TEMPERATURE_REPORT_PERIOD_MS 60000 // Every Minute
erigow01 44:f70163204018 9 #define SOUND_SAMPLE_PERIOD_MS 100 // Every 100 ms
erigow01 27:6017a643f386 10 #define SOUND_REPORT_PERIOD_MS 10000 // Every 10 seconds
erigow01 31:389416beb4c3 11 #define DOOR_HEIGHT_PERIOD_MS 50 // Every 50 ms
erigow01 44:f70163204018 12 #define MOTION_REPORT_PERIOD_MS 250 // Every Quarter Second.
erigow01 44:f70163204018 13 #define DOOR_TRIP_REPORT_PERIOD_MS 250 // Every quarter second.
erigow01 27:6017a643f386 14 #define KIOSK_REPORT_PERIOD_MS 1000 // Every Second
erigow01 44:f70163204018 15 #define ACCELEROMETER_PERIOD_MS 200 // Every 200ms
andcor02 25:cb16c5248769 16
erigow01 44:f70163204018 17
erigow01 44:f70163204018 18 #define DOOR_SENSOR_DEBOUNCE_MS 1000
erigow01 44:f70163204018 19 #define KIOSK_SENSOR_DEBOUNCE_MS 10000
erigow01 44:f70163204018 20 #define PIR_SENSOR_DEBOUNCE_MS 300000 // Five Minutes
andcor02 25:cb16c5248769 21
erigow01 31:389416beb4c3 22
andcor02 25:cb16c5248769 23 //Externally visible values.
andcor02 25:cb16c5248769 24 extern float current_temperature_value;
erigow01 44:f70163204018 25 extern float current_ambient_noise_value;
andcor02 30:b74aa0729b07 26 extern float current_height_value;
andcor02 25:cb16c5248769 27 extern bool current_presence_value; //Either from Kiosk or PIR
andcor02 25:cb16c5248769 28 extern bool current_door_trip_value;
erigow01 44:f70163204018 29 extern bool current_accelerometer_value;
andcor02 25:cb16c5248769 30
andcor02 25:cb16c5248769 31
andcor02 30:b74aa0729b07 32
andcor02 25:cb16c5248769 33 //Initialisation
andcor02 25:cb16c5248769 34 void init_sensors();
andcor02 25:cb16c5248769 35
andcor02 25:cb16c5248769 36 //Handle timers/interrupts/etc
andcor02 25:cb16c5248769 37 void handle_temperature_report_timer();
andcor02 25:cb16c5248769 38 void handle_microphone_sample_timer();
andcor02 25:cb16c5248769 39 void handle_microphone_report_timer();
erigow01 26:4cac6b346e4f 40 void handle_motion_report_timer();
andcor02 25:cb16c5248769 41 void handle_door_height_sample_timer();
erigow01 26:4cac6b346e4f 42 void handle_door_trip_report_timer();
erigow01 27:6017a643f386 43 void handle_kiosk_report_timer();
erigow01 44:f70163204018 44 void handle_accelerometer_report_timer();
andcor02 25:cb16c5248769 45
andcor02 25:cb16c5248769 46 #endif // SENSOR_CTL_H_