Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 10 из 12

Тема: ПЛК при пропадании питания

  1. #1
    Пользователь
    Регистрация
    10.01.2007
    Адрес
    Красноярск
    Сообщений
    138

    По умолчанию ПЛК при пропадании питания

    Существует ли возможность сразу отключить работу ПЛК при пропадании питания и не тратить ресурс аккумулятора? Пробовал функции библиотеки SysLibPlcCtrl.lib, но она не поддерживается.

  2. #2

    По умолчанию

    Используйте модуль статистика - там есть признак питания. Перезагрузить можно вызвав вечный цикл. Сработает охранный таймер

  3. #3
    Пользователь
    Регистрация
    18.01.2008
    Адрес
    Екатеринбург
    Сообщений
    91

    По умолчанию

    тоже интересует этот вопрос. при тестировании часто не требуется, чтобы после отключения питания тратился ресурс аккумулятора.

  4. #4

    По умолчанию Инструкция

    1) Добавьте охранный таймер - нужное Вам значение в PLC_Configuration - корень - Module Parameters - Max Cycle Legth или , если используете задачи, в конфигураторе задач - Watchdog )
    2) Добавляете модуль статистика выбираете четвертую переменную - Power Status и привязывете к IEC адресу переменную pwr
    3) в основном цикле плк вызываете следующий код WHILE NOT pwr DO ; END_WHILE
    При пропадании питания значение переменной pwr будет равна false. ПЛК впадет в "вечный" цикл и охранный таймер сработает. При перезагрузке от батарейного питания ядро ПЛК не загрузится и соотетственно аккумулятор не будет разряжаться для поддержки питания ARM, RAM и Ethernet

  5. #5
    Пользователь
    Регистрация
    18.01.2008
    Адрес
    Екатеринбург
    Сообщений
    91

    По умолчанию

    спасибо, теперь все понятно

  6. #6
    Пользователь
    Регистрация
    10.01.2007
    Адрес
    Красноярск
    Сообщений
    138

    По умолчанию

    В случае использования такого способа сохрание переменных Retain гарантируется?

  7. #7

    По умолчанию

    Да.
    Переменные записываются 2 раза.
    Первый при пропадании внешнего питания.
    Второй при выключении встроенного аккумулятора.
    Т.о. состояние Retain на момент выкл. питания будет сохранено. Однако все данные, к-е Вы положите в retain переменные ПОСЛЕ выключения внешнего питания, если сделать бесконечный цикл, будут потеряны.

  8. #8
    Пользователь
    Регистрация
    10.01.2007
    Адрес
    Красноярск
    Сообщений
    138

    По умолчанию

    А на что вообще, кроме продолжительности работы после отключения питания, влияет заряд аккумулятора?
    Предположим, что аккумулятора вообще нет. В этом случае свои функции по сохранению переменных контроллер выполнять будет? Успеет ли на заряде емкостей источника питания.
    Я к чему. Пользователи когда-то столкнутся с тем, что аккумулятор потеряет свою емкость, и есть вопрос по сохранению работоспособности контроллера.

  9. #9

    По умолчанию

    1. При отсутствии аккумулятора записи данных не будет. К сожалению, за мощный процессор и много памяти надо чем-то платить.
    2. Деградация аккумулятора. Процесс неизбежный, но не надо драматизировать. На запись данных уйдёт 1 секунда, т.е. ~150 мА*ч/120 мА*сек=0,8% емкости аккумулятора. До такой степени аккумулятор деградирует не скоро.
    Как не скоро?
    Пусть каждый год аккумулятор теряет 20 % емкости (очень пессимистично), тогда до 5 % емкости (с 6-ти кратным запасом на неблагоприятные условия эксплуатации) от деградирует за (log по основанию 0.8) от (0.05) лет, т.е. за 13 лет.
    К этому времени или эмир сдохнет, или ишак или аккумулятор поменяют. Он совсем не эксклюзивный.

  10. #10
    Пользователь
    Регистрация
    10.01.2007
    Адрес
    Красноярск
    Сообщений
    138

    По умолчанию

    1) Добавьте охранный таймер - нужное Вам значение в PLC_Configuration - корень - Module Parameters - Max Cycle Legth или , если используете задачи, в конфигураторе задач - Watchdog )
    2) Добавляете модуль статистика выбираете четвертую переменную - Power Status и привязывете к IEC адресу переменную pwr
    3) в основном цикле плк вызываете следующий код WHILE NOT pwr DO ; END_WHILE
    При пропадании питания значение переменной pwr будет равна false. ПЛК впадет в "вечный" цикл и охранный таймер сработает. При перезагрузке от батарейного питания ядро ПЛК не загрузится и соотетственно аккумулятор не будет разряжаться для поддержки питания ARM, RAM и Ethernet
    Небольшое уточнение. Значение Power Status обновляется только после первого скана выполнение программы. Поэтому код
    WHILE NOT pwr DO ; END_WHILE
    не будет работоспособен, если его выполнение будет в первом же скане.

    Спасибо за ответы.
    Последний раз редактировалось SergeyNG; 19.02.2008 в 04:52.

Страница 1 из 2 12 ПоследняяПоследняя

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •