- Как вывести график codesys
- Функция «График» по 10 или менее точкам с сортировкой в CoDeSys
- графики в кодесис
- Тема: Небольшой вопрос во визуализации Codesys 2.3
- Небольшой вопрос во визуализации Codesys 2.3
- Визуализация в среде CODESYS v3
- Установки Visualization Manager
- Компоненты Visualization Manager
- Установка параметров цикла визуализации
- Редактор визуализации
Как вывести график codesys
Борис Калинин
+7 961 683-09-01
Функция «График» по 10 или менее точкам с сортировкой в CoDeSys
На днях ко мне обратились за помощью в написании блока для построения графика по 10 точкам соотношения газ/воздух. Я написал этот блочок в виде функции, а не функционального блока, т.к. на выходе только одна переменная и запоминать ничего не нужно.
В описании на блок я сообщил человеку, что обязательно нужно вбить все точки и что x1 должен быть меньше x2 и т.д. Но потом подумал, а почему? Вдруг кто-то ошибётся при вводе или точки не будут статическими, а будут меняться, да и самих точек может понадобится меньше. Вот и решил добавить ещё сортировку и выбор числа точек.
Применять эту функцию можно, понятное дело, и не для графиков по соотношению газ/воздух, а например, для высчитывания уставки температуры отопления для ПИД-регулятора или того же давления газа по температуре на улице (лично я для этого в программе Advanced Grapher пользуюсь функцией «Регрессионный анализ» для вычисления коэффициентов параболы наиболее близкой к данному набору точек, а потом использую для вычисления уставки обычное квадратное уравнение). В общем-то использовать функцию GRAPH можно для любой аппроксимации нелинейной зависимости кусками прямых.
Количество точек можно элементарно увеличить обладая базовыми знаниями программирования в ST, просто изменив число входных переменных, размеры массивов и добавив строк присвоения по аналогии с первыми 20-ю строками кода. Сильно много точек ставить не советую т.к. применяется банальный пузырчатый метод сортировки, оптимальный только для очень малого числа элементов.
Дополнительных библиотек для использования функции не требуется. Сортировка включается подачей TRUE на вход sort, если же точки и так отсортированы по возрастанию x, то оставьте вход пустым. Число первых используемых точек задается на входе n. В случае если входная переменная ниже x1 на выход подается y1, аналогично с верхней границей.
Источник
графики в кодесис
наша задача такова.
нам необходимо, чтобы вся температура получаемая с датчиков, отображалась ввиде графика. не могли бы натолкнуть на мысль как все это осуществить.
смотрите тренд в визуализации это-график и архивирование отображаемых переменных. для быстро меняющихся данных — трассировка.
тогда всплывает еще вопрос, а как можно потом эти данные сохранить.
прочтите инструкцию, все сохраняется автоматически, вам остается только сконфигурировать элемент визуализации
я в Codesys v3.3 построил Trace, вставил в визуализацию, график работает отлично, изменение переменной отображает чётко, но градации шкалы, как временной так и уровня, подписаны одними квадратиками. Шрифты стандартные, настройки обеих шкал по умолчанию.
Кто сталкивался с этой проблемой?
Видимо это внутренняя ошибка КодеСис вер3, сыровата ещё.
Решил пойти другим путём, подключив графики сторонних разработчиков как ActiveX, но никак не могу разобратся как это сделать, а в справочниках и форумах это нигде не описано. описаны только под версию 2.3..
Кто с этим сталкивался и может показать пример подключения OLE объектов в v 3.3?
Вы с каким контроллером паботаете? ПЛК 100 программируется и работает только с CoDeSys 2,3.
контроллера ещё нет, одни обещания.
ща работаю с контроллером Ibm Pc под виндоусом))))
CoDeSys в России поддерживает «Пролог» . Свяжитесь с ними, если ведете разработку под ПЛК стороннего производителя.
Сдается мне — проблема с локальными шрифтами(часть символов отсутсвует). Попробуйте с английской виндой с проставленным mui
Источник
Тема: Небольшой вопрос во визуализации Codesys 2.3
Опции темы
Отображение
Небольшой вопрос во визуализации Codesys 2.3
имеется рабочий проект. хотел бы вывести показания температур и уставок в сми в визуализации
почитав руководство и потыкав функции не нашел как можно вывести эти показания текстом.
показания температур как бы можно вывести графиком, но а если их много. с уставками вообще не знаю как быть. подскажите возможно ли вывести значения переменных температур и уставок просто текстом?
Добрый день.
Да, возможно выводить значения переменных в виде текста.
Для этого Вам будет необходимо:
1. Добавить на поле визуализации произвольную фигуру: прямоугольник, скругленный прямоугольник и др.
Рис1.PNG
2. Открыть свойства этого элемента.
Рис2.PNG
«%3.3f» здесь означает, что в данное поле будет выводиться переменная действительного типа с тремя знаками до запятой и с тремя после.
Для вывода целочисленного значения необходимо использовать запись вида «%d» в поле Текст.
Подробнее про вывод различных форматов на визуализацию можно найти в: Справка -> Визуализация Codesys -> Конфигурирование элементов визуализации -> Текст.
3. Привязать переменную к объекту.
рис3.PNG
На вкладке «Переменные» в поле «Выв._текста» указываете имя переменной, которую хотите вывести.
Если переменная является глобальной — достаточно просто имени.
Если переменная локальная, сперва нужно указать имя POU, в котором она используется: ИмяPOU.ИмяПеременной.
Установите курсор в этом поле («Выв._текста») и нажмите F2. Вам будет доступен список всех переменных проекта. Выбрать оттуда нужную не составит труда.
4. Для записи значений в переменную не только через программу, но и через визуализацию, нужно сконфигурировать поле «Ввод» в свойствах объекта.
Рис4.PNG
Установите галочку напротив пункта «Ввод в переменную «Выв._текста».
Из выпадающего списка выберите способ, при помощи которого хотите вводить значение в переменную.
5. Нажать «ОК» в окне свойств объекта.
Источник
Визуализация в среде CODESYS v3
При создании пользовательского интерфейса контроллеров и панелей операторов в среде программирования CODESYS v3 сначала добавляются компоненты визуализации. Для этого в дереве проекта правой кнопкой мыши выбирается приложение Application – Add Object – Visualization (рис. 1) и добавляются компоненты Visualization Manager и Visualization (рис. 2). Для добавления в дерево проекта дополнительной страницы визуализации нужно выбрать приложение Application-Add ObjectVisualization.
Далее: для каждой созданной страницы необходимо установить размеры. Для этого правой кнопкой мыши выбирается страница визуализации в дереве проекта Visualization – Properties, на вкладке Visualization переключатель ставится в положение Use specified visualization size (рис. 3) и выставляется разрешение в соответствии:
СПК105 – 480 х 272
СПК107 – 800 х 480
СПК110 – 800 х 480
СПК207 – 800 х 480
СПК210 – 800 х 480
Страницы визуализации могут использоваться в 3-х режимах: стандартном – визуализация и дополнительных – диалог и клавиатура (рис. 3). Для переключения режимов нужно перейти на вкладку Visualization и выбрать режим работы страницы.
Установки Visualization Manager
По умолчанию среда программирования CODESYS настроена на отображение латинских символов. Для вывода текстов с кириллическими символами необходимо активировать опцию поддержки текстов в формате Unicode. Для этого в дереве проекта нужно дважды нажать левой кнопкой на Visualization Manager и на вкладке settings поставить «галочку» в поле Use Unicode strings.
Переход между визуализациями из кода программы
На программируемых устройствах под управлением CODESYS v3 могут одновременно запускаться несколько визуализаций. Все они могут работать независимо друг от друга. При включении переменной CurrentVisu отображаемая информация на всех экранах будет одинакова. Так же при помощи переменной CurrentVisu можно программно переключать страницы визуализации. Для этого в коде программы нужно присвоить название страницы VisuElems.CURRENTVISU (рис. 4).
Использование стилей визуализации
В CODESYS v3 имеется возможность задавать внешний вид элементов (цвет, форму, шрифты). Некоторые стили позволяют использовать элементы с градиентной заливкой. Стиль выбирается на вкладке Settings в поле Selected style. Однако нужно иметь в виду, что использование нестандартных стилей увеличивает нагрузку на устройство, поэтому желательно придерживаться некоторых рекомендаций. Для СПК1хх стиль визуализации выбирается с учетом сложности проекта. Если проект содержит большое количество визуализаций и графических компонентов, то лучше использовать более простые стили, например, Default. На панельных контроллерах СПК207 с частотой процессора 200 MГц рекомендуется также использовать стиль Default.
На СПК207[M02] (SOM) ограничений на использование стилей нет, так как в нем установлен более мощный процессор (600 МГц) совместно с графическим ускорителем.
Стили визуализации можно создавать самостоятельно с помощью компонента Visualization Styles Editor. Компонент прилагается к стандартному установочному пакету CODESYS v3.
Компоненты Visualization Manager
Visualization Manager позволяет задавать общие установки всех визуализаций, используемых в проекте, и содержит компоненты TargetVisualization и WebVisualization.
Компонент TargetVisualization отвечает за отображение визуализации на дисплее панельного контроллера и имеет собственные настройки: стартовая страница, разрешение экрана и другие настройки, не описанные в данной статье.
Стартовая визуализация (рис. 5) отображается при старте программы на панельном контроллере и задается при нажатии кнопки .
Если размеры окна не были указаны при настройке разрешения, то CODESYS масштабирует визуализацию автоматически. Кроме этого, можно задать разрешение окна вручную, для чего необходимо активировать поля Best fit in online mode и Use specified client size в соответствии:
СПК105 – 480 х 272
СПК107 – 800 х 480
СПК110 – 800 х 480
СПК207 – 800 х 480
СПК210 – 800 х 480
Для отладки программы на ПК можно воспользоваться сервисной визуализацией, которая является копией TargetVisualization, запущенной в редакторе CODESYS. Сервисная визуализация запускается в момент подключения CODESYS к контроллеру.
Помимо визуализации на дисплее панельного контроллера среда CODESYS v3 позволяет создавать WebVisualization, которые отображаются на удаленных устройствах в WEB-браузере. Для работы с этим компонентом необходима его поддержка самим устройством и наличие порта Ethernet. СПК, имеющие возможность создания WebVisualization, имеют в своей маркировке соответствующее обозначение, например, СПК207-03.CS.WEB.
WebVisualization можно просматривать на любом современном браузере Рис. 4 Рис. 5 Рис. 6 34 с поддержкой HTML 5 на локальном или удаленном ПК, смартфоне либо планшете на базе iOS или Android. WebVisualization имеет собственные настройки.
Стартовая страница WebVisualization (рис. 6) задается так же, как и для TargetVisualization.
Для подключения к WebVisualization необходимо открыть в браузере страницу с адресом: http://:8080/ webvisu.htm. По умолчанию страница называется webvisu, при необходимости название можно изменить в поле Name of.htm file.
Для WebVisualization можно выставить размеры, соответствующие разрешению дисплея удаленного устройства, для чего необходимо установить переключатель в положение Use specified client size и указать в полях Client width и Client height соответствующее разрешение.
Установка параметров цикла визуализации
Для настройки цикла визуализации на контроллере в меню конфигурации цикла нужно дважды нажать левой кнопкой на пункт VISU_TASK (рис. 7).
Приоритет выполнения цикла визуализации задается в поле Priority (рис. 8). Желательно оставить самый низкий приоритет, по умолчанию – значение 31.
Для оптимальной производительности время цикла выбирается в пределах 200-400 мс в поле Interval (рис. 8). Кроме этого, можно установить автоматическое распределение свободного времени процессора, в некоторых случаях это ускоряет работу визуализации. Для этого нужно выбрать тип цикла Freewheeling в пункте Type. Высвободившееся время распределяется автоматически под задачу визуализации.
Кроме этого, можно определить контроль времени выполнения цикла Watchdog. Если сторожевой таймер включен (стоит «галочка» в пункте Enable), то задача, выполнение которой заняло больше времени, чем задано в поле Time, будет прервана с установленным статусом ошибки. В общем случае рекомендуется установить время сторожевого таймера 2 000 мс. Восприимчивость (параметр Sensitivity) – это допустимое число превышений времени сторожевого таймера без формирования признака ошибки.
Редактор визуализации
В редакторе визуализации можно самостоятельно создавать графическое оформление проекта. Открывается редактор двойным щелчком левой кнопки в дереве проекта.
Окно редактора содержит поле редактирования, панель инструментов и панель свойств элементов (рис. 9).
Для удобного расположения элементов в поле редактирования используется функция включения сетки. Для ее включения выбираются Tools – Options, в открывшемся окне – пункт Visualization на вкладке Grid устанавливаются «галочки» в полях Visible, Active и задается размер шага в поле Size.
Для расширения свойств можно воспользоваться режимом Expert (рис. 9), при включении которого в свойствах графических элементов появляются дополнительные поля, позволяющие более точно настраивать элемент.
Описание элементов редактора визуализации
Элементы визуализации имеют большой список свойств, которые позволяют настраивать отображение и взаимодействие элементов. Большинство настроек в основном схожи, но вместе с тем у каждого элемента имеются собственные уникальные настройки.
Элементы категории Базовый позволяют отображать геометрические фигуры (рис. 10).
Элемент Image предназначен для вывода пользовательских изображений и создания динамических изображений.
Frame представляет собой область текущей визуализации, которая содержит несколько других визуализаций (как фреймы в Internet-страницах). Чтобы определить, какая визуализация должна отображаться, нужно открыть Configure в свойствах элемента. В открывшемся окне будут представлены все доступные визуализации для выбора.
Label – элемент, позволяющий добавлять в визуализацию надписи, заголовки и любой текст.
При помощи элемента Combo boxinteger можно выбрать параметры из заранее созданного списка текстов.
Элемент Table позволяет отображать массив в виде таблицы. Двухмерные массивы, а также массивы, элементами которых являются структуры, отображаются в виде матрицы.
С помощью элемента Text field можно вводить и отображать текст. В отличие от прямоугольника он имеет настраиваемую рамку.
С помощью элемента Scrollbar в визуализацию можно добавить полосу прокрутки с заданными минимальным и максимальным значениями. Позиция ползунка должна изменяться в соответствии со значением входной переменной. Аналогичным образом можно изменять значение выходной переменной, передвигая ползунок вручную.
С помощью элемента Radio button можно добавлять неограниченное количество позиций переключения.
С помощью элемента Checkbox можно устанавливать или сбрасывать значение логической переменной (если стоит «галочка», значение переменной – TRUE).
Индикатор прогресса отображает значение переменной. С его помощью можно изменять предельные значения, а также стиль.
Элемент Invisible input расположен в разделе Common control панели инструментов. С его помощью выполняются действия аналогичные исполнению Rectangle. Отличается он тем, что является невидимым элементом и может накладываться на любое изображение для реализации невидимой кнопки.
Элемент Button расположен в разделе Common control и может выполнять те же действия что и элемент Rectangle. Отличается элемент тем, что может отображаться в стиле, выбранном в установках менеджера визуализации.
Элемент Alarm manager позволяет настроить обработку, отображение и запись в архив аварийных ситуаций.
Переключатели и лампы предназначены для переключения состояния BOOL-переменной: FALSE в TRUE и обратно и отображения состояния.
Бегунок можно назначить переменной и передвигать его планку. При этом переменная будет изменять свое значение в заданных пределах.
С помощью элемента Bar display в визуализацию добавляется столбчатый указатель и указывается диапазон значений. Результат (длина полоски) изменяется в соответствии с значением входной переменной. Для разных диапазонов можно задавать разные цвета. Фоновое изображение задается в глобальном пуле изображений и позволяет идентифицировать измеряемый элемент. По умолчанию элемент располагается горизонтально, в свойствах элемента можно изменить его ориентацию.
С помощью элемента Meter в визуализацию можно добавить тахометр c диапазоном значений. Позиция стрелки соответствует текущему значению входной переменной. Для разных можно задавать разные фоновые цвета.
Элемент Image switcher (переключатель изображения) используется для переключения двух изображений в зависимости от состояния логической переменной. Изменить изображение, а также значение заданной переменной можно нажатием на элемент.
С помощью элемента Trace переменная отображается в виде кривой в режиме реального времени.
Для более подробного изучения компонентов и настроек визуализации в CODESYS v3 можно воспользоваться инструкцией, находящейся на форуме (форум – СПК – визуализация) на сайте www.owen.ru. Также по всем вопросам можно проконсультироваться по адресу: support@owen.ru.
© Автоматизация и Производство, 2021. Все права защищены. Любое использование материалов допускается только с согласия редакции. За достоверность сведений, представленных в журнале, ответственность несут авторы статей.
Издание зарегистрировано Федеральной службой по надзору в сфере связи, информационных технологий и массовых коммуникаций. Свидетельство о регистрации средств массовой информации ПИ № ФС77-68720.
Источник