# Настройка и конфигурация датчиков

Для выполнения задач, связанных с настройкой, конфигурированием и обслуживанием датчиков, рекомендуется перейти в меню Device and Settings.

С портлетом «Sensors and buttons» у вас есть возможность легко подключать в систему новые дискретные и измерительные датчики. Свернутая панель удобно отображает датчики, в настоящее время подключенные к выбранному устройству. Разверните панель, чтобы бесшовно добавить или отредактировать датчик по необходимости.

## Создание датчика топлива

Топливные датчики — это тип [измерительного датчика](https://app.gitbook.com/s/446mKak1zDrGv70ahuYZ/guide/devices-and-settings/vehicle-sensors/measurement-sensors) который можно создать на платформе GPS‑трекера. Чтобы создать топливный датчик, перейдите в раздел Device Management и нажмите на панель Sensors and Buttons. Затем нажмите на значок «+» и выберите в выпадающем меню «Measurement sensor».

![Создание датчика уровня топлива](https://www.navixy.com/wp-content/uploads/2023/03/1-3.png)

## Настройка топливного датчика

После выбора Fuel Level в качестве типа датчика вам будут представлены дополнительные настройки. Полный набор опций, доступных для топливного датчика, включает:

* **Имя датчика** - присвойте понятное и удобное имя датчику. Это имя будет отображаться на виджетах, в отчётах и правилах, что поможет вам легко идентифицировать датчик.
* **Вход** - выберите вход, с которого устройство передаёт данные по топливу.
* **Единицы измерения** – выберите единицу измерения.
* **Точность** - это указанный процент, используемый для расчёта процентной погрешности в объёме бака. Это значение погрешности будет использовано для вычисления объёма при заправках и сливании топлива.
* **Пороги для обнаружения сливов** - используются для определения сливов в отчётах по топливу. Этот параметр может быть представлен как скорость изменения уровня топлива. Оба порога всегда проверяются, и если уровень топлива меняется быстрее хотя бы одного из установленных порогов в течение времени, превышающего уровень точности, отчёт пометит снижение как слив. Мы описали это подробно в [анализе отчёта по объёму топлива](https://app.gitbook.com/s/446mKak1zDrGv70ahuYZ/guide/reports/specific-report-details/fuel-volume-report).
  * По времени - максимально допустимая скорость изменения измеряется в единицах в час и может быть установлена в настройках датчика. При расчёте изменения скорости по времени платформа сравнивает изменение уровня топлива между точками. Если не задано, значение по умолчанию равно 120 единиц в час. Это не означает, что топливо обязано изменяться более чем на 120 в час. Это означает, что уровень топлива должен изменяться быстрее, чем 120 в час (что равно 20 л за 10 минут или 2 л в минуту), чтобы определить слив в отчёте. Это значение следует выставлять на несколько процентных пунктов выше вероятного расхода при нагрузках или при движении в гору.
  * По пробегу - максимально допустимая скорость изменения уровня топлива измеряется в единицах на 100 км. Это не означает, что топливо обязано изменяться более чем указано на 100 км. Например, если мы установим 100 л на 100 км, это означает, что уровень топлива должен изменяться быстрее, чем 100 л на 100 км (что равно 10 л на 10 км или 1 л на 1 км), чтобы определить слив в отчёте. Это значение должно вводиться вручную и не должно основываться исключительно на заявленном производителем расходе топлива. Рекомендуется проводить тесты и проверять фактический расход топлива, зафиксированный в отчётах, а затем устанавливать необходимые значения для максимальной точности.
* **Игнорировать в движении** - платформа автоматически исключит любые сливы и заправки, которые происходят во время движения, из правил и отчётов. Движение определяется настройкой [Parking Detection](https://app.gitbook.com/s/446mKak1zDrGv70ahuYZ/guide/devices-and-settings/location-and-movement/parking-detection-widget).
  * Сливы – сливы в движении будут исключены.
  * Заправки – заправки в движении будут отфильтрованы.
  * Тайм‑аут фильтрации - эта настройка появляется, когда функция Ignore включена. Она определяет период тайм‑аута в минутах, который будет использоваться для сокращения интервалов движения при фильтрации топлива. Эта опция может быть полезна, если уровень топлива стабилизируется только спустя некоторое время после заправки, и автомобиль уже начал движение. Это чаще встречается у автомобилей с большими топливными баками. Значение по умолчанию для этой опции — 5 минут.
* **Таблица калибровки** - этот параметр используется для преобразования показаний датчика в требуемые единицы, такие как литры. Некоторые производители датчиков могут предоставлять значения для таблицы преобразования. Однако мы настоятельно рекомендуем проводить калибровку для достижения точных показаний.
  * Объём бака - это максимальный объём бака, который указывается в единицах в таблице калибровки. Если значения калибровки не указаны, считается значение по умолчанию 100, что указывает на то, что данные передаются в процентах.
  * Даже если ваш датчик уже отправляет данные на платформу в литрах, лучше указать калибровку как 0 = 0 литров и максимальную ёмкость топливного бака = X литров.
  * Если это датчик, который передаёт информацию об уровне топлива в процентах, укажите калибровку 0 = 0 литров и 100 = максимальная ёмкость топливного бака в литрах.
* **Расширенные настройки** - находятся под таблицей калибровки.
  * Игнорируемые значения - значения следует указывать так же, как они приходят на платформу от устройства.
    * Меньше - фильтр можно использовать для игнорирования любых показаний, которые находятся ниже определённого порога X. Это полезно в ситуациях, когда показания датчика могут опускаться ниже некоторого значения. Например, при неплотном соединении провода или когда датчик посылает значение 0 при выключенном зажигании.
    * Больше - фильтр можно использовать для игнорирования любых показаний, которые превышают определённый порог X. Это ценно при работе с датчиками, показания которых иногда могут резко возрастать. Например, при обнаружении ошибки или при более высоком, чем ожидается, напряжении.
  * Множитель - умножает полученные значения на определённый коэффициент. Если вы хотите разделить значения, используйте десятичные дроби.

![Пример настройки топливного датчика со всеми параметрами.](https://www.navixy.com/wp-content/uploads/2023/03/2-3.png)

## Добавление данных калибровки

После того как все параметры настроены, крайне важно внести данные калибровки в таблицу. Начните с получения полного ряда, который коррелирует исходные значения измерительного датчика (например, вольты) с соответствующими фактическими измерениями (например, литры). Чтобы добавить дополнительные строки в таблицу, просто нажмите соответствующую кнопку <img src="https://3533348223-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIgDb43gtyXcm1Av4h1np%2Fuploads%2Fgit-blob-89f22518e063fa8d47954b6cd520cbf7f41caf29%2Fimage%20(1)%20(1)%20(1)%20(1).png?alt=media" alt="" data-size="line">.

В созданной строке заполните поле «Sensor value» полученным значением, а поле «Quantity» — соответствующим измеренным объёмом.

Чтобы удалить строку, нажмите <img src="https://3533348223-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIgDb43gtyXcm1Av4h1np%2Fuploads%2Fgit-blob-a6234c2ae507061bbaecd065a1d57fc78517e987%2Fimage%20(1)%20(1)%20(1).png?alt=media" alt="" data-size="line">.

![Measurement sensor](https://www.navixy.com/wp-content/uploads/2021/10/measurement_sensor_calibration_table_en.png)

Чтобы загрузить файл таблицы калибровки, нажмите <img src="https://3533348223-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIgDb43gtyXcm1Av4h1np%2Fuploads%2Fgit-blob-299d5c100c207e741f4a7d4ba1f6b3f8140777b4%2Fimage%20(2)%20(1).png?alt=media" alt="" data-size="line">. Файлы калибровки могут быть сгенерированы утилитой Omnicomm LLS Monitor. Поддерживается только формат XML.

![](https://www.navixy.com/wp-content/uploads/2021/10/upload_calibration_table_en.png)

Для более точной настройки нажмите кнопку "Advanced settings" <img src="https://3533348223-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FIgDb43gtyXcm1Av4h1np%2Fuploads%2Fgit-blob-20618a942a0e09ed83c66a495e280a30e3a9e2ab%2Fimage%20(3).png?alt=media" alt="" data-size="line">. Эти настройки — Ignore values и Multiplier.

* **Ignore values –** эта настройка позволяет вам задать «действительный» диапазон сырых значений измерения. Любые значения выше и ниже диапазона будут опущены. Например, это можно использовать для пропуска нулевых значений топливного датчика, когда зажигание выключено.
* **Multiplier –** используется для корректировки сырых значений с датчика путём умножения их на некоторое число.

### Порядок фильтрации

Пожалуйста, имейте в виду, что «**меньше чем**» и «**больше чем**» ограничения\
применяются перед «**Multiplier**». Полный порядок фильтрации:

1. Игнорируемые значения (**меньше чем** & **больше чем**)
2. **Multiplier**
3. **Таблица калибровки**

Например: входящее сырое значение - 1000, границы 3000 и 100, множитель равен 0.2.

В этом случае значение проходит через фильтр min/max, умножается на 0.2 и становится 200. И здесь применяется таблица калибровки. Таблица калибровки принимает 200 как «Sensor value» (исходное значение) и преобразует его в целевое значение «Quantity», которое отображается в интерфейсе пользователя. Если входящий пакет данных содержит значение датчика более 3000, это значение не пройдёт через границы — оно отбрасывается, поэтому умножение и калибровка не применяются.

Числа здесь приведены в качестве примера, у вас могут быть другие настройки, но принцип остаётся тем же.

### Проверка графика

По мере ввода данных в таблицу будет строиться график.

Если таблица заполнена корректно, график будет возрастать монотонно:

![](https://www.navixy.com/wp-content/uploads/2021/10/measurement_sensor_calibration_graph_en.png)

Если график не возрастает монотонно (например, сначала возрастает, а затем уменьшается, или выглядит волнообразно), то таблица калибровки неверна:

![](https://www.navixy.com/wp-content/uploads/2021/10/measurement_sensor_calibration_graph_wrong_en.png)

Чтобы подтвердить внесённые изменения, нажмите **Save**.
