Дело в том что ПИД функция из библиотеки Овен. Платформа CodeSys для ПЛК, поэтому резонно обращаться не в Пролог, а Овен.
Действие - это поддпрограмма в ФБ. (токой перевод в среде программирования на русс. яз. - "Дабавить действие" )
Дело в том что ПИД функция из библиотеки Овен. Платформа CodeSys для ПЛК, поэтому резонно обращаться не в Пролог, а Овен.
Действие - это поддпрограмма в ФБ. (токой перевод в среде программирования на русс. яз. - "Дабавить действие" )
Последний раз редактировалось Назаров Александр; 17.04.2009 в 10:12.
Прилагаю остаток программы, где выкинуто все что возможно. Действие (подпрограмма) с именем StartEH к ФБ Regulator_WH01_2 отображается как весь ФБ. ПЛК150УМ таргет 2,03
Вроде бы нашел. В PRG это действие в CFC отображается как блок с именем действия без входов и выходов. А в ФБ со всеми ногами. А они кому нужны?
Подпрограмма и так видит все пременные своего ФБ. Кроме того требует описания этого "действия" как перменной. Масло масляное, с загроможднием алгоритма. Надо сделать как для PRG. Тут все логично.
А про ПИДы кто нибудь, что нибудь скажет?
В программе без ног.
Отдельное ипользование встроенных процедур ФБ как-то сомнительно. Я воспользовался этим только потому, что в CFC проще добавить действие написанное на ST для каких то операций, чем то же самое писать на CFC, те совместное использование 2х и более языков.
А так вполне вероятно различное восприятие чего либо разными людьми.
Опять не понял. Делаю так:
1) Создаю ФБ FUNCTION_BLOCK со входами VAR_INPUT и выходами VAR_OUTPUT. В него добавляю действия.
2) Создаю программу PROGRAM со входами VAR_INPUT и выходами VAR_OUTPUT. В него добавляю действия.
3) В PLC_PRG на CFC вставляю действия экземпляра ФБ и программы. Все вставляется с ногами. Совершенно правильно так и должно быть.
Могу выдумать только одну чудесную ситуацию: делаем ФБ или программу с действиями, но без входов и выходов (секции VAR_INPUT и VAR_OUTPUT пусты). Тогда естественно действия будут вставляться без ног (их просто нет), что в программу что в ФБ.
Типичное использование действий: нужно добавить в ФБ некие особые процедуры, например: сброс, удержание, стоп, настройка, переключение в другой режим и др. Классически по МЭК нужно добавлять в ФБ дополнительные входы и по ним делать эти процедуры. Это плохо тем, что сложные ФБ обрастают выводами как ежики и сам блок внутри усложняется. Поэтому в CoDeSys придуманы действия. Их очень даже удобно использовать извне. Ноги тут необходимы. ФБ с действиями – это как класс с методами в С++.
Действительно чудесно! Вы совершенно правы - нет в prg, моей, входов и выходов, поэтому и возникла некоторая сумятица в голове. Вопрос снят. Спасибо.
Ограничение интеграла стоит от -1 до +1, но отрицательных величин выходная переменная не получает, хотя интеграл 1 в отрицательную сторону растет. За что овечает Integral1 и Integral2? У меня Integral2 =0, изменяется только первый.