Вход

Просмотр полной версии : Пр103 и МВ210-214



MaximLivanov
07.05.2025, 19:46
Добрый день, проблемка со считыванием состояний дискретных входов с МВ210 в ПР103 по протоколу Modbus TCP, я добавил мастер устройство создал переменную регистр 51 тип целочисленное количество регистров 2. При попытке извлечь бит ни чего не получается. На сколько я понял тип данных у МВ210-214 unit32, как мне считать все 32 входа? Прошу помощи

kondor3000
07.05.2025, 20:10
Добрый день, проблемка со считыванием состояний дискретных входов с МВ210 в ПР103 по протоколу Modbus TCP, я добавил мастер устройство создал переменную регистр 51 тип целочисленное количество регистров 2. При попытке извлечь бит ни чего не получается. На сколько я понял тип данных у МВ210-214 unit32, как мне считать все 32 входа? Прошу помощи

Всё правильно у вас, осталось проверить правильность порядка регистров и байт. 83677
Включаете 1 вход модуля и смотрите сколько у вас в переменной. Если 1 то всё правильно.
Если нет, ставите ( убираете) галки Старш. Регистром вперёд, Старшим байтом вперёд, пока не получите правильное чтение. Всего 4 варианта.
Далее, на скрине упаковка и распаковка 3 бит (с 0 по 2), распаковку до 32 бит допишите сами по аналогии.
Или на ST извлечение через точку, b0:=Mask.0; b1:=Mask.1; b2:=Mask.2;

MaximLivanov
07.05.2025, 20:31
Огромное спасибо за ответ, но можно немного по подробнее я еще только учусь этому. у меня картина следующая когда я читаю 0 бит из регистра 51 у меня почему то он определяется как 9 вход на МВ210. 83678

kondor3000
07.05.2025, 20:36
Огромное спасибо за ответ, но можно немного по подробнее я еще только учусь этому. у меня картина следующая когда я читаю 0 бит из регистра 51 у меня почему то он определяется как 9 вход на МВ210. 83678

Написал же, у вас по ходу байты переставлены. Снимите (поставьте) галку на байтах.

MaximLivanov
07.05.2025, 20:40
Я уже пробовал и ставить и снимать галочки83679

MaximLivanov
07.05.2025, 20:55
Все, вроде получилось, спасибо за ответ. Глюк какой то был перезагрузил все и заново все расставил, с галочкой старшим битом все встало на место.

kondor3000
07.05.2025, 21:04
Все, вроде получилось, спасибо за ответ. Глюк какой то был перезагрузил все и заново все расставил, с галочкой старшим битом все встало на место.

Только не битом, а байтом, в байте 8 бит. Вот правильно читается всё 83680 83681

MaximLivanov
07.05.2025, 21:24
Только не битом, а байтом, в байте 8 бит. Вот правильно читается всё 83680 83681

Да верно ошибся, "байтом", осталось с СП310 разобраться как туда добавить. Колоночка на 32 выхода только получилась. Еще раз спасибо за помощь83682