Идея выделить часть кода и сказать : "теперь ты макрос", есть у нас давно. Но не успеваем все реализовывать.
Вид для печати
Идея выделить часть кода и сказать : "теперь ты макрос", есть у нас давно. Но не успеваем все реализовывать.
Тоже пришлось помудрить с ОС-ями. Без указания явного порядка чехарда получалась.
Опцию переноса проекта в макрос жду с нетерпением!
Прошло полгода и очередной сюрприз подкидывает 114-ая. Как обычно бывает - в самый неподходящий момент!
На отладке проекта ... в завершающей фазе ... когда, как говорится, осталось только пыль смахнуть, релюха встала колом.
И проблема зарыта, как мне кажется, не в Лоджике, а именно в ПР114!
После безрезультатного трахания в течение всего дня итоги следующие:
1. Из проекта выделена проблемная зона в виде связки двух макросов:
Вложение 14502
2. Если отключить аналоговые входы, то связка функционирует, как в симуляторе, так и в железке:
Вложение 14503
3.С подключёнными входами перестают работать на железе макросы FSEL1 и FSEL2 в макросе AO8_DISCR( точнее сказать, перестаёт отрабатываться алгоритм обработки состояний входов ИН и Q5):
Вложение 14504
Проблемный проект прикрепляю. Логика работы не такая простая, как в первом случае.
Пробую её описать понятно, выложу позже.
В преддверии появления ПР200 интересует вероятность проявления этого нежданчика и в них.
И будет ли пофиксен, в конце концов, баг на 114-ой платформе ?
Вы бы скрины дали в режиме симуляции и показали ,что не работает и как должно быть (с константами)
Кино снимать не умею - выкладываю в текстовой форме:
Сценарий 1:
1.Исходное состояние: дискретные входы реле неактивны!
2.активируется вход I4 - выход AO8 - 0.1, задержка 10 сек.
3.активируется вход I3, через 5 сек выход LCK макроса AO8_DISCR1 становится неактивным (разрешается работа макроса PRSSR_cntrl1)
4.на выход AO8 AO8_DISCR1 передаётся значение входа ПИД.
5.по окончании работы макроса PRSSR_cntrl1 (достижении уставки УСТ) активируется выход КНЦ, переключающий выход АО8 макроса AO8_DISCR1 в состояние 0,1 и активирующий выход LCK (блокировка макроса PRSSR_cntrl1)
6.активация входа I8 передаёт на выход АО8 макроса AO8_DISCR1 состояние входа ПИД. Деактивация приводит к обратному переключению в 0,1.
Сценарий 2:
п.1-2 - аналогично
3. активируется вход I8, через 5 сек выход АО8 макроса AO8_DISCR переключается в состояние 0,99.
4. активация входа I3 передаёт на выход АО8 макроса AO8_DISCR1 состояние входа ПИД.Деактивация приводит к обратному переключению в 0,99
Проблема заключается в нефункционировании последних пунктов обоих сценариев в железе, хотя в режиме симуляции всё щёлкает совершенно замечательно.
ТЗ - управление парогенераторной установкой - запуск/останов/распределение пара.
Симулятором код отрабатывается адекватно, на железе нет!
Проблема вылезла при отладке макроса AO8_DISCR1. После пятой или шестой (не помню уже, да это и неважно) модификации кода.
Не понятно ещё почему причина, вызывающая сбой, лежит вне этого макроса?
Ещё раз повторяю - сам макрос по себе работает. Клин появляется после подключения аналоговых входов к смежному макросу PRSSR_cntrl1.
Имеется ещё один маленький глючок в другом макросе проекта, но по сравнению с этим - сущая мелочь.
Прежде, чем с ним начать разбираться, хотелось бы прояснить ситуацию с озвученными выше двумя! Тем более, что первый планируется вставить в этот проект - пока не пришла его очередь. Отлаживается основная логика. На 110 драйвер лампы неисправностей внедрён и работает, как часики.
А вот со 114-ой как-то стрёмно пока, ибо где гарантия, что очередная поганка не вылезет завтра/послезавтра?
Блин, что за непруха такая - первый проект на ПР114-ой никак не удаётся запустить :(
Это не ТЗ, это общая фраза.Цитата:
ТЗ - управление парогенераторной установкой - запуск/останов/распределение пара.
Расписывать весь проект не вижу смысла, ибо ...
Помощь нужна не в том, чтобы кто-то сделал мне рабочий проект под кривую ( как мне кажется) платформу!
Был косяк полгода назад. Теперь вылезло два. Как-то беспокойно использовать ПР114. На работающей 110-ке этот проект не воплотить.
Брать ПЛК? - накладно по бюджету/ нет необходимости/мало опыта работы с КДС/ нет уверенности, что не вылезут задиры и там.
Не знаю, как у кого, мне всегда свистка не достаётся и все акулы глухие :mad: - сколько 114-ых коллеги в проектах внедрили - верняк не одну, а у меня на первом уже клина ловит ...
Хозяин - барин, не хотите не надо, я хотел оказать вам помощь.Цитата:
Расписывать весь проект не вижу смысла, ибо ...
Помощь нужна не в том, чтобы кто-то сделал мне рабочий проект под кривую ( как мне кажется) платформу!
Василий, благодарю за оказанное внимание и за желание помочь! Предыдущая проблема была решена именно с Вашей помощью!
Проблемную связку выделил и выложил. Описывать хитросплетения алгоритма клинящего макроса просто нет времени - производство отвлекает постоянно. Упущу какую-нибудь мелочь и Ваше и своё время окажется потраченным впустую.
Хочется-таки, получить ответ Производителя и адекватно работающую аппаратуру!
столкнулся с чем то похожим. В симуляторе все замечательно, в железе как то странно криво и непонятно. Оказалось все дело в входных резисторах. По умолчанию 50 ом, а с прибором шли 180 ом.
И у меня 180ом было
To AVF
Записал ваш проект в прибор. так как описания нет ориентировался на изменение аналогового сигнала по сигналу с вхадо I8. значение меняется (0,1 / 0), т.е. блок Fsel работает.
то ли я проверил или надо на что-то другое смотреть?
To Мордорец
в комплекте с резисторами будем вкладывать бумагу с описанием: назначение, номинал.
Получилось указать номинал и тип резисторов в паспорте в разделе "комплектность"
--- сбоящие сценарии описаны в посте #45
--- может, проблема из-за наличия в реальном приборе сигналов на входах AI9 u AI10?Цитата:
ориентировался на изменение аналогового сигнала по сигналу с вхадо I8. значение меняется (0,1 / 0), т.е. блок Fsel работает.
то ли я проверил или надо на что-то другое смотреть?
Если на вход PRSSR_cntrl подаются константы внутри проекта (второй снимок) :
http://www.owen.ru/forum/attachment....473573&thumb=1
то всё работает.
Попробую в пятницу ещё помучить железяку - пока нет времени - семинар по КДС проходим.
Кстати, а с предыдущим (старттопиковым) случаем удалось разобраться ?
А что ,они у вас на воздухе болтаются?(входа)
Когда не болтаются, сценарии перестают работать.
Если заболтать и подключить константы вместо обработанного аналогового сигнала, всё начинает тикать, как по нотам.
Входа не болтаются подключены к входам. сценарий №2 работает.
я имел ввиду физически входа на ПР подключены к датчику\задатчику или болтаются на воздухе и ловят помехи...
--- отладка проводится на реальном объекте, а не на стенде!
AI9 - сигнал от преобразователя давления нагнетателя парогенераторной установки,
AI10 - сигнал обратной связи от электро-пневмопозиционера - положение задвижки в выходном паропроводе.
На столе испытания проводились с использованием позиционера и РЗУ-420. Никаких проблем выявлено не было - всё вылезло уже на объекте.
В настоящий момент вопрос стоит остро - отопительный период начинается. Внедрение проекта застопорилось. Первая ласточка прилетела полгода назад, теперь вторая - когда ждать следующую?
Убедить руководство оплатить овеновский ПЛК будет сложно - проще будет вытрясти какой-нибудь Сименс или Аллен-Брэдли.
Нам нужно обеспечить бесперебойное и надёжное функционирование производства, а не тратить впустую время на траханье с вылезающими абсолютно не по нашей вине косяками, возмездности за которое ... даже моральной ... ожидать наивно!
Хотелось бы знать, что отвечать на вопросы типа когда будут ликвидированы проблемы?
На перспективу было закуплено несколько экземпляров ПР114 - переложить их в коробку с ёлочными игрушками к Новому году или использовать для отпугивания студентов, или что другое посоветуете?
если есть возможность попробуйте подцепить через ПР-485МИ панель или СМИ1 и поглядеть чего с входами твориться. И посмотрите заодно чего датчики выдают, а то всякое бывает.
первый тоже работает. но у вас я так понимаю на столе тоже работало.
старая проблема пока не решена: как я писал лоджик находится в разобранном состоянии. сейчас мы его собираем в рабочую версию, тогда можно будет смотреть причину несоответсвия работы программы в симуляторе и в приборе.
--- так точно!
--- такой ответ руководство не примет - нужны конкретные сроки.Цитата:
старая проблема пока не решена: как я писал лоджик находится в разобранном состоянии. сейчас мы его собираем в рабочую версию, тогда можно будет смотреть причину несоответсвия работы программы в симуляторе и в приборе.
Необходимо принять решение - ждать или переходить на платформу альтернативного производителя.
собрали Лоджик в промежуточную версию. отдали программистам смотрят. Дня два три этой займет.
Ждём.
Параллельно пробую макрос переписать.
Объект пустил в эксплуатацию в урезанном режиме.
Удалось создать макрос, который также НЕ РАБОТАЕТ, как и реле в симуляторе.
После обеда пробую его оживить и загрузить в реле.
в смысле не работает в симуляторе?
Можно не "оживленный" вариант посмотреть
там в логике пока не всё в порядке ...
Подчистил логику - в симуляторе работает - иду грузить на объект.
Результаты следующие:
1. Полностью перелопаченный проблемный макрос, работающий так же прекрасно (даже ещё лучше) в симуляторе, на приборе работать отказался.
2. Работоспособность обоим проектам удалось придать добавлением FSEL-а в смежном макросе PRSSR_cntrl:
Вложение 14663
минус рабочий день!
Комментарии ... в непечатных выражениях :(
Завтра буду внедрять в тело основного проекта и прогонять на установке.
Какому электронному Богу ставить свечу и молиться? :rolleyes: - мож кто подскажет
Через 5 минут после выключения компьютера понял, что косяк-то МОЙ! Вложение 14664
Все непечатные выражения нашли своего адресата ...
Василий Кашуба, в очередной раз, оказался прав! Его сомнения в правильности кода не давали спокойно спать.
Плюс подстёгивала постоянно подпись capzap-а.
Макрос из вот такого страшного первоначального состояния:
http://www.owen.ru/forum/attachment....4&d=1411473767
Был переработан вот в такое в соответствии с общей топологией проекта:
http://www.owen.ru/forum/attachment....5&d=1412830531
Проглядел, что в программе не запоминалось положение позиционера после достижения уставки регулятора.
На столе при тестировании к позиционеру воздух не был подведён и он не отрабатывал сигналы полного открытия и закрытия ...
Надо теперь разобраться с непонятным промаргиванием одного из выходов - чем займусь сегодня.
Остаются актуальными вопросы из стартового поста!
Грядут плановые модификации текущего проекта и автоматизация системы отопления завода и работы компрессорной станции.
Хочется быть до конца уверенным в обеспечении!
В последний год работы с ОЛ косяков выявлено не было
В ОЛ очень много мелких помарок, однако, про которые смех упоминать.
На них можно закрыть глаза, а на неработающую в железе программу - нет!
Кстати, из свежего : после переноса FSELа в другую часть схемы, он перестаёт работать:
Вложение 14672
Вложение 14673
А вы говорите, что не выявлено ничего.
Ещё вдогонку самый наисвежайший - работающий адекватно в симуляторе макрос при симуляции в теле основного проекта даёт сбой.
"Радует", что ПР-ка также работает со сбоем. Удаляю из него в принципе не нужную парочку таймеров и всё начинает симулироваться одинаково и работать в ПР-ке.
Постоянные пляски с бубном ... постоянные!
Но ,заметьте ,только у вас ....;)
вы не контролируете деление на ноль ,потом в сел идет умножение на ноль и получаем неопределенность .....
Были исправлены блоки TON и TOF.
Прилагаю новую прошивку и программы тестирования блоков (можно сравнить работу старых и новых блоков и симулятора).
Вложение 14684
Вы сделали только для модели с 4мя аналоговыми выходами?
--- нет там ноля, и, соответственно, деления на него. Самое "удивительное", что реле работает - симулятор кривой.
--- надо уметь вскрывать подводные камни ;)Цитата:
Но ,заметьте ,только у вас ....;)
Ещё один свежачок - при оставленном с не отключённым входом мусоре внутри макроса релюшка валяет дурака.