ОТДАЙ_МНЕ_ФАЙЛ. Особенности языка программирования grafcet
Скачать 212.35 Kb.
|
Особенности языка программирования GRAFCET В отличие от языка программирования SPS, где строятся последовательные функциональные схемы, GRAFCET-это графический язык описания логического поведения и функционирования системы управления или процесса - вне зависимости от технического обеспечения и аппаратной реализации. FluidSIM можно использовать как для создания, так и для моделирования схем GRAFCET. Термин GRAFCET также используется в качестве синонима для схем GRAFCET. Из контекста должно быть очевидно, ссылается ли слово GRAFCET на схемы или язык. GRAFCET по существу описывает два аспекта систем управления, в соответствии с указанными правилами: действия (команды), которые должны выполняться, и последовательность выполнения. Элементарными компонентами GRAFCET являются шаги, действия и переходы. В них также могут использоваться, как пневматические так и электрические компоненты. Для достижения единой работы элементов GRAFCET имеются соединения, которые используютcя для их связи друг с другом (как и со всеми другими компонентами FluidSIM). Шаги Шаги могут быть или активными или неактивными. Они могут быть связаны с действиями. Выполняются действия только активных шагов. Последовательность GRAFCET описывается переходом от предыдущего к последующему шагу. Шаги и переходы должны чередоваться. Примеры создания и моделирования GRAFCET во FluidSIM -Перетащите элемент ШАГ во FluidSIM во вновь разрабатываемую схему. Каждому шагу должно быть присвоено имя. Если шаг должен быть активен в самом начале работы последовательности, то он помечается как начальный шаг. Откройте диалоговое окно шага двойным щелчком по нему или через меню (Правка-Свойства...), введите “1” в качестве имени и сделайте выбор типа “начальный шаг”. Включите симуляцию «пуск» или через меню (выполнить - Пуск). Активные шаги всегда отмечаются точкой. Кроме того, активные шаги обрамляются зеленым цветом. Действия Для выполнения команд можно связать любое количество действий с заданным шагом. Действия могут быть не связаны непосредственно с шагом; их можно связывать друг с другом. Чтобы сделать это просто при создании схемы управления, достаточно поместить их рядом, и тогда отпадает необходимость рисовать соединительные линии. Если соединения для элементов перекрываются, то они автоматически соединяются. Действия могут быть определены текстовым описанием или путем установки (или изменения) значений переменных. При необходимости можно имитировать GRAFCET во FluidSIM значениями переменных, которые учитываются при моделировании. При графическом отображении GRAFCET можно определить, отображается ли в действии имя переменной или описывается текстом. Если вы хотите, чтобы отображалось описание, то вы можете установить галочку “Отображать описание вместо формулы” в диалоге свойств действий (см. например: Grafcet/Grafcet18.ct). На View-GRAFCET, можно указать, отображаются ли описание вместо формул для всех компонентов GRAFCET. Существует два типа действий: непосредственно активные и сохраненные активные действия. Для непосредственно активных действий, связанных с переменной присваивается значение типа логической переменной (логическое значение) “TRUE” (1), при условии, что шаг, подключенный к действию, является активным. Если шаг не активен, имеет значение “FALSE” (0). Этот способ установки переменной называется “присвоением” в спецификациях GRAFCET. Для сохраняемого активного действия заданное значение переменной остается неизменным, пока оно не будет изменено другим действием. Этот способ установки переменной называется “назначением” в спецификациях GRAFCET. В начале последовательности все значения переменных инициализируются значением “0”. Создайте нижеследующую схему GRAFCET. Выберите действие “простое действие” в диалоге "свойства" и введите “А” под “переменной/выход”. Затем запустите моделирование. Шаг " 1 " активен и выполняется действие, связанное с шагом. Переменной "A" присваивается значение "1". Значение переменной действия отображается во время моделирования в скобках после имени переменной. Переходы Переходы используются для описания последовательности системы управления. Чтобы выполнить это, добавьте следующую информацию в GRAFCET: Выберите “2” в качестве имени второго (простого) шага. Условия перехода, указывающие время перехода системы от одного шага к другому, по-прежнему отсутствуют. Переход считается выполненным после того, как все непосредственно предшествующие шаги активны. Переход запускается после его выполнения и когда его состояние имеет значение “1”. Переход со значением " 1 " отображается зеленым цветом во FluidSIM. Вместо формулы можно показать описательный текст, как и с действиями. Логическое значение создается автоматически для каждого шага. Имя начинается с”X", за которым следует имя шага. В данном примере генерируются переменные “X1” и “X2”. Значение шага переменной равно “1”, если шаг активен, в противном случае - “0”. Условия перехода могут зависеть от времени. Они имеют следующую форму: Т1 с / “термин” / Т2 с, где T1 и T2 должны быть заменены числами, а «термин» -логическим термином. Условие перехода становится истинным (“1”) через T1 секунд после того, как “termin” изменил свое значение с “0” на “1”. Это называется “задержка по переднему фронту”. Условие перехода снова становится ложным (“0”) через T2 секунд после того, как “термин” изменил свое значение с “1” на “0”. Это называется “задержка по заднему фронту”. Краткая форма Т1 с / “выражение” также допускается. Здесь предполагается, что T2 равно 0 секундам. Введите условия перехода в диалог свойств переходов, как показано ниже, а затем запустите моделирование. Осуществляется следующий цикл: Сохраненные назначенные действия В следующем примере реализовывается счетчик. Он работает с сохраненным активным действием (назначением) и действием на событие. Чтобы выполнить это, добавьте следующую информацию в GRAFCET: Выберите “действия по активации” для действия второго шага. Переменная“С” и переменная “C + 1” в качестве присвоения. “C” будет работать как счетчик. Для второго действия первого шага выберите “Действие на событие”, “В” в качестве переменной с присвоением "1" и "[C> 2] " как условие/события. Затем запустите моделирование. Каждый раз, когда активируется шаг “2”, “C” повышается на единицу. Как только “C” принимает значение “3” и шаг “1” активируется, “B” получает значение “1”. Связывание переменных GRAFCET с электрическими элементами FluidSIM Компонент ввода-вывода GRAFCET используется для связывания переменных GRAFCET с электрическими компонентами FluidSIM. Доступ к меткам, связанным с компонентами FluidSIM, поясняется в разделе доступа к меткам гидравлических и электрических компонентов. В компоненте «ввода-вывода GRAFCET» можно указать переменные GRAFCET, которые будут использоваться в качестве входных или выходных данных. Переменные действий служат выходами. Входными данными могут быть условия действий и переходов. Если задается потенциал в качестве входных данных компонента «ввода-вывода «GRAFCET», соответствующей переменной устанавливается значение “1”. Если выходная переменная имеет значение, отличное от “0”, то на соответствующем выходе компонента «ввода-вывода GRAFCET» присутствует электрический потенциал (24V). Следующий пример иллюстрирует использование компонента ввода-вывода GRAFCET В диалоговом окне свойств компонента ввода-вывода GRAFCET в качестве входных данных указывается условие “E1”, а в качестве выходных данных - “A1”. Как только электрический выключатель будет замкнут, на входе “E1” появляется потенциал; этот потенциал приводит к изменению значения переменной GRAFCET “E1” с “0” на “1”. Вследствие этого условия действие становится истинным (“1”) и значение переменной “A1” устанавливается также “1”. Это в свою очередь приводит к созданию потенциала на выходе “А1” и загорается индикатор. Как только переключатель снова размыкается, возникает следующая ситуация: Далее приводится краткая справка по FluidSIM-соответствующей концепции GRAFCET связанной с FluidSIM(смотрите«Help» во FluidSIM). Например Инициализация: Все переменные в GRAFCET задаются со значением "0” в начале моделирования Правила последовательности Переход считается возможным(освобожденным) после того, как все непосредственно предшествующие шаги будут активны. Переход запускается после его освобождения и его состояние имеет значение “1”. Переход со значением " 1 " отображается зеленым цветом во FluidSIM независимо от того, активен ли шаг, связанный с ним, или нет. Соответствующие переходы инициируются одновременно и не требует дополнительного времени. Поскольку запуск перехода не занимает какое-либо время, шаг может быть активирован и деактивирован одновременно (даже на разных промежуточных этапах). Активный шаг остается активным в этой ситуации. Цикл шагов выполняется только один раз в единый момент времени (см. пример: Grafcet/Grafcet06.ct). Выбор последовательности Шаг может переходить в различные отдельные последовательности. В спецификациях GRAFCET эти параллельные последовательности должны быть исключительными. Поскольку это обычно можно проверить только во время последовательности, эта исключительность не требуется во FluidSIM (см. пример: Grafcet/Grafcet07.ct). Синхронизация Компонент синхронизации GRAFCET может использоваться для реализации синхронизации (см. пример: Grafcet/Grafcet08.ct). Переходная последовательность / нестабильный шаг / виртуальный запуск Как сказано в правилах последовательности, запуск перехода не требует времени. Как следствие этого, несколько последовательных шагов могут быть активированы в один и тот же момент времени один за другим. Эта последовательность называется временной. Промежуточные шаги в цепочке последовательностей называются нестабильными. Непосредственно активные действия, связанные с ними, не отображаются в моделировании. Выделения в сохраяняемых активных действиях выполняются. Запуск промежуточных шагов и связанных с ними переходов называется виртуальным запуском (см. пример: Grafcet/Grafcet06.ct). Определение значений переменных GRAFCET Переменные непосредственно активных действий (присвоение) получают значение “1”, если соответствующее действие связано с активным шагом и любое условие действия имеет значение “1”. Переменные сохраняемых активных действий (назначений) изменяются, если соответствующее действие связано с активным шагом и происходит соответствующее событие действия (например, действие по событию или активации). FluidSIM не проверяет, являются ли два типа переменной идентификации противоречивыми друг другу. В этом случае значение переменной определяется внутренним вычислением, которое пользователь не может предсказать (см. пример: Grafcet/Grafcet09.ct). Проверка записей FluidSIM проверяет допустимость записей на наличие условий и назначений. Если этот вид термина не соответствует спецификациям, данный термин отображается красным цветом. Моделирование будет запущено только после того, как все условия будут действительны. Допустимые символы шагов и переменных Для шагов и переменных могут использоваться только следующие символы: Цифры от “0” до “9” Буквы нижнего регистра от “a " до " z” Заглавные буквы от “A” до “Z” Символ подчеркивания “_” Нет ограничений для описаний, которые могут быть показаны для условий и действий, поскольку они только отображаются и не используются для моделирования. Метки электрических или гидравлических компонентов, которые предназначены для использования в GRAFCET (см. доступ к меткам гидравлических и электрических компонентов), могут содержать только указанные выше символы. Имя переменной Существует четыре типа переменных. Все переменные могут использоваться в условиях и назначениях. Переменные действия П еременные действия доступны в GRAFCET и могут быть заданы в действиях (см. пример: Grafcet/Grafcet10.ct). Переменные шага Переменные шага вставляются автоматически для каждого шага и имеют значение " 1 " только при активном соответствующем шаге. Переменные шага имеют форму X + “имя шага”. Если, например, имя шага - “12”, то соответствующая переменная - “X12”. Имя Шага действует в пределах локальной GRAFCET или в рамках глобальной GRAFCET. Это означает, что одно и то же имя шага может использоваться в различных локальных GRAFCET. Для того, чтобы иметь возможность адресовать переменные шага через локальные GRAFCETs во FluidSIM, переменной шага должно предшествовать локальное имя GRAFCET. Например: Локальное имя GRAFCET “1” содержит Шаг “2” и предназначено для реализации в глобальном GRAFCET. В рамках глобальной GRAFCET, шаг переменной называется “G1.X2 " и так и должен использоваться. В рамках локальной GRAFCET “1”, “Х2” вполне достаточно (см., например: Grafcet/Grafcet11.ct). Переменные макро-шагов имеют вид ХM + “название шага” макро входы ХE + “название шага” и макро выходы ХS + “название шага”(см. пример: Grafcet/Grafcet15.ct). Локальные переменные GRAFCET Локальные переменные GRAFCET автоматически вставляются для каждого локального GRAFCET и имеют значение “1”, только когда они будут активны хотя бы на одном шаге в соответствующем локальном GRAFCET. Локальные переменные GRAFCET имеют вид ХG + “локальное имя GRAFCET”. Если, например, локальное имя GRAFCET равно “1”, связанной переменной будет являться “XG1” (см. пример: Grafcet/Grafcet12.ct). Метки гидравлических или электрических компонентов Эти метки могут использоваться в качестве входных переменных GRAFCET (см. доступ к меткам гидравлических и электрических компонентов). Доступ к лейблам гидравлическихи электрических компонентов. GRAFCET-ввода/вывода компоненты являются стандартными средствами чтобы получить доступ к электрическим компонентам в FluidSIM. Кроме того, определенные метки цепи могут быть использованы в качестве логических переменных ввода в GRAFCET напрямую, без использования GRAFCET-компонентов ввода/вывода (см. пример Grafcet/TP201_09gc2.ct). Такой прямой доступ относится к меткам следующих компонентов: Функции и ввод формулы В условиях и назначениях может использоваться целый ряд функций. Эти функции отображаются в соответствии со спецификациями GRAFCET (например, стрелка вверх для восходящего края). Ввод GRAFCET-специфические функции поддерживают кнопки в диалогах с соответствующими этикетками: “+” (логическое или) “*” (логическое и) “не” (логическое не) “Rе” (по переднему фронту) “FЕ” (по заднему фронту) “s / / s " (задержка) “s /” (задержка, краткая форма) “NOT(с / ) " (время задержки) Если функции “НЕ”, “RE” или “FЕ” относятся к термину, термин должен быть заключен в скобки. Например: NOT a NOT (a + b) RE Х1 RE (Х1 * Х2) Доступны следующие дополнительные математические функции: abs (абсолютное значение) sign (алгебраический знак: +1, 0, -2) max (максимум из двух чисел) min (минимальное из двух чисел) ^ (в степень, например,^3) sqrt (квадратный корень) exp (експонента “е”) log (десятичный логарифм) sin (синус) cos (косинус) Задержки / ограничения по времени Задержки имеют следующую форму (см. пример: Grafcet/Grafcet03.ct): “Время в секундах” s / “логический элемент” / “время в секундах” или ” Время в секундах “s / " Булев термин” Образцы: 1 s / X1 / 2s 3s / X3 Пределы времени имеют следующую форму: NOT (“время в секундах” с / “логический элемент”) Образец: NOT(6s / X28) Логическое значение утверждения В GRAFCET можно использовать логические значения для вычисления утверждения, например: счетчик “C” должен быть больше 6 и шаг “X1” должен быть активирован. “C “больше, чем” 6 " можно вычислить как значение переменной. Для этого утверждение должно быть заключено в квадратные скобки. Как в этом примере: [C > 6 ] * X1 Если логическое утверждение вычисляется самостоятельно, то можно опустить квадратные скобки в FluidSIM, например C > 6 вместо [C > 6]. (См. пример: Grafcet/Grafcet13.ct) Целевая информация Если необходимо прервать оперативное соединение с переходом на шаг, можно ввести имя целевого шага в диалоговом окне свойств перехода (см. пример: Grafcet/Grafcet14.ct). Локальные GRAFCETs Локальные (подпрограммы) GRAFCET можно использовать для разделения GRAFCET на различные уровни иерархии. Эта функция чаще всего используется для включения шагов и обязательных команд. Имени локальной подпрограммы GRAFCET всегда предшествует “G”. Для того, чтобы определить подпрограмму GRAFCETs в FluidSIM, элемент подпрограммы в виде рамки GRAFCET должен быть размещен над соответствующей частью GRAFCET, и вы должны назначить имя в диалоге свойств. Приставка “G " не является частью имени, которое необходимо ввести; она добавляется автоматически FluidSIM и отображается в левом нижнем углу подпрограммы GRAFCET. Вы можете изменить размер рамки GRAFCET путем перетаскивания её краев с помощью мыши (см. пример:Grafcet/Grafcet11.ct). Важно, чтобы все элементы подпрограммы GRAFCET располагались полностью внутри соответствующей рамки и чтобы не было “посторонних” элементов, перекрывающих кадр. Макрос-шаги Макрос-шаги можно задать с помощью диалогового окна свойств шага. Приставка “M " не является частью имени, которое необходимо ввести; она добавляется автоматически FluidSIM. Аналогичным образом можно указать макрос-входы и макрос-выходы. Приставки “E " и " S " в этих случаях также не являются частью имени и автоматически добавляются FluidSIM (см. пример: Grafcet/Grafcet15.ct). Обязательные команды Обязательные команды можно использовать для управления подпрограммами GRAFCET независимо от их нормальной последовательности. Существует маска ввода, которая помогает вам ввести эти команды в FluidSIM. Существует четыре типа обязательных команд. Они показаны здесь на четырех примерах (см. пример: Grafcet/Grafcet16.ct). G12 {8, 9, 11} Установка конкретной ситуации. Этот пример включает шаги 8, 9 и 11 подпрограммы GRAFCET 12. G12 {*} Замораживание подпрограммы GRAFCET. В этом примере текущая ситуация для подпрограммы GRAFCET 12 сохраняется как есть. Никаких дальнейших переходов не инициируется. G12 {} Установка пустой ситуации. В этом примере деактивированы все шаги подпрограммы GRAFCET 12. G12 {init} Установка начальной ситуации. В этом примере активируются шаги в подпрограмме GRAFCET 12, помеченные как начальные шаги. Заключительный шаг Заключительные шаги можно указать с помощью диалогового окна свойств шага. Можно либо ввести вложенные частичные графические таблицы напрямую, либо выбрать их из списка. Необходимо отделить отдельные подпрограммы GRAFCET запятой или пробелом. Во время моделирования имя заключительного шага отображается в левом верхнем углу рамки подпрограммы GRAFCET, как только шаг активирован (см. пример: Grafcet/Grafcet17.ct). Необходимо задать поле” Ссылка активации " в диалоге свойств для шагов внутри заключительной подпрограммы GRAFCET, которые вы хотите активировать при активации заключительного шага. Действие при срабатывании перехода FluidSIM не поддерживает выполнение действия при срабатывании перехода. Примеры |