Newer
Older
import coloredlogs
import logging
import requests
import json
import redis
def main():
with open('anselm/config.json') as json_config_file:
config = json.load(json_config_file)
log = logging.getLogger()
coloredlogs.install( level="INFO", logger=log)
ssmp = config.get("ssmp")
db = config.get("couchdb")
relay = config.get("relay")
r = config.get("redis")
rs = redis.StrictRedis(host=r.get("host"), port=r.get("port"), db=r.get("DB"), decode_responses=True)
req = requests.post("http://{}:{}".format(relay.get("host"), relay.get("port")), data=json.dumps(data))
log.info("{:>50}".format("relayServer ({}) [ok]".format(res.get('Result'))))
# check ppc4
log.info("{:*<50}".format("check ppc4 (unit Pa)"))
data = {'Action': 'TCP', "Host": "e75443", "Port":"5302", "Value":"UNIT\r"}
req = requests.post("http://{}:{}".format(relay.get("host"), relay.get("port")), data=json.dumps(data))
res = req.json()
if "Result" in res and res['Result'] == "Pa a\r\n":
log.info("{:>50}".format("ppc4 [ok]"))
else:
log.error("{:>50}".format("ppc4 [fail]"))
sys.exit("check PPC4 rs232, port 3 at e75443, check unit Pa")
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
# check p_fill modbus/CDGs
log.info("{:*<50}".format("check filling pressure CDGs"))
data = {'Action': 'MODBUS', "Host": "e75451", "Address": 0, "Quantity": 48, "FunctionCode": "ReadInputRegisters", "OutMode": "Buffer",}
req = requests.post("http://{}:{}".format(relay.get("host"), relay.get("port")), data=json.dumps(data))
res = req.json()
if "Result" in res and "data" in res['Result'] and len( res['Result']['data']) == 96:
log.info("{:>50}".format("filling pressure CDGs [ok]"))
else:
log.error("{:>50}".format("filling pressure CDGs [fail]"))
sys.exit("Modbus e75451")
# check add-vol-cdg/check standard modbus/CDGs
log.info("{:*<50}".format("check ad. vol. CDG"))
data = {'Action': 'MODBUS', "Host": "e75480", "Address": 0, "Quantity": 8, "FunctionCode": "ReadInputRegisters", "OutMode": "Buffer",}
req = requests.post("http://{}:{}".format(relay.get("host"), relay.get("port")), data=json.dumps(data))
res = req.json()
if "Result" in res and "data" in res['Result'] and len( res['Result']['data']) == 16:
log.info("{:>50}".format("ad. vol. CDG [ok]"))
else:
log.error("{:>50}".format("ad. vol. CDG [fail]"))
sys.exit("Modbus e75451")
# temperature keithley
log.info("{:*<50}".format("temperature keithley"))
data = {'Action': 'VXI11', "Host": "e75440", "Device":"inst0", "Value": "return_50()\n"}
req = requests.post("http://{}:{}".format(relay.get("host"), relay.get("port")), data=json.dumps(data))
res = req.json()
if "Result" in res and len(res['Result']) == 51:
log.info("{:>50}".format("temperature keithley [ok]"))
else:
log.error("{:>50}".format("temperature keithley [fail]"))
sys.exit("configure servos, use mpd-se3-servo")
# check servos
# node 1
log.info("{:*<50}".format("check servo node 1 (cont. current)"))
data = {'Action': 'TCP', "Host": "e75443", "Port":"5301", "Value":"1GCC\r"}
req = requests.post("http://{}:{}".format(relay.get("host"), relay.get("port")), data=json.dumps(data))
res = req.json()
if "Result" in res and float(res['Result']) == 600:
log.info("{:>50}".format("node 1 [ok]"))
else:
log.error("{:>50}".format("node 1 [fail]"))
sys.exit("configure servos, use mpd-se3-servo")
# node 2
log.info("{:*<50}".format("check servo node 2 (cont. current)"))
data = {'Action': 'TCP', "Host": "e75443", "Port":"5300", "Value":"2GCC\r"}
req = requests.post("http://{}:{}".format(relay.get("host"), relay.get("port")), data=json.dumps(data))
res = req.json()
if "Result" in res and float(res['Result']) == 600:
log.info("{:>50}".format("node 2 [ok]"))
else:
log.error("{:>50}".format("node 2 [fail]"))
sys.exit("configure servos, use mpd-se3-servo")
# node 3
log.info("{:*<50}".format("check servo node 3 (cont. current)"))
data = {'Action': 'TCP', "Host": "e75443", "Port":"5301", "Value":"3GCC\r"}
req = requests.post("http://{}:{}".format(relay.get("host"), relay.get("port")), data=json.dumps(data))
res = req.json()
if "Result" in res and float(res['Result']) == 600:
log.info("{:>50}".format("node 3 [ok]"))
else:
log.error("{:>50}".format("node 3 [fail]"))
sys.exit("configure servos, use mpd-se3-servo")
# node 4
log.info("{:*<50}".format("check servo node 4 (cont. current)"))
data = {'Action': 'TCP', "Host": "e75443", "Port":"5300", "Value":"4GCC\r"}
req = requests.post("http://{}:{}".format(relay.get("host"), relay.get("port")), data=json.dumps(data))
res = req.json()
if "Result" in res and float(res['Result']) == 600:
log.info("{:>50}".format("node 4 [ok]"))
else:
log.error("{:>50}".format("node 4 [fail]"))
sys.exit("configure servos, use mpd-se3-servo")
# node 5
log.info("{:*<50}".format("check servo node 5 (cont. current)"))
data = {'Action': 'TCP', "Host": "e75443", "Port":"5301", "Value":"5GCC\r"}
req = requests.post("http://{}:{}".format(relay.get("host"), relay.get("port")), data=json.dumps(data))
res = req.json()
if "Result" in res and float(res['Result']) == 600:
log.info("{:>50}".format("node 5 [ok]"))
else:
log.error("{:>50}".format("node 5 [fail]"))
sys.exit("configure servos, use mpd-se3-servo")
# node 6
log.info("{:*<50}".format("check servo node 6 (cont. current)"))
data = {'Action': 'TCP', "Host": "e75443", "Port":"5300", "Value":"6GCC\r"}
req = requests.post("http://{}:{}".format(relay.get("host"), relay.get("port")), data=json.dumps(data))
res = req.json()
if "Result" in res and float(res['Result']) == 600:
log.info("{:>50}".format("node 6 [ok]"))
else:
log.error("{:>50}".format("node 6 [fail]"))
sys.exit("configure servos, use mpd-se3-servo")
# check vl_db_work
req = requests.get("http://{}:{}/{}".format(db.get("host"), db.get("port"), db.get("database")))
res = req.json()
if 'db_name' in res:
req = requests.get("http://{}:{}/{}/meta".format(ssmp.get("host"), ssmp.get("port"), ssmp.get("mpd_valves_id")))
res = req.json()
if 'id' in res:
req = requests.get("http://{}:{}/{}/meta".format(ssmp.get("host"), ssmp.get("port"), ssmp.get("mpd_servo_id")))
res = req.json()
if 'id' in res:
# state mpd
log.info("{:*<50}".format("check state mpd"))
req = requests.get("http://{}:{}/{}/meta".format(ssmp.get("host"), ssmp.get("port"), ssmp.get("mpd_state_id")))
res = req.json()
if 'id' in res:
log.info("{:>50}".format("state mp [ok]"))
else:
log.error("{:>50}".format("state mp [fail]"))
sys.exit("load mpd-se3-state")
# branches closed
log.info("{:*<50}".format("check all dut branch flanged blind"))
ok = input("all dut flanges closed? [y|n]: ")
if ok == "y":
log.info("{:>50}".format("duts [ok]"))
else:
log.error("{:>50}".format("duts [fail]"))
sys.exit("close dut branches")
# gas supply
log.info("{:*<50}".format("check gas supply"))
ok = input("gas bottel open, pressure ok? [y|n]: ")
if ok == "y":
log.info("{:>50}".format("gas supply [ok]"))
else:
log.error("{:>50}".format("gas supply [fail]"))
sys.exit("ensure gas supply")