PDA

Просмотр полной версии : Визуализация(компоненты и настройки)



Страницы : [1] 2

Мурат Ахриев
23.06.2014, 13:14
Всем добрый день!

Представляю описание компонентов визуализации CODESYS 3.
Документ находиться на этапе разработки.

Поэтому, если при изучении документа возникнут вопросы:
-Не понятно описание компонента
-Хотелось бы более подробного описания какой либо части
-Нет описания нужного вам компонента

Задавайте в данной ветке форума, буду дополнять описание.

1. Добавлено описание режима "Expert", свойств элементов визуализации
2. Дополнено описание элемента "image"
3. Дополнено описание свойств цвета элементов
4. Добавлена нумерация страниц
5. Переработан пункт с описанием реализации многопользовательского доступа
6. Переработан пункт с описанием использования переменной CurrenVisu
7. Добавлен пункт с описанием таблиц

arlyn
23.06.2014, 16:34
А мне кажется будет ещё лучше если включить в этот документ ссылки на примеры (например ссылку на пример с вводом логина и пароля).:)

Александр Приходько
23.06.2014, 23:21
А мне кажется будет ещё лучше если включить в этот документ ссылки на примеры (например ссылку на пример с вводом логина и пароля).:)
Получим обратную связь. Если документ будет более или менее понятен, обязательно включим. Потому он и в отдельной ветке пока, чтобы темы не засорять.

Deoxes
09.07.2014, 14:33
мне как раз нужно поставить пароль на переход с одной визуализации на другую, киньте ссылку или напишите как сделать

Мурат Ахриев
10.07.2014, 10:38
В данном (http://www.owen.ru/forum/attachment.php?attachmentid=13360&d=1403514801) руководстве по визуализации описано создание пользователей для реализации контроля доступа. Описание расположено в пункте User Management.

Deoxes
10.07.2014, 12:43
Всё делаю как в инструкции, создал нового пользователя в групе Админ, дал ему короткое имя и пароль, сделал функцию на переход в другую визуализацию после авторизации, НО у меня неполучаеться авторизоваться, непойму что сделать нужно, пишу логин и пароль, жму ОК и ничего непроисходит

Сема
11.07.2014, 14:01
Напишите пожалуйста в конце методички, описание ошибок при загрузке проекта, и описание того, как это исправить, к примеру, как в инструкции по частотнику написано..

Александр Приходько
11.07.2014, 21:11
Напишите пожалуйста в конце методички, описание ошибок при загрузке проекта, и описание того, как это исправить, к примеру, как в инструкции по частотнику написано..
Уверен, что в CODESYS огромное кол-во ошибок зарезервировано. Описать все - нереально. Давайте поговорим о типовых проблемах.

Предлагаю тем, кто по "граблям" прошелся, поделиться опытом.

lar
15.07.2014, 13:50
СПК207-220.03.00-CS-WEB версия прошивки 3302 таргет 3.5.3.40
Веб-визуализация нормально работает на IE и никак не хочет на Google Chrome
Пишет "An error happened, will automatically restart"

Александр Приходько
15.07.2014, 22:32
СПК207-220.03.00-CS-WEB версия прошивки 3302 таргет 3.5.3.40
Веб-визуализация нормально работает на IE и никак не хочет на Google Chrome
Пишет "An error happened, will automatically restart"
Убедитесь, что хром последней версии: https://www.google.ru/intl/ru/chrome/browser/
Установите джаву последней версии: http://javadl.sun.com/webapps/download/AutoDL?BundleId=90223

Сема
18.07.2014, 13:17
В методичке не очень подробно описаны некоторые опции, я часто это замечаю во многих инструкциях ваших приборов, не описано в чем разница между обычным окном и диалогом, не описана конкретная реализация CurrentVisu, много недомолвок, мало описаний..., хотелось бы еще примеры каких то реализаций,

Александр Приходько
19.07.2014, 20:20
В методичке не очень подробно описаны некоторые опции, я часто это замечаю во многих инструкциях ваших приборов, не описано в чем разница между обычным окном и диалогом, не описана конкретная реализация CurrentVisu, много недомолвок, мало описаний..., хотелось бы еще примеры каких то реализаций,

Сема, по мимо указанных, есть ли еще компоненты, которые на Ваш взгяд надо подробнее расписать?
Мурат в отпуске до 1-го числа, как вернется дополнит руководство.

EFrol
20.07.2014, 11:09
Возможен ли программный доступ к свойству визуального элемента (например, к размеру или позиции на экране) ?
Ведь сами визуальные объекты именуются, значит можно обращаться к ним по имени из кода!
Хорошо бы объектную модель описать поподробнее.

Спасибо.

Владиславыч
22.07.2014, 08:45
При добавлении большого количества графических элементов вылезла ошибка "paint buffer overflow....." попросили увеличить его размер, и не могу найти где это, можете подсказать?

ASo
29.07.2014, 14:37
Можно сделать фиксируемую в нажатом положении кнопку стандартными элементами, без битмапов? Т.е. нажали, переменная переключилась в true, кнопка осталась в нажатом состоянии. При переключении переменной в программе кнопка меняет свое состояние.

Владиславыч
29.07.2014, 17:22
Можно сделать фиксируемую в нажатом положении кнопку стандартными элементами, без битмапов? Т.е. нажали, переменная переключилась в true, кнопка осталась в нажатом состоянии. При переключении переменной в программе кнопка меняет свое состояние.
у стандартной кнопки параметр toggle
или стандартный элемент dipSwitch должно подойти.
13803
13804

ASo
29.07.2014, 17:30
Ну я же не просто так спрашиваю....
У стандартной кнопки это не параметр, а переменная, которая будет переключаться при нажатии. Кнопка отпустится.
У dip.... и пр элементов из данной группы - это использование битмапов.

Владиславыч
30.07.2014, 12:35
так попробуйте...
13807

ASo
30.07.2014, 13:40
Спасибо, так помогло!

vniko
07.08.2014, 15:05
Хотелось бы поподробнее информацию об элементе Таблица. Как ввести значения в ячейки в визуализации, возможность сортировки элементов в столбцах по возрастанию/убыванию и т.п.
Можно ли вводить две переменные (динамический текст %) в одной ячейке таблицы?

Еще вопрос: Если Device задать как CODESYS Control Win V3 и запустить в работу ПЛК (программная реализация в персональном компьютере), то визуализация разворачивается на весь экран монитора компьютера. Есть ли возможность разворачивать визуализацию не на весь экран, чтобы была видна панель задач Windows?

Igor.m
08.08.2014, 07:49
Доброго дня! Как в визуализации v3.5 редактировать переменные типов TIME, TOD, DT? В свойствах элемента можно задать только цифровой, символьный ввод и редактор, не один не подходит так как формат: TOD#00:00:00. Можно ли как то прийти к виду- 00:00:00 ? Или изменить Keypad, Numpad?

Мурат Ахриев
08.08.2014, 15:56
К виду 00:00:00 можно придти разобрав тип TIME на составляющие DWORD. Затем составляющие выводить на визуализацию по отдельности.

Во вложении Export файл функционального блока, который разбивает тип TIME на отдельные составляющие.

Мурат Ахриев
08.08.2014, 16:13
Хотелось бы поподробнее информацию об элементе Таблица. Как ввести значения в ячейки в визуализации, возможность сортировки элементов в столбцах по возрастанию/убыванию и т.п.
Можно ли вводить две переменные (динамический текст %) в одной ячейке таблицы?

Еще вопрос: Если Device задать как CODESYS Control Win V3 и запустить в работу ПЛК (программная реализация в персональном компьютере), то визуализация разворачивается на весь экран монитора компьютера. Есть ли возможность разворачивать визуализацию не на весь экран, чтобы была видна панель задач Windows?

Описание таблиц добавлено в версию v1.1

Прямая возможность сортировки отсутствует. Можете манипулировать данными массива(производить сортировку), который связан с ячейками таблицы.

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


У меня возник встречный вопрос, как вам удалось развернуть визуализацию на весь экран?(Опишите, пожалуйста, последовательность проделанных действий )

13989

Deoxes
12.08.2014, 13:07
Добавлял график в проект, сделал переменную x: REAL; добавлял в визуализации строку ввода переменной х, добавил в визуализации елемент Trace, к трейсу подвязал переменную х, в Trace настройки сделал, вектор х, у. Компиляция ошибок не находит, при загрузке в контроллер выбивает ошибки, неразрешённые ссылки, неверная версия устройства в проекте, хотя проект стандартный и работает отлично без графика.

RV9WFJ
12.08.2014, 15:15
У меня возник встречный вопрос, как вам удалось развернуть визуализацию на весь экран?(Опишите, пожалуйста, последовательность проделанных действий )CoDeSys 3.5 SP5 каждый раз при запуске Онлайн визуализации открывает ее на весь экран. Тут скорее встречный вопрос уже как ее не на весь экран открывать :-)

Мурат Ахриев
14.08.2014, 10:53
Добавлял график в проект, сделал переменную x: REAL; добавлял в визуализации строку ввода переменной х, добавил в визуализации елемент Trace, к трейсу подвязал переменную х, в Trace настройки сделал, вектор х, у. Компиляция ошибок не находит, при загрузке в контроллер выбивает ошибки, неразрешённые ссылки, неверная версия устройства в проекте, хотя проект стандартный и работает отлично без графика.

Потребуется дополнительная информация:
Какая у вас модификация СПК?
Какая версия прошивки?
Какая версия таргет файла?
Какая версия CDS?

Romchik
14.08.2014, 18:32
Всем Здравствуйте
При Эмуляции проекта в элеменах визуализации "Label" не корректно отображаются слова , как видно Желтые надписи отображаются корректно, и они использовались в старом проекте, процесс шел пришлось проект расширять, вот и не пойму из за чего эта не корректность. В Менеджере визуализации галочка Возле строки Unicode стоит. При компиляции еще выдает предупреждения, фото прилагаю. Стоит CodeSys 3.5 SP3 Patch 2.
Кто в курсе подскажите.

RV9WFJ
14.08.2014, 21:51
С этим лейблом вообще проблем много, я в итоге перестал его использовать совсем. Использую просто прямоугольник без заливки и без рамки.

Мурат Ахриев
15.08.2014, 10:32
С этим лейблом вообще проблем много, я в итоге перестал его использовать совсем. Использую просто прямоугольник без заливки и без рамки.

Попробуйте запустить эмуляцию на виртуальном контроллере.
14070

RV9WFJ
15.08.2014, 10:47
У меня вопросы к этому элементу не в плане работоспособности. Его просто в разработке неудобно использовать. Когда приходится его двигать или размер менять. И к тому еще используются группы и многослойный пирог то этот элемент невозможно выбрать даже если в списке переменных его выбрать. С прямоугольником таких проблем нет.
Я сейчас вообще прямоугольнику границу убираю только когда проект уже готов, так удобнее все это на экране размещать.

Romchik : Стоит CodeSys 3.5 SP3 Patch 2Для начала обновите

vniko
15.08.2014, 11:02
У меня возник встречный вопрос, как вам удалось развернуть визуализацию на весь экран?(Опишите, пожалуйста, последовательность проделанных действий )

Последовательность действий:
1. Device задать как CODESYS Control Win V3 ("встроенный" ПЛК в ПК от CoDeSys)
2. CoDeSys Gateway SysTray должно быть ranning (Start Gateway)
3. CoDeSys Control Win SysTray должно быть ranning (Start PLC)
4. Выполнить: Онлайн/Логин
5. Выполнить: Отладка/Старт
6. Визуализация открывается на весь экран.
При этом использую виндовскую команду на сворачивание экрана Win+D. Работает виндовская команда Alt+F4 на закрывание экрана.

Установлен CoDeSys V3.5 SP3 Patch5. Операционная система Windows XP SP3

Romchik
15.08.2014, 14:40
Последовательность действий:
1. Device задать как CODESYS Control Win V3 ("встроенный" ПЛК в ПК от CoDeSys)
2. CoDeSys Gateway SysTray должно быть ranning (Start Gateway)
3. CoDeSys Control Win SysTray должно быть ranning (Start PLC)
4. Выполнить: Онлайн/Логин
5. Выполнить: Отладка/Старт
6. Визуализация открывается на весь экран.
При этом использую виндовскую команду на сворачивание экрана Win+D. Работает виндовская команда Alt+F4 на закрывание экрана.

Установлен CoDeSys V3.5 SP3 Patch5. Операционная система Windows XP SP3

Cделал так как написал vniko все заработало , элементы визуализации "Label" все корректно отображают. Спасибо

Romchik
15.08.2014, 17:25
Ребят подскажите где искать или пример может есть.
Есть кнопка в проекте , назвал "Пуск" хочу чтобы при ее нажатии записалось значение в переменную TRUE, поменялась надпись на "СТОП" и цвет на красный, и наоборот нажимаю на "СТОП" надпись меняется на "ПУСК" цвет на Зеленый, в переменную FALSE

Feld_eger
16.08.2014, 10:03
Здравствуйте, можно ли изменить шрифт в Combo box integer?

Deoxes
18.08.2014, 10:33
Потребуется дополнительная информация:
Какая у вас модификация СПК?
Какая версия прошивки?
Какая версия таргет файла?
Какая версия CDS?

СПК 107
Где посмотреть прошивку и версию таргет файла?
Версия: 3.5.3.40

Мурат Ахриев
18.08.2014, 11:12
Ребят подскажите где искать или пример может есть.
Есть кнопка в проекте , назвал "Пуск" хочу чтобы при ее нажатии записалось значение в переменную TRUE, поменялась надпись на "СТОП" и цвет на красный, и наоборот нажимаю на "СТОП" надпись меняется на "ПУСК" цвет на Зеленый, в переменную FALSE

На странице 12, инструкции "Визуализация CODESYS 3 v1.1", изменения свойств цвета. На странице 13, динамический текст.

Мурат Ахриев
18.08.2014, 11:15
СПК 107
Где посмотреть прошивку и версию таргет файла?
Версия: 3.5.3.40

Версию прошивки можно посмотреть в конфигураторе на СПК.
Версию таргет файла можно посмотреть в настройках компонента Device, в дереве проекта, на вкладке "Информация".

Romchik
18.08.2014, 14:43
На странице 12, инструкции "Визуализация CODESYS 3 v1.1", изменения свойств цвета. На странице 13, динамический текст.

Благодарю за полезную информацию.

Сема
21.08.2014, 11:11
А еще вопрос такой?? А как можно вызвать визуализацию с размером окна меньшим чем стартовое окно?? Пример на картинке...

RV9WFJ
21.08.2014, 11:24
Кнопке прописываем действие при событии "Открыть диалог". Создаем визуализацию, в ее свойствах указываем Диалог и задаем ее размеры. В Диалоге создаем кнопку и в действии при событии указываем закрыть диалог, текущий.

Сема
21.08.2014, 16:11
Спасибо большое... Хотелось бы попросить Мурата Ахриева, чтобы в конце методички вы бы несколько примеров сделали, каких нибудь реальных задач, красиво оформленных, с богатым набором функции... В конце, например приложение А там, управление котлами... Вот первая инструкция мне очень помогла, там где описывается визуализация ТРМ1, я все по ней делал, все ясно, четко и более менее понятно...

приборист
21.08.2014, 20:55
Кнопке прописываем действие при событии "Открыть диалог". Создаем визуализацию, в ее свойствах указываем Диалог и задаем ее размеры. В Диалоге создаем кнопку и в действии при событии указываем закрыть диалог, текущий.

А каким образом открыть диалог из кода в проекте?

Hola
22.08.2014, 23:00
подскажите как настроить trace при попытке конфигурирования происходит ошибка14141

capzap
23.08.2014, 11:07
подскажите как настроить trace при попытке конфигурирования происходит ошибка14141

Вам вообще знакомы такие форматы как png или jpeg? А на картинке у Вас эмуляция, как сами думаете обязана ли поддерживать трейс пародия на реальный девайс? К тому же ни слова не написано , какая версия КДС, только одни из последних поддерживают трейс

Hola
23.08.2014, 17:07
Вам вообще знакомы такие форматы как png или jpeg? А на картинке у Вас эмуляция, как сами думаете обязана ли поддерживать трейс пародия на реальный девайс? К тому же ни слова не написано , какая версия КДС, только одни из последних поддерживают трейс
В следующий раз учту.
И да все дело в эмуляции было.
Версия 3.5 sp 3
Спасибо за подсказку.

Сема
25.08.2014, 15:45
Добрый день, подскажите пожалуйста, каким образом мне можно вызвать окно из кода программы?? Это надо использовать переменную VISUCurrent ?? Как это мне можно реализовать????

приборист
25.08.2014, 16:46
А каким образом открыть диалог из кода в проекте?
Вызывать диалоги из кода программы нет возможности.
3s обещали добавить данную функцию в новый релиз.
Вышел 3.5.SP5 в новых фишках не заявлен вызов диалогов из кода.
Ждем нового релиза.

Мурат Ахриев
25.08.2014, 17:24
Добрый день, подскажите пожалуйста, каким образом мне можно вызвать окно из кода программы?? Это надо использовать переменную VISUCurrent ?? Как это мне можно реализовать????

На странице 5 инструкции "Визуализация CODESYS 3 v1.1", описано использование данной переменной.

Мурат Ахриев
25.08.2014, 17:29
Спасибо большое... Хотелось бы попросить Мурата Ахриева, чтобы в конце методички вы бы несколько примеров сделали, каких нибудь реальных задач, красиво оформленных, с богатым набором функции... В конце, например приложение А там, управление котлами... Вот первая инструкция мне очень помогла, там где описывается визуализация ТРМ1, я все по ней делал, все ясно, четко и более менее понятно...

Мы как раз сейчас занимаемся созданием примеров и дополнительных инструкций, будет собран образ диска со всей необходимой информацией и по.

Сема
25.08.2014, 17:45
На странице 5 инструкции "Визуализация CODESYS 3 v1.1", описано использование данной переменной.

Просто мне не понятно, куда вводить это, в список объявления переменных или в коде программы?? Как мне к ней обратиться. У меня на выходе булева переменная, как мне связать это все??

Мурат Ахриев
26.08.2014, 09:35
Просто мне не понятно, куда вводить это, в список объявления переменных или в коде программы?? Как мне к ней обратиться. У меня на выходе булева переменная, как мне связать это все??

В коде программы, переменной VisuElems.CURRENTVISU нужно присвоить строку с названием страницы визуализации.

Пример:



IF a = true THEN
VisuElems.CURRENTVISU:= 'namevisu';
END_IF


Где "а" - переменная типа bool.
'namevisu' - Имя страницы визуализации.

Deoxes
26.08.2014, 15:19
Device:
Имя: Owen SPK1xx
Производитель: Owen
Группы: ПЛК
Тип: 4096
ID: 1628 0070
Версия: 3.5.3.40
Номер модели: 009
Описание: Owen SPK1xx
СПК Версия: OWEN-20130612-3180
Ошибка при загрузке елемента Trace на СПК http://imhocloud.com/image/5Q5
Сделал всё как и тут
http://www.owen.ru/forum/showthread.php?t=15530 , F.A.Q. - Вопросы и ответы, Настройка Trace, делал всё по видео.

Мурат Ахриев
27.08.2014, 12:09
На ранних прошивках поддержка Trace была не доступна, нужно обновить прошивку до версии 3.939 + использовать таргет файл версии 3.5.4.20.
Необходимое ПО и инструкции вы можете скачать по данной ссылке https://yadi.sk/d/vYR5__XRZFtNN.

Сема
27.08.2014, 15:41
В коде программы, переменной VisuElems.CURRENTVISU нужно присвоить строку с названием страницы визуализации.

Пример:



IF a = true THEN
VisuElems.CURRENTVISU:= 'namevisu';
END_IF


Где "а" - переменная типа bool.
'namevisu' - Имя страницы визуализации.

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

Можете пожалуйста посмотреть проект, может я не так что то делаю??

Мурат Ахриев
28.08.2014, 10:50
В инструкции "Визуализация CODESYS 3 v1.1.pdf" данный пункт описан, для того что бы использовать данную переменную ее необходимо включить.
14189

Romchik
04.09.2014, 16:35
Всем Добрый День !
Очень интересует информация о том, как в элементе визуализации Rectanglе, записать текстовое значение в переменную с экрана СПК. Клавиатуру VisuDialogs.Keypad выводить при нажатии умею, переменную WSTRING объявил, в окне %s написал. И все на этом застопорился. Подскажите где искать , читать ? Или может примерчик какой то имеется.
Спасибо.

RV9WFJ
04.09.2014, 16:44
Переменную просто STRING, там где клавиатуру обявили жестко прописать свою переменную. В свойстве текстовая переменная так же указать свою переменную. Одна проблема - русского языка до сих пор нет.

Romchik
05.09.2014, 18:36
RV9WFJ Спасибо)
Подскажите, можно так сделать - если лампочке присвоен TRUE то горит зеленым, а если FALSE то красным ?

kukla100
06.09.2014, 14:16
RV9WFJ Спасибо)
Подскажите, можно так сделать - если лампочке присвоен TRUE то горит зеленым, а если FALSE то красным ?

Похоже что нет.

приборист
06.09.2014, 22:16
RV9WFJ Спасибо)
Подскажите, можно так сделать - если лампочке присвоен TRUE то горит зеленым, а если FALSE то красным ?

Вставляете прямоугольник,
В свойствах выбирает - нормальное состояние - Красный
Состояние тревоги - Зеленый.
В переменные цвета - вставляете свою переменную.
В итоге - при переменной False - цвет прямоугольник красный, при состоянии переменной TRUE - цвет прямоугольника зеленый.

Вместо прямоугольника можно выбрать Скругленный прямоугольник, эллипс, полигон.
14266

kukla100
07.09.2014, 04:35
Такто оно можно, на зачем так если есть конкретно лампа? Даже у китайцев в проге при выборе битовой лампы, в свойствах можно настроить и цвет и оболочку. Изготовители КДС не могут также сделать?

capzap
07.09.2014, 07:58
Такто оно можно, на зачем так если есть конкретно лампа? Даже у китайцев в проге при выборе битовой лампы, в свойствах можно настроить и цвет и оболочку. Изготовители КДС не могут также сделать?

а пробовали поиском на форуме поискать, даже не смешно, как будто производители КДС появились позже Вас
http://www.owen.ru/forum/showthread.php?t=15999

kukla100
07.09.2014, 08:18
Да ни чего смешного нет. Просто я считаю, что если ты заложил в библиотеку лампу то пусть у неё в свойствах будет всё, и выбор цвета и стиль лампы. А использовать ещё и пул изображений... не слишком ли много наворотов?

capzap
07.09.2014, 08:40
Да ни чего смешного нет. Просто я считаю, что если ты заложил в библиотеку лампу то пусть у неё в свойствах будет всё, и выбор цвета и стиль лампы. А использовать ещё и пул изображений... не слишком ли много наворотов?

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

kukla100
07.09.2014, 08:50
Тогда вообще смысл закладывать в библиотку элемент "лампа"? Думаю просто разработчики не подумали над этим. В кофигураторе СП200 почему то предусмотрели?

capzap
07.09.2014, 09:16
Элемент лампа используется как отображение рисунков на два состояния, если использовать рисунки не требуется используются фигуры, ввиде прямоугольников, эллипсов, т.к.как это примитивные фигуры они лежат в своей группе, сложные элементы в своей группе, как раз таки разработчики подумали, чтоб "каши" не получилось. Взять тот же вейнтек, открывая лампу есть разделение либо это фигура, либо изображение.
И кто сказал что СП200 это идеал в визуализации пром.автоматики, для меня это направление вообще не авторитетно

ЗЫ добавил видео
Цвета у ламп точно можно менять, при желании можно заменить ( или добавить свои в xml-ку ) картинки.

RomanDnepr
09.09.2014, 13:52
Добрый день!
Можно ли изменить внешний вид встроенной клавиатуры? Уж очень мелкие надписи на кнопках.

Или может где-то есть пример реализации собственной клавиатуры? Поиском не нашёл.
Знаю что можно создать визуализацию типа "клавиатура",
но не понятно как и какие параметры ей передавать.

RV9WFJ
09.09.2014, 14:03
Создать свою можно, пример раньше был в папке с программой. Но без поллитры там делать нечего.

RomanDnepr
09.09.2014, 16:23
Спасибо за наводку.
Действительно лежит в папке с программой библиотека VisuDialogs.library,
которая содержит все диалоги и открывается как обычный проект.

Как я сделал с цифровой клавиатурой (может кому пригодится):
Скопировал из библиотеки VisuDialogs.library визуализацию Numpad в свой проект
Переименовал её (например Numpad2)
Изменил внешний вид
Важно! Для кнопок "ОК" и "Esc" - в свойстве OnMouseClick выставить правильное имя закрываемого диалога (Numpad2)
В VisualizatiоnManager изменил параметр "Числовая клавиатура" на Numpad2
Всё!

По ходу дела обнаружен такой глюк.
Если в CS включен русский интерфейс - то при настройке действия CloseDialog список результатов
диалога отображается на русском - "Нет, Отмена, Да и т.д." . При выборе любого такого результата,
кроме "ОК", компилятор выдает ошибку. А для кнопки "Esc" нужен результат "Нет" !
Пришлось переходить на английский интерфейс - там всё нормально.

Deoxes
15.09.2014, 13:07
Имя: Owen SPK1xx
Производитель: Owen
Группы: ПЛК
Тип: 4096
ID: 1628 0070
Версия: 3.5.4.20
Номер модели: 021
Описание: Owen SPK1xx
Ошибка при загрузке елемента Trace на СПК107 http://imhocloud.com/image/5Q5
Сделал всё как и тут
http://www.owen.ru/forum/showthread.php?t=15530 , F.A.Q. - Вопросы и ответы, Настройка Trace, делал всё по видео.

Ответ:
На ранних прошивках поддержка Trace была не доступна, нужно обновить прошивку до версии 3.939 + использовать таргет файл версии 3.5.4.20.
Необходимое ПО и инструкции вы можете скачать по данной ссылке https://yadi.sk/d/vYR5__XRZFtNN.

Кодесис я обновил а вот как обновить прошивку до версии 3.939, ето прошивка самой панели? В инструкции не нашёл ответа

Мурат Ахриев
16.09.2014, 09:28
3.939 это версия прошивки СПК. Прошивку можно обновить с USB флешки. Подробности тут http://www.owen.ru/forum/showthread.php?t=16792

Deoxes
24.09.2014, 13:14
Можно ли изменять в ручную через СПК 107 длину (время) елемента визуализации Trace?

Александр Приходько
25.09.2014, 23:54
Можно ли изменять в ручную через СПК 107 длину (время) елемента визуализации Trace?
Не уверен, но вроде как нельзя.
Глупый вопрос: Зачем?

RV9WFJ
30.09.2014, 11:51
180MHz маловато для веб :-) У меня на 600 MHz и то подтупляет WEB визуализация. Правда там еще свой экран есть и связь с СПК через 3G модем. Я период обновления для WEB ставил 1 сек. Но в моем случае это объяснялось просто - быстрее просто 3G не работает (там только ping 0,7 сек бывает). Картинки я лично не использовал так как это излишние грабли - в моем случае ненужные.

RV9WFJ
30.09.2014, 12:39
Попробуйте, для эксперимента, картинки из WEB убрать, оставить только вектор. Может помочь. Такая проблема на СПК была, думаю и у ПЛК3хх она может быть. Правда там все в старую версию CS упиралось. Но у ПЛК3хх таргет то уже давно не обновлялся.

RV9WFJ
30.09.2014, 13:36
MainTask время цикла и приоритет - приоритет максимальный если многозадачность не используете, время цикла подбирается опытным путем (в онлане можно посмотреть сколько реально в среднем занимает цикл, это число умножаю на 5. Когда время очень критично то на 2, но тогда могут "чудеса" начаться)
Visu_Task время цикла и приоритет - время в 2 раза меньше времени обновления визуализации
SizeOfMemoryVisu
SizeofPaintbuffer
Эти параметры я не трогал, но второй напрямую связан с работоспособностью если вы картинки используете. Я их не использую, потому не трогаю.

Фреймы использую ОЧЕНЬ активно, тормозов от них не заметил. Без фреймов уже вообще жизнь не представляю :-)

Александр_Остриков
17.10.2014, 13:21
Здравствуйте, уважаемые форумчане.

Прошу вашего совета. Задача следующая: есть несколько массивов данных, например
Mass1:ARRAY [1..10]OF BYTE:=1,2,3,4,5,6,7,8,9,10; (*номер шага*)
Mass2:ARRAY [1..10]OF REAL; (*уставка температуры*)
Mass3:ARRAY [1..10]OF WORD; (*время перехода*)

Хочу сделать экран визуализации в котором будут три переменные Nomer, Ustavka, Vremya.
Первый вопрос: Как увязать переменную Nomer с массивом Mass1 (номер шага) так чтобы при изменении на экране СПК, значения переменной Nomer от 1 до 10 получать значения от Mass1[1] до Mass1[10]?
Второй вопрос: Как увязать значения двух других массивов со значениями первого массива. Например. Сейчас переменная Ustavka имеет значение 1, то есть выбран Mass1[1], и соответственно переменная Ustavka будет иметь значение Mass2[1], а переменная Vremya будет Mass3[1]. И как сделать так, чтобы, выбирая шаг можно было посмотреть и изменить текущие значения массивов. То есть изменяя переменную Nomer я мог бы заносить значения в массивы Mass2 и Mass3 через переменные Ustavka и Vremya.

RV9WFJ
21.10.2014, 12:05
Вы велосипед с квадратными колесами изобретаете:

Первый вопрос: Как увязать переменную Nomer с массивом Mass1 (номер шага) так чтобы при изменении на экране СПК, значения переменной Nomer от 1 до 10 получать значения от Mass1[1] до Mass1[10]?
Заведите просто переменную Nomer: INT или BYTE и ее подавайте как индекс массивам Mass2, Mass3. В том числе этот индекс надо и в визуализации настроек массивам присваивать. Тогда не понадобятся лишние переменные Ustavka и Vremya.

Александр_Остриков
21.10.2014, 16:39
RV9WFJ, Спасибо.
Я до этого уже додумался), но вот как задавать массив в визуализации?

Переменные:
Var
Program:WORD; (*Номер программы*)
Step:WORD; (*Номер шага*)
i:WORD; (*Сумма программы и шага*)
Set_point: ARRAY [1..10]OF WORD; (*Массив уставок*)
Set_win:WORD; (*Переменная для визуализации выбранной в данный момент части массива*)
End_Var

Программа:
1 i:=(Program*10)/10+Step; (*Строка задающая значение суммы программы и шага*)
2 Set_win:=Set_point[i];

Вот тут и загвоздка. Эта строка задает значение кнопки в визуализации равным значению выбранного массива, но при этом если я этой кнопке задам функцию записи значения, то значение будет записываться не в необходимый массив Set_point[i], а в переменную Set_win, которая в следующий цикл программы (10мс) измениться обратно на то значение которому равно Set_point[i]. Если в визуализации я задам запись в другую переменную, например Set_point[i],то при компиляции программа будет ругаться, что переменная не определена.

GoodLuck
27.10.2014, 10:48
Добрый день! У меня возникли проблемы с элементом гистограмма. Допустим, я вывожу массив из 6 значений [0, 0, 0, 70, 70, 0]. На гистограмме все отображается верно.
Затем меняю массив на значения [70, 70, 0, 0, 0, 0], но картинка на гистограмме не меняется. Меняется она только после того, как переключиться на другую визуализацию, а потом вернуться обратно.

Что делать? Пользователь ведь не будет каждый раз переключать окна.

RV9WFJ
27.10.2014, 11:03
RV9WFJ, Спасибо.
Я до этого уже додумался), но вот как задавать массив в визуализации?

1 i:=(Program*10)/10+Step; (*Строка задающая значение суммы программы и шага*)
2 Set_win:=Set_point[i];

Вот тут и загвоздка. Эта строка задает значение кнопки в визуализации равным значению выбранного массива, но при этом если я этой кнопке задам функцию записи значения, то значение будет записываться не в необходимый массив Set_point[i], а в переменную Set_win, которая в следующий цикл программы (10мс) измениться обратно на то значение которому равно Set_point[i]. Если в визуализации я задам запись в другую переменную, например Set_point[i],то при компиляции программа будет ругаться, что переменная не определена.
Еще раз о старом, зачем вам Set_win, почему нельзя сразу писать в Set_point[i] прямо в визуализации?

Asuprok
30.10.2014, 20:27
Добрый день. Подскажите, пожалуйста:
1. Можно ли менять свойства компонента Trace в программе ПЛК? Задача следующая: на трассировку выводятся 6 переменных. Необходимо по нажатию кнопок делать определенные переменные невидимыми.
2. Как менять минимум и максимум по оси Y из ПЛК.
3. По оси Х можно выводить текущее время, а не время от начала запуска?

Эдуард_Н
05.11.2014, 16:56
Подскажите, как в СПК вывести на экран дату и время с возможностью корректировки?

GoodLuck
05.11.2014, 21:13
Посмотрите здесь: http://www.owen.ru/forum/showthread.php?t=15530
в разделе Примеры программ/системное время

Эдуард_Н
06.11.2014, 04:46
Посмотрите здесь: http://www.owen.ru/forum/showthread.php?t=15530
в разделе Примеры программ/системное время

Уж больно сложно. Нельзяли какнибудь попроще или описание на библиотеку на русском?

жекон
07.11.2014, 04:02
А как соединить две строки WSTRING CONCAT не принимает, если сначала соединить в STRING, а потом перевести то получаются краказеблы на экране

Эдуард_Н
07.11.2014, 04:26
А как соединить две строки WSTRING CONCAT не принимает, если сначала соединить в STRING, а потом перевести то получаются краказеблы на экране

Наверно надо использовать WCONCAT, я так думаю:)

жекон
07.11.2014, 15:17
Наверно надо использовать WCONCAT, я так думаю:)
А разве есть такой ФБ?

Эдуард_Н
07.11.2014, 15:45
Да, библиотека "Standard64".

жекон
07.11.2014, 15:48
Нашел спасибо!

Эдуард_Н
14.11.2014, 10:51
При проверке баланса, в самой программе (в POU, в алгоритме) ответное сообщение (на русском) отображаеться правильно, а на странице визуализации кракозябры, ПОМОГИТЕ!!!

RV9WFJ
14.11.2014, 13:37
Эдуард_Н вы как троль, в каждой ветке со своей проблемой. Вам же уже ответили в соседней ветке что делать... делайте.

Эдуард_Н
14.11.2014, 14:20
Меня попросили из той ветке, я и переехал. А то, что мне советовали не срабатывает. статичный текст на русском нормально отображаеться, а принятый нет.

kukla100
15.11.2014, 11:19
В коде программы, переменной VisuElems.CURRENTVISU нужно присвоить строку с названием страницы визуализации.

Пример:



IF a = true THEN
VisuElems.CURRENTVISU:= 'namevisu';
END_IF


Где "а" - переменная типа bool.
'namevisu' - Имя страницы визуализации.

А как это будет выглядеть в CFC ? Полдня ломал голову, так и не понял.

capzap
15.11.2014, 11:41
обыкновенный move с EN

kukla100
15.11.2014, 12:18
Всё понял, получилось. И ещё вопрос, почему в настройка текста я меняю шрифт, а после загрузки проекта в СПК, на экране он не меняеться?

Александр Приходько
19.11.2014, 02:12
Всё понял, получилось. И ещё вопрос, почему в настройка текста я меняю шрифт, а после загрузки проекта в СПК, на экране он не меняеться?
Это недокументированная фича.
В новом релизе. Мы с шрифтами координально изменим картину.
В СПК будет ряд шрифтов, которые будут однозначно работать.
Они же будут прописаны в Target файлах.
Собственно CODESYS будет предлагать и использовать только те шрифты, которые будут прописаны в таргете.
Сейчас к сожалению танцы с бубном.
Пробуйте, проверяйте.


Релиз прошивки будет уже под SP6 в апреле-мае. Уже работаем над этой проблемой.

bulkan
20.11.2014, 15:18
Добрый день! Каким образом можно поменять размер шрифта элемента Текстовое поле? Пробовал изменить размер шрифта в редакторе стиле, но при сохранении стиля выдается сообщение об ошибке: не указан путь изображения элемента чекбокс и радиокнопка, где можно найти эти файлы?
Второй вопрос: интерфейс панели должен быть многоязыковым: Русский, Английский и Французский. По умолчанию в GlobalTextList Русский, создал Английский и Французский. Создал прямоугольник с функцией InputConfiguration/OnMouse/изменить язык и здесь затык языки только Английский и Французский. Как то можно добавить по умолчанию или в GlobalTextList нужно добавить еще Русский?
Третий вопрос в свойствах прямоугольник во вкладке цвета отображается только использовать градиент и установка градиента, а Colorvariables нет, в чем может быть дело?

bulkan
20.11.2014, 17:27
Как добавить изображения чекбокс и радиокнопок разобрался они в находятся в C:\Program Files (x86)\3S CODESYS\CODESYS\Projects\VisuStyleExample\Images\C heckboxChecked.svg.

RV9WFJ
22.11.2014, 09:07
Третий вопрос в свойствах прямоугольник во вкладке цвета отображается только использовать градиент и установка градиента, а Colorvariables нет, в чем может быть дело?Может со стилями перемудрили...

bulkan
24.11.2014, 08:34
С цветом разобрался, не был включен режим эксперт.

Andre9999
24.11.2014, 12:05
В чем может быть проблема, и как с этим бороться:

Прошиваю СПК107, создаю загрузочное приложение. Шрифты в элементах "метка" и "прямоугольник" отображаются русские.
Перегружаю контроллер - везде кракозябры.
Пробовал пару-тройку шрифтов - не помогает.

галочка в "использовать строки Unicode" уставновлена
кодовая страница в компе прописана 1251, как здесь: http://www.owen.ru/forum/showthread.php?t=16543&highlight=%EA%F0%E0%EA%EE%E7%FF%E1%F0%FB
версия прошивки 3,939
Codesys 3,5 SP5

edit:
дефект плавающий, хз, с чем связано

Эдуард_Н
28.11.2014, 11:56
Вопрос по вводу текста в элемент прямоугольник и т.д., что надо сделать что бы напечатать текст в две строчки? Сейчас спасает только набором и копирыванием из блокнота

kondrat
28.11.2014, 13:02
Нажимайте Ctrl+Enter и будет Вам счастье.

Эдуард_Н
28.11.2014, 13:43
Спасибо. Не знал, что так можно.

Эдуард_Н
28.11.2014, 16:27
Вызываю два диалога одной кнопкой на экран. Они конечно открываються, но на одном и том же месте ( один за другим, по середине). Как сделать так, что бы они открывались на разных местах по координатам Х,Y?

Эдуард_Н
28.11.2014, 18:27
Пришлось воспользоваться фреймом элемента.

приборист
28.11.2014, 22:50
Подскажите по такому вопросу:
Пытаюсь добавить на визуализацию Индикатор (Лампа), а вставляется Индикатор (0-100).
Причем неожиданно стало это происходить. Видимо с установкой CDS3.5 SP5 patch1.
Попробовал накатить патч 3 - тоже самое.
Удалил все, поставил сразу SP5 patch3 ничего не поменялось.

Ерунда какая то :confused:

Эдуард_Н
29.11.2014, 04:41
Надо лампу просто выделить одним нажатием на левую кнопку мыши, а потом ещё раз нажать ЛКМ в месте куда нужно лампу поставить. А вы наверное пытаетесь перетащить её.

приборист
29.11.2014, 16:16
Надо лампу просто выделить одним нажатием на левую кнопку мыши, а потом ещё раз нажать ЛКМ в месте куда нужно лампу поставить. А вы наверное пытаетесь перетащить её.

Точно, спасибо.
Раньше и не задумывался.

Serrk
30.11.2014, 21:04
Необходимо поместить картинку как фон в визуализации. Создал пул изображений - поместил её туда. в модуле (СПК 207) картинка исправно отображается, однако при подключении через роутер с компьютера и планшета фон с картинкой отсутствует. Перепробовал все доступные форматы картинки. Как это исправить?

Сема
16.12.2014, 11:25
Добрый день, у меня почему то динамический текст не получается, в кодесисе 3.5 СП4 я создал динамический текстлист, потом в свойствах динамического текста указал текст лист и вордовскую переменную, которая выдает число, это и есть ID, я все правильно сделал??

Когда запускаю режим работы СПК107, у меня белый квадратик, когда переключаю переменные, ничего не происходит??

как делать, что делать, куда ставить?? Какая должна быть переменная, неполное описание инструкции......

RV9WFJ
16.12.2014, 12:43
Вообще в вашем вложении все правильно указано и вполне полностью :-) Возможно вы что-то не так сделали? Пробуйте еще раз. Или проект выкладывайте в следующий раз.

Сема
16.12.2014, 14:03
Все, вопрос снят, разобрался, спасибо

Мурат Ахриев
17.12.2014, 14:53
Необходимо поместить картинку как фон в визуализации. Создал пул изображений - поместил её туда. в модуле (СПК 207) картинка исправно отображается, однако при подключении через роутер с компьютера и планшета фон с картинкой отсутствует. Перепробовал все доступные форматы картинки. Как это исправить?

Исправляется установкой нового таргет файла http://www.owen.ru/catalog/sreda_programmirovaniya_codesys_v3/35283604

RomAl
25.12.2014, 08:45
Просветите пожалуйста чем практически
отличается частота обновления в Тагет визуализации от
интервала в VISU_TASK?
Какую величину записать в частота обновления в Тагет визуализации?
До сих пор не задумывался и записывал одинаковые значания

александр 64
28.12.2014, 15:20
подскажите будет ли обновление визуализации очень бы хотелось такие же блоки как в сп 270 и загрузка своих картинок в спк 107 этого не нашел?

RV9WFJ
28.12.2014, 19:58
А что конкретно вы не можете сделать из того что есть в СП270? Загрузка картинок в CS есть.

KoT'86
28.12.2014, 23:53
Подскажите пожалуйста кто в курсе:
1. Для вывода русскоязычного текста нужно использовать WSTRING, т.е. в архив (с помощью archiverspk, в котором только typeSTRING) нельзя выводить русскоязычные слова?
2. Что нужно сделать, чтобы KeyPad стал с русскими буквами?

александр 64
29.12.2014, 05:54
картинки нашел где загружаются хотелось насосы клапана вентиляторы трубы с анимацией работы . помогите разобраться с переключением экранов в спк 107 прочитал про переменную VisuElems.CURRENTVISU не понятно если можно пример

RV9WFJ
29.12.2014, 07:57
Подскажите пожалуйста кто в курсе:
1. Для вывода русскоязычного текста нужно использовать WSTRING, т.е. в архив (с помощью archiverspk, в котором только typeSTRING) нельзя выводить русскоязычные слова?
Не путайте котлеты и мух. WSTRING- UTF8, STRING - ASCII, и там и там имеют место быть русские буквы.

2. Что нужно сделать, чтобы KeyPad стал с русскими буквами?Ждать релиз CS 3.5 SP6

RV9WFJ
29.12.2014, 08:01
картинки нашел где загружаются хотелось насосы клапана вентиляторы трубы с анимацией работы .Что мешает нарисовать гораздо лучше чем у китайцев в СП270.

помогите разобраться с переключением экранов в спк 107 прочитал про переменную VisuElems.CURRENTVISU не понятно если можно пример
IF bEvent THEN
VisuElems.CURRENTVISU:='Main';
END_IF
где bEvent - флаг события по которому надо переключить экран, Main имя экрана на который необходимо переключить. Можно еще триггер добавить на событие для полного счастья.

KoT'86
29.12.2014, 20:18
RV9WFJ, в руководстве по визуализации на кодесис 3 v1.1 написано:-"Для вывода строковых переменных модификатор %s (для вывода русскоязычного текста, следует использовать переменную типа WSTRING в коде программы. Инициализация данной переменной осуществляется при помощи двойных кавычек. Пример: Переменная типа WSTRING := “Текст для вывода”)". Если выводить русскими буквами сообщение в STRING (при поставленной галке "Использовать строки Unicode"), то получается абракадабра. Если я что-то неправильно понимаю, поясните пожалуйста!

RV9WFJ
29.12.2014, 20:42
Поясняю - при выводе на экран русских букв необходимо использовать только UTF8 т.е. WSTRING (так уж в CS сделано в силу поддержки многоязычности), но при записи в файл т.е. архив никто не мешает использовать ASCII т.е. можно использовать просто STRING. Как еще объяснить :-)

KoT'86
29.12.2014, 21:14
За разъяснение спасибо, но в моём случае боюсь это не поможет... Задача: создать список "заказчиков" с возможностью их добавления (естественно русскими буквами). Перед началом приготовления продукции необходимо выбрать из списка "заказчика" (или при его отсутствии добавить его), выбрать наименование продукции и её объём, по кнопке СТАРТ записать в архив все эти данные (короче типа 1С) ))) Так-что думаю пока не обойтись средствами, которые имеются на сегодняшний момент... Будем ждать SP6...

RV9WFJ
29.12.2014, 21:32
Делал я подобную вещь. Пока приходится латиницей набирать так как тупо нет русской клавиатуры. В последующем надеюсь достаточно будет просто скомпилировать под CS3.5 SP6 и все.

KoT'86
29.12.2014, 22:30
RV9WFJ, спасибо за помощь! Латиницей набирать наименование организации заказчика как-то тупо и не читаемо, уж лучше вообще отказаться от этой затеи и опустить эту графу в архиве.

RomAl
04.01.2015, 16:16
Иногда в Кодесис в журнале проскакивает предупреждение "Deriving touch support from operating system not supported Touchhend link will not be activ" компонет: CmpTargetVisu.
После таких сообщений панель может зависнуть и перестать работать.
Вообще панель по времени может и сутки работать, можно десятки раз переключать странички и всё хорошо, но потом вдруг при очередном касании экрана вся работа панели останавливается..
Что это за ситуация и почему она получается?
Сейчас VISU_TASK у меня в свободном выполнении, до этого было циклическое, ставил разные времена но "зависания" не пропадали.
PS. Нашёл библиотеку CmpTargetVisu 3.5.4.0 в VisuDialogs 3.5.5.0 но что ей не так?

RomAl
04.01.2015, 21:32
Ди ещё, после нажатия кнопки и перехода на другую страницу иногда "нажимается" кнопка уже на новой странице находящаяся на том же месте (это бывает если оператор двойным щелчком нажимает). Подскажите как избежать этого эффекта?

amn
05.01.2015, 15:03
1. Сделать кнопку на другом месте.
2. При переходе на экран блокировать нажатие кнопок на некоторое время.

KoT'86
05.01.2015, 18:10
Создал диалог, элементы в нём отображаются нормально, фон диалога отображается прозрачным. Не могу понять в чём дело? Чем отличается диалог от обычной визуализации?

RomAl
05.01.2015, 19:41
1. Сделать кнопку на другом месте.
2. При переходе на экран блокировать нажатие кнопок на некоторое время.

спасибо конечно за попытку помочь, но до 1. я и сам давно додумался, но располагать в шахматном порядке кнопки на страничках некрасиво, а вариант 2. конечно возможен, но не красив и трудоёмок (страниц и кнопок много)..
Кроме того заметил что если кнопку сильно нагрузить несколькими заданиями, она становится "капризной" и иногда
не выполняет заложенные функции- после касания нажимается, отпускается и ... перехода на другую страницу не происходит, при повторном касании всё прооходит штатно. Возможно конечно что это не аккуратные касания, при которых палец касается не только кнопки, но и области экрана рядом (экранчик у СПК107 мал, его использую для отладки программ для СПК110).
Кстати одну кнопку сделал из прямоугольника, для незаметного перехода на страничку настроек, так она вообще через раз срабатывает...
И ещё, убрал из программы так дорогой мне график, т.е. элемент Trace и сразу куда-то девались зависания панели, а жаль
столько времени потратил на эти графики..

capzap
06.01.2015, 08:51
Кроме того заметил что если кнопку сильно нагрузить несколькими заданиями, она становится "капризной" и иногда
не выполняет заложенные функции
может всё дело в цикле визуализации, если его увеличить, то успеют выполнится все скрипты

RomAl
06.01.2015, 11:41
может всё дело в цикле визуализации, если его увеличить, то успеют выполнится все скрипты

Сейчас визуализация у меня в "свободном выполнении", и это кажется мне оптимальным. А эффект не срабатывающей клавиши
наверно всё-таки из-за относительно маленьких (для СПК107) клавиш и случайного касания других частей экрана, а так же не одинаковой чувствительности разных частей экрана. Кроме того, был отключен курсор, может это и мистика, но с его включением этот эффект пропал.. какие-то рождественские сказки

KoT'86
06.01.2015, 18:35
RomAl, чтобы исключить нажатие других частей экрана пользуйся стилусом (карандаш и т.д.), экран резистивный :) . Делал проект с большой плотностью кнопок и окон, и часто уходил в соседнее окно... помучавшись, стал пользоваться тупой стороной карандаша - стало удобно!

amn
06.01.2015, 22:29
а вариант 2. конечно возможен, но не красив и трудоёмок (страниц и кнопок много)..
Кроме того заметил что если кнопку сильно нагрузить несколькими заданиями, она становится "капризной"

Можно не нагружать кнопки, а вставить 10 строк в начале блока, если еще не нашли более красивого решения :)

TON1(PT:=t#1s); (*задержка обработки нажатий кнопок на 1 секунду при смене экрана*)
IF num <> old_num THEN (*если номер экрана изменился*)
TON1(IN:=TRUE); (*включаем таймер*)
IF NOT TON1.Q THEN (*если время еще не вышло*)
RETURN; (*выходим из блока, все что ниже не будет выполняться*)
ELSE (*если время вышло*)
TON1.IN:=FALSE; (*отключаем таймер*)
old_num:=num; (*сохраняем номер текущего экрана*)
END_IF
END_IF
(*ниже должен быть код обработки экранов и нажатий кнопок*)

GoodLuck
14.01.2015, 11:22
Подскажите, пожалуйста, возможно ли отображать на панели анимированные картинки? Необходимо, создать изображение работающего насоса.

RV9WFJ
14.01.2015, 11:45
GIF анимированные кажется нельзя, но точно можно менять картинки. Соответственно просто создайте генератор с нужной частотой и по фронту меняйте картинку насоса.
У меня насосы вообще векторные и я просто меняю угол поворота "пропеллера": http://www.youtube.com/watch?v=C6rCrVPP4Mk 2 минута видео. На видео СПК 200МГц, поэтому подтупляет, а на 600 МГц все прекрасно.

GoodLuck
14.01.2015, 12:24
RV9WFJ, спасибо!

energvk
16.01.2015, 11:13
А есть ли возможность в визуализации сделать мигающую картинку? То есть, если есть сигнал, то изображение мигает с заданной периодичностью, если сигнала нет - то изображение скрывается?

Мурат Ахриев
16.01.2015, 17:02
Свойство видимости, есть в настройках большинства элементов. Переключение осуществляется bool переменной.

energvk
16.01.2015, 17:22
То есть можно сделать, чтобы при статусе переменной true, изображение мигало?

KoT'86
16.01.2015, 20:07
На выход Вашей переменной воткните BLINK, и его выход пропишите в State variables.Invisible. Да, на выходе BLINK сделайте инверсию, если надо чтобы при TRUE картинка отображалась...

energvk
16.01.2015, 20:57
Нет, конечно до варианта через антарктиду я додумался... но как бы странно, что штатными средствами это не предусмотрено

KoT'86
16.01.2015, 21:08
Да, я тоже хотел выводить аварии миганием элементов простым способом, но увы, разработчики не подумали...(((

RV9WFJ
16.01.2015, 21:37
Хватит отсутствие фантазии на разработчиков валить. Заведите один BLINK на весь проект и используйте его в формате bError AND BLINK.Q Это вам вместо галки "моргать" которая имхо только захламит и так обильные свойства примитивов.

energvk
16.01.2015, 23:09
Пожалуй не совсем соглашусь и фантазия тут не причем. Всё же если программная среда позиционируется как средство визуализации, то она должна содержать элементарную функциональность аналогичных программных продуктов для hmi. Понятно что написать несколько строчек, создать дополнительные переменные, предусмотреть разный период и т.д. это не проблема

Den_S
22.01.2015, 17:44
Здравствуйте,
Подскажите пожалуйста как вращать компоненты. Перечитал весь форум такого вопроса никто не задавал. Может это и очевидно, но я нигде не могу найти информацию как можно вращать компоненты. В хелпе нашел только как менять положение оси вращения, но нет информации как все же вращать компонент. В свойствах есть пункт "Вращение", но ничего не происходит при изменении параметров.
Заранее Спасибо!

RV9WFJ
23.01.2015, 14:28
в этот пункт необходимо подставить переменную с градусом на который необходимо вращать. Причем там два поля (сейсас с телефона, точно не помню) одно для вращения вокруг точки, второе как-то внутри себя (толком не разобрался). Попробуйте по очереди в каждое из них подставить переменную и повращать. Если не получится выложу скриншоты, у меня куча всего вращается на экране.

Den_S
24.01.2015, 21:20
Да нашел параметр "внутреннее вращение", спасибо! Но это вращение уже происходит во время выполнения программы, а вращать элемент в редакторе я так понимаю нельзя?

GoodLuck
24.01.2015, 22:47
Да нашел параметр "внутреннее вращение", спасибо! Но это вращение уже происходит во время выполнения программы, а вращать элемент в редакторе я так понимаю нельзя?

А для чего элемент в редакторе понадобилось вращать?

RV9WFJ
25.01.2015, 12:17
Бывает надо иногда, но сделать в редакторе невозможно кажется. Можно константу вбить, но повернется все равно только в исполнении.

Den_S
25.01.2015, 21:29
Да к сожалению вращается только в исполнителе. Ладно имеем что имеем, буду приспосабливаться. Спасибо ребята большое, что можно обратиться если что! Всем удачи!

Lyohin
26.01.2015, 10:33
По поводу шрифтов. В КДС в визуализации текст (строчка текста почти на всю ширину экрана) помещается в размер панели по ширине. После прошивки на СПК 110 текст почему-то не полностью помещается по ширине. Настройка размера окна выбрана правильно - 800х480. Специально расставил прямоугольники по четырем углам - они все помещаются на экран после прошивки. Т.е. получается вопрос с тестом или шрифтом. Что-то было подобное?

RV9WFJ
26.01.2015, 11:30
Там дело в том,что шрифт в CS и шрифт в панели отличаются. Этот косяк обещали в следующей прошивке исправить.

EFrol
26.01.2015, 12:38
А как пользоваться Trend'ом? Есть где вразумительное описание?

Lyohin
26.01.2015, 14:58
Возможно ли в СDS 3.5 сделать так, чтобы единица измерения переменной отображалась в самом индикаторе переменной (например, элемент "прямоугольник" в качестве индикатора аналогового значения), а не за его пределами прописывать текстом? Например 45 Гц, 55.5 oC. Если да, каким образом это реализовать?

Den_S
29.01.2015, 19:21
Смотрите "Содержание" раздел "Текст и язык в визуализации". Нажимаете "F1" в самой программе CoDeSys.

Andre9999
30.01.2015, 13:20
Не отображаются рисунки.

СПК107, прошивка 3.939, codesys 3,5 SP5

Задача - сделать подложку из рисунка и по событиям выводить/скрывать более мелкие элементы

пробовал использовать подложку - рисунок bmp, jpeg, png, размер 700х300 - в результате белый экран, и ничего.
при этом, в компиляторе все нормально отображается, компилится, грузится, показывает экран в codesys, а панель глючит.

попробовал использовать элемент "Изображение" и рисунки поменьше - результат тот же, появилась рамка и пара кнопок, но рисунок не отображается на панели.

Как с этим бороться? Что посоветуете?

Sepsis
31.01.2015, 08:45
CODESYS v3.5 SP5. Визуализация. Настройки "эксперт". Пытаюсь динамически изменять стиль линии (для имитации активного контура на мнемосхеме). В PLC_PRG объявил переменную типа "INT", в свойствах линии подвязал переменную к соответствующему атрибуту, запускаю программу в отладке, изменяю переменную в соответствии с допустимыми значениями (0 = полностью, 1 = пунктиром, 2 = точками ... и т.д. ) и... - ничего! Все безрезультатно.
Уважаемые эксперты, простите, если вопрос покажется слишком простым, но как изменять стиль линии динамически?

Andre9999
03.02.2015, 08:10
Задача была решена созданием нового пустого проекта и загрузки минимального количества необходимых картинок.
При этом, картинки все равно грузятся долго.



Не отображаются рисунки.

СПК107, прошивка 3.939, codesys 3,5 SP5

Задача - сделать подложку из рисунка и по событиям выводить/скрывать более мелкие элементы

пробовал использовать подложку - рисунок bmp, jpeg, png, размер 700х300 - в результате белый экран, и ничего.
при этом, в компиляторе все нормально отображается, компилится, грузится, показывает экран в codesys, а панель глючит.

попробовал использовать элемент "Изображение" и рисунки поменьше - результат тот же, появилась рамка и пара кнопок, но рисунок не отображается на панели.

Как с этим бороться? Что посоветуете?

Sepsis
06.02.2015, 17:07
CODESYS v3.5 SP5Уважаемые эксперты, простите, если вопрос покажется слишком простым, но как изменять стиль линии динамически?

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

RV9WFJ
07.02.2015, 06:55
Проверил, у меня тоже не работает. Я вообще линии стараюсь не использовать - они в WebVisu коряво отображаются.

Sepsis
07.02.2015, 07:38
Проверил, у меня тоже не работает. Я вообще линии стараюсь не использовать - они в WebVisu коряво отображаются.

Спасибо! Я уж начал было думать, что не могу с очевидной, на первый взгляд, операцией справиться.

Lyohin
09.02.2015, 15:22
Кто-то делал так: необходимо активировать/деактивировать элементы визуализации при изменении события другого элемента визуализации (например, при переключении переключателя в положение "Руч" кнопки "Пуск" / "Стоп" становятся активными)?

Sepsis
09.02.2015, 15:36
при переключении переключателя в положение "Руч" кнопки "Пуск" / "Стоп" становятся активными?
У объектов в атрибутах есть свойство "Невидимый". Просто привяжите к свойств этих объектов булеву переменную. Эту же переменную укажите у переключателя.

Getmanov
14.02.2015, 21:42
Не отображаются рисунки.

СПК107, прошивка 3.939, codesys 3,5 SP5

Как с этим бороться? Что посоветуете?

Была та же проблема, по совету ув. приборист, сменил стиль визуализации на 3.5.3.0(Менеджер визуализации=>Установки=>Выбранный стиль), чем и решил проблему.

александр 64
19.02.2015, 15:28
подскажите как можно сделать русский текст на спк110 в программе по русски а на панели ероглифы

Мурат Ахриев
19.02.2015, 16:50
подскажите как можно сделать русский текст на спк110 в программе по русски а на панели ероглифы


В настройках менеджера визуализации нужно установить галочку "...Unicode"

александр 64
19.02.2015, 16:54
спасибо попробую

Oleg_gelo
20.02.2015, 17:09
Добрый день. Извините, не могу сам найти. СПК207, v.3.942, Codesys 3.5 SP5 Patch3. Хочу скрывать на визуализации элементы управления, для администрирования. В менеджере визуализации сделал группу "Admin", пользователя "Admin" с паролем. На прямоугольнике, который необходимо скрыть, поставил права доступа для "Admin", для остальных невидимый.
Сделал прямоугольник для управления пользователями, OnMouseClick - Конфигурация - добавил Управление пользователями.
При запуске на СПК нажимаю прямоугольник управления пользователями, всплывает окно ввода, нет клавиатуры. Вопрос - как вызвать клавиатуру при нажатии на прямоугольник?
В WEB-визуализации экранная клавиатура всплывает.

Эдуард_Н
20.02.2015, 20:27
У меня с этими паролями вообще ни чего не получается. Хоть бы пример уже выложили. Там по проще никак нельзя?

RV9WFJ
21.02.2015, 06:44
Пример в вас уже есть тут:
C:\Program Files (x86)\3S CODESYS\CODESYS\Projects\Visu\Examples\SimpleWebvi suLogin.projectarchive
Куда уж проще то?

Эдуард_Н
21.02.2015, 07:32
Пример в вас уже есть тут:
C:\Program Files (x86)\3S CODESYS\CODESYS\Projects\Visu\Examples\SimpleWebvi suLogin.projectarchive
Куда уж проще то?

Ваах!! Откуда знаешь в мой компутэр? Какой там пароль по умолчанию стоит? Изменить пробую, ни какого результата. Не получается у меня авторизоваться в этом примере. Или получается как описано выше:

Всё делаю как в инструкции, создал нового пользователя в группе Админ, дал ему короткое имя и пароль, сделал функцию на переход в другую визуализацию после авторизации, НО у меня не получается авторизоваться, не пойму что сделать нужно, пишу логин и пароль, жму ОК и ничего не происходит

Эдуард_Н
21.02.2015, 09:38
Вроде всё получилось, даже немного не так как в примере.

Эдуард_Н
21.02.2015, 14:22
Добрый день. Извините, не могу сам найти. СПК207, v.3.942, Codesys 3.5 SP5 Patch3. Хочу скрывать на визуализации элементы управления, для администрирования. В менеджере визуализации сделал группу "Admin", пользователя "Admin" с паролем. На прямоугольнике, который необходимо скрыть, поставил права доступа для "Admin", для остальных невидимый.
Сделал прямоугольник для управления пользователями, OnMouseClick - Конфигурация - добавил Управление пользователями.
При запуске на СПК нажимаю прямоугольник управления пользователями, всплывает окно ввода, нет клавиатуры. Вопрос - как вызвать клавиатуру при нажатии на прямоугольник?
В WEB-визуализации экранная клавиатура всплывает.

Удалось вернуть клавиатуру?

Philosof
23.02.2015, 22:18
Помогите добрые люди! Задача: в визуализации прямоугольник с float переменной, по клику происходит ввод значения с numpad. Необходимо после ввода значения (нажатия кнопки ok) инициировать в программе запись переменной по модбас. Как отследить событие ввод значения ? Подозреваю задача тривиально но ума не хватает :-)

Oleg_gelo
24.02.2015, 10:58
Помогите добрые люди! Задача: в визуализации прямоугольник с float переменной, по клику происходит ввод значения с numpad. Необходимо после ввода значения (нажатия кнопки ok) инициировать в программе запись переменной по модбас. Как отследить событие ввод значения ? Подозреваю задача тривиально но ума не хватает :-)

Может я не совсем понял задачу, но - делаем соединение с устройством, одни переменные читаем, другие пишем. Контроллер циклично производит данную операцию. В принципе есть переменные управления модулем связи. Для Modbus TSP Slave переменная Modbus_TCP_Slave.xConfirmError держим в TRUE - блок будет остановлен.

Oleg_gelo
24.02.2015, 11:23
Удалось вернуть клавиатуру?

Незнаю, "что то лыжи не едут".
Ещё раз повторюсь. Хочу скрывать на визуализации элементы управления, для администрирования. В менеджере визуализации сделал группу "Admin", пользователя "Admin" с паролем. На прямоугольнике, который необходимо скрыть, поставил права доступа для "Admin", для остальных невидимый. Сделал прямоугольник для управления пользователями, OnMouseClick - Конфигурация - добавил Управление пользователями.
При запуске на СПК нажимаю прямоугольник управления пользователями, всплывает окно ввода, нет клавиатуры. Вопрос - как вызвать клавиатуру при нажатии на прямоугольник?
В WEB-визуализации экранная клавиатура всплывает.

Philosof
24.02.2015, 15:17
Oleg_gelo
Переменные для записи пишутся не в цикле а по команде (потому что редко и цикл гонять накладно). Чтобы инициировать запись надо отследить событие (ввод нового значения). Например нажатие на кнопку OK на цифровой клавиатуре. Ума не приложу как это из программы отследить или прям в визуализации реализовать установку бита.

Изюм
24.02.2015, 16:55
Здравствуйте
Можно ли в Trace сделать линию графика потолще?

Спасибо

Эдуард_Н
25.02.2015, 03:55
Незнаю, "что то лыжи не едут".
Ещё раз повторюсь. Хочу скрывать на визуализации элементы управления, для администрирования. В менеджере визуализации сделал группу "Admin", пользователя "Admin" с паролем. На прямоугольнике, который необходимо скрыть, поставил права доступа для "Admin", для остальных невидимый. Сделал прямоугольник для управления пользователями, OnMouseClick - Конфигурация - добавил Управление пользователями.
При запуске на СПК нажимаю прямоугольник управления пользователями, всплывает окно ввода, нет клавиатуры. Вопрос - как вызвать клавиатуру при нажатии на прямоугольник?
В WEB-визуализации экранная клавиатура всплывает.

Вот и я не могу отследить к чему она привязана, она то появится то нет. Если грешить на стили или на выбранное какое ни будь устройство то нет, при вводе номера телефона она есть.

Oleg_gelo
25.02.2015, 09:49
Вот и я не могу отследить к чему она привязана, она то появится то нет. Если грешить на стили или на выбранное какое ни будь устройство то нет, при вводе номера телефона она есть.

Нашёл. В таргет-визуализации в поле "Ввод текста" по умолчанию выставить "Сенсорный экран". На экране СПК появляется клавиатура при вводе текста.

Oleg_gelo
25.02.2015, 10:25
Переменные для записи пишутся не в цикле а по команде (потому что редко и цикл гонять накладно).

Получилось, если я правильно понял задачу. У меня на столе СПК270 и ПЛК110. ПЛК по одному каналу принимает WORD, по второму выдаёт WORD+100. Когда в объявлении канала Modbus TCP Slave ставишь триггер не CYCLIC, в соотнесении входов/выходов появляется переменная BOOL для проведения записи. Соотносим её на программу - и вроде работает.

Philosof
25.02.2015, 11:36
Получилось, если я правильно понял задачу. У меня на столе СПК270 и ПЛК110. ПЛК по одному каналу принимает WORD, по второму выдаёт WORD+100. Когда в объявлении канала Modbus TCP Slave ставишь триггер не CYCLIC, в соотнесении входов/выходов появляется переменная BOOL для проведения записи. Соотносим её на программу - и вроде работает.

Спасибо что прониклись вопросом. Все правильно вы поняли за исключением того что вместо кнопки "ввод числа" клик по окошку со значением а вместо кнопки "команда запись" факт нажатия на кнопку "ок" на Numpad (как последнее реализовать непонятно).

Oleg_gelo
25.02.2015, 12:05
Все правильно вы поняли за исключением того что вместо кнопки "ввод числа" клик по окошку со значением а вместо кнопки "команда запись" факт нажатия на кнопку "ок" на Numpad (как последнее реализовать непонятно).

Как именно сделать по кнопке "ок" я не знаю, но можно легко отследить факт изменение переменной и выдать BOOL.

Philosof
25.02.2015, 12:23
Как именно сделать по кнопке "ок" я не знаю, но можно легко отследить факт изменение переменной и выдать BOOL.

"Отследить изменение" имеется ввиду сравнение переменных по отдельности? Или есть какой-то универсальный способ? Какая версия CDS у вас?

Oleg_gelo
25.02.2015, 14:22
"Отследить изменение" имеется ввиду сравнение переменных по отдельности? Или есть какой-то универсальный способ? Какая версия CDS у вас?

СПК207, v.3.942, Codesys 3.5 SP5 Patch3. Во вложенном файле изменил

Philosof
25.02.2015, 17:31
СПК207, v.3.942, Codesys 3.5 SP5 Patch3. Во вложенном файле изменил

Спасибо. Идея понятна но при большом количестве переменных заморочено получится. Реализовал через OnDialogCloused, не кноgка "ок" но работает. Жаль нет всеобъемлющей информации по CDS 3.5 пусть и на буржуйском.

Andrew_Stranger
05.03.2015, 16:29
Подскажите, как отобразить в визуализации переменную time в удобоваримом виде, допустим 12:12:12?

tPorte
06.03.2015, 12:17
Подскажите пожалуйста, в СПК 1XX и СПК 2XX серии уже реализованы тренды или еще нет?

RV9WFJ
06.03.2015, 12:26
Тренды да, а их сохранение еще нет. Но оно уже появилось в CS SP6, т.е. можно надеяться что в следующих прошивках СПК сохранение трендов будет.

Эдуард_Н
07.03.2015, 15:24
Хотелось бы узнать как в прямоугольнике управлять не только заливкой, но и прозрачность этой заливки.

RV9WFJ
07.03.2015, 17:56
Прозорачность заработала только в SP6, если не ошибаюсь. Соответственно в цвет записываете цвет в формате RGBA и ставите CS 3.5 SP6

Эдуард_Н
07.03.2015, 19:20
Прозорачность заработала только в SP6, если не ошибаюсь. Соответственно в цвет записываете цвет в формате RGBA и ставите CS 3.5 SP6

У меня как раз CS 3.5 SP6, про остальное не понял. Можно по подробнее?

RV9WFJ
08.03.2015, 07:00
Цвет у меня собирается вот такой функцией


FUNCTION Color : DWORD
VAR_INPUT
byR: BYTE:=0;
byG: BYTE:=0;
byB: BYTE:=0;
byA: BYTE:=255;
END_VAR
VAR
END_VAR
Color:= SHL(BYTE_TO_DWORD(byA),24) + SHL(BYTE_TO_DWORD(byR),16) + SHL(BYTE_TO_DWORD(byG),8) + BYTE_TO_DWORD(byB);

и далее вставляете переменную с цветом, например сюда:
17029
byA - Это нужная вам прозрачность 0..255, только не забывайте про оставшиеся byR, byG и byB это цвет в виде стандартного RGB.

Эдуард_Н
08.03.2015, 11:01
К виду 00:00:00 можно придти разобрав тип TIME на составляющие DWORD. Затем составляющие выводить на визуализацию по отдельности.

Во вложении Export файл функционального блока, который разбивает тип TIME на отдельные составляющие.

Как этот файл открыть в КДС3?

Евгений Кислов
10.03.2015, 08:26
Как этот файл открыть в КДС3?

Открыть проект, в который нужно импортировать файл, на Панели устройств выделить необходимое приложение, после этого во вкладке Проект выбрать команду Импорт и указать путь к файлу.

Эдуард_Н
10.03.2015, 11:44
Спасибо, чего я раньше не сообразил?

Фаниль
16.03.2015, 18:26
Добрый вечер!
В Сodesys 3.5 SP4 Patch 4 хочу сделать доступ к окну визуализации через ввод пользователя и пароля. Пишу такой код:

IF VisuElems.CurrentUserName='Admin' THEN
VisuElems.g_VisuManager.SetMainVisu(pClientData, 'Visualization4');

END_IF

Но при компиляции мне выдает ошибку:

[ERROR] Без имени7: PLC_PRG_1 [Device: Plc Logic: Application](Строка 1, Столбец 1 (Реализ.)): C0066: Невозможно сравнить тип 'WSTRING' с типом 'STRING(INT#5)'
Компиляция завершена -- 1 ошибок, 4 предупреждений


Понимаю, что VisuElems.CurrentUserName это 'WSTRING' а 'Admin' это 'STRING', но как решить проблему незнаю. Подскажите пожалуйста.

Sepsis
17.03.2015, 08:54
Фаниль, а в чем собственно проблема? Создайте переменную с типом WSTRING, присвойте ей значение 'Admin'. Далее в проверке условия сравнивайте с этой переменной, наподобие:
IF VisuElems.CurrentUserName=%VARNAME% ...

Sepsis
17.03.2015, 09:08
Да, кстати, чуть не забыл: обратите внимание, что при объявлении переменной типа WSTRING строку необходимо заключать в двойные кавычки.

Фаниль
17.03.2015, 11:12
Добрый день, Sepsis, пишу так как на коде внизу, но не совсем понимаю куда именно двойные кавычки ставить, подскажите пож-та:

FUNCTION PLC_PRG_1 : BOOL;
VAR_INPUT
pClientData: POINTER TO VisuElems.VisuStructClientData;
END_VAR
VAR
VARNAME: WSTRING;
END_VAR


VARNAME:='Admin';
IF VisuElems.CurrentUserName=VARNAME THEN
VisuElems.g_VisuManager.SetMainVisu(pClientData, 'Visualization4');
END_IF

При таком коде дает ошибку:
------ Компиляция : Приложение: Device.Application -------
типизировать код...
[ERROR] Без имени7: PLC_PRG_1 [Device: Plc Logic: Application](Строка 2, Столбец 1 (Реализ.)): C0032: Невозможно конвертировать тип 'STRING(INT#5)' в тип 'WSTRING'
Компиляция завершена -- 1 ошибок, 4 предупреждений

Фаниль
17.03.2015, 11:15
Фаниль
Добрый день, Sepsis, пишу так как на коде внизу, но не совсем понимаю куда именно двойные кавычки ставить, подскажите пож-та:

FUNCTION PLC_PRG_1 : BOOL;
VAR_INPUT
pClientData: POINTER TO VisuElems.VisuStructClientData;
END_VAR
VAR
VARNAME: WSTRING;
END_VAR


VARNAME:='Admin';
IF VisuElems.CurrentUserName=VARNAME THEN
VisuElems.g_VisuManager.SetMainVisu(pClientData, 'Visualization4');
END_IF

При таком коде дает ошибку:
------ Компиляция : Приложение: Device.Application -------
типизировать код...
[ERROR] Без имени7: PLC_PRG_1 [Device: Plc Logic: Application](Строка 2, Столбец 1 (Реализ.)): C0032: Невозможно конвертировать тип 'STRING(INT#5)' в тип 'WSTRING'
Компиляция завершена -- 1 ошибок, 4 предупреждений

RV9WFJ
17.03.2015, 11:39
VARNAME:=''Admin";

Фаниль
17.03.2015, 12:36
Спасибо RV9WFJ!!! Ошибка пропала, но, есть проблема: добавил кнопку в проекте, в событии OnMouseClick/ Управление пользователями/ Войти.
Запускаю эмуляцию, жму кнопку, ввожу пользователя и пароль, но на окно 'Visualization4' перехода не происходит. В чем м.б. проблема? подскажите пож-та!

RV9WFJ
17.03.2015, 13:02
OnMouseDown вызываете диалог ввода пароля, а в OnDialogClosed вызываете PLC_PRG_1(pClientData);

Фаниль
17.03.2015, 13:56
Спасибо RV9WFJ!!! Переход на другую визуализацию происходит, но мне еще надо потом выйти из этой визуализации на главную. Я на второй визуализации добавил кнопку выход, в событии OnMouseClick выбрал изменить отображаемую визуализацию, а в событии OnMouseDown выбрал Logout. В итоге при возврате на главную страницу, я хочу вновь переййти со вводом пароля во вторую визуализацию, но при нажатии на кнопку никакой реакции. Что я делаю не так? Подскажите пож-та.

Lendl
27.03.2015, 15:43
Коллеги, есть у кого-нибудь готовый пример текстовой клавиатуры с русскими буквами? Спасибо за помошь.

Владимир Бондарь
30.03.2015, 18:08
Точно, спасибо.
Раньше и не задумывался.

А чём разница??

RV9WFJ
30.03.2015, 18:27
Спасибо RV9WFJ!!! Переход на другую визуализацию происходит, но мне еще надо потом выйти из этой визуализации на главную. Я на второй визуализации добавил кнопку выход, в событии OnMouseClick выбрал изменить отображаемую визуализацию, а в событии OnMouseDown выбрал Logout. В итоге при возврате на главную страницу, я хочу вновь переййти со вводом пароля во вторую визуализацию, но при нажатии на кнопку никакой реакции. Что я делаю не так? Подскажите пож-та.
Что-то вы меня запутали... выкладывайте лучше пример или блок-схему чего вы хотите.

astroavenger12345
09.04.2015, 13:11
Здравствуйте! Подскажите, пожалуйста, где можно найти подробное описание на процедуру установки пароля на доступ к элементам визуализации, реализованным на СПК 107. Необходимо исключить несанкционированный доступ к элементам управления насосной станцией. Я пытался руководствоваться инструкцией "визуализация codesys 3 v1.1". При компиляции появляется ошибка "Тип переменной массива g_VUMUserGroupNames в конфигурации таблицы GenElemInst_56 отличается от текущего объявления переменной. Обновите переменную массива в конфигурации таблицы."

astroavenger12345
13.04.2015, 13:59
а может кто-нибудь выложить пример проекта, в котором реализован контроль доступа к элементам визуализации при помощи пароля. заранее благодарен.

astroavenger12345
13.04.2015, 17:02
а самое не понятное, что при попытке изменить установки среды по умолчанию со стандартных на профессиональные всё опять возвращается к стандартным настройкам. у меня установлена КДС v.3.5 sp5 patch 3. в чём может причина?

Евгений Кислов
14.04.2015, 10:14
1. Примера под рукой нет, но все довольно просто:

В Менеджере визуализации, во вкладке Управление пользователями нажать кнопку Создать управление пользователями по умолчанию:

17704

В появившихся вкладках Группы и Пользователи можно, соответственно, настроить логины, пароли и т.д.

Теперь у элементов визуализации добавилась новая настройка - Права доступа:

17705

После запуска проекта по умолчанию активным является пользователь None. Для того, чтобы переключаться между пользователями,
создадим кнопку и привяжем к ней действие Управление пользователями:

17706


2. Предположу, вы делаете следующее: в меню Опции во вкладке Свойства нажимаете кнопку Заданные наборы свойств и выбираете профессиональный режим настроек. Повторно нажимаете кнопку, и видите надпись "Стандартный режим", из чего делаете вывод, что настройки не применились. На самом деле, это просто предлагаемый выбор по умолчанию, а не указание текущего режима.

Профессиональный режим настроек в сущности представляет собой заданный набор галочек в этом меню. Если у вас набор галочек вот такой:

17707

то вы работаете в профессиональном режиме.

Andrew_Stranger
14.04.2015, 13:32
Озадачился, почему нельзя поставить пароль на переключение переменной?

Евгений Кислов
14.04.2015, 14:25
Вы имеете в виду, поставить пароль на элемент типа Переключатель? По той причине, что повесить на один элемент два действия (переключение переменной и вызов окна для ввода пароля), в принципе, можно, но работать будет только одно из них (ввод пароля). Ну и, собственно, у элементов типа Переключатель нет настроек InputConfiguration - т.е. надо делать через элемент Изображение.

Можно создать два переключателя, к одному привязать переменную, к другому - открытия окна ввода пароля, наложить их друг на друга и т.д.

astroavenger12345
14.04.2015, 14:50
Большое спасибо за разъяснения. Сейчас пытаюсь организовать работу с паролями. Но у меня попутный вопрос: когда я создаю в менеджере визуализации управление пользователями во вкладках управление пользователями /пользователи автоматически появляются пароли *****. Я меняю пароль но вижу *****. Или всё же пароль меняется, т.е. как в вопросе про профессиональный режим настроек?

Евгений Кислов
14.04.2015, 14:53
Да, независимо от числа символов вашего пароля, вы будете видеть *****. Обращу еще внимание, что регистр логина имеет значение - т.е. в визуализации надо будет вводить именно Admin, а не admin.

astroavenger12345
14.04.2015, 15:01
А сейчас откуда-то появилась ошибка "Тип переменной массива g_VUMUserGroupNames в конфигурации таблицы GenElemInst_56 отличается от текущего объявления переменной. Обновите переменную массива в конфигурации таблицы." А когда я щелкаю по ней ЛКМ, то появляется окно
17716

Евгений Кислов
14.04.2015, 15:04
А какие действия приводят к появлению этого окна?

приборист
14.04.2015, 15:07
А сейчас откуда-то появилась ошибка "Тип переменной массива g_VUMUserGroupNames в конфигурации таблицы GenElemInst_56 отличается от текущего объявления переменной. Обновите переменную массива в конфигурации таблицы." А когда я щелкаю по ней ЛКМ, то появляется окно
17716

Помогает:
Компиляция - очистить все.
Тоже иногда выскакивает эта ошибка.

SA104
15.04.2015, 06:18
Доброго времени суток.
Вопрос: Как переключать экраны визуализации,если управляющая программа реализована на CFC?

Евгений Кислов
15.04.2015, 07:51
Доброго времени суток.
Вопрос: Как переключать экраны визуализации,если управляющая программа реализована на CFC?

Например, так:

17720

Когда переменная LogicCondition принимает значение TRUE, происходит переключение на экран Visualization2.

Для использования переменной CurrentVisu должна быть установлена соответствующая галочка в Менеджере визуализации:

17721

SA104
15.04.2015, 16:31
Спасибо за помощь. А больше двух экранов?

Евгений Кислов
15.04.2015, 19:31
Как мне кажется, самый простой способ - увеличить количество блоков Move и логических переменных.

SA104
16.04.2015, 06:28
Почему-то у меня элемент Move с одним входом и выходом без всякого обозначения. А в описании-такой, как в вашем примере.
Как это можно поправить?

Евгений Кислов
16.04.2015, 07:29
Почему-то у меня элемент Move с одним входом и выходом без всякого обозначения. А в описании-такой, как в вашем примере.
Как это можно поправить?

Кликните на нем правой кнопкой мыши и выберите EN/EN0.

SA104
17.04.2015, 13:48
Век живи, век учись.. Спасибо, помогло.

дрю
17.04.2015, 19:25
:confused:День , добрый!. Подскажите может кто сталкивался с таким. СПК 107 Создал пул изображений , анимировал работу двух вентиляторов, на радости весь день потратил на всякие вставки, при эмуляции все обекты на мониторе отображаються коректно17783, я и не проверял на СПК. А под конец рабочего дня думай дай проверю, и в результате то что нарисовал с помощью инструментов все переноситься В СПК а картинки из ПУЛА отображаються только прямоугольничками по контуру 17784. Кроме того попробовал добавить в визуализацию картинки которые уже ранее добовлял и они работали, все баста только рамка, правда функции эти рамки выполняют - одна из них переключает страницы визуализации, а вот содержимое рамки увы только цвет фона и все

Эдуард_Н
17.04.2015, 19:33
Попробуйте изменить стиль визуализации.

дрю
17.04.2015, 19:51
:confused:Перепробовал все из этого списка 17786 ни чего не помогает, даже строка без стиля

GoodLuck
17.04.2015, 21:59
А сколько весят картинки?
Когда-то у меня была похожая ситуация. Две картинки были по 30 кБ и загружались через раз. После ужатия до 3 Кб все заработало нормально.

Еще, я смотрю, у вас есть прямоугольники с градиентной заливкой. Где-то на форуме писали, что градиентную заливку лучше не применять.

дрю
18.04.2015, 00:27
Сейчас *взвесил* каждый рисунок тянет в среднем кБ 50. Жаль СПК на работе осталось, провериь этот вариант сейчас нет возможности.

SA104
19.04.2015, 08:14
Еще вопрос к специалистам по визуализации: Через string переменную меняю текст в окне, как корректно отобразить кирилицу? Отображаются одни кракозябры.. Я понимаю, что что-то с кодировкой, но где ее переключить?

Евгений Кислов
19.04.2015, 11:30
Еще вопрос к специалистам по визуализации: Через string переменную меняю текст в окне, как корректно отобразить кирилицу? Отображаются одни кракозябры.. Я понимаю, что что-то с кодировкой, но где ее переключить?


Для вывода кириллицы используйте тип WSTRING. Обратите внимание, что в данном случае текст заключается в двойные кавычки:


wstr:WSTRING:="Кириллический текст";

SA104
19.04.2015, 13:00
Евгений, спасибо за оперативный ответ. Сэкономили мне кучу времени.. :)

Valentine
19.04.2015, 17:23
Здравствуйте!
Возможно ли в codesys для спк создать полноценный график отображения величин (примерно как в видеографическом регистраторе серии РМТ)?
Нужна возможность просматривать в графике архивные данные, проматывать и масштабировать график.
Если возможно, то есть примеры реализации?

Евгений Кислов
19.04.2015, 18:00
Здравствуйте!
Возможно ли в codesys для спк создать полноценный график отображения величин (примерно как в видеографическом регистраторе серии РМТ)?
Нужна возможность просматривать в графике архивные данные, проматывать и масштабировать график.
Если возможно, то есть примеры реализации?

В последних версиях CODESYS появился элемент Тренд, но он еще не поддерживается СПК на уровне прошивки. Выход прошивок с поддержкой трендов ожидается в конце лета.

d-view
19.04.2015, 18:45
Вставлю свои 5 копеек :)
Чтоб не привязывать переключение экранов к CURRENTVISU, но использовать эту переменную для входа в визуализацию под паролем сделал так:
CASE X OF
0: IF PASS=USR1_PASS OR PASS=USR2_PASS OR PASS=USR3_PASS THEN X:=10;
ELSE PASS:=0; VisuElems.CURRENTVISU:=''; END_IF;
10: VisuElems.CURRENTVISU:='VisuX'; X:=20;
20: VisuElems.CURRENTVISU:=''; PASS:=0; X:=0;
END_CASE;

А дальше можно переключать экраны как обычно, через Change Shown Visualization.


Например, так:

17720

Когда переменная LogicCondition принимает значение TRUE, происходит переключение на экран Visualization2.

Для использования переменной CurrentVisu должна быть установлена соответствующая галочка в Менеджере визуализации:

17721

AlexSt777
20.04.2015, 08:29
при загрузке спк110 - белый экран и в логе три строки подряд - image not found. В чем проблема?

Евгений Кислов
20.04.2015, 08:38
при загрузке спк110 - белый экран и в логе три строки подряд - image not found. В чем проблема?

Проблема, видимо, в том, что из контроллера пропала эта картинка:

17813

В какой момент стал появляться белый экран? После перепрошивки?

AlexSt777
20.04.2015, 08:43
эта картинка не пропала. а белый экран появляется после каждой перезагрузки проекта.

Евгений Кислов
20.04.2015, 08:47
эта картинка не пропала. а белый экран появляется после каждой перезагрузки проекта.

Можно тогда поподробнее - в какой момент начались такие проблемы?
В какой момент загрузки появляется этот экран, и в какой - пропадает?

AlexSt777
20.04.2015, 08:50
Проблема, видимо, в том, что из контроллера пропала эта картинка:

17813

В какой момент стал появляться белый экран? После перепрошивки?

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

Евгений Кислов
20.04.2015, 08:57
А в CODESYS эта картинка нормально отображается (на стартовом экране и в пуле изображений)? Вы пробовали ее перезаливать?

AlexSt777
20.04.2015, 09:04
А в CODESYS эта картинка нормально отображается (на стартовом экране и в пуле изображений)? Вы пробовали ее перезаливать?

не то, чтобы совсем нормально, - формат SVG, отображаются не все элементы картинки, но после первой заливки я ее видел на СПК. Перезаливал неоднократно и формат менял на png, - не помогло.

Евгений Кислов
20.04.2015, 09:07
Выложите, проект, пожалуйста (с картинкой в svg).

AlexSt777
20.04.2015, 09:13
А в CODESYS эта картинка нормально отображается (на стартовом экране и в пуле изображений)? Вы пробовали ее перезаливать?

не то, чтобы совсем нормально, - формат SVG, отображаются не все элементы картинки, но после первой заливки я ее видел на СПК. Перезаливал неоднократно и формат менял на png, - не помогло.

AlexSt777
20.04.2015, 09:29
Выложите, проект, пожалуйста (с картинкой в svg).

отправляю архив