Оглавление:

Робертс RM33 Интернет-радио Raspberry Pi (еще один…): 8 шагов (с изображениями)
Робертс RM33 Интернет-радио Raspberry Pi (еще один…): 8 шагов (с изображениями)

Видео: Робертс RM33 Интернет-радио Raspberry Pi (еще один…): 8 шагов (с изображениями)

Видео: Робертс RM33 Интернет-радио Raspberry Pi (еще один…): 8 шагов (с изображениями)
Видео: Интернет-радио Roberts RM33 Raspberry Pi (еще одно…) 2024, Июль
Anonim
Робертс RM33 Интернет-радио Raspberry Pi (еще один…)
Робертс RM33 Интернет-радио Raspberry Pi (еще один…)

Да, это еще одна сборка интернет-радио на Raspberry Pi, и не моя первая. Я не уверен, почему эта сборка до сих пор так популярна, но мне она все еще нравится, и я не могу сказать, что она будет моей последней. Мне очень нравится внешний вид радиоприемников Roberts начала 80-х, и я начал думать о том, чтобы преобразовать их в интернет-радио.

Моей целью было сохранить тот же внешний вид и интерфейс, что и радио, но заменить внутренности и придать ему цифровой дисплей. Мне очень понравились механические ощущения и звук переключателей, а RM33 дал мне множество дополнительных кнопок для программирования.

Я сохранил концепцию радио, как в оригинальном RM33, используя 3 центральные кнопки выбора для Radio, Spotify и Soundcloud. Это позволило мне использовать ручное управление и 5 кнопок памяти сбоку, чтобы смоделировать то же, что и оригинал для опции радио.

Мне удалось найти RM33 с почти идеальным деревянным корпусом и всеми кнопками, сохранившими свои серебряные колпачки. Однако передняя панель была расшатана, поцарапана и местами погнута, что побудило меня полностью переделать окраску RM33.

Мозг, стоящий за радио, - это Raspberry Pi вместе со звуковой картой USB и стереоусилителем Adafruit для звука. Я сохранил оригинальный динамик и с некоторыми другими частями мне удалось разработать компактную схему для всех необходимых компонентов.

Запасы

Робертс RM33 Радио

Малина Pi 3B

USB-адаптер Wi-Fi

USB-аудиоадаптер для Raspberry Pi (Ebay)

Последовательный IIC / I2C / TWI 2004 20X4 символьный ЖК-дисплей (Ebay)

Petrockblock «PowerBlock» - безопасная кнопка питания / выключатель питания для Raspberry Pi

Стереоусилитель звука 3,7 Вт класса D - MAX98306

MCP3008 - 8-канальный 10-разрядный АЦП с интерфейсом SPI

Adafruit Perma-Proto HAT для Pi Mini Kit - без EEPROM [ADA2310]

24-импульсный инкрементальный механический датчик вращения Bourns с валом с накатанной головкой 6 мм и сквозным отверстием

Одиночный моно 10 кОм Линейный линейный логарифмический потенциометр переключателя (Ebay)

Резисторы 1 кОм x10

Резисторы 10 кОм x9

Реле 5 В JRC-23FS

Диод 1А (для реле)

BC337-025G Биполярный транзистор NPN (для реле)

Шаг 1: разборка

Разборка
Разборка

Должен признаться, я хотел добавить снимок передней панели RM33, прежде чем разбирать ее, но я думаю, из-за того, что передняя часть выглядела ужасно, я никогда не удосужился ее сфотографировать. Передняя пластина была настолько ослаблена и изогнута, что ее можно было без труда снять.

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

Как только все было удалено, я начал думать, где разместить различные компоненты. Я прошел через две итерации этого, в результате чего Raspberry Pi был установлен отдельно, чтобы его можно было легко обновить. Однако, чтобы уменьшить количество проводов, я разместил все в основном шасси.

Шаг 2: Модификации

Модификации
Модификации
Модификации
Модификации
Модификации
Модификации

Первым шагом было убедиться, что я могу заставить кнопки работать, поскольку именно это придает радио уникальный характер с настоящим механическим звуком при нажатии. У каждого переключателя было несколько контактов, поэтому я начал с мультиметра, чтобы найти контакты, чтобы я мог использовать Raspberry Pi, чтобы определить, когда он закрыт.

Когда все переключатели заработали, я добавил к своему испытательному стенду два поворотных энкодера: один для громкости, а другой - для выбора каналов. Я закончил тем, что заменил регулятор громкости на потенциометр, так как меня раздражало поворачивать энкодер от 0% до 100%, делая несколько оборотов. Потенциометр просто сделал один быстрый оборот.

Шаг 3: Модификации, часть 2

Модификации Часть 2
Модификации Часть 2
Модификации Часть 2
Модификации Часть 2
Модификации Часть 2
Модификации Часть 2
Модификации Часть 2
Модификации Часть 2

Использование оригинального шасси для установки потенциометра и поворотного энкодера представило новую проблему, поскольку валы обоих были слишком короткими, чтобы выступать достаточно далеко, чтобы ручки могли поместиться. Я решил установить их в деревянной раме, чтобы валы оставались достаточно свободными.

Но это означало, что в раме нужно было вырезать некоторые прорези, чтобы рама могла поместиться вокруг установленных оснований. На жесткость шасси это не повлияло, это не вызвало проблем. Символьный ЖК-дисплей изначально также размещался внутри рамки, но из-за этого он был слишком далеко от деревянного корпуса. К счастью, перемещение его в переднюю часть рамы было подходящей альтернативой. Я также заменил оригинальный прозрачный экран в деревянной рамке на дымчатый.

Шаг 4: Проектирование схемы

Схемотехника
Схемотехника
Схемотехника
Схемотехника

Изначально разложив основы на макете, я скопировал макет на простую плату, повсюду были провода и ленточный кабель, соединяющий его с Pi. Это вызвало у меня проблемы с напряжением, и на это было не очень приятно смотреть. Я снова начал с нуля, используя Adafruit Perma-Proto HAT для Pi.

Конструкция проста с использованием коротких проводов для размещения всех необходимых мне входов / выходов от различных контактов GPIO. 9 кнопок имеют стандартные резисторы 1 кОм / 10 кОм. Я использовал аналого-цифровой преобразователь MCP3008 для потенциометра, который идеально подходит для зазора на плате заголовка.

Я также использовал расширенный заголовок для HAT, который позволяет мне также установить плату Petrockblock «PowerBlock» на HAT, чтобы обеспечить безопасное включение / выключение с помощью переключателя для Raspberry Pi. Это также полностью завершает работу Pi.

Для аудиоусилителя Adafruit Stereo 3,7 Вт класса D я добавил небольшую плату реле. Это позволяет мне контролировать, когда усилитель включен или выключен. При начальной загрузке Pi я боролся с изоляцией контура заземления, вызывая статический шум над динамиком. Теперь я жду, пока Pi загрузится, прежде чем включить усилитель, и при выключении я могу выключить усилитель.

Шаг 5: Программное обеспечение

Программное обеспечение
Программное обеспечение
Программное обеспечение
Программное обеспечение

Программное обеспечение написано на Python для простоты, поскольку для ЖК-экрана, поворотного энкодера и аналого-цифрового преобразователя легко доступно множество библиотек. Мой сценарий использует демон MPD и Mopidy для Spotify.

Итак, когда Mopidy / MPD заработал безупречно, было легко подключить к нему элементы управления. Я написал простой экран меню, чтобы вы могли выбирать между станциями / песнями. После того, как вы переместили поворотный энкодер к своему выбору, просто нажмите кнопку энкодера, чтобы сделать свой выбор.

Кнопки на передней панели работают как на оригинальном магнитоле. Три посередине вы выбираете, хотите ли вы слушать радио, Spotify или Soundcloud. Для радио 6 кнопок сбоку позволяют вручную выбрать станцию из меню или выбрать одну из 5 предварительно выбранных радиостанций или избранных.

Ручка регулировки громкости также управляет мощностью, поскольку в нее встроен переключатель, который подключен к Petrockblock «PowerBlock», который первоначально включает радио, но также выполняет полное выключение Pi и отключает питание Pi. Это обрабатывается автономным скриптом, работающим в фоновом режиме.

На тыльной стороне магнитолы есть 9-я кнопка. Он разработан на оригинале, чтобы вы могли программировать свои любимые. Но я сделал это кнопкой сброса, когда мой код делает неправильный поворот и быстро перезагружается без полного цикла питания.

Шаг 6: Монтаж всего

Монтаж всего
Монтаж всего
Монтаж всего
Монтаж всего
Монтаж всего
Монтаж всего
Монтаж всего
Монтаж всего

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

Это не только делает его аккуратным, но и сохраняет все в безопасности, не соединяясь с металлическим каркасом. Я все еще могу относительно легко удалить все, если захочу обновить Pi или внести какие-либо изменения в дизайн.

Pi смонтирован на пластиковых стойках, которые я нанес эпоксидной смолой на раму, напечатанную на 3D-принтере. Круглый зазор в середине крепления предназначен для некоторой вентиляции Pi, а квадратный зазор позволяет центральным кнопкам проходить сквозь него для лучшей подгонки. Два других промежутка предназначены для пропуска кабелей.

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

Шаг 7: покрасьте

Покрасить
Покрасить
Покрасить
Покрасить
Покрасить
Покрасить
Покрасить
Покрасить

Это одно из немногих фото оригинальной передней панели. К сожалению (не печально), он покрыт средством для удаления краски, которое хорошо сработало, и я просто смог стереть старую краску бумажным полотенцем. Было немного странно, когда радио Робертса было… Робертса больше нет?

После легкой шлифовки я добавил грунтовку и золотой базовый слой. Изначально я собирался придать ему причудливую цветовую схему, но чувствовал, что должен сделать это перед оригиналом, чтобы придать ему что-то более традиционное. Признаюсь, живопись - моя ахиллесова пята, и я никогда не получаю ее на 100%.

Я добавил виниловую маску, которую выбрала моя жена, которая, как мне кажется, придает характер радио. Я добавил несколько полосок булавками, опять же как дань уважения оригиналу и маскам этикеток для кнопок ручного управления и памяти.

Мне не удалось сделать маски достаточно маленькими для надписей для селекторов громкости и меню, поэтому я оставил это, а не что-то, что выглядело неправильно. Для функциональной кнопки я также не мог решить, ставить ли метки «Радио» и «Spotify», но остался с той же проблемой, что и выше.

Шаг 8: Готовый продукт… или нет?

Готовый продукт… или это?
Готовый продукт… или это?
Готовый продукт… или это?
Готовый продукт… или это?

Я действительно доволен готовым продуктом, даже несмотря на любительскую покраску. Что касается внешнего вида и интерфейса, я не думаю, что буду вносить какие-либо изменения, поскольку я хочу, чтобы он по-прежнему представлял то, что мне нравится от радио Roberts.

Что касается программного обеспечения, я все еще хочу сделать несколько улучшений и, возможно, добавить еще несколько функций, таких как разные списки воспроизведения для Spotify. Я также хочу посмотреть на создание собственного ядра, чтобы попытаться ускорить время загрузки. Я пробовал использовать версию Raspbian Lite, но возникли некоторые проблемы.

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

Спасибо за прочтение! Это моя первая инструкция…

Я в Twitter и Instagram, если вы хотите следить за моими следующими проектами.

Рекомендуемые: