Найти в Дзене
Паяльник

Конструктор FM-приемника на модуле RDA5807 для новичков

Давно хотел спаять себе FM-приемник из китайского конструктора. На Aliexpress представлено множество разнообразных наборов на любой вкус и кошелек. Чаще всего такие конструкторы собраны на модуле RDA 5807 (модуль RRD-102 или отдельный чип 5807F) и комплектуются корпусом из прозрачного акрила.

Мне идея прозрачного корпуса близка. Считаю, что для самоделки это идеальный вариант. Поясню. Самому сделать корпус "а-ля заводской" практически невозможно даже при использовании 3Д печати. Брать готовый заводской корпус - не интересно и не спортивно. Прозрачный корпус интересен тем, что можно рассматривать "внутренности" приемника не разбирая его. Вот чего мне не хватало в детстве, когда очень хотелось посмотреть "а что там внутри"?

Выбрав пару интересных конструкторов начал смотреть их обзоры на YouTube. И вот тут меня ждало разочарование. Все модели имели достаточно простой функционал: чаще всего они могли сканировать каналы в автоматическом режиме и регулировать громкость. Экраны на LED-индикаторах тоже навевали скуку.

Как говорится, если хочешь сделать что-то хорошо - сделай это сам.

С большим интересом погрузился в изучение материала по модулям RDA5807 на основе которого строится большинство бюджетных самодельных и не только самодельных приемников. Для управления модулем применяются Arduino-платы на базе процессоров Atmega8 - Atmega328. С помощью готовых скетчей и библиотек есть возможность подключать разнообразные дисплеи в т.ч. и OLED-экраны, которые мне очень нравятся.

Во время поиска подходящего мне по железу и софту приемника наткнулся на интересную тему к статье "Радиомодуль с RDA5807M продлевает жизнь старых радиоприёмников". Тема существует уже 10 лет и за это время в ней накопилось огромное количество схем и прошивок приемников на любой вкус. Кроме этого, есть каталог, в котором все схемы сведены в единую таблицу. Остается только подобрать максимально подходящий вариант. Большую часть прошивок пишет Александр Павлович с ником asvetp.

Какие софтовые функции я хотел видеть в своем идеальном приемнике:

  • автосканирование (автопоиск) частот вверх и вниз по частоте
  • запоминание частот в список
  • возможность редактирования каналов, в т.ч. и их названия
  • ручной поиск
  • запоминание канала и уровня громкости после выключения

Железо:

  • поддержка ОЛЕД-экранов (0.91" или 1.3") 128x64 пикселя
  • питание от одного элемента 18650 3.7 В
  • возможность зарядки АКБ от USB-кабеля
  • возможность работы как на наушники, так и на динамик
  • управление кнопками

После некоторого изучения темы я понял, что "идеальной" прошивки не существует. Подобрал максимально близкую к своим запросам, но к сожалению без функции ручного поиска и редактирования названия канала. Впрочем, с этим можно мириться т.к. ручной поиск можно заменить ручным вводом частоты, а редактирование названия канала частично заменяет RDS.

Для тестирования прошивок собрал макет на монтажной плате Ардуино.

-2

На модуле Arduino NANO заменил процессор Atmega328p на Atmega8 - именно под этот процессор написано большинство прошивок.

-3

Модуль RDA5807M (RRD-102) имеет нестандартный шаг "ножек", для установки в макетную плату сделал переходник:

-4

Сразу хочу написать про "распиновку" OLED-экранов. Для 0.91" и 1.3" экранов она разная! Пины питания +VСС и GND не совпадают:

-5

К счастью, на платах индикаторов есть отдельные перемычки с помощью которых можно задать нужное нам положение пинов. Я пользуюсь стандартом 0.91" экранов - GND-VCC-SCL-SDA.

-6

В процессе общения на форуме, asvetp любезно согласился добавить функцию ручного поиска в "базовую" прошивку.

Авторская схема приемника и прошивки под экраны 0.91" и 1.3" прикреплены внизу статьи. Теперь прошивка максимально приблизилась к идеальной и наступил черед заняться железом.

Авторскую схему я немного изменил. Свой вариант рисовал в программе easyEDA. В ней же можно развести печатную плату и получить герберы для заказа изготовления плат на заводе.

-7

Добавил усилитель НЧ для динамика на популярном чипе 8002. Схема подключения типовая. На входе поставил подстроечный резистор с помощью которого можно регулировать входной сигнал. Регулировка громкости в приемнике цифровая, но этот резистор позволит установить начальный уровень громкости. Усилитель питается непосредственно с выхода аккумулятора.

На вход усилителя поступает моно-сигнал, но на разъеме наушников он стерео. Кстати, звук в динамике отключается автоматически, когда вставляем наушники.

Схема питания состоит из популярной платы зарядки TP4056. Она позволяет заряжать элемент 18650 от USB, а так же содержит в себе схему защиты от перезаряда и КЗ. По умолчанию плата настроена на ток заряда в 1А. При таком токе она очень сильно греется. Я уменьшил ток заряда до 400 мА. Для этого надо заменить резистор R3 - поставить 3 кОм.

-8

В качестве источника 3.3 вольта использовал линейный стабилизатор напряжения с малым падением XC6206P332MR (662K). От него питаются процессор Atmega8, модуль RDA5807 и OLED-экран.

-9

Развел плату в программе easyEDA. Монтаж делал с учетом дальнейшего изготовления платы методом ЛУТ.

-10

Вспомнил былые навыки и за один вечер изготовил печатную плату. Благо текстолит и хлорное железо были в наличии.

-11

Спаял плату. Для программирования процессора Atmega8 можно использовать дешевый  программатор USBASP AVR. На плате приемника предусмотрен 10-ти пиновый разъем для подключения программатора.

-12

В качестве софта использовал программу avrdudeprog33. Никаких сложных настроек не требуется. Выбираем нужную прошивку, обязательно во вкладке Fuses надо выставить нужные фьюзы: LOW = 0xE4 HIGH = 0xDF

-13
-14

Нажимаем кнопку Programm. Если все успешно, то через несколько секунд Atmega будет прошита.

-15

Протестировал приемник. Все работает отлично. Только при минимальной громкости были слышны помехи от OLED-экрана. От них удалось избавиться с помощью дросселя на 22 uH, включенного в цепь питания экрана.

-16

Казалось, что можно заказывать платы на заводе и делать корпус, но только сейчас я задумался о компоновке приемника и эргономике его управления. Если располагать АКБ и динамик справа корпуса, то будет неудобно нажимать кнопки управления одной рукой.

Принял решение переделывать плату. Через два дня получился новый вариант:

-17

Уменьшил размеры платы, кнопки управления перенес на верхнюю панель. Так удобнее нажимать кнопки одной рукой.

Заказал платы на PCBwave. Через месяц ожидания получил готовые платы. Качество, как всегда, на высоте. Маска, шелкография, металлизация отверстий - все выполнено качественно. Номиналы элементов подписаны - можно паять плату без схемы.

-18

За время ожидания плат собрал все необходимые детали для пайки конструктора. Кнопки использовал 6X6X8MM:

-19

Буквально в тот же вечер "присобрал" приемник - впаял процессор, разъем программирования и дроссель питания экрана.

-20
-21

Запрограммировал Atmega8 и проверил, что прошивка успешно "заводится".

-22

На следующий день спаял приемник полностью. Для подключения динамика и АКБ применил разъемы:

-23
-24

OLED-экран закрепил с помощью 8 мм нейлоновых стоек:

-25
-26

Проверка прошла успешно. Прием был даже лучше, чем на тестовом экземпляре. Помех от OLED-экрана не было.

-27

Первый этап сборки закончен. Теперь надо спроектировать и сделать корпус. Как я писал выше, корпус будет выполнен из прозрачного акрила толщиной 3 мм.

Динамик и холдер для аккумулятора 18650 я купил заранее.

-28

Корпус проектировал в программе CorelDraw. Сначала прикинул компоновку узлов в корпусе:

-29

Предварительно сделал макет корпуса из подложки под ламинат толщиной 3 мм.

-30
-31

Перенес все размеры в CorelDraw. В процессе работы несколько раз распечатывал проект на принтере и проверял подгонку размеров и расположения отверстий и вырезов.

-32

Заказал лазерную резку акрила и через несколько дней получил заготовки:

-33

Сразу могу сказать, что ошибок в проекте не было. Все заготовки точно "сошлись".

Начинаю сборку.

Сначала нарезаю резьбу М2.5 под четыре нейлоновые стойки высотой 6 мм на которые будет крепиться плата приемника.

-34
-35
-36

Далее надо приклеить к задней стенке верхнюю и нижнюю стенки и правую боковую панель.

При склейке надо соблюдать геометрию, чтобы не было перекосов. Для этого я собираю корпус полностью и потом клею по одной детали, контролируя правильность склейки с помощью ровной поверхности стола. Клей - обычный "минутный" цианкрилатный.

-37

Передняя панель держится за счет шипов. Чтобы корпус не развалился левая боковая стенка прикручивается с помощью двух винтов. Для этого клею две закладные детали (предварительно нарезаю резьбу М2.5). Принцип крепления показан на фото:

-38
-39
-40

Перед установкой платы в корпус надо прикрутить антенну. Использую 50 см 6-ти секционную антенну с возможностью поворота и наклона. К сожалению, площадку крепления антенны на плате я сделал на 1 мм меньше, чем надо. Поэтому, перед креплением антенны надо чуток уменьшить ширину ее "хвостовика":

-41

Прикручиваю антенну с помощью винта и гайки М2.5. Чтобы антенна не "елозила" при эксплуатации рекомендую припаять "хвостовик" к плате приемника.

-42
-43

Теперь надо подготовить "холдер" (держатель) для аккумулятора 18650. Я вывел его контакты внутрь корпуса и пропустил через два отверстия в стенке. Так получается удобнее для дальнейшего монтажа и выглядит эстетичнее:

-44

Подключаю держатель аккумулятора к плате с помощью разъема.

-45

Теперь можно крепить плату и "холдер" в корпусе. Плата прикручивается четырьмя нейлоновыми винтиками М2.5, "холдер" можно закрепить с помощью двухстороннего скотча, но я применил один винтик М2.5 с "потайной" головкой. Это позволит снимать "холдер" при необходимости. Предварительно надо высверлить и нарезать резьбу М2.5 в задней стенке корпуса. Разметку отверстия делал "по месту".

-46
-47

Пришло время закрепить динамик на передней крышке корпуса. Использую металлические винтики М2.5х6 с потайной головкой и внутренним шестигранником плюс нейлоновые гайки.

-48

Вид спереди:

-49
-50

Вид сзади:

-51
-52

Чтобы спрятать потайные головки винтов делаю в акриле углубления с помощью специальной конической насадки:

-53

Подключаю динамик к плате с помощью разъема, закрываю переднюю крышку.

-54

Правую боковую стенку прикручиваю двумя винтиками М2.5х6:

-55

Устанавливаю цветные колпачки на кнопки:

-56

Все. Сборку приемника можно считать законченной:

-57

Вид со стороны задней крышки. Предусмотрено отверстие для программирования процессора. Для смены "прошивки" разбирать приемник не надо:

-58
-59

Вид со стороны разъемов:

-60

Вид со стороны правой боковой стенки:

-61

Передняя панель крупным планом:

-62

Вид в анфас:

-63

Ночная магия:

-64

Откалибровал индикатор разряда батареи. Как это сделать описано в инструкции. Проверил все функции приемника. Замечаний нет. АКБ заряжается, наушники играют, программная часть работает, как и заявлено.

Чувствительность приемника отличная. В помещении на первом этаже "автопоиском" находит 20-21 станцию. Не находит только самые слабые каналы, причем, если перейти на другую сторону квартиры, эти слабые станции можно словить там. На многих каналах работает RDS.

Громкости наушников хватает уже на 2-3 делениях. Звук чистый и "сочный". Динамик не хрипит даже на максимальной громкости. Кстати, кому не хватает громкости можно подобрать значение резистора R9 в обвязке УНЧ 8002. Хочу отметить, что при повышении громкости значительно увеличивается ток потребления приемника, что может отразиться на его автономности.

В настройках приемника есть опция гашения экрана через некоторое время. Это еще больше увеличит время работы аккумулятора без подзарядки. Хотя гасить такую красоту у меня желание не возникает.

Эргономика хорошая. Приемник устойчиво стоит на ровной поверхности, сверху удобно нажимать на кнопки. Экран виден даже под острыми углами. Антенна крутится во всех направлениях, что позволяет добиться максимально качественного приема.

Итог

Считаю, что получился отличный конструктор для сборки FM-приемника с достаточно неплохими характеристиками. Такой приемник будет интересно собрать и не стыдно подарить.

Для сборки конструктора, кроме радиодеталей, достаточно заказать печатную плату и резку корпуса. Гербера платы и файл для резки прикреплены к статье. Все радиодетали можно купить на Алиэкспресс или других торговых площадках. Детали не дорогие и доступные. Для удешевления старался сокращать количество номиналов резисторов и конденсаторов.

Я остался доволен полученным результатом. Мне понравился как процесс проектирования, так и процесс сборки. Пожалуй, соберу еще один...

Всем удачи.

Прикрепленные файлы:

Автор: lagush