Форум 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 » SFC - почему именно так?

   
Автор / Author Тема / Topic: SFC - почему именно так?
Андрей Сергеевич
Junior Member / Новичок
Участник № / Member № 2103


Icon 1 отправлено / posted      Профиль для / Profile for Андрей Сергеевич           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Решили часть логики проекта - а именно последовательные технологические операции - открыть 1й клапан, дождаться его открытия, открыть 2й клапан, дождаться его открытия и т.д. сделать на SFC.
Оказалось, что это принципиально невозможно потому, что на каждом тике SFC-последовательность должна пройтись от начала до конца. Иными словами ее невозможно использовать как машину состояний, в которой на каждом тике осуществляется действие состояния и проверяется условие перехода (например, как у Siemens в PCS7).
Вопрос в следующем - для каких задач предполагается использовать SFC в существующем виде?

Сообщения / Posts 29 | Из / From: Россия  |  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 
При каждом вызове программы на языке SFC ее исполнение начинается с шага, который является "Начальным".
Но далее исполняются только те шаги, которые определены заданными условиями переходов.
При соответствующем задании условий переходов Вы всегда можете обойти те шаги (фрагменты алгоритма), которые на данный момент являются исполненными.

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


Icon 1 отправлено / posted      Профиль для / Profile for Kramarenko Stanislav           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
"Обходить" нагляднее и проще на ST с использованием операторов ветвления.
Я тоже не понимаю, для чего нужен SFC в такой реализации!

Исполнение SFC видится мне скорее наподобие метапрограммы TM5.

Условиям и шагам не нужны свои переменные - пусть оперируют основными аргументами программы, а то только и занимаешься созданием аргументов.

Условие должно формировать свое состояние явно - типа: <"ИМЯ_УСЛОВИЯ"=TRUE> или <RETURN TRUE>, чтобы можно было внутри условия использовать множественные сравнения или заводить таймер.

И программа не должна переходить к следующему условию, пока не выполнилось текущее - в этом смысл.

Сообщения / Posts 340 | Из / 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 
Язык SFC реализован в соответствии со стандартом МЭК.
В языке FBD есть функциональный блок SSTP (Конечный автомат - в разделе "Функции выбора"), который вполне адекватен описанной в начале темы задаче.
Это наше расширение стандарта МЭК.

Сообщения / Posts 17317 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Андрей Сергеевич
Junior Member / Новичок
Участник № / Member № 2103


Icon 1 отправлено / posted      Профиль для / Profile for Андрей Сергеевич           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
В итоге решили проблему следующим образом.
На SFC в отдельном проекте в бесплатной версии пишем программу и документируем его в HTML.
Затем специально написанной программой выделяем из HTML код шагов и переходов этой SFC. На базе этих кусочков кода автоматически в той же программе формируем ST-код (классическую машину состояний), которую затем вставляем в профессиональную версию.

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