/
DimerTrue
/
ecg_gui
Обзор
Документация
Войти
/
DimerTrue
/
ecg_gui
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
config/write_data_config.py
114 строк
4 KB
dimer
add status connection bar
21 июл 2026, 15:22
21 июл 2026, 15:22
245fab6
Код
Авторство
О чём код?
# write_data_config.py from models.device_state import WriteCommandType, WriteRegisterConfig from modbus_device.protocol import ProtocolField from modbus_device.protocol.configs import PROTOCOL_CONFIGS from modbus_device.protocol.enums import WriteResult VALID_BAUDRATES = {"9600": 1, "19200": 2, "38400": 3, "57600": 4, "115200": 5} WRITE_PARAMS = { WriteCommandType.WRITE_VOLTAGE_MIN: WriteRegisterConfig( name="Umin", min_value=[ str( (PROTOCOL_CONFIGS.get(ProtocolField.VOLTAGE_OUTPUT_MIN_W)).get( "min_value" ) * (PROTOCOL_CONFIGS.get(ProtocolField.VOLTAGE_OUTPUT_MIN_W)).get( "scale" ) ) ], max_value=[ str( (PROTOCOL_CONFIGS.get(ProtocolField.VOLTAGE_OUTPUT_MIN_W)).get( "max_value" ) * (PROTOCOL_CONFIGS.get(ProtocolField.VOLTAGE_OUTPUT_MIN_W)).get( "scale" ) ) ], address=[ProtocolField.VOLTAGE_OUTPUT_MIN_W], ), WriteCommandType.WRITE_VOLTAGE_MAX: WriteRegisterConfig( name="Umax", min_value=[ str( (PROTOCOL_CONFIGS.get(ProtocolField.VOLTAGE_OUTPUT_MAX_W)).get( "min_value" ) * (PROTOCOL_CONFIGS.get(ProtocolField.VOLTAGE_OUTPUT_MAX_W)).get( "scale" ) ) ], max_value=[ str( (PROTOCOL_CONFIGS.get(ProtocolField.VOLTAGE_OUTPUT_MAX_W)).get( "max_value" ) * (PROTOCOL_CONFIGS.get(ProtocolField.VOLTAGE_OUTPUT_MAX_W)).get( "scale" ) ) ], address=[ProtocolField.VOLTAGE_OUTPUT_MAX_W], ), WriteCommandType.WRITE_CURRENT_MAX: WriteRegisterConfig( name="Imax", min_value=[ str( (PROTOCOL_CONFIGS.get(ProtocolField.CURRENT_OUTPUT_MAX_W)).get( "min_value" ) * (PROTOCOL_CONFIGS.get(ProtocolField.CURRENT_OUTPUT_MAX_W)).get( "scale" ) ) ], max_value=[ str( (PROTOCOL_CONFIGS.get(ProtocolField.CURRENT_OUTPUT_MAX_W)).get( "max_value" ) * (PROTOCOL_CONFIGS.get(ProtocolField.CURRENT_OUTPUT_MAX_W)).get( "scale" ) ) ], address=[ProtocolField.CURRENT_OUTPUT_MAX_W], ), WriteCommandType.WRITE_STATUS: WriteRegisterConfig( name="Статус записи", min_value=[""], max_value=[""], address=[ProtocolField.STATUS_WRITE], ), WriteCommandType.WRITE_RS485: WriteRegisterConfig( name="Параметры RS485", min_value=[ "", str( (PROTOCOL_CONFIGS.get(ProtocolField.SLAVE_ID)).get("min_value") * (PROTOCOL_CONFIGS.get(ProtocolField.SLAVE_ID)).get("scale"), ), ], max_value=[ "", str( (PROTOCOL_CONFIGS.get(ProtocolField.SLAVE_ID)).get("max_value") * (PROTOCOL_CONFIGS.get(ProtocolField.SLAVE_ID)).get("scale"), ), ], address=[ProtocolField.BAUDRATE, ProtocolField.SLAVE_ID], ), } WRITE_RESULTS = { WriteResult.OK: "Запись выполнена!", WriteResult.CRC_WARNING: "Запись не гарантирована (поврежден CRC)! Вероятно, используется старая прошивка. Для проверки смотрите, изменились ли поля записи.", WriteResult.ERROR: "Запись неудачна! Попробуйте еще раз.", }