Форум Zentec

Оборудование => Пользовательские терминалы и графические ПЛК => Z036 - программируемый графический контроллер. => Тема начата: mike от 26 апреля 2016, 20:28:51

Название: Дисплей
Отправлено: mike от 26 апреля 2016, 20:28:51
Предлагаю посмотреть маленький ролик, в котором видна основная идея создания экранов для 036.
Название: Re: Дисплей
Отправлено: mike от 26 апреля 2016, 20:37:55
В двух словах:
Создается дисплей - это набор экранов с различными методами переходов.
В одном дисплее может быть несколько экранов.
В одном шаблоне программ может быть несколько дисплеев.

Внутри дисплея находится иерархия экранов. Переходы между экранами отображаются связями со стрелками.
Связь программируется на выполнение какого-либо действия (нажатия кнопки, изменения переменной и т.п.)
Название: Re: Дисплей
Отправлено: mike от 26 апреля 2016, 20:52:58
Во вкладке "Дисплей" создается иерархия экранов по такому же принципу, как и создается сетевая иерархия.

Экраны можно документировать. Так же документировать можно всю иерархию дисплея.
Снапшот иерархии дисплея и скриншот каждого отдельного экрана производится автоматически методом перетягивания необходимой части в плагин текстового документа.
Название: Re: Дисплей
Отправлено: mike от 26 апреля 2016, 20:53:58
После создания дисплея он вытягивается на поляну как обычный макроблок.

Вопрос:
Правильной ли дорогой идем?
Название: Re: Дисплей
Отправлено: VoronovMaksim88 от 27 апреля 2016, 02:19:05
Думаю, да.
Название: Re: Дисплей
Отправлено: VoronovMaksim88 от 27 апреля 2016, 04:35:13
Мне кажется надо чтоб изначально с экрана не было никаких переходов. Если надо создать переход из экрана, то ПКМ по экрану, "добавить переход из экрана". Появляется переход (в виде точки на периметре прямоугольника экрана, как на видео). ПКМ по переходу, "свойства", теперь настраиваем условие перехода, например по кнопке "ок", далее цепляем этот переход к другому экрану.
В дальнейшем, надеюсь, будут готовые экраны. Например экран "меню", в нём несколько пунктов, каждому пункту будет соответствовать переход, останется только зацепить эти переходы.
Или, например, готовый экран "диалог". Если он создан, то из него автоматически есть минимум два выхода "ответ да" и "ответ нет".
Или экран с паролем, из него тоже два выхода : "пароль верен", "пароль неверен".
Если экран перенести на FBD-программу, то из блока этого крана должен быть выход типа bool показывающий активен экран или нет, остальные входы выходы зависят от типа экрана.
Готов по каждому типу готового экрана и по каждому типу перехода поговорить отдельно.
Название: Re: Дисплей
Отправлено: VoronovMaksim88 от 27 апреля 2016, 05:31:41
Цитата: mike от 26 апреля 2016, 20:37:55
В одном шаблоне программ может быть несколько дисплеев.

А при загрузке в панель выбираем какой из дисплеев загрузить ? Правильно? Например один дисплей для себя любимого, со всеми параметрами и настройками на период отладки, а второй дисплей для пользователя с одной единственной кнопкой "старт", и текстом "привет мир" !  :)
Название: Re: Дисплей
Отправлено: VoronovMaksim88 от 27 апреля 2016, 05:34:55
Цитата: mike от 26 апреля 2016, 20:52:58
Экраны можно документировать. Так же документировать можно всю иерархию дисплея.
Снапшот иерархии дисплея и скриншот каждого отдельного экрана производится автоматически методом перетягивания необходимой части в плагин текстового документа.

Низкий вам поклон, до самой земли. Кучу времени мне сэкономите.
Название: Re: Дисплей
Отправлено: VoronovMaksim88 от 27 апреля 2016, 05:39:41
Кстати, суди по скриншотам очень серьёзно доработан сам текстовый редактор.
Когда он будет доступен ?
Название: Re: Дисплей
Отправлено: mike от 27 апреля 2016, 07:09:09
Цитата: VoronovMaksim88 от 27 апреля 2016, 04:35:13
Мне кажется надо чтоб изначально с экрана не было никаких переходов. Если надо создать переход из экрана, то ПКМ по экрану, "добавить переход из экрана". Появляется переход (в виде точки на периметре прямоугольника экрана, как на видео). ПКМ по переходу, "свойства", теперь настраиваем условие перехода, например по кнопке "ок", далее цепляем этот переход к другому экрану.
В дальнейшем, надеюсь, будут готовые экраны. Например экран "меню", в нём несколько пунктов, каждому пункту будет соответствовать переход, останется только зацепить эти переходы.
Или, например, готовый экран "диалог". Если он создан, то из него автоматически есть минимум два выхода "ответ да" и "ответ нет".
Или экран с паролем, из него тоже два выхода : "пароль верен", "пароль неверен".
Если экран перенести на FBD-программу, то из блока этого крана должен быть выход типа bool показывающий активен экран или нет, остальные входы выходы зависят от типа экрана.
Готов по каждому типу готового экрана и по каждому типу перехода поговорить отдельно.
Шаблоны конечно же будут. По предложенному методу создания переходов задумался.
Название: Re: Дисплей
Отправлено: mike от 27 апреля 2016, 07:10:10
Цитата: VoronovMaksim88 от 27 апреля 2016, 05:31:41
Цитата: mike от 26 апреля 2016, 20:37:55
В одном шаблоне программ может быть несколько дисплеев.

А при загрузке в панель выбираем какой из дисплеев загрузить ? Правильно? Например один дисплей для себя любимого, со всеми параметрами и настройками на период отладки, а второй дисплей для пользователя с одной единственной кнопкой "старт", и текстом "привет мир" !  :)
Сейчас Артем присоединится и мы его помучаем на эту тему.
Название: Re: Дисплей
Отправлено: mike от 27 апреля 2016, 07:11:31
Цитата: VoronovMaksim88 от 27 апреля 2016, 05:39:41
Кстати, суди по скриншотам очень серьёзно доработан сам текстовый редактор.
Когда он будет доступен ?
В бета версии всегда свежайшие изменения. Да, текстовый плагин сейчас серьезно доработан.
Название: Re: Дисплей
Отправлено: VoronovMaksim88 от 27 апреля 2016, 07:23:51
У меня версия ZWB 109. Текстовый плагин (docament view plugin) там пока старый v1.1.0

Правильно ?
Название: Re: Дисплей
Отправлено: Max от 27 апреля 2016, 07:33:02
Цитата: VoronovMaksim88 от 27 апреля 2016, 04:35:13
Мне кажется надо чтоб изначально с экрана не было никаких переходов. Если надо создать переход из экрана, то ПКМ по экрану, "добавить переход из экрана". Появляется переход (в виде точки на периметре прямоугольника экрана, как на видео). ПКМ по переходу, "свойства", теперь настраиваем условие перехода, например по кнопке "ок", далее цепляем этот переход к другому экрану.
В дальнейшем, надеюсь, будут готовые экраны. Например экран "меню", в нём несколько пунктов, каждому пункту будет соответствовать переход, останется только зацепить эти переходы.
Или, например, готовый экран "диалог". Если он создан, то из него автоматически есть минимум два выхода "ответ да" и "ответ нет".
Или экран с паролем, из него тоже два выхода : "пароль верен", "пароль неверен".
Если экран перенести на FBD-программу, то из блока этого крана должен быть выход типа bool показывающий активен экран или нет, остальные входы выходы зависят от типа экрана.
Готов по каждому типу готового экрана и по каждому типу перехода поговорить отдельно.
Поддерживаю.
Один момент - стоит ли увлекаться разными шрифтами? Насколько корректно они потом будут отображаться в реальном дисплее неизвестно. Промышленная автоматизация и монохромные дисплеи - в них я думаю достаточно 1-2 оптимальных шрифтов.
Также нужна возможность управления любой надписью из FBD (инвертировать, показать/спрятать, и т.д.).
Название: Re: Дисплей
Отправлено: VoronovMaksim88 от 27 апреля 2016, 07:35:18
Цитата: Max от 27 апреля 2016, 07:33:02
Также нужна возможность управления любой надписью из FBD (инвертировать, показать/спрятать, и т.д.).

Да, это обязательно.
А шрифтов действительно много незачем. Но если все они будут работать, то пожалуйста.
Название: Re: Дисплей
Отправлено: Max от 27 апреля 2016, 09:23:44
Цитата: VoronovMaksim88 от 27 апреля 2016, 07:35:18
Цитата: Max от 27 апреля 2016, 07:33:02
Также нужна возможность управления любой надписью из FBD (инвертировать, показать/спрятать, и т.д.).

Да, это обязательно.
А шрифтов действительно много незачем. Но если все они будут работать, то пожалуйста.
Тут ведь еще какой момент может возникнуть.
Вот мы используем на некоторых объектах панели Weintek. Там при разработке дисплеев можно выбрать любой шрифт.
Обычно программист запрограммирует панель отладит запустит на объекте и забудет. Но у нас был один объект на котором мы все запрограммировали и запустили, но объект не экслпуатировался из-за отсутствия разрешения (это санаторий и они не могли получить лицензию). Соответственно у нас систему не приняли и не испытали в рабочих режимах (оборудование для грязе и водолечения). Через 3 года они получили лицензию и позвали нас запустить все в нормальном режиме. После запуска и пробной эксплуатации выяснили, что нужно поправить (буквально пару мелочей) в жк-панелях. Нашли исходники, НО... комп а котором их изначально программировали был на WinXP и он уже давно "умер". Новый комп был с Win10. Открыли программы на нем - а все шрифты "покривились"... где-то стали невалзить в экран и т.д. и т.п. После этого мы убили еще 1-2 дня на то чтобы привести все это в порядок. Если бы был выбор не из шрифтов системы а из заранее подготовленных наборов только для панели - этого бы не произошло.
Название: Re: Дисплей
Отправлено: serov от 27 апреля 2016, 09:34:25
так там же не обязательно шрифты из системы грузить. А русские шрифты weintek очень даже поддерживает, если конечно это не китайский weinwiew, там действительно ...опа.
Название: Re: Дисплей
Отправлено: Max от 27 апреля 2016, 10:03:25
Цитата: serov от 27 апреля 2016, 09:34:25
так там же не обязательно шрифты из системы грузить. А русские шрифты weintek очень даже поддерживает, если конечно это не китайский weinwiew, там действительно ...опа.
При открытии проги он говорил - нет такого шрифта - заменить. При замене шрифт делалася большим и не влазил в дисплей.
Название: Re: Дисплей
Отправлено: mike от 27 апреля 2016, 17:45:58
Со шрифтами ситуация следующая:
шрифт в панели хранится не шрифтом, а картинкой - bmp.
Если все будет так, как мы рассчитываем - шрифты должны быть стабильными.
Название: Re: Дисплей
Отправлено: serge197a от 27 апреля 2016, 21:25:25
на мой взгляд слишком мудро.
почему не пойти стандартным путем:
библиотека примитивов и функции к ним.
примерно как работа с ФБ блоком в zvb.
пишу примерно для десятка различных производителей
панелей и все придерживаются примерно одного алгоритма.
Название: Re: Дисплей
Отправлено: mike от 27 апреля 2016, 21:35:04
Посмотрим, как получится. Может быть будет удобнее. А может и нет.
Название: Re: Дисплей
Отправлено: VoronovMaksim88 от 28 апреля 2016, 04:39:18
Цитата: serge197a от 27 апреля 2016, 21:25:25
примерно как работа с ФБ блоком в zvb.
пишу примерно для десятка различных производителей
панелей и все придерживаются примерно одного алгоритма.

zWb.
А можно подробнее как вы себе это видите для монохромной панели без сенсорного дисплея ? Какие примитивы? Какие действия ? Как это связать с FBD ?
Такой подход уместен когда панель сенсорная и когда это только панель, т.е. чисто графический инструмент.
Но Z036 может быть полноценным контроллером (я надеюсь).
Я работал в VijeoDesigner с монохромными сенсорными панелями и прекрасно понимаю про что вы говорите. Но думаю тот подход, который сейчас выбран для Z036, будет удобнее.
С готовыми экранами весь пользовательский интерфейс можно будет накидать за 15 минут:

Главный экран-показывает необходимые значения переменных, температур, статусов.
Экран параметров - пользователю.
Экран настроек - сервиснику.
Экран журнал, чтоб записывать события и аварии.
Итого 4 экрана (из низ 3 готовых), 6 переходов, интерфейс под большую часть задач готов.
Название: Re: Дисплей
Отправлено: serge197a от 28 апреля 2016, 07:46:02
Можно и подробнее.
TPEditor для дельта,
конфигуратор ОР320,
примерно тоже локализованное для ИП320(овен)
Toolbox для ТР 070  сименс.
монохромные панели.
По топологии от сенсорных ничем не отличаются.
кроме функций кнопок, ни какой особой разницы.
Посмотрите, как замечательно программируются дисплеи в среде программирования:
U90 Ladder - Для юнитроникса,
в LOGO!Soft Comfort  начиная с моделей еще в конце 90-х.
Тот же овен лоджик для ПР200.
ZEN Support Software для реле Омрон.

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


Название: Re: Дисплей
Отправлено: mike от 28 апреля 2016, 08:43:26
Вы выпускаете из вида одну важную деталь:
В ZWB иерархия экранов создается для облегчения документирования структуры.
Название: Re: Дисплей
Отправлено: VoronovMaksim88 от 28 апреля 2016, 10:15:08
И не только для облегчения документирования, но и для наглядного представления!
У Owen logic кстати что-то подобное есть. Но готовых экранов там нет. И дисплей символьный, 2 строки. 
Название: Re: Дисплей
Отправлено: serge197a от 28 апреля 2016, 14:31:49
Я про панель элементов и их конфигурирование веду речь.
Если брать конфигуратор панели в единой среде программирования,
то посмотрите как это удобно сделано к примеру в ладере у юниктроникса.
А лучшее документирование на мой взгляд в лого соф комфорт у сименса.
и так же экраны прямо в программе редактируются.
Это мое чисто субъективное мнение как пользователя.
Не так много специалистов знакомых сразу со всем.
Во всех этих программах я работаю и высказываю мнение об удобстве.
Реализацию точно как у них я не предлагаю а только рекомендую обратить внимание.

вообще больше всего мне нравится билдер 8000 и билдер про ваентек.
попытки к примеру других китайских производителей
KHManager (для кинко)
SKWorkshop (для панелей Sk) и других
сделать тоже самое но по своему приводят только к замешательству пользователя и
лишней нагрузке на тех. поддержку.
по сути ничего глобально не меняя.

Название: Re: Дисплей
Отправлено: mike от 28 апреля 2016, 14:55:04
А мы тут все для того и собрались, что бы все обсудить.
Название: Re: Дисплей
Отправлено: serge197a от 28 апреля 2016, 15:19:13
ну так и я про тоже самое.
как удобнее и для пользователя и для разработчика.
Название: Re: Дисплей
Отправлено: serov от 22 сентября 2016, 23:55:37
Цитата: serge197a от 28 апреля 2016, 07:46:02
Тот же овен лоджик для ПР200.
Что что, а овен лоджик для ПР200 не тот пример явно. Намудрили так, что голову сломаешь. Один - два экрана сделаешь, куда ни шло. Ну три, пять. Но экранчик-то маленький, экранов мало не получается. Пытался я тут алгоритм перенести в ПР200. Экранов куча и всё, где-то не туда сослался, не на тот экран и вся логика поломалась, ни отладки дисплея, ни инструментов нормальных. Хотя чувствуется, что изначально прообразом была OP320 (MD204L). 
Название: Re: Дисплей
Отправлено: serov от 23 сентября 2016, 00:20:58
У сименса действительно неплохо сделано, туда-сюда экспортируется переносится, без всяких заморочек. Сделал ПЛК, нужна к примеру скада, отдал спецу файл с переменными и он уже на wincc проект делает, при этом он у тебя даже не спрашивает ни чего (ну или почти ни чего). Разделение труда задумано правильно. Примерно так же можно работать если использовать weintek - плк один пишет, визуализацию другой. Нельзя же спецом во всех областях быть. Отсюда пожелание, среды разработки желательно делать разными. Самый конечно же волшебный вариант, это когда проект один для всего, а хранится он на сетевом диске и его открывают несколько спецов, каждый свою часть. Один ПЛК программирует, второй визуализацию для панели пишет, а третий скаду делает. Хотя weintek попытались потеснить рынок скад (у них в панелях с ethernet-ом интерфейс доступен через web) но пока не научили хранить данные в доступном формате. Отчет можно сгенерировать и посмотреть, но не распечатать. У меня давно идея витает, сделать скаду что бы на панели крутилась. Так и продавать легче, а то за непонятные лицензии не очень-то хотят платить.
Название: Re: Дисплей
Отправлено: mike от 23 сентября 2016, 08:05:18
Цитата: serov от 23 сентября 2016, 00:20:58
У сименса действительно неплохо сделано, туда-сюда экспортируется переносится, без всяких заморочек. Сделал ПЛК, нужна к примеру скада, отдал спецу файл с переменными и он уже на wincc проект делает, при этом он у тебя даже не спрашивает ни чего (ну или почти ни чего). Разделение труда задумано правильно. Примерно так же можно работать если использовать weintek - плк один пишет, визуализацию другой. Нельзя же спецом во всех областях быть. Отсюда пожелание, среды разработки желательно делать разными. Самый конечно же волшебный вариант, это когда проект один для всего, а хранится он на сетевом диске и его открывают несколько спецов, каждый свою часть. Один ПЛК программирует, второй визуализацию для панели пишет, а третий скаду делает. Хотя weintek попытались потеснить рынок скад (у них в панелях с ethernet-ом интерфейс доступен через web) но пока не научили хранить данные в доступном формате. Отчет можно сгенерировать и посмотреть, но не распечатать. У меня давно идея витает, сделать скаду что бы на панели крутилась. Так и продавать легче, а то за непонятные лицензии не очень-то хотят платить.

У ЗВБ пока не реализован многопользовательский доступ, но это в близких планах.
А в целом изначальная идея ЗВБ и  была, что бы все части одного проекта находились в одном месте и одним набором инструментов редактировались