PDA

Просмотр полной версии : поведение плк-100-220 после пропадания/появления питания



probe
01.09.2009, 20:01
юзаю данный контроллер впервые - первый проект и все такое...

простите, но что за ерунда такая происходит:
- после обесточивания контроллер явно что-то еще в себе делает - у меня по проекту на одном шаге "пикалка" включается, так вот она включается и пикает, когда контроллер уже несколько секунд как обесточен и уже давно-давно отключились его выходные реле и пропали все входные сигналы.
- после возобновления подачи питания через несколько секунд после отключения контроллер не инициализируется, а начинает продолжать программу с места на котором его отключили + те участки программы, которые он успел выполнить в обесточенном состоянии.

пока писал - обнаружил, что выключенный контроллер вот уже несколько минут (!) лежит обесточенный и каждые 20сек пикает согласно заложенной программе, потом умирая запищал протяжно и затих...

вопрос первый, бестактный - это нормально?

вопрос второй, практический - что нужно сделать, чтобы контроллер после повторного включения через 1-2сек после пропадания питания гарантированно инициализировался и начинал программу сначала?

magirus
01.09.2009, 20:14
встроенный акумулятор. все нормально.
использовать в "PLC configuration" модуль "statistic" бит "Power status".
инициализировать им переменные....

probe
01.09.2009, 20:59
встроенный акумулятор. все нормально.
использовать в "PLC configuration" модуль "statistic" бит "Power status".
инициализировать им переменные....

А где это? Как это по-русски? В закладке "Ресурсы"->"Конфигурация ПЛК"? Не вижу ничего такого...

ЗЫ. Спасибо - модуль Statistic нашел, подключать надо оказывается...
А что этим битом инициализировать, если прога крутится как ни в чем ни бывало без питания?
Или на каждом шаге везде и всегда проверять его состояние?


Тут вдруг еще одна засада вылезла - слетело считывание состояния дискр/входов, ни лампочки не зажигает ни в проекте не видит... Думал в проекте что-то испортил - взял предыдущую раб/версию, тоже самое :mad: Сбросил в завод/настройки - перешил, один черт. Завтра второй контроллер на работе попробую - у меня их три, еще на два дня работы наверное хватит...

Возможно это совпадение, но считывание входов слетело после пользования EasyWorkPLC и установки в нем времени и даты на контроллере.
В общем теперь не работает. А так все хорошо начиналось :(

magirus
01.09.2009, 22:15
или на каждом шаге везде и всегда проверять его состояние?я проверяю, (может есть и лучше способы)

а что этим битом инициализировать, если прога крутится как ни в чем ни бывало без питания?
ну например поставить его перед всеми условиями....
то есть если не выполняется- ни одна ветка програмы не стартует.
по второй части - может лучше сначала дождаться ответов сотрудников овен?

probe
01.09.2009, 22:25
я проверяю, (может есть и лучше способы)

ну например поставить его перед всеми условиями....
то есть если не выполняется- ни одна ветка програмы не стартует.
по второй части - может лучше сначала дождаться ответов сотрудников овен?

Пасиб, понятно. Но как-то все это не айс - обвешивать всю прогу контролем этого бита. Было бы лучше если эта фича конфигурируемая была, ибо во многих случаях от нее больше проблем чем пользы. И отлаживать контроль этого бита толком как я понимаю не получится, прога от аккумулятора-то еще работает - а интерфейсы-то нет :)

Ну а лучше способ - как мне кажется, это вывести аппаратный сброс наружу, прицепить его к контактам внешнего реле 220В, которое будет удерживать сброс замкнутым пока нет питания, а после подачи - размыкать. Сымитировал это пока кнопкой - вроде работает, но лучше сделать корректный импульс сброса при подаче питания, осталось только сброс вытащить наружу.

magirus
01.09.2009, 22:32
хм...
ну сделай отдельный фб выполняющийся только при повер офф....
от сбросит все переменые в состояние по умолчанию....
(я далеко не ас в програмированиии контролеров, так, мелкие проекты для собственых нужд...)

probe
01.09.2009, 22:54
хм...
ну сделай отдельный фб выполняющийся только при повер офф....
от сбросит все переменые в состояние по умолчанию....
(я далеко не ас в програмированиии контролеров, так, мелкие проекты для собственых нужд...)

Похоже так и придется, ибо обесточенный контроллер даже аппаратным сбросом заткнуть невозможно - пищит и пищит, достал! Только молотком наверное :)

AVit
02.09.2009, 06:07
Было уже на форуме - поищи...
техподержка советовала по биту Power status вводить контроллер в бесконечный цикл при котором он уходит в перезагрузку, а так как питания нет то он больше стартует.
помоему и кусок кода еще приводился...

Малышев Олег
02.09.2009, 09:02
Вообщем если не нужно ничего делать после отключения питания
делаем так. Создаем модуль статистики и там на нужном месте переменную power.

while not power do ; end_while;

probe
03.09.2009, 06:28
Спасибо все ответившим - сделал, в общем-то не так это сложно оказалось, как казалось.

Если бы с этим еще помогли - http://www.owen.ru/forum/showthread.php?t=5932

Николаев Андрей
04.09.2009, 08:34
Ну вообще работа контроллера при пропадании питания - очень полезная вешчь, как и возможность с этого же аккумулятора переводить выхода в безопасное состояние. Особенно в условиях нашего электропитания...
Естественно, что некоторые дополнительные телодвижения это вызывает, и в ПЛК110 мы учли это, и дали возможность выставлять время работы после пропадания питания.
Техподдержка не рекомендует устраивать зависания программы и пересбросы - надо обрабатывать это событие программно (Мое ИМХО). Такие вещи предлагают наши программисты:cool: