UA1C писал(а):
А применимо это к другим ротаторам Yaesu — G-450, G-800 и пр.?
Приветствую Вадим.
Погуглил информацию, вот ответ на ваш вопрос:
Частично да, но не одинаково.
Для G-800DXA / G-1000DXA / G-2800DXA наш подход очень хорошо подходит по идеологии: у них есть штатный разъём EXT CONTROL для GS-232B. В мануале Yaesu прямо указано, что пины 1 и 2 относительно общего пина 5 задают вращение CW/CCW, пин 3 принимает 0–5 В для регулировки скорости, а пин 4 выдаёт аналоговое напряжение положения, соответствующее примерно 0–450°.
То есть для G-800 семейства наш ESP32-контроллер можно адаптировать очень естественно: использовать один аналоговый вход для азимута и два управляющих выхода LEFT/RIGHT. Функции EL просто не нужны. Протокол GS-232B по USB/TCP у нас уже есть, поэтому программная часть подходит почти напрямую.
С G-450 сложнее. Современный G-450DC — азимутальный ротатор с диапазоном 360°. В найденном официальном мануале Yaesu для G-450ADC/G-450CDC описано обычное управление LEFT/RIGHT и силовая цепь ротатора, но я не вижу в этом мануале такого же штатного GS-232B EXT CONTROL-разъёма с аналоговым выходом положения, как у G-800DXA. Поэтому для конкретной версии G-450 надо смотреть схему/разъём контроллера и брать сигнал положения и команды движения из подходящих точек.
Если очень грубо:
Ротатор Применимость нашей прошивки
G-5500 Да, это наша текущая база AZ+EL
G-800DXA / G-1000DXA / G-2800DXA Да, очень хорошо, но только AZ
G-450 Да после аппаратной адаптации, но не так «plug-and-play»
Другие Yaesu с аналоговым выходом положения + контактным CW/CCW управлением В большинстве случаев можно адаптировать
схему/разъём контроллера и брать сигнал положения и команды движения из подходящих точек.
Проверил по мануалам. Для G-800DXA / G-1000DXA / G-2800DXA адаптация нашего контроллера действительно очень простая: у этих моделей есть 6-контактный EXT CONTROL, через который штатный GS-232B получает команды и положение. В мануале указано: pin 1 замыкается на pin 5 для вращения clockwise, pin 2 — counterclockwise, pin 3 принимает 0–5 В для регулировки скорости, pin 4 выдаёт напряжение положения примерно 2–4.5 В для диапазона 0–450°, pin 5 — общий, pin 6 не используется. (Yaesu)
Для нашего ESP32 это можно свести к такой таблице:
Yaesu Что подключать к ESP32
EXT pin 1 — CW/RIGHT наш выход RIGHT через транзистор/оптопару
EXT pin 2 — CCW/LEFT наш выход LEFT через транзистор/оптопару
EXT pin 3 — SPEED 0–5 В можно пока не использовать
EXT pin 4 — POSITION на ADC ESP32 через согласование уровня
EXT pin 5 — GND общая земля
EXT pin 6 не подключать
Но здесь важный момент: pin 4 может доходить примерно до 4.5 В, а напрямую подавать 4.5 В на GPIO ADC ESP32-S3 нельзя. Поэтому для G-800/1000/2800 понадобится делитель, например порядка:
Yaesu POSITION
|
10 kΩ
|
+-------- GPIO4 ESP32
|
20 kΩ
|
GND
При 4.5 В на входе ESP32 получится около 3.0 В. После этого наша многоточечная калибровка прекрасно компенсирует точное отношение резисторов.
У этих моделей полный диапазон механики 450°, то есть наша нынешняя азимутальная калибровка 0 / 90 / 180 / 270 / 360 / 450 подходит вообще почти идеально.
Для G-450ADC/G-450CDC ситуация другая. В официальном руководстве фигурируют 6-контактный разъём со стороны контроллера и 7-контактный со стороны ротатора, причём в кабеле используются в основном контакты 2–5; это не тот же отдельный EXT CONTROL, что у G-800DXA. Поэтому подключать наш контроллер по схеме G-800 к G-450 напрямую нельзя — для G-450 придётся отдельно определить точки LEFT/RIGHT и напряжение датчика положения внутри штатного пульта либо использовать другой интерфейс.
И ещё поправка к моему предыдущему ответу: современный G-450ADC по официальному мануалу имеет 450° механического диапазона, несмотря на то что на некоторых страницах Yaesu встречается описание G-450DC как 360°. В руководстве G-450ADC указано именно Rotation Range: 450°.
Проверить на реальном редукторе, кроме G-5500 не могу, так как их нет в наличие.