Реклама / ООО «ИЗОЛПРОЕКТ» / ИНН: 7725566484 | ERID: 2Vtzqx6kV7S
IPB IPB
Проектирование, монтаж, наладка, сервис


Здравствуйте, гость ( Вход | Регистрация )

- Стандарт НП «АВОК» 7.11-2024
«Рекомендации по проектированию инженерных систем
дошкольных образовательных организаций»

АВОК в соц. сетях
ИНН: 7714824045 | erid: 2VtzqwzKQiU
 
Добавить ответ в эту темуОткрыть тему
> Modicon M340+modbus, Подключение прибора
olegsv
сообщение 4.5.2013, 22:20
Сообщение #1





Группа: New
Сообщений: 2
Регистрация: 20.6.2009
Пользователь №: 35084



Здравствуйте!
Ранее я не связывался с modbus на M340 (другие контроллеры или как то обходил это). Возникла необходимость прикрутить к контроллеру прибор. Решил проверить перед покупкой на совместимость (а то были казусы)
Из доки на прибор:
Прибор поддерживает сообщения, содержащие функции типа 03 и 04 (см. таблицу 8). В ответе на запрос от компьютера на чтение из определенного поля может содержаться функция типа 03 или 04 в зависимости от формата полученного запроса.
Отличие этих функций заключается в том, что при использовании функции типа 03 прибор посылает только целую часть значения поля, запрашиваемого компьютером. Соответственно, компьютер отобразит в соответствующем поле значение целой части.
При использовании функции типа 04 значение запрашиваемого поля передается в виде целой и дробной части, хранящихся в отдельных регистрах. Компьютер объединяет целую и дробную часть в единое число с плавающей точкой. Подробнее информация об операциях с плавающей точкой содержится в документе IEEE Standard 754 Floating Point.

В нелпе нарыл:
The Real format (floating point in ANSI/IEEE 754 standard) is coded in 32 bit format which corresponds to the single decimal point floating numbers.
И по функция
Read words (until 125 registers) 16#03 READ_VAR
Read input words (until 124 registers) 16#04 SEND_REQ


Вроде все нормально, но у меня какое-то ощущение, что что-то я не досмотрел.
под рукой железа пока нет и проверить не могу.
Как думаете можно будет считать float или заранее искать обходные пути?
Может кто сталкивался с подобным?
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
san
сообщение 8.5.2013, 10:30
Сообщение #2





Группа: Участники форума
Сообщений: 531
Регистрация: 10.1.2008
Из: Киев
Пользователь №: 14316



1) Сейчас UNITY PRO под рукой нет. Но по моему можно считать регистры через 04 (read input registers) функцией READ_VAR задав в параметрах "%IW", а задав "%MW" - будут считываться регистры функцией 03 (read holding registers).
2) В модбасе нет функций чтения флоатов. По этому нужно считывать в 2 раза больше регистров, потом обращаться к ним как к real. Например, можно выделить массив для приема %MW40:2 и опредлить переменную fVar1 как real привязанную к %MW40. Правда возможно придётся поиграться с изменением порядка регистров младший/старший.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения

Добавить ответ в эту темуОткрыть тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

Реклама
ООО «Арктика групп» ИНН: 7713634274




Реклама: ООО «СибСтронг» | ИНН 6670013662 | ERID: 2VtzqvWgxEU

ООО «УНИСПЛИТ» ИНН: 6453155081 erid:2VtzqvybpdW

Реклама: ООО «СЛ-ЛАЗЕР» ИНН 7727447267 | erid: 2VtzquvhFWx
Последние сообщения Форума






RSS Текстовая версия Сейчас: 3.8.2025, 17:10
Политика ООО ИИП «АВОК-ПРЕСС» в отношении обработки персональных данных