This is topic Применение компонента Канал HEX16 in forum TRACE MODE 6 бесплатная Базовая версия / TRACE MODE 6 free Base version at Форум TRACE MODE: техническая поддержка.


To visit this topic, use this URL:
http://forum.adastra.ru/ultimatebb.php/ubb/get_topic/f/31/t/001539.html

Posted by St_Denis_St (Участник № / Member № 7259) on :
 
Добрый день, уважаемая служба поддержки!
Подскажите как при использовании компонента "Канал HEX16" для отображения показаний регистра с знаком "-", выводить значение в виде "+/-32,5 С", а не "-32 С", то есть добавить значение после запятой. Например без привязки к "Каналу HEX16" это можно сделать в "Обработке" добавив коэффициент "Множитель", предварительно умножив в программе ПЛК значение записываемое в регистр на 10, если хотим получить один знак после запятой. А как быть в случае применения "Канал HEX16"?
И почему при переименовывании созданного компонента "Rout_Word(3)" для отображения, например в "TEMPERATURA" и после перетаскивания его в группу "Каналы" он автоматически интерпретируется как "Канал HEX16" и не имеет возможности ввода коэффициента "Множитель"?
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Создание канала HEX16 от "Источника" Rout_Word(3) методом автопостроения учитывает, что в настройках "Источника" по умолчанию указано "Дискрет" (целочисленное).
Чтобы в процедуре автопостроения создавался канал FLOAT, надо в настройках "Источника" указать "Аналог".
Однако при этом число, считанное из WORD-регистра, будет интепретироваться как беззнаковое.

Чтобы сделать его знаковым, вещественным и дробным, надо встраивать в канал FLOAT программу трасляции, например, такую:
PROGRAM
VAR_INPUT Аппаратное_значение : INT; END_VAR
VAR_OUTPUT Реальное_значение : REAL; END_VAR
VAR_INPUT Kx : REAL; END_VAR

Реальное_значение = Kx*Аппаратное_значение;

END_PROGRAM

Здесь множитель Kx может быть заменен на заведомо известную константу.
Если подобная программа будет использоваться в нескольких каналах, то значения множителя для разных каналов можно задать значением соответствующего аргумента программы.

Для организации вызова программы трансляции достаточно перетащить (D&D) шаблон программы на канал FLOAT и затем привязать появившиеся аргументы канала к его атрибутам и задать значение множителя для конкретного параметра.

См. раздел "Каналы и системные переменные/Числовые каналы".
 


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



Powered by Infopop Corporation
UBB.classic™ 6.7.2