93 lines
3.8 KiB
Python
93 lines
3.8 KiB
Python
import readTag
|
|
import writeTag
|
|
from time import sleep
|
|
import sys
|
|
|
|
def main():
|
|
print ("Getting original limits...")
|
|
read_min = readTag.main("Input_Inclinometer_AIN.Cfg_InpRawMin")
|
|
if read_min['status']== 'success':
|
|
prev_min = read_min['value']
|
|
print ("Previous Min. Value: {0}".format(prev_min))
|
|
else:
|
|
print("Could not find previous min. value.")
|
|
print("Error: {0}".format(read_min['message']))
|
|
sys.exit(1)
|
|
|
|
read_max = readTag.main("Input_Inclinometer_AIN.Cfg_InpRawMax")
|
|
if read_max['status']== 'success':
|
|
prev_max = read_max['value']
|
|
print ("Previous Max. Value: {0}".format(prev_max))
|
|
else:
|
|
print("Could not find previous max. value.")
|
|
print("Error: {0}".format(read_max['message']))
|
|
sys.exit(1)
|
|
|
|
write_calibrate = writeTag.main("Input_Inclinometer_Calibrate", 1)
|
|
if write_calibrate['status']== 'success':
|
|
sleep(2)
|
|
unset_calibrate = writeTag.main("Input_Inclinometer_Calibrate", 0)
|
|
if unset_calibrate['status']== 'success':
|
|
check_calibrating = readTag.main("Inclinometer_Calibrating")
|
|
if check_calibrating['status']== 'success' and check_calibrating['value']== 1:
|
|
print ("Successfully Initiated Calibration...")
|
|
i = 0
|
|
while i < 30:
|
|
x = 2
|
|
print("[{0} s. Remaining] - Waiting for calibration".format(30 - i))
|
|
sleep(x)
|
|
i = i + x
|
|
|
|
check_calibrating_again = readTag.main("Inclinometer_Calibrating")
|
|
if check_calibrating_again['status']== 'success' and check_calibrating_again['value']== 0:
|
|
print ("Successfully Completed Calibration...")
|
|
|
|
read_min_again = readTag.main("Input_Inclinometer_AIN.Cfg_InpRawMin")
|
|
if read_min_again['status']== 'success':
|
|
new_min = read_min_again['value']
|
|
print ("New Min. Value: {0}".format(new_min))
|
|
else:
|
|
print("Could not find new min. value.")
|
|
print("Error: {0}".format(read_min_again['message']))
|
|
sys.exit(1)
|
|
|
|
read_max_again = readTag.main("Input_Inclinometer_AIN.Cfg_InpRawMax")
|
|
if read_max_again['status']== 'success':
|
|
new_max = read_max_again['value']
|
|
print ("New Max. Value: {0}".format(new_max))
|
|
else:
|
|
print("Could not find new max. value.")
|
|
print("Error: {0}".format(read_max_again['message']))
|
|
sys.exit(1)
|
|
|
|
print("Calibration process complete. Thanks for playing...")
|
|
|
|
else:
|
|
if check_calibrating_again['message']:
|
|
print("Error reading Inclinometer_Calibrating")
|
|
print("Error: {0}".format(write_calibrate['message']))
|
|
else:
|
|
print("Calibration still running. Something went wrong.")
|
|
sys.exit(1)
|
|
|
|
else:
|
|
if write_calibrate['message']:
|
|
print("Error reading Inclinometer_Calibrating")
|
|
print("Error: {0}".format(write_calibrate['message']))
|
|
else:
|
|
print("Calibration not started. Is the pump running?")
|
|
sys.exit(1)
|
|
|
|
else:
|
|
print("Could not write 0 to Input_Inclinometer_Calibrate")
|
|
print("Error: {0}".format(write_calibrate['message']))
|
|
sys.exit(1)
|
|
|
|
else:
|
|
print("Could not write 1 to Input_Inclinometer_Calibrate")
|
|
print("Error: {0}".format(write_calibrate['message']))
|
|
sys.exit(1)
|
|
|
|
if __name__ == '__main__':
|
|
main()
|