-
-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathtest-fire.py
70 lines (56 loc) · 1.43 KB
/
test-fire.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
import time
import io_relay
import io_temp
import io_current
def TestSensors():
print("Reset Current Sensor")
io_current.Reset()
print("Relays on")
io_relay.SetState(0,True)
io_relay.SetState(1,True)
i = 0
while i < 10:
i += 1
print("")
print(str(io_temp.GetTemp()))
print(str(io_current.GetVoltage()))
print(str(io_current.IsConnected()))
time.sleep(3)
print("Relays off")
print(str(io_temp.GetTemp()))
io_relay.SetState(0,False)
io_relay.SetState(1,False)
time.sleep(1)
print(str(io_current.GetVoltage()))
print(str(io_current.IsConnected()))
def RelaySelfTest():
# Test both relays off
io_relay.AllOff()
time.sleep(0.5)
if io_current.IsConnected():
return "ERROR: Electricity Detected when both relays are off, unplug now! Possible faulty relays or current sensor"
time.sleep(0.5)
# Test Relay 1
io_relay.SetState(0,False)
io_relay.SetState(1,True)
time.sleep(0.5)
if io_current.IsConnected():
io_relay.AllOff()
return "ERROR: Relay 1 is Bad, replace Relay 1"
time.sleep(0.5)
# Test Relay 2
io_relay.SetState(0,True)
io_relay.SetState(1,False)
time.sleep(0.5)
if io_current.IsConnected():
return "ERROR: Relay 2 is Bad, replace Relay 2"
time.sleep(0.5)
# Test Current Sensor
io_relay.AllOn()
time.sleep(0.5)
if io_current.IsConnected():
io_relay.AllOff()
return "Relay Self Test Success"
io_relay.AllOff()
return "Error: Current Sensor Failed to detect current"
print(RelaySelfTest())