Форум TRACE MODE: техническая поддержка Послать новую тему / Post New Topic  Послать ответ / Post A Reply
мой профиль / my profile авторизация / login | регистрация / register | поиск / search | часто задаваемые вопросы / faq | начало / forum home

  Следующая старая тема / next oldest topic   Следующая новая тема / next newest topic
» Форум TRACE MODE: техническая поддержка » Пользователи для пользователей » Пользователи для пользователей » modbus

   
Автор / Author Тема / Topic: modbus
drooha
Forum Haunter / Завсегдатай форума
Участник № / Member № 3306


Icon 5 отправлено / posted      Профиль для / Profile for drooha           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Для записи в контроллер 4-х байтового значения необходима функция 16(10 Hex) Preset Multiple Regs, протокола Modbus RTU.
В TM6 для работы с 4-х байтовыми значениями имеется W_Float(16), которая передаёт значение с плавающей точкой типа out,и естественно с использованием этой функции передается совсем другое число. Может кто нибудь сталкивался с подобной проблемой, подскажите пожалуйста как быть.

Сообщения / Posts 107 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Dmitry.niimm
Junior Member / Новичок
Участник № / Member № 3380


Icon 1 отправлено / posted      Профиль для / Profile for Dmitry.niimm           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
А в чем, собственно, проблема?

По стандарту Modbus отсутствует такое понятие как 4-байтовое целое (впрочем как и вещественное любой длины) - есть только 16-битные регистры и битовые поля. То, что некоторые девайсы получают такие данные - это нестандартизованное расширение стандарта и реализуется как использование двух последовательных 16-битных регистров, причем какой из них используется в качестве старшей половины, а какой - младшей, это уже остается на совести производителей.

Поэтому выход только один:
1) создать источник/приемник Modbus/hex16 out, указывающий на _первый_ из регистров;
2) к источнику привязать канал ChGroupReq с двумя аргументами UINT;
3) в аргументы канала из п.2 вручную (т.е. отдельным каналом call.program) ложить две половинки значения hex32 _в_нужном_порядке_.

Короче говоря, rtfm:
"Канал CALL.ChGroupReq...
...Привязка источника MODBUS чтения или записи.
Выполняется соответственно групповое чтение или групповая запись (WORD, FLOAT) при обмене с заданным устройством по MODBUS (в том числе по MODBUS TCP/IP). Устройство и начальный адрес задаются в источнике, количество считываемых/устанавливаемых параметров определяется числом аргументов канала."

Сообщения / Posts 19 | Из / From: Украина  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
drooha
Forum Haunter / Завсегдатай форума
Участник № / Member № 3306


Icon 1 отправлено / posted      Профиль для / Profile for drooha           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Спасибо, я решил задачу немного подругому
Сообщения / Posts 107 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Сергей_Регион_Автоматика
Junior Member / Новичок
Участник № / Member № 4003


Icon 1 отправлено / posted      Профиль для / Profile for Сергей_Регион_Автоматика           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Простите пожалуйста, а каким образом еще можно решить эту задачу с чтением/передачей 3 или 4 байтового числа?
Сообщения / Posts 9 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
   

Quick Reply
Сообщение / Message:

HTML код не разрешен. / HTML is not enabled.
UBB код разрешен. / UBB Code is enabled.

Значки Graemlins / Instant Graemlins
   


Послать новую тему / Post New Topic  Послать ответ / Post A Reply Закрыть тему / Close Topic   Feature Topic   Переместить топик / Move Topic   Удалить топик / Delete Topic Следующая старая тема / next oldest topic   Следующая новая тема / next newest topic
 - Printer-friendly view of this topic
Перейти к / Hop To


Новости АСУ ТП / News | SCADA / HMI | Обучение / Trainings | Свяжитесь с нами / Contact Us



Powered by Infopop Corporation
UBB.classic™ 6.7.2