Как сделать коммутатор для антенны
Антенный коммутатор своими руками
Антенный коммутатор состоит из двух блоков – модуль управления и модуль коммутации. Один модуль для управления антенным коммутатором на передачу, второй – выбирает антенну в режиме приёма. Если не нужна работа на разные антенны, вы можете использовать только один модуль управления.
Модуль управления (рис.1) собран на микросборке К04КП020, которая применялась в блоках управления (СВП4-10) цветных телевизоров 3УСЦТ, 4УСЦТ.
Управление микросборкой осуществляется по ее входам Х1-Х6, сигналы индикации снимаются с выходов Y1 – Y6, а управление коммутатором реализуется по выходам Y7 –Y12. Можно использовать и выходы Y13 –Y18 (на схеме не показаны), но необходимо помнить, что на «включенном» выходе потенциал снижается с 12 до 0,2 Вольт. Выход Y20 используется для звуковой сигнализации в момент нажатия одной из кнопок SB1 — SB6, то есть в момент переключения на другую антенну. Для сигнализации применен пьезоизлучатель с внутренним генератором KPE-240, который применяется для звуковой сигнализации в бесперебойных блоках питания и др. устройствах.
Микросборка К04КП020 представляет собой многостабильный триггер и набор электронных ключей, связанных со всеми выходами. В момент включения питания триггер устанавливается в состояние, когда выходы Y1, Y 7, Y13 открыты. Загорается светодиод, подключенный к выходу Y7, а транзисторный ключ, подключенный к выходу Y1 – откроется и сработает реле, включенное в коллекторную цепь этого транзистора.
Для переключения на выбранную антенну нажимают на соответствующую кнопку, например SB5. При этом многостабильный триггер переключится в состояние соответствующее появлению сигналов на выходах Y5, Y16 и Y17 что приведет к зажиганию соответствующих светодиодов и включению соответствующих реле.
В модуле управления применены реле РЭС-49, с напряжением обмотки 27 В. Нормально разомкнутые контакты реле модуля управления управляют включением реле антенного модуля коммутации. Может показаться странным, что реле антенного модуля коммутации не подключены непосредственно вместо реле в модулях управления. Это сделано для страховки, поскольку значительная длина проводов управления коммутатором, связанных непосредственно с микросборкой, может повлечь сбои в работе при значительных КСВ. Поэтому и применена такая гальваническая развязка.
Схема антенного модуля коммутации показана на рис. 2:
В модуле коммутации применены реле РЭН33, в которого четыре переключающих контакта, для увеличения надежности и мощности, включены параллельно (рис. 3).
При длительном нахождении реле РЭН33 под напряжением равным номинальному обмотка значительно нагревается, что нежелательно. Поэтому реле модуля коммутации РЭН33, включаются через «форсирующую» цепь, состоящую из параллельно включенных 2-х резисторов, мощностью 2 Вт и электролитического конденсатора 1000 мкф. Реле включается «форсированным» напряжением 24 В, которое потом снижается до достаточного для удержания реле напряжения 12…14 В. В таком режиме реле может находится во включенном состоянии длительное время без заметного нагрева обмотки.
Контакты реле модуля коммутации включены таким образом, что при отсутствии напряжения на обмотках реле, выключенных антенн, антенны заземлены.
Модуль управления и модуль коммутации соединен кабелем (рис. 4).
На завершение статьи несколько фотографий готового антенного коммутатора:
Записки программиста
Как сделать простой антенный переключатель
Внимательный читатель мог заподозрить, что сравнение двух антенн в посте Знакомство с тюнером MFJ-971 и антенной «длинный провод» подразумевает наличие у автора какого-то антенного переключателя (коммутатора). Такой переключатель у меня действительно есть, и он был сделан своими руками.
Идея не моя, я просто следовал инструкции из видео Алексея Игонина, RA3TLB. Пользуясь случаем, отмечу, что я c большим удовольствием смотрю все видео Алексея.
Использованные компоненты, их количество и стоимость:
Итого общая стоимость устройства составила 650 рублей ( что-то еще. Анализ при помощи КСВ-метра Mini60S и эквивалента нагрузки 50 Ом показал отсутствие влияния на КСВ на диапазонах от 160 до 20 метров. На диапазонах от 17 до 10 метров какое-то влияние есть, но оно незначительное. Так на 10 метрах без переключателя вы получите КСВ 1.0, а с ним — 1.06.
Во-вторых, когда речь идет о переменном токе, как бы разомкнутая цепь на самом деле не бывает полностью разомкнутой. Какая-то часть сигнала все равно пройдет, подобно тому, как она проходит в конденсаторе. Вопрос только в том, как сильно будет ослаблен прошедший сигнал.
Данная проблема была изучена при помощи осциллографа, генератора сигналов MHS-5200A и нагрузки 50 Ом на диапазоне частот от 1 до 25 МГц. Размах сигнала при генераторе, подключенном через коммутатор, составил 6 В. Когда же генератор отключен, проходит сигнал с размахом 7 мВ. Из заметки Базовые аналоговые фильтры: теория и практика вы можете помнить формулу:
Таким образом, аттенюация составила 58.7 дБ.
Допустим, мы решили использовать RTL-SDR с апконвертором и данным переключателем, как не самый удобный панадаптер к трансиверу Yaesu FT-891. Спрашивается — спалим ли мы «отключенный» RTL-SDR, если включить трансивер на передачу полной мощностью 100 Вт?
Само собой разумеется, ничто не мешает сделать аналогичный переключатель и с большим количеством разъемов. В таком случае вместо тумблера будет удобнее воспользоваться галетным переключателем. Помимо тумблеров и переключателей с тем же успехом можно воспользоваться и реле. Это позволит сделать коммутатор, управление которым происходит удаленно. Если у вас есть тюнер, и в нем отсутствует функция bypass (как в моем MFJ-971), можно взять тумблер с двумя контактными группами и добавить bypass.
В общем, здесь открывается большой простор для творчества.
Антенный тюнер-коммутатор, назначение и принципиальная схема
Современные антенные тюнеры хорошо зарекомендовали себя в работе с однопроводными, двухпроводными и коаксиальными линиями передачи. Данное устройство представляет собой антенный тюнер и коммутатор на пять антенн (АТК). В рассматриваемом исполнении устройство выглядит следующим образом рис. 1.
Антенный тюнер-коммутатор был разработан много лет назад и в последнее время доработан для работы с трансивером YAESU FT-950. Принципиальная схема АТК приведена на рис. 2.
Рис. 1. Внешний вид антенного тюнера-коммутатора.
Предлагаемая конструкция тюнера является, по сути дела, универсальным многодиапазонным широкополосным антенным согласователем. Применение описываемого устройства устраняет необходимость применения перестраиваемых на каждом диапазоне устройств согласования трансивера с антенной.
Вот некоторые преимущества подобной схемы тюнера. Во-первых: экономичность. Нет необходимости изготавливать катушки на каждый диапазон, применять вертушки, вариометры и конденсаторы переменной емкости.
Уменьшение помех телевидению. Поскольку внутри нет подстраиваемых элементов, тюнер может быть тщательно полностью закрыт и экранирован.
Рис. 2. Принципиальная схема антенного тюнера-коммутатора (АТК).
Во-вторых: компактность. Она заключается в том, что небольшое количество элементов схемы умещается в небольшом объеме. При выборе одной антенны все неработающие антенны заземлены.
В нерабочем состоянии все антенны автоматически заземлены с помощью реле К1-К5. Хорошо согласуется с антеннами длинный провод длиной от 20 до 120 м. В авторском последнем варианте применяется антенна типа длинного провода 75 м.
Если нет необходимости в использовании антенного тюнера для диапазона 160 м, то обмотку IV можно не наматывать.
Назначение разъемов
Конструкция
Габаритные размеры: 160x210x90 мм без выступающих элементов. Следует учитывать требования к монтажу высокочастотных устройств и обязательно отделять экраном входную цепь от выходной.
Монтаж выполнен навесным, с учетом минимально возможной длины всех соединений для индуктивности, переключателей и разъемов.
Детали
В АТК для коммутации можно применить любые ВЧ реле, имеющиеся в наличии, подходящие по мощности. Основное требование к реле: как можно меньше межконтактная емкость. Хорошие результаты получаются при использовании РПВ-2/7, РЭС-34, РЭНЗЗ, РЭС47 и т. п. при выходной мощности до 100 Вт.
Справка: паспортная максимальная коммутируемая мощность ПГК 70 Вт. Продолжительная эксплуатация при значительно большей мощности показала надежность ПГК.
Разъемы XW1, XW3-XW6 типа СР-50-165ФВ79ВР однозначно лучше PL-259, разработанных еще в 1930 г. Кларком Квэйкенбушем (компания Amphenol) для радиовещательной промышленности.
Разъем XS1 типа 1ПР20П4ЭГ8.
Прибор РА1 типа М4200 на 1 мА, в который вмонтированы светодиоды HL1, HL2 для удобства контроля показаний в темное время суток.
Диоды VD3-VD7 могут быть КД521, КД103.
Как и в большинстве самодельных конструкций, некоторые детали могут быть заменены.
От середины первой и второй обмоток сделаны выводы и запаиваются в соответствии со схемой. Кольцо перед намоткой катушки обматывается фторопластовой лентой в два слоя. Один квадратный сантиметр ферритового кольца способен пропустить до 500 ватт мощности.
Кольца марки НМ звонятся тестером (1-30 кОм). Кольца НН не звонятся.
Магнитную проницаемость ферритовых колец можно определить по цветной маркировке:
Магнитная проницаемость ферритового кольца определяется простым способом, если на них нет маркировки. Формула определения магнитной проницаемости кольцевых ферритовых магнитопроводов [64]:
Наматываем равномерно по всей длине кольца пробную обмотку, содержащую to = 5 витков. Измеряем ее индуктивность и вычисляем по формуле:
Процесс вычислений упрощается, если воспользоваться программой L.FERRUM ver.2.2 T.I.Mimicom Soft [109, ПО].
При мощности до 100 Вт можно использовать индуктивность, выполненную на ферритовом кольце марки 50ВЧ, диаметром 30 мм. Обмотку выполнить проводом ПЭВ-2 диаметром 0,8 мм.
КСВ-метр и коммутация антенн
В корпусе собран КСВ метр, который используется при работе с антенной типа длинный провод, как индикатор выхода. Переключатель SA1 предназначен для переключения измерения прямой и отраженной волны.
Измеритель падающей и отраженной волны не имеет особенностей и может быть выполнен по любой схеме, применяемой для измерения КСВ.
Предусмотрена грозозащита. В тюнере находятся реле, которые своими контактами, при выключении питания трансивера, заземляют все антенны. Антенный тюнер-коммутатор закреплен на стене, с ним удобно работать.
Клемма-зажим XW2 для антенны длинный провод находится под высоким высокочастотным напряжением, что может вызвать серьезные ожоги, если ее трогать во время передачи руками.
Антенный тюнер включен между трансивером и антеннами. Коаксиальный кабель подключен к трансиверу штекером типа PL-239 к коаксиальному разъему ANTENNA розетка типа SO-259 и разъему XW1 типа СР-50-165Ф АТК.
Антенна произвольной длины подключается к зажиму XW2. Антенна должна быть максимально длинной, натянутой высоко и удаленной от окружающих объектов насколько это возможно. Для подключения заземления предназначено гнездо-зажим Ground сбоку корпуса.
Тюнер должен быть надежно соединен с хорошим заземлением.
Настройка АТК
После того, как сборка завершена, можно переходить к настройке. Для контроля согласования используется встроенный КСВ метр трансивера и КСВ метр АТК.
Переключатель SA2 включает максимальную индуктивность в положении 1 и минимальную индуктивность в положении 5.
более низкая индуктивность требуется на более высокочастотных диапазонах, чем на низкочастотных для получения равного импеданса.
Внешний эквивалент нагрузки 50 Ом или 75 Ом может подключаться к разъемам XW3-XW6, расположенных на нижней панели тюнера.
Выходная мощность трансивера, при настройке на эквивалент нагрузки, должна быть выставлена на маленькую выходную мощность, чтобы не вывести из строя эквивалент нагрузки.
После настройки, мощность трансивера можно увеличить до максимальной. Не работайте с переключателями SA2, SA3 и SA4 во время передачи при максимальной мощности!
Иногда невозможно достигнуть приемлемого согласования с антенной. В таких случаях нужно изменить длину антенны.
Будьте осторожны! На выходе тюнера даже при малой выходной мощности присутствует высокое ВЧ напряжение.
В данном АТК антенна типа длинного провода, подключенная к XW2, гальванически связаны с заземлением. В этом случае грозовые заряды будут постоянно стекать с антенны на заземление.
Вход трансивера FT-950, установленного в щеке, имеет защиту по входу. При отключении напряжения питания вход трансивера замыкается на корпус контактами реле. Установлено несколько ступеней защиты, работающих при включенном трансивере.
Прямо на входных разъемах антенн установлены SURGE ABSORBER, это твердотельные разрядники RHCA-301Q43U. Далее по схеме В1001 типа TVSF0603. С такими параметрами U= 35-60 В, С= 0,15 пФ, F= 1 МГц, Іmax = 30 А [120].
Опыт эксплуатации
Опыт автора по эксплуатации показал оправданность конструкции. АТК справлялся с настройкой на случайные нагрузки и антеннами с разумными размерами. Это простой и очень эффективный тюнер с катушкой и галетными переключателями.
Конструкция его предельно проста и понятна из рис. 1.
Получены хорошие результаты на всех диапазонах от 1,8 МГц до 144 МГц. Составлена таблица при работе по диапазонам и укреплена на тюнере. Следующие положения переключателей SA2, SA3 в зависимости от диапазона приведены в табл. 1.
При этом КСВ между трансивером и антенным тюнером не превышает 1,1.
Таблица 1. Положение переключателей SA2 и БАЗ в зависимости от выбранного диапазона.
Тема: коммутатор антенн
Опции темы
Поиск по теме
коммутатор антенн
Коллеги подскажите, возникла необходимость организации дома двух рабочих мест. Имеется четыре антенны, как сделать коммутатор чтоб в один момент к конкретному трансиверу была подключена только одна антенна и чтобы не было возможности включить встречно два трансивера на одну антенну или друг на друга, если есть у кого какие схемы или наработки поделитесь пожалуйста.
Стоит посмотреть в сторону автоматических бэнд-декодеров (антенных коммутаторов). Устройств читающих выбранный диапазон из трансивера по CAT-интерфейсу (YaesuBCD, Icom CI-V, Kenwood CAT, ICOM ACC), и коммутирующий нужную антенну. В вашем случае у такого устройства должно быть два входа для чтения выбранного диапазона первым и вторым трансивером. Естественно схемотехника будет отличаться в зависимости от применяемых трансиверов.
Ручной переключатель с блокировкой одновременного включения антенны на два трансивера. Рисовал другу в спешке, не обессудте за качество.
Обычно в трансивере 2 антенных гнезда, как подключить 4 кабеля, думаю разберетесь.
UA3YOB, желательно делать коммутатор по принципу для каждой антенны три реле с переключающейся группой контактов, тогда это 100% решает проблему, реле физически не смогут подключить оба аппарата на одну антенну.
Буржуи делают такие коммутаторы на импортные реле под печатную плату, rquad тоже такое делает.
Я пошел по такому принципу: на каждую антенну по два основных реле (по количеству рабочих мест) и по два блокирующих (тоже на каждое место свое). Т.о. питание на обмотку основного реле подается через контакт обесточенного блокирующего реле другого рабочего места. Кто раньше встал того и тапки.
На рисунке коммутатор для ДПФ, чтобы это был коммутатор антенн надо просто использовать его половинку. Но принцип блокировки надеюсь понятен.
Как сделать коммутатор для антенны
Игорь Уватенков (R9JD)
Приветствую коллеги и начинающие радиолюбители! Эта статья для вас, в ней я расскажу о своем опыте по построению антенных переключателей, это будет несколько вариантов. Девиз: «От простого к сложному!»
Разложим по полочкам… Что же такое антенный переключатель и из каких компонентов состоит? Смотрим рисунок ниже. В состав входит пульт управления, исполнительный блок и линия связи. Пульт управления располагается в шеке оператора, коммутационный блок может располагаться на мачте, это удобно, если у вас мультибенд (несколько антенн на одной траверсе). Вы прокладываете один кабель от шека до мачты, а там, наверху, исполнительный блок коммутирует с помощью реле нужную антенну на кабель идущий к передатчику или приемнику. Блок может располагаться и в помещении, при этом кабели со всех антенн нужно привести и подключить к нему.
ПУЛЬТ УПРАВЛЕНИЯ
Суть пульта управления: В этом блоке происходит формирование напряжения, которое подается на реле коммутационного блока, что будет внутри блока и с помощью каких элементов вы соберете переключатель — это уже второй вопрос. То ли это будет ручное переключение, то ли электронный модуль, все зависит от поставленной цели и текущих возможностей.
Самым простой и доступной конструкцией пульта могут служить обыкновенные многопозиционные переключатели. В качестве таковых можно использовать галетные переключатели. Переключатель выбираете такой, на сколько позиций необходимо переключения, проще говоря — по количеству антенн. Если не нашли нужного, то можно секции одной галеты (пластина на которой расположены переключающие контакты) объеденить. Например, переключатель на 3 положения, а на галете таких 3 секции, вы соединяете центральные переключающие контакты всех секций — это и будет общий центральный контакт, в итоге получите 9 позиций. Активно используются и кулачковые переключатели (крайний справа на ркартинке), уже со шкалой!
Можно использовать кнопочные переключатели с взаимоисключающим режимом работы. При нажатии одной из кнопок, она фиксируется с помощью механизма защелки на самом переключателе, остальные отключаются, тем самым всегда остается включенной одна позиция. Это удобно, исключает ошибки коммутации антенн. Сегодня промышленность выпускает переключатели разных видов и даже со встроенными светодиодами для индикации. Думаю схему переключателя рисовать излишне, разберетесь самостоятельно.
А теперь рассмотрим электронные переключатели. Такие модули собирают на основе транзисторных ключей или ключей на микросхемах, возможно использовать в качестве ключей тиристоры. Более продвинутый вариант — микропроцессоры. Логику поведения переключателя закладывают при проектировании устройства.
Немного лирики о тригере. D-триггер (от английского DELAY) называют информационным триггером, также триггером задержки. D — триггер может управляться (переключаться) как уровнем тактирующего импульса, так и его фронтом. Для триггера типа D, состояние в интервале времени между сигналом на входной линии и следующим состоянием триггера формируется проще, чем для любого другого типа.
D-триггер имеет как минимум две входные линии: вход данных «D», от английского Data (данные), и вход синхронизации «C» от английского же Clock (импульс, строб). Используя эти входы можно заставить триггер работать либо как элемент памяти, либо как счетный триггер. Рассмотрим более подробно входные сигналы (триггер с выводами 1…6). При подаче на вход S уровня логического нуля триггер установится в единичное состояние. Это означает, что на прямом выходе (вывод 5) появится логическая единица. Если же теперь подать логический ноль на R-вход, то триггер сбросится. Это значит, что на прямом выходе (вывод 5) появится уровень логического нуля, а на инверсном (вывод 6) будет присутствовать логическая единица.
Когда говорят о состоянии триггера, имеется в виду состояние его прямого выхода: если триггер установлен, то на его прямом выходе высокий уровень (логическая единица). Соответственно, на инверсном выходе все с точностью до наоборот, поэтому инверсный выход часто при рассмотрении работы схемы просто не упоминают.
Логическую единицу на входы R и S можно подавать сколько угодно: состояние триггера не изменится. Это говорит о том, что для входов R и S рабочим является низкий уровень. Именно поэтому входы RS обозначаются на схеме в виде маленького кружочка, который обозначает, что рабочий уровень сигнала низкий или инверсный. Это общее правило для всех условных графических обозначений микросхем. Если вы захотите более подробно ознакомится с данным классом устройств — шагайте в интернет или в библиотеку.
Поскольку входы RS являются приоритетными, мы в своей реализации схемы, будем использовать как обычный RS тригер, управлять будем входами R и S, а входы данных и синхронизации посадим на землю.
Рассмотрим работу схемы Рис.1. При нажатии на кнопку SB1, на устанавливающий вход S1 подается логический ноль (замыкаем вход кнопкой на землю), при этом на выходе Q1 тригера устанавливается логическая единица. С инверсного выхода Q1, логический ноль через диоды подается на входы R — сброса всех тригеров, кроме первого в «нулевое состояние». Диоды нужны, чтобы исключить ложное срабатывание. Далее сигнал высокого уровня с выхода Q1 поступает на транзисторный ключ. Ключ нужен для усиления тока и напряжения коммутации исполнительных устройств, в данном случае это реле. С выхода ключа напряжение подается на реле выходного блока. Реле может быть на рабочее напряжение 12V, 24V, 27V, 36V. На выходе тригера для индикации включенного канала (антенны) установлен светодиод через резистор номиналом 470 — 1К. Аналогично работают остальные каналы переключателя, их может быть неограниченное количество, вы можете сделать 2,3,8…20…, зависит от вашего планирования и необходимости в них. Клонируйте их по аналогии.
Вторая схема Рис.2, реализована на логических микросхемах К155ЛА4 и К155ЛН1. Принцип логического исключения каналов, если один включен, то остальные выключаются. Обращаю внимание на то, что блок кнопок должен быть с взаимоисключающей фиксацией.
Скажу честно, схема Рис.1 более стабильна и предпочтительна для исполнения. В схеме Рис.2 имеется неоправданная избыточность.
Третий вариант пульта управления — применение микроконтроллера. Очень популярный проект Arduino, доступен для как для начинающих так и мастеров. Выбираем плату микроконтроллера под наши нужды из самых маленьких, см. фото:
8 входов ≥ 8 выходов. К контактам 2-9 платы подключаем кнопки, эти же контакты (порты) «подтягиваем на землю», для исключения ложных срабатываний с помощью резисторов номиналом 1К. При замыкании контактов кнопки, на порты подается высокий потенциал — логическая «1». Программа «зашитая» в микропроцессор обрабатывает эти сигналы и в зависимости от логики, выдает на выходных портах (10,16,14,15,А0,А1,А2,А3) «логическую единицу» либо «логический ноль». Далее на транзисторный ключ и внешний блок коммутации. Модуль получается очень компактный. Для исключения дребезга контактов, паралельно резисторам кнопок целесообразно подключить конденсаторы емкостью 0.047-0.1 мк. К контакту RAW подключается внешнее питание, рекомендуется +9V. С этого пина через внутренний стабилизатор, напряжение преобразуется в стабилизированное +5V, питает МК ( микроконтроллер) и присутствует на выводе VCC. К этому выводу и подключаем общий провод кнопок. Вывод GND платы — это общий провод ( земля).
Схема готова, пишем программу управления (скетч) для МК. Логика проста: нужно опросить входные порты и в зависимости от нажатой кнопки установить высокий уровень на соответствующем выходном порту, остальные сбросить в ноль.
Для написания и закачки в микроконтроллер Ардуино используется среда разработки Arduino. Официальный сайт здесь. С него можно скачать последнюю версию IDE. На русскоязычном сайте можно познакомиться с аппаратной платформой, языком программирования и кратким описанием среды разработки. В интернете много сайтов псвященных данной платформе, этому проекту уже несколько лет и он очень популярен в мире среди «Кулибиных». Как пользоваться средой, думаю, разберетесь, сложного ничего нет. Достаточно почитать документацию и подключить МК к компьютеру через USB порт. После настройки и запуска среды, копируем скетч (см.ниже), «заливаем» его в МК с помощью команды «компилировать и выгрузить» и наслаждаемся работой нашего пульта управления. Время на програмиирование МК занимает меньше минуты. Вся прелесть в том, что мы влюбой момент времени можем дополнить, изменить программу МК и перезалить с новым алгоритмом. Это можно делать неограниченное количество раз, модернизируйте «до посинения»!
А вот и скетч для схемы Рис.3:
// Антенный переключатель 1х8 v.1.00
// © Игорь Уватенков (R9JD )
// Скетч написан под Arduino Pro Micro
// Возможно использование на других версиий МК с назначением соответствующих портов входа/выхода
//Порты для выходов переключаемых антенн
int ant1 = A3;
int ant2 = A2;
int ant3 = A1;
int ant4 = A0;
int ant5 = 15;
int ant6 = 14;
int ant7 = 16;
int ant8 = 10;
//Порты для кнопок
int bt1 = 2;
int bt2 = 3;
int bt3 = 4;
int bt4 = 5;
int bt5 = 6;
int bt6 = 7;
int bt7 = 8;
int bt8 = 9;
int NumButton; //Номер нажатой кнопки
void setup () <
// Назначаем порты на вход
pinMode (bt1, INPUT );
pinMode (bt2, INPUT );
pinMode (bt3, INPUT );
pinMode (bt4, INPUT );
pinMode (bt5, INPUT );
pinMode (bt6, INPUT );
pinMode (bt7, INPUT );
pinMode (bt8, INPUT );
// Назначаем порты на выход
pinMode (ant1, OUTPUT );
pinMode (ant2, OUTPUT );
pinMode (ant3, OUTPUT );
pinMode (ant4, OUTPUT );
pinMode (ant5, OUTPUT );
pinMode (ant6, OUTPUT );
pinMode (ant7, OUTPUT );
pinMode (ant8, OUTPUT );
>
void SetButton () //Определяем номер нажатой кнопки
<
if ( digitalRead (bt1) == HIGH )
if ( digitalRead (bt2) == HIGH )
if ( digitalRead (bt3) == HIGH )
if ( digitalRead (bt4) == HIGH )
if ( digitalRead (bt5) == HIGH )
if ( digitalRead (bt6) == HIGH )
if ( digitalRead (bt7) == HIGH )
if ( digitalRead (bt8) == HIGH )
>
void loop ()
<
SetButton ( );
switch (NumButton) < //Выбираем что и где нужно установить в зависимости от номера нажатой кнопки
case 1: < digitalWrite (ant1, HIGH ); //Устанавливаем «1» выход антенны 1, остальные сбрасываем в «0 »
digitalWrite (ant2, LOW );
digitalWrite (ant3, LOW );
digitalWrite (ant4, LOW );
digitalWrite (ant5, LOW );
digitalWrite (ant6, LOW );
digitalWrite (ant7, LOW );
digitalWrite (ant8, LOW );
break ;
>
case 2: < digitalWrite (ant2, HIGH ); //Устанавливаем «1» выход антенны 2, остальные сбрасываем в «0 »
digitalWrite (ant1, LOW );
digitalWrite (ant3, LOW );
digitalWrite (ant4, LOW );
digitalWrite (ant5, LOW );
digitalWrite (ant6, LOW );
digitalWrite (ant7, LOW );
digitalWrite (ant8, LOW );
break ;
>
case 3: < digitalWrite (ant3, HIGH );
digitalWrite (ant2, LOW );
digitalWrite (ant1, LOW );
digitalWrite (ant4, LOW );
digitalWrite (ant5, LOW );
digitalWrite (ant6, LOW );
digitalWrite (ant7, LOW );
digitalWrite (ant8, LOW );
break ;
>
case 4: < digitalWrite (ant4, HIGH );
digitalWrite (ant2, LOW );
digitalWrite (ant3, LOW );
digitalWrite (ant1, LOW );
digitalWrite (ant5, LOW );
digitalWrite (ant6, LOW );
digitalWrite (ant7, LOW );
digitalWrite (ant8, LOW );
break ;
>
case 5: < digitalWrite (ant5, HIGH );
digitalWrite (ant2, LOW );
digitalWrite (ant3, LOW );
digitalWrite (ant4, LOW );
digitalWrite (ant1, LOW );
digitalWrite (ant6, LOW );
digitalWrite (ant7, LOW );
digitalWrite (ant8, LOW );
break ;
>
case 6: < digitalWrite (ant6, HIGH );
digitalWrite (ant2, LOW );
digitalWrite (ant3, LOW );
digitalWrite (ant4, LOW );
digitalWrite (ant5, LOW );
digitalWrite (ant1, LOW );
digitalWrite (ant7, LOW );
digitalWrite (ant8, LOW );
break ;
>
case 7: < digitalWrite (ant7, HIGH );
digitalWrite (ant2, LOW );
digitalWrite (ant3, LOW );
digitalWrite (ant4, LOW );
digitalWrite (ant5, LOW );
digitalWrite (ant6, LOW );
digitalWrite (ant1, LOW );
digitalWrite (ant8, LOW );
break ;
>
case 8: < digitalWrite (ant8, HIGH );
digitalWrite (ant2, LOW );
digitalWrite (ant3, LOW );
digitalWrite (ant4, LOW );
digitalWrite (ant5, LOW );
digitalWrite (ant6, LOW );
digitalWrite (ant7, LOW );
digitalWrite (ant1, LOW );
break ;
>
>
>
Для начала неплохо, чтобы понять принцип работы. Мы реализовали логику восьми входных линий и восьми выходных, но у нас целый микроконтроллер, так примитивно использовать его было бы не рационально! Давайте добавим интеллекта в наш проект. Для этого определим задачу, пульт должен:
В современных трансиверах имеется специальный выход с данными о текущем диапазоне. Например, YAESU, ELECRAFT и некоторые другие производители, использует паралельный код для определения диапазона, протокол Band Data, а ICOM для этих целей — уровень напряжения. Схема с изменениями:
Как вы заметили, кнопки подключаются всего на один контакт. Вы с просите: « Как это, в место восми контактов — один?» Да один, все просто, кнопки к порту 9 подключаются через резистивный делитель, каждая кнопка снимает с делителя свой потенциал, поскольку это аналоговый вход с функцией АЦП (аналого-цифровой преобразователь, он выдает значения от 0 до 1023, максимальное значение соответствует 5V). Анализируя уровень напряжения с резистивного делителя, можно определить номер нажатой кнопки, что и будет реализовано в программе обработки.
Есть маленький нюанс. Иногда начинающие допускают ошибку, не обеспечивая присутствие на порту постоянного напряжения, отличного от того, что будет измеряться. Для чего это нужно? В момент нажатия кнопки, на порту четко присутствует потенциал с делителя. В момент отпускания кнопки и между нажатиями кнопок, на порту появляется случайное значение (измерять то, нечего!), которое меняется достаточно быстро и наша программа будет «сходить с ума» пытаясь сделать переключение каналов. Чтобы такого не происходило мы через резистор R25 привязываем порт к VCC и будем анализировать в программе, учитывая этот потенциал.
Я не сказал еще о кнопке SB9 — эта кнопка для переключения режима «Авто/Ручной» (при ее нажатии чередуются включение/выключение режима). Изначально в программе будет установлен авторежим, это когда происходит переключение каналов заранее запрограммированых относительно декодера диапазонов. Ручной режим предусматривает отключение декодера и управление пультом «в ручную» — нажимаем ручками, контролируем глазками.
Для дешифровки сигналов BAND DATA YAESU используется двоичный код согласно таблице:
Диапазон | 160 м | 80 м | 40 м | 30 м | 20 м | 17 м | 15 м | 12 м | 10 м | 6 м |
частота | 1.8 Мгц | 3.5 Мгц | 7 Мгц | 10 Мгц | 14 Мгц | 18 Мгц | 21 Мгц | 24 Мгц | 28 Мгц | 50 Мгц |
Band A | 1 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 1 | 0 |
Band B | 0 | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 1 |
Band C | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 0 | 0 |
Band D | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 |
НЕХ код | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | А |
Что касается дешифровки диапазонного напряжения ICOM, то здесь ситуация немного иная. Разработчики приняли решение кодировать диапазоны уровнем напряжения, и их решение несколько неудачное, диапазоны WARC объедины с КВ диапазонами. Н а порты МК более 5 вольт подавать нельзя (а исходное до 8V), поэтому д иапазонное напряжение ICOM будем делить с помощью резистивного делителя R21, R22. Для дешифровки прочитаем значение на порту 8 АЦП и в зависимости от диапазона переключм выходной порт в логическую единицу, остальные сбросим в ноль.
Диапазон | Стандартные напряжения ICOM | Уровни напряжения с делителя по схеме |
160 м | 7.0 — 8.0 v | 4,3 — 4,8 v |
80 м | 6.0 — 6.5 v | 3.68 — 4.05 v |
40 м | 5.0 — 5.5 v | 3.06 — 3.43 v |
20 м | 4.0 — 4.5 v | 2.43 — 2.81 v |
17/15 м | 3.0 — 3.5 v | 1.81 — 2.18 v |
12/10 м | 2.0 — 2.5 v | 1.19 — 1.56 v |
30 м | 0.1 — 1.2 v | 0 |
//Скетч для выборки калибровочных значений на портах АЦП (9 и 8)
int analogPin = 9; // номер порта АЦП на котором производится измерение, измените его при переходе к другому порту
int val = 0; // переменная для хранения считываемого значения
void setup ( )
<
Serial.begin (9600); // установка связи по serial
>
void loop ( )
<
val = analogRead (analogPin); // считываем значение
Serial.println (val); // выводим полученное значение
delay (1000); //Ждем секунду
>
Исходя из вышесказанного делаем дополнения в программной части. Я умышленно включил в проект возможность дешифровки диапазонов двух разных способов от производителей радиолюбительского оборудования, для того, чтобы вы могли выбрать свой вариант, под ту аппаратуру, которую используете. В скетче можете удалить часть кода, которая не нужна. Блоки помечены комментариями.
// Антенный переключатель 1х8 v.1.01
// © Игорь Уватенков (R9JD )
// Скетч написан под Arduino Pro Micro
// Возможно использование на других версиий МК с назначением соответствующих портов входа/выхода
int ant1 = A3; //Порты выходов переключаемых антенн
int ant2 = A2;
int ant3 = A1;
int ant4 = A0;
int ant5 = 15;
int ant6 = 14;
int ant7 = 16;
int ant8 = 10;
i nt dataD = 2; //Порты BAND DATA
int dataC = 3;
int dataB = 4;
int dataA = 5;
int btn = 9; //Порт кнопок
int btauto = 7; //Порт установки режимов Авто/Ручной
int dataIcom = 8; //Порт чтения диапазонного напряжения ICOM
int ledauto = 6; //Порт индикации
boolean setauto = true ; //Режим авто
int NumButton = 1; //Номер нажатой кнопки
int Trcvr = 1; //Применяемое оборудование (1-Yaesu, 0-Icom)
i nt Band; // диапазон
union InBandData <
struct <
unsigned dt0: 1;
unsigned dt1: 1;
unsigned dt2: 1;
unsigned dt3: 1;
> bits ;
uint8_t value;
>;
InBandData BD; // Переменная для хранения состояния кода диапазона
void setup () <
// Назначаем порты на вход
pinMode (dataA, INPUT );
pinMode (dataB, INPUT );
pinMode (dataC, INPUT );
pinMode (dataD, INPUT );
pinMode (btauto, INPUT );
// Назначаем порты на выход
pinMode (ant1, OUTPUT );
pinMode (ant2, OUTPUT );
pinMode (ant3, OUTPUT );
pinMode (ant4, OUTPUT );
pinMode (ant5, OUTPUT );
pinMode (ant6, OUTPUT );
pinMode (ant7, OUTPUT );
pinMode (ant8, OUTPUT );
pinMode (ledauto, OUTPUT );
>
void SetButton () //Определяем номер нажатой кнопки
<
if ( analogRead (btn) >= 900 && analogRead (btn) ≤ 910)
if ( analogRead (btn) >= 877 && analogRead (btn) ≤ 887)
if ( analogRead (btn) >= 853 && analogRead (btn) ≤ 863)
if ( analogRead (btn) >= 816 && analogRead (btn) ≤ 826)
if ( analogRead (btn) >= 761 && analogRead (btn) ≤ 771)
if ( analogRead (btn) >= 670 && analogRead (btn) ≤ 680)
if ( analogRead (btn) >= 490 && analogRead (btn) ≤ 500)
if ( analogRead (btn) ≤ 20)
>
void SetAntenna ( int val)
<
switch (val) < //Выбираем порты которые нужно установить в зависимости от нажатой кнопки
case 1: < digitalWrite (ant1, HIGH ); //Устанавливаем «1» выход антенны 1, остальные сбрасываем в «0 »
digitalWrite (ant2, LOW );
digitalWrite (ant3, LOW );
digitalWrite (ant4, LOW );
digitalWrite (ant5, LOW );
digitalWrite (ant6, LOW );
digitalWrite (ant7, LOW );
digitalWrite (ant8, LOW );
break ;
>
case 2: < digitalWrite (ant2, HIGH ); //Устанавливаем «1» выход антенны 2, остальные сбрасываем в «0 »
digitalWrite (ant1, LOW );
digitalWrite (ant3, LOW );
digitalWrite (ant4, LOW );
digitalWrite (ant5, LOW );
digitalWrite (ant6, LOW );
digitalWrite (ant7, LOW );
digitalWrite (ant8, LOW );
break ;
>
case 3: < digitalWrite (ant3, HIGH );
digitalWrite (ant2, LOW );
digitalWrite (ant1, LOW );
digitalWrite (ant4, LOW );
digitalWrite (ant5, LOW );
digitalWrite (ant6, LOW );
digitalWrite (ant7, LOW );
digitalWrite (ant8, LOW );
break ;
>
case 4: < digitalWrite (ant4, HIGH );
digitalWrite (ant2, LOW );
digitalWrite (ant3, LOW );
digitalWrite (ant1, LOW );
digitalWrite (ant5, LOW );
digitalWrite (ant6, LOW );
digitalWrite (ant7, LOW );
digitalWrite (ant8, LOW );
break ;
>
case 5: < digitalWrite (ant5, HIGH );
digitalWrite (ant2, LOW );
digitalWrite (ant3, LOW );
digitalWrite (ant4, LOW );
digitalWrite (ant1, LOW );
digitalWrite (ant6, LOW );
digitalWrite (ant7, LOW );
digitalWrite (ant8, LOW );
break ;
>
case 6: < digitalWrite (ant6, HIGH );
digitalWrite (ant2, LOW );
digitalWrite (ant3, LOW );
digitalWrite (ant4, LOW );
digitalWrite (ant5, LOW );
digitalWrite (ant1, LOW );
digitalWrite (ant7, LOW );
digitalWrite (ant8, LOW );
break ;
>
case 7: < digitalWrite (ant7, HIGH );
digitalWrite (ant2, LOW );
digitalWrite (ant3, LOW );
digitalWrite (ant4, LOW );
digitalWrite (ant5, LOW );
digitalWrite (ant6, LOW );
digitalWrite (ant1, LOW );
digitalWrite (ant8, LOW );
break ;
>
case 8:
digitalWrite (ant3, LOW );
digitalWrite (ant4, LOW );
digitalWrite (ant5, LOW );
digitalWrite (ant6, LOW );
digitalWrite (ant7, LOW );
digitalWrite (ant1, LOW );
break;
>
>
>
void BandIcom () //Считываем уровень диапазонного напряжения Icom
<
if ( analogRead (dataIcom) >= 910 && analogRead (dataIcom) ≤ 1023)
if ( analogRead (dataIcom) >= 783 && analogRead (dataIcom) ≤ 837)
if ( analogRead (dataIcom) >= 635 && analogRead (dataIcom) ≤ 711)
if ( analogRead (dataIcom) >= 511 && analogRead (dataIcom) ≤ 574)
if ( analogRead (dataIcom) >= 369 && analogRead (dataIcom) ≤ 437)
if ( analogRead (dataIcom) >= 228 && analogRead (dataIcom) ≤ 294)
if ( analogRead (dataIcom) >= 0 && analogRead (dataIcom) ≤ 127)
>
if ( digitalRead (btauto) == HIGH && setauto == false )
if ( digitalRead (btauto) == HIGH && setauto == true )
if (setauto == false) //Если ручной режим
<
digitalWrite (ledauto, LOW ); //Тушим светодиод режима Авто
SetButton (); //Получаем номер кнопки
>
else //Если авторежим включаем каналы
<
digitalWrite (ledauto, HIGH ); //Включаем светодиод режима Авто
if (Trcvr == 1)
else
//Ниже, в блоке условий, нужно указать какая антенна будет включена в авторежиме,
//в зависимости от декодированного диапазона присвоить, NumButton номер нажатой кнопки.
//По номеру кнопки программа включит нужный канал,
//номер кнопки соответствует номеру канала ( антенны)
if (Band == 160)
if (Band == 80)
if (Band == 40)
if (Band == 20)
if (Band == 15)
if (Band == 10)
if (Band == 30)
if (Band == 12)
//if (Band == 17)
//if (Band == 6)
>
SetAntenna (NumButton);
delay (300); //Мониторим три раза в секунду, можете поставить свое время (в милисекундах)
>
КЛЮЧИ КОММУТАЦ ИИ
Ключи выполняются по классической схеме на составных транзисторах либо на транзисторных сборках. Если у вас уже имеются готовые внешние блоки и реле запитаны с общим заземлёным проводом, то выбирайте схему Рис.5а (транзисторных сборок ключей с общей землей, подобной ULN2003 не видел, возможно они есть…) Если у реле оба контакта обмотки реле независимы, то рациональнее выбрать схему Рис.5б, проще с точки зрения монтажа и в этом случае используется всего одна восьмиканальная микросхема ULN2003A вместо кучи радиоэлементов. Схема канала Рис.6а, а цоколевка микросхемы на Рис.7. При выборе микросхемы обращайте внимание на количество каналов, поскольку выпускаются они с 7 и 8 каналами!
Приведенные схемы ключей (Рис.1-Рис.4 и Рис.5а ), немного отличаются тем, что светодиод в первых включен до ключа, а в последней схеме после ключа, что позволяет видеть работоспособность ключа. Для резистора включенного последовательно со светодиодом нужно подобрать номинал в зависимости от применяемого св.диода и напряжения питания реле. На Рис.5б и Рис.6б — способы подключения реле к ключам.
Немного лирики: ULN2803A является массивом транзисторов Дарлингтона в корпусе DIP18 или SO18. Она состоит из 8 транзисторов с общим эмиттером и внутренними подавляющими диодами для индуктивных нагрузок. Каждый транзистор обладает пиковым током нагрузки 600мА (непрерывный 500мА) и может противостоять напряжению 50В в ВЫКЛ. состоянии. ULN2803A обладает входным резистором 2.7кОм для 5В TTL и КМОП для упрощения взаимодействия с семейством логических элементов. Выводы входов находятся напротив выводов выхода для упрощения разводки платы. Выходы возможно подключать параллельно для увеличения тока. Имеются в нутренние помехоподавляющие диоды. Выходное напряжение до 50В. Как видите ничего придумывать не нужно, все уже есть готовое, бери и паяй.
БЛОК КОММУТАЦИИ
В качестве релюшек я выбрал герметичные RT314024. Работают в диапазоне температур от минус 40 до плюс 85 С, 24 вольта постоянного тока, две контактных группы, расстояние между контактами 2.5 мм, ток коммутации 16 А, время срабатывания 3 миллисекунды, габариты 29х12.7х15.7 мм, стоимость в зависимости от производителя и продавца 70-150 руб за шт. В общем класс. Для мощности в киловатт есть запас, это вполне достойный вариант. Есть аналогичные релюхи, высота их чуть больше и время срабатывания до 7-10 миллисекунд, установочные размеры те же: TRA2 D24VDC-S-Z ( см.фото).
Еще можно использовать Вакуумные реле П1Д-1В, П1Д-3В, П1Д-4В, ток протекающий через контакты от 3 А (П1Д-1В) до 7.5 А (П1Д-3В, П1Д-4В) по паспорту, рабочее напряжение на частоте 30 Мгц = 1.5 Кв. На том, что я перечислил, свет клином не сошелся, можете поискать в интернете подходящий вариант, главный критерий большой ток коммутации, расстояние между контактов не менее 2 мм, герметичность и рабочее напряжение удобное для пульта управления 12, 24 или 27 вольт. Я выбрал 24 в поскольку имеется готовый блок питания. Любителям QRO можно взять мощные вакуумные (В1В-1В, В1В-1В1, В1В-1Т1, В1В-1Т2), и как следствие изготовить другую плату.
Коммутатор собирается в металлическом (дюралевом) корпусе, можно купить готовый корпус. Сверлятся отверстия под ВЧ разъемы по маске платы, корпуса ВЧ разъемов крепляются болтами к корпусу блока либо непосредственно, либо через распорные втулки вместе с платой (первый вариант надежнее). Далее плата «надевается на установленые разъемы и центральные жилы припаиваются к плате. Экраны ВЧ разъемов соеденены через корпус коммутатора и подключаются к плате отдельным проводом. Плату крепить отдельно нет необходимости, она прочно удерживается на распаяных разъемах. Выводы для питания релюшек выводятся на боковой разъем, и экранированым проводом спускаются в шек к пульту управления. Для этих целей подходит кабель экранированная „витая пара“ для внешней прокладки, его можно приобрести в любом компьютерном магазине.
Данный проект можно дорабатывать и развивать под те нужды, которые захотите иметь у себя в шеке. Я рассказал о базовых принципах и начальных этапах программирования. После приобретения некоторого опыта можете переходить к более сложным системам. Успехов вам в развитии!