Логические переключатели / Logical Switches | EdgeTX
Логические переключатели (Logical Switches) — монохромные передатчики
Цель: создать виртуальные 2‑позиционные переключатели, которые включаются/выключаются по логическому выражению (true/false), и затем использовать их везде, где EdgeTX принимает обычный физический переключатель.
Содержание
Общее
Что такое логические переключатели
Логические переключатели — это виртуальные 2‑позиционные переключатели, чьи значения (ON/OFF или +100/-100) определяются результатом вычисления (true/false) заданного логического выражения.
После настройки логические переключатели можно использовать везде в EdgeTX, где допускается указать физический переключатель.
Что показывает страница Logical Switches
Страница Logical Switches показывает все настроенные логические переключатели, а также краткий обзор их параметров.
↑ К оглавлениюЭкран Logical Switches
Скриншот

Экран Logical Switches.
Опции: Edit / Copy / Paste / Clear
Выбор логического переключателя открывает следующие опции:
- Edit — открывает экран настройки выбранного логического переключателя.
- Copy — копирует выбранный логический переключатель.
- Paste — вставляет скопированный логический переключатель в выбранную строку (примечание: перезапишет выбранный логический переключатель).
- Clear — удаляет все параметры конфигурации выбранного логического переключателя.
Экран настройки логического переключателя
Скриншот

Экран настройки логического переключателя.
Поля: Func / V1 / V2 / AND switch / Duration / Delay / Persist.
После выбора Edit для логического переключателя доступны следующие параметры:
- Func — логическая функция, которую нужно использовать. Описание функций см. в разделе Logical Switch Functions ниже.
- V1 — первая переменная выражения.
- V2 — вторая переменная выражения.
- AND switch — переключатель, который должен быть активен, чтобы логический переключатель вообще вычислялся и мог активироваться.
- Duration — время, в течение которого логический переключатель остаётся активным (true) после выполнения условий активации.
- Delay — задержка между моментом выполнения условий активации и моментом, когда логический переключатель станет активным (true).
- Persist. (только для Sticky) — сохраняет значение «липкого» переключателя при выключении передатчика или смене модели и восстанавливает его при включении или повторном выборе модели.
Функции логических переключателей (Logical Switch Functions)
Обозначения в выражениях
В выражениях a и b обозначают источники (стики, переключатели и т. п.), а x обозначает константы (числовые значения), с которыми выполняется сравнение.
Таблица функций
| Выражение | Описание |
|---|---|
| a=x | True, когда источник V1 точно равен константе V2. |
| a~x | True, когда источник V1 «примерно равен» константе V2. |
| a>x | True, когда источник V1 больше константы V2. |
| a<x | True, когда источник V1 меньше константы V2. |
| |a|>x | True, когда модуль источника V1 больше константы V2. |
| |a|<x | True, когда модуль источника V1 меньше константы V2. |
| AND | True, когда оба источника V1 и V2 равны TRUE. |
| OR | True, когда либо V1, либо V2 равен TRUE. |
| XOR | True, когда положения (состояния) источников V1 и V2 не совпадают. |
| Edge |
Кратковременно true, когда источник V1 был активен заданный период времени, а затем деактивировался. Первое поле времени (T1) в V1 — минимальная длительность активного состояния, необходимая, чтобы V1 мог активировать логический переключатель. Второе поле времени (T2) — максимальное время, в течение которого V1 может оставаться активным, чтобы логический переключатель был активирован. Если T2 установлено в --, логический переключатель будет true независимо от того, как долго V1 был активен. Если T2 установлено в 3 и V1 активен более 3 секунд, логический переключатель не станет true при деактивации источника. Если T2 установлено в <<, логический переключатель станет true, когда временные условия T1 выполнены, без необходимости деактивировать V1. |
| a=b | True, когда источник V1 равен источнику V2. |
| a>b | True, когда источник V1 больше источника V2. |
| a<b | True, когда источник V1 меньше источника V2. |
| △>x | Кратковременно true каждый раз, когда источник V1 изменяется больше, чем на величину, указанную константой V2. |
| |△|>x | Кратковременно true каждый раз, когда модуль изменения источника V1 больше, чем величина, указанная константой V2. |
| Tim (Timer) | Кратковременно true каждые xxx секунд. Аргумент V1 — длительность, в течение которой логический переключатель true (активен). Аргумент V2 — время между активациями. Цикл повторяется, пока заданный переключатель активен. |
| Stky (Sticky) | «Прилипает» в состоянии true после того, как переключатель V1 становится активным (true), и остаётся true независимо от положения V1, пока переключатель V2 не будет активирован (true) и не «отлипит» (не деактивирует, false) логический переключатель. Имеет опцию Persist. (Persistence), чтобы сохранять значение между перезагрузками или при переключении с модели и обратно. |
Переход на Special Functions
Нажатие [PAGE>] перенесёт вас на экран Special Functions.
↑ К оглавлениюРаскроем тему...
В этом дополнительном материале подробно разберём экран настройки Logical Switch в EdgeTX (монохромные передатчики): что означают поля Func, V1, V2, AND switch, Duration, Delay и Persist.. В конце будут типовые рецепты, практика (с решениями) и чек‑лист самопроверки.
Главная идея: логический переключатель — это виртуальный 2‑позиционный тумблер, который становится TRUE/FALSE по выражению, а поля Delay/Duration позволяют “отфильтровать” или “растянуть” срабатывание, чтобы его надёжно использовали миксы и спецфункции.
Содержание
- 1. Цели урока
- 2. Что такое “экран настройки Logical Switch”
- 3. Func: выбор логической функции
- 4. V1 и V2: источники и константы
- 5. AND switch: “гейт” (разрешение) для логики
- 6. Delay / Duration / Persist.: время и “память”
- 7. Практика: типовые задачи (с решениями)
- 8. Чек‑лист самопроверки знаний (обязательный)
1. Цели урока
- Понимать назначение каждого поля на экране настройки Logical Switch.
- Уметь корректно подбирать
Funcи аргументыV1/V2под задачу. - Использовать
AND switchкак “разрешение” на работу логики. - Применять
DelayиDurationдля фильтрации и надёжного срабатывания. - Понимать, когда опасно включать
Persist.уSticky.
Func задаёт тип правила, V1/V2 — его параметры, а Delay/Duration меняют “временную форму” результата (когда и как долго будет TRUE).2. Что такое “экран настройки Logical Switch”
Экран настройки логического переключателя — это место, где вы задаёте выражение, которое вычисляется в true/false. Результат становится состоянием виртуального 2‑позиционного переключателя (например L01), который можно использовать так же, как физический тумблер.
# Пример “как это выглядит в голове” (псевдоконфиг): L01: a‹x V1=Thr V2=-90 AND=ARM Delay=0.0s Duration=0.0s # Смысл: L01=TRUE, когда газ ниже -90% и одновременно включён ARM.
ON/OFF, которое вы дальше используете в миксах, режимах и спецфункциях.3. Func: выбор логической функции
База: что определяет Func
Поле Func выбирает тип выражения: сравнение (a>x, a<x), логические операции (AND, OR, XOR), “события” (Edge, △>x), периодику (Tim) или “защёлку” (Sticky). То есть Func отвечает на вопрос: “какая логика нужна?”
# Сравнение с порогом: L02: a‹x V1=RSSI V2=45 # Логическое И (два условия должны быть TRUE): L03: AND V1=L01 V2=SA↑
Типовые применения
- Сравнения (
a<x,a>x): пороги газа, RSSI, напряжения, высоты и т.д. - Комбинации (
AND/OR): “ARM включён и газ внизу”, “режим A или режим B”. - События (
Edge): сработать при отпускании/переключении с контролем времени. - Sticky: включить “режим” одной кнопкой и выключить другой.
Типичные ошибки
Ошибка: выбрать Func “наугад” и пытаться компенсировать V1/V2
Например, пытаются сделать “защёлку” через AND или OR. Для защёлки нужен Sticky, а не комбинация условий.
Ошибка: “Edge” используют как обычный переключатель
Edge обычно даёт кратковременный TRUE (событие), а не стабильное состояние. Если нужно “держать” результат — добавляйте Duration или используйте другой подход (например Sticky).
4. V1 и V2: источники и константы
Правила: “a”, “b”, “x” в выражениях
В описаниях функций принято: a и b — это источники (стик, тумблер, телеметрия, канал, другой логический), а x — константа (число), с которой идёт сравнение. Поэтому в функциях вида a<x поле V1 — источник, а V2 — порог.
# a<x: V1=источник, V2=число L10: a‹x V1=Thr V2=-90 # a=b: V1=источник, V2=источник L11: a=b V1=CH5 V2=CH6
Рецепты: сравнения и логика
V1/V2, а затем добавляйте Delay или Duration.Рецепт: порог “ниже”
L20: a‹x V1=RSSI V2=45
TRUE, когда RSSI ниже 45 (пример порога).
Рецепт: “оба условия должны быть TRUE”
L21: AND V1=SA↑ V2=L20
TRUE, когда SA↑ и одновременно L20=TRUE.
Ошибки
Ошибка: перепутать местами “источник” и “порог”
В a<x нельзя ставить число в V1 и источник в V2. В результате условие либо не выбирается, либо работает не так, как ожидали.
Ошибка: сравнивать “не то значение” (например, не тот канал/источник)
Часто путают Thr (вход стика) и CHx (выход миксов). Если вам нужна именно “палка газа” — берите источник стика; если нужен результат микширования — берите канал.
5. AND switch: “гейт” (разрешение) для логики
Поле AND switch — это дополнительный переключатель‑условие. Пока он не активен, логический переключатель не сможет стать TRUE, даже если выражение Func(V1,V2) уже истинно. Это удобно, чтобы включать проверку только в нужном контексте (например, только при ARM).
# Пример: “газ внизу”, но учитываем только если ARM включён
L30: a‹x V1=Thr V2=-90 AND=SF↓
AND switch используйте как “разрешение” для всей логики: так вы избегаете случайных срабатываний на земле, в меню или при тестах.Типичные ошибки
Ошибка: AND switch стоит в OFF — “почему ничего не работает?”
Самая частая причина “молчания” логического переключателя: выражение верное, но AND switch всегда неактивен.
Ошибка: AND switch используют вместо нормальной логики
AND switch — это не “второй аргумент AND”. Для логического И двух условий используйте Func=AND с V1/V2. А AND switch — именно общий “гейт”.
6. Delay / Duration / Persist.: время и “память”
Delay vs Duration: что когда выбирать
Delay — это “подождать перед включением”: условие должно оставаться истинным, прежде чем переключатель станет TRUE. Duration — это “удерживать после включения”: даже если условие исчезло, логический переключатель остаётся TRUE заданное время.
# Delay: защита от случайного касания L40: SA↑ Delay=0.5s # Duration: растянуть короткое событие, чтобы его “увидели” L41: Edge V1=SH↓ Duration=1.0s
Persist. доступен только для Sticky и означает сохранение состояния “липкого” переключателя при выключении передатчика или смене модели с последующим восстановлением.
Persist. не включайте для логики, которая может быть опасной при “внезапном восстановлении” (например, ARM или реверс газа). “Память” удобна, но может создать неожиданный стартовый режим.Типичные ошибки
Ошибка: ставят большой Delay и думают, что логика сломалась
Если Delay 2–3 секунды, логический переключатель не станет TRUE сразу. Это нормально — просто подождите и убедитесь, что условие держится непрерывно.
Ошибка: забывают Duration для “импульсных” функций
Некоторые функции дают очень короткий TRUE. Без Duration спецфункции и миксы могут не успеть среагировать. В таких случаях увеличьте Duration (например, 0.5–1.0s).
7. Практика: типовые задачи (с решениями)
Базовые настройки
Задача 1: Сделайте логический переключатель “газ внизу”
Условие: L01=TRUE, когда газ ниже -90%.
# Решение L01: a<x V1=Thr V2=-90
Задача 2: Добавьте “разрешение” — учитывайте условие только при ARM
Условие: L02=TRUE, когда газ внизу и включён ARM (например, SF↓).
# Решение L02: a‹x V1=Thr V2=-90 AND=SF↓
Фильтрация и “защёлка”
Задача 3: Сделайте защиту от случайного включения (Delay)
Условие: L03=TRUE только если тумблер SA↑ удерживается 0.5 секунды.
# Решение L03: SA↑ Delay=0.5s
Задача 4: Сделайте “виртуальный тумблер” Sticky
Условие: L04 включается кнопкой SH↓, выключается тумблером SD↓. Persist. выключен.
# Решение L04: Stky V1=SH↓ V2=SD↓ Persist.=OFF
Задача 5: “Растяните импульс” (Duration)
Условие: если используете событие (краткий TRUE), сделайте так, чтобы оно держалось 1 секунду.
# Решение (пример) L05: Edge V1=SH↓ Duration=1.0s
8. Чек‑лист самопроверки знаний
Отметьте пункты, которые вы действительно понимаете и можете применить без подсказок.
| ✓ | Навык | Проверка |
|---|---|---|
| Понимаю назначение Func | Могу выбрать Func под задачу: порог, AND/OR, Sticky, событие. | |
| Правильно задаю V1 и V2 | Могу объяснить, где V1=источник, а V2=константа/второй источник. | |
| Использую AND switch как “гейт” | Могу ограничить работу логики (например, только при ARM). | |
| Понимаю Delay | Могу сделать “условие должно держаться X секунд, чтобы включиться”. | |
| Понимаю Duration | Могу “растянуть” короткое срабатывание до 0.5–1 секунды. | |
| Понимаю Sticky | Могу настроить “включить одним событием, выключить другим”. | |
| Понимаю Persist. | Могу объяснить, что Persist сохраняет состояние Sticky между перезагрузками/сменой модели. | |
| Умею искать причину “не работает” | Проверяю AND switch, правильность V1/V2, и значения Delay/Duration. |
Похожее в категории "СОФТ"
-
Кривые Curves | EdgeTX
Цель: создать и настроить пользовательские кривые, которые затем можно применять в Inputs, Mixes или Outputs.
-
Специальные функции (Special Functions) | EdgeTX
Цель: настроить специальные функции EdgeTX, которые добавляют действия сверх обычного управления моделью: тренер, звук, подсветка, громкость, логирование на SD, скриншоты и т. п.
