- Введение
- Продукция
- Маркировка
- Функции
- Руководство пользователя
- О документации
- Меры безопасности
- Индикация
- Максимальная конфигурация
- CAN-топология
- Подключение CAN-шины
- Разъемы и провода
- Монтаж модулей
- Общие правила и нормы эксплуатации
- Технические характеристики
- Условия эксплуатации
- Использование по назначению
- Маркировка
- Техническое обслуживание
- Транспортирование и хранение
- Упаковка
- Гарантийные обязательства
- Обновление
- Платформа CAN bp
- CANopen
- ISOBUS (ISO 11783)
- Решения
- Параметризация
- Программирование
- Литература и источники
- Образование
- Дополнительная информация
Основные компоненты среды Beremiz¶
Пользовательский интерфейс среды разработки Beremiz состоит из следующих компонент:
Главное меню программы;
Панель инструментов;
Дерево проекта;
Панель списка переменных и констант;
Панель настроек проекта;
Панель файлов проекта;
Панель отображения промежуточного кода;
Текстовые редакторы языков ST и IL;
Графические редакторы языков FBD, SFC, LD;
Панель редактирования ресурса;
Панель экземпляров проекта;
Панель библиотеки функций и функциональных блоков;
Отладочная консоль;
Поиск элементов в проекте;
Панель отладки;
Панель графика изменения значения переменной в режиме отладки.
Далее подробно рассказано про каждый компонент среды разработки Beremiz в отдельности.
Главное меню программы¶
Главное меню программы (см. image2
) содержит следующие пункты:
«Файл»;
«Редактировать»;
«Вид»;
«Помощь».
Часть операций, выполняемых с помощью выбора определённого пункта меню мышью, могут быть исполнены с помощью «горячих клавиш». На выбор пользователя представлено два механизма обработки горячих клавиш. Первый механизм использует первые буквы названия пунктов меню, для выбора пункта необходимо нажать (ALT + ‘Клавиша первой буквы названия пункта в главном меню’) затем можно выбрать операцию или подменю, нажав на клавиатуре первую букву названия соответствующего пункта. Второй механизм использует установленные клавиатурные сочетания, далее будет подробно описан каждый пункт меню и соответствующая ему (если определена) «горячая клавиша».
Меню «Файл» предназначено для работы с проектом и предоставляет следующие пункты:
«Новый» - создание нового проекта (CTRL + N);
«Открыть» - открытие существующего проекта (CTRL + O);
«Недавние проекты» - быстрое открытие одного из десяти последних, недавно редактированных проектов;
«Сохранить» - сохранение текущего проекта пункт (CTRL + S);
«Сохранить как» - сохранение текущего проекта в папку отличную от той, в которой он сохранён на данный момент (CTRL + SHIFT + S);
«Закрыть вкладку» - закрытие активной вкладки (например, вкладки переменных плагина, конфигурации и т.д.) для открытого проекта (CTRL + W);
«Закрыть проект» - закрыть текущий, открытый проект (CTRL + SHIFT + W);
«Настройки страницы» - настройка параметров страницы для печати на принтере активной программы, представленной в виде диаграммы (CTRL + ALT + P);
«Просмотр» - предварительный просмотр результата перед печатью на принтере активной программы (CTRL + SHIFT + P);
«Печать» - печать на принтере активной программы (CTRL + P);
«Выход» - закрытие текущего проекта и выход из программы Beremiz (CTRL+ Q).
Меню «Редактировать» предназначено для работы с редакторами языков стандарта МЭК 61131-3 и предоставляет следующие возможности:
«Отмена» - отмена последней манипуляции в редакторе (CTRL + Z);
«Повторить» повтор отменённой манипуляции в редакторе (CTRL + Y);
«Вырезать» - удалить в буфер обмена выделенный(е) элемент(ы) в редакторе (CTRL + X);
«Копировать» - копировать в буфер обмена выделенный(е) элемент(ы) в редакторе (CTRL + C);
«Вставить» - вставить из буфера обмена находящиеся там элемент(ы) в редактор (CTRL + V);
«Поиск» - поиск в текущем функциональном блоке (CTRL + F);
«Поиск следующего» - подсветка следующего вхождения строки поиска (CTRL+K);
«Поиск предыдущего» - подсветка предыдущего вхождения строки поиска (CTRL + SHIFT + K);
«Поиск в проекте» - вызов диалога поиска данных в проекте (CTRL + SHIFT + F);
«Добавить элемент» - добавление одного из следующих элемента в текущий проект:
«Тип данных» - нового типа данных;
«Функция» - новой функции;
«Функциональный блок» - нового функционального блока;
«Программа» - новую программу;
«Ресурс» - новый ресурс;
плагины для модулей УСО;
«Выделить всё» - выделение всех элементов в активной вкладке редактора (CTRL +A);
«Удалить» - удаление программного модуля, выделенного в дереве проекта.
Меню «Вид» предназначено для работы с редакторами языков стандарта IEC-61131 и предоставляет следующие возможности:
«Обновить» - обновление данных и снятие выделения в редакторе (CTRL + R);
«Очистить ошибки» - очистка указателей ошибок в редакторе (CTRL + K);
«Приближение» - пункт, в котором можно выбрать в процентах величину масштаба;
«Сменить представление» - убирает все панели, оставляя только рабочее поле(F12)
«Сброс расположения панелей» - восстановление расположения панелей Beremiz в исходное состояние.
Меню «Помощь» предназначено для обращения к выводу информации в виде диалога о создателях данной среды - пункт «О программе».
Панель инструментов¶
Панель инструментов представляет собой панель с кнопками для быстрого обращения к часто используемым функциям среды разработки Beremiz. Она состоит из нескольких панелей, содержащих кнопки: главного меню, сборки проекта и установки связи с целевым устройством. Подробнее об этих панелях рассказано ниже. При редактировании программных модулей, написанных на графических языках, появляются дополнительные панели с кнопками. Они рассмотрены при описании редакторов графических языков стандарта IEC 61131-3 (см. п. 5.7).
Кнопки главного меню
Панель инструментов, содержащая кнопки главного меню представлена на
image3
.
Список кнопок и их функций описывается в таблице 1.
Таблица 1 – Кнопки панели инструментов
Внешний вид кнопки |
Название кнопки |
Функция кнопки |
---|---|---|
Новый проект |
Создать новый проект |
|
Открыть проект |
Открыть существующий проект |
|
Сохранить |
Сохранить текущий проект |
|
Сохранить как |
Сохранить текущий проект в определенную папку |
|
Печать |
Печать на принтере текущей программы |
|
Отмена |
Отмена последней манипуляции в редакторе |
|
Повторить |
Повтор отмененной манипуляции в редакторе |
|
Вырезать |
Удалить в буфер обмена выделенные в редакторе фрагменты |
|
Вставить |
Вставить фрагменты из буфера обмена в редактор |
|
Поиск в проекте |
Вызов диалога поиска данных в проекте |
Кнопки сборки проекта и установки связи с целевым устройством
Панель, содержащая кнопки сборки проекта и соединения с целевым устройством, позволяет скомпилировать и скомпоновать текущий проект и, в случае, если эта операция завершилась успешно (данную информацию можно увидеть в отладочной консоли (см. п. 5.12.)), передать и запустить полученный исполняемый файл на целевом устройстве.
Часть кнопок данной панели показана на image14
.
Таблица 2 – Кнопки сборки проекта и связи с целевым устройством на панели инструментов
Внешний вид кнопки |
Название кнопки |
Функция кнопки |
---|---|---|
Сборка проекта в директории сборки |
Полная сборка(компиляция и компоновка) текущего проекта в папку build, находящийся в папке, где хранится проект |
|
Очистить директорию сборки проекта |
Удаление папки build, где был собран проект |
|
Подключиться к целевому ПЛК |
Соединиться с целевым устройством по адресу URI, который был указан в настройках проекта |
|
Показать код, сгенерированный PLCGenerator |
Показать код скомпилированного проекта языке ST |
|
Передать ПЛК |
Перенести исполняемый файл, полученный в ходе сборки проекта, на целевое устройство |
|
Запустить ПЛК |
Запустить на исполнение собранную прикладную программу на целевом устройстве |
|
Остановить запущенный ПЛК |
Остановить исполнение прикладной программы на целевом устройстве |
В зависимости от того, произведено в настоящий момент времени соединение с целевым устройством или выполняется ли прикладная программа на нём, появляются и скрываются некоторые кнопки.
На image22
приведено состояние данной в панели, когда соединение с
целевым устройством установлено и на нём уже есть прикладная программа.
Соответственно, можно запустить с помощью кнопки «Запуск прикладной
программы» её или передать новую, используя кнопку «Передача прикладной
программы».
В случае, когда при установке соединения произошли ошибки, данная информация будет выведена в отладочную консоль. Далее будет рассмотрен компонент «Дерево проекта», который представляет структуру элементов, составляющих проект.
Дерево проекта¶
Дерево проекта обычно расположено в левой части окна среды разработки
Beremiz (см. image23
) и отображает структуру элементов, из которых
состоит проект.
В роли элементов могут выступать:
Ресурсы;
Программные модули (функции, функциональные блоки и программ) и их составные части;
Типы данных;
Плагины модулей УСО.
Дерево проекта позволяет добавлять, удалять элементы. Операции копирования и вставки только доступны для программных модулей.
Добавление элемента в дерево проекта
В правом нижнем углу дерева проекта находится кнопка «+» (см. image24
),
при нажатии на которую, появляется меню для выбора добавления
необходимого элемента в проект.
В случае добавления программного модуля, т.е. выбора пункта «Функция»,
«Функциональный блок» или «Программа», появится диалог «Создать новый
программный модуль» (см. image25
).
В данном диалоге три поля:
«Имя программного модуля»;
«Тип программного модуля»;
«Язык».
Имя, присвоенное по умолчанию, может быть заменено на имя,
соответствующее назначению данного программного модуля. В зависимости от
того, какой программный модуль был выбран во всплывающем меню, в поле
«Тип программного модуля» будет подставлено именование данного
программного модуля. В поле «Язык» необходимо выбрать из списка (см.
image26
) один из языков стандарта IEC 61131-3 (IL, ST, LD, FBD, SFC), на
котором будут реализованы алгоритмы и логика работы данного добавляемого
программного модуля.
В случае выбора добавления типа данных, появится диалог (см. image27
), в
котором необходимо указать механизм создания нового типа данных
Добавление нескольких элементов одного типа, например нескольких
программ, функций, функциональных блоков приводит к их группировке в
дереве проекта. Еще одним способом добавления нового элемента
является нажатие правой клавиши мыши по определённому разделу в
дереве проекта. Например, при нажатии на «Функциональные блоки»,
появится всплывающее меню (см. image28
). В данном меню можно выбрать
«Добавить программный модуль» или «Вставить программный модуль», если
он был скопирован в буфер обмена.
Добавление нового элемента или выбор существующего в дереве проекта приводит к появлению панели редактирования и настроек соответствующего элемента:
Панель настроек проекта;
Панель, содержащая текстовый редактор языков ST и IL;
Панель, содержащая графические редакторы диаграмм языков FBD, SFC, LD;
Панель настроек ресурса;
Панель редактирование типа данных;
Панели настроек плагинов модулей УСО.
Каждая вышеперечисленная панель редактирования будет рассмотрена в последующих пунктах.
Удаление элемента в дереве проекта
Удаление осуществляется наведением на определённый элемент в дереве
проекта и нажатием на него правой клавишей мыши, а далее в появившемся
меню выбирается пункт «Удалить» (см. image29
)
Переименование, копирование и вставка программных модулей
Дерево проекта позволяет выполнять операции переименования, копирования
и вставки для программных модулей. Копирование или переименование
осуществляются с помощью нажатия правой клавиши мыши на элемент (см.
img29
), соответствующий программному модулю в дереве проекта, и выбор
соответствующего пункта появившегося меню.
Вставка программного модуля осуществляется в меню (нажатие правой
клавишей мыши по данному элементу) корневого элемента дерева проекта,
соответствующего проекту (см. image30
):
Другим способом выполнения вышеописанной операции является вызов меню
для элемента группировки программных модулей одного типа (см. image31
).
Далее приводится описание панели переменных и констант, которая присутствует при редактировании проекта, ресурса и программных модулей (функции, функционального блока, программы).
Панель списка переменных и констант¶
Панель списка переменных и констант (см. image32
) отображает с помощью
таблицы переменные и константы, соответствующие выбранному программному
модулю, ресурсу или в целом проекту.
Каждая переменная имеет следующие параметры:
Имя, представляющее собой уникальный идентификатор переменной в пределах её области видимости и действия;
Класс: «Глобальный», «Вход», «Выход», «Вход/Выход», «Локальный», «Внешний», «Временный»;
Тип, определяющий тип переменной и может принадлежать базовому типу (в соответствии со стандартом IEC 61131-3), пользовательскому типу (псевдониму и поддиапазону существующего типа, перечислению, массиву, структуре) или типу функционального блока (стандартному или пользовательскому);
Размещение - идентификатор, необходимый для связывания данной переменной с переменной плагина модуля УСО;
Исходное значение значение - инициализация переменной некоторым начальным значением;
Настройка - задание константности, реманентности (сохранение её значения в энергонезависимой памяти) и нереманентности переменной;
Описание - комментарий к назначению данной переменной или константы.
Первый символ имени переменной или константы должен быть буквой, или
символом подчеркивания, далее могут следовать цифры, буквы латинского
алфавита и символы подчеркивания. Набор возможных вариантов классов
переменных зависит от типа элемента проекта, редактирования которого
осуществляется. Двойной клик на полю «Размещение» вызывает появление
кнопки «…», показанной на image33
:
Нажатие на данную кнопку приводит к появлению диалога «Просмотр
директорий» (см. image34
), т.е. списка переменных модулей УСО, которые
могут быть связанны с переменой в панели переменных и констант. При
выборе в данном диалоге определённой переменной и нажатии клавиши «OK» в
поле «Адрес» будет добавлен адрес переменной внешнего модуля УСО.
Поле опции позволяет определить переменную как константу. Соответственно, если компилятор обнаружит в коде фрагмент, в котором происходит изменение этой переменной - будет выведена ошибка компиляции «Assignment to constant variables is not be allowed» в «Отладочной консоли». Квалификатор «Константа» не может быть использован в объявлении функциональных блоков. Добавление, удаление и перемещение переменных происходит с помощью специальных кнопок на панели переменных и констант. Описания данных кнопок представлены в таблице 3.
Панель переменных и констант предоставляет возможность фильтровать отображаемые переменные по их конкретным классам («Вход» ,«Выход», «Вход/Выход»,
«Внешний», «Локальный», «Временный») или сгруппированным классам
(«Интерфейс» и «Переменные»). Данная операция выполняется с помощью
функции «Фильтр класса» (см. image35
).
Таблица 3 - Кнопки добавления, удаление и перемещения переменных на панели переменных и констант
Внешний вид кнопки |
Название кнопки |
Функция кнопки |
---|---|---|
Добавить переменную |
Добавить новую переменную в панель переменных и констант со значениями по умолчанию |
|
Удалить переменную |
Удалить выделенную переменную или константу |
|
Переместить переменную вверх |
Перемещение переменной в таблице переменных и констант вверх на одну позицию |
|
Переместить переменную вниз |
Перемещение переменной в таблице переменных и констант вниз на одну позицию |
Панель настройки проекта¶
Панель редактирования проекта (см. image40
) состоит из панели переменных
и констант, а также настроек сборки проекта и данных о проекте.
Настройки сборки проекта (см. image41
) позволяют задать следующие
параметры:
«URI системы исполнения» - унифицированный (единообразный) идентификатор ресурса, в данном случае под ресурсом понимается целевое устройство. Данный адрес необходим для режима отладки.
«Запретить расширения» - установка данного флага позволяет не учитывать при сборке проекта внешние плагины;
«Библиотеки» - подключаемые дополнительные библиотеки: «Native_Library», «Python_Library», «SVGUI_Library»;
«Целевая платформа» - выбор из списка компилятора для архитектуры целевого устройства;
«Компилятор» - имя исполняемого файла компилятора (если он определён в глобальных переменных среды), либо полный путь к нему;
«CFLAGS» - указание флагов С компилятора;
«Линковщик» - имя исполняемого файла компоновщика (если он определён в глобальных переменных среды), либо полный путь к нему;
«LDFLAGS» - указание флагов компоновщика;
Также в настройках сборки проекта имеются две кнопки, описание которых приведено в таблице 4.
Таблица 4 - Кнопки в панели настройки сборки проекта
Внешний вид кнопки |
Название кнопки |
Функция кнопки |
---|---|---|
МЭК - код |
Вызов «Панели отображения промежуточного кода» (см. п. 5.5.1), для вывода кода, из которого генерируется ST код всего проекта |
|
Файлы проекта |
Вызов «Панели файлов проекта», в которой можно выбрать файлы необходимые для передачи на целевое устройство вместе с исполняемым файлом (см. п. 5.5.2) |
Вкладка «Проект» (см. image44
) позволяет задать: имя проекта, версию
проекта, имя продукта, версию продукта и релиз продукта.
Вкладка «Автор» (см. image45
) позволяет задать: Имя компании, URL-адрес
компании, Имя автора, Название организации.
Вкладка «Графика» (см. image46
) позволяет задать размеры страницы и
разрешение сетки для редакторов диаграмм графических языков FBD, LD и
SFC.
Вкладка «Прочее», изображенная на image47
, позволяет выбрать язык
интерфейса для среды разработки Beremiz и указать дополнительное
текстовое описание для проекта.
При запуске среды разработки Beremiz языком по умолчанию является язык, соответствующий текущей локали операционной системы, если файл для данной локали присутствуют. В случае отсутствия данных файлов, устанавливается английская локаль, которая доступна всегда. Файлы доступных локалей располагаются в папке beremiz/locale.
Панель отображения промежуточного кода
Данная панель (см. image48
) представляет собой текстовый редактор,
отображающий с подсветкой синтаксиса и нумерацией строк код на языке ST,
доступный только для чтения, без возможности редактирования.
Открытие данной панели доступно после сборки проекта с помощью соответствующей кнопки (см. таблицу 2).
Панель файлов проекта
Панель файлов проекта (см. image49
) содержит встроенный проводник файлов
(справа), в котором файлы могут быть выделены и перенесены в левую
часть.
Все манипуляции с файлами осуществляются с помощью кнопок, расположенных в середине данной панели. Их описание приведено в таблице 5.
Таблица 5 - Кнопки в панели файлов проекта
Внешний вид кнопки |
Название кнопки |
Функция кнопки |
---|---|---|
Удалить файл из левой директории |
Удаление выделенного файла из левого списка добавленных файлов в проект |
|
Скопировать файл из правой директории в левую |
Добавить выделенный файл из проводника файлов в проект |
|
Скопировать файл из левой директории в правую |
Добавить в текущую папку проводника файлов слева выделенный файл в списке файлов проекта |
Данные файлы будут переданы на целевое устройство вместе с исполняемым файлом. Как правило, этими дополнительными файлами проекта являются сторонние библиотеки, необходимые для корректной работы плагинов модулей УСО.
Текстовый редактор языков ST и IL¶
Текстовый редактор языков ST и IL (см. image52
) позволяет создавать и
редактировать алгоритмы и логику выполнения программных модулей на
языках ST и IL.
Он обеспечивают следующие возможности:
Подсветку синтаксиса кода, написанного пользователем, т.е. выделения особыми параметрами шрифта ключевых слов данных языков;
Нумерации строк, что может быть полезным при возникновении ошибок в программе, т.к. транслятор кода ST в C выдаёт номер строки, в которой найдена ошибка;
Сворачивание кода структурных элементов языка: определения функции, определение типа и т. Д.
Увеличение или уменьшение размера шрифт выполняется с помощью Ctrl + <колёсико мыши>.
Описание синтаксиса, основных конструкций и примеров использования языков ST и IL приведены в описании языков стандарта МЭК 61131-3.
Графические редакторы диаграмм языков FBD, SFC, LD¶
Данные редакторы позволяют создавать и редактировать алгоритмы и логику выполнения программных модулей, написанных на языках FBD, SFC и LD.
Редактор языка FBD
Основными элементами языка FBD являются: переменные, функциональные
блоки и соединения. При редактировании FBD диаграммы, в панели
инструментов появляется следующая панель (см. image53
).
С помощью данной панели можно добавить все элементы языка FBD (назначение каждой кнопки описано в таблице 6).
Таблица 6 - Кнопки в панели файлов проекта
Внешний вид кнопки |
Название кнопки |
Функция кнопки |
---|---|---|
Выделение объектов на диаграмме |
Перевод указателя мыши в состояние, при котором можно осуществлять выделение объектов редакторе одного из графических языков |
|
Перемещение диаграммы |
Перевод указателя мыши в состояние, при котором можно изменять размеры редактора одного из графических языков, с помощью его перемещения |
|
Создать новый комментарий |
Вызов диалога создания комментария |
|
Добавить переменную |
Вызов диалога добавления переменной |
|
Добавить функциональный блок |
Вызов диалога добавления функционального блока |
|
Добавить подключение |
Вызов диалога добавления соединения |
Для этого необходимо указателем мыши выбрать необходимую кнопку и нажать на свободное место в области редактирования FBD диаграммы. В зависимости от выбранного элемента появятся определённые диалоги добавления данного элемента.
Аналогичные действия можно выполнить с помощью всплывающего меню в
области редактирования FBD диаграмм. Вызов данного меню происходит
нажатием правой клавишей мыши и выбором пункта «Добавить», в котором
будет: «Блок», «Переменная», «Подключение», «Комментарий» (см. image60
).
Далее рассмотрено добавление каждого элемента в отдельности.
Добавление функционального блока
При добавлении функционального блока одним из описанных выше способов,
появится диалог «Свойства блока» (см. image61
).
В данном диалоге приведено краткое описание функционального блока и предоставлена возможность задать некоторые свойства (имя, количество входов, порядок выполнения и т.д.).
Опция «Управление исполнением» добавляет в функциональный блок дополнительные параметры EN/ENO, о которых подробнее рассказано в приложении 5. Для сохранения изменений необходимо нажать «OK». Одним из свойств является «Порядок исполнения».
Добавление (путем копирования существующего блока), удаление и
переименование функционального блока осуществляется при помощи команд
меню «Редактирование» в главном меню или с помощью всплывающего меню
диаграммы (см. image61
).
Следует отметить, что функциональный блок может быть так же добавлен из «Панели библиотеки функций и функциональных блоков», перетаскиванием мыши (Drag&Drop) выбранного блока на панель редактирования диаграммы FBD.
Добавление переменной
Переменные добавляются из панели переменных и констант с помощью
перетаскивания (Drag&Drop) левой клавишей мыши за область, выделенную
красным цветом на image62
, в область редактирования FBD диаграмм.
Изменить параметры переменной можно в диалоге «Свойства переменной» (см.
image63
), нажав на неё два раза левой клавишей мыши.
В данном диалоге можно задать порядок исполнения переменной и изменить её класс («Вход», «Выход», «Вход/Выход»).
Добавление подключения
В тех случаях, когда необходимо передать выходное значение одного функционального блока на один из входов другого, удобно использовать элемент «Подключение». При прямом соединении с помощью перетаскивания выхода одного функционального блока к входу другого получится прямое соединение с помощью чёрной соединительной линии. На схемах с большим количеством функциональных блоков элемент «Подключение» позволяет избежать пересечения прямых соединений, которые приводит к тому, что схема становится менее понятной.
После выбора добавления элемента «Подключение» появится диалог «Свойства
подключения» (см. image64
).
В данном диалоге можно выбрать тип соединения: «Выходное соединение» -
для выходного значения, «Входное соединение» - для входного значения, а
так же необходимо указать имя данного соединения. На image65
представлен
пример использования соединений.
Функция «MAX» на выходе «OUT» имеет некоторое значение, которое с помощью соединения «RESULT» передаётся на вход «IN1» в функцию «MIN». В функции «MAX» используется соединение типа «Выходное соединение», в функции «MIN» - типа «Входное соединение». Имена у этих соединений, соответственно, одинаковые.
Добавление комментариев
Редактор FBD диаграмм (и остальные редакторы, о которых будет рассказано
ниже) позволяют добавлять комментарии на диаграмму. После выбора на
панели редактирования комментария и добавления его в область
редактирования появится диалог (см. image66
) для ввода текста
комментария.
После нажатия кнопки «ОК» комментарий появится на диаграмме(см. image67
)
Порядок выполнения функций и функциональных блоков
Последовательность исполнения функций и функциональных блоков определяется порядком их выполнения. Автоматически он регламентируется следующим образом: чем выше и левее расположен верхний левый угол, описывающего функцию или функциональный блок прямоугольника, тем раньше данная функция или функциональный будет выполнен.
Если обратиться к image68
, то порядок выполнения функций будет
следующим: 1 – CounterST0; 2 – CounterFBD0; 3 – CounterSFC0.
Данная опция «Порядок выполнения» выделена красным цветом на image69
.
После задания порядка выполнения для каждой функции или функционального
блока на схеме в правом нижнем углу будет указан его порядковый номер
выполнения. Пример представлен на image70
.
Описание языка FBD, основных его конструкций и пример использования приведены в приложении 5.
Редактор языка LD
Язык LD или РКС (Релейно-Контактные Схемы) представляет собой графическую форму записи логических выражений в виде контактов и катушек реле. Основными элементами языка LD являются: шина питания, катушка, контакт. Добавить данные элементы, так же как и элементы языка FBD, можно несколькими способами.
Как только активной становится вкладка с редактированием LD диаграммы, в
панели инструментов появляется панель (см. image71
) с элементами языка
LD.
Аналогично редактору языка FBD с помощью данной панели можно добавить все элементы языка LD, а так же и FBD, т.к. есть возможность комбинированного применения языков на одной диаграмме. В таблице 7 приведено описание кнопок данной панели. Описание остальных кнопок, относящихся к языку FBD, находится в таблице 6.
Таблица 7 - Кнопки панели редактирования LD диаграммы
Внешний вид кнопки |
Название кнопки |
Функция кнопки |
---|---|---|
Создать новую шину питания |
Вызов диалога создания новой шины питания |
|
Создать новую катушку |
Вызов диалога создания новой катушки |
|
Создать новый контакт |
Вызов диалога создания нового контакта |
Во всплывающем меню для редактора LD диаграмм (см. image75
), так же как
и в панели инструментов помимо элементов LD языка, доступны элементы
языка FBD.
Добавление шины питания
При добавлении шины питания, одним из описанных выше способов, появится
диалог «Свойства шины питания» (см. image76
).
В данном диалоге указываются следующие свойства:
Тип шины питания: шина питания слева или шина питания справа;
Количество контактов на добавляемой шине питания.
На image77
приведены две добавленные шины питания: левая с тремя
контактами и правая с одним контактом.
Добавление контакта
При добавлении контакта на LD диаграмму появится диалог «Редактирование
значения контакта» (см. image78
).
Данный диалог позволяет определить модификатор данного контакта:
«Обычный»;
«Инверсия»;
«Нарастающий фронт»;
«Спадающий фронт».
Кроме того, диалог позволяет выбрать из списка «Имя» переменную, «связываемую» с данным контактом. Следует отметить, что «связываемые» переменные должны быть определены в панели переменных и констант для данного программного модуля типом BOOL.
Еще одним способом добавления контакта на диаграмму является метод Drag&Drop из панели переменных и констант переменной типа BOOL и класса: «Вход»,
«Вход/Выход», «Внешний», «Локальный», «Временный». Для этого необходимо
зажать левой кнопкой мыши за первый столбец (который имеет заголовок #)
переменную, удовлетворяющую описанным выше критериям и перенести в
область редактирования диаграммы (см. image79
).
Добавление катушки
При добавлении катушки на LD диаграмму появится диалог «Редактирование
значения катушки» (см. image80
).
В данном диалоге можно определить модификатор данного контакта:
«Обычный»;
«Инверсия»;
«Установить»;
«Сброс»;
«Нарастающий фронт»;
«Спадающий фронт».
Кроме того, производится выбор из списка «Имя» переменной, «связываемой» с данным контактом. Эти переменные, как и для контактов, должны быть определены в панели переменных и констант для данного программного модуля типом BOOL.
Аналогично добавлению контакта с помощью Drag&Drop можно добавить и
катушки, но в данном случае переменная должна относиться к классу
«Выход» (см. image81
).
Описание языка LD, основных конструкций и примера его использования приведены в описании яызков стандарта МЭК 61131-3.
Редактор языка SFC
Основными элементами языка SFC являются: начальный шаг, шаг, переход, блок действий, дивергенции, «прыжок». Программа на языке SFC состоит из набора шагов, связанных переходами.
Как только активной становится вкладка с редактированием SFC диаграммы,
в панели инструментов появляется следующая панель (см. image82
).
В таблице 8 приведено описание кнопок данной панели. Описание остальных кнопок, относящихся к языку FBD и LD (за исключением катушки) и так же находящихся на этой панели, приведены в таблицах 6 и 7 соответственно.
Таблица 8 - Кнопки панели редактирования LD диаграммы
Внешний вид кнопки |
Название кнопки |
Функция кнопки |
---|---|---|
Создать новый начальный шаг |
Вызов диалога редактирования шага |
|
Создать новый шаг |
Вызов диалога редактирования шага |
|
Создать новый переход |
Вызов диалога редактирования перехода |
|
Создать новый блок действий |
Вызов диалога редактирования блока действий |
|
Создать новое ветвление |
Вызов диалога создания новой дивергенции и конвергенции |
|
Создать новый безусловный переход |
Вызов диалога создания «прыжка» |
Далее даётся описание добавления приведённых в таблице 8 элементов языка SFC.
Добавление шага инициализации и шага
Процедура добавления шага инициализации и обычного шага ничем не
отличается. В обоих случаях вызывается диалог «Редактировать шаг» (см.
image89
).
Согласно стандарту IEC 61131-3, на SFC диаграмме должен быть один шаг
инициализации, который характеризует начальное состояние SFC-диаграммы и
отображается со сдвоенными линиями на границах (см. image91
).
В случае, если при добавлении шага не указано его имя - будет выдана
ошибка (см. image92
).
При добавлении шага появляется диалог, в котором можно указать, с
помощью галочек его соединители (см. image89
):
«Вход»;
«Выход»;
«Действие».
«Действие» добавляет соединитель для связывания данного шага с блоком
действий. «Вход» и «Выход» соединители, как правило, соединены с
переходом. Соответственно, после нажатия кнопки OK, на диаграмму будет
добавлен шаг с указанными соединителями (см. image93
).
Добавление перехода
При добавлении на SFC диаграмму перехода, появится диалог «Редактировать
переход» (см. image94
).
В данном диалоге необходимо выбрать тип перехода и его приоритет. Тип перехода может быть:
«Ссылка»;
«Встроенный код»;
«Соединение».
При выборе типа перехода «Ссылка» в открывающемся списке (см. image95
)
будут доступны переходы, предопределённые в дереве проекта для данного
программного модуля, написанного на языке SFC. Добавление
предопределённого перехода описывается ниже после описания всех
добавляемых элементов языка SFC.
При выборе типа перехода «Непосредственно» (см. image96
), условие
перехода можно написать в виде выражения на языке ST.
Реализация перехода таким способом удобна в случае, когда необходимо
короткое условие, например: переменные «F3» и «F4» типа INT равны.
Встроенный код для такого условия выглядит следующим образом (см. image96
):
F3 = F4
Так же например можно в качестве условия просто указать переменную. В случае её значения равного 0 - будет означать FALSE, все остальные значения - TRUE.
При выборе типа перехода «Соединение» (см. image97
), в качестве условия
перехода можно использовать выходные значения элементов языка FBD или
LD.
При выборе типа перехода «Подключение», у добавленного перехода появится
слева контакт, который необходимо соединить с выходным значением,
например, функционального блока языка FBD или катушки LD диаграммы.
Стоит отметить, что данное выходное значение должно быть типа BOOL.
Ниже, на image98
красным цветом выделен пример перехода, условия
которого задано с помощью языка LD.
Добавление блока действий
При добавлении блока действий на диаграмму появится диалог
«Редактировать свойство блока действий» (см. image99
).
Данный блок действий может содержать набор действий. Добавить новое действие можно нажав кнопку «Добавить» и установив необходимые параметры:
«Спецификатор»;
«Длительность»;
«Тип»: «Действие», «Переменная», «Непосредственно»;
«Значение»;
«Индикатор».
Поле «Спецификатор» определяет момент времени, когда действие
начинается, сколько времени продолжается и когда заканчивается. Выбрать
квалификатор можно из списка (см. image100
).
Подробное описание спецификаторов, которые выбираются из предлагаемого списка при добавлении действия приведено в таблице 9.
Таблица 9 - Квалификаторы действий SFC диаграммы
Имя спецификатора |
Поведение блока действия |
---|---|
D |
Действие начинает выполняться через некоторое заданное время (если шаг еще активен) и выполняется до тех пор, пока данный шаг активен |
L |
Действие выполняется в течение некоторого заданного интервала времени, после чего выполнение действия останавливается |
N |
Действие выполняется, пока данный шаг активен |
P |
Действие выполняется один раз, как только шаг стал активен |
P0 |
Действие выполняется один раз, как только шаг стал неактивен |
P1 |
Действие выполняется один раз, как только шаг стал активен |
S |
Действие активируется и остается активным пока SFC диаграмма выполняется |
R |
Действие выполняется, когда диаграмма деактивизируется |
DS |
Действие начинается выполняться через некоторое заданное время, только в том случае если шаг еще активен |
SL |
Действие активно в течении некоторого, заданного интервала |
SD |
Действие начинается выполняться через некоторое время, даже в том случае если шаг уже не активен |
Поле «Длительность» необходимо для установки интервала времени необходимого для некоторых квалификаторов, описанных выше в таблице 9.
«Тип» определяет код или конкретную манипуляцию, которая будет
выполняться во время активации действия. В случае выбора «Действия»
появляется возможность, как и в случае с переходом, использовать
предопределённые действия в дереве проекта для данного программного
модуля, написанного на языке SFC (см. image101
).
Добавление предопределённого действия также как добавление предопределённого перехода описывается ниже после описания всех добавляемых элементов языка SFC.
В случае выбора типа действия «Переменная» в поле «Значение» появляется
возможность выбрать переменные (см. image102
), относящиеся к данному
программному модулю.
Как только шаг становится активным, данная переменная в зависимости от своего типа принимает значение 0, 0.0, FALSE и другие нулевые значения типов. Как только действие начинает выполняться, переменная принимает значение 1, 1.0, TRUE и другие единичные значения типов. В случае если действие прекратило своё выполнение переменная снова принимает значение 0, 0.0, FALSE и другое нулевое значение, в зависимости от своего типа.
В случае выбора «Непосредственно», появляется возможность в поле
«Значение» написать на языке ST код, который будет выполняться, когда
действие становится активным (см. image103
).
Следует отметить, что в конце встроенного кода для действия необходимо поставить «;», в отличие от встроенного кода для перехода.
После добавления блока действия на диаграмму необходимо его
ассоциировать с конкретным шагом. Данная операция выполняется обычным
соединением правого контакта у шага и левого контакта у действия (см.
image104
).
Добавление дивергенции и конвергенции
При добавлении ветвления, появится диалог «Создать новое ветвление» (см.
image105
).
В первую очередь следует выбрать тип ветвления:
«Альтернативное ветвление»;
«Альтернативное объединения»;
«Параллельное ветвление»;
«Параллельное объединение».
Вторым параметром является количество разветвлений, которое определяет на сколько ветвей будет либо расходится (в случае выбора типа дивергенции «Альтернативное ветвление» или «Параллельное ветвление») одна ветвь, либо сколько ветвей будет сходиться в одну ветвь (в случае выбора типа дивергенции «Альтернативное объединения» или «Параллельное объединение»)
Пример дивергенции с двумя разветвлениями показан на image106
и выделен
красным цветом.
Пример конвергенции выделен красным цветом на image106_2
.
Пример параллельного ветвления показан на image107
и выделен красным
цветом.
Согласно стандарту IEC 61131-3, каждая ветвь альтернативного ветвления должна оканчиваться переходом, при альтернативном объединении переход должен быть перед каждой ветвью. При параллельном ветвлении переход должен быть перед ветвлением, а при параллельном объединении переход необходим после объединения.
Добавление безусловного перехода
Элемент «безусловный переход» на SFC диаграмме подобен выполнению
оператора GOTO при переходе на определённую метку в коде в различных
языках программирования. После выбора добавления «прыжка» на SFC
диаграмму, появится диалог (см. image108
), в котором необходимо выбрать
из списка шаг, к которому будет происходить «прыжок» - переход от одного
шага SFC диаграммы к другому.
В данном диалоге также присутствует и шаг инициализации (начальный шаг).
После выбора шага и нажатия кнопки OK. На SFC диаграмме появится
стрелочка, которую нужно соединить с переходом (см. image109
). Справа от
стрелочки находится имя шага, к которому осуществляется переход в случае
выполнения условия перехода, находящегося выше и соединённого с ней.
Согласно стандарту IEC 61131-3, между шагом и «прыжком» должен обязательно быть определён переход.
Предопределённые условия перехода и действия в дереве проекта
В случае, если необходимо использовать определённое условие перехода
между множеством шагов, есть возможность определить данное условие
перехода в структуре SFC диаграммы. Данная операция выполняется нажатием
на данную SFC диаграмму на дереве проекта правой клавишей мыши
и выбором «Добавить переход» (см. image110
).
Далее появится диалог под названием «Создать новый переход» (см.:numref:image111). В нём необходимо выбрать уникальное имя перехода и язык, в котором будет описано данное условие.
В случае, если переходы с введённым именем уже существуют, то будет
выведено сообщение об ошибке (см. image112
).
Добавление действия в структуру SFC диаграммы (см. image113
) происходит
аналогично добавлению перехода в данную структуру.
После выбора «Добавить действие» во всплывающем меню, вызванном с
помощью нажатия правой клавиши мыши по программному модулю, написанном с
помощью языка SFC, появится диалог «Создать новое действие»
(см. image114
).
В данном диалоге необходимо указать «Имя действия» (должно быть
уникальным) и выбрать язык (ST, IL, FBD, LD), на котором будет написано
данное действие. Если имя действия не заполнено будет выведено сообщение
об ошибке (см. image115
).
После того как действие добавлено, необходимо реализовать его код на
текстовом или графическом языке, в зависимости от языка, который был
выбран в диалоге «Создать новое действие» (см. image114
). После
добавления переходов и действий в дерево проекта они будут доступны для
множественного использования.
Описание языка SFC, основных конструкций и примера его использования приведены в приложении 7.
Панель редактирования ресурса¶
Панель редактирования ресурса (см. image116
) содержит панель переменных и
констант, которая позволяет определять глобальные переменные на уровне
ресурса и панели, содержащие задачи и экземпляры.
Добавление переменных в ресурс ничем не отличается от добавления переменных в программные модули, единственное исключение - переменные могут быть только класса «Глобальная». Основной задачей данной панели является возможность добавить экземпляр, указать для него программный модуль типа «Программа», из ранее определённых в проекте, для поля «Тип» и выбрать задачу из добавленных в список «Задачи».
Панель редактирования типа данных¶
Панель редактирования типа данных (см. image117
) позволяет определить
различные параметры создаваемого пользовательского типа данных.
Главным параметром является список под названием «Механизм создания нового типа», позволяющим выбрать следующие типы:
Синоним;
Поддиапазон существующего типа (выделение диапазона значений стандартного типа);
Перечисление (перечисляемый тип);
Массив;
Структура, позволяющая определять тип, основанный на объединении несколько типов.
Далее рассмотрены подробнее параметры для каждого из вышеперечисленных типов.
Синоним
При выборе «Синоним» (см. image118
), из списка указывается базовый тип и
его начальное значение.
Созданный тип представляет собой псевдоним (например, аналогично использованию typedef в языке C) уже существующего типа.
Поддиапазон существующего типа
В случае выбора механизма создания нового типа «Поддиапазон
существующего типа», помимо базового типа и начального значения
производится установка параметров «Минимум» и «Максимум» (см. image119
),
т.е. соответственно минимального и максимального значения, которое может
принимать создаваемый тип данных.
Перечисляемый тип
При выборе механизма создания нового типа «Перечисляемый тип»
(см. image120
), появится панель,
содержащая таблицу, в которой можно задать список
возможных значений данного перечисляемого типа.
Добавление, редактирование, удаление, перемещение данных значений осуществляется с помощью кнопок, описание которых приведено в таблице 10
Таблица 10 - Кнопки редактирования значений перечисляемого типа
Внешний вид кнопки |
Название кнопки |
Функция кнопки |
---|---|---|
Редактировать |
Редактировать выделенное поле в таблице |
|
Добавить |
Добавить новое поле в таблицу |
|
Удалить |
Удалить выделенное поле в таблице |
|
Переместить вверх |
Переместить вверх выделенное поле в таблице |
|
Переместить вниз |
Переместить вниз выделенное поле в таблице |
Также есть возможность задать начальное значение данного перечисляемого типа в поле «Начальное значение».
Массив
При выборе механизма создания нового типа «Массив» (см. image122
)
появится панель, в которой необходимо указать базовый тип, начальное
значение, а также размерность массива.
Размерность массива задаётся в следующем формате: <начальное значение>..<конечное значение>
Структура
При выборе механизма создания нового типа «Структура» (см. image123
), в
появившейся таблице необходимо добавить необходимое количество полей
структуры. Каждое поле имеет своё имя, тип и начальное значение.
Добавленные типы данных могут использоваться также как и стандартные при реализации алгоритмов и логики выполнения программных модулей.
Выше были рассмотрены варианты редактирования различных элементов, из которых состоит проект, согласно стандарту IEC 61131-3. Далее будет продолжено рассмотрение остальных компонент среды разработки Beremiz.
Панель экземпляров проекта¶
Панель экземпляров проекта (см. image124
) обычно располагается слева в
среде разработки Beremiz и отображаемые в ней экземпляры зависят от
выбранного элемента в дереве проекта.
При выборе в дереве проекта элемента, соответствующего ресурсу, в панели
экземпляров проекта будут отображены экземпляры,
определённые в данном ресурсе, а так же глобальные переменные ресурса.
На image125
показано, как в панели редактирования ресурса определен
экземпляр для программного модуля «main_program»:
Соответственно, при выборе в дереве проекта ресурса, в котором
определены экземпляры (описанные выше) и глобальная переменная, панель
экземпляров будет выглядеть, как показано на image126
:
При выборе в дереве проекта элемента, соответствующего программным
модулям «Программа» и «Функциональный блок» в панели экземпляров будут
отображены переменные, определённые в них. Ниже на image127
приведён
пример программного модуля типа «Программа» с именем «program0», в
котором определено 8 переменных различных пользовательских классов.
Соответственно, при выборе в дереве проекта данного программного модуля
в панели экземпляров будут отображены, определённые выше переменные
(см. image128
).
В случае выбора других элементов в дереве проекта, панель отладки будет пустой. Как можно заметить, с правой стороны от каждого элемента в панели отладки располагаются кнопки, назначение которых описано в таблице 11.
Таблица 11 - Кнопки на панели экземпляров проекта
Внешний вид кнопки |
Название кнопки |
Функция кнопки |
---|---|---|
Отладка экземпляра |
Кнопка запуска режима отладки для экземпляра |
|
Двойной щелчок по кнопке «Отладка экземпляра» |
Отображение графика изменения значения переменной в режиме отладки |
|
Родительский экземпляр |
Переход к родительскому экземпляру и его локальным переменным |
В случае нажатия кнопки запуска режима отладки, для экземпляра программы, написанной на одном из графических языков (FBD, LD или SFC), откроется вкладка с панелью, на которой диаграмма будет отображена в режиме отладки. Если кнопка запуска режима отладки нажимается для элемента переменной, то переменная будет добавлена в панель отладки.
Описанные выше кнопки доступны только в режиме отладки прикладной программы. Про данный режим подробнее рассказывается в п. 8.
Панель библиотеки функций и функциональных блоков¶
Панель библиотеки функций и функциональных блоков (см. image131
), как
правило, располагается справа в среде разработки Beremiz. Она содержит
коллекцию стандартных функций и функциональных блоков, разделённых по
разделам в соответствии с их назначением, которые доступны при написании
алгоритмов и логики работы программных модулей.
Выделены следующие разделы для функций и функциональных блоков: стандартные, дополнительные, преобразования типов данных, операций с числовыми данными, арифметических операций, временных операций, побитовых и смещения бит, операций выбора, операций сравнения, строковых операций, модулей «Python» и «SVGUI».
Помимо стандартных функций и функциональных блоков, данная панель содержит раздел «пользовательские программные модули». В него попадают функции и функциональные блоки, добавленные в конкретный проект, т. е. содержащиеся в дереве проекта.
Использование данных функций и функциональных блоков осуществляется перетаскиванием необходимого блока с помощью зажатой левой кнопки мыши (Drag&Drop) в область редактирования: либо текстовый редактор, либо графический редактор.Имеется специальное поле поиска функционального блока по имени.
Отладочная консоль¶
Панель, содержащая отладочную консоль (см. image132
), как правило,
располагается в правом нижнем углу среды разработки Beremiz.
Она служит для отображения в виде текстовых сообщений:
Результатов генерации ST и C кода;
Результатов компиляции и компоновки прикладной программы;
Процесса соединения и передачи прикладной программы на целевое устройство;
Различных промежуточных манипуляций в процессы создания прикладной программы.
В случае, если необходимо вывести предупреждения среды разработки
Beremiz или ошибки компиляторов (MatlEC или C кода) во время их работы
цвет вывода текстовых сообщений становится красным. Критические ошибки
также выделяется красным цветом, но при этом еще желтым фоном (см. image133
).
Поиск элементов в проекте¶
Для поиска интересующего элемента в проекте используется диалог «Поиск в
проекте» (см. image134
). Его вызов происходит с помощью главного меню
программы или панели инструментов.
В появившемся диалоге можно установить различные параметры поиска:
шаблон поиска, область поиска, чувствительность к регистру при поиске, а
так же записать шаблон поиска в виде регулярного выражения. После того
как все параметры установлены, необходимо нажать кнопку «Поиск» в этом
диалоге. Ниже на image135
приведен пример поиска элемента с именем
«LIGHT».
Результат поиска выводится в иерархической структуре. При двойном щелчке по одному из результатов - данный элемент будет выделен в проекте оранжевым цветом.
Панель отладки¶
Панель отладки располагается в правой части среды разработки Beremiz
(см. image136
).
Данная панель представляет собой таблицу с двумя столбцами «Переменная» и «Значение». Соответственно, столбец «Переменная» содержит экземпляры переменных, значения которых во время исполнения, отображаются в поле «Значение» и могут изменяться. Добавление переменных осуществляется с помощью панели экземпляров проекта.
Изменение значений переменной во время отладки прикладной программы
осуществляется нажатием левой клавишей мыши на иконку замка напротив
интересующей переменной (см. image137
).
Далее появится диалог ввода значения для выбранной переменной (см. image138
).
В режиме отладки форсированное значение переменной будет подсвечено
синим цветом. Для того чтобы освободить значение переменной, необходимо
нажать на иконку открытого замка (см. image139
)
На данной панели присутствует кнопка удаления переменной из панели отладчика, перемещать и передавать ссылку на переменные можно в Drag&Drop режиме.
Панель графика изменения значения переменной в режиме отладки¶
Данная панель (см. image140
) открывается во вкладке отладчика напротив
выбранной переменной в случае, если в панели отладчика
нажать на переменную двойным щелчком мыши. Напротив переменной
появляется график изменения значения переменной в режиме отладки (см.
таблицу 11).
На данной панели есть возможность установить:
«Интервал» - временной отрезок, за который отображается изменений графика;
«Масштаб» - задание приближения отображения графика;
«Позиция» - перемещение по отображению графика, от начала и до конца.
Также на данной панели в правом нижнем углу располагаются вспомогательные кнопки. Описание данных кнопок приведено в таблице 12:
Таблица 12 - Кнопки на панели графика изменения значения переменной
Внешний вид кнопки |
Функция кнопки |
---|---|
Очистка отображения графика |
|
Переход к отображению текущего значения графика, т.е. сдвиг параметра «Позиция» максимально вправо |
|
Сброс настроек масштаба до настроек по умолчанию: x 1.0 |