M3KTE_TERM/ТЗ/неофтз.txt
Вячеслав Штейбезандт 5b2a64a39b Программа нуждается в тестировании.
Реализовано и проверено:
1) Подключение устройства
2) Запись и чтение Coil и Holding регистров
3) Индикация работы МЗКТЭ и напряжения на ТЭ

Реализовано и нуждается в проверке:
1) Поиск плат и установление их адресов в сети
2) Сканирование текущих настроек платы при подключении
3) Опрос текущих значений напряжений ТЭ по таймеру
4) Изменение скорости обмена, сетевого адреса плат и настройка контроля четности.

#3
2024-12-10 17:19:23 +03:00

37 lines
1.7 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

По модбасу: нужна терминалка для общения с МЗКТЭ. Вот краткое ТЗ
Команды:
0x01 Read Coils
0x03 Read Holding Registers
0x04 Read Input Registers
0x05 Write Single Coil
0x06 Write Single Register
0x0F Write Multiple Coils
0x10 Write Multiple Registers
Т.е. обращение будет к следующим типам данных:
- Входные регистры (MB_DataInRegsTypeDef),
- Регистры хранения (MB_DataHoldRegsTypeDef),
- Коилы (MB_DataCoilsTypeDef).
Там некоторые регистры еще парсяться, поэтому скидываю файл с структурой данных, который я сделал. В скобках указал имя typedef соответствующего типа данных в файле. Можешь его использовать, заодно мб придумаешь че можно улучшить.
По программе:
Там идет управление и контроль ТЭ (топливные элементы), которых всего 85 штук. С них снимается задаются две уставки: предупреждение и авария. Коилами можно исключать ТЭ из работы.
Также есть пару управляющих настроек и статус-регистр.
Соответственно можно сделать два окна:
- одно небольшое - для статуса МЗКТЭ
- второе большое - для ТЭ. Можно сделать 4 вкладки, в каждой 85 ячеек:
- Напряжение на ТЭ,
- Уставки "Предупреждение",
- Уставки "Авария",
- Исключения ТЭ
И можно сделать одно открываемое окно для настроек. Типа по кнопке "Настройки МЗКТЭ". Это для регистров хранения 170-174. И если что их запись должна быть только по команде 0x06 (сингл). Остальные уставки поддерживают запись 0x10 (мультипл).
Статус МКЗТЭ и Напряжения на ТЭ только считывается (команда 0x04)
Уставки "Предупреждение" и "Авария" можно считать и записать всеми способами (0x03, 0x06, 0x10)
Настройки МЗКТЭ можно считывать и записать только по одному регистру (0x03, 0x06)
Исключения ТЭ можно считывать и записывать всеми способами (0x01, 0x05, 0x0F)