Первый вариант сразу же попробовал - не помогает. Завтра буду пробовать второй
Вид для печати
Доброе утро. Такой вопрос по визуализации: при масштабировании на экране телефона элементы и тексты, сделанные силами кодесис, расплываются, становятся нечёткими. Как-то это можно пофиксить?
Добрый день.
Начните с этого:
https://owen.ru/forum/showthread.php...l=1#post423502
Для ПЛК2xx /home/root/CODESYS_WRK надо заменить на /root/CODESYS
Добрый день.
В связи с блокировкой России и личных кабинетов, я не могу скачать библиотеки для превращения raspberry pi в ПЛК для тестирования графического интерфейса в версии Codesys 3.5 SP17. Встроенный ПЛК Control Win V3 не отображает графический интерфейс, выдает ошибку.
Могли бы вы создать архив библиотек для одноплатных компьютеров для версии Codesys 3.5 SP17 для тестирования графического интерфейса и тренировок
Добрый день!
Осваиваю библиотеку OwenTools, помогите, возник вопрос при запуске блока OwenTrend. Работаю в эмуляции.
Если ставлю в коде на вход xEnable:= TRUE, то все работает , а если управляющую переменную, то график не работаетВложение 87481Вложение 87480
выложить проект проблематично, он большой, сам код который с вязан с библиотекой, выложить могу, но не понял, по поводу присвоения, ну да, переменная связана с индексацией монтирования, и становится true, когда носитель смотирован, после чего должен запуститься фб
Вроде нашел, это из-за эмуляции, призагрузке на графике первая дата стоит 00:00:00 01.01.1970, а время для фб я беру из библиотеки SysTimeRtcGet, и при включении переменной грузится текущая дата и график глючит, по видимому...
Добрый день! Подскажите пожалуйста. Есть ли в Codesys 3.5 возможность сделать глобальный элемент (шаблон) визуализации (прим. кнопку, текст), чтобы он автоматически появлялся на всех экранах?
Спасибо!
Добрый день
Можно ли во входную переменную фрейма передать формат вывода (например %.1f или %.2f) для поля вывода переменной в этом же фрейме?
То есть, например, есть фрейм с прямоугольником, в котором выводиться входная переменная:
Вложение 87626
Как реализовать такой функционал? Пробовал через sprinf - не получается.Код:VAR_INPUT
rValue : REAL;
sFormatValue : STRING := '%.1f';
END_VAR
Пока реализовал через функцию OSU.REAL_TO_STRING_FORMAT. Передаю на вход usiDigit переменную количества знаков после запятой.
Вложение 87628Код:VAR_INPUT
ptSensor : POINTER TO ANALOG_SENSOR;
usiDigit : USINT := 1;
END_VAR
Теперь вопрос сложнее. Как сделать вышеописанный фрейм не только с выводом REAL, но и с редактируемыми полями?
Добавить в интерфейс фрейма область VAR_IN_OUT, прописать в ней переменную.
Привязать ее к элементу фрейма (Конфигурация ввода - OnMouseClick - Записать переменную).
Соответственно, в коде нужно детектировать изменение записываемого значения и при необходимости синхронизировать его со строковым "входом".
Доброго времени!
Не могу понять, как реализовать такую задачу:
1. Необходимо на графике показать образцовую кривую, описывающую техпроцесс (заданная программа по температуре) T(t) не по живому времени, а по относительному - начало "00:00", окончание "HH:MM"
2. На этом же графике необходимо показать реальное протекание процесса (реальная температура при работе)
Т.е. не требуется непрерывного наблюдения, а только относительный подсчёт времени выполнения программы техпроцесса
Трассировка и трэнд не смог приспособить, потому как не нашёл возможности нарисовать в них график заданной программы T(t)
Декартов XY тоже не смог приспособить - не понимаю, как на ось X "натянуть" время.
Можете подсказать, в каком направлении двигаться?
Спасибо.
Добрый день.
Вы можете выразить время как последовательность числовых отсчетов.Цитата:
Декартов XY тоже не смог приспособить - не понимаю, как на ось X "натянуть" время.
Условно, на оси X - 10, 20, 30 и т. д., и вы интерпретируете их как 10/20/30 секунд с момента запуска.
Ага, понял. Была такая мысль, спасибо!
Добрый день! У меня такой вопрос: Для отображения переменной REAL с двумя знаками после запятой в текстовом поле в значении свойства текст, я указываю выражение %.2f . При выполнении в режиме эмуляция, отображается как задумано. Но при загрузке в ПЛК210, выводятся все нули после запятой. В чем проблема?
Извиняюсь. Ошибка в коде.
Добрый день! Почему настройки стиля визуализации меняются при запуске проекта. Допустим я поменял шрифт "Standart" (сделал шрифт BOLT), и в режиме редактирования я увидел эти изменения. Но после запуска проекта остаются старые настройки (без BOLT)
Я запускаю на ПЛК210. Я меняю только размер шрифта и другие настройки шрифта. Я не использую другой шрифт
Мне не понятен алгоритм минимальных действий для изменения стиля шрифта в открытом проекте (ну и других изменений). Я создал свой стиль на основе существующего. Я выбрал его в менеджере визуализации. Я создал метку и выбрал шрифт Font-Standart. Я открыл свой стиль в редакторе стилей. Я поменял размер шрифта Font-Standart. Нажал кнопку сохранить и кнопку экспортировать в системный репозиторий. Но в открытом проекте CODESYS (режим редактирования) надписи где используется шрифт не поменялись. Можно ли сделать так что бы все надписи в визуализации где используется шрифт, сразу поменялись в открытом проекте. (Если я переоткрываю проект, то конечно все поменяется).https://disk.360.yandex.ru/d/9zJDgDZl28cAsg
Я правильно понимаю, что проблему, описанную в предыдущем сообщении, вы уже решили?
Вероятно, может помочь "перевыбор" стиля в менеджере визуализации.Цитата:
Можно ли сделать так что бы все надписи в визуализации где используется шрифт, сразу поменялись в открытом проекте
Можно ли в визуализации вводить многострочный текст?
Есть TextField, в который хочется вводить текст в несколько строк. Ctrl+Enter и прочие варианты лишь записывают переменную. В базовом Rectangle поведение такое же.
Формат текста установлен "разрыв строки".
Можно сделать так:
1. Добавить в проект библиотеку OwenStringUtils
2. Определить символ, который вы будете вводить для отметки переноса строки (например, '_').
2. В конфигурации элемента визуализации к событию OnValueChanged привязать действие Выполнить ST-код с кодом:
где в рамках примера sVar - это переменная типа STRING, объявленная в программе PLC_PRG и привязанная к элементу визуализации.Код:PLC_PRG.sVar := OSU.ReplaceAllSubstrings(PLC_PRG.sVar, '_', '$N');
Спасибо, но, увы, не то :(
Ввод все равно остается однострочным, а повторная активация поля ввода вообще убирает перенос.
Если подстановка крутится в основном цикле, то ситуация 1 к 1.
https://skrinshoter.ru/va6qkv3VyEc?a
Я пытался использовать text editor с временным файлом, и автоматически перехватывать его, но откровенно запутался, проще завести несколько строк в диалоге :(
Это верно. Чтобы сделать его многострочным - придется редактировать библиотеку диалогов.Цитата:
Ввод все равно остается однострочным
В сервисной визуализации, которую вы видите в среде CODESYS - да.Цитата:
а повторная активация поля ввода вообще убирает перенос.
Но, например, в веб-визуализации такого эффекта нет:
https://ftp.owen.ru/TechSupportShare...17_7-44-18.mp4
Звучит как простое и понятное в реализации решение - лично я предпочитаю именно такие вместо "изысканностей".Цитата:
проще завести несколько строк в диалоге
Добрый день. Элемент "Переключатель изображений" переключает только два изображения. Как бы переключать динамически по индексу большее количество? Вот как у элемента "Текст" есть поля "динамические изображения" и "переменная индекса изображений" - как-то так же можно? У элемента "Изображение" есть поле "индекс изображения", есть поле "динамическое изображение", но я не понимаю, что пихать ему в "версию изображения", мой пул изображений с индексами оно не видит...
Добрый день.
Посмотрите пример:
https://ftp.owen.ru/CoDeSys3/21_Exam...projectarchive
+
начиная с 05:45:
https://oscat.ru/wp-content/Video/Co...uLifehacks.mp4
благодарю )
А возможно получить доступ ко всем видео?
Вложение 88190