PL ProtoLink

ProtoLink 0.2.0

Частые вопросы

Ответы на типичные вопросы запуска, портов и установки

Что делает ProtoLink и для каких задач он подходит?

ProtoLink 0.2.0 — локальный инструмент для быстрой проверки Modbus TCP и Modbus RTU устройств. Он открывается в браузере по адресу 127.0.0.1:8000, умеет читать coils, discrete inputs, holding registers и input registers, а также записывать один holding register. Это инструмент для проверки связи, адресов и базовых операций, а не SCADA, сервер-симулятор или система архивирования.

Какие операции Modbus поддерживаются сейчас?

В версии 0.2.0 поддержаны чтение coils (FC01), discrete inputs (FC02), holding registers (FC03), input registers (FC04) и запись одного holding register (FC06). Для RTU в запросах используются address 0-65535, Unit ID 1-247, timeout 0.5-30 секунд; для holding/input registers можно читать до 125 регистров за запрос. Запись coils, множественная запись регистров и автоматическое сканирование адресов не заявлены как возможности 0.2.0.

Почему устройство не отвечает или появляется timeout?

Timeout обычно означает, что запрос отправлен, но корректного ответа не пришло. Для TCP проверьте IP-адрес, порт устройства, доступность сети и Unit ID. Для RTU проверьте выбранный COM/serial-порт, baudrate, parity, stop bits, byte size, Unit ID, питание устройства, A/B линии RS-485, терминатор на длинной линии и занятость порта другим приложением. Если линия медленная или через радио/шлюз, увеличьте timeout.

Какой адрес регистра вводить: 0, 1, 40001 или 30001?

ProtoLink использует protocol/data address, то есть нумерацию с нуля. Например, если документация устройства говорит о holding register 40001, часто в ProtoLink нужно ввести address 0 и выбрать чтение holding registers (FC03). Если документация неясная и данные не читаются, проверьте соседний адрес +1 или -1 и убедитесь, что выбран правильный тип: coil, discrete input, input register или holding register.

Почему COM-порт или serial-порт не виден?

На Windows проверьте USB-RS485 драйвер и раздел Ports (COM & LPT) в Device Manager. На Linux проверьте /dev/ttyUSB*, /dev/ttyACM* или /dev/ttyS* и права пользователя; часто нужна группа dialout. На macOS serial-устройства обычно находятся как /dev/cu.*. Также убедитесь, что порт не открыт другим приложением: serial-порт обычно может использовать только один процесс одновременно.

Нужно ли устанавливать Python, Node.js или Docker для запуска готовой версии?

Для обычного запуска готовых пакетов Python, Node.js и npm не требуются: в поставке уже есть backend и собранный frontend. Docker для ProtoLink не используется и намеренно не входит в текущий сценарий. Python и Node.js нужны только если вы запускаете проект из исходников для разработки.

Как проверить, что ProtoLink запустился правильно?

Откройте 127.0.0.1:8000 в браузере. Для технической проверки можно запросить healthcheck: 127.0.0.1:8000/api/healthz. В версии 0.2.0 ожидаемый ответ содержит {"status":"ok","version":"0.2.0"}. Если страница не открывается, проверьте, запущено ли приложение и не занят ли локальный порт 8000.

Что означает Modbus error или exception?

Это отличается от timeout. При timeout устройство не прислало корректный ответ. При Modbus exception устройство получило запрос, но не смогло его выполнить: например, выбран неподдерживаемый function code, несуществующий адрес регистра или недопустимое значение. Проверьте тип данных, address, count, Unit ID и документацию устройства.

Есть ли в ProtoLink симулятор устройств, автопоиск адресов или расшифровка float/endianness?

В версии 0.2.0 это не заявлено как текущая функция. ProtoLink фокусируется на локальном подключении к Modbus TCP/RTU устройству, чтении базовых областей Modbus и записи одного holding register. Если нужно тестировать без железа, можно отдельно использовать Modbus slave simulator; если нужно искать неизвестную карту регистров или подбирать byte/word order, это пока лучше делать специализированными диагностическими инструментами.

Готовы скачать?

Перейдите к платформенным карточкам.

Скачать ProtoLink