This is topic Использование программы на ST с разными входными данными in forum Языки программирования в TRACE MODE 6 / Algorithm Programming Languages at Форум TRACE MODE: техническая поддержка.


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

Posted by EgorovV (Участник № / Member № 8847) on :
 
Добрый день. Не могу понять из справки, как можно использовать одну программу на ST, подкидывая ей разные аргументы в качестве входных данных.

Проблему нужно решить следующую: по Modbus получаю регистры длины Word с показаниями датчиков температуры в формате десятых долей градуса, например, 253 - это 25.3°, и в таком виде мне нужно вывести это значение на экран.

Я создал программу:
code:
PROGRAM
VAR_INPUT Input : REAL; END_VAR
VAR_OUTPUT Output : REAL; END_VAR

Output = Input / 10;

END_PROGRAM

Теперь мне нужно преобразовать 80 значений с её помощью. Я могу, конечно, создать 80 копий программы и зашить в каждой соответствующее входное значение, но надеюсь на более элегантный способ.

Либо можно как-то преобразовывать HEX-16 без использования программ?

Дополнено:
Впрочем, я, наверное, просто сделаю каналы типа Float со встроенным проебразованием и множителем 0.1
Но вопрос остаётся: можно ли использовать разные входные атрибуты в одной программе? Как аргументы в функции?
 
Posted by Nico (Участник № / Member № 5342) on :
 
да можно
 
Posted by EgorovV (Участник № / Member № 8847) on :
 
quote:
Отправитель / Originally posted by Nico:
да можно

Отлично, приятно слышать. Но как?
 
Posted by АдАстра. Техподдержка (Участник № / Member № 4) on :
 
Используйте одну программу и вызывайте ее числовыми каналами через процедуру трансляции. Трансляцией называется вызов программы числовым каналом. Описано в справке в разделе: Каналы и системные переменные - Числовые каналы - Числовые каналы - Трансляция. Логика работы трансляции в алгоритмах обработки данных канала описана в справке в разделе: Каналы и системные переменные – Числовые каналы – Канал класса Float – Обработка в канале Float. Создается программа с аргументами - входом и выходом, Вход линкуется на соответствующий Тип атрибута канала Float (в окне конфигурирования привязки вкладка внизу - "Тип аргумента"). С Hex аналогично. Программа линкуется (перетаскивается мышкой) на нужный числовой канал. При обработке этого канала будет вызываться эта программа трансляции.
 


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



Powered by Infopop Corporation
UBB.classic™ 6.7.2