С уважением, Ревака Юрий.
Инженер группы технической поддержки компании "ОВЕН"
e-mail: yu.revaka@owen.ru
Шаблон описания ошибки ПР или OL http://ftp-ow.owen.ru/softupdate/OWE...s/Shablon.docx
Видео уроки по ПР200 и OWEN Logic http://edu.owen.ru/series/pr200_rev/
Другие видеоролики по тематике ПР https://www.youtube.com/channel/UCj4...H5H3d_t6iDlQOQ
Очень убивает отсутствие возможности запуска кода по времени.
К примеру, если время от до, то выполняем код. Это обычно происходит на стандартном языке программирования.
В Owen Logic эта функция типа есть, но по факту её НЕТ.
Точнее так, этот кусок кода все равно считается, а на выходе выдает НОЛЬ.
К примеру, нужно посчитать контрольную сумму параметров. Делается это ночь, когда нагрузка минимальная.
Есть макрос. Есть ограничение по времени.
Но макрос все равно считается ВСЕГДА, а в конце расчётов выдаёт ноль.
Специально проверял много раз.
Когда ресурсов эта особенность ела мало, закрывал глаза, а когда постоянно делает тяжёлый расчёт, да к тому же который в текущее время просто не нужен - уже сильно напрягает.
У кого какие есть решения, мысли на этот счёт.
Я понимаю, что это можно сделать через
Выбор (SEL, fSEL)
но если входных параметров в макрос 28 - уже получается огород городим.
В общем, как заставить НЕ ВЫПОЛНЯТЬСЯ код, если условие = 0!!!
У меня все равно промежуточные значения считаются, даже если уже явно понятно, что условие не сработало.
Вот пример
005.PNG
Ранее в одной из тем обсуждались главные отличия ПР от ПЛК, это как раз и называлось главным отличием(в ПР всегда выполняется весь код), если у Вас цель такая(не представляю зачем), то по-моему не верно оборудование выбрано!
Последний раз редактировалось Сергей0308; 14.08.2018 в 18:45.
Если проблему можно решить за деньги, это не проблема, это расходы. Бог каждому посылает проблемы по его силам. Так что одно из двух. Либо ты можешь-таки
справиться с проблемами, либо это не твои проблемы.
Попытка не пытка.
Можно что то и придумать.
В лоб не получилось. Жаль конечно. Но не сказать, фатально.
ПЛК за 19-25 т.р - это не сектор моих клиентов.
Для меня за 25 т.р. проще уже собрать систему на альтернативных составляющих, где функционала и возможностей больше.
Я считаю, что у ОВЕН ПР200 это самый идеальный продукт на сегодняшнем рынке.
Ничего похожего нет ни кого из конкурентов. По всему остальному - вопрос уже предпочтения.
При наличии фантазии любую проблему можно минимизировать.
Буду фантазировать с ПР200.![]()
Ранее в какой-то теме довольно долго "очередь" обсуждали: http://www.owen.ru/forum/showthread....17153&page=218
Вкратце суть такова: появляются по очереди сигналы на входах, в той же последовательности активируются соответствующие входам выхода, включено всегда не более одного выхода, например включаются по очереди входа 1, 3, 5, 7 - включается 1 выход, когда 1 вход выключается, включается 3 выход и так далее, проблема была в том, что сигнал на входах должен был держаться до включения соответствующего ему выхода, иначе логика нарушалась, короче доработал схему, теперь логика не должна нарушаться в этом случае, просто соответствующий входу выход выпадает из очереди, может кто придумает проще, будет интересно посмотреть:
Очередь_8.1.PNG
https://yadi.sk/d/_GL1wswM3aYbjU
Немного "подрихтовал":
Очередь_8.2.PNG
https://yadi.sk/d/J6Fzww5s3aZF7Q
Без проблем можно расширить до 32 входов-выходов! ПР с максимально возможным количеством модулей расширения по внутренней шине имеющихся на данный момент в продаже имеет только 28 входов, считая и аналоговые, выходов и того меньше!
Или так в виде готового макроса:
Макрос очередь 8 Х 8.PNG Макрос очередь 8 Х 8_1.PNG Макрос очередь 8 Х 8_2.PNG Макрос очередь 8 Х 8_3.PNG Макрос очередь 8 Х 8_7.PNG Макрос очередь 8 Х 8_4.PNG Макрос очередь 8 Х 8_5.PNG Макрос очередь 8 Х 8_6.PNG
Вроде работает как задумано, но в симуляторе невозможно посмотреть работу макроса DTRIG(входит в состав), всякие настройки делал, но сразу перескакивает минимум на 16 циклов и на выходе значение мгновенно изменяется если все входа включить, а должно постепенно с каждыми двумя циклами добавляться один вход(его весовой коэффициент), короче, лыжи не едут и всё, если в симуляторе не смотреть, то всё работает как задумано!
https://yadi.sk/d/nn6fHj3L3aa54G
С симулятором разобрался, сделал время цикла = 1 мс и всё нормально запоказывало, был не прав, исправлюсь!
Надеюсь всем понятно как это просто устроено, имею ввиду алгоритм работы?
Еще усовершенствовал(стала быстрей в 2 раза), теперь опрос всех входов(8) за 8 циклов программы и сделал совсем "предсказуемой", то есть если включатся сразу несколько входов(что на практике маловероятно), то младший вход(по номеру и весовому коэффициенту в программе) имеет приоритет, например, если одновременно включатся все 8 входов, то активируется первый выход, когда первый вход выключится, включится второй выход и так далее, ранее такого не было и определялось случайно в зависимости от значения соответствующего счётчика на момент включения, сейчас счётчик "CTMU" сбрасывается и при изменении состояния входов начинает отсчёт с "0", короче, практически все макросы переделал(что входили в состав), проще они не стали, но стали, на мой взгляд, более "правильными", раньше боялся так сделать(перестраховывался), но проверил, вроде всё работает! Вот ссылка, выложить программу невозможно: https://yadi.sk/d/wP2TP7xI3acPT3
И хотел предупредить макросы изменил из преведущего проекта, а не создал новые, поэтому они одновременно в один проект не влезут, будут заменяться!
Макрос очередь 8 Х 8_2_2.PNG Макрос очередь 8 Х 8_7_2.PNG Макрос очередь 8 Х 8_4_2.PNG Макрос очередь 8 Х 8_6_2.PNG
Вот ещё макрос очередь нарисовал на 32 входа-выхода:
Макрос очередь 8 Х 8_6_3.PNG
Например так можно индицировать наличие и номер аварии в порядке их поступления при квитировании:
Пример Аварии.PNG
Вот, ещё модернизировал:
RAMP_BIT.PNG
И ещё:
1_BIT.PNG
Последний раз редактировалось Сергей0308; 12.05.2019 в 03:15.
Если проблему можно решить за деньги, это не проблема, это расходы. Бог каждому посылает проблемы по его силам. Так что одно из двух. Либо ты можешь-таки
справиться с проблемами, либо это не твои проблемы.
Добрый день.
Господа-товарищи, имеет ли такая конструкция право на жизнь ?
Суть-то в чём и чем это лучше того, что ранее предлагалось? Вот например давно известен 32 битный счётчик, но он считает через цикл! Для "ускорения" процесса счёта в 2 раза, чтобы значение счётчика изменялось каждый цикл я придумал свой счётчик и неоднократно его выкладывал(имеется в посте #333 текущей темы)! У Вас в чём изюминка?
Последний раз редактировалось Сергей0308; 13.09.2018 в 18:44.
Если проблему можно решить за деньги, это не проблема, это расходы. Бог каждому посылает проблемы по его силам. Так что одно из двух. Либо ты можешь-таки
справиться с проблемами, либо это не твои проблемы.
Newcomer работает как запланировано и вас устраивает почему нет ? но лучше имхо делать через R-Trig (или F-Trig) в зависимости на каком фронте должен быть счет мне кажется.