0

Целевая визуализация

Целевая визуализация

Целевая визуализация — это технология, позволяющая выполнять CoDeSys визуализации на контроллерах, оборудованных матричным дисплеем и клавишами ввода. Для объектов визуализации проекта CoDeSys может генерировать ST код, который затем транслируется и загружается вместе с кодом проекта в контроллер. Никакого дополнительного программирования элементов визуализации в прикладной программе не требуется.

Условия

  • Целевая визуализация должна поддерживаться целевой системой. В настройках целевой системы должна быть активирована опция ‘Target-Visualization’, расположенная на вкладке ‘General’. Если это разрешено в целевом файле, то данная опция может включаться или отключаться пользователем.
  • Необходима библиотека SysLibTargetVisu.lib, для поддержки функции визуализации в системе исполнения. Она добавляется автоматически Менеджером библиотек, если активирована опция ‘Target-Visualization’. Код функций SysLibTargetVisu.lib должен быть реализован в системе исполнения. Кроме того, следующие неявно используемые библиотеки автоматически помещаются в проект при активации опции ‘Target-Visualization’: SysLibAlarmTrend.lib, SysLibSockets.lib, SysLibFile.lib, SysLibTime.lib, SysLibMem.lib.
  • Контроллер должен иметь монитор и клавиши ввода (клавиатуру).

 

Предварительная подготовка целевой визуализации

1. Создайте визуализацию в CoDeSys. Чтобы улучшить производительность во время исполнения, постарайтесь разместить статические элементы (неподвижные элементы, постоянный текст, неизменный цвет…) на задний план (используйте команду ‘Extras’ ‘Elementlist’ для изменения уровня

размещения элементов).. Задний план формируется следующим образом. Все статические элементы изображаются только однократно как рисунок фона. Вследствие этого уменьшается число перерисовок изображения. Это оправдывает себя прежде всего для сложных многоугольников или растровых рисунков.

Дополнительного повышения быстродействия можно достичь, отключив опцию Keyboard usage for tables.

Для экономии памяти диалоги конфигурации для выбора цвета и шрифта могут иметь ограничения, определенные изготовителем оборудования.

Если имеется объект визуализации с именем PLC_VISU, целевая визуализация запускает его первым, иначе используется объект, который стоит на первом месте в списке ‘Visualization’ в CoDeSys. Имейте в виду, что неявные переменные визуализации должны использоваться в проекте как реманентные переменные и должны быть объявлены в соответствующем списке Global Variables.

2. Деактивируйте опцию ‘Target-Visualization’ категории ‘Visualization’ для каждого объекта визуализации, который не должен быть включен в целевую визуализацию.

3. Отключите в настройках целевой платформы опцию ‘Optimized jumps’.

4. Включите в настройках целевой платформы опцию ‘Target-Visualization’.

Дополнительно вы можете выбрать способ опроса ввода и управления прорисовкой элементов. Оно выполняется автоматически фоновыми задачами VISU или синхронно под управлением пользовательской задачи.

Таким образом, кроме отключения опции keyboard usage for table, возможны следующие конфигурации:

(a) Управление через автоматически генерируемые задачи VISU, вызывающие программы

MAINTARGETVISU_PAINT _CODE и MAINTTARGETVISU_INPUT_CODE:

Опция Deactivate task generation отключена:

(a1) Use VISU_INPUT_TASK активирована:

Автоматически вставляются две задачи с вызовом программ:

VISU_TASK вызывает неявно программный модуль MAINTARGETVISU_PAINT_CODE, выполняющий прорисовку элементов визуализации.

VISU_INPUT_TASK вызывает неявно программный модуль MAINTARGETVISU_INPUT_CODE, обрабатывающий пользовательский ввод данных.

Настройки по умолчанию задач:

VISU_INPUT_TASK: циклическая, Приоритет 14, Интервал t#200ms. VISU_TASK: циклическая, Приоритет 15, Интервал t#50ms.

Пожалуйста, обратите внимание:

Эти параметры, конечно, можно менять, но: VISU_INPUT_TASK должна вызываться всегда в первую очередь перед VISU_TASK, чтобы обеспечить согласованность ввода данных и обновление экрана.

Задача, которая вызывает главную программу (например, PLC_PRG), должна вызываться, по крайней мере, так же часто, как VISU_INPUT_TASK, идеально чаще, но может быть, конечно, и совмещена с VISU_INPUT_TASK.

 

(a2) Use VISU_INPUT_TASK деактивирована:

Создается единственная задача VISU_TASK , содержащая, однако, вызов функции VISU_INPUT_TASK.

Вызов MAINTARGETVISU_ PAINT_CODE совмещается в этом случае с MAINTTARGET VISU_ INPUT_CODE.

Эта конфигурация применима для систем, которые не допускают многозадачный режим. Недостатком является отсутствие возможности задания различных периодов обслуживания ввода данных пользователя и обновления экрана.

(б) ’Ручное’ управление без автоматически заданных задач. Программные модули MAINTARGETVISU_PAINT_CODE и MAINTTARGETVISU_INPUT_CODE могут вызываться из прикладной программы и соответственно синхронизироваться с ней:

Опция Deactivate task generation активирована:

Если активирована опция Use VISU_INPUT_TASK, доступны оба программных модуля и могут вызываться по отдельности или присоединяться к любой задаче. (Обратите внимание на указания в a1).

Пример управления Visu модулями в прикладной программе. Программа visu_control выполняет прорисовку только после каждого четвертого вызова обработки ввода. Это уменьшает опасность нарушения перерисовки вводом данных.

Имейте это в виду при создании прикладной программы!

Вы можете использовать для поддержки визуализации любую задачу, включив в нее программу visu_control.

Если опция Use VISU_INPUT_TASK выключена, то в вашем распоряжении будет только модуль MAINTARGET VISU_PAINT_CODE, содержащий, тем не менее, функциональные возможности MAINTARGETVISU_INPUT_ CODE.

Он также может вызываться в прикладной программе и соответственно привязываться к любой задаче.

5. Загрузите проект в ПЛК (‘Online’ ‘Login’).

 

Запуск целевой визуализации

Запустите загруженный проект в контроллере. Визуализация стартует с объекта PLC_VISU или с первого в списке объектов визуализации CoDeSys.

 

Ограничения

Внутренние команды:

PRINT Печать текущей визуализации.

EXITPROGRAM Закрыть программу.

TRACE Открывает окно трассировки. Реализуется элементом Trend.

SAVEPROJECT Сохранить проект.

Графические форматы:

Поддерживается только простой растровый формат (bitmap), .jpg, .tif, .ico использовать нельзя.

Прочее:

Ползунок в таблицах Ползунок прокрутки не отображается.

Текст:

Отсекание Текст, выходящий за границы элемента, не отсекается.

Обработка тревог:

Действия Действия „Print“ и „Message“ не поддерживаются. Соответствующее предупреждение будет дано при компиляции проекта.

Тренды:

Degree of accuracy Степень детализации может быть определена для горизонтальной оси. Это приводит к изменению числа опросов данных на отрезок:

Число опросов = Отрезок/Степень детализации

В результате на некоторых целевых платформах время цикла для VISU_TASK превышает 200 мс, приводя к 100% загрузке процессора!

 

Мой блог находят по следующим фразам

Раздел: CoDeSys. Теория. Метки: , ,

Оставить комментарий

Отправить сообщение

CoDeSys GSM/GPRS модем Lectus OPC MasterSCADA Modbus MX110 Omron OPC-сервер owen OWEN Easy Logic owen logic PLC Configuration PROFIBUS s-200 SCADA scada системы siemens siemens plc SIMATIC Simplight SMS step7 TRACE MODE Динамизация ИП-320 ОВЕН ОВЕН ПЛК ОВЕН ПЧВ ПЛК ПЛК ОВЕН ПР 110 Панель оператора Программируемое реле Частотный преобразователь библиотека в CoDeSys визуализация диспетчеризация конфигурация панели программирование ПЛК серия NS сименс плк частотник частотное управление язык CFC язык ST
.