Раздел "Объекты" - Настройка аналогового ДУТ 

Page / - Изменено Илья Крайнов в 2022/08/10 10:27 

Настройка аналогового ДУТ 
Изменено Илья Крайнов
в 2022/08/10 10:27

Оглавление

Особенность аналоговых датчиков состоит в том, что при отключении и включении зажигания по параметру, с которого снимаются показания, несколько секунд поступают сообщения с ложными данными, пока не будет достигнута нужная величина. Необходимо отсечь период с ложными данными.

В случае, если данные с аналогового датчика поступают по параметру in* или adc*, где * номер входа, то можно использовать их напрямую. Иначе необходимо предварительно создать датчик с типом Простой, типом датчика Произвольный, типом входа Аналоговый. Указываем номер входа, по которому поступают данные. Также указываем псевдоним, в нашем случае fuel.

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

В формуле создаётся функция, которая проверяет наличие двух условий: включенного зажигания и скорости, выше заданной. Функция позволит отсечь период, когда в аналоговом датчике поступали ложные значения. Справочник по функциям.
if(ign and ((prev(speed)+speed)/2)>14,adc2,0)
здесь ign - псевдоним датчика зажигания, ((prev(speed)+speed)/2)>14 - проверка условия, что средняя скорость объекта в между двумя сообщениями больше 14 км/ч. Средняя скорость между сообщениями вычисляется для уменьшения влияния колебаний скорости, появляющаяся из-за экранирования, во время стоянки. adc2 - это параметр, с которого считываются значения датчика уровня топлива, ранее мы создавали произвольный датчик с псевдонимом fuel, который можно использовать в данной формуле вместо adc2. В данной формуле можно изменять скорость, чем выше, тем сильнее транспорту нужно разогнаться, чтобы данные не были отброшены.
Так же включаем Медианную фильтрацию, которая позволит нам сгладить график и получить меньше скачков топлива. Можно, как на примере, начать со значения 20, и изменять в зависимости от того насколько часто появляются ложные скачи топлива.
До включения медианной фильтрации:                                                                               
После включения медианной фильтрации:
После настройки датчика Уровень топлива необходимо выполнить настройку шаблонов Заправка и  Слив. Они расположены во вкладке Шаблоны.
В шаблонах Заправка и Слив настройки одинаковы. Необходимо изменить условие Значение параметра, обведено голубым, уменьшить до 1 с. Таким образом датчик будет чувствительнее относиться колебаниям. Если какие-либо заправки не отображаются, установите значение 0 сек или удалите данное условие.

На параметр, обведенный красным, кликаем два раза и открывается окно Условия определения события. Здесь удаляем событие Остановка (150м). Это изменение позволит отслеживать заправки и сливы случае, когда неактивно событие Остановка (150м).

Работа датчика без использования формулы: 
Работа датчика с использованием форумы: