> For the complete documentation index, see [llms.txt](https://navixy.com/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://navixy.com/docs/user/ru/guide/devices-and-settings/vehicle-sensors/virtual-sensors.md).

# Виртуальные датчики

Виртуальные датчики позволяют эффективнее обрабатывать телеметрические данные. Путем сопоставления бортового напряжения они помогают рассчитывать моточасы на основе заданных условий и значений. Кроме того, они позволяют преобразовывать несколько точек данных с разных датчиков, подключенных к устройству, в более понятные индикаторы, такие как «горячо», «холодно», «открыто» и «закрыто», независимо от производителя или модели устройства.

<figure><img src="https://www.navixy.com/wp-content/uploads/2024/03/browser_clvf66ikbi.png" alt="Virtual sensor interface"><figcaption><p>Интерфейс виртуального датчика</p></figcaption></figure>

## Доступность

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

## Как создать виртуальный датчик

Виртуальные датчики можно создать через **Датчики и кнопки** блок, расположенный в **Управление устройствами** модуле «Управление устройствами». Чтобы создать виртуальный датчик:

1. Перейдите в раздел «Управление устройствами»
2. Выберите GPS-устройство
3. Нажмите кнопку **+** кнопка
4. Выберите **Виртуальный датчик**

На каждом устройстве может быть до 100 виртуальных датчиков.

<figure><img src="https://www.navixy.com/wp-content/uploads/2024/03/browser_73sv6rayqh.png" alt="Virtual sensor adding in sensors and buttons block" width="375"><figcaption><p>Добавление виртуального датчика в разделе «Датчики и кнопки»</p></figcaption></figure>

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

## Методы расчета

У виртуальных датчиков есть три разных типа расчета:

* Значение в диапазоне
* Исходное значение
* Индекс бита

Все значения виртуальных датчиков должны соответствовать форме, в которой они получены от устройства. Все состояния — это ваши определения для этих значений.

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

### **Значение в диапазоне**

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

Вот как это работает:

* Если значение датчика находится внутри заданных границ (минимального/максимального диапазона, который вы задали), Navixy воспринимает его как 1 (то есть условие активно) и отображает вашу метку A.
* Если значение датчика выходит за пределы этого диапазона, Navixy воспринимает его как 0 (условие неактивно) и отображает вашу метку B.

### Пример виртуального зажигания

Если у вас нет входа зажигания или устройство уже работает на пределе возможностей, вы можете использовать инструмент виртуального зажигания, чтобы определять состояние зажигания. Бортовое напряжение автомобиля значительно повышается при включении двигателя, поэтому порог напряжения можно использовать как индикатор того, работает двигатель или нет. Как правило, бортовое напряжение должно превышать 13,2 В, чтобы считать, что двигатель работает.

Чтобы создать этот датчик:

1. Сначала задайте ему имя.
2. Установите в качестве входа **Бортовое напряжение** или любой другой датчик, если нужно.
3. Включить **Считать состоянием зажигания** в настройках.
4. Выберите «Значение в диапазоне» в качестве метода расчета.
5. Укажите минимальное значение диапазона, например 13,2 В. Максимальное не требуется, поскольку бортовое напряжение может меняться при включенном зажигании.
6. Наконец, задайте значения состояний 0 и 1. Обычно это **вкл.** и **выкл.,** соответственно.

<figure><img src="https://www.navixy.com/wp-content/uploads/2024/03/browser_7qx9prhhxc.png" alt="Example configuration for virtual ignition" width="375"><figcaption><p>Пример настройки виртуального зажигания</p></figcaption></figure>

После того как вы зададите диапазон порога напряжения, если поступающее значение бортового напряжения находится в этом диапазоне, платформа переводит состояние зажигания в «вкл.». И наоборот, если оно выходит за его пределы, оно переводится в «выкл.». Виртуальное зажигание, созданное этим способом, также учитывается в отчетах и уведомлениях в зависимости от его состояния. Например, его можно использовать для формирования отчетов по моточасам или контроля событий по нарушениям режима труда и отдыха.

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

### Пример с аналоговым датчиком

Этот пример похож на предыдущий, но вместо контроля зажигания транспортного средства он отслеживает температуру.

Предположим, у вас есть аналоговый датчик, который собирает данные о температуре. Допустим, он выдает 1020 для -10 °C и 1900 = 0 °C. Данные, поступающие с аналоговых датчиков, не откалиброваны, поэтому для виртуального датчика их также нужно указывать в таком виде.

Диапазон можно настроить: все значения от 1020 до 1900 будут отнесены к «холодному» (1), а все, что выше 1900, — к «горячему» (0).

<figure><img src="https://www.navixy.com/wp-content/uploads/2024/03/browser_kgzvrsdzb1.png" alt="Example configuration for reading temperature from analog sensor" width="563"><figcaption><p>Пример настройки чтения температуры с аналогового датчика</p></figcaption></figure>

### **Исходное значение**

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

* 0/1,
* истина/ложь,
* вкл./выкл.,
* открыто/закрыто,
* поставлено на охрану/снято с охраны,
* состояние 1/состояние 2/состояние 3,
* ключ 1/ключ 2/ключ 3 и т. д.

Этот режим работает так:

* когда поступает значение 1, это ваше значение A.
* когда поступает значение 2, это ваше значение B.
* а когда поступает значение 3, это ваше значение C и так далее.

Проиллюстрируем этот тип функциональности на конкретном примере.

### Пример с показаниями CAN автомобиля

Некоторые CAN-датчики могут передавать на платформу Navixy разные числовые значения. Например, грузовик с датчиком состояния CAN: PTO может выдавать только следующие значения:

* 0: Выкл.
* 1: Удержание
* 2: Удаленное удержание
* 3: Режим ожидания
* 4: Удаленный режим ожидания
* 5: Установить
* 6: Замедление
* 7: Возобновить
* 8: Ускорение

Чтобы настроить этот датчик:

1. Введите его имя.
2. Выберите вход.
3. **Считать состоянием зажигания** должно быть отключено.
4. Выберите **Исходное значение** в качестве метода расчета.
5. Заполните таблицу своими значениями слева и соответствующими им значениями датчика справа. Добавляйте строки, нажимая кнопку **+** и удаляйте их с помощью кнопки с корзиной.

<figure><img src="https://www.navixy.com/wp-content/uploads/2024/03/browser_xlxdl1ak9e.png" alt="Configuration example for source value calculation method" width="563"><figcaption><p>Пример настройки метода расчета по исходному значению</p></figcaption></figure>

### Показания аппаратного ключа для водителей, оборудования и прицепов

Некоторые устройства могут считывать водителей и их iButton-ключи, RFID-ключи или оборудование, подключенное к устройству через Bluetooth-датчики. Платформа может определить ближайшее к устройству оборудование или водителя, а виртуальный датчик способен отображать такие имена.

Простейший способ идентификации — через теги: у каждого блока, подключенного к тяжелой технике, есть собственный датчик с прикрепленным тегом, который платформа распознает как аппаратный ключ. После подключения к машине этот ключ передается на платформу, и его связанное имя можно отображать в понятном виде, аналогично тому, как были названы значения для PTO.

<figure><img src="https://www.navixy.com/wp-content/uploads/2024/03/browser_vw7hkgdl0n.png" alt="Configuration example for source value calculation method for hardware key or state field sensor reading" width="563"><figcaption><p>Пример настройки метода расчета по исходному значению для показаний датчика аппаратного ключа или поля состояния</p></figcaption></figure>

### **Индекс бита**

Некоторые устройства могут передавать в своих пакетах расширенные данные, иногда объединяя несколько параметров [в одно значение](https://www.navixy.com/blog/sensor-parameters-avl/). Инструмент виртуальных датчиков позволяет работать с отдельными битами внутри этих объединенных значений, расшифровывая значение каждой позиции в соответствии с протоколом устройства.

Например, передаваемое значение — 011. Такие устройства кодируют несколько состояний в одном числе, используя побитовую структуру, которая читается справа налево (порядок little-endian, как определено в протоколе устройства):

* Бит 0 (крайний правый разряд): значение 1 означает, что ремень водителя не пристегнут (0 = пристегнут, 1 = не пристегнут).
* Бит 1 (средний разряд): значение 1 означает, что водительская дверь открыта (0 = закрыта, 1 = открыта).
* Бит 2 (крайний левый разряд): значение 0 означает, что капот закрыт (0 = закрыт, 1 = открыт).

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

Для датчика, который показывает состояние капота автомобиля в этом примере:

1. Задайте имя датчика
2. Выберите вход в соответствии с документацией устройства
3. Выберите **Индекс бита** в качестве метода расчета (это указывает Navixy считывать одну позицию бита из объединенного значения)
4. Выберите бит 2 для этого поля (позицию, которая кодирует состояние капота)

Ниже приведен пример датчика, который показывает состояние капота автомобиля.

<figure><img src="https://www.navixy.com/wp-content/uploads/2024/03/browser_2qcam8zclk.png" alt="Configuration example for Bit index calculation sensor" width="563"><figcaption><p>Пример настройки датчика с расчетом по индексу бита</p></figcaption></figure>

После настройки виртуального датчика и получения данных от связанного с ним датчика устройства его можно просматривать в **виджете «Показания датчика»** на **вкладке «Информация»** вкладка.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://navixy.com/docs/user/ru/guide/devices-and-settings/vehicle-sensors/virtual-sensors.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
