Показано с 1 по 10 из 10

Тема: архив не записывается в файл при отключении питания!

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    По умолчанию

    да, но в архиве огромное количество записей. энергонезависимой памяти может не хватить...

  2. #2

    По умолчанию

    Причем, не понимаю, почему после отключения питания программа в ПЛК не работает хотя бы N-й промежуток времени. Читаю про ПЛК-100 на сайте www.owen.ru:
    Конкурентные преимущества ПЛК 100 встроенный аккумулятор, позволяющий «пережидать» пропадание питания – выполнять программу при пропадании питания, и переводить выходные элементы в «безопасное состояние».
    В руководстве к ПЛК-100 заявлено: при случайном отключении основного питания контроллер переходит на аварийное питание и сохраняет промежуточные результаты вычислений и работоспособность интерфейсов Ethernet и Debug RS&232 в течение 10 минут.
    Светодиодная индикация и выходные элементы контроллера при этом не запитываются и не функционируют. При включении основного питания во время работы на аварийном питании контроллер сразу приступает к выполнению пользовательской программы, не тратя времени на загрузку ядра CoDeSys и сохраняя все промежуточные результаты вычислений.

    Так объясните, пожалуйста, программа будет работать N-е время после выключения питания? Например, у меня выставиться флаг flag в true после отключения питания, если он в разделе описания не объявлен как retain переменная?
    И что подразумевается под выполнением программы после выключения питания?

  3. #3

    По умолчанию

    Это значит ровно следующее:
    В контроллере встроен аккумулятор. При пропадании питания он на какое то время обеспечивает работу:
    Ethernet, 232 и обсчет программы (сохраняется в ОЗУ). Ни выхода ни что либо еще не питается - потребление большое.
    В момент, когда аккумулятор понимает, что все - записывает Retain.
    В случае, если ресурс аккумулятора полный, и он полностью заряжен - программа до перезагрузки ПЛК может "крутиться" в контроллере до 10 мин.
    Если во время, пока аккумулятор держит питание вернуть, то контроллер не будет перезагружаться и начинать с начала, а продолжит с запомненного места.

  4. #4

    По умолчанию

    Цитата Сообщение от JuLi Посмотреть сообщение
    да, но в архиве огромное количество записей. энергонезависимой памяти может не хватить...
    Архив нужно сбрасывать буферами во флэш во время нормальной работы. Держать в памяти можно только текущий буфер, который при пропадании питания поместиться в retain область микропрограммой самого контроллера. Проблема в том что скорость физической записи во флэш невысока, и при записи будет конкурировать ваша программа и прошивка контроллера (которая победит! гы ))) Кроме того, в реальной эксплуатации, часто аккумулятор не успевает зарядиться за время появления питания для обеспечения достаточного времени сохранения данных, и при последовательных выключениях будет сбой архива.
    И еще, это не комп, не пытайтесь дописывать данные в файл, весь файл будет перезаписан физически - это время и ресурс флэша - пишите маленькие файлики. Не пытайтесь придумывать динамические имена файлам - очень легко потерять текущий дескриптор и забить всю память флэша.

Ваши права

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