diff --git a/POCloud_Driver/ipp.py b/POCloud_Driver/ipp.py index 76e1a30..81cc80f 100644 --- a/POCloud_Driver/ipp.py +++ b/POCloud_Driver/ipp.py @@ -1,36 +1,18 @@ #!/usr/bin/python -import types -import traceback -import binascii import threading import time -import thread -import os -import struct -import sys -import serial -import minimalmodbus import pickle -import re from device_base import deviceBase import micro800 as u800 -import requests -try: - import json -except: - import simplejson as json - min_upload_time = 30 addr = '10.20.4.5' - - - class start(threading.Thread, deviceBase): channels = {} + def updateGPS(self): gps = self.mcu.gps print("GPS found me at {0}".format(gps)) @@ -55,10 +37,8 @@ class start(threading.Thread, deviceBase): threading.Thread.start(self) self.sendtodbJSON("device_address", self.device_address, 0) self.setupChannels() - # self.run() - - # self.updateGPS() + # this is a required function for all drivers, its goal is to upload some piece of data # about your device so it can be seen on the web def register(self): @@ -77,7 +57,7 @@ class start(threading.Thread, deviceBase): valData = u800.readMicroTag(self.device_address, self.channels[i]['tag']) print(valData) if valData: - nowVal = valData[0] + nowVal = round(valData[0], 4) ch = self.channels[i] if ch['data_type'] == "BOOL": if ch['last_value'] == "": @@ -117,6 +97,7 @@ class start(threading.Thread, deviceBase): print self.channels self.setupChannels() time.sleep(30) + def write_vfdconfig(self): print("Writing config to drive") return u800.writeMicroTag(addr, 'VFD_Write', 1) @@ -130,499 +111,499 @@ class start(threading.Thread, deviceBase): return True def vfdipp_gpsUpdate(self, name, value): - updateGPS() + self.updateGPS() return True # ======== AUTOMATICALLY GENERATED TAG WRITE FUNCTIONS BELOW HERE =========== def vfdipp_cfgCFLASetting(self, name, value): - print('trying to set cfg_C_FLASetting to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_C_FLASetting', float(value)) + print('trying to set cfg_C_FLASetting to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_C_FLASetting', float(value)) def vfdipp_cfgCTripEnableControl(self, name, value): - print('trying to set cfg_C_TripEnableControl to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_C_TripEnableControl', int(value)) + print('trying to set cfg_C_TripEnableControl to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_C_TripEnableControl', int(value)) def vfdipp_cfgCWarningEnableControl(self, name, value): - print('trying to set cfg_C_WarningEnableControl to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_C_WarningEnableControl', int(value)) + print('trying to set cfg_C_WarningEnableControl to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_C_WarningEnableControl', int(value)) def vfdipp_cfgClearTripCountAfter(self, name, value): - print('trying to set cfg_ClearTripCountAfter to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_ClearTripCountAfter', int(value)) + print('trying to set cfg_ClearTripCountAfter to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_ClearTripCountAfter', int(value)) def vfdipp_cfgGFGroundFaultInhibitTime(self, name, value): - print('trying to set cfg_GF_GroundFaultInhibitTime to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_GF_GroundFaultInhibitTime', int(value)) + print('trying to set cfg_GF_GroundFaultInhibitTime to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_GF_GroundFaultInhibitTime', int(value)) def vfdipp_cfgGFGroundFaultTripDelay(self, name, value): - print('trying to set cfg_GF_GroundFaultTripDelay to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_GF_GroundFaultTripDelay', float(value)) + print('trying to set cfg_GF_GroundFaultTripDelay to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_GF_GroundFaultTripDelay', float(value)) def vfdipp_cfgGFGroundFaultTripLevel(self, name, value): - print('trying to set cfg_GF_GroundFaultTripLevel to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_GF_GroundFaultTripLevel', float(value)) + print('trying to set cfg_GF_GroundFaultTripLevel to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_GF_GroundFaultTripLevel', float(value)) def vfdipp_cfgGFGroundFaultWarningDelay(self, name, value): - print('trying to set cfg_GF_GroundFaultWarningDelay to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_GF_GroundFaultWarningDelay', float(value)) + print('trying to set cfg_GF_GroundFaultWarningDelay to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_GF_GroundFaultWarningDelay', float(value)) def vfdipp_cfgGFGroundFaultWarningLevel(self, name, value): - print('trying to set cfg_GF_GroundFaultWarningLevel to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_GF_GroundFaultWarningLevel', float(value)) + print('trying to set cfg_GF_GroundFaultWarningLevel to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_GF_GroundFaultWarningLevel', float(value)) def vfdipp_cfgICTPrimary(self, name, value): - print('trying to set cfg_I_CTPrimary to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_I_CTPrimary', int(value)) + print('trying to set cfg_I_CTPrimary to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_I_CTPrimary', int(value)) def vfdipp_cfgICTSecondary(self, name, value): - print('trying to set cfg_I_CTSecondary to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_I_CTSecondary', int(value)) + print('trying to set cfg_I_CTSecondary to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_I_CTSecondary', int(value)) def vfdipp_cfgICurrentImbalanceInhibitTime(self, name, value): - print('trying to set cfg_I_CurrentImbalanceInhibitTime to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_I_CurrentImbalanceInhibitTime', int(value)) + print('trying to set cfg_I_CurrentImbalanceInhibitTime to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_I_CurrentImbalanceInhibitTime', int(value)) def vfdipp_cfgICurrentImbalanceTripDelay(self, name, value): - print('trying to set cfg_I_CurrentImbalanceTripDelay to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_I_CurrentImbalanceTripDelay', int(value)) + print('trying to set cfg_I_CurrentImbalanceTripDelay to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_I_CurrentImbalanceTripDelay', int(value)) def vfdipp_cfgICurrentImbalanceTripLevel(self, name, value): - print('trying to set cfg_I_CurrentImbalanceTripLevel to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_I_CurrentImbalanceTripLevel', int(value)) + print('trying to set cfg_I_CurrentImbalanceTripLevel to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_I_CurrentImbalanceTripLevel', int(value)) def vfdipp_cfgICurrentImbalanceWarningLevel(self, name, value): - print('trying to set cfg_I_CurrentImbalanceWarningLevel to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_I_CurrentImbalanceWarningLevel', int(value)) + print('trying to set cfg_I_CurrentImbalanceWarningLevel to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_I_CurrentImbalanceWarningLevel', int(value)) def vfdipp_cfgIJamInhibitTime(self, name, value): - print('trying to set cfg_I_JamInhibitTime to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_I_JamInhibitTime', int(value)) + print('trying to set cfg_I_JamInhibitTime to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_I_JamInhibitTime', int(value)) def vfdipp_cfgIJamTripDelay(self, name, value): - print('trying to set cfg_I_JamTripDelay to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_I_JamTripDelay', int(value)) + print('trying to set cfg_I_JamTripDelay to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_I_JamTripDelay', int(value)) def vfdipp_cfgIJamWarningLevel(self, name, value): - print('trying to set cfg_I_JamWarningLevel to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_I_JamWarningLevel', int(value)) + print('trying to set cfg_I_JamWarningLevel to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_I_JamWarningLevel', int(value)) def vfdipp_cfgILineLossInhibitTime(self, name, value): - print('trying to set cfg_I_LineLossInhibitTime to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_I_LineLossInhibitTime', int(value)) + print('trying to set cfg_I_LineLossInhibitTime to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_I_LineLossInhibitTime', int(value)) def vfdipp_cfgILineLossTripDelay(self, name, value): - print('trying to set cfg_I_LineLossTripDelay to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_I_LineLossTripDelay', float(value)) + print('trying to set cfg_I_LineLossTripDelay to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_I_LineLossTripDelay', float(value)) def vfdipp_cfgIOvercurrentInhibitTime(self, name, value): - print('trying to set cfg_I_OvercurrentInhibitTime to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_I_OvercurrentInhibitTime', int(value)) + print('trying to set cfg_I_OvercurrentInhibitTime to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_I_OvercurrentInhibitTime', int(value)) def vfdipp_cfgIOvercurrentTripDelay(self, name, value): - print('trying to set cfg_I_OvercurrentTripDelay to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_I_OvercurrentTripDelay', float(value)) + print('trying to set cfg_I_OvercurrentTripDelay to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_I_OvercurrentTripDelay', float(value)) def vfdipp_cfgIOvercurrentTripLevel(self, name, value): - print('trying to set cfg_I_OvercurrentTripLevel to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_I_OvercurrentTripLevel', int(value)) + print('trying to set cfg_I_OvercurrentTripLevel to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_I_OvercurrentTripLevel', int(value)) def vfdipp_cfgIOvercurrentWarningLevel(self, name, value): - print('trying to set cfg_I_OvercurrentWarningLevel to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_I_OvercurrentWarningLevel', int(value)) + print('trying to set cfg_I_OvercurrentWarningLevel to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_I_OvercurrentWarningLevel', int(value)) def vfdipp_cfgIStallEnabledTime(self, name, value): - print('trying to set cfg_I_StallEnabledTime to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_I_StallEnabledTime', int(value)) + print('trying to set cfg_I_StallEnabledTime to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_I_StallEnabledTime', int(value)) def vfdipp_cfgIStallTripLevel(self, name, value): - print('trying to set cfg_I_StallTripLevel to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_I_StallTripLevel', int(value)) + print('trying to set cfg_I_StallTripLevel to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_I_StallTripLevel', int(value)) def vfdipp_cfgIUndercurrentInhibitTime(self, name, value): - print('trying to set cfg_I_UndercurrentInhibitTime to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_I_UndercurrentInhibitTime', int(value)) + print('trying to set cfg_I_UndercurrentInhibitTime to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_I_UndercurrentInhibitTime', int(value)) def vfdipp_cfgIUndercurrentTripDelay(self, name, value): - print('trying to set cfg_I_UndercurrentTripDelay to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_I_UndercurrentTripDelay', float(value)) + print('trying to set cfg_I_UndercurrentTripDelay to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_I_UndercurrentTripDelay', float(value)) def vfdipp_cfgIUndercurrentTripLevel(self, name, value): - print('trying to set cfg_I_UndercurrentTripLevel to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_I_UndercurrentTripLevel', int(value)) + print('trying to set cfg_I_UndercurrentTripLevel to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_I_UndercurrentTripLevel', int(value)) def vfdipp_cfgIUndercurrentWarningLevel(self, name, value): - print('trying to set cfg_I_UndercurrentWarningLevel to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_I_UndercurrentWarningLevel', int(value)) + print('trying to set cfg_I_UndercurrentWarningLevel to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_I_UndercurrentWarningLevel', int(value)) def vfdipp_cfgIUnderloadInhibitTime(self, name, value): - print('trying to set cfg_I_UnderloadInhibitTime to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_I_UnderloadInhibitTime', int(value)) + print('trying to set cfg_I_UnderloadInhibitTime to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_I_UnderloadInhibitTime', int(value)) def vfdipp_cfgIUnderloadTripDelay(self, name, value): - print('trying to set cfg_I_UnderloadTripDelay to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_I_UnderloadTripDelay', float(value)) + print('trying to set cfg_I_UnderloadTripDelay to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_I_UnderloadTripDelay', float(value)) def vfdipp_cfgIUnderloadTripLevel(self, name, value): - print('trying to set cfg_I_UnderloadTripLevel to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_I_UnderloadTripLevel', int(value)) + print('trying to set cfg_I_UnderloadTripLevel to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_I_UnderloadTripLevel', int(value)) def vfdipp_cfgIUnderloadWarningLevel(self, name, value): - print('trying to set cfg_I_UnderloadWarningLevel to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_I_UnderloadWarningLevel', int(value)) + print('trying to set cfg_I_UnderloadWarningLevel to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_I_UnderloadWarningLevel', int(value)) def vfdipp_cfgOverloadTripCountLimit(self, name, value): - print('trying to set cfg_OverloadTripCountLimit to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_OverloadTripCountLimit', int(value)) + print('trying to set cfg_OverloadTripCountLimit to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_OverloadTripCountLimit', int(value)) def vfdipp_cfgPLPhaseLossInhibitTime(self, name, value): - print('trying to set cfg_PL_PhaseLossInhibitTime to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_PL_PhaseLossInhibitTime', int(value)) + print('trying to set cfg_PL_PhaseLossInhibitTime to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_PL_PhaseLossInhibitTime', int(value)) def vfdipp_cfgPLPhaseLossTripDelay(self, name, value): - print('trying to set cfg_PL_PhaseLossTripDelay to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_PL_PhaseLossTripDelay', float(value)) + print('trying to set cfg_PL_PhaseLossTripDelay to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_PL_PhaseLossTripDelay', float(value)) def vfdipp_cfgREAD(self, name, value): - print('trying to set cfg_READ to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_READ', int(value)) + print('trying to set cfg_READ to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_READ', int(value)) def vfdipp_cfgSpecificGravity(self, name, value): - print('trying to set cfg_SpecificGravity to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_SpecificGravity', float(value)) + print('trying to set cfg_SpecificGravity to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_SpecificGravity', float(value)) def vfdipp_cfgTCUTripClass(self, name, value): - print('trying to set cfg_TCU_TripClass to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_TCU_TripClass', int(value)) + print('trying to set cfg_TCU_TripClass to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_TCU_TripClass', int(value)) def vfdipp_cfgTimerModeEnabled(self, name, value): - print('trying to set cfg_TimerModeEnabled to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_TimerModeEnabled', int(value)) + print('trying to set cfg_TimerModeEnabled to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_TimerModeEnabled', int(value)) def vfdipp_cfgTimerRunTime(self, name, value): - print('trying to set cfg_TimerRunTime to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_TimerRunTime', int(value)) + print('trying to set cfg_TimerRunTime to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_TimerRunTime', int(value)) def vfdipp_cfgTimerWaitTime(self, name, value): - print('trying to set cfg_TimerWaitTime to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_TimerWaitTime', int(value)) + print('trying to set cfg_TimerWaitTime to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_TimerWaitTime', int(value)) def vfdipp_cfgTripCountLimit(self, name, value): - print('trying to set cfg_TripCountLimit to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_TripCountLimit', int(value)) + print('trying to set cfg_TripCountLimit to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_TripCountLimit', int(value)) def vfdipp_cfgVOverfrequencyInhibitTime(self, name, value): - print('trying to set cfg_V_OverfrequencyInhibitTime to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_V_OverfrequencyInhibitTime', int(value)) + print('trying to set cfg_V_OverfrequencyInhibitTime to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_V_OverfrequencyInhibitTime', int(value)) def vfdipp_cfgVOverfrequencyTripDelay(self, name, value): - print('trying to set cfg_V_OverfrequencyTripDelay to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_V_OverfrequencyTripDelay', float(value)) + print('trying to set cfg_V_OverfrequencyTripDelay to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_V_OverfrequencyTripDelay', float(value)) def vfdipp_cfgVOverfrequencyTripLevel(self, name, value): - print('trying to set cfg_V_OverfrequencyTripLevel to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_V_OverfrequencyTripLevel', int(value)) + print('trying to set cfg_V_OverfrequencyTripLevel to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_V_OverfrequencyTripLevel', int(value)) def vfdipp_cfgVOverfrequencyWarningLevel(self, name, value): - print('trying to set cfg_V_OverfrequencyWarningLevel to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_V_OverfrequencyWarningLevel', int(value)) + print('trying to set cfg_V_OverfrequencyWarningLevel to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_V_OverfrequencyWarningLevel', int(value)) def vfdipp_cfgVOvervoltageInhibitTime(self, name, value): - print('trying to set cfg_V_OvervoltageInhibitTime to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_V_OvervoltageInhibitTime', int(value)) + print('trying to set cfg_V_OvervoltageInhibitTime to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_V_OvervoltageInhibitTime', int(value)) def vfdipp_cfgVOvervoltageTripDelay(self, name, value): - print('trying to set cfg_V_OvervoltageTripDelay to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_V_OvervoltageTripDelay', float(value)) + print('trying to set cfg_V_OvervoltageTripDelay to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_V_OvervoltageTripDelay', float(value)) def vfdipp_cfgVOvervoltageTripLevel(self, name, value): - print('trying to set cfg_V_OvervoltageTripLevel to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_V_OvervoltageTripLevel', float(value)) + print('trying to set cfg_V_OvervoltageTripLevel to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_V_OvervoltageTripLevel', float(value)) def vfdipp_cfgVOvervoltageWarningLevel(self, name, value): - print('trying to set cfg_V_OvervoltageWarningLevel to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_V_OvervoltageWarningLevel', float(value)) + print('trying to set cfg_V_OvervoltageWarningLevel to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_V_OvervoltageWarningLevel', float(value)) def vfdipp_cfgVPTPrimary(self, name, value): - print('trying to set cfg_V_PTPrimary to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_V_PTPrimary', int(value)) + print('trying to set cfg_V_PTPrimary to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_V_PTPrimary', int(value)) def vfdipp_cfgVPTSecondary(self, name, value): - print('trying to set cfg_V_PTSecondary to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_V_PTSecondary', int(value)) + print('trying to set cfg_V_PTSecondary to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_V_PTSecondary', int(value)) def vfdipp_cfgVPhaseRotationInhibitTime(self, name, value): - print('trying to set cfg_V_PhaseRotationInhibitTime to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_V_PhaseRotationInhibitTime', int(value)) + print('trying to set cfg_V_PhaseRotationInhibitTime to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_V_PhaseRotationInhibitTime', int(value)) def vfdipp_cfgVPhaseRotationTripType(self, name, value): - print('trying to set cfg_V_PhaseRotationTripType to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_V_PhaseRotationTripType', int(value)) + print('trying to set cfg_V_PhaseRotationTripType to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_V_PhaseRotationTripType', int(value)) def vfdipp_cfgVUnderfrequencyInhibitTime(self, name, value): - print('trying to set cfg_V_UnderfrequencyInhibitTime to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_V_UnderfrequencyInhibitTime', int(value)) + print('trying to set cfg_V_UnderfrequencyInhibitTime to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_V_UnderfrequencyInhibitTime', int(value)) def vfdipp_cfgVUnderfrequencyTripDelay(self, name, value): - print('trying to set cfg_V_UnderfrequencyTripDelay to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_V_UnderfrequencyTripDelay', float(value)) + print('trying to set cfg_V_UnderfrequencyTripDelay to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_V_UnderfrequencyTripDelay', float(value)) def vfdipp_cfgVUnderfrequencyTripLevel(self, name, value): - print('trying to set cfg_V_UnderfrequencyTripLevel to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_V_UnderfrequencyTripLevel', int(value)) + print('trying to set cfg_V_UnderfrequencyTripLevel to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_V_UnderfrequencyTripLevel', int(value)) def vfdipp_cfgVUnderfrequencyWarningLevel(self, name, value): - print('trying to set cfg_V_UnderfrequencyWarningLevel to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_V_UnderfrequencyWarningLevel', int(value)) + print('trying to set cfg_V_UnderfrequencyWarningLevel to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_V_UnderfrequencyWarningLevel', int(value)) def vfdipp_cfgVUndervoltageInhibitTime(self, name, value): - print('trying to set cfg_V_UndervoltageInhibitTime to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_V_UndervoltageInhibitTime', int(value)) + print('trying to set cfg_V_UndervoltageInhibitTime to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_V_UndervoltageInhibitTime', int(value)) def vfdipp_cfgVUndervoltageTripDelay(self, name, value): - print('trying to set cfg_V_UndervoltageTripDelay to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_V_UndervoltageTripDelay', float(value)) + print('trying to set cfg_V_UndervoltageTripDelay to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_V_UndervoltageTripDelay', float(value)) def vfdipp_cfgVUndervoltageTripLevel(self, name, value): - print('trying to set cfg_V_UndervoltageTripLevel to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_V_UndervoltageTripLevel', float(value)) + print('trying to set cfg_V_UndervoltageTripLevel to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_V_UndervoltageTripLevel', float(value)) def vfdipp_cfgVUndervoltageWarningLevel(self, name, value): - print('trying to set cfg_V_UndervoltageWarningLevel to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_V_UndervoltageWarningLevel', float(value)) + print('trying to set cfg_V_UndervoltageWarningLevel to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_V_UndervoltageWarningLevel', float(value)) def vfdipp_cfgVVoltageImbalanceInhibitTime(self, name, value): - print('trying to set cfg_V_VoltageImbalanceInhibitTime to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_V_VoltageImbalanceInhibitTime', int(value)) + print('trying to set cfg_V_VoltageImbalanceInhibitTime to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_V_VoltageImbalanceInhibitTime', int(value)) def vfdipp_cfgVVoltageImbalanceTripDelay(self, name, value): - print('trying to set cfg_V_VoltageImbalanceTripDelay to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_V_VoltageImbalanceTripDelay', float(value)) + print('trying to set cfg_V_VoltageImbalanceTripDelay to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_V_VoltageImbalanceTripDelay', float(value)) def vfdipp_cfgVVoltageImbalanceTripLevel(self, name, value): - print('trying to set cfg_V_VoltageImbalanceTripLevel to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_V_VoltageImbalanceTripLevel', int(value)) + print('trying to set cfg_V_VoltageImbalanceTripLevel to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_V_VoltageImbalanceTripLevel', int(value)) def vfdipp_cfgVVoltageImbalanceWarningLevel(self, name, value): - print('trying to set cfg_V_VoltageImbalanceWarningLevel to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_V_VoltageImbalanceWarningLevel', int(value)) + print('trying to set cfg_V_VoltageImbalanceWarningLevel to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_V_VoltageImbalanceWarningLevel', int(value)) def vfdipp_cfgVVoltageMode(self, name, value): - print('trying to set cfg_V_VoltageMode to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_V_VoltageMode', int(value)) + print('trying to set cfg_V_VoltageMode to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_V_VoltageMode', int(value)) def vfdipp_cfgWRITE(self, name, value): - print('trying to set cfg_WRITE to {}'.format(value)) - return u800.writeMicroTag(addr, 'cfg_WRITE', int(value)) + print('trying to set cfg_WRITE to {}'.format(value)) + return u800.writeMicroTag(addr, 'cfg_WRITE', int(value)) def vfdipp_downtimeTimeParameter(self, name, value): - print('trying to set Downtime_Time_Parameter to {}'.format(value)) - return u800.writeMicroTag(addr, 'Downtime_Time_Parameter', int(value)) + print('trying to set Downtime_Time_Parameter to {}'.format(value)) + return u800.writeMicroTag(addr, 'Downtime_Time_Parameter', int(value)) def vfdipp_downtimeTimeParameterOL(self, name, value): - print('trying to set Downtime_Time_Parameter_OL to {}'.format(value)) - return u800.writeMicroTag(addr, 'Downtime_Time_Parameter_OL', int(value)) + print('trying to set Downtime_Time_Parameter_OL to {}'.format(value)) + return u800.writeMicroTag(addr, 'Downtime_Time_Parameter_OL', int(value)) def vfdipp_pressureAlarmDelay(self, name, value): - print('trying to set Pressure_Alarm_Delay to {}'.format(value)) - return u800.writeMicroTag(addr, 'Pressure_Alarm_Delay', int(value)) + print('trying to set Pressure_Alarm_Delay to {}'.format(value)) + return u800.writeMicroTag(addr, 'Pressure_Alarm_Delay', int(value)) def vfdipp_pressureAlarmStartupDelay(self, name, value): - print('trying to set Pressure_Alarm_Startup_Delay to {}'.format(value)) - return u800.writeMicroTag(addr, 'Pressure_Alarm_Startup_Delay', int(value)) + print('trying to set Pressure_Alarm_Startup_Delay to {}'.format(value)) + return u800.writeMicroTag(addr, 'Pressure_Alarm_Startup_Delay', int(value)) def vfdipp_pressureEUMax(self, name, value): - print('trying to set Pressure_EU_Max to {}'.format(value)) - return u800.writeMicroTag(addr, 'Pressure_EU_Max', float(value)) + print('trying to set Pressure_EU_Max to {}'.format(value)) + return u800.writeMicroTag(addr, 'Pressure_EU_Max', float(value)) def vfdipp_pressureEUMin(self, name, value): - print('trying to set Pressure_EU_Min to {}'.format(value)) - return u800.writeMicroTag(addr, 'Pressure_EU_Min', float(value)) + print('trying to set Pressure_EU_Min to {}'.format(value)) + return u800.writeMicroTag(addr, 'Pressure_EU_Min', float(value)) def vfdipp_pressureHiSP(self, name, value): - print('trying to set Pressure_Hi_SP to {}'.format(value)) - return u800.writeMicroTag(addr, 'Pressure_Hi_SP', float(value)) + print('trying to set Pressure_Hi_SP to {}'.format(value)) + return u800.writeMicroTag(addr, 'Pressure_Hi_SP', float(value)) def vfdipp_pressureLoSP(self, name, value): - print('trying to set Pressure_Lo_SP to {}'.format(value)) - return u800.writeMicroTag(addr, 'Pressure_Lo_SP', float(value)) + print('trying to set Pressure_Lo_SP to {}'.format(value)) + return u800.writeMicroTag(addr, 'Pressure_Lo_SP', float(value)) def vfdipp_pressureShutdown(self, name, value): - print('trying to set Pressure_Shutdown to {}'.format(value)) - return u800.writeMicroTag(addr, 'Pressure_Shutdown', float(value)) + print('trying to set Pressure_Shutdown to {}'.format(value)) + return u800.writeMicroTag(addr, 'Pressure_Shutdown', float(value)) def vfdipp_pressureShutdownEnabled(self, name, value): - print('trying to set Pressure_Shutdown_Enabled to {}'.format(value)) - return u800.writeMicroTag(addr, 'Pressure_Shutdown_Enabled', int(value)) + print('trying to set Pressure_Shutdown_Enabled to {}'.format(value)) + return u800.writeMicroTag(addr, 'Pressure_Shutdown_Enabled', int(value)) def vfdipp_pressureStartup(self, name, value): - print('trying to set Pressure_Startup to {}'.format(value)) - return u800.writeMicroTag(addr, 'Pressure_Startup', float(value)) + print('trying to set Pressure_Startup to {}'.format(value)) + return u800.writeMicroTag(addr, 'Pressure_Startup', float(value)) def vfdipp_pressureStartupEnabled(self, name, value): - print('trying to set Pressure_Startup_Enabled to {}'.format(value)) - return u800.writeMicroTag(addr, 'Pressure_Startup_Enabled', int(value)) + print('trying to set Pressure_Startup_Enabled to {}'.format(value)) + return u800.writeMicroTag(addr, 'Pressure_Startup_Enabled', int(value)) def vfdipp_pressureSwitchEnabled(self, name, value): - print('trying to set Pressure_Switch_Enabled to {}'.format(value)) - return u800.writeMicroTag(addr, 'Pressure_Switch_Enabled', int(value)) + print('trying to set Pressure_Switch_Enabled to {}'.format(value)) + return u800.writeMicroTag(addr, 'Pressure_Switch_Enabled', int(value)) def vfdipp_pressureTransducerEnabled(self, name, value): - print('trying to set Pressure_Transducer_Enabled to {}'.format(value)) - return u800.writeMicroTag(addr, 'Pressure_Transducer_Enabled', int(value)) + print('trying to set Pressure_Transducer_Enabled to {}'.format(value)) + return u800.writeMicroTag(addr, 'Pressure_Transducer_Enabled', int(value)) def vfdipp_startCommand(self, name, value): - print('trying to set Start_Command to {}'.format(value)) - return u800.writeMicroTag(addr, 'Start_Command', int(value)) + print('trying to set Start_Command to {}'.format(value)) + return u800.writeMicroTag(addr, 'Start_Command', int(value)) def vfdipp_stopCommand(self, name, value): - print('trying to set Stop_Command to {}'.format(value)) - return u800.writeMicroTag(addr, 'Stop_Command', int(value)) + print('trying to set Stop_Command to {}'.format(value)) + return u800.writeMicroTag(addr, 'Stop_Command', int(value)) def vfdipp_tempShutdown(self, name, value): - print('trying to set Temp_Shutdown to {}'.format(value)) - return u800.writeMicroTag(addr, 'Temp_Shutdown', float(value)) + print('trying to set Temp_Shutdown to {}'.format(value)) + return u800.writeMicroTag(addr, 'Temp_Shutdown', float(value)) def vfdipp_tempShutdownEnabled(self, name, value): - print('trying to set Temp_Shutdown_Enabled to {}'.format(value)) - return u800.writeMicroTag(addr, 'Temp_Shutdown_Enabled', int(value)) + print('trying to set Temp_Shutdown_Enabled to {}'.format(value)) + return u800.writeMicroTag(addr, 'Temp_Shutdown_Enabled', int(value)) def vfdipp_tempStartup(self, name, value): - print('trying to set Temp_Startup to {}'.format(value)) - return u800.writeMicroTag(addr, 'Temp_Startup', float(value)) + print('trying to set Temp_Startup to {}'.format(value)) + return u800.writeMicroTag(addr, 'Temp_Startup', float(value)) def vfdipp_tempStartupEnabled(self, name, value): - print('trying to set Temp_Startup_Enabled to {}'.format(value)) - return u800.writeMicroTag(addr, 'Temp_Startup_Enabled', int(value)) + print('trying to set Temp_Startup_Enabled to {}'.format(value)) + return u800.writeMicroTag(addr, 'Temp_Startup_Enabled', int(value)) def vfdipp_tripEnableVOverfrequency(self, name, value): - print('trying to set TripEnable_V_Overfrequency to {}'.format(value)) - return u800.writeMicroTag(addr, 'TripEnable_V_Overfrequency', int(value)) + print('trying to set TripEnable_V_Overfrequency to {}'.format(value)) + return u800.writeMicroTag(addr, 'TripEnable_V_Overfrequency', int(value)) def vfdipp_tripEnableVOvervoltage(self, name, value): - print('trying to set TripEnable_V_Overvoltage to {}'.format(value)) - return u800.writeMicroTag(addr, 'TripEnable_V_Overvoltage', int(value)) + print('trying to set TripEnable_V_Overvoltage to {}'.format(value)) + return u800.writeMicroTag(addr, 'TripEnable_V_Overvoltage', int(value)) def vfdipp_tripEnableVPhaseRotation(self, name, value): - print('trying to set TripEnable_V_PhaseRotation to {}'.format(value)) - return u800.writeMicroTag(addr, 'TripEnable_V_PhaseRotation', int(value)) + print('trying to set TripEnable_V_PhaseRotation to {}'.format(value)) + return u800.writeMicroTag(addr, 'TripEnable_V_PhaseRotation', int(value)) def vfdipp_tripEnableVUnderfrequency(self, name, value): - print('trying to set TripEnable_V_Underfrequency to {}'.format(value)) - return u800.writeMicroTag(addr, 'TripEnable_V_Underfrequency', int(value)) + print('trying to set TripEnable_V_Underfrequency to {}'.format(value)) + return u800.writeMicroTag(addr, 'TripEnable_V_Underfrequency', int(value)) def vfdipp_tripEnableVUndervoltage(self, name, value): - print('trying to set TripEnable_V_Undervoltage to {}'.format(value)) - return u800.writeMicroTag(addr, 'TripEnable_V_Undervoltage', int(value)) + print('trying to set TripEnable_V_Undervoltage to {}'.format(value)) + return u800.writeMicroTag(addr, 'TripEnable_V_Undervoltage', int(value)) def vfdipp_tripEnableVVoltageUnbalance(self, name, value): - print('trying to set TripEnable_V_VoltageUnbalance to {}'.format(value)) - return u800.writeMicroTag(addr, 'TripEnable_V_VoltageUnbalance', int(value)) + print('trying to set TripEnable_V_VoltageUnbalance to {}'.format(value)) + return u800.writeMicroTag(addr, 'TripEnable_V_VoltageUnbalance', int(value)) def vfdipp_tripEnabledICurrentImbalance(self, name, value): - print('trying to set TripEnabled_I_CurrentImbalance to {}'.format(value)) - return u800.writeMicroTag(addr, 'TripEnabled_I_CurrentImbalance', int(value)) + print('trying to set TripEnabled_I_CurrentImbalance to {}'.format(value)) + return u800.writeMicroTag(addr, 'TripEnabled_I_CurrentImbalance', int(value)) def vfdipp_tripEnabledIGroundFault(self, name, value): - print('trying to set TripEnabled_I_GroundFault to {}'.format(value)) - return u800.writeMicroTag(addr, 'TripEnabled_I_GroundFault', int(value)) + print('trying to set TripEnabled_I_GroundFault to {}'.format(value)) + return u800.writeMicroTag(addr, 'TripEnabled_I_GroundFault', int(value)) def vfdipp_tripEnabledIJam(self, name, value): - print('trying to set TripEnabled_I_Jam to {}'.format(value)) - return u800.writeMicroTag(addr, 'TripEnabled_I_Jam', int(value)) + print('trying to set TripEnabled_I_Jam to {}'.format(value)) + return u800.writeMicroTag(addr, 'TripEnabled_I_Jam', int(value)) def vfdipp_tripEnabledILineLoss(self, name, value): - print('trying to set TripEnabled_I_LineLoss to {}'.format(value)) - return u800.writeMicroTag(addr, 'TripEnabled_I_LineLoss', int(value)) + print('trying to set TripEnabled_I_LineLoss to {}'.format(value)) + return u800.writeMicroTag(addr, 'TripEnabled_I_LineLoss', int(value)) def vfdipp_tripEnabledIOvercurrent(self, name, value): - print('trying to set TripEnabled_I_Overcurrent to {}'.format(value)) - return u800.writeMicroTag(addr, 'TripEnabled_I_Overcurrent', int(value)) + print('trying to set TripEnabled_I_Overcurrent to {}'.format(value)) + return u800.writeMicroTag(addr, 'TripEnabled_I_Overcurrent', int(value)) def vfdipp_tripEnabledIOverload(self, name, value): - print('trying to set TripEnabled_I_Overload to {}'.format(value)) - return u800.writeMicroTag(addr, 'TripEnabled_I_Overload', int(value)) + print('trying to set TripEnabled_I_Overload to {}'.format(value)) + return u800.writeMicroTag(addr, 'TripEnabled_I_Overload', int(value)) def vfdipp_tripEnabledIPhaseLoss(self, name, value): - print('trying to set TripEnabled_I_PhaseLoss to {}'.format(value)) - return u800.writeMicroTag(addr, 'TripEnabled_I_PhaseLoss', int(value)) + print('trying to set TripEnabled_I_PhaseLoss to {}'.format(value)) + return u800.writeMicroTag(addr, 'TripEnabled_I_PhaseLoss', int(value)) def vfdipp_tripEnabledIStall(self, name, value): - print('trying to set TripEnabled_I_Stall to {}'.format(value)) - return u800.writeMicroTag(addr, 'TripEnabled_I_Stall', int(value)) + print('trying to set TripEnabled_I_Stall to {}'.format(value)) + return u800.writeMicroTag(addr, 'TripEnabled_I_Stall', int(value)) def vfdipp_tripEnabledIUndercurrent(self, name, value): - print('trying to set TripEnabled_I_Undercurrent to {}'.format(value)) - return u800.writeMicroTag(addr, 'TripEnabled_I_Undercurrent', int(value)) + print('trying to set TripEnabled_I_Undercurrent to {}'.format(value)) + return u800.writeMicroTag(addr, 'TripEnabled_I_Undercurrent', int(value)) def vfdipp_tripEnabledIUnderload(self, name, value): - print('trying to set TripEnabled_I_Underload to {}'.format(value)) - return u800.writeMicroTag(addr, 'TripEnabled_I_Underload', int(value)) + print('trying to set TripEnabled_I_Underload to {}'.format(value)) + return u800.writeMicroTag(addr, 'TripEnabled_I_Underload', int(value)) def vfdipp_tripResetCmd(self, name, value): - print('trying to set TripResetCmd to {}'.format(value)) - return u800.writeMicroTag(addr, 'TripResetCmd', int(value)) + print('trying to set TripResetCmd to {}'.format(value)) + return u800.writeMicroTag(addr, 'TripResetCmd', int(value)) def vfdipp_warningEnableVOverfrequency(self, name, value): - print('trying to set WarningEnable_V_Overfrequency to {}'.format(value)) - return u800.writeMicroTag(addr, 'WarningEnable_V_Overfrequency', int(value)) + print('trying to set WarningEnable_V_Overfrequency to {}'.format(value)) + return u800.writeMicroTag(addr, 'WarningEnable_V_Overfrequency', int(value)) def vfdipp_warningEnableVOvervoltage(self, name, value): - print('trying to set WarningEnable_V_Overvoltage to {}'.format(value)) - return u800.writeMicroTag(addr, 'WarningEnable_V_Overvoltage', int(value)) + print('trying to set WarningEnable_V_Overvoltage to {}'.format(value)) + return u800.writeMicroTag(addr, 'WarningEnable_V_Overvoltage', int(value)) def vfdipp_warningEnableVPhaseRotation(self, name, value): - print('trying to set WarningEnable_V_PhaseRotation to {}'.format(value)) - return u800.writeMicroTag(addr, 'WarningEnable_V_PhaseRotation', int(value)) + print('trying to set WarningEnable_V_PhaseRotation to {}'.format(value)) + return u800.writeMicroTag(addr, 'WarningEnable_V_PhaseRotation', int(value)) def vfdipp_warningEnableVUnderfrequency(self, name, value): - print('trying to set WarningEnable_V_Underfrequency to {}'.format(value)) - return u800.writeMicroTag(addr, 'WarningEnable_V_Underfrequency', int(value)) + print('trying to set WarningEnable_V_Underfrequency to {}'.format(value)) + return u800.writeMicroTag(addr, 'WarningEnable_V_Underfrequency', int(value)) def vfdipp_warningEnableVUndervoltage(self, name, value): - print('trying to set WarningEnable_V_Undervoltage to {}'.format(value)) - return u800.writeMicroTag(addr, 'WarningEnable_V_Undervoltage', int(value)) + print('trying to set WarningEnable_V_Undervoltage to {}'.format(value)) + return u800.writeMicroTag(addr, 'WarningEnable_V_Undervoltage', int(value)) def vfdipp_warningEnableVVoltageUnbalance(self, name, value): - print('trying to set WarningEnable_V_VoltageUnbalance to {}'.format(value)) - return u800.writeMicroTag(addr, 'WarningEnable_V_VoltageUnbalance', int(value)) + print('trying to set WarningEnable_V_VoltageUnbalance to {}'.format(value)) + return u800.writeMicroTag(addr, 'WarningEnable_V_VoltageUnbalance', int(value)) def vfdipp_warningEnabledICurrentImbalance(self, name, value): - print('trying to set WarningEnabled_I_CurrentImbalance to {}'.format(value)) - return u800.writeMicroTag(addr, 'WarningEnabled_I_CurrentImbalance', int(value)) + print('trying to set WarningEnabled_I_CurrentImbalance to {}'.format(value)) + return u800.writeMicroTag(addr, 'WarningEnabled_I_CurrentImbalance', int(value)) def vfdipp_warningEnabledIGroundFault(self, name, value): - print('trying to set WarningEnabled_I_GroundFault to {}'.format(value)) - return u800.writeMicroTag(addr, 'WarningEnabled_I_GroundFault', int(value)) + print('trying to set WarningEnabled_I_GroundFault to {}'.format(value)) + return u800.writeMicroTag(addr, 'WarningEnabled_I_GroundFault', int(value)) def vfdipp_warningEnabledIJam(self, name, value): - print('trying to set WarningEnabled_I_Jam to {}'.format(value)) - return u800.writeMicroTag(addr, 'WarningEnabled_I_Jam', int(value)) + print('trying to set WarningEnabled_I_Jam to {}'.format(value)) + return u800.writeMicroTag(addr, 'WarningEnabled_I_Jam', int(value)) def vfdipp_warningEnabledILineLoss(self, name, value): - print('trying to set WarningEnabled_I_LineLoss to {}'.format(value)) - return u800.writeMicroTag(addr, 'WarningEnabled_I_LineLoss', int(value)) + print('trying to set WarningEnabled_I_LineLoss to {}'.format(value)) + return u800.writeMicroTag(addr, 'WarningEnabled_I_LineLoss', int(value)) def vfdipp_warningEnabledIOvercurrent(self, name, value): - print('trying to set WarningEnabled_I_Overcurrent to {}'.format(value)) - return u800.writeMicroTag(addr, 'WarningEnabled_I_Overcurrent', int(value)) + print('trying to set WarningEnabled_I_Overcurrent to {}'.format(value)) + return u800.writeMicroTag(addr, 'WarningEnabled_I_Overcurrent', int(value)) def vfdipp_warningEnabledIOverload(self, name, value): - print('trying to set WarningEnabled_I_Overload to {}'.format(value)) - return u800.writeMicroTag(addr, 'WarningEnabled_I_Overload', int(value)) + print('trying to set WarningEnabled_I_Overload to {}'.format(value)) + return u800.writeMicroTag(addr, 'WarningEnabled_I_Overload', int(value)) def vfdipp_warningEnabledIPhaseLoss(self, name, value): - print('trying to set WarningEnabled_I_PhaseLoss to {}'.format(value)) - return u800.writeMicroTag(addr, 'WarningEnabled_I_PhaseLoss', int(value)) + print('trying to set WarningEnabled_I_PhaseLoss to {}'.format(value)) + return u800.writeMicroTag(addr, 'WarningEnabled_I_PhaseLoss', int(value)) def vfdipp_warningEnabledIStall(self, name, value): - print('trying to set WarningEnabled_I_Stall to {}'.format(value)) - return u800.writeMicroTag(addr, 'WarningEnabled_I_Stall', int(value)) + print('trying to set WarningEnabled_I_Stall to {}'.format(value)) + return u800.writeMicroTag(addr, 'WarningEnabled_I_Stall', int(value)) def vfdipp_warningEnabledIUndercurrent(self, name, value): - print('trying to set WarningEnabled_I_Undercurrent to {}'.format(value)) - return u800.writeMicroTag(addr, 'WarningEnabled_I_Undercurrent', int(value)) + print('trying to set WarningEnabled_I_Undercurrent to {}'.format(value)) + return u800.writeMicroTag(addr, 'WarningEnabled_I_Undercurrent', int(value)) def vfdipp_warningEnabledIUnderload(self, name, value): - print('trying to set WarningEnabled_I_Underload to {}'.format(value)) - return u800.writeMicroTag(addr, 'WarningEnabled_I_Underload', int(value)) + print('trying to set WarningEnabled_I_Underload to {}'.format(value)) + return u800.writeMicroTag(addr, 'WarningEnabled_I_Underload', int(value)) diff --git a/POCloud_Driver/ipp_channels_setup.py b/POCloud_Driver/ipp_channels_setup.py index 23341b5..31394ae 100644 --- a/POCloud_Driver/ipp_channels_setup.py +++ b/POCloud_Driver/ipp_channels_setup.py @@ -1 +1 @@ -import pickle channels = { 'automode': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'Auto_Mode', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgcflasetting': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_C_FLASetting', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgcleartripcountafter': { 'data_type': 'DINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_ClearTripCountAfter', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgctripenablecontrol': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_C_TripEnableControl', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgcwarningenablecontrol': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_C_WarningEnableControl', 'last_time_uploaded': 0, 'last_value': '', }, 'cfggfgroundfaultinhibittime': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_GF_GroundFaultInhibitTime', 'last_time_uploaded': 0, 'last_value': '', }, 'cfggfgroundfaulttripdelay': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_GF_GroundFaultTripDelay', 'last_time_uploaded': 0, 'last_value': '', }, 'cfggfgroundfaulttriplevel': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_GF_GroundFaultTripLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfggfgroundfaultwarningdelay': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_GF_GroundFaultWarningDelay', 'last_time_uploaded': 0, 'last_value': '', }, 'cfggfgroundfaultwarninglevel': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_GF_GroundFaultWarningLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgictprimary': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_CTPrimary', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgictsecondary': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_CTSecondary', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgicurrentimbalanceinhibittim': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_CurrentImbalanceInhibitTime', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgicurrentimbalancetripdelay': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_CurrentImbalanceTripDelay', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgicurrentimbalancetriplevel': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_CurrentImbalanceTripLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgicurrentimbalancewarninglev': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_CurrentImbalanceWarningLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgijaminhibittime': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_JamInhibitTime', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgijamtripdelay': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_JamTripDelay', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgijamtriplevel': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_JamTripLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgijamwarninglevel': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_JamWarningLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgilinelossinhibittime': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_LineLossInhibitTime', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgilinelosstripdelay': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_LineLossTripDelay', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgiovercurrentinhibittime': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_OvercurrentInhibitTime', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgiovercurrenttripdelay': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_OvercurrentTripDelay', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgiovercurrenttriplevel': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_OvercurrentTripLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgiovercurrentwarninglevel': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_OvercurrentWarningLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgistallenabledtime': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_StallEnabledTime', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgistalltriplevel': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_StallTripLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgiundercurrentinhibittime': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_UndercurrentInhibitTime', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgiundercurrenttripdelay': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_UndercurrentTripDelay', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgiundercurrenttriplevel': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_UndercurrentTripLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgiundercurrentwarninglevel': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_UndercurrentWarningLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgiunderloadinhibittime': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_UnderloadInhibitTime', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgiunderloadtripdelay': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_UnderloadTripDelay', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgiunderloadtriplevel': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_UnderloadTripLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgiunderloadwarninglevel': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_UnderloadWarningLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgoverloadtripcountlimit': { 'data_type': 'DINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_OverloadTripCountLimit', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgplphaselossinhibittime': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_PL_PhaseLossInhibitTime', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgplphaselosstripdelay': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_PL_PhaseLossTripDelay', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgread': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 86400, 'tag': 'cfg_READ', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgspecificgravity': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_SpecificGravity', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgtcuolresetlevel': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_TCU_OLResetLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgtcuolwarninglevel': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_TCU_OLWarningLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgtcutripclass': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_TCU_TripClass', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgtimermodeenabled': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 86400, 'tag': 'cfg_TimerModeEnabled', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgtimerruntime': { 'data_type': 'DINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_TimerRunTime', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgtimerwaittime': { 'data_type': 'DINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_TimerWaitTime', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgtripcountlimit': { 'data_type': 'DINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_TripCountLimit', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvoverfrequencyinhibittime': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_OverfrequencyInhibitTime', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvoverfrequencytripdelay': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_OverfrequencyTripDelay', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvoverfrequencytriplevel': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_OverfrequencyTripLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvoverfrequencywarninglevel': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_OverfrequencyWarningLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvovervoltageinhibittime': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_OvervoltageInhibitTime', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvovervoltagetripdelay': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_OvervoltageTripDelay', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvovervoltagetriplevel': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_OvervoltageTripLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvovervoltagewarninglevel': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_OvervoltageWarningLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvphaserotationinhibittime': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_PhaseRotationInhibitTime', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvphaserotationtriptype': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_PhaseRotationTripType', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvptprimary': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_PTPrimary', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvptsecondary': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_PTSecondary', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvunderfrequencyinhibittime': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_UnderfrequencyInhibitTime', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvunderfrequencytripdelay': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_UnderfrequencyTripDelay', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvunderfrequencytriplevel': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_UnderfrequencyTripLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvunderfrequencywarninglevel': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_UnderfrequencyWarningLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvundervoltageinhibittime': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_UndervoltageInhibitTime', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvundervoltagetripdelay': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_UndervoltageTripDelay', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvundervoltagetriplevel': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_UndervoltageTripLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvundervoltagewarninglevel': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_UndervoltageWarningLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvvoltageimbalanceinhibittim': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_VoltageImbalanceInhibitTime', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvvoltageimbalancetripdelay': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_VoltageImbalanceTripDelay', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvvoltageimbalancetriplevel': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_VoltageImbalanceTripLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvvoltageimbalancewarninglev': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_VoltageImbalanceWarningLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvvoltagemode': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_VoltageMode', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgwrite': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 86400, 'tag': 'cfg_WRITE', 'last_time_uploaded': 0, 'last_value': '', }, 'contactorstatus': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'Contactor_Status', 'last_time_uploaded': 0, 'last_value': '', }, 'dhdownholestatusint': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'DH_DownholeStatus_INT', 'last_time_uploaded': 0, 'last_value': '', }, 'dhfluidlevel': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'DH_Fluid_Level', 'last_time_uploaded': 0, 'last_value': '', }, 'dhintakepressure': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'DH_IntakePressure', 'last_time_uploaded': 0, 'last_value': '', }, 'dhintaketemperature': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'DH_IntakeTemperature', 'last_time_uploaded': 0, 'last_value': '', }, 'dhmaxintakepressureforever': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'DH_MaxIntakePressure_Forever', 'last_time_uploaded': 0, 'last_value': '', }, 'dhmaxintakepressurestartup': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'DH_MaxIntakePressure_Startup', 'last_time_uploaded': 0, 'last_value': '', }, 'dhmaxintaketemperatureforever': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'DH_MaxIntakeTemperature_Forever', 'last_time_uploaded': 0, 'last_value': '', }, 'dhmaxintaketemperaturestartup': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'DH_MaxIntakeTemperature_Startup', 'last_time_uploaded': 0, 'last_value': '', }, 'dhnumchannels': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'DH_NumChannels', 'last_time_uploaded': 0, 'last_value': '', }, 'dhpsirating': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'DH_PSIRating', 'last_time_uploaded': 0, 'last_value': '', }, 'dhtooltype': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'DH_ToolType', 'last_time_uploaded': 0, 'last_value': '', }, 'dhtoolvoltage': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'DH_ToolVoltage', 'last_time_uploaded': 0, 'last_value': '', }, 'downholetoolenabled': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'Downhole_Tool_Enabled', 'last_time_uploaded': 0, 'last_value': '', }, 'downtimetimeparameter': { 'data_type': 'DINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'Downtime_Time_Parameter', 'last_time_uploaded': 0, 'last_value': '', }, 'downtimetimeparameterol': { 'data_type': 'DINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'Downtime_Time_Parameter_OL', 'last_time_uploaded': 0, 'last_value': '', }, 'e300averagecurrent': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_AverageCurrent', 'last_time_uploaded': 0, 'last_value': '', }, 'e300averagellvoltage': { 'data_type': 'REAL', 'change_amount': 2.5, 'max_time_between_uploads': 3600, 'tag': 'E300_AverageLLVoltage', 'last_time_uploaded': 0, 'last_value': '', }, 'e300averagelnvoltage': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_AverageLNVoltage', 'last_time_uploaded': 0, 'last_value': '', }, 'e300configbuffer': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_Config_Buffer', 'last_time_uploaded': 0, 'last_value': '', }, 'e300kwh': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_kWh', 'last_time_uploaded': 0, 'last_value': '', }, 'e300kwhregen': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_kWh_Regen', 'last_time_uploaded': 0, 'last_value': '', }, 'e300l1apparentpower': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_L1ApparentPower', 'last_time_uploaded': 0, 'last_value': '', }, 'e300l1current': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_L1Current', 'last_time_uploaded': 0, 'last_value': '', }, 'e300l1l2voltage': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_L1L2Voltage', 'last_time_uploaded': 0, 'last_value': '', }, 'e300l1nvoltage': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_L1NVoltage', 'last_time_uploaded': 0, 'last_value': '', }, 'e300l1reactivepower': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_L1ReactivePower', 'last_time_uploaded': 0, 'last_value': '', }, 'e300l1realpower': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_L1RealPower', 'last_time_uploaded': 0, 'last_value': '', }, 'e300l1truepowerfactor': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_L1TruePowerFactor', 'last_time_uploaded': 0, 'last_value': '', }, 'e300l2apparentpower': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_L2ApparentPower', 'last_time_uploaded': 0, 'last_value': '', }, 'e300l2current': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_L2Current', 'last_time_uploaded': 0, 'last_value': '', }, 'e300l2l3voltage': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_L2L3Voltage', 'last_time_uploaded': 0, 'last_value': '', }, 'e300l2nvoltage': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_L2NVoltage', 'last_time_uploaded': 0, 'last_value': '', }, 'e300l2reactivepower': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_L2ReactivePower', 'last_time_uploaded': 0, 'last_value': '', }, 'e300l2realpower': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_L2RealPower', 'last_time_uploaded': 0, 'last_value': '', }, 'e300l2truepowerfactor': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_L2TruePowerFactor', 'last_time_uploaded': 0, 'last_value': '', }, 'e300l3apparentpower': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_L3ApparentPower', 'last_time_uploaded': 0, 'last_value': '', }, 'e300l3current': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_L3Current', 'last_time_uploaded': 0, 'last_value': '', }, 'e300l3l1voltage': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_L3L1Voltage', 'last_time_uploaded': 0, 'last_value': '', }, 'e300l3nvoltage': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_L3NVoltage', 'last_time_uploaded': 0, 'last_value': '', }, 'e300l3reactivepower': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_L3ReactivePower', 'last_time_uploaded': 0, 'last_value': '', }, 'e300l3realpower': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_L3RealPower', 'last_time_uploaded': 0, 'last_value': '', }, 'e300l3truepowerfactor': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_L3TruePowerFactor', 'last_time_uploaded': 0, 'last_value': '', }, 'e300linefrequency': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_LineFrequency', 'last_time_uploaded': 0, 'last_value': '', }, 'e300percentcurrentunbalance': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_PercentCurrentUnbalance', 'last_time_uploaded': 0, 'last_value': '', }, 'e300percentvoltageunbalance': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_PercentVoltageUnbalance', 'last_time_uploaded': 0, 'last_value': '', }, 'e300threephasetruepowerfactor': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_ThreePhaseTruePowerFactor', 'last_time_uploaded': 0, 'last_value': '', }, 'e300totalapparentpower': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_TotalApparentPower', 'last_time_uploaded': 0, 'last_value': '', }, 'e300totalreactivepower': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_TotalReactivePower', 'last_time_uploaded': 0, 'last_value': '', }, 'e300totalrealpower': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_TotalRealPower', 'last_time_uploaded': 0, 'last_value': '', }, 'handmode': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'Hand_Mode', 'last_time_uploaded': 0, 'last_value': '', }, 'overloadtrip': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'OverloadTrip', 'last_time_uploaded': 0, 'last_value': '', }, 'pressurealarmdelay': { 'data_type': 'UDINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'Pressure_Alarm_Delay', 'last_time_uploaded': 0, 'last_value': '', }, 'pressurealarmstartupdelay': { 'data_type': 'DINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'Pressure_Alarm_Startup_Delay', 'last_time_uploaded': 0, 'last_value': '', }, 'pressureeumax': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'Pressure_EU_Max', 'last_time_uploaded': 0, 'last_value': '', }, 'pressureeumin': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'Pressure_EU_Min', 'last_time_uploaded': 0, 'last_value': '', }, 'pressurehi': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'Pressure_Hi', 'last_time_uploaded': 0, 'last_value': '', }, 'pressurehisp': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'Pressure_Hi_SP', 'last_time_uploaded': 0, 'last_value': '', }, 'pressurein': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'Pressure_In', 'last_time_uploaded': 0, 'last_value': '', }, 'pressurelo': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'Pressure_Lo', 'last_time_uploaded': 0, 'last_value': '', }, 'pressurelosp': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'Pressure_Lo_SP', 'last_time_uploaded': 0, 'last_value': '', }, 'pressureok': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'Pressure_OK', 'last_time_uploaded': 0, 'last_value': '', }, 'pressureshutdown': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'Pressure_Shutdown', 'last_time_uploaded': 0, 'last_value': '', }, 'pressureshutdownenabled': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'Pressure_Shutdown_Enabled', 'last_time_uploaded': 0, 'last_value': '', }, 'pressurestartup': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'Pressure_Startup', 'last_time_uploaded': 0, 'last_value': '', }, 'pressurestartupenabled': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'Pressure_Startup_Enabled', 'last_time_uploaded': 0, 'last_value': '', }, 'pressureswitchenabled': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'Pressure_Switch_Enabled', 'last_time_uploaded': 0, 'last_value': '', }, 'pressuretransducerenabled': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'Pressure_Transducer_Enabled', 'last_time_uploaded': 0, 'last_value': '', }, 'rpmode': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'RP_Mode', 'last_time_uploaded': 0, 'last_value': '', }, 'rppressure': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'RP_Pressure', 'last_time_uploaded': 0, 'last_value': '', }, 'rptemperature': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'RP_Temperature', 'last_time_uploaded': 0, 'last_value': '', }, 'rptrip': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'RP_Trip', 'last_time_uploaded': 0, 'last_value': '', }, 'rptubingpressure': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'RP_TubingPressure', 'last_time_uploaded': 0, 'last_value': '', }, 'runpermissive': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'Run_Permissive', 'last_time_uploaded': 0, 'last_value': '', }, 'shutdowntime': { 'data_type': 'DINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'Shutdown_Time', 'last_time_uploaded': 0, 'last_value': '', }, 'spmode': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'SP_Mode', 'last_time_uploaded': 0, 'last_value': '', }, 'sppressure': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'SP_Pressure', 'last_time_uploaded': 0, 'last_value': '', }, 'sptemperature': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'SP_Temperature', 'last_time_uploaded': 0, 'last_value': '', }, 'sptrip': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'SP_Trip', 'last_time_uploaded': 0, 'last_value': '', }, 'spvoltage': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'SP_Voltage', 'last_time_uploaded': 0, 'last_value': '', }, 'startbutton': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'Start_Button', 'last_time_uploaded': 0, 'last_value': '', }, 'startcommand': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'Start_Command', 'last_time_uploaded': 0, 'last_value': '', }, 'startpermissive': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'Start_Permissive', 'last_time_uploaded': 0, 'last_value': '', }, 'stopcommand': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'Stop_Command', 'last_time_uploaded': 0, 'last_value': '', }, 'tempshutdown': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'Temp_Shutdown', 'last_time_uploaded': 0, 'last_value': '', }, 'tempshutdownenabled': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'Temp_Shutdown_Enabled', 'last_time_uploaded': 0, 'last_value': '', }, 'tempstartup': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'Temp_Startup', 'last_time_uploaded': 0, 'last_value': '', }, 'tempstartupenabled': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'Temp_Startup_Enabled', 'last_time_uploaded': 0, 'last_value': '', }, 'testmode': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'Test_Mode', 'last_time_uploaded': 0, 'last_value': '', }, 'tripenabledicurrentimbalance': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'TripEnabled_I_CurrentImbalance', 'last_time_uploaded': 0, 'last_value': '', }, 'tripenabledigroundfault': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'TripEnabled_I_GroundFault', 'last_time_uploaded': 0, 'last_value': '', }, 'tripenabledijam': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'TripEnabled_I_Jam', 'last_time_uploaded': 0, 'last_value': '', }, 'tripenabledilineloss': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'TripEnabled_I_LineLoss', 'last_time_uploaded': 0, 'last_value': '', }, 'tripenablediovercurrent': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'TripEnabled_I_Overcurrent', 'last_time_uploaded': 0, 'last_value': '', }, 'tripenabledioverload': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'TripEnabled_I_Overload', 'last_time_uploaded': 0, 'last_value': '', }, 'tripenablediphaseloss': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'TripEnabled_I_PhaseLoss', 'last_time_uploaded': 0, 'last_value': '', }, 'tripenabledistall': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'TripEnabled_I_Stall', 'last_time_uploaded': 0, 'last_value': '', }, 'tripenablediundercurrent': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'TripEnabled_I_Undercurrent', 'last_time_uploaded': 0, 'last_value': '', }, 'tripenablediunderload': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'TripEnabled_I_Underload', 'last_time_uploaded': 0, 'last_value': '', }, 'tripenablevoverfrequency': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'TripEnable_V_Overfrequency', 'last_time_uploaded': 0, 'last_value': '', }, 'tripenablevovervoltage': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'TripEnable_V_Overvoltage', 'last_time_uploaded': 0, 'last_value': '', }, 'tripenablevphaserotation': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'TripEnable_V_PhaseRotation', 'last_time_uploaded': 0, 'last_value': '', }, 'tripenablevunderfrequency': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'TripEnable_V_Underfrequency', 'last_time_uploaded': 0, 'last_value': '', }, 'tripenablevundervoltage': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'TripEnable_V_Undervoltage', 'last_time_uploaded': 0, 'last_value': '', }, 'tripenablevvoltageunbalance': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'TripEnable_V_VoltageUnbalance', 'last_time_uploaded': 0, 'last_value': '', }, 'tripresetcmd': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'TripResetCmd', 'last_time_uploaded': 0, 'last_value': '', }, 'tripstatus': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'TripStatus', 'last_time_uploaded': 0, 'last_value': '', }, 'tripstatuscontrolint': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'TripStatusControl_INT', 'last_time_uploaded': 0, 'last_value': '', }, 'tripstatuscurrentint': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'TripStatusCurrent_INT', 'last_time_uploaded': 0, 'last_value': '', }, 'tripstatuspowerint': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'TripStatusPower_INT', 'last_time_uploaded': 0, 'last_value': '', }, 'tripstatusvoltageint': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'TripStatusVoltage_INT', 'last_time_uploaded': 0, 'last_value': '', }, 'valoverloadtripcount': { 'data_type': 'DINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'val_OverloadTripCount', 'last_time_uploaded': 0, 'last_value': '', }, 'valtripcount': { 'data_type': 'DINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'val_TripCount', 'last_time_uploaded': 0, 'last_value': '', }, 'voltageok': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'VoltageOK', 'last_time_uploaded': 0, 'last_value': '', }, 'warningenabledicurrentimbalanc': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'WarningEnabled_I_CurrentImbalance', 'last_time_uploaded': 0, 'last_value': '', }, 'warningenabledigroundfault': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'WarningEnabled_I_GroundFault', 'last_time_uploaded': 0, 'last_value': '', }, 'warningenabledijam': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'WarningEnabled_I_Jam', 'last_time_uploaded': 0, 'last_value': '', }, 'warningenabledilineloss': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'WarningEnabled_I_LineLoss', 'last_time_uploaded': 0, 'last_value': '', }, 'warningenablediovercurrent': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'WarningEnabled_I_Overcurrent', 'last_time_uploaded': 0, 'last_value': '', }, 'warningenabledioverload': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'WarningEnabled_I_Overload', 'last_time_uploaded': 0, 'last_value': '', }, 'warningenablediphaseloss': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'WarningEnabled_I_PhaseLoss', 'last_time_uploaded': 0, 'last_value': '', }, 'warningenabledistall': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'WarningEnabled_I_Stall', 'last_time_uploaded': 0, 'last_value': '', }, 'warningenablediundercurrent': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'WarningEnabled_I_Undercurrent', 'last_time_uploaded': 0, 'last_value': '', }, 'warningenablediunderload': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'WarningEnabled_I_Underload', 'last_time_uploaded': 0, 'last_value': '', }, 'warningenablevoverfrequency': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'WarningEnable_V_Overfrequency', 'last_time_uploaded': 0, 'last_value': '', }, 'warningenablevovervoltage': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'WarningEnable_V_Overvoltage', 'last_time_uploaded': 0, 'last_value': '', }, 'warningenablevphaserotation': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'WarningEnable_V_PhaseRotation', 'last_time_uploaded': 0, 'last_value': '', }, 'warningenablevunderfrequency': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'WarningEnable_V_Underfrequency', 'last_time_uploaded': 0, 'last_value': '', }, 'warningenablevundervoltage': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'WarningEnable_V_Undervoltage', 'last_time_uploaded': 0, 'last_value': '', }, 'warningenablevvoltageunbalance': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'WarningEnable_V_VoltageUnbalance', 'last_time_uploaded': 0, 'last_value': '', }, 'warningstatus': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'WarningStatus', 'last_time_uploaded': 0, 'last_value': '', }, 'warningstatuscontrolint': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'WarningStatusControl_INT', 'last_time_uploaded': 0, 'last_value': '', }, 'warningstatuscurrentint': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'WarningStatusCurrent_INT', 'last_time_uploaded': 0, 'last_value': '', }, 'warningstatuspowerint': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'WarningStatusPower_INT', 'last_time_uploaded': 0, 'last_value': '', }, 'warningstatusvoltageint': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'WarningStatusVoltage_INT', 'last_time_uploaded': 0, 'last_value': '', }, } with open('ipp_channels.p', 'wb') as ch_f: pickle.dump(channels, ch_f) \ No newline at end of file +import pickle channels = { 'automode': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'Auto_Mode', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgcflasetting': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_C_FLASetting', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgcleartripcountafter': { 'data_type': 'DINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_ClearTripCountAfter', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgctripenablecontrol': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_C_TripEnableControl', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgcwarningenablecontrol': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_C_WarningEnableControl', 'last_time_uploaded': 0, 'last_value': '', }, 'cfggfgroundfaultinhibittime': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_GF_GroundFaultInhibitTime', 'last_time_uploaded': 0, 'last_value': '', }, 'cfggfgroundfaulttripdelay': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_GF_GroundFaultTripDelay', 'last_time_uploaded': 0, 'last_value': '', }, 'cfggfgroundfaulttriplevel': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_GF_GroundFaultTripLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfggfgroundfaultwarningdelay': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_GF_GroundFaultWarningDelay', 'last_time_uploaded': 0, 'last_value': '', }, 'cfggfgroundfaultwarninglevel': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_GF_GroundFaultWarningLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgictprimary': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_CTPrimary', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgictsecondary': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_CTSecondary', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgicurrentimbalanceinhibittim': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_CurrentImbalanceInhibitTime', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgicurrentimbalancetripdelay': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_CurrentImbalanceTripDelay', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgicurrentimbalancetriplevel': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_CurrentImbalanceTripLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgicurrentimbalancewarninglev': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_CurrentImbalanceWarningLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgijaminhibittime': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_JamInhibitTime', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgijamtripdelay': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_JamTripDelay', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgijamtriplevel': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_JamTripLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgijamwarninglevel': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_JamWarningLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgilinelossinhibittime': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_LineLossInhibitTime', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgilinelosstripdelay': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_LineLossTripDelay', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgiovercurrentinhibittime': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_OvercurrentInhibitTime', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgiovercurrenttripdelay': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_OvercurrentTripDelay', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgiovercurrenttriplevel': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_OvercurrentTripLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgiovercurrentwarninglevel': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_OvercurrentWarningLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgistallenabledtime': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_StallEnabledTime', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgistalltriplevel': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_StallTripLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgiundercurrentinhibittime': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_UndercurrentInhibitTime', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgiundercurrenttripdelay': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_UndercurrentTripDelay', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgiundercurrenttriplevel': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_UndercurrentTripLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgiundercurrentwarninglevel': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_UndercurrentWarningLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgiunderloadinhibittime': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_UnderloadInhibitTime', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgiunderloadtripdelay': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_UnderloadTripDelay', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgiunderloadtriplevel': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_UnderloadTripLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgiunderloadwarninglevel': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_I_UnderloadWarningLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgoverloadtripcountlimit': { 'data_type': 'DINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_OverloadTripCountLimit', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgplphaselossinhibittime': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_PL_PhaseLossInhibitTime', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgplphaselosstripdelay': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_PL_PhaseLossTripDelay', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgread': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 86400, 'tag': 'cfg_READ', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgspecificgravity': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_SpecificGravity', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgtcuolresetlevel': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_TCU_OLResetLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgtcuolwarninglevel': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_TCU_OLWarningLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgtcutripclass': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_TCU_TripClass', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgtimermodeenabled': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 86400, 'tag': 'cfg_TimerModeEnabled', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgtimerruntime': { 'data_type': 'DINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_TimerRunTime', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgtimerwaittime': { 'data_type': 'DINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_TimerWaitTime', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgtripcountlimit': { 'data_type': 'DINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_TripCountLimit', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvoverfrequencyinhibittime': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_OverfrequencyInhibitTime', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvoverfrequencytripdelay': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_OverfrequencyTripDelay', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvoverfrequencytriplevel': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_OverfrequencyTripLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvoverfrequencywarninglevel': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_OverfrequencyWarningLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvovervoltageinhibittime': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_OvervoltageInhibitTime', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvovervoltagetripdelay': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_OvervoltageTripDelay', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvovervoltagetriplevel': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_OvervoltageTripLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvovervoltagewarninglevel': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_OvervoltageWarningLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvphaserotationinhibittime': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_PhaseRotationInhibitTime', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvphaserotationtriptype': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_PhaseRotationTripType', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvptprimary': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_PTPrimary', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvptsecondary': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_PTSecondary', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvunderfrequencyinhibittime': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_UnderfrequencyInhibitTime', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvunderfrequencytripdelay': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_UnderfrequencyTripDelay', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvunderfrequencytriplevel': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_UnderfrequencyTripLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvunderfrequencywarninglevel': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_UnderfrequencyWarningLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvundervoltageinhibittime': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_UndervoltageInhibitTime', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvundervoltagetripdelay': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_UndervoltageTripDelay', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvundervoltagetriplevel': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_UndervoltageTripLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvundervoltagewarninglevel': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_UndervoltageWarningLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvvoltageimbalanceinhibittim': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_VoltageImbalanceInhibitTime', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvvoltageimbalancetripdelay': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_VoltageImbalanceTripDelay', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvvoltageimbalancetriplevel': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_VoltageImbalanceTripLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvvoltageimbalancewarninglev': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_VoltageImbalanceWarningLevel', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgvvoltagemode': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 86400, 'tag': 'cfg_V_VoltageMode', 'last_time_uploaded': 0, 'last_value': '', }, 'cfgwrite': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 86400, 'tag': 'cfg_WRITE', 'last_time_uploaded': 0, 'last_value': '', }, 'contactorstatus': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'Contactor_Status', 'last_time_uploaded': 0, 'last_value': '', }, 'dhdownholestatusint': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'DH_DownholeStatus_INT', 'last_time_uploaded': 0, 'last_value': '', }, 'dhfluidlevel': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'DH_Fluid_Level', 'last_time_uploaded': 0, 'last_value': '', }, 'dhintakepressure': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'DH_IntakePressure', 'last_time_uploaded': 0, 'last_value': '', }, 'dhintaketemperature': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'DH_IntakeTemperature', 'last_time_uploaded': 0, 'last_value': '', }, 'dhmaxintakepressureforever': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'DH_MaxIntakePressure_Forever', 'last_time_uploaded': 0, 'last_value': '', }, 'dhmaxintakepressurestartup': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'DH_MaxIntakePressure_Startup', 'last_time_uploaded': 0, 'last_value': '', }, 'dhmaxintaketemperatureforever': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'DH_MaxIntakeTemperature_Forever', 'last_time_uploaded': 0, 'last_value': '', }, 'dhmaxintaketemperaturestartup': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'DH_MaxIntakeTemperature_Startup', 'last_time_uploaded': 0, 'last_value': '', }, 'dhnumchannels': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'DH_NumChannels', 'last_time_uploaded': 0, 'last_value': '', }, 'dhpsirating': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'DH_PSIRating', 'last_time_uploaded': 0, 'last_value': '', }, 'dhtooltype': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'DH_ToolType', 'last_time_uploaded': 0, 'last_value': '', }, 'dhtoolvoltage': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'DH_ToolVoltage', 'last_time_uploaded': 0, 'last_value': '', }, 'downholetoolenabled': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'Downhole_Tool_Enabled', 'last_time_uploaded': 0, 'last_value': '', }, 'downtimetimeparameter': { 'data_type': 'DINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'Downtime_Time_Parameter', 'last_time_uploaded': 0, 'last_value': '', }, 'downtimetimeparameterol': { 'data_type': 'DINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'Downtime_Time_Parameter_OL', 'last_time_uploaded': 0, 'last_value': '', }, 'e300averagecurrent': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_AverageCurrent', 'last_time_uploaded': 0, 'last_value': '', }, 'e300averagellvoltage': { 'data_type': 'REAL', 'change_amount': 2.5, 'max_time_between_uploads': 3600, 'tag': 'E300_AverageLLVoltage', 'last_time_uploaded': 0, 'last_value': '', }, 'e300averagelnvoltage': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_AverageLNVoltage', 'last_time_uploaded': 0, 'last_value': '', }, 'e300configbuffer': { 'data_type': 'USINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_Config_Buffer', 'last_time_uploaded': 0, 'last_value': '', }, 'e300kwh': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_kWh', 'last_time_uploaded': 0, 'last_value': '', }, 'e300kwhregen': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_kWh_Regen', 'last_time_uploaded': 0, 'last_value': '', }, 'e300l1apparentpower': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_L1ApparentPower', 'last_time_uploaded': 0, 'last_value': '', }, 'e300l1current': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_L1Current', 'last_time_uploaded': 0, 'last_value': '', }, 'e300l1l2voltage': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_L1L2Voltage', 'last_time_uploaded': 0, 'last_value': '', }, 'e300l1nvoltage': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_L1NVoltage', 'last_time_uploaded': 0, 'last_value': '', }, 'e300l1reactivepower': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_L1ReactivePower', 'last_time_uploaded': 0, 'last_value': '', }, 'e300l1realpower': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_L1RealPower', 'last_time_uploaded': 0, 'last_value': '', }, 'e300l1truepowerfactor': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_L1TruePowerFactor', 'last_time_uploaded': 0, 'last_value': '', }, 'e300l2apparentpower': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_L2ApparentPower', 'last_time_uploaded': 0, 'last_value': '', }, 'e300l2current': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_L2Current', 'last_time_uploaded': 0, 'last_value': '', }, 'e300l2l3voltage': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_L2L3Voltage', 'last_time_uploaded': 0, 'last_value': '', }, 'e300l2nvoltage': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_L2NVoltage', 'last_time_uploaded': 0, 'last_value': '', }, 'e300l2reactivepower': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_L2ReactivePower', 'last_time_uploaded': 0, 'last_value': '', }, 'e300l2realpower': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_L2RealPower', 'last_time_uploaded': 0, 'last_value': '', }, 'e300l2truepowerfactor': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_L2TruePowerFactor', 'last_time_uploaded': 0, 'last_value': '', }, 'e300l3apparentpower': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_L3ApparentPower', 'last_time_uploaded': 0, 'last_value': '', }, 'e300l3current': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_L3Current', 'last_time_uploaded': 0, 'last_value': '', }, 'e300l3l1voltage': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_L3L1Voltage', 'last_time_uploaded': 0, 'last_value': '', }, 'e300l3nvoltage': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_L3NVoltage', 'last_time_uploaded': 0, 'last_value': '', }, 'e300l3reactivepower': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_L3ReactivePower', 'last_time_uploaded': 0, 'last_value': '', }, 'e300l3realpower': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_L3RealPower', 'last_time_uploaded': 0, 'last_value': '', }, 'e300l3truepowerfactor': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_L3TruePowerFactor', 'last_time_uploaded': 0, 'last_value': '', }, 'e300linefrequency': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_LineFrequency', 'last_time_uploaded': 0, 'last_value': '', }, 'e300percentcurrentunbalance': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_PercentCurrentUnbalance', 'last_time_uploaded': 0, 'last_value': '', }, 'e300percentvoltageunbalance': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_PercentVoltageUnbalance', 'last_time_uploaded': 0, 'last_value': '', }, 'e300threephasetruepowerfactor': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_ThreePhaseTruePowerFactor', 'last_time_uploaded': 0, 'last_value': '', }, 'e300totalapparentpower': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_TotalApparentPower', 'last_time_uploaded': 0, 'last_value': '', }, 'e300totalreactivepower': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_TotalReactivePower', 'last_time_uploaded': 0, 'last_value': '', }, 'e300totalrealpower': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'E300_TotalRealPower', 'last_time_uploaded': 0, 'last_value': '', }, 'handmode': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'Hand_Mode', 'last_time_uploaded': 0, 'last_value': '', }, 'overloadtrip': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'OverloadTrip', 'last_time_uploaded': 0, 'last_value': '', }, 'pressurealarmdelay': { 'data_type': 'UDINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'Pressure_Alarm_Delay', 'last_time_uploaded': 0, 'last_value': '', }, 'pressurealarmstartupdelay': { 'data_type': 'DINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'Pressure_Alarm_Startup_Delay', 'last_time_uploaded': 0, 'last_value': '', }, 'pressureeumax': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'Pressure_EU_Max', 'last_time_uploaded': 0, 'last_value': '', }, 'pressureeumin': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'Pressure_EU_Min', 'last_time_uploaded': 0, 'last_value': '', }, 'pressurehi': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'Pressure_Hi', 'last_time_uploaded': 0, 'last_value': '', }, 'pressurehisp': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'Pressure_Hi_SP', 'last_time_uploaded': 0, 'last_value': '', }, 'pressurein': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'Pressure_In', 'last_time_uploaded': 0, 'last_value': '', }, 'pressurelo': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'Pressure_Lo', 'last_time_uploaded': 0, 'last_value': '', }, 'pressurelosp': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'Pressure_Lo_SP', 'last_time_uploaded': 0, 'last_value': '', }, 'pressureok': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'Pressure_OK', 'last_time_uploaded': 0, 'last_value': '', }, 'pressureshutdown': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'Pressure_Shutdown', 'last_time_uploaded': 0, 'last_value': '', }, 'pressureshutdownenabled': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'Pressure_Shutdown_Enabled', 'last_time_uploaded': 0, 'last_value': '', }, 'pressurestartup': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'Pressure_Startup', 'last_time_uploaded': 0, 'last_value': '', }, 'pressurestartupenabled': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'Pressure_Startup_Enabled', 'last_time_uploaded': 0, 'last_value': '', }, 'pressureswitchenabled': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'Pressure_Switch_Enabled', 'last_time_uploaded': 0, 'last_value': '', }, 'pressuretransducerenabled': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'Pressure_Transducer_Enabled', 'last_time_uploaded': 0, 'last_value': '', }, 'rpmode': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'RP_Mode', 'last_time_uploaded': 0, 'last_value': '', }, 'rppressure': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'RP_Pressure', 'last_time_uploaded': 0, 'last_value': '', }, 'rptemperature': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'RP_Temperature', 'last_time_uploaded': 0, 'last_value': '', }, 'rptrip': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'RP_Trip', 'last_time_uploaded': 0, 'last_value': '', }, 'rptubingpressure': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'RP_TubingPressure', 'last_time_uploaded': 0, 'last_value': '', }, 'runpermissive': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'Run_Permissive', 'last_time_uploaded': 0, 'last_value': '', }, 'shutdowntime': { 'data_type': 'DINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'Shutdown_Time', 'last_time_uploaded': 0, 'last_value': '', }, 'spmode': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'SP_Mode', 'last_time_uploaded': 0, 'last_value': '', }, 'sppressure': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'SP_Pressure', 'last_time_uploaded': 0, 'last_value': '', }, 'sptemperature': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'SP_Temperature', 'last_time_uploaded': 0, 'last_value': '', }, 'sptrip': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'SP_Trip', 'last_time_uploaded': 0, 'last_value': '', }, 'spvoltage': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'SP_Voltage', 'last_time_uploaded': 0, 'last_value': '', }, 'startbutton': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'Start_Button', 'last_time_uploaded': 0, 'last_value': '', }, 'startcommand': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'Start_Command', 'last_time_uploaded': 0, 'last_value': '', }, 'startpermissive': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'Start_Permissive', 'last_time_uploaded': 0, 'last_value': '', }, 'stopcommand': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'Stop_Command', 'last_time_uploaded': 0, 'last_value': '', }, 'tempshutdown': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'Temp_Shutdown', 'last_time_uploaded': 0, 'last_value': '', }, 'tempshutdownenabled': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'Temp_Shutdown_Enabled', 'last_time_uploaded': 0, 'last_value': '', }, 'tempstartup': { 'data_type': 'REAL', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'Temp_Startup', 'last_time_uploaded': 0, 'last_value': '', }, 'tempstartupenabled': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'Temp_Startup_Enabled', 'last_time_uploaded': 0, 'last_value': '', }, 'testmode': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'Test_Mode', 'last_time_uploaded': 0, 'last_value': '', }, 'tripenabledicurrentimbalance': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'TripEnabled_I_CurrentImbalance', 'last_time_uploaded': 0, 'last_value': '', }, 'tripenabledigroundfault': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'TripEnabled_I_GroundFault', 'last_time_uploaded': 0, 'last_value': '', }, 'tripenabledijam': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'TripEnabled_I_Jam', 'last_time_uploaded': 0, 'last_value': '', }, 'tripenabledilineloss': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'TripEnabled_I_LineLoss', 'last_time_uploaded': 0, 'last_value': '', }, 'tripenablediovercurrent': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'TripEnabled_I_Overcurrent', 'last_time_uploaded': 0, 'last_value': '', }, 'tripenabledioverload': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'TripEnabled_I_Overload', 'last_time_uploaded': 0, 'last_value': '', }, 'tripenablediphaseloss': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'TripEnabled_I_PhaseLoss', 'last_time_uploaded': 0, 'last_value': '', }, 'tripenabledistall': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'TripEnabled_I_Stall', 'last_time_uploaded': 0, 'last_value': '', }, 'tripenablediundercurrent': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'TripEnabled_I_Undercurrent', 'last_time_uploaded': 0, 'last_value': '', }, 'tripenablediunderload': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'TripEnabled_I_Underload', 'last_time_uploaded': 0, 'last_value': '', }, 'tripenablevoverfrequency': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'TripEnable_V_Overfrequency', 'last_time_uploaded': 0, 'last_value': '', }, 'tripenablevovervoltage': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'TripEnable_V_Overvoltage', 'last_time_uploaded': 0, 'last_value': '', }, 'tripenablevphaserotation': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'TripEnable_V_PhaseRotation', 'last_time_uploaded': 0, 'last_value': '', }, 'tripenablevunderfrequency': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'TripEnable_V_Underfrequency', 'last_time_uploaded': 0, 'last_value': '', }, 'tripenablevundervoltage': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'TripEnable_V_Undervoltage', 'last_time_uploaded': 0, 'last_value': '', }, 'tripenablevvoltageunbalance': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'TripEnable_V_VoltageUnbalance', 'last_time_uploaded': 0, 'last_value': '', }, 'tripresetcmd': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'TripResetCmd', 'last_time_uploaded': 0, 'last_value': '', }, 'tripstatus': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'TripStatus', 'last_time_uploaded': 0, 'last_value': '', }, 'tripstatuscontrolint': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'TripStatusControl_INT', 'last_time_uploaded': 0, 'last_value': '', }, 'tripstatuscurrentint': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'TripStatusCurrent_INT', 'last_time_uploaded': 0, 'last_value': '', }, 'tripstatuspowerint': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'TripStatusPower_INT', 'last_time_uploaded': 0, 'last_value': '', }, 'tripstatusvoltageint': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'TripStatusVoltage_INT', 'last_time_uploaded': 0, 'last_value': '', }, 'valoverloadtripcount': { 'data_type': 'DINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'val_OverloadTripCount', 'last_time_uploaded': 0, 'last_value': '', }, 'valtripcount': { 'data_type': 'DINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'val_TripCount', 'last_time_uploaded': 0, 'last_value': '', }, 'voltageok': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'VoltageOK', 'last_time_uploaded': 0, 'last_value': '', }, 'warningenabledicurrentimbalanc': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'WarningEnabled_I_CurrentImbalance', 'last_time_uploaded': 0, 'last_value': '', }, 'warningenabledigroundfault': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'WarningEnabled_I_GroundFault', 'last_time_uploaded': 0, 'last_value': '', }, 'warningenabledijam': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'WarningEnabled_I_Jam', 'last_time_uploaded': 0, 'last_value': '', }, 'warningenabledilineloss': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'WarningEnabled_I_LineLoss', 'last_time_uploaded': 0, 'last_value': '', }, 'warningenablediovercurrent': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'WarningEnabled_I_Overcurrent', 'last_time_uploaded': 0, 'last_value': '', }, 'warningenabledioverload': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'WarningEnabled_I_Overload', 'last_time_uploaded': 0, 'last_value': '', }, 'warningenablediphaseloss': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'WarningEnabled_I_PhaseLoss', 'last_time_uploaded': 0, 'last_value': '', }, 'warningenabledistall': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'WarningEnabled_I_Stall', 'last_time_uploaded': 0, 'last_value': '', }, 'warningenablediundercurrent': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'WarningEnabled_I_Undercurrent', 'last_time_uploaded': 0, 'last_value': '', }, 'warningenablediunderload': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'WarningEnabled_I_Underload', 'last_time_uploaded': 0, 'last_value': '', }, 'warningenablevoverfrequency': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'WarningEnable_V_Overfrequency', 'last_time_uploaded': 0, 'last_value': '', }, 'warningenablevovervoltage': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'WarningEnable_V_Overvoltage', 'last_time_uploaded': 0, 'last_value': '', }, 'warningenablevphaserotation': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'WarningEnable_V_PhaseRotation', 'last_time_uploaded': 0, 'last_value': '', }, 'warningenablevunderfrequency': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'WarningEnable_V_Underfrequency', 'last_time_uploaded': 0, 'last_value': '', }, 'warningenablevundervoltage': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'WarningEnable_V_Undervoltage', 'last_time_uploaded': 0, 'last_value': '', }, 'warningenablevvoltageunbalance': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'WarningEnable_V_VoltageUnbalance', 'last_time_uploaded': 0, 'last_value': '', }, 'warningstatus': { 'data_type': 'BOOL', 'change_amount': None, 'max_time_between_uploads': 3600, 'tag': 'WarningStatus', 'last_time_uploaded': 0, 'last_value': '', }, 'warningstatuscontrolint': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'WarningStatusControl_INT', 'last_time_uploaded': 0, 'last_value': '', }, 'warningstatuscurrentint': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'WarningStatusCurrent_INT', 'last_time_uploaded': 0, 'last_value': '', }, 'warningstatuspowerint': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'WarningStatusPower_INT', 'last_time_uploaded': 0, 'last_value': '', }, 'warningstatusvoltageint': { 'data_type': 'UINT', 'change_amount': 0.5, 'max_time_between_uploads': 3600, 'tag': 'WarningStatusVoltage_INT', 'last_time_uploaded': 0, 'last_value': '', }, } with open('ipp_channels.p', 'wb') as ch_f: pickle.dump(channels, ch_f) \ No newline at end of file