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

Тема: CODESYS V3.5. Визуализация

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

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

    По умолчанию

    Цитата Сообщение от Евгений Кислов Посмотреть сообщение
    А зачем тогда вообще AlarmManager?
    Обычная таблица дает полный контроль из кода.
    Возможно вы и правы, наверно не хочется думать о энергонезависимом хранении, а главное поддержать, хоть и кривые но стандарты.
    Просто я стал замечать, что большинство аварий копируются из проекта в проект, но приходится тексты сообщений править под каждый датчик и т.д. А в коде можно взять стандартную часть фразы, например "Обрыв датчика" и прицепить к ней название датчика из списка текстов с названиями датчиков и провести всю эту операцию в цикле. Можно конечно подумать в сторону библиотеки CmpDynamicText но еще надо проверить, а будут ли тексты динамически изменяться в AlarmManager после подгрузки новых текстов из кода.
    Еще одна задача, чтобы не дублировать проверки - это получить состояние конкретной аварии из списка AlarmManager. Пока приходится в коде дублировать проверку условия из настройки Alarma если при наступлении аварии надо что-то сделать. Пример работы с алармами использует фильтрацию аварий и пока я не понял как получить конкретную аварию не выделяя ее в отдельную группу или отдельным приоритетом. Получается код условия меньше строк занимает чем фильтрация через Alarm Manager Interfaces.
    Последний раз редактировалось RV9WFJ; 16.04.2019 в 18:59.

  2. #2
    Супер Модератор Аватар для Евгений Кислов
    Регистрация
    27.01.2015
    Адрес
    Москва
    Сообщений
    12,310

    По умолчанию

    Цитата Сообщение от RV9WFJ Посмотреть сообщение
    не хочется думать о энергонезависимом хранении
    В СПК1хх [М01] 64 Кб Retain, в следующих контроллерах должно быть не меньше.
    Если предположить, что одна тревога занимает 10 байт (метки времени появления/квитирования/исчезновения, DWORD на ID и DWORD на регистр статуса), то хранение 500 тревог займет < 10% Retain.
    Можно по факту возникновения сразу писать тревоги на USB/SD, а в Retain хранить историю за последнюю неделю.

    Можно конечно подумать в сторону библиотеки CmpDynamicText но еще надо проверить, а будут ли тексты динамически изменяться в AlarmManager после подгрузки новых текстов из кода.
    Будут, проверял.

    Еще одна задача, чтобы не дублировать проверки - это получить состояние конкретной аварии из списка AlarmManager. Пока приходится в коде дублировать проверку условия из настройки Alarma если при наступлении аварии надо что-то сделать
    Я делаю так: условие аварии собираю в коде. Для каждой аварии получаю переменную типа BOOL.
    Все условия тревог делаю дискретными, и к ним привязываю эти переменные.
    Таким образом, дублирования условий не происходит.

    Также список тревог с их настройками можно экспортировать/импортировать в .csv - зачастую проще в нем руками внести изменения.

Похожие темы

  1. Визуализация CoDeSys
    от Newcomer в разделе ПЛК1хх
    Ответов: 4
    Последнее сообщение: 24.04.2018, 15:26
  2. Визуализация в CoDeSys
    от Newcomer в разделе ПЛК1хх
    Ответов: 15
    Последнее сообщение: 10.05.2017, 21:11
  3. Визуализация CodeSys
    от DanJer в разделе ПЛК1хх
    Ответов: 2
    Последнее сообщение: 30.08.2012, 04:53
  4. Визуализация Codesys
    от Slipknot в разделе ПЛК1хх
    Ответов: 9
    Последнее сообщение: 31.10.2008, 11:36
  5. Визуализация в CoDeSys 2.3
    от Slawa в разделе ПЛК1хх
    Ответов: 10
    Последнее сообщение: 29.08.2008, 18:30

Ваши права

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