А как работает собака в ПЛК100?
Продолжение.
Может ли кто-то подсказать, как именно перезапускает ПЛК сторожевой таймер?
Я ловлю пропадание питания и по нему ухожу в бесконечный цикл, из которого вотчог сбрасывает ПЛК. При этом почему-то переменные инициализируются как-то... кривовато. Например, в упор устанавливается в единицу (1 Гц) частота Генератора по дискретному выходу номер 6.0 (в Конфигураторе подмодуль Генератор).
Тут и мои косяки могут быть, не спорю. Но все же - как именно сбрасывает вотчдог? Идет ли после этого неявная инициализация переменных?
Спасибо!
Вложений: 2
Каково отличие Сброса ОНЛАЙН от включения питания?
Итак, работоспособность ПЛК восстаноовлена.
Снова вернемся к вопросу рестарта программы. Сброс неодинаков от меню СБРОС отладчика и от включения питания
В приложении проект. Желающие могут его развернуть и проверить, мож у меня руки кривые...
Опишу кратко для тех, кому влом запускать проект.
Вложение 7598
В проекте запускается аппаратный генератор на дискретном выходе 6.0. Частота генератора должна быть 10 Гц, меандр.
В Конфигураторе создал Генератор с частотой Out11Freq, дьюти-сайклом Out11Duty и непрерывной генерацией.
В программе есть начальный участок, который устанавливает частоту генератора 10 Гц. Этого должно быть достаточно, если никто больше к переменной Out11Freq не обращается?
Компилируем, грузим проект. Запускаем, видим частоту 10 Гц. Можно и без осциллографа - в отладчике при работе ОНЛАЙН видно, что переменная Out11Freq таки равна 10.
Сброс от Кодесиса ничего не меняет, все работает прекрасно.
А теперь сброс кнопкой на ПЛК. И, о-па! Частота стала 1 Гц. Это видно и осциллом, и по значению переменной Out11Freq, если сейчас подключиться отладчиком. Она равна 1, то есть 1 Гц.
Такое же поведение при выключении питания и повторном включении.
Я так понимаю, что инициализации переменных не произошло, переменная Initialized не стала ЛОЖЬю, начальный участок программы не прокрутился... Или где? Где рыться. чтобы понять разницу в сбросах от системы отладки и от выключения питания?
Причем, что прискорбно, именно сброс от выключения питания дает плохой (для моей задачи) результат. Бог с ней, с системой отладки, но как же работать с непонятной мне инициализацией переменных?