Просмотр полной версии : Управление ОВЕН МК110 через гипертерминал
Здравствуйте, подскажите, правильно ли вообще делаю. Есть Овен МК110-220.4ДН.4Р и датчик давления MicroPirani 925. Задача такая: нужно снимать показания с датчика и управлять выходами овен из одного окна hyperterminal, с одного компорта. На датчик есть документация, где есть все команды (https://www.lesker.com/newweb/gauges/pdf/kjlc-mks-gp-925-manual.pdf), а для Овена нет. Находила разные статьи как делать запросы, обращаясь в регистры, вроде делала все по инструкции, но все равно не работает, может, контрольную сумму неправильно считаю, может, принцип неправильно поняла (https://intellect-module.ru/downloads/manuals/inode_35D/ModBus_RTU.pdf). В овеновской инструкции есть команды для протокола DCON, но мне подсказали, что в обновленной версии он не поддерживается. А может, оно и вообще через терминал не работает. Какие команды существуют для МК, где их посмотреть? Может, кто-нибудь сталкивался с такой задачей? (это по учебе, возможно, есть более подходящие способы управлять двумя устройствами по rs485) 73317
МихаилГл
06.02.2024, 15:45
Попробуй Геркулес... А не гипер терминал.
А модбас вот тут проверить можно
https://rapidscada.net/modbus/
если хотите через терминал работать, то точно не с RTU, смотрите в сторону Modbus ASCII
Спасибо! А для датчика давления MicroPirani 925 команды будут работать в Геркулесе? ( @253SPR1?;FF - вот так они примерно выглядят)
Спасибо! А можете привести пример запроса, пожалуйста?
МихаилГл
06.02.2024, 16:04
Спасибо! А для датчика давления MicroPirani 925 команды будут работать в Геркулесе? ( @253SPR1?;FF - вот так они примерно выглядят)
Надо пробовать, думаю будут.
МихаилГл
06.02.2024, 16:05
Спасибо! А можете привести пример запроса, пожалуйста?
Перед тем как работать с модулем его надо настроить на те же параметры ком порта что и датчик, и задать какой нибудь допустимый адрес. А дальше всё просто.
МихаилГл
06.02.2024, 16:12
11 03 0033 0001 ХХХХ
11 Адрес устройства SlaveID (17 = 11 hex)
03 Функциональный код Function Code (читаем Holding Registers)
0033 Адрес первого регистра (51 dec = 33 hex) Битовая маска значений входов
0001 Количество требуемых регистров
ХХХХ Контрольная сумма CRC Смотреть по утилите рапид скады
Благодарю, буду пробовать
ASCII коды это тоже байты. посмотрел там все начинается с @ то есть адрес МК в сети Modbus не должен быть 96 (0x40) в принципе можно и на одной линии заставить работать.
з.ы. если есть понимание в программировании, можно и драйвер слепить для той же RapidScada.
МихаилГл
06.02.2024, 16:30
ASCII коды это тоже байты. посмотрел там все начинается с @ то есть адрес МК в сети Modbus не должен быть 96 (0x40) в принципе можно и на одной линии заставить работать.
з.ы. если есть понимание в программировании, можно и драйвер слепить для той же RapidScada.
Я пробовал через 1 ком порт параллельно подключенные датчики опрашивать с модбас и своим каким то протоколом. Всё работает одно плохо, если это модбас, то его придётся обрабатывать вручную, ну или с нуля программировать. А так одно и то же...
Хорошо, подумаю в эту сторону, спасибо
МихаилГл у меня RapidScada опрашивает ПР200 и Меркурий236 на одной линии. у счетчика свой протокол соответственно. Ничего, живут себе в циклическом опросе....
Modbus драйвер в RapidScada встроенный, для счетчика писал сам.
МихаилГл
06.02.2024, 17:08
МихаилГл у меня RapidScada опрашивает ПР200 и Меркурий236 на одной линии. у счетчика свой протокол соответственно. Ничего, живут себе в циклическом опросе....
Modbus драйвер в RapidScada встроенный, для счетчика писал сам.
Я в си не силён...
МихаилГл там C# что сильно упрощает. Плюс есть исходники всего и примеры тех же драйверов.
МихаилГл
06.02.2024, 17:27
МихаилГл там C# что сильно упрощает. Плюс есть исходники всего и примеры тех же драйверов.
Для меня что си, что си Шарп. Я еле с формулами разобрался. Особенно меня убивают фигурные скобки)
Powered by vBulletin® Version 4.2.3 Copyright © 2024 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot