|
@@ -140,8 +140,7 @@ class IO_AnalogInput(IO_Module):
|
|
|
|
|
|
def get_presets_max(self):
|
|
|
'Максимальное значение уставок по все каналам'
|
|
|
- data = struct.unpack('>ffffffffffff', self.modbus.read_holding_registers_raw(AiReg.PR_MAX.value, 24))
|
|
|
- return data
|
|
|
+ return struct.unpack('>ffffffffffff', self.modbus.read_holding_registers_raw(AiReg.PR_MAX.value, 24))
|
|
|
|
|
|
|
|
|
def get_preset_hist(self, channel):
|
|
@@ -150,11 +149,9 @@ class IO_AnalogInput(IO_Module):
|
|
|
|
|
|
|
|
|
def get_presets_hist(self):
|
|
|
- 'Максимальное значение уставок по все каналам'
|
|
|
- data = []
|
|
|
- for i in range(12):
|
|
|
- data.append(self.modbus.read_float_holding(AiReg.PR_HIST.value + i*2))
|
|
|
- return data
|
|
|
+ '''Значение гистерезисов уставок'''
|
|
|
+ return struct.unpack('>ffffffffffff', self.modbus.read_holding_registers_raw(AiReg.PR_HIST.value, 24))
|
|
|
+
|
|
|
|
|
|
|
|
|
|
|
@@ -218,6 +215,9 @@ class IO_AnalogInput(IO_Module):
|
|
|
'Максимальное значение уставки на отдельный канал'
|
|
|
self.modbus.write_float(AiReg.PR_MAX.value + 2*(channel - 1), value)
|
|
|
|
|
|
+ def set_preset_hyst(self, channel, value):
|
|
|
+ 'Значение гистерезиса уставки на отдельный канал'
|
|
|
+ self.modbus.write_float(AiReg.PR_HIST.value + 2*(channel - 1), value)
|
|
|
|
|
|
'''Настройки входов'''
|
|
|
def print_inputs(self):
|
|
@@ -241,18 +241,18 @@ class IO_AnalogInput(IO_Module):
|
|
|
|
|
|
# Нижнее значение уставки
|
|
|
data = self.get_presets_min()
|
|
|
- print('Inputs preset min: ', Fore.GREEN + f'1: {data[0]}, 2: {data[0]}, 3: {data[0]}, 4: {data[0]}, 5: {data[0]}, 6: {data[0]}')
|
|
|
- print('Inputs preset min: ', Fore.GREEN + f'7: {data[0]}, 8: {data[0]}, 9: {data[0]}, 10: {data[0]}, 11: {data[0]}, 12: {data[0]}')
|
|
|
+ print('Inputs preset min: ', Fore.GREEN + f'1: {data[0]}, 2: {data[1]}, 3: {data[2]}, 4: {data[3]}, 5: {data[4]}, 6: {data[5]}')
|
|
|
+ print('Inputs preset min: ', Fore.GREEN + f'7: {data[6]}, 8: {data[7]}, 9: {data[8]}, 10: {data[9]}, 11: {data[10]}, 12: {data[11]}')
|
|
|
|
|
|
# Верхнее значение уставок
|
|
|
data = self.get_presets_max()
|
|
|
- print('Inputs preset max: ', Fore.GREEN + f'1: {data[0]}, 2: {data[0]}, 3: {data[0]}, 4: {data[0]}, 5: {data[0]}, 6: {data[0]}')
|
|
|
- print('Inputs preset max: ', Fore.GREEN + f'7: {data[0]}, 8: {data[0]}, 9: {data[0]}, 10: {data[0]}, 11: {data[0]}, 12: {data[0]}')
|
|
|
-
|
|
|
-
|
|
|
+ print('Inputs preset max: ', Fore.GREEN + f'1: {data[0]}, 2: {data[1]}, 3: {data[2]}, 4: {data[3]}, 5: {data[4]}, 6: {data[5]}')
|
|
|
+ print('Inputs preset max: ', Fore.GREEN + f'7: {data[6]}, 8: {data[7]}, 9: {data[8]}, 10: {data[9]}, 11: {data[10]}, 12: {data[11]}')
|
|
|
|
|
|
# Гистерезис
|
|
|
-
|
|
|
+ data = self.get_presets_hist()
|
|
|
+ print('Input preset hyst: ', Fore.GREEN + f'1: {data[0]}, 2: {data[1]}, 3: {data[2]}, 4: {data[3]}, 5: {data[4]}, 6: {data[5]}')
|
|
|
+ print('Input preset hyst: ', Fore.GREEN + f'7: {data[6]}, 8: {data[7]}, 9: {data[8]}, 10: {data[9]}, 11: {data[10]}, 12: {data[11]}')
|
|
|
|
|
|
|
|
|
# Коэффициенты усиления
|
|
@@ -317,13 +317,17 @@ def main():
|
|
|
ai = IO_AnalogInput(modbus_tester)
|
|
|
|
|
|
'''Режим работы аналоговых входов'''
|
|
|
- # ai.print_inputs()
|
|
|
- # ai.set_presets_state(0b00_0000_0000)
|
|
|
-
|
|
|
+ # ai.set_inputs_state(0b1111_1111_1111)
|
|
|
+ ai.print_inputs()
|
|
|
+
|
|
|
# ai.show_graph(ai.get_fil_inputs, 'AIN_FIL_1')
|
|
|
|
|
|
'''Уставки'''
|
|
|
-
|
|
|
+ # ai.set_presets_state(0b1111_1111_1111)
|
|
|
+ # for i in range(1, 13):
|
|
|
+ # ai.set_preset_max(i, 18.5)
|
|
|
+ # ai.set_preset_min(i, 2)
|
|
|
+ # ai.set_preset_hyst(i, 1)
|
|
|
|
|
|
'''Данные входов'''
|
|
|
# while True:
|
|
@@ -335,7 +339,7 @@ def main():
|
|
|
|
|
|
# ai.print_inputs()
|
|
|
|
|
|
- # ai.sys.save_settings()
|
|
|
+ ai.sys.save_settings()
|
|
|
|
|
|
'''Установка коэффициентов усиления. Канал, коэффициент'''
|
|
|
'''
|