This is topic Как использовать функции FBD в ST? 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/000612.html

Posted by Поляков Илья (Участник № / Member № 3358) on :
 
Можно-ли использовать функции доступные при программировании на FBD, если программа на ST?

Вижу, что часть функций, типа записи\чтения в порт доступна. А остальные?

В IsaGraf например, все встроенные функции доступны при программировании хоть на ST, хоть на FBD.

А то велосипеды изобретать не очень хочется.
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
И на FBD можно функции для ST писать. И для FBD можно на ST блоки делать.
 
Posted by Поляков Илья (Участник № / Member № 3358) on :
 
Видимо не совсем точно выразился...
Спрашиваю по другому: можно-ли из программы на ST, вызвать функцию, которая представлены в библиотеке FBD блоков, но при этом не использовать FBD представление программы вовсе? Т.е., прописывая вызов функции в виде подобном:
//чтение байта из порта с номером 2
TMP_Val:= inp(2);
а, не используя вручную созданую функцию на FBD внутри ST программы.
Я говорю не про конкретную функцию inp, а про любую функцию из библиотеки FBD.
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Нет, так нельзя.
 
Posted by Поляков Илья (Участник № / Member № 3358) on :
 
Ну вот, рацуха! Предлагаю сделать! Это даст дополнительные бонусы при программировании на ST. Если заинтересовало, посмотрите как сделано в IsaGraf 3.4 (Могу хелпом поделиться). Тем боле, что вы предлагаете делать в ТМ не только движки для экранов, но и программы для PLC.

FBD (мое мнение), во многих случаях будет уступать ST. Хотя-бы по причине отсутствия циклов (про более легкое переваривание ST программистом я не говорю).

Кстати, в том-же ISaGraf (ну работаю я в нем [Пдмигивание / Wink] ) есть реализация языка SFC, которая не просто повторяет прочие, но позволяет легко и просто разбить программу на куски, каждый из которых выполняется в своем цикле. У Вас, насколько понимаю, SFC лишь дублирует ST&FBD&IL (поправьте меня, если не прав).
У нас имеется, например, RTM для I8000 ICP, но не используем его именно по причине недостаточно удобного программирования. Хотя, вероятно, использование RTM дало бы преимущества и по легкости связывания в систму, и по скорости, etc.
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Нет проблем описать функцию в ST, состоящую из одного блока FBD. Вставка ST функций в FBD еще проще, там все графически нарисовано.

Кроме того все языки описаны в соответствие со стандартом МЭК, отступление от стандарта проблематична.
 
Posted by Поляков Илья (Участник № / Member № 3358) on :
 
>>Нет проблем описать функцию в ST, состоящую из >>одного блока FBD. Вставка ST функций в FBD еще >>проще, там все графически нарисовано.
Да! Нет проблем. Но это дополнительные функции там, где они не шибко-то и нужны, ибо это дублирование.
Считайте это пожеланием на будущее.

>>Кроме того все языки описаны в соответствие со >>стандартом МЭК, отступление от стандарта >>проблематична.

Ну да, это правильно. Не уверен что IsaGraf следует стандарту МЭК (как-то недосуг было изучить [Пдмигивание / Wink] ). Но SFC в исполнении IsaGraf дает мощный инструмент для разделения, распараллеливания, слияния вычислений, а также для легкой организации цепочек последовательных вычислений, каждый кусок которых выполняется строго за время цикла. В общем очень похоже на то, что у Вас.
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Ваши пожелания понятны, но наши возможности небезграничны. Кроме того большинство Ваших предложений достаточно просто реализуются уже существующими функциями и методами в Trace Mode.
 


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



Powered by Infopop Corporation
UBB.classic™ 6.7.2