Форум 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 » TRACE MODE 6 бесплатная Базовая версия / TRACE MODE 6 free Base version » Преобразование типов

   
Автор / Author Тема / Topic: Преобразование типов
AI
Active Forum Member / Активный участник форума
Участник № / Member № 3594


Icon 1 отправлено / posted      Профиль для / Profile for AI           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Добрый день.
У меня такая задача. Для обмена информацией с верхним уровнем на контроллере реализован командный интерфейс. Выделен массив регистров (массив типа WORD) для записи и чтения в качестве буфера. Это удобно, если у вас большое количество настроечных параметров, уставок и т.п., чтобы не выделять отдельный регистр под каждую переменную. В зависимости от кода команды в массив записываются (или читаются) разные данные с разными типами и производится их верификация по контрольной сумме.
ВОПРОС. Как средствами TRACE Mode переменную типа REAL разложить на 2 типа WORD и обратно...
Только начал знакомится со скадой и не пойму как это сделать. По ходу даже с указателями нельзя работать. ((

Сообщения / Posts 75 | Из / From: Russia  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
А почему именно REAL. Проще использовать DINT
Сообщения / Posts 17114 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
AI
Active Forum Member / Активный участник форума
Участник № / Member № 3594


Icon 1 отправлено / posted      Профиль для / Profile for AI           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Не понял ответ. А DINT как переведете в REAL?
Например, коэффицент передачи регулятора типа REAL. Надо это вещественное число разложить на 2 числа типа WORD и положить в модбас. На контроллере примерно так...
P_REAL : POINTER TO REAL;

-----------------------
P_REAL := ADR(ARRAY_WORD[0]);
P_REAL^:= RealParam;
Ну и контрольную сумму потом в цикле посчитать.

Ну в общем видимо не получится красиво сделать командный интерфейс. ПОдхожу к тому, что сделать два буфера, один для вещественных переменных, другой для целочисленных.

Сообщения / Posts 75 | Из / From: Russia  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


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

В Trace Mode для Modbus'a есть функция записи Float, но при этом на самом деле записываются два регистра WORD.

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