## Подключение, настройка

```{important}
Любые действия с навигационными датчиками возможны только в режиме повышенных привелегий.
```

```{caution}
Подключение, настроку, удаление навигационных датчиков должен выполнять специалист имеющий соответствующую квалификацию.
```

```{danger}
При подключении и настройке ЭКНИС в составе мостика, каждая ЭКНИС сети должна быть подключена ко всем бортовым навигационным датчикам, для исключения ситуации потери обстановки, при передаче роли **Мастер** на ЭКНИС, не подключенный к датчикам.
```

| Путь в меню |
|-------------|
| {{ menu }} → {{ settings }} → Sensors |

Датчики могут быть подключены через **Ethernet** или через **последовательный порт**.

```{important}
Для корректной работы ЭКНИС необходим **минимальный набор датчиков**:
- **Position** (координаты)
- **Heading** (курс)
- **Speed Log** (лаг)
```

```{important}
В списке доступны только датчики, добавленные в лицензию пользователя ПО.
```

Для подключения и настройки датчика необходима информация производителя.

### Порядок подключения датчика

1. **Подключить датчик к устройству или к сети** в соответствии со схемой

2. **Перейти в настройки датчиков:**
   - {{ menu }} → {{ settings }} → **Sensors**
   - Нажать кнопку **Add Sensor**
   - Выбрать **тип датчика** из списка
   - Нажать **OK**

3. **В списке навигационных датчиков появится новый датчик** выбранного типа

![Список датчиков](images/sensors-list.png)

4. Выполнить настройки датчика
5. **Для применения настроек или изменений** нажать **Сохранить (Save)**
6. Нажать **Назад (Back)** для возврата к списку датчиков

```{hint}
При корректной настройке данные датчика отобразятся в навигационной панели.
```

### Настройка датчика

![Форма настроек датчика](images/Add_Sensor_2.png)

| № | Параметр | Описание |
|---|----------|----------|
| 1 | **Тип датчика (Sensor type)** | Тип выбранного датчика |
| 2 | **Название (Name)** | Название, идентифицирующее датчик. Вводится пользователем |
| 3 | **Приоритет (Priority)** | При наличии нескольких датчиков одного типа определяет цепочку переходов при выходе из строя датчика от датчика с высоким приоритетом к датчику с более низким приоритетом. Приоритет датчика назначается ЭКНИС автоматически. Судоводитель может изменить приоритет на своё усмотрение. Значение **0** — **высший приоритет** |
| 4 | **Задержка (Timeout)** | Задержка поступления данных в порт — период, по истечении которого будет выработано предупреждение об отказе датчика в связи с отсутствием данных. По умолчанию задержка равна **10 сек**. Установка меньшего периода **не рекомендуется**, т.к. это может приводить к выработке ложных предупреждений из-за задержек в канале связи или индивидуальных особенностей работы датчика |
| 5 | **Фильтрация по заголовку (Talker filter)** | Фильтрация сообщений. В поле через запятую указываются заголовки, которые ЭКНИС  должна принимать. При этом сообщения с иными заголовками будут игнорироваться, а их данные не будут учитываться в работе ЭКНИС |
| 6 | **Интерфейс (Interface)** | Выбор типа интерфейса подключаемого датчика |
| 7 | **Настройки интерфейса** | Группа настроек интерфейса. Изменяется в зависимости от выбранного типа интерфейса |
| 8 | **Схематическое положение датчика** | Положение датчика или антенны датчика на схеме судна |
| 9 | **X и Y** | Координаты датчика в судовой системе координат **относительно ООТ (CCRP)**. Для датчиков ГНСС, курса, скорости, АИС, Радар, Пеленгатора — ввод координат **обязателен**, т.к. ЭКНИС приводит навигационные параметры этих датчиков к ООТ |
| 10 | **Строгость проверки (Strict verification of sentences)** | В зависимости от производителя датчика может встречаться различная реализация формирования предложений. При строгой проверке ЭКНИС проверяет сентенции в строгом соответствии с требованиями IEC 61162-1, любые отклонения от стандарта недопустимы. При выключенном чек-боксе ЭКНИС игнорирует некоторые некритические отступления. Например, игнорирует отсутствие букв в фиксированных полях предложений, наличие которых не влияет на качество разбираемой информации |
| 11 | **Приёмник дифф. поправок (Differential receiver)** | (для датчика ГНСС) — включение контроля дифференциальных поправок. При **включённом** переключателе ЭКНИС отслеживает признак дифференциального режима работы приёмника ГНСС. Если приёмник не работает в режиме дифференциальных поправок, ЭКНИС выработает предупреждение |
| 12 | **Запись данныз (Data recording)** | Включение документирования данных, поступающих от навигационного датчика. Данные документируются в {doc}`Навигационном журнале </sections/navigational-log/sentences/index>` |
| 13 | **Типы NMEA сообщений** | Включить переключатели, соответствующие **типам** получаемых NMEA **сообщений** |
| 14 | **Проверка CRC** | Установить переключатели колонки **CRC** — проверка контрольных сумм сообщений. Если датчик передаёт сообщения с **некорректными** контрольными суммами, то такие сообщения не будут приниматься ЭКНИС. При необходимости получения таких сообщений отключить проверку контрольной суммы |
| 15 | **NMEA монитор** | Отображает полученные текстовые сообщения от датчика. Данный монитор служит для проверки и мониторинга получения данных. Дискретность поступления данных всегда **1 Гц**, не зависимо от скорости передачи данных датчиком |
| 16 | **Режимы отображения** | **Сортированные (Sorted) / Сырые (Raw) / Как есть (As is)**<br>**Сортированные** — данные сортируются в алфавитном порядке и отображаются в виде группы, без сдвига строк. Обновляются только время получения пакета и содержание пакета<br>**Сырые** — данные отображаются бегущей строкой со сдвигом вверх, как поток данных в реальном времени<br>**Как есть** — данные отображаются без изменений в том виде, как они поступают от датчика |
| 17 | **Остановка (Stop)** | **Остановка** прокрутки данных в мониторе |
| 18 | **Сохранить (Save)** | Сохраняет и применяет выполненные настройки или изменения |
| 19 | **Назад (Back)** | Возврат к списку датчиков, без сохранения. |


### Настройки интерфейса подключения

Выбор типа интерфейса из выпадающего списка
![Interface Pop-Up](images/Add_Sensor_3.png)

| Тип интерфейса | Описание |
|-------|----------|
| **TCP Client** | ЭКНИС работает в роли TCP клиента. Для получения данных необходимо указать **IP адрес и порт** сервера данных |
| **Serial** | Датчики подключаются к последовательному порту компьютера ЭКНИС |
| **61162-450** | ЭКНИС поддерживает транспортный протокол NMEA 61162-450. Для корректной настройки указать идентификатор SFI, состоящий из **Заголовка (Talker)**, уникального для подсети **номера** и названия **подсети** |
| **TCP Server** | ЭКНИС работает в роли TCP Server. Для получения данных необходимо указать **порт** |
| **UDP reciever** | ЭКНИС получает данные по UDP. Для получения данных указать **порт**, который ЭКНИС будет "слушать" |

```{warning}
Интерфейсы TCP Client, TCP Server, UDP Reciever не являются стандартизированными интерфейсами, применяемыми в мостиковых системах.

При выборе любого из этих интерфейсов Будети отображаться предупреждение *Non-SOLAS Interface!*
```

![Interface Pop-Up](images/Non-SOLAS-Interface.png)

#### TCP client

![TCP client](images/Add_Sensor_8.png)

| № | Параметр | Описание |
|---|----------|----------|
| 1 | **IP address** | IP адрес устройства к которому выполняется подключение |
| 2 | **Port** | Порт на устройстве |

#### Serial

![Serial](images/Add_Sensor_4.png)

| № | Параметр | Описание | Значение по умолчанию |
|---|----------|----------|-----------------------|
| 1 | **Порт (Port)** | Аппаратный порт, к которому подключен датчик. Выбор из списка доступных портов | -- |
| 2 | **Режим (Mode)** | Режим работы порта. Доступные режимы: RS-232/RS-422/RS-485W2/RS-485W4 | **RS-232** |
| 3 | **Скорость (Speed)** | Скорость передачи данных в бод. Выбор из списка стандартных скоростей | **4800** |
| 4 | **Биты данных (Bits)** | Формат кодирования. Количество бит данных. Доступные значения: 5, 6, 7 или 8 бит данных. | **8** |
| 5 | **Четность (Parity)** | Проверка четности. Служит для обнаружения ошибок. Значения: No (не используется), Even (четный), Odd (нечетный) | **No** |
| 6 | **Стоп бит (Stop bit)** | Бит, означающий завершение передачи сообщения. Может принимать значения 1, 1.5 (Data bit=5) и 2 | **1** |

#### 61162-450

![61162-450](images/Add_Sensor_5.png)

| № | Параметр | Описание |
|---|----------|----------|
| 1 | **Transmissin group** | Выбор группы передачи данных из списка. Ручной выбор группы или **Default**. **Default** установит значения по умолчанию для данного типа датчика |
| 2 | **Adress (multicast)** | Адрес с которого осуществляется многоадресная рассылка |
| З | **Port** | Порт устройства, с которого осуществляется рассылка |
| 4 | **Listening adress** | Адрес сетевого устройства для принудительного для принудительного мониторинга.<br>Или ручной ввод, или вбыор из списка доступных сетевых устройств компьютера ЭКНИС.<br>![Listening adress](images/Add_Sensor_5.2.png) |
| 5 | **Check destination SFI sentence** | Включение проверки SFI. Если пакет данных адресован другому SFI - пакет игнорируется |
| 6 | **Check TAG CRC** | Проверка контрольной суммы блока служебной информации сообщения |
| 7 | **TAG stict check** | Включение строгой проверки получаемых пакетов данных по требованиям **IEC 61162-450** |

#### TCP Server

```{danger}
TCP подключение не рекомендовано для применения в качестве подключения. Такой тип подключения не гарантирует надёжную доставку данных.
```

![TCP Server](images/Add_Sensor_6.1.png)

| № | Параметр | Описание |
|---|----------|----------|
| -- | **Port** | Порт датчика-сервера с которого ведётся трансляция данных в сеть |

#### UDP reciever

```{danger}
UDP подключение не рекомендовано для применения в качестве подключения. Такой тип подключения не гарантирует очерёдность и доставкb данных.
```

![UDP reciever](images/Add_Sensor_7.1.png)

| № | Параметр | Описание |
|---|----------|----------|
| -- | **Port** | Порт датчика, с которого ведётся трансляция данных |

### NMEA монитор

Предназначен для контроля поступающих данных от датчика, при подключении, настройке и проверке корректности работы.

В мониторе отображаются данные в читаемом виде, и в "сыром" виде.

По умолчанию **монитор** находится в состоянии **As is** - новые пакеты появляются в нижней строке и строки сдвигаются вверх.

![As is](images/Add_Sensor_9.png)

Поступление данных с высокой скоростью и наличие нескольк разных предложений затрудняет считывание информации с монитора. Необходимо включить сортировку пакетов **Sorted**. Поступающие предложения будут отсортированы. При поступлении новых данных значения будут изменяться.

![Sorted](images/Add_Sensor_10.png)

При необходимости просматривать данные, поступающие непосредственно в порт - включить **Raw**

![Raw](images/Add_Sensor_11.png)

Если требуется детальное изучение принятого предложения - включить **Stop** - данные в окне монитора будут остановлены. Кнопка **Stop** не останавливает поступление данных в ЭКНИС.

### Рекомендации по настройке датчиков

```{warning}
Установка периода задержки (Timeout) менее 10 секунд **не рекомендуется**, так как это может приводить к ложным срабатываниям предупреждений из-за некачественного канала связи или индивидуальных особенностей в работе датчика.
```

```{tip}
Для обеспечения надёжности навигационной системы рекомендуется подключать резервные датчики критических параметров (координаты, курс, скорость) с разными значениями приоритета.
```

```{note}
При настройке координат датчиков (параметры X и Y) необходимо указывать точное расположение относительно общей опорной точки (ООТ/CCRP), поскольку ЭКНИС использует эти данные для приведения всех навигационных параметров к единой точке отсчёта.
```
