Создание блоков с помощью блока "Язык программирования"

Описание процесса создания пользовательского блока в схеме автоматики с использованием блока "Язык программирования"

В разделе приведен процесс создания пользовательского блока на основе блока Язык программирования. Алгоритм создания блока на основе блока Язык программирования выглядит следующим образом:

  1. установить на схему блок Язык программирования;
  2. изменить изображение блока;
  3. добавить/удалить свойства блока (при необходимости);
  4. написать скрипт для блока, пользуясь разделом справки о языке программирования.

Рассмотрим пример создания нового блока, который реализует алгоритм формирования "Логического ДА" в случае, если расчетный сигнал, который будет приходить в данный блок, будет больше уставки, величину которой пользователь может задавать/изменять в свойствах самого блока.

Процесс создания блока:

  1. Устанавливаем на схему блок "Язык программирования". Необходимо сразу изменить тип элемента с "Язык программирования" на какой-то другой, например "Язык программирования БОЛЬШЕ", на вкладке "Общие" в свойствах блока. Это ОБЯЗАТЕЛЬНАЯ операция для того, чтобы не заменить блок стандартной библиотеки, если мы потом будем вносить в нее созданный нами блок. Изменяем имя блока (см. Рис. 1);


    Рис. 1. Блок "Язык программирования" с измененными свойствами
  2. Заходим в свойства блока Общие → Графическое изображение. В появившемся окне удаляем стандартное изображение и с помощью примитивов разрабатываем свое (см. Рис. 2);


    Рис. 2. Внешний вид блоков после изменения графического изображения
  3. Добавим свойство "Величина уставки". Для этого выделим блок, пройдем в главное меню Правка → Изменить блок. В появившемся окне добавим новое свойство (см. Рис. 3);


    Рис. 3. Добавление нового свойства
  4. Заходим внутрь субмодели и в редакторе скрипта пропишем следующий текст (см. Рис. 4), сохранив его:
    input u;
    output y;
    
    if u > peak_value then y = 1;
    else y = 0;


    Рис. 4. Скрипт

На этом создание блока завершено и теперь предстоит его тестирование.

Для этого поставим рядом с созданным нами блоком блок "Синусоида" (вкладка Источники) и соединим его выход с входом нашего блока (см. Рис. 5). Так же поставим блок Временной график (вкладка "Вывод данных") для того, чтобы контролировать наши параметры. У блока "Временной график" нужно изменить в свойствах количество портов с 1 до 2.



Рис. 5. Соединение блоков "Синусоида" и "Язык программирования БОЛЬШЕ"

Изменим свойства блоков:

  1. У блока "Синусоида" изменим свойства в соответствии с рисунком (Рис. 6);


    Рис. 6. Изменение свойств блока "Синусоида"
  2. У блока "Язык программирования БОЛЬШЕ" зададим свойство "Величина уставки" равным 5.

Запускаем наш алгоритм на расчет и следим за значением выходного сигнала нашего блока:

как только значение сигнала, приходящего из блока "Синусоида" превысит пороговое значение нашего блока, на выходе нашего блока появится сигнал "Логическое ДА" (см. Рис. 7).



Рис. 7. Зависимость срабатывания блока от значения блока "Синусоида"