Друзья привет!
Бывают у меня в жизни дни, когда очень хочется послушать любительский эфир - проникнуться духом, так сказать. И как настоящий радиолюбитель я считаю ниже своего достоинства покупать для этой цели промышленный радиоприемник! Это ж сколько удовольствия пропадет! Так вот, довольно давно я собрал для любительского приема несложную схему приемника прямого преобразования на микросхеме R174ХА2. В свое время эту микросхему для коротковолновиков открыл замечательный специалист-ученый-радиолюбитель Владимир Тимофеевич Поляков. Одна из его первых схем на этой микросхеме была опубликована в 12-м номере журнала Радио за 1997 год.
С тех пор эта схема многократно видоизменялась под различную элементную базу. Добавлялись усилители, менялись фильтры, варианты настройки, входные цепи. Одну из таких вариаций я и собрал в свое время. Получилась вот такая конструкция:
Вначале она была без фальш-панели и настройка производилась при помощи вращения конденсатора переменной емкости напрямую! Ох и мучений было с точной настройкой! Дышать нельзя было при настройке! Потом, когда появился 3D-принтер, я добавил фальш-панель, под которой скрыл самодельный редуктор (тоже изготовленный методом 3D-печати). Стало гораздо удобнее! А вот крышку так и не доделал!
Так вот, недавно я извлек этот приемничек из коробки - дай, думаю, послушаю, что за жизнь идет на 40 метрах. Включил и очень удивился! Кроме жутких помех - ничего! Оно днем так всегда было, но та же картина меня ждала и ночью! Хорошо, попробую на другом диапазоне. Попробовал на 20 метрах. Та-же картина! Антенна у меня - 10-метровый кусок витой пары, протянутый снаружи дома между окнами и балконом. Не фонтан, но раньше много чего ловил с ней. Слышал Урал, Сибирь и Средиземноморье... А уж китайские вещалки, так просто оглохнешь!
Я полез на форумы радиолюбителей. Может уже никто не работает? Нет, работают! Даже в Москве работают! И разобрала меня охота просканировать разные любительские диапазоны, а попутно удовлетворить и инженерное самолюбие. То есть сделать своими силами что-то на современном уровне. Может SDR, может еще что! Пока не знаю. Скорее всего SDR. В следующих статьях узнаем... А, как известно, любой приличный приемник начинается с гетеродина или ГПД. А любой многодиапазонный приемник начинается с синтезатора частоты. Так пусть это будет первым шагом в моих поисках места в эфире, в котором можно удовлетворить свои коротковолновые хотелки!
Итак, делаем синтезатор частоты для приема радиолюбительских КВ-станций с перспективой его использования в радиолюбительском приемнике.
Схема и элементная база синтезатора частоты
Основные варианты синтезаторов, которые обсуждаются в радиолюбительском пространстве строятся либо на чипах SI5351, либо на AD9850 (AD9851). Почитав о преимуществах и недостатках обеих микросхем, я остановился на первой. Если вкратце, то вот почему: больше диапазон, многоканальность, высокий уровень сигнала, согласованный с 50-омным выходом, меньший уровень интерференционных частот (спуров). AD9850, конечно, позволяет получать гармонический сигнал (у SI5351 только прямоугольный), но для схемотехники современных ключевых смесителей это требование необязательно. Единственная сильная вещь у AD - беспроблемное получение сдвинутых по фазе сигналов, что важно для использования в квадратурных смесителях. SI-шка в этом плане более проблемна. Но, формировать сигналы со сдвигом на 90 градусом можно и по-другому... Наконец, в пользу выбора SI5351 играет его цена, которая в разы меньше чем у AD. Выбор сделан!
Схемотехника синтезаторов частоты на SI5351 хорошо известна. Более того, в продаже можно найти относительно недорогие готовые изделия (от 2,5 тысяч рублей), построенные на знаменитых Atmel-овских процессорах. Для страстных радиолюбителей в интернете есть много проектов синтезаторов, построенных на недорогих готовых модулях. В основе таких проектов, как правило, лежит микроконтроллер Arduino Nano или Mini. Один из таких проектов я решил и взять за основу. Речь идет о проекте универсального синтезатора на микросхеме SI5351 Николая Большакова, RA3TOX, из Нижнего Новгорода. Ссылку не привожу, она все равно без VPN не открывается. Но если очень захочется, то через поиск можно найти. Прошивка микроконтроллера обеспечивает работу синтезатора в диапазоне от 10 кГц до 100 МГц. Кроме того, предусмотрено формирование сигнала основной частоты (для передатчика), частоты гетеродина для 1-го преобразования частоты и промежуточной частоты для 2-го. То есть на основе синтезатора вполне можно сделать и трансивер. Я себе такой задачи не ставлю, но возможность пусть остается.
Я решил творчески подойти к проекту и немного доработать/переработать его. Во-первых, вместо Arduino Nano или Mini я решил использовать Arduino Pro Micro, на микроконтроллере Mega 32U4. По цене это то же самое, а то и дешевле, но способность этой платформы прошиваться и работать c USB лично у меня вызывает полный восторг! В свое время я успешно использовал этот контроллер в конструкции безопорного руля для компьютерных гонок.
Его и буду использовать.
За основу для синтезатора я тоже возьму готовый модуль, который недорого продается сейчас во всех интернет-маркетах. Вот так он выглядит.
Есть версия с разъемами, чуть дороже, но они нам не очень-то и нужны. Можно найти и микросхему, но придется повозится с согласованием уровней. SI-шка требует 3,3 Вольта, а Arduino - 5 вольт. На плате же уже установлены преобразователи уровней и, в качестве дополнительного бонуса, отдельный стабилизатор напряжения, что говорит в пользу такого решения. Да и вся остальная разводка и обвязка микросхемы тоже сделана на уровне!
Основной элемент управления - обычный энкодер, а устройство отображения - OLED-дисплей диагональю 0,96 дюйма.
Для упрощения как самой конструкции, так и возможности ее повторения, соберем все детали на макетной плате. Несмотря на это, конструкция должна быть готова для встраивания в законченное устройство.
Вот так выглядит общая схема соединений. Насколько я понимаю, такую схему читать легче принципиальной, а уж собирать по ней тем более. Вот, пожалуйста!
В оригинальном проекте Николая Большакова есть еще пара кнопок ("Калибровка", "Смена частоты передачи") и переключатель расстройки. Я решил пока их не добавлять, но при необходимости сделать это не составит труда. Приступаем к изготовлению!
Изготовление синтезатора частоты на SI5351
Все узлы, которые нам понадобятся я сложил на столе.
В основу конструкции я заложил макетную плату-слепыш размером 3 на 7 сантиметров. Она уже снабжена крепежными отверстиями по углам, которые мы, в последствии, используем при сборке готового изделия. Полагаю, что особо комментировать здесь нечего. Все компоненты я ранее упомянул. Начинаем сборку.
Прежде всего, проделаем в плате два отверстия диаметром 2 мм для крепления энкодера. Отверстия точно совпадают с отверстиями печатной платы. Размечать ничего не нужно. Просто сверлим.
Относительно горизонтальной оси симметрии отверстия смещены вверх.
Устанавливаем энкодер, используя просверленные отверстия для продевания его крепежных ушек.
Крепежные ушки с обратной стороны загибаются, а выводы припаиваются к монтажной панели.
С другого края платы запаивается уголковый 4-пиновый разъем. Этот разъем предназначен для подключения питания и подключения к микроконтроллеру по последовательному интерфейсу UART. Последняя функция - на всякий случай, поскольку у нашей Micro есть поддержка USB. Тем не менее, я решил сделать UART - мало ли что!
Следующим шагом запаиваются две 4-пиновых гребенки вертикальных штырьковых контактов. Они потребуются для крепления платы микроконтроллера.
У него конечно больше выводов, но больше нам не потребуется.
Теперь Нужно примерить микроконтроллер, надев его на впаянные штырьки.
Сделать это нужно чтобы правильно установить 4-пиновую колодку под модуль синтезатора. Видно, что между платой контроллера и гребенкой синтезатора есть свободный ряд контактов. после этого микроконтроллер можно впаять на место. Впаивать желательно так, чтобы гребенки лишь слегка (не более 1 мм) выступали над поверхностью платы.
После этого, с обратной стороны прокладываем дорожки питания и последовательного интерфейса.
Дорожки выполнены из откусанных выводов DIP-элементов. Обратите внимание, что верхний контакт внешнего разъема сейчас подключен к пину Vcc микроконтроллера. На этот пин должно быть подано +5 В. Но, во время отладки питание будет подаваться через USB-разъем, а в реальной конструкции, скорее всего, питание будет не 5-вольтовым, а, например, 9-ти. Тогда, подавать питание нужно будет через пин RAW микроконтроллера, который снабжен стабилизатором. Для этого соединить крайний пин внешнего разъема нужно с крайним пином контроллера. Это Вывод A на фото выше. Символ "01" как раз и обозначает место короткой перемычки, которую надо установить в этом случае.
Следующий шаг - соединяем средний вывод энкодера и один из контактов его кнопки перемычкой. Это общий провод.
Переворачиваем плату и с другой стороны соединяем проводом тот же средний вывод и вывод "Земли" микроконтроллера. Я использую провода от старых витых пар Ethernet-кабелей.
Внимание! На фото выше я немного ошибся! Подключил землю к выводу RST контроллера. Нужно было подпаять левый конец провода к следующему пину (левее). Я потом перепаял.
Дальше подключаем все выводы энкодера к микроконтроллеру используя имеющиеся навыки художественной укладки провода.
Надеюсь, что по фото все понятно.
На следующем шаге запаиваем плату синтезатора.
Модуль устанавливается примерно на том же уровне, что и плата микроконтроллера. Должны оказаться распаянными выводы питания, "Земли" и интерфейса I2C (SDA и SCL).
Переворачиваем конструкцию и с обратной стороны подводим к модулю SI5351 провода питания и земли.
Желтый - провод питания рекомендуется заменить на индуктивность 100 мкГн для снижения уровня пульсаций. Вместе с входным конденсатором стабилизатора напряжения на плате синтезатора они образуют хороший фильтр подавления импульсных помех. Я сообразил это потом. Может быть поставлю, если будут проблемы. Пока оставил так.
Монтируем OLED-дисплей.
Чтобы было понятнее, в какие отверстия монтировать, привожу вид с обратной стороны.
Справа остается три пустых отверстия. Дальше, контакты экрана соединяются с контактами платы микроконтроллера при помощи коротких проводков.
Для земли использован оголенный провод (вывод резистора). Заметьте, что белый провод (питание) проходит под платой микроконтроллера и подпаивается с другой стороны. Вот так.
На последнем этапе соединяем выводы интерфейса I2C синтезатора и контроллера двумя проводками.
Все! Конструкция готова. У меня все это заняло примерно 2 часа. Вот так выглядит собранная конструкция. Все вполне прочно и жестко.
Кстати, обратите внимание - вывод земли от энкодера уже припаян правильно.
Настройка, софт и испытания синтезатора
Управляющую программу, которую автор конструкции выложил в открытый доступ пришлось серьезно переделывать. Прежде всего? это было связано, конечно же, с использованием Arduino Pro Micro вместо Nano. Тем не менее, каково же было мое изумление, когда запустив черновик переделанной программы (просто чтобы убедиться в работоспособности конструкции) я увидел на экране вместо стабильной частоты какие-то "игры разума". Частота гуляла как только ей заблагорассудится. Нажатие пальцем на кварц синтезатора вообще уводило частоту непонятно куда и даже ее среднее значение не было близко к заданной величине. Кроме того генерация регулярно срывалась.
Конечно такого быть не должно. Я начал рассматривать модуль под сильным увеличением. Выяснилось, что в модуле установлена не оригинальная SI5351, а ее китайский клон MS5351. Я было полез в интернет, но очень быстро убедился, что по своим характеристикам они примерно равноценны. Так утверждал знающий народ и оснований не верить ему не было. Остается кварц. Что хотите со мной делайте, но кварц должен оставаться кварцем даже при нажатии на него пальцем. Да, частота плыть может, особенно при умножении, но не в разы же! Залез в интернет-магазин, в котором покупал плату, читаю в комментариях - точно! Кварцы - общая беда всех китайских плат. Ставят что попало! Народ смело меняет их! Причем рекомендуют кварцы от материнских плат, отличающиеся, как правило, хорошими характеристиками. У меня как раз в наличии была старенькая донорская плата от Asus. Я с нее уже кое-что поснимал!
А теперь внимание!
Вот то, что мне нужно! Выпаиваю кварц из старой материнки.
Кварц с платы синтезатора выпаиваю тоже. Даже без подогрева и фена. Просто сверху паяльник, разогретый до 300 градусов приложил и через 5 секунд кварц отлепился!
Я думал, что греть феном придется, поэтому предварительно снял провода I2C-интерфейса, но греть не пришлось! Легко снялся так. Теперь устанавливаем кварц с материнской платы предварительно немного подогнув его ножки вовнутрь.
Если посмотреть ближе:
Держится прочно, хотя эстетика немного пострадала. Для любителей эстетики можно заказать кварц в ЧИП-ДИП-е.
Только после описанной процедуры сигнал застыл как вкопанный! Вот 500 кГц.
А вот 10 МГц. Тут уже щуп осциллографа начинает оказывать заметное влияние.
У меня нет точных измерительных приборов, но гоняя синтезатор по разным диапазонам, и интерполируя относительную погрешность, я грубо оценил точность синтезатора в несколько сотен Гц.
А вот с софтом нехорошо получилось! Софт пришлось перелопатить кардинально, начиная от использованных библиотек и заканчивая логикой работы отдельных функций. Все стало лаконичнее и компактнее. Собственно, надо отдать должное автору - он предупреждал, что программистом не является и решал только задачу реализации определенного функционала. За это ему большое спасибо! А мы уж доработаем. В конце я приложу свой вариант софта со всеми необходимыми библиотеками. Удалось снизить объем кода примерно на 30 процентов. С большой радостью я избавился от Adafruit-овских библиотек работы с OLED, заменив их более подходящей и легковесной OLED_I2C-master. Кстати, выяснилось, что библиотеки от Adafruit некорректно работают с контроллером SSD1315, которым внезапно оказался оснащен мой OLED-экранчик. Изображение выводилось через строку. Кроме того я переделал общую структуру программы, убрав из нее ненужные функции калибровки и расстройки частоты. Корректировка частоты теперь задается константой, а расстройку, при необходимости легко вернуть. Для остальных функций памяти тоже еще достаточно.
не исключаю, что в будущем софт еще раз придется пересмотреть в зависимости от логики управления приемником-смесителем, может фильтрами... Не знаю пока. Главное, возможностей, на мой взгляд, вполне достаточно.
Еще, я немного переделал вывод на экран. Теперь показания частоты читаются проще. Вот несколько скринов с показаниями экрана и формой сигнала.
На 30 МГц сигнал на моем осциллографе становился совсем похожим на синус,а амплитуда потихоньку начала убывать. Но ближе к 50 Мегагерцам она снова стала расти. Максимум достигался на 55 Мегагерцах.
Дальше опять пошло снижение. Наконец, почти максимальная частота для моего изделия, но не для микросхемы, которая может в разы выше. Мне просто не надо! Вообще, хватило бы и 30!
Дисплей крупным планом.
Как видно, частота выводится в Герцах с разделительными точками для удобства восприятия.
На этом первый вариант к современному приемнику радиолюбителя можно считать законченным. Дальше что? Наверное смеситель. А может и весь приемник сразу... Пока не решил. Разбираюсь с вариантами. Присоединяйтесь!
Архив с программным обеспечением (скетч и необходимые библиотеки) доступен по ссылке:
Спасибо, что читаете-смотрите Terrabyte! Подписывайтесь, если вам интересна радиолюбительская тематика, микроконтроллеры, мини-ПК, необычные компьютерные решения и инновационные разработки! Спасибо всем, кто поддерживает меня своими комментариями и лайками!
Наша группа ВК: https://vk.com/terrabyte
Наш канал на VK-Video: https://vk.com/video/@terrabyte/all
Интересные самоделки: