Ошибка при частых срабатываниях релейного выхода

Автор angol855, 26 марта 2016, 17:08:50

« назад - далее »

angol855

Есть задача: управлять низковольтным топливным насосом, который требует импульсного питания.  Насос будет работать небольшое время в течении дня в режиме розжига твердотопливного котла. Про механический и электрический ресурс контактов знаю, в выбранном режиме периодической кратковременной работы ресурса контактов реле с избытком хватит на всю жизнь устройства.
В  режиме отладки в контроллере через небольшое время работы контролер высвечивает как Я понимаю аварию и прекращает работу.  Просьба написать как данную функцию отключить.   Данная функция отключения выхода на мой взгляд категорически неприемлема так как если в каких-то режимах это произойдет в технологическом процесс то это может повлечь фатальный результат для устройства, которым контроллер управляет.  Как вариант контроллер и\или программа должна высвечивать ошибку по потенциально частому  срабатыванию реле или например вводить программное ограничение на минимальное время включения и паузу, но просто отключать выход нельзя.
Также режим симуляции в программе некорректно работает, при симуляции в контроллере все Ок. Проект с простейшим алгоритмом прикладываю. Просьба разобраться.




mike


VoronovMaksim88

А у меня вопрос, чем открыть  "Проект.prj" ?
У ZWB формат .exp.
У FBDEditor формат .FBD

angol855

Цитата: mike от 26 марта 2016, 17:34:34
Принято, спасибо.
Будем думать

Спасибо за оперативный ответ, уточните  пожалуйста: как Я понял просто так данную функцию отключения реле  не отключить, этот в обозримом будущем реально сделать? Сколько времени это займет?  Задействовать на данную задачу аналоговый выход с установкой дополнительного  реле не логично + два выхода нужны как аналоговые.

angol855

Цитата: VoronovMaksim88 от 26 марта 2016, 17:41:30
А у меня вопрос, чем открыть  "Проект.prj" ?
У ZWB формат .exp.
У FBDEditor формат .FBD

Этот файл Я взял из директории куда   ZWB сохраняет пользовательскую программу. Файла в формате  .exp. там нет.

VoronovMaksim88


Artem

Цитата: angol855 от 26 марта 2016, 17:08:50
Также режим симуляции в программе некорректно работает, при симуляции в контроллере все Ок. Проект с простейшим алгоритмом прикладываю. Просьба разобраться.
Немного поподробнее опишите, в чем заключается некорректность?
Посмотрел проект и увидел, что в мнемосхеме есть лишние привязки кнопок к универсальным входом. Поэтому в симуляции при нажатии кнопки в Мнемосхеме значение устанавливалось на двух входах одновременно.
Вы это имели ввиду? Или какая другая ошибка?

mike

Цитата: angol855 от 26 марта 2016, 18:24:01
Цитата: VoronovMaksim88 от 26 марта 2016, 17:41:30
А у меня вопрос, чем открыть  "Проект.prj" ?
У ZWB формат .exp.
У FBDEditor формат .FBD

Этот файл Я взял из директории куда   ZWB сохраняет пользовательскую программу. Файла в формате  .exp. там нет.

Не надо так делать.
Почитайте, пожалуйста.


Цитата: mike от 01 мая 2015, 00:15:33
Цитата: serge197a от 30 апреля 2015, 23:33:31
А в начале ни как вход-выход открыть не мог. Оказалось окно для элементов еще вызвать нужно.

Тут главное понять и проникнуться идеей ZWB.
ZWB - это не просто очередная среда разработки, это целая система, это хранилище ваших идей.
Система хранит ваши программы для контроллеров как шаблоны. Это очень удобно.
Программа, написанная для снятого с производства Z401 будет гарантированно исполняться например, на M100. Но у этих контроллеров разный набор периферии. И если хранить набор периферии в самой программе, то при смене целевого контроллера может произойти путаница. А так все на своих местах: шаблоны отдельно, входы/выходы отдельно.

Цитата: mike от 01 мая 2015, 00:48:10
Цитата: serge197a от 30 апреля 2015, 23:33:31
не хватает кнопки "файл", почему вам она показалась лишней?
А нет в системе никаких внешних файлов.
Это еще одна идея, реализуемая в ZWB.
Ваша задача только указать место хранилища всех ваших проектов. И с этого времени ZWB будет сам создавать/удалять/перемещать ваши файлы. То есть ZWB создает свою файловую систему поверх ФС той Операционной Системы в которой он работает. Соответственно, работа с файлами и целыми проектами возможна только через импорт/экспорт.

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

*Клиент Вася Иванов
  **Объект1
  **Объект2
  **Объект3

*Клиент Пётр Абрикосов
  **Объект1
  **Объект2

Внутри проекта вы можете вести всю необходимую документацию (см. снимок 2)
Причем импортировать можно как одиночные файлы, так и целые папки.

Импортированные файлы можно просмотреть либо встроенными средствами (см. снимок 3),тогда файл откроется в табе, что очень удобно, либо внешними программами (указываются в настройках проекта)

ZWB сам сохраняет ваш проект в место хранения. Он создает автоматическую единообразную структуру ваших данных от проекта к проекту. Таким образом не будет больше разбросанных файлов по диску и когда нужно будет вспомнить проект пятилетней давности - вы точно знаете где его искать.
Основная идея ZWB именно в этом! Вся работа - в порядке и под рукой.

angol855

Цитата: Artem от 26 марта 2016, 20:57:11
Цитата: angol855 от 26 марта 2016, 17:08:50
Также режим симуляции в программе некорректно работает, при симуляции в контроллере все Ок. Проект с простейшим алгоритмом прикладываю. Просьба разобраться.
Немного поподробнее опишите, в чем заключается некорректность?
Посмотрел проект и увидел, что в мнемосхеме есть лишние привязки кнопок к универсальным входом. Поэтому в симуляции при нажатии кнопки в Мнемосхеме значение устанавливалось на двух входах одновременно.
Вы это имели ввиду? Или какая другая ошибка?

Я имел в виду, что неккоректно отображаются текущие значения на выходах элементов, которые не соответствуют тому что должно быть исходя из логики работы.   Насколько Я понял это обусловлено тем, что задан очень маленький временной интервал и программа не успевает корректно все отображать. То есть когда Я пытаюсь получит на выходе импульс с периодом порядка 1 секунды и меньше  путем двух таймеров и триггера программа не успевает его корректно отобразить тем более не совсем понятно как можно отобразить импульс в один машинный такт.  Если задавать период уже порядка трех секунд все становиться логичнее, но импульса на выходе таймера  не видно.   Насколько Я понимаю Я просто ожидал большего быстродействия. В принципе того, что есть достаточно, но желательно все таки импульс с таймера как-то увидеть.
Насколько Я понял есть специальный блок ШИМ, описание которого Я не нашел. Напишите пожалуйста где посмотреть его описание или напишите как он работает и что задают его два входа. 

VoronovMaksim88

#9
Если не писать никаких своих маросов, то в режиме в режиме ШИМ может использоваться только аналоговый выход. Вход U это скважность ШИМ вход Т - период. Подробнее пока не разбирался. Если надо макрос ШИМ для дискретных выходов,могу поделится, правда он пока у меня примитивный, но работает.

Кстати идея для разработчиков: если уж настройку Uin вынесли в дерево контроллера, то логично и настройку Aout туда же вынести.

mike

Цитата: angol855 от 26 марта 2016, 17:08:50
Есть задача: управлять низковольтным топливным насосом, который требует импульсного питания.  Насос будет работать небольшое время в течении дня в режиме розжига твердотопливного котла. Про механический и электрический ресурс контактов знаю, в выбранном режиме периодической кратковременной работы ресурса контактов реле с избытком хватит на всю жизнь устройства.
В  режиме отладки в контроллере через небольшое время работы контролер высвечивает как Я понимаю аварию и прекращает работу.  Просьба написать как данную функцию отключить.   Данная функция отключения выхода на мой взгляд категорически неприемлема так как если в каких-то режимах это произойдет в технологическом процесс то это может повлечь фатальный результат для устройства, которым контроллер управляет.  Как вариант контроллер и\или программа должна высвечивать ошибку по потенциально частому  срабатыванию реле или например вводить программное ограничение на минимальное время включения и паузу, но просто отключать выход нельзя.
Также режим симуляции в программе некорректно работает, при симуляции в контроллере все Ок. Проект с простейшим алгоритмом прикладываю. Просьба разобраться.

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