Авиация
IC-A120: значение CI-V для SQL не равно номеру уровня
При программном управлении шумоподавителем IC-A120 нужно различать номер уровня, значение поля команды и состояние открытого либо закрытого приёмного тракта. Руководство задаёт для команды 1403 таблицу соответствий. Если передать номер уровня без этого преобразования, программа не выражает предусмотренное значение настройки.

Фотография не подтверждает установленный SQL, активный контроллер или состояние squelch. В рамках статьи данные в реальную радиостанцию не передавались.
Два разных пространства значений
В таблице Squelch setting уровни обозначены как OFF и числа от 1 до 24. Для них перечислены диапазоны поля данных от 0000 до 0255. Следовательно, номер уровня является одним объектом, а передаваемое значение — другим.
Для OFF указано 0000–0009, для уровня 1 — 0010–0019, для уровня 2 — 0020–0030. Уже эти строки показывают, почему нельзя автоматически считать номер уровня готовым содержимым поля. У отдельных диапазонов различается количество значений.
Для верхней части шкалы уровень 23 соответствует 0236–0245, уровень 24 — 0246–0255. Это данные таблицы производителя, а не измеренная чувствительность в физических единицах. По ним нельзя выводить универсальный порог приёма конкретной установки.
Преобразование должно быть явным
Если интерфейс контроллера предлагает сотруднику уровни 1–24, программа должна сопоставить их с применимой таблицей. Выбранное правило представления следует описать в задании интеграции. Нельзя скрывать его за общей строкой «SQL передан».
При чтении также нужно сохранять исходное значение и полученный уровень. Несколько значений принадлежат одному диапазону, поэтому обратное преобразование не следует считать простой взаимной заменой одинаковых чисел. Для проверки полезны случаи у границ диапазонов.
Рассматриваемая таблица сама по себе не задаёт лучший уровень для любого наземного поста. Требование к отсутствию шума и приёму нужного сигнала устанавливают для реальной установки отдельно. Кодирование настройки не является приёмочным радиотестом.
Состояние open/close читается отдельно
В общей таблице CI-V для команды 15 с подкомандой 01 перечислены значения 00 для squelch close и 01 для squelch open. Подкоманда 05, согласно примечанию, работает так же, как 01. Это чтение состояния, а не тот же объект, что уровень 1403.
Поэтому программа не должна отображать open как «уровень 1», а close как единственный допустимый нулевой порог. Состояние и выбранная настройка отвечают на разные вопросы. Их полезно разместить отдельными полями в журнале поста.
Также открытый squelch не является подтверждением правильного содержания сообщения или ответа нужного абонента. Для таких выводов требуются собственные критерии рабочего процесса. Рассматриваемые команды описывают состояние и управление устройством.
Сведения для интеграции
Для подготовки нужны исполнение IC-A120/IC-A120E, параметры CI-V, требуемые уровни интерфейса и правило отображения open/close. Диагностический пример должен содержать команду, исходное поле данных и ожидаемую интерпретацию. Реальные изменения в статье не выполнялись.
В запрос к office@nav-marine.ru включают эти сведения и описание контроллера. Основание — Icom IC-A120/IC-A120E Full Manual, раздел 10, страницы 10-3–10-4. Использована сохранённая официальная копия Icom. Фактический порог, приём сигнала и работа внешнего приложения здесь не подтверждены.