Softwareentwicklung Zworkbench (beta) - это отдельная ветка "нестабильной" сборки Zworkbench.
Эта сборка предназначена для ознакомления с самыми последними тенденциями и изменениями.
Мы очень тщательно тестируем эту сборку и она содержит минимально возможное количество ошибок.
Однако, использовать ее для повседневной работы не рекомендуется.
Файл веб инсталлятора для ОС Windows. Для Linux поддерживается только релизная ветка.
Потестировал Zworkbench. Сравниваю с zetFBD, она нравилась тем, что очень простая и при этом всё работало!! Ну и конечно же наличие симулятора это просто круто. Даже на Saia-Burgess за бешеные евро (среда стоит 5000евро), симулятора нет!!! По функционалу у шнайдера есть не плохая простая софтинка - Zeliosoft вроде бы называется, тоже минимум функционала+симулятор.
В Zworkbench не сразу понял логику, теперь проект может включать не одну программу, и не один контроллер - знакомо. Всё осталось доступно и понятно по старому функционалу, а вот по новому немного плаваю - в обозревателе проектов много новых возможностей - нужно где-то расписать про них. Поэтому пока я отдаю голос в пользу старой доброй zetFBD.
Цитата: serov от 28 апреля 2015, 05:22:58
Потестировал Zworkbench. Сравниваю с zetFBD, она нравилась тем, что очень простая и при этом всё работало!! Ну и конечно же наличие симулятора это просто круто. Даже на Saia-Burgess за бешеные евро (среда стоит 5000евро), симулятора нет!!! По функционалу у шнайдера есть не плохая простая софтинка - Zeliosoft вроде бы называется, тоже минимум функционала+симулятор.
В ZWB симулятор может исполняться в многоканальном режиме.
Цитата: serov от 28 апреля 2015, 05:22:58
В Zworkbench не сразу понял логику, теперь проект может включать не одну программу, и не один контроллер - знакомо. Всё осталось доступно и понятно по старому функционалу, а вот по новому немного плаваю - в обозревателе проектов много новых возможностей - нужно где-то расписать про них. Поэтому пока я отдаю голос в пользу старой доброй zetFBD.
Распишем, работаем над этим.
Система сложнее только с первого взгляда. На самом деле она намного удобнее zetFBD.
Большое спасибо за отзыв!
Будем признательны за конструктивную критику и за идеи-хотелки.
Сегодня тестил программу.
Удобно. Желательно положить документацию по основам.
Хотя бы старую.
А то приходится методом тыка разбираться.
Цитата: serge197a от 30 апреля 2015, 19:59:17
Сегодня тестил программу.
Удобно. Желательно положить документацию по основам.
Хотя бы старую.
А то приходится методом тыка разбираться.
Немного документации есть в хелпе к самой программе.
Остальное пишем.
Если желание тестировать есть - давайте в этой ветке скину несколько картинок с пояснением. Что детально интересует?
Я продвинутый юзер, но с ножками блоков путаюсь, т.к. в основном пишу на ST.
В частности просто хотел подвигать симулятор, со счетчиком (то бишь таймером). Не все сразу получилось.
А в начале ни как вход-выход открыть не мог. Оказалось окно для элементов еще вызвать нужно.
В целом по впечатлениям нормально. Нестабильность есть (подвисает после некоторых переключений между окнами).
не хватает кнопки "файл", почему вам она показалась лишней?
Историю предидущей компиляции полагаю можно автоматически удалять. Замыливает глаз.
Не понятно как создавать переменную для выходного значения.
она у меня создалась автоматически после рекурсивного соединения входа и выхода ФБ. А как самому создать, не понял.
Пока пожалуй все.
Цитата: serge197a от 30 апреля 2015, 23:33:31
Не понятно как создавать переменную для выходного значения.
она у меня создалась автоматически после рекурсивного соединения входа и выхода ФБ. А как самому создать, не понял.
Ага, понял.
Основные принципы проектирования: http://zentec.ru/dev/docs/d150714/d120213/
Как создавать переменные: http://zentec.ru/dev/docs/d150714/d200714/
раздел "Менеджер переменных"
Цитата: serge197a от 30 апреля 2015, 23:33:31
А в начале ни как вход-выход открыть не мог. Оказалось окно для элементов еще вызвать нужно.
Тут главное понять и проникнуться идеей ZWB.
ZWB - это не просто очередная среда разработки, это целая система, это хранилище ваших идей.
Система хранит ваши программы для контроллеров как шаблоны. Это очень удобно.
Программа, написанная для снятого с производства Z401 будет гарантированно исполняться например, на M100. Но у этих контроллеров разный набор периферии. И если хранить набор периферии в самой программе, то при смене целевого контроллера может произойти путаница. А так все на своих местах: шаблоны отдельно, входы/выходы отдельно.
Цитата: serge197a от 30 апреля 2015, 23:33:31
Историю предидущей компиляции полагаю можно автоматически удалять. Замыливает глаз.
Это очень важная информация. Посмотрите на снимок "1".
В окне "Вывод" система ругается, что блок удален, как бесполезный. ПКМ по надписи позволяет перейти в проблемное место и починить его. Затем можно перейти к другому элементу.
Если сообщения стирать автоматом, то это может привести к неудобствам, например, вы не сможете отследить изменения. Поэтому удаление информации из этого окна ручное.
Цитата: serge197a от 30 апреля 2015, 23:33:31
В частности просто хотел подвигать симулятор, со счетчиком (то бишь таймером). Не все сразу получилось.
ПКМ - контроллер - симулятор
Цитата: serge197a от 30 апреля 2015, 23:33:31
Нестабильность есть (подвисает после некоторых переключений между окнами).
Можете указать подробнее?
Цитата: serge197a от 30 апреля 2015, 23:33:31
не хватает кнопки "файл", почему вам она показалась лишней?
А нет в системе никаких внешних файлов.
Это еще одна идея, реализуемая в ZWB.
Ваша задача только указать место хранилища всех ваших проектов. И с этого времени ZWB будет сам создавать/удалять/перемещать ваши файлы. То есть ZWB создает свою файловую систему поверх ФС той Операционной Системы в которой он работает. Соответственно, работа с файлами и целыми проектами возможна только через импорт/экспорт.
В главном окне - Менеджере проектов, вы можете создавать любую иерархию из папок. Например:
*Клиент Вася Иванов
**Объект1
**Объект2
**Объект3
*Клиент Пётр Абрикосов
**Объект1
**Объект2
Внутри проекта вы можете вести всю необходимую документацию (см. снимок 2)
Причем импортировать можно как одиночные файлы, так и целые папки.
Импортированные файлы можно просмотреть либо встроенными средствами (см. снимок 3),тогда файл откроется в табе, что очень удобно, либо внешними программами (указываются в настройках проекта)
Спасибо, пожалуй не стоило так подробно.
Про подвисание, не вспомню, но при переходах между окнами в симуляции.
Про историю компиляции имел в виду, что скомпилировал- устранил, опять скомпилировал, еще устранил и т.д.
не текущая, а предъидущая история ошибок уже не актуальна и ее можно удалять.
ну и исполнение программ на всех типах ПЛК конечно задача трудно решаемая.
Обычно все используют таргет, или зарезервированную область ввода-вывода. ваш подход оригинален.
В общем у меня возражений и вопросов не было, кроме возможности выбора директории сохранения.
Цитата: serge197a от 01 мая 2015, 03:02:42
Спасибо, пожалуй не стоило так подробно.
Про подвисание, не вспомню, но при переходах между окнами в симуляции.
Про историю компиляции имел в виду, что скомпилировал- устранил, опять скомпилировал, еще устранил и т.д.
не текущая, а предъидущая история ошибок уже не актуальна и ее можно удалять.
Вопросы у новичков одинаковые - можно и расписать :)
Про подвисание - будем разбираться.
Про историю ошибок подумаем.
Цитата: serge197a от 01 мая 2015, 03:02:42
ну и исполнение программ на всех типах ПЛК конечно задача трудно решаемая.
Обычно все используют таргет, или зарезервированную область ввода-вывода.
У Z400/401 64kB памяти программ, из которых 24kB пользовательские программы и 3kB ОЗУ. Негде делать резервные области))
Цитата: serge197a от 01 мая 2015, 03:02:42
В общем у меня возражений и вопросов не было, кроме возможности выбора директории сохранения.
ZWB сам сохраняет ваш проект в место хранения. Он создает автоматическую единообразную структуру ваших данных от проекта к проекту. Таким образом не будет больше разбросанных файлов по диску и когда нужно будет вспомнить проект пятилетней давности - вы точно знаете где его искать.
Основная идея ZWB именно в этом! Вся работа - в порядке и под рукой.
/Негде делать резервные области/
Обычно резервируется только область ввода-вывода.
К примеру в КДС с лицензией это 360bayt. Это с сетевыми переменными.
(КДС чисто для примера, там лицензия немного для другого используется. Область ввода вывода автоматически распределяет драйвер. Но теоретически резервировать можно очень маленькое пространство.)
Она у Вас в общем-то и реализована, в тот момент когда происходит выбор контроллера- появляется таргет с входами -выходами.
Цитата: serge197a от 01 мая 2015, 11:19:49
/Негде делать резервные области/
Обычно резервируется только область ввода-вывода.
К примеру в КДС с лицензией это 360bayt. Это с сетевыми переменными.
(КДС чисто для примера, там лицензия немного для другого используется. Область ввода вывода автоматически распределяет драйвер. Но теоретически резервировать можно очень маленькое пространство.)
Она у Вас в общем-то и реализована, в тот момент когда происходит выбор контроллера- появляется таргет с входами -выходами.
Даже и не знаю что Вам ответить. У разных компаний разные методы. У нас есть определенная концепция и в нее вписывается именно такой метод. А вот найдет ли он сторонников - покажет время.
В текущем обновлении появилась галка в настройках проекта "очистка списка"
Устанавливая ее получаем автоматическую очистку окна вывода перед программированием / проверкой / симуляцией.
Цитата: serge197a от 01 мая 2015, 03:02:42
Про историю компиляции имел в виду, что скомпилировал- устранил, опять скомпилировал, еще устранил и т.д.
не текущая, а предъидущая история ошибок уже не актуальна и ее можно удалять.
Проверено. Работает!
Потихоньку допиливаем встроенный ПДФ вьюер.
Повысили быстродействие и качество вывода на печать.
Появилось много удобных функций, например линза (см. скрин)
Сама система печати всего проекта пока хромает, но обязательно сделаем.
Ожидаем вменяемого плагина документирования (текстовый процессор) и графического плагина.
После этого причешем плагин печати.
Будет удобно создавать полную документацию на проект одним кликом со сквозной нумерацией листов, штампами и прочей необходимой атрибутикой.
С вашего позволения немного критики по ПДФ вьюеру.
Само его наличие в ZWB это, без сомнений, большой плюс!!! Молодец тот, кто это придумал!!!
Кнопка "вписать в окно" не работает.
Кнопка "масштаб 100 %" не работает.
Кнопка "одна станица", думаю в перспективе можно будет выбрать 2 страницы, пока тоже не работает.
Окошко с выбором масштаба, при нажатии на стрелочку пропадает вся панель инструментов, возвращается при нажатии в поле документа
Кнопка "print" и все которые правее, на мой взгляд хорошо бы русифицировать.
Инструмент "magnify tool", удобная штука, но при перемещении у меня лично тормозит сильно.
Спасибо, принято! Будем разбираться.
Вопрос.
А сам плагин корректно отображает шрифты, линии, хорошо ли крутится зум по колесику мыши?
Шрифты и линии отображаются корректно. Зум колёсиком немного подтормаживает по сравнению с foxit reader на этом же компе.
Жаль, что лис не на Qt написан)))
Значит надо оптимизировать, если будет возможно.
Починили выделение объектов + скролл
Выделение объектов через ctrl заработало !!!
А вот зум pdf документов колёсиком мыши у меня лично занимает 2 секунды.
С ПДФ засада какая-то. Морщим мозг. Починить то починим, но потребуется время.
Цитата: VoronovMaksim88 от 04 июля 2015, 13:14:47
Выделение объектов через ctrl заработало !!!
А вот зум pdf документов колёсиком мыши у меня лично занимает 2 секунды.
Добавлен новый плагин "Документ"
Пока совсем еще малыш и ничего не умеет.
Но задачи для него поставлены великие)
Плагин нужен для ведения документации внутри проекта.
Должен получится по-идее почти текстовый процессор с полуавтоматическим заполнением таблиц, вытаскиванием меток и описаний из тела программы.
Поживем-увидим что из этой затеи получится.
Вчера в тестовом режиме запустили HMI рисовалку.
Видео работы:
https://www.youtube.com/watch?v=mahgeEsbE_8
Тестовый проект:
https://cloud.mail.ru/public/8exP/DtVir9Da1
- Импортировать в ЗВБ проект
- Запустить проект в симуляторе
- Запустить плеер - zviever (лежит в папке bin домашней директории ЗВБ, например, для win систем (C:\Program Files (x86)\ZWorkbench\bin)
- На вкладке "Сервер" выбрать опцию "Старт"
- Тыкать кнопки))
Жму "старт" - "отказано в соединении".
Цитата: VoronovMaksim88 от 24 августа 2015, 18:11:53
Жму "старт" - "отказано в соединении".
На порту кто-нибудь сидит?
А как посмотреть ?
а кто жеж его знает?
это у ОС надо спросить
Как происходит ошибка?
Попробовал на другом ПК , win xp
1. Импортирую проект
2. запускаю в симуляции
3. открывваю Zviewer
4. сервис-стар
5. Ошибка подкюлченное устройство не является сервером HMI
В настройках указал ip адрес своего ПК, порт 80.
Результат тот же "Подключенное устройство не является сервером HMI"
Где-то что я не так делаю наверно.
Порт надо указывать 888
Ага. Посмотрел внимательно видео. Заработало. Теперь надо научиться самому рисовать такие схемы.
Кнопку, ползунок, поле ввода и список примерно понял.
А вот SVG изображение как создать ? как сделать анимацию ? как добавить на отладочный экран ?
А ещё выложите пожалуйста фото N450EV, хоть поглядеть на него.
Создать изображение SVG можно в бесплатном редакторе Inkscape 0.91
Далее его необходимо импортировать в проект.
Управлять видимостью пока не получается.
Проект в прикрепе.
Попробовал проект во вложении. Вроде видимость меняется от кнопки.
По поводу анимации SVG. Анимация должна быть встроена в сам файл, правда не все редакторы SVG это умеют.
Если в Zworkbench открыть файл SVG для просмотра, то в левом верхнем углу будет информация о его исходных размерах и наличии анимации. Если анимация присутствует, то подключая свойство анимации можно управлять ею - то есть отключать и включать.
Вот пример тега, который встраивается в SVG и задает анимацию вращения относительно точки
<animateTransform
attributeName="transform"
attributeType="XML"
type="rotate"
from="0, 70, 49"
to="360, 70, 49"
begin="0s"
dur="2s"
repeatCount="indefinite"
fill="freeze" />
Странно у меня видимость от кнопки не управляется...
Последняя версия стоит? b1.0.0.72?
нет, Версия 1.0.71.
Эта ошибка была поправлена, но пока собрана только бета версия. Чуть попозже выйдет и в основном релизе.
Ок. Ждём.
Обновился до Версии 1.0.73
-Видимость SVG не заработала.
-Видимость GIF работает. Мне лично с GIF-ом полегче анимацию делать. Просто рисую несколько кадров, потом в каком нибудь онлайн редакторе собираю в гифку.
-Анимация GIF в просмоторщике не отображается, может надо где-то галочку поставить ?
Вкладку "connection" лучше переименовать в "подключения" :)
Так в целом работать приятно, никаких тормозов.
Странно, управление видимостью должно работать одинаково, как для изображений, так и для любых примитивов. У меня проект, который во вложении форума работает.
Для активации анимации GIF нужно поставить в свойствах галочку "Анимация". Если это галочка установлена, то анимация работает в режиме редактирования и симуляции. К этому свойству можно подвязать переменную для включения/выключения анимации. Однако для этого в редакторе она должна быть обязательно включена, потому что в режиме симуляции при управленнии переменной происходит снятие/установка паузы анимации. То есть при установки привязанной переменной в 0 анимация ставится на паузу в текущем кадре, а при установке в 1 - продолжает с текущего кадра.
Версия 1.0.74
Видимость SVG работает
Анимация GIF на отладочном экране работает.
Я доволен )
Будем тестить дальше.
Подскажите как со вложенными экранами работать ?
Цитата: VoronovMaksim88 от 28 августа 2015, 14:31:11
Подскажите как со вложенными экранами работать ?
Контрол "Вложенный экран" отображает экран одного из макроблоков, содержащихся в этой схеме. FBD-схема этого макроблока должна иметь отладочный экран, указанный в ее свойстве. Подключения к FBD-переменным (входам, выходам) будут соответствовать данным внутри этого макроблока.
Аналогично контрол "Вложенные экраны" отображает набор вкладок, по одной для каждого макроблока.
Пример проекта см. во вложении.
Да в вашем проекте всё работает.
Но у меня пока что не получается.
Добавил к проекту макрос в нем отладочный экран.
Напрямую могу перетащить экран макроса на экран программы.
Если делаю на экране программы вложенный экран и добавляю действие, то в этом действии не могу выбрать отладочный экран макроса, список пуст.
Кстати если на отладочный экран перенести тот же самый отладочный экран, то ZWB падает.
Возможности перетаскивания экран внутрь другого или этого же экрана вообще не должно быть, уберем в следующем релизе. Видимо, мы когда-то экспериментировали и забыли убрать, за что извиняюсь. Падение - следствие того, что это вообще нельзя делать. Экран привязан к данным своей макросхемы, поэтому отдельно от макроблока он существовать не может.
Нужно делать так:
1) экраны главной и вложенной схем указываем в свойстве схемы "Отладочный экран" (в вашем проекте не указано).
Это для того, чтобы выбрать один из экранов, если их несколько, но и для единственного это пока тоже нужно;
2) в главную FBD-схему тащим макросхему, получаем макроблок, подключаем его при необходимости (его в вашем проекте нет). Смысл его в том, что он внутри содержит отдельные экземпляры переменных и блоков, которые работают с графическими объектами экрана. Таким образом, макроблок может либо содержать отображаемые
данные в переменных, либо вычислять их от входов, либо комбинировать эти возможности;
3) добавляем в экран главной схемы контрол "Вложенный экран" (он у вас уже есть);
4) указываем в свойстве "primitive.block" (назовем по-русски в след. релизе) контрола соответствующий макроблок;
Шаги 2-4 можно делать многократно, размножая таким образом данные и их отображение.
Вместо отображения вложенных экранов можно открывать экраны в отдельном окне кнопками - создать для кнопки действие (это вы сделали), и в свойстве действия "Объект" указать макроблок.
Благодарю за подробный ответ. Буду пробовать.
Всё получилось. Принцип в целом понятен.
А как сделать кнопку возврата с экрана макроса на экран основной программы ?
Пока такой возможности нет. Если просмотр экранов ведется в ZViewer, то там есть спец. кнопка для возврата на главный (домашний) экран.
Понял.
Цитата: VoronovMaksim88 от 25 августа 2015, 19:49:37
А ещё выложите пожалуйста фото N450EV, хоть поглядеть на него.
Пока без корпуса, зато верхом на прадеде))).
Красота!
Ждём мануал!
Создаю макрос в пользовательских библиотеках.
Выкидываю на поляну.
Думаю что-то имя слишком низко, дай-ка я туда ентер воткну.
Меняю имя макроса на поляне, а оно вообще не меняется.
Думаю.... Понимаю что это же правильно если бы имя менялось можно было бы запутаться вообще в своих макросах.
Но тогда надо исключить возможность переименования макроса на поляне в принципе. Логично вроде.
Что скажите, уважаемые разработчики ?
Вы, наверное, меняли имя блока. Имя макроса отображается внутри самого блока, а имя конкретного блока - над ним.
Чтобы имя блока отображалось над ним, необходимо установить его свойство - "Вывод заголовка".
По поводу смены имени самого макроса. Его можно изменить только в дереве проекта, вызвав команду "Переименовать" по контекстному меню. Все блоки этого макроса будут отображать это имя (внутри блока). Название конкретного экземпляра при его создании устанавливается таким же, как и имя макроса. Затем его можно менять. Ведь один и тот же макрос можно использовать в разных целях. Кроме того, поиск в навигаторе проекта идет как раз по именам блоков.
Понял. Отстал ))
Нет не отстал ))
Когда переименовываю вход макроса может появится сообщение что вход с таким именем уже существует, но на самом деле я ещё не допереименовывал его. Логичнее чтоб это сообщение появлялось при нажатии кнопки "ок", когда пользователь уже завершил ввод нового имени.
Как вы считаете ?
Согласен, подумаю как это исправить
Коллеги, что-то я заблудился немного.
Как сделать на отладочном экране кнопку чтобы по её нажатию Вход контроллера в режиме отладки выставлялся в 1, по второму нажатию скидывался в 0 ?
Кстати было бы удобно чтоб при добавлении контроллера в проект с ним сразу добавлялся отладочный экран со всеми вх\вых. Удалить его не долго, но как правило он необходим.
Цитата: VoronovMaksim88 от 18 сентября 2015, 05:45:13
Коллеги, что-то я заблудился немного.
Как сделать на отладочном экране кнопку чтобы по её нажатию Вход контроллера в режиме отладки выставлялся в 1, по второму нажатию скидывался в 0 ?
Добрый день!
В свойствах кнопки поставить галку "фиксация" (см. скриншот)
ЦитироватьКстати было бы удобно чтоб при добавлении контроллера в проект с ним сразу добавлялся отладочный экран со всеми вх\вых. Удалить его не долго, но как правило он необходим
Так и было задумано. Просто после некоторых переделок этот момент временно не работает. Скоро починим.
Галочку фиксация я нашёл конечно )) А дальше то что ?
Создаю кнопку. ПКМ-добавить подключение.
Вижу 2 вкладки : отображение и управление.
отображение:
Понимаю так что дискретные и аналоговые входы (программа пока пустая) могут влиять на свойства кнопки.
управление:
т.е. то чем управляет эта кнопка. Правильно я понимаю: состояние кнопки может изменить адрес устройства ? Код ошибки? Состояние выходов контроллера? Но входов в этом списке я не вижу. Как же тогда сделать чтоб состояние кнопки меняло значение дискретного входа в режиме отладки ? И что будет когда я подключу реальный контроллер ? Не возникнет ли конфликт кнопки и реальных входов контроллера?
ЦитироватьПравильно я понимаю: состояние кнопки может изменить адрес устройства ? Код ошибки? Состояние выходов контроллера? Но входов в этом списке я не вижу
Все правильно, это небольшая ошибка. В след релизе переменные устройства будут доступны и для записи и для чтения.
ЦитироватьИ что будет когда я подключу реальный контроллер ? Не возникнет ли конфликт кнопки и реальных входов контроллера?
Для этого в шаблоне программы есть флаг "Симуляция физических входов в режиме отладки". Если он сброшен, то любые попытки программным образом будут игнорироваться, а будут читаться только реальный входы. Если флаг установлен, то как раз наоборот. Данные с реальных входов будут игнорироваться, а значения можно менять программно, то есть через отладочные экраны.
Понял. Спасибо.
Версия 1.0.78
FBDPlugin
При изменении типа связи, этот же тип принимают все связи, подключенные к тому же выходу.
Это конечно хорошо. Но вот есть у меня блок с его выхода тянется именованная связь, во первых я не могу протянуть эту связь от этого выхода до другого входа, а во вторых если от свободного входа протянуть связь к этому выходу то она станет неименованной. Вам конечно виднее как лучше, но мне кажется, что с выхода должна идти либо именованная связь либо неименованная.
На отладочном экране создал кнопку с фиксацией и назначил ей управление дискретным входом. Всё понятно, всё работает.
Теперь добавляю подключение-отображение-цвет. Хочу чтоб цвет кнопки менялся например по состоянию дискретного выхода. Подключение создалось, а где назначить какой цвет будет при отключенном выходе, а какой при включенном?
Перевод бы ещё маленько допилить ))
Ещё небольшую недоработочку нашёл.
Если добавить на поляну 2 и более универсальных входов, выделить их все вместе и задать режим работы "аналоговый вход", то в этот режим перейдёт только один вход на котором был совершён ПКМ, остальные хотя и будут иметь в свойствах "аналоговый вход", но по факту останутся дискретными. Поясняющие скриншоты в прикрепе.
Подтверждаю, проблема есть.
Передал отделу разработки.
Спасибо!
Уважаемые разработчики, у меня есть подозрение что контролы отладочных экранов "кнопка" и "поле ввода" не отрабатываю свои свойства "Гор.выравнивание" и "Верт.выравнивание".
В поле ввода реализовал горизонтальное выравнивание. Для кнопки эти параметры смысла не имеют. Обычно стандартная кнопка центрирует все по центру.
Если параметр не имеет смысла, то его наверно лучше исключить вовсе.
Добавили два блока:
Интервал - на вход подаем число и ограничиваем его верхним и нижним параметром. На выходе число, ограниченное мин и макс, а так же три выхода - макс или мин значение достигнуто и значение принадлежит диапазону от мин до макс.
Работает со всеми типами данных.
Масштабирование - на вход масштабируемое число, на входы х0 и х1 мин и макс значения для входа, на y0 и y1 мин и макс значения для выхода
Это замечательно. Очень нужные и полезные блоки. А когда их проверить можно будет ?
Уже. В релизе 84
У меня 1.0.78. Дальше не обновляется.
нужна бета версия.
Она вначале этой ветки. В первом сообщении
Да, точно.
Скачал, проверил, работает!
Версия 1.0.81
Добавление команды автоподключение связей.
Как это работает ?
Так и знал, что ты это спросишь.
Сейчас покажу
Например, надо создать кучу однотипных соединений (см. прикрепление)
В ЗВБ есть возможность тянуть связи от входа к выходу и наоборот. Это удобно, но когда много однотипных связей - это утомительно. Гораздо проще выделить пины входов и выходов и нажать кнопку "автоподключение"
Картинки иллюстрируют процесс.
Традиционно для ЗВБ, функцию "автоподключение связей" можно назначить на хоткей для быстрого доступа.
Круто!
Но если потом снять выделение и снова выделить все те же связи, то получается ли у вас их удалить кнопкой DEL ?
Выделить именно рамочкой :)
А по ним еще и F5 и F6 не работают после снятия выделения. Сейчас оповестим кого следует
Версия b1.0.85 всё заработало.
Добрый день!
Существует проблема с удалением именованных связей, при попытке удалить одну связь из группы, удаляется вся группа.
Подтверждаю проблема есть. Если от одного выхода тянется несколько именованных связей к разным входам, то кликнув на связь прикреплённую ко входу выделяются сразу все связи.
Уже работаем. Спасибо.
Не работает переход из полноэкраного режима в не полноэкранный. (не помню как зовётся, но справа вверху вторая справа)
Известная проблема. Имеет низкий приоритет. Поправим обязательно.
b1.0.86
Выделение и удаление именованных связей заработало.
Дорогие коллеги!
Внимание, пожалуйста.
Кратко о планах на текущий месяц (декабрь).
Обновим стабильную ветку до текущей беты (87).
Серьезно сломаем бета версию.
В чем суть:
Сейчас идет работа над графическим построителем сети - плагина, который в визуальном режиме строит в почти автоматическом режиме иерархию сети. В ходе работ над плагином zNetBuilder был разработан новый трассировщик.
Этот трассировщик будет использован во всех графических приложениях в составе ZWB - FBDEditor, zNetBuilder и zElectroschem.
В связи с этими работами будут:
в части представления сетей убрана древовидная структура сети и вместо нее появится "карта сети". Все сетевые проекты придется заново перестроить в ручном режиме в новом плагине.
в части ФБД редактора большая вероятность потерь связей, "паутин" и висящих в воздухе "глухарей".
Мы будем очень стараться, что бы переход мыл максимально мягким, но, скорее всего, проблемы все же будут.
Что получим в итоге:
- очень удобный трассировщик с автоматическим обходом препятствий, удобные захваты линий, автоматическую разбивку на сегменты, автоматическое слияние сегментов, таскалки-крутилки.
- 30% сделанной работы по построителю электросхем
- внутренние шины данных (очень удобная штука для однотипных соединений, например мультиплексорных шин)
- и, конечно же, графическое представление сетей.
Просьба рабочие проекты перенести в стабильную ветку ZWB.
https://youtu.be/BBNFXa_K_kU (https://youtu.be/BBNFXa_K_kU)
Хорошие новости. Пожелаем удачи разработчикам.
Ну и конечно поделимся с ними своими пожеланиями ))
На первом скриншоте изображено два кусочка программы, зелёный и красный. На первый взгляд они одинаковы, но если взглянуть на скриншоты 2 и 3, то становится понятным, что при одном и том же графическом представлении кода имеем разную суть. Такая проблема присуща многим средам разработки на fbd. Решение на скриншоте 4.
Согласен с замечанием. При разработке нового трассировщика связей учтем пожелание.
Не возможно создать свою цветовую схему!
Надписи на макрос блоках я бы сделал посветлее.
Добавьте иконки на группу блоков управление для наглядности.
Не плохо было бы в свойствах блоков добавить описание.
А как вы создавали цветовые схемы? Для их создания нужно в настройках цветовых схем сдублировать схему и потом ее править.
Описание блоков можно посмотреть в справке. Выделите блок на схеме и нажмите F1
Сделал светлее фон. Цвет текста возле входов и выходов не могу поменять, меняется только цвет заголовка.
За цвет надписей около входов отвечает строчка входы/выходы.
Спасибо! Но по сколько цвет фона можно менять отдельно для основных блоков и макросов логичней менять и цвет
текста отдельно для макросов и основных блоков.
Мне всё вроде бы уже понравилось, НО!
- я так и не смог корректно перенести проект из FbdEditor
- задавал вопрос здесь на форуме, но не получил конкретного ответа.
Суть вопроса: Не работает симуляция, если импортировать проект из FbdEditor!
В FbdEditor было много удобныч фишек, и его функционал не полностью перенесен в Zworkbench.
Про фишки попробую систематизировать и напишу дополнительно.
Добавляю про фишки, в FbdEditor можно было тянуть линию двумя способами, если кликнуть на выход и отпустить, то от выхода можно развести именованную связь на несколько входов, а если кликнуть и тянуть не отпуская до входа, то получаем простую связь.
Как не работает?
Все работает.
Давайте посмотрим ваш проект и пройдемся по шагам.
Есть проект на Z400, в FbdEditor, импортируем в Zworkbench = симуляция не работает, точнее не сама симуляция. Нажимем кнопку плэй, открывается симуляция, нажимаем жука и .... Ничего.
Можно с любым проектом пробовать. Дело не в проекте.
Понял.
Надо создать отладочный экран.
Когда происходит импорт из ФБД редактора, ЗВБ не располагает сведениями, какие параметры вы хотите отладить.
Поэтому надо создать экран отладки, привязать его к программе и привязать контролы к той части схемы, которую требуется отладить
Это я уже слышал, но как его создать? Ткните что ли где почитать.
Накидаю пример - выложу. Это лучше, чем читать.
Обновили бету.
Все сведения об обновлениии в ЗВБ на главной странице.
Цитата: mike от 23 декабря 2015, 07:40:43
Накидаю пример - выложу. Это лучше, чем читать.
Ждемс!!
Пока проводим подготовительные работы.
В версии 1.0.94b не могу найти кнопку симуляции программы. Подскажите где искать?
На скриншоте изображена странная ситуация, виртуальный контроллер подключён к компу а ZWB говорит, что не подключён.
Правильно говорит, что не подключен, так как не назначен физический порт. Нужно в свойствах порта выбрать из списка какой-нибудь порт компьютера.
Симуляция теперь перенесена в карту сети. Ее можно запускать даже если нет подключения к портам. При подключенных портах они будут использоваться симулятором для работы.
Понял. Спасибо.
ZWB 1.0.103-b1
Не работает групповое удаление связей.
Эти связи выделяли прямоугольником? Если да, то тут есть определенная проблема, еще пока не решена. Если выделять их кликом мыши с зажатым Ctrl, то все нормально работает. Можно и рамкой выделять, но тоже с зажатым Ctrl
Ага, понял. Действительно через ctrl работает. Спасибо.
Только что столкнулся с ещё одной проблемкой и родилось небольшое предложение.
Если на входе блока висит именованная связь, а под ней вход с константой, то перенести такую связь проблематично, так как есть очень маленькая область куда надо попасть мышкой для вызова контекстного меню переноса связи. Предложение простое, добавить пункт "перенести связь" при правом клике на самой связи, а не на ножке макроса.
А ещё у меня какие-то трудности с сохранением. Жму ctrl+S или проект-сохранить, сохранение происходит, комп пару секунд думает, но звёздочка возле имени проекта не пропадает. Открытие и закрытие проекта решает проблему.
ЦитироватьА ещё у меня какие-то трудности с сохранением. Жму ctrl+S или проект-сохранить, сохранение происходит, комп пару секунд думает, но звёздочка возле имени проекта не пропадает. Открытие и закрытие проекта решает проблему.
Нужно проект смотреть, чтобы я у себя мог такое повторить. По снимку экрана трудно определить. Вышлите проект (или ссылку на его скачивание)
Хорошо, вышлю как только проявится в следующий раз. Проблема нестабильная, то есть, то нет.
Можно даже и не ждать появления, вышлите я посмотрю Дело может быть в каком-то элементе проекта, который не сбрасывает флаг модификации. Мне нужно просто посмотреть состав всего проекта
Вот проект, но последние раз 5 он успешно сохранился ))
Как я и предполагал, проблема в тестовых документах. Там вероятно ошибка при сбросе флага модификации. После его изменения этот флаг не сбрасывается. Будем разбираться в проблеме...
Хорошо. Благодарю.
В описание релиза 104 Вы указываете, что настройка режимов универсальных входов перенесена в переменные устройства. В свойствах входов выбор аналогового\цифрового входа пропал. Просьба уточнить в какие переменные устройства переместился выбор аналогового\цифрового входа.
При клике на контроллер в окне появляются свойства Сетевых переменных, Переменных ПЗУ и Переменные WEB. Где искать универсальные входы? Да и в чем был смысл убирать из свойств входов выбор? Справку по программе тоже логично было править при текущих изменениях в программе, это было-бы для пользователя намного проще, чем пытаться сделать по справке, выяснять что не получается и искать в форуме объяснения изменений, которые Вы внесли.
Ух ты! А у меня до 104-ого не обновляется пока что !
Смена типа универсального входа происходит в Обозревателе проекта. В дереве, из которого вы их вытаскиваете на схему. Для смены сделайте двойной клик по входу в дереве и выберите его тип.
Более подробное описание будет чуть позже во встроенной справке, с картинками и примерами.
обновился до 104
Если кинуть на поляну Uin , а потом сменить его тип то поляне будет 2 UIN с одним номером :)
Перемещаешь один за ним в догонку бежит другой ))))
Ещё у меня ZWB упал как только я начал пытаться UIN подключить куда-то.
И ещё не могу скриншоты подключить к ответу.
А ещё не понял почему тип Uin всегда серенький? Раньше для Din был красный-bool для Ain-Синий uint 16bit.
Ещё ошибка вылетела при смене директории с проектами.
Скриншоты пока отправляю в виде ссылок, не знаю почему не работает прикрепление. Попробую с другого компа.
У меня почему-то форум вообще только через Chrome работает. С мозилы и яндекс браузера не могу зайти.
https://yadi.sk/i/9Hdo91tlqTzoE
https://yadi.sk/i/nLuvj-KAqTzq8
https://yadi.sk/i/iqPVz8yrqTzrM
Баг с вводом числа, при переключении на другую систему счисления, ввод в строке "значение константы" остается без изменения, т.е. если мне надо ввести число в шестнадцатеричном формате, открываю окно свойств, выбираю нужный формат, закрываю окно, повторно открываю и уже тогда только можно ввести правильное число. Раньше работало корректно.
Переустановил яндекс браузер, форум заработал. Но картинку всё равно прикрепить не могу.
https://yadi.sk/i/PpC3JjeiqU33L
ЦитироватьЕсли кинуть на поляну Uin , а потом сменить его тип то поляне будет 2 UIN с одним номером :)
Перемещаешь один за ним в догонку бежит другой ))))
Да, действительно, недоглядели, будем править. Этот фантом временный, если закрыть и открыть проект, то он пропадет.
По поводу цвета. Так как теперь блок на схеме не хранит данных о том, какого он типа, то выход у него без типа данных, как вход блока преобразования данных. Проверка соответствия типов данных осуществляется на этапе программирования или проверки проекта.
Цитата: VoronovMaksim88 от 25 марта 2016, 12:23:35
Ещё ошибка вылетела при смене директории с проектами.
По поводу этой ошибки поподробнее.
Цитата: VoronovMaksim88 от 25 марта 2016, 12:19:52
Ещё у меня ZWB упал как только я начал пытаться UIN подключить куда-то.
И вот по этой проблеме тоже поподробнее. Всегда падает или только один раз упала?А то я у себя не смог повторить.
Один раз упала.
Цитата: Artem от 25 марта 2016, 14:14:52
По поводу цвета. Так как теперь блок на схеме не хранит данных о том, какого он типа, то выход у него без типа данных, как вход блока преобразования данных. Проверка соответствия типов данных осуществляется на этапе программирования или проверки проекта.
Мне кажется раньше было проще и понятнее )) Уверен, что для новичков будет совершенно не очевидно что для смены типа Uin надо дважды щёлкнуть на нём в дереве контроллера. Предлагаю тогда хотя бы при ПКМ на Uin в дереве сделать пункт "свойства".
Попробовал повторно поменять пару раз директорию с проектами проблем не возникло.
ZWB упала при удалении Uin.
https://yadi.sk/i/DyStJI-7qUL28
У меня тут вопрос возник. Как можно произвести запись по сети в дискретный вход ?
https://yadi.sk/i/ssqoc0aAqULR5
Я извиняюсь если достал своими вопросамипредложениямипожеланиями, но у меня ещё вопрос:
Почему на вкладке последние проекты нет кнопок "переименовать", и "удалить" , а кнопка "копировать" не работает ?
https://yadi.sk/i/c4pd4AnyqULmm
Толька не баньте меня )))
Возникла ошибка "типы данных входа и выхода не совместимы". Пытаюсь удалить эту связь, а она не удаляется!!! Как так?
https://yadi.sk/i/UrPOZ6bOqUMbU
https://yadi.sk/d/BoSLNaLxqUMeA
Жму симуляция. Ошибка "выход неподключен". Цепляю связь на выход, потом думаю: "Не то зацепил!", пытаюсь удалить связь, не удаляется. Переключаешься на другое окно (например окно браузера), возвращаешься в ZWB и связь как ни в чём ни бывало удаляется. Вот даже видео снял, только без звука, микрофона на работе нет.
https://yadi.sk/i/_JUknAgjqUNuh
Спасибо, свойства входа поменялись. В описание изменений версий 104 Вы писали что настройка перенесена в переменные устройства. То есть у Вас ошибочное описание в справке, ошибочное описание в аннотации версии + двойной клик по входу совсем не однозначное действие для изменения свойств, логичнее было-бы увязать данное действие в меню свойства, которое открываться должно при открывании свойств входа. Судя по форуму что-то слишком много программных ошибок и скорее всего что то повылезает при работе контроллера уже в готовой программе. Первое впечатление, что Вы перегружаете саму идею простого программирования на языке функциональных блоков. Не знаю как в других платформах но программа функциональных блоков намного логичнее работает например у производителя ОВЕН. Для распределённых и более сложных систем проще использовать уже платформу, которая допускает написание программ не только на языке функциональных блоков.
Цитата: VoronovMaksim88 от 25 марта 2016, 15:14:49
ZWB упала при удалении Uin.
https://yadi.sk/i/DyStJI-7qUL28
Эта та-же проблема, что и появление фантома. Мы уже ее локализовали, в новом релизе будет исправление
Цитата: VoronovMaksim88 от 25 марта 2016, 15:13:18
Цитата: Artem от 25 марта 2016, 14:14:52
По поводу цвета. Так как теперь блок на схеме не хранит данных о том, какого он типа, то выход у него без типа данных, как вход блока преобразования данных. Проверка соответствия типов данных осуществляется на этапе программирования или проверки проекта.
Мне кажется раньше было проще и понятнее )) Уверен, что для новичков будет совершенно не очевидно что для смены типа Uin надо дважды щёлкнуть на нём в дереве контроллера. Предлагаю тогда хотя бы при ПКМ на Uin в дереве сделать пункт "свойства".
Попробовал повторно поменять пару раз директорию с проектами проблем не возникло.
Это как посмотреть. Смена типа входа не очень частая процедура. Обычно при написании программы уже заранее известно что на какой выход подключено. Кроме того тип универсального входа - это свойство контроллера, и должно поэтому находится в его настройках. Идея переместить их туда уже давно витала, только сейчас ее реализовали. Ну а за это время просто все привыкли... По поводу пункта свойства согласен, сделаем.
Цитата: VoronovMaksim88 от 25 марта 2016, 15:18:41
У меня тут вопрос возник. Как можно произвести запись по сети в дискретный вход ?
https://yadi.sk/i/ssqoc0aAqULR5
Переменная входов и выходов является такой же переменной, как например переменная ошибки или другие переменные устройства (параметры портов). Поэтому ей так же можно назначать адрес в сети Modbus. Просто этим никто никогда не пользовался. Можно сказать, что это недокументированная функция
Цитата: VoronovMaksim88 от 25 марта 2016, 15:25:23
Я извиняюсь если достал своими вопросамипредложениямипожеланиями, но у меня ещё вопрос:
Почему на вкладке последние проекты нет кнопок "переименовать", и "удалить" , а кнопка "копировать" не работает ?
https://yadi.sk/i/c4pd4AnyqULmm
Там и предполагалась только кнопка Копировать. А вот почему не работает, будем проверять
Цитата: angol855 от 25 марта 2016, 16:03:10
.......Первое впечатление, что Вы перегружаете саму идею простого программирования на языке функциональных блоков.
Я полностью поддерживаю. Был очень добротный и качественный фбдэдитор, можно было просто сверху на него надстройку сделать. А превратилось всё в ZWB с очень путанным интерфейсом и кучей багов, пора визард добавлять.
Цитата: angol855 от 25 марта 2016, 16:03:10
........Не знаю как в других платформах но программа функциональных блоков намного логичнее работает например у производителя ОВЕН. Для распределённых и более сложных систем проще использовать уже платформу, которая допускает написание программ не только на языке функциональных блоков.
А вот тут не согласен. У Овена с ПО дела ещё хуже. Если смотреть в сторону продуктов одной ценовой категории, то это различные ПР, а среда разработки ОвенЛоджик. Существует лет пять наверное, а такое ощущение, что школьник побаловался и за неделю накидал програмку.
ZWB хороший продукт. Это я вам заявляю как человек который с десяток разных сред под FBD перепробовал.
Плюсы:
Симуляция!!! (далеко не у всех есть)
Графика, очень качественная и гибкая. (Зуммирование, выбор цвета, шрифта)
Построитель сети (вообще редкость!)
Есть все необходимые блоки (У многих например блок "И" только два входа имеет и ничего не сделаешь)
Отладочные экраны
Прозрачная работа с сетевыми переменными
Точки отладки
Макросы
менеджер проектов
кроссплатформенность (мало кто под linux может корректно работать)
возможность прикрепить к проекту документы
Минусы:
Начнём с того, что все глюки о которых я писал сегодня это бетта версия! Для работы я использую стабильную версию!
Да, есть несколько мелких недоработочек и не всё так очевидно и интуитивно.
ГЛАВНЫЙ ПЛЮС:
Проект развивается!!!
Задача пользователей тестировать, тестировать и ещё раз тестировать !!! Иначе так и будем зависеть от шнайдера да от сименса и позорно ставить ломаный софт на ломаную операционку. И не иметь возможности сказать свои "хочу" и "исправьте пожалуйста" !!!
P.S. Из отечественных продуктов очень уважаю сигнетикс
P.P.S Овен лоджик тоже потихоньку развивается. Но медленно.
Кстати при попытке разобраться с тем как работает окно отладки с возможностью виртуально подать сигнал на входы несколько раз программа слетала при переходе из окна виртуальных входов в окно программы.
Цитата: VoronovMaksim88 от 25 марта 2016, 16:57:26
ZWB хороший продукт. Это я вам заявляю как человек который с десяток разных сред под FBD перепробовал.
Плюсы:
Симуляция!!! (далеко не у всех есть)
Графика, очень качественная и гибкая. (Зуммирование, выбор цвета, шрифта)
Построитель сети (вообще редкость!)
Есть все необходимые блоки (У многих например блок "И" только два входа имеет и ничего не сделаешь)
Отладочные экраны
Прозрачная работа с сетевыми переменными
Точки отладки
Макросы
менеджер проектов
кроссплатформенность (мало кто под linux может корректно работать)
возможность прикрепить к проекту документы
Минусы:
Начнём с того, что все глюки о которых я писал сегодня это бетта версия! Для работы я использую стабильную версию!
Да, есть несколько мелких недоработочек и не всё так очевидно и интуитивно.
ГЛАВНЫЙ ПЛЮС:
Проект развивается!!!
Задача пользователей тестировать, тестировать и ещё раз тестировать !!! Иначе так и будем зависеть от шнайдера да от сименса и позорно ставить ломаный софт на ломаную операционку. И не иметь возможности сказать свои "хочу" и "исправьте пожалуйста" !!!
P.S. Из отечественных продуктов очень уважаю сигнетикс
P.P.S Овен лоджик тоже потихоньку развивается. Но медленно.
По поводу симуляции согласен, должно быть супер удобно.
По поводу всего остального не согласен. Для простых вариантов автоматизации простой среды ОвенЛоджик более чем достаточно. У ОВЕНА не хватало ПИД регулятора, встроенного RS485 c мастером и в последней редакции и контролёре его добавили.
Для более серьезных задач у Овена есть SCADA, CODESYS, - это уже просто другой уровень для сложных задач.
По поводу стоимости и функциональности - устройство от ОВЕНА ПР200 переигрывает М100. Устройство в корпусе, и с дисплеем с аналогичным функционал и похоже по быстродействию и точности по входам получше. Другой вопрос, что его никак не запустят в серию и купить его пока фактически еще нельзя.
А можно поподробнее, какую стабильную версию Вы используете. На сайте доступен только один вариант программы.
Контроллер надо выбирать под задачу. Да, весомое преимущество ПР200 это наличие дисплея. Но у меня был опыт неоднократного выхода из строя ПР114, с тех пор с острожностью отношусь к ним. А овен лоджик на мой взгляд проигрывает ZWB.
Стабильная версия доступна в разделе "для разработчиков" на сайте.
Цитата: VoronovMaksim88 от 25 марта 2016, 19:12:06
Контроллер надо выбирать под задачу. Да, весомое преимущество ПР200 это наличие дисплея. Но у меня был опыт неоднократного выхода из строя ПР114, с тех пор с острожностью отношусь к ним. А овен лоджик на мой взгляд проигрывает ZWB.
Стабильная версия доступна в разделе "для разработчиков" на сайте.
Спасибо за ответ, данная версия у меня и установлена.
Разобравшись абсолютно согласен что ОвенЛоджик проигрывает.
Что касается моих замечаний и сравнений с устройствами других производителей, то это в основном касается того, что бы при модернизации программного обеспечения параллельно вносились изменения и в описательную часть, справку, объясняющие где например теперь искать "жука", который пропал из привычного места или например куда надо и как кликать для изменения свойств входов. Также эти правки желательно кратко указывать в релизе новой версии.
Надеюсь на понимание разработчиков что параллельно с модернизацией программы надо и подумать о пользователях, которым надо доходчиво объяснить изменения.
Извините, мы просто забыли (((
Цитата: VoronovMaksim88 от 25 марта 2016, 15:42:14
Жму симуляция. Ошибка "выход неподключен". Цепляю связь на выход, потом думаю: "Не то зацепил!", пытаюсь удалить связь, не удаляется. Переключаешься на другое окно (например окно браузера), возвращаешься в ZWB и связь как ни в чём ни бывало удаляется. Вот даже видео снял, только без звука, микрофона на работе нет.
https://yadi.sk/i/_JUknAgjqUNuh
Пытался локализовать эту проблему, но не могу ее повторить. Можете приложить проект, в котором это происходило?Были ли еще такие случаи "странного" поведения?
Эх проект удалил уже. Если повторится, обязательно пришлю.
Здравствуйте!
Первые шаги в ЗБДи вопросы:
1.При проверке ошибок не выдает, но в симуляцию не входит.
В чем ошибка?
2. при попытке изменить цвет кнопки(см. переферию "кнопка"), меняется только цвет надписи, а где изменить рамку и заливку?
3. Не понятно, как присвоить изображение для свойства элемента ВКЛ(выкл).
Окно открывается, но оно пустое.
С уважением Сергей.
Цитата: serge197a от 27 марта 2016, 18:05:22
Здравствуйте!
Первые шаги в ЗБДи вопросы:
1.При проверке ошибок не выдает, но в симуляцию не входит.
В чем ошибка?
2. при попытке изменить цвет кнопки(см. переферию "кнопка"), меняется только цвет надписи, а где изменить рамку и заливку?
3. Не понятно, как присвоить изображение для свойства элемента ВКЛ(выкл).
Окно открывается, но оно пустое.
С уважением Сергей.
1. Вы забыли указать ссылку на шаблон.
Читать тут:
http://zentec.ru/forum/index.php/topic,99.msg1084.html#msg1084
2. Контрол "кнопка" - это только скелет. Он настраивается с помощью "натягивания дизайна" - svg изображений.
3. ЗВБ - это система хранения данных. Причем внутри структуры проекта. Поэтому, что бы присвоить, например, кнопке какое-либо изображение - надо сначала импортировать в раздел "документы" необходимые изображения (в конкретном случае в формате SVG)
Что такое SVG читать тут:
https://ru.wikipedia.org/wiki/SVG
Почему именно SVG, смотреть здесь:
https://ru.wikipedia.org/wiki/SVG#/media/File:Bitmap_VS_SVG_ru.svg
Можно брать любой векторный файл и конвертировать его в SVG
Свободных векторных изображений в интернетах - море.
http://www.freepik.com/free-vectors/buttons
http://www.flaticon.com/
http://www.vecteezy.com/free-vector/hvac
Спасибо Mike!
Все получилось, однако в неожиданном месте запускается симуляция.
Если никто не желал, прошу:
- добавить изменение цвета кнопок как надписи.
- выбор цвета при изменении состояния как в надписи.
- добавить элемент типа "bitton" или лампа с возможностью изменения цвета при изменении состояния.
- ну и маленькую бибку с изображениями .svg
Симуляция в правильном месте.
Логика появления кнопки симуляции на экземпляре контроллера очень проста:
Например, у вас есть 3 контроллера, управляющих тремя насосами с помощью ПИ регулятора.
И программа управления для всех трех насосов одинаковая.
Очевидно, что все три насоса потребуют разных настроек (при отладке) Так же может происходить сетевой опрос всех трех экземпляров шаблона одной программы.
Поэтому кнопки отладка/симуляция вынесены в контекстное меню контроллера.
Иллюстрация идеи в одной из тем.
http://zentec.ru/forum/index.php/topic,77.msg742.html#msg742
По свойствам контролов - подумаем как сделать.
Цитата: mike от 28 марта 2016, 07:51:58
Симуляция в правильном месте.
не спорю с местом.
Но в примере шлагбаум нужно бы последний абзац немного раскрыть шире,
т.к. это хоть и логично, но не достаточно очевидно.
(Сам больше всего не люблю писать документацию и инструкцию)
Пример со шлагбаумом немного устарел, так как писался еще для FBDEdit. Так получилось, что документация отстает от разработке. Я думаю в скором времени подтянем описание.
Однозначно подтянем.
Еще бы добровольцев найти(((
Скиньте небольшое задание в личку.
попытаюсь что-нибудь сделать.
Цитата: serge197a от 28 марта 2016, 10:34:02
Скиньте небольшое задание в личку.
попытаюсь что-нибудь сделать.
Спасибо!
Цитата: mike от 28 марта 2016, 09:58:03
Однозначно подтянем.
Еще бы добровольцев найти(((
На что добровольцев ищете? Хочу помочь Вашему проекту. Только в основном у меня идут проекты теплоснабжения и промка. А Z400 не очень-то прикручивается. Жду с нетерпением М120- с легкостью перенесу алгоритмы управления тепловым узлом. Только бы ещё экранчик какой придумать (внешний) для настройки. Если Weintek, так он всю экономию убьет.
Немножко лирики:
У Zentec реально очень качественный софт и очень динамично развивается, спасибо Вам ребята, принимайте мои благодарности!
А теперь про идею. Так как в основном программирую на фбд, то видел очень много разного софта. Хочу подкинуть анализ сравнения с ПО других производителей, и описывать разные удобные фишки. Что вспомню буду постепенно добавлять. Возможно что-то возьмете на вооружение.
Фишка1: У SAIA Burgres есть удобная фишка - ставим фбд на поле и, прихватив его мышкой за угол, растягиваем его, масштабируя до нужного кол-ва входов/выходов.
Я не понял фишку. Поясните с картинками. Масштабируете фбд блок, просто растягивая его размеры ? типа так ?
Цитата: VoronovMaksim88 от 30 марта 2016, 13:08:30
Я не понял фишку. Поясните с картинками. Масштабируете фбд блок, просто растягивая его размеры ? типа так ?
Не совсем так. Не просто масштабируется блок, а увеличивается кол-во входов/выходов. То есть то, что настраивается через свойства блока. Элемент "НЕ" тоже масштабируется, увеличиваются кол-во входов и выходов. Типа так
Да, кстати, действительно удобная фишка.
Разговаривал с боссом. Он сказал, что идея задорная, но парни сейчас заняты вводом графики и проекта 036, поэтому хотели будем реализовывать чуть погодя
Цитата: mike от 30 марта 2016, 19:55:01
Разговаривал с боссом. Он сказал, что идея задорная, но парни сейчас заняты вводом графики и проекта 036, поэтому хотели будем реализовывать чуть погодя
Так это же просто на заметку. Понятно что время на всё нужно выделить. Но если в сторону удобства двигаться всё равно придется когда-то, а там вот оно, уже есть что сделать.
Да я бы не сказал, что это обязаловка какая-то. Действительно удобная штука. У нас витает идея сделать полностью настраиваемый вид блоков/макросов. Вот думаю к этому моменту и приурочим.
z 036 будет мастером?
036 будет полноценным мультипротокольным контроллером. Интересная машина.
Здравствуйте!
По ЗВБ:
Запись в порт из блока W(slave)
происходит при установке En в true по фронту
или в каждом цикле, пока En в true?
rdy и err- только на 1 цикл или тоже можно зафиксировать, как в ФБ чтения?
Согласно документации (советую её прочитать), 1 должна висеть постоянно.
Но я пробовал подавать фронт каждые 0.5 сек и тоже работало.
Максим, я давно это прочитал.
меня интересует конкретный ответ разработчика ФБ,
на конкретный вопрос, а не ваше предположение.
при цикле 100мс- 0.5с- это несколько циклов.
Пардон.
Но всё же прежде чем ответит разработчик, осмелюсь предположить, что если 1 висит постоянно, то и запись будет идти постоянно, а при подаче фронта запись произойдёт однократно.
т.к. вносится много изменений и улучшений, не все документировано.
обычно делают по фронту, а для повторной отправки, нужно сбросить и снова установить.
Если же нет, то тоже не проблема поставить тригер с установкой по фронту и сбросом rdy или Err.
просто хочу знать. чтобы лишнего не городить.
Цитата: serge197a от 05 апреля 2016, 10:11:05
Здравствуйте!
По ЗВБ:
Запись в порт из блока W(slave)
происходит при установке En в true по фронту
или в каждом цикле, пока En в true?
rdy и err- только на 1 цикл или тоже можно зафиксировать, как в ФБ чтения?
Запись в порт произойдет только в том случае, если выставлен сигнал en. То есть его нужно удерживать до тех пор, пока на выходе rdy или err не появится значение. Для упрощения можно установить галочку "Фиксироват En" (она по-умолчанию установлена). В этом случае блок сам зафиксирует en, до тех пора пока на rdy или err не изменят своего значения.
Сигналы rdy и err выдают значение только на одном цикле, фиксировать их нужно самостоятельно.
Все понятно.
Спасибо.
Тогда еще вопрос, что за окно "блокировка".
в FBDEditor его не было. описания в справке пока тоже нет.
Про симуляцию (для модераторов):
1. При попытке вывести значение, для просмотра, с промежуточной переменной или выхода пишет, что двойная запись в переменную.
Хотя только чтение.
2. При нажатии в пустое поле мнемосхемы правой кнопкой мыши включаются
все индикаторы, хотя привязанные переменные в фальсе.
3. Индикаторы и лампы нужно бы подписать по цветам или обозначить цветом в поле выбора. Не понятно, что выбираешь. Достаточно было бы одного индикатора и лампы, но что бы в свойствах можно было выбрать цвет в состояниях 0-1.
4. После добавления подключения к элементу мнемосхемы, не отображается связь.
Т.е. в свойствах связь с переменной и к какой переменной привязан элемент нельзя просмотреть.
Это у вас стабильная версия ?
новейшая
Выложите свой проект, посмотрим в чем проблема
Здравствуйте Артем!
Для отладки я удалял выходные переменные блока
"упр выходом".
Без удаления симуляция не запускалась.
На вход "значение" подавал сигнал с "ползунка", а нес блока "опрос"
Версию для отладки не сохранял.
Выкладываю целый проект.
Я как бы в сообщении выше пытался поделиться своими наблюдениями, для внесения улучшений с Вашей стороны.
(может, что и не правильно применял. не ругайте)
С Уважением Сергей.
По поводу двойной записи в переменную. Она действительно происходит, так как у вас в мнемосхеме подключены для записи значений два выхода DOUT1 и DOUT2, а так же переменная Alarm_Lin. Тут и происходит конфликт, так как не понятно как записать из двух источников. Для переменной выход простой, нужно указать не нулевой приоритет в блоке записи, а для выходов так сделать нельзя. Для них можно сделать буферную переменную.
Посмотреть все подключения мнемосхемы можно в плавающем окне connection (см. во вложении). Оттуда можно перейти как к примитиву, так и к объекту, с которым он связан.
С индикаторами и лампами разберемся, должны отображаться разным цветом, видимо ошибка закралась.
Спасибо. В целом понятно.
Вообще можно было бы без этих переменных,
используя именованную связь.
Хотелось видеть промежуточные значения для отладки.
Наверное это издержки языка фбд.
1. После переходов между окнами программа-макрос-сеть-окно визуализации
пропадают окна "переменные" и "Вывод".
Если закрыть ЗВБ и снова открыть, окна восстанавливаются.
При пропадании окна "вывод", окно "переменные" и нижне расположенные окна с права и с лева от него опускаются ниже видимой части дисплея. Прокрутка и доступ к переменным и элементам меню становится не доступен.
(у меня ноут разр. 1366х768)
2. Крайне не хватает кнопки "Сохранить как", для сохранения различных версий программы и удобства работы из базовой программы, для различных версий оборудования.
Цитата: serge197a от 29 октября 2016, 10:17:46
1. После переходов между окнами программа-макрос-сеть-окно визуализации
пропадают окна "переменные" и "Вывод".
Если закрыть ЗВБ и снова открыть, окна восстанавливаются.
При пропадании окна "вывод", окно "переменные" и нижне расположенные окна с права и с лева от него опускаются ниже видимой части дисплея. Прокрутка и доступ к переменным и элементам меню становится не доступен.
(у меня ноут разр. 1366х768)
2. Крайне не хватает кнопки "Сохранить как", для сохранения различных версий программы и удобства работы из базовой программы, для различных версий оборудования.
1. Какое окно переменных пропадает? Переменные FBD программы? Так они отображаются только вместе с текущей схемой. Видимость остальных инструментальных панелей настраивается для каждого редактор.
По поводу пропадания нижней части окна разберемся, видимо минимальный размер инстр. панелей для FBD-редактора установлен больше, чем у вас вертикальное разрешение.
2. ПО поводу "Сохранить как". На странице "Начало" можно скопировать проект и вставить его в ту же папку . Он будет вставлен с именем , к которому добавлено - (копия)
1. Да, "переменные"пропадали из текущей схемы, баг выскакивает редко, но бывает. При этом окно программы заполняло экран до самого низа.
Возможно, что окно с программой превышало размер экрана ноутбука и
выталкивало окно с переменными ниже видимости.
А из меню "ОКНА" окно "выходы" не вызывается.
его там нет. Так понял, что это окно перемещается во вкладку "диспетчер".
не логично.
2. Сохранить программу получилось, но путь не простой.
т.е. прг нужно сохранять перед началом работы и работать с копией.
А если начинаешь отладку прг, вносишь изменения, то не можешь "сохранить как". Получается или изменения сохранять или исходник терять при откате к началу работы.
Гораздо удобнее иметь возможность сохраняться во время работы, на любой стадии разработки под новыми именами(номерами версий).
2. Согласен с коллегой. Тоже страдаю от нехватки "сохнить как". Зашёл в проект, переделал, думаю надо бы исходник оставить вдруг напортачил. А исходника уже по сути нет.
Сижу и кодю в лоджике макрос "Расписание". А в нём 60 событий. Пишу имена входов "1-й запуск", "2-й запуск", "3-й запуск", "4-й запуск".... Я терпеливый и дописал до 60-ого входа.
А потом вспомнил что в ZWB недавно появилось групповое переименование. Думаю: "Дай-ка попробую". Попробовал и сделал тоже самое переименование входов, но за 5 секунд !
Вывод:
Хвала ZWB !!! И респект программистам !!!
" Сохранить как"
Мы пока думаем, как реализовать контроль версий.
Задача не первоочередная, но важная.
В обозримом будущем порешаем.
Цитата: mike от 30 октября 2016, 21:21:23
" Сохранить как"
Мы пока думаем, как реализовать контроль версий.
Задача не первоочередная, но важная.
В обозримом будущем порешаем.
ДА, ДА, ДА! Контроль версий - GOOD! Очень не хватает. Если в FBDE "сохранить как" можно было, то в ZWB уже нет, и контроля версий нет.
Цитата: Artem от 29 октября 2016, 21:42:16
2. ПО поводу "Сохранить как". На странице "Начало" можно скопировать проект и вставить его в ту же папку . Он будет вставлен с именем , к которому добавлено - (копия)
Нажимаю кнопочку копировать (которая есть при выделении проекта мжду кнопками "переименовать" и "удалить" - ни чего не происходит из видимого. В папке с проектом тоже без изменений. Пока вижу только варианты через экспорт/импорт.
в "обзор проектов" выделить курсором нужный (проект).
справа в выделенном нажать на среднюю иконку "копировать"
(кстати по ней трудно понять, для чего она. Обязательно нужно сразу точно знать их назначение заранее. Не удобно и интуитивно не понятно)
потом слева из главного меню нажать "вставить".
После этого появится копия, которую опять, после выделения курсором, путем манипуляций с левой иконкой , из группы с правой стороны, можно переименовать.
(во! кто чё понял?)
Цитата: serge197a от 16 ноября 2016, 21:49:11
в "обзор проектов" выделить курсором нужный (проект).
справа в выделенном нажать на среднюю иконку "копировать"
(кстати по ней трудно понять, для чего она. Обязательно нужно сразу точно знать их назначение заранее. Не удобно и интуитивно не понятно)
потом слева из главного меню нажать "вставить".
После этого появится копия, которую опять, после выделения курсором, путем манипуляций с левой иконкой , из группы с правой стороны, можно переименовать.
(во! кто чё понял?)
ага вот оно как. как-то даже не на ум не пришло "вставить", что это через буфер обмена работает.
Да, не очевидно.
Кстати, хочу предостеречь пользователей ЯндексДиска. При копировании и вставке проектов, с последующим переименованием, яндекс диск иногда сохраняет в папке проекта и новый проект и старый. При этом в ZWB покажется то название которое раньше по алфавиту.
Выглядит этот так : "фак!!! где мой проект который я пилил 3 часа !!!".
Страшного ничего нет. Спасибо Артёму. Он показал мне что нужно просто зайти в папку с проектом и руками снести старую версию, которую яндекс диск решил не удалять.
Так что будьте внимательны :)
Цитата: VoronovMaksim88 от 17 ноября 2016, 03:41:12
Да, не очевидно.
Кстати, хочу предостеречь пользователей ЯндексДиска. При копировании и вставке проектов, с последующим переименованием, яндекс диск иногда сохраняет в папке проекта и новый проект и старый. При этом в ZWB покажется то название которое раньше по алфавиту.
Выглядит этот так : "фак!!! где мой проект который я пилил 3 часа !!!".
Страшного ничего нет. Спасибо Артёму. Он показал мне что нужно просто зайти в папку с проектом и руками снести старую версию, которую яндекс диск решил не удалять.
Так что будьте внимательны :)
Dropbox рулит. Он ведет историю изменения файла - всегда можно откатиться. Жаль места мало за бесплатно. Если кто знает подобное хранилище с историей файлов поделитесь.