Объявление

Свернуть
Пока нет объявлений.

Отсутствие датчика

Свернуть
X
 
  • Фильтр
  • Время
  • Показать
Очистить всё
новые сообщения

  • Отсутствие датчика

    Добрый день, каким образом детектировать отсутствие аналогово датчика типа 4-20мА или термосопротивление? Из примеров даже без датчиков, дает показания

  • #2
    Добрый день!
    Предлагаю следующий вариант (датчик 4-20):

    1. настройки аналогового входа - тип 0-20мА, диапазон 0..20000 попугаев (фактически мкА)
    2. статус канала (обрыв/перегруз/ошибка чтения) считываем в одну переменную (AI.Err), значение с аналогового канала в другую (AI.mkA), ошибку модудя - в третью (IO_stErr)
    3. выполняем обработку AI.mkA:=AI.Volmin+((AI.Volmax-AI.Volmin)/16)*(20*(AI.mkA)/20000-4) - значение в именованных единицах, где min-max - диапазон датчика
    4. обрабатываем ошибки по условию: ((20*(AI.mkA)/20000)<3.85)OR(AI.Err>0)OR((20*(AI.mkA)/20000)>21.5)OR(IO_stErr), где 3,85 - 21,5 граничные значения выходного сигнала датчика (применены Метрановские сигналы аварии датчика)

    по Err как итог контролируем: обрыв, перегруз, неисправность датчика, связь с модулем и работоспособность субмодуля AI - в общем-то все, что можно

    если хочется без потери точности, можно расширить диапазон (0-20000) до предельной разярядности ЦАП субмодуля

    Комментарий


    • #3
      Сообщение от -Alhimik- Посмотреть сообщение
      Добрый день!
      Предлагаю следующий вариант (датчик 4-20):

      1. настройки аналогового входа - тип 0-20мА, диапазон 0..20000 попугаев (фактически мкА)
      2. статус канала (обрыв/перегруз/ошибка чтения) считываем в одну переменную (AI.Err), значение с аналогового канала в другую (AI.mkA), ошибку модудя - в третью (IO_stErr)
      3. выполняем обработку AI.mkA:=AI.Volmin+((AI.Volmax-AI.Volmin)/16)*(20*(AI.mkA)/20000-4) - значение в именованных единицах, где min-max - диапазон датчика
      4. обрабатываем ошибки по условию: ((20*(AI.mkA)/20000)<3.85)OR(AI.Err>0)OR((20*(AI.mkA)/20000)>21.5)OR(IO_stErr), где 3,85 - 21,5 граничные значения выходного сигнала датчика (применены Метрановские сигналы аварии датчика)

      по Err как итог контролируем: обрыв, перегруз, неисправность датчика, связь с модулем и работоспособность субмодуля AI - в общем-то все, что можно

      если хочется без потери точности, можно расширить диапазон (0-20000) до предельной разярядности ЦАП субмодуля
      Добрый день, при использовании нового SDK , при добавлении корзины и наполнения ее модулями, есть возможность получать флаги отказов каналов.

      Комментарий


      • #4
        Сообщение от Пушкарев Андрей Посмотреть сообщение

        Добрый день, при использовании нового SDK , при добавлении корзины и наполнения ее модулями, есть возможность получать флаги отказов каналов.
        Добрый день!
        Флаги отказов каналов действительно очень удобная вещь, в предлагаемом решении они читаются в AI,Err и "суммируются" с другими возможными неисправностями
        Использование диапазона 0-20 вместо 4-20 мА в настройке типа сигнала субмодуля с последующей обработкой сигнала по условиям "<3.85mA", ">21.5mA" продиктовано статистикой наладки различных ПЛК с различными датчиками 4-20. Часто бывает следующее:

        С одной стороны по РЭ на датчик (для метрана, например) "ток неисправности <=3.6mA / >=23mA". С другой - исправный датчик избыточного давления при небольшом разряжении в трубопроводе будет выдавать сигнал, например, 3,97mA, что в конкретной ситуации нормально, однако некоторые модули аналогового ввода при использовании типа входного сигнала 4-20 мА устанавливают флаг неисправность по условиям "<4mA", ">20mA". Итог - ложное срабатывание по неисправности.

        Комментарий

        Обработка...
        X