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

  Следующая старая тема / next oldest topic   Следующая новая тема / next newest topic
» Форум TRACE MODE: техническая поддержка » ТЕХНИЧЕСКАЯ ПОДДЕРЖКА / TECHNICAL SUPPORT TRACE MODE 6 » Драйверы / Device Drivers » Float to Int32

   
Автор / Author Тема / Topic: Float to Int32
timchenkodn
Junior Member / Новичок
Участник № / Member № 6436


Icon 1 отправлено / posted      Профиль для / Profile for timchenkodn           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
МРВ должен обмениваться с устройством по modbus. В МРВ должна задаваться уставка, например, 1.234. Это число нужно умножить на 1000 и передать в устройство, но тип данных должен быть не Float, а Int32.
Как выполнить преобразование? Какой функцией выполнить передачу?

Сообщения / Posts 22 | Из / From: Russia  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
AdAstra Technical Support
Moderator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for AdAstra Technical Support           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Сначала программно преобразуйте в целое число и разбейте его на 2 числа формата INT (с помощью функциональных блоков библиотеки FBD).
2 целых числа (2 слова) передайте в устройство каналом CALL.ChGroupReq, привязанным к Modbus-переменной типа W_word (16) (см. описание канала CALL.ChGroupReq).
2 регистра могут интерпретироваться в устройстве как DINT.

Сообщения / Posts 15120 | Из / From: Russia  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
timchenkodn
Junior Member / Новичок
Участник № / Member № 6436


Icon 1 отправлено / posted      Профиль для / Profile for timchenkodn           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Я правильно понимаю, что в канале CALL.ChGroupReq создаю 2 аргумента типа OUT и в них передаю 2 слова?
Сам канал привязан к приемнику типа W_word(16). Какой параметр задать для канала CALL.ChGroupReq?

Сообщения / Posts 22 | Из / From: Russia  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
AdAstra Technical Support
Moderator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for AdAstra Technical Support           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Аргументы типа INPUT.
ПАРАМЕТР=0.

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


Icon 1 отправлено / posted      Профиль для / Profile for Nico           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
А если ист/приемник привязать к каналу out.hex32 ?
Сообщения / Posts 554 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
timchenkodn
Junior Member / Новичок
Участник № / Member № 6436


Icon 1 отправлено / posted      Профиль для / Profile for timchenkodn           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Что-то не получается, не посылает в порт. Если в МРВ в компонентах послать на вход на CALL.ChGroupReq, то в порт отсылается сообщение правильной структуры, но с нулями вместо данных. Как посмотреть не пустые ли аргументы в канале?
Есть ли пример с реализацией?

Сообщения / Posts 22 | Из / From: Russia  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
timchenkodn
Junior Member / Новичок
Участник № / Member № 6436


Icon 1 отправлено / posted      Профиль для / Profile for timchenkodn           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
to Nico,
спасибо, помогло. Привязался к out hex32 и функцией W_Float(16) передал в порт

Сообщения / Posts 22 | Из / From: Russia  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
RomanUI
Junior Member / Новичок
Участник № / Member № 4022


Icon 1 отправлено / posted      Профиль для / Profile for RomanUI           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Добрый день!
1. Система состоит из RTM->MicroRTM(WinPAC8841)->PLC Pixel. Обмен WinPAC с Pixel осуществляется по Modbus, а обмен RTM->MicroRTM оп LAN. Проблема в следующем... В узле MicroRTM с Pixel считывается функцией Rin_Float(4) вещественное число, которое привязывается к каналу HEX32, в данном канале оно не преобразуется в hex, т.е. Rin_Float(4)->HEX32 = 0. При ситуации Rin_Float(4)->Float(канал) - все в порядке, но мне нужно именно в двоичном виде. При работе этого алгоритма в обычном RTM, никаких проблем не возникает. Используемые продукты: TM-6-256-P-RU-WIN 6.08 и MCTM-WCG-6-128-L1-P-RU-CE.
2. Как обновить модуль MCTM-WCG-6-128-L1-P-RU-CE, т.к. при работе RTM 6.09 у меня проблема с ним.

Сообщения / Posts 24 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
AdAstra Technical Support
Moderator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for AdAstra Technical Support           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
1. Описанная проблема у нас не воспроизвелась. Пришлите на адрес Технической Поддержки файл проекта (*.prj) с описанием задачи.

2. обновить можно любое зарегистрированное ПО через Личный Кабинет.

Сообщения / Posts 15120 | Из / From: Russia  |  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

Rambler's Top100 Rambler's Top100



Powered by Infopop Corporation
UBB.classic™ 6.7.2