Compare commits

...

2 Commits

5 changed files with 47 additions and 49 deletions

View File

@ -1,6 +1,7 @@
#!/usr/bin/python
import serial
import os
from datetime import datetime
import influxdb_client
from influxdb_client import InfluxDBClient, Point, WritePrecision
@ -37,7 +38,7 @@ input_normal= [
CLOSED, #// 4 Fume hood flow switch
OPEN, #// 5 Vacuum condition - gnd
CLOSED, #// 6 Tritium monitor
OPEN, #// 7 UNUSED
OPEN, #// 7 Control Room Emergency Switch
CLOSED, #// 8 Power failure
CLOSED, #// 9 Coolant flow - gnd
OPEN, #//10 Vacuum condition - mid
@ -55,7 +56,7 @@ in_txt = [ "Reset Button", #1
"Fume Hood Flow", #4
"Vacuum Gauge 2", #5
"Tritium Monitor", #6
"error: port map", #7
"Emergency Switch", #7
"Bldg Power Fail", #8
"Coolant Flow 2", #9
"Vacuum Gauge 1", #10
@ -74,7 +75,7 @@ in_short_txt = [
"FumeHoodFlow", #4
"VacuumGauge2", #5
"TritiumMonitor", #6
"NotUsed", #7
"EmergencySwitch", #7
"BldgPowerFail", #8
"CoolantFlow2", #9
"VacuumGauge1", #10
@ -171,6 +172,9 @@ while True:
try:
# os.system(cmd)
now = datetime.now() # current date and time
date_time = now.strftime("%m/%d/%Y, %H:%M:%S")
print("==================== date-time:", date_time )
print(point)
print(point2)
print(point3)

View File

@ -63,14 +63,14 @@ STATES currentState = startup;
* Specify the trouble condition each input would trigger
*
******/
STATES alarm[16] = {
const STATES alarm[16] = {
normal, // Reset switch
trouble3, // Emergency source trip switch
trouble1, // Cage door contact
trouble3, // Fume hood flow switch
trouble2, // Vacuum condition - gnd
trouble3, // Tritium monitor
normal, // UNUSED
trouble3, // Control Room Emergency Switch
trouble3, // Power failure
trouble3, // Coolant flow - gnd
trouble2, // Vacuum condition - mid
@ -90,22 +90,22 @@ STATES alarm[16] = {
*****/
bool input_normal[16] = {
OPEN, // Reset switch
CLOSED, // Emergency source trip switch
CLOSED, // Cage door contact
CLOSED, // Fume hood flow switch
OPEN, // Vacuum condition - gnd
CLOSED, // Tritium monitor
OPEN, // UNUSED
CLOSED, // Power failure
CLOSED, // Coolant flow - gnd
OPEN, // Vacuum condition - mid
OPEN, // UNUSED
CLOSED, // Coolant flow - high
OPEN, // Smoke detector - high
OPEN, // UNUSED
OPEN, // UNUSED
OPEN // UNUSED
OPEN, // 0 , lvl= 0, Reset switch
CLOSED, // 1 , lvl= 3, Emergency source trip switch
CLOSED, // 2 , lvl= 1, Cage door contact, level-1
CLOSED, // 3 , lvl= 3, Fume hood flow switch, level-3
OPEN, // 4 , lvl= 2, Vacuum condition - gnd, level-2
CLOSED, // 5 , lvl= 3, Tritium monitor
CLOSED, // 6 , lvl= 3, Control Room Emergency Switch
CLOSED, // 7 , lvl= 3, Power failure
CLOSED, // 8 , lvl= 2, Coolant flow - gnd
OPEN, // 9 , lvl= 2, Vacuum condition - mid
OPEN, // 10 , lvl= 0, UNUSED
CLOSED, // 11 , lvl= 2, Coolant flow - high
OPEN, // 12 , lvl= 3, Smoke detector - high
OPEN, // 13 , lvl= 0, UNUSED
OPEN, // 14 , lvl= 0, UNUSED
OPEN // 15 , lvl= 0, UNUSED
};
@ -141,7 +141,7 @@ String in_txt[] = { "Reset Button",
"Fume Hood Flow",
"Vacuum Gauge 2",
"Tritium Monitor",
"error: port map",
"Control Room Emergency Switch",
"Bldg Power Fail",
"Coolant Flow 2",
"Vacuum Gauge 1",

View File

@ -30,8 +30,8 @@ int lcdLooper = 0;
int lcdLine2 = 16;
// Timer for Serial output
unsigned long previousMillis = 0;
const unsigned long interval = 5000; // 1000 milliseconds = 1 second
const unsigned long interval = 100; // 1000 milliseconds = 1 second
unsigned int count = 0;
/*******
*Setup function runs once on startup
@ -97,7 +97,11 @@ void loop() {
delay(2000);
if (P1.readDiscrete(in1) == CLOSED){ //Reset to normal condition
newState = normal;
}
} //unsigned long currentMillis = millis();
//if (currentMillis - previousMillis >= interval) {
//Serial.print("server is at ");
//Serial.println(Ethernet.localIP());
}
// Check the inputs and update the state
@ -110,12 +114,8 @@ void loop() {
// Reset the watchdog timer
P1.petWD();
unsigned long currentMillis = millis();
if (currentMillis - previousMillis >= interval) {
//Serial.print("server is at ");
//Serial.println(Ethernet.localIP());
if( count % 50 == 0 ) {
Serial.print("State: ");
Serial.print(currentState);
Serial.print(";");
@ -137,7 +137,11 @@ void loop() {
Serial.print(";");
}
Serial.println("");
previousMillis = currentMillis; // Reset the timer
count = 0;
}
delay(interval);
count ++;
}

View File

@ -17,7 +17,7 @@
#define in4 1,4 // Fume hood flow switch
#define in5 1,5 // Vacuum condition - gnd
#define in6 1,6 // Tritium monitor
#define in7 1,7 // UNUSED
#define in7 1,7 // Control Room Emergency trip
#define in8 1,8 // Power failure
#define in9 1,9 // Coolant flow - gnd
#define in10 1,10 // Vacuum condition - mid

View File

@ -29,6 +29,7 @@ void app_Tasks(void){
}
// Read analog values and scale to the unit ranges
analog1 = P1.readAnalog(anin1)*10.0/8191.0; // voltage
analog2 = P1.readAnalog(anin2)*10.0/8191.0; // voltage
@ -45,23 +46,12 @@ void app_Tasks(void){
// If there's a new alarm or a higher priority alarm, execute the new functions
if (newState > currentState) {
if (currentState == startup) {
normal_state();
}
if (currentState == startup) normal_state();
switch (newState) {
case trouble1:
trouble1_state();
break;
case trouble2:
trouble2_state();
break;
case trouble3:
trouble3_state();
break;
case trouble1:trouble1_state();break;
case trouble2:trouble2_state();break;
case trouble3:trouble3_state();break;
}
} else if (newState == normal) {