Съдържание:
- Консумативи
- Стъпка 1: Настройка (без глава) Raspberry Pi W
- Стъпка 2: Инсталирайте старши софтуер за радио
- Стъпка 3: Инсталирайте допълнителен софтуер
- Стъпка 4: Намерете потоци от радиостанции
- Стъпка 5: Създайте вериги
- Стъпка 6: Тествайте го
- Стъпка 7: Поставете в постоянен корпус
- Стъпка 8: Настройка на програмата за стартиране при стартиране
Видео: Старше радио - Raspberry Pi: 8 стъпки
2024 Автор: John Day | [email protected]. Последно модифициран: 2024-01-30 07:51
Проектът Senior Radio е устройство с интернет достъп, достъпно с отворен код, с хардуерни и софтуерни компоненти. Той е предназначен да се използва за потребители, запознати с управлението на джобно радио, където циферблатите контролират силата на звука и избраната радиостанция. Проектът е направен с ориентиран към потребителя дизайн, фокусиран върху потребител, който иска подобен размер и контроли като стандартно преносимо радио.
Той е създаден, за да задоволи нуждите, позволяващи на хората с увреждания да могат да слушат хилядите различно интернет поточно съдържание, което обикновено обикновено е достъпно само чрез интернет браузър. Много хора нямат възможност лесно да използват такова устройство, така че този дизайн има за цел да направи познат интерфейс за съвременна технология.
Основната функционалност е на Github, съхранявана в програма на python 3.7.3, наречена seniorRadio.py. Той чете и записва json файл, за да съхранява състоянието на радиото, така че когато го изключите, той ще запомни текущото аудио ниво и избрана станция. Освен това той чете онлайн хостван json файл, който можете да промените! Това ви позволява да актуализирате радиостанциите от разстояние, ако давате това на някой друг.
Понастоящем той е създаден за свързване към Bluetooth високоговорител, но лесно може да се направи и за възпроизвеждане на вграден високоговорител.
Създателят на това устройство вероятно не е потребителят и се нуждае от поне малко опит с електрониката и основни познания по програмиране. Опитът с Linux също е много полезен.
За потребителя функционалността е проста:
При включване той ще възпроизвежда последната станция, избрана през аудиоустройството по подразбиране. Левият циферблат контролира станцията, където няколко щраквания на циферблата се променят в нов URL. Той ще се преобърне след последния или първия запис. Десният диск регулира нивото на звука. Светодиодът показва, че програмата е включена. И бутонът спира или „изключва“радиото. Така че, след като се включи, потребителят може просто да натисне бутона, за да постави на пауза/възпроизвеждане, или „да изключи/включи“, радиото и двата диска, за да го контролира.
Консумативи
Към всеки елемент е свързан конкретният, който използвах. Общо ми струваше около 60 долара с много останали запаси!
Основни електронни и Linux познания - за сглобяване и отстраняване на грешки
Raspberry Pi Zero W (Zero WH има заглавки предварително запоени и вероятно полезни)
MicroSD карта-8 GB+ и способност o
MicroUSB 5V захранващ адаптер - Връзката включва също microHDMI адаптер и microUSB OTG към USB адаптер за настройка, ако имате нужда от тях
Bluetooth високоговорител
M/F и M/M джъмперни кабели
2 Ротационен енкодер - същата връзка, както по -горе
Малка дъска
Натисни бутона
LED (по избор) - закупен LED + бутон отгоре
Кутия за опаковане
Стъпка 1: Настройка (без глава) Raspberry Pi W
Трябва да настроим операционната система на малиновото пи, което ще изпълнява софтуера. Нищо от това не е уникално за този проект. За отстраняване на грешки бих препоръчал да го настроите, така че да имате достъп до него и в режим без глава. Това означава, че имате достъп до pi през вашата WiFi мрежа чрез GUI или SSH терминал и нямате нужда от клавиатура, мишка и монитор, за да го използвате всеки път. Бихте могли да направите това, без да се налага да се свързвате с монитор/мишка/клавиатура, ако сте по-запознати с технологиите. Няколко примерни инструкции тук. Той обаче е по -малко прав и по -долу е друг начин да го настроите.
Този първи път вероятно ще ви трябва:
- Малина Pi W
- Адаптер за MicroSD към SD карта [за запис на операционна система на SD карта]
- MicroSD карта (~ 8 GB+) [за съхранение на операционната система и нашата програма]
- Захранване MicroUSB (5V)
- MicroUSB към USB A [за мишка/клавиатура]
- Мини HDMI към HDMI адаптер [за извеждане на дисплея]
- Клавиатура
- Мишка
- Монитор
Първо, ще трябва да мигате операционната система на rPi micro SD картата.
Използвах raspian buster, изтегляте това на компютър с четене/запис на SD карта и след това флашвате raspian OS на SD картата. BalenaEtcher е лесен софтуер за това
След това поставете SD картата в слота pi, свържете монитора, клавиатурата и захранването. Продължете през стъпките за настройка, към които vas подканя raspian, включително свързването му към вашата WiFi мрежа и сдвояването на вашия Bluetooth високоговорител през GUI. Добра практика би било да го актуализирате, като използвате следните команди
sudo apt-get update
sudo apt-get надстройка
Ако искате да включите маркирането на вашето pi без глава, първо ще трябва да вземем ip адреса на pi. Чрез терминал можете да го намерите чрез
ifconfig
команда. След това трябва да активирате SSH и VNC през опциите за свързване в
sudo raspi-config
След рестартиране вече можете да тествате достъпа до pi през SSH или VNC. SSH е просто терминален интерфейс и може да ви бъде по -лесно да използвате GUI за сдвояване на Bluetooth високоговорител. Можете да използвате програма като VNC connect за лесен достъп до вашето pi на отделен компютър във вашата мрежа. Можете да използвате програма като замазка за SSH в нея.
Освен това можете да настроите VNC облачен акаунт, така че да имате достъп до устройството извън мрежата, ако е необходимо
Стъпка 2: Инсталирайте старши софтуер за радио
Това може да стане от терминален прозорец на малиновото пи. Първо се уверете, че имате инсталиран git
sudo apt-get install git
В зависимост от това коя операционна система сте инсталирали, тези стъпки може да са различни, тъй като може да се наложи да инсталирате допълнителни пакети, системата ще ви каже дали е така. Първо трябва да изтеглите старшия радио код от github. https://github.com/Bunborn/seniorRadio В идеалния случай вие правите нашето собствено репо, за да можете да правите промени и лесно да променяте радиостанциите по същия начин като мен. Разклонете репо, ако е така
Можете обаче да използвате същото като моето без проблем, ако искате да хоствате вашия радио json файл на друго място
След това клонирайте репо на всяко място, което искате да бъде. Директорията по подразбиране е добре. Вземете URL адреса, за който искате github репо, като натиснете зеления клонинг или бутона за изтегляне.
Обратно в прозореца на терминала, git клонинг
Сега трябва да видите допълнителна директория, наречена seniorRadio, когато търсите с помощта на ls. Фантастично!
Кодът е предназначен да се самодокументира, разглеждането му би било полезно. Особено за отстраняване на грешки и ако променяте системата.
Стъпка 3: Инсталирайте допълнителен софтуер
Преди да преминем към веригата и да я тестваме, трябва също да изтеглим VLC и python api за нея. Може вече да имате инсталиран VLC. Първите две команди ще актуализират pi, а последните две команди по -долу ще инсталират VLC и след това api python
sudo apt-get update
sudo apt-get надстройка
sudo snap install VLC
sudo apt-get install vlc-python
В допълнение, също така инсталирайте gpiozero, който ще използваме за взаимодействие с GPIO щифтовете на pi. Възможно е вече да сте го инсталирали в зависимост от вашата операционна система.
sudo apt-get install gpiozero
Стъпка 4: Намерете потоци от радиостанции
След това, една от най -забавните части! Време е да изберете каквито потоци искате.
Във файла internetStations.json можете да видите връзките ми към потока, главно за новини и музика. Но там има много хоствано съдържание. Ключът тук е да намерите URL адреса на директния поток. Например новините и музикалните станции на BBC могат да бъдат намерени тук в този блог. Тези директни потоци няма да имат графичен интерфейс и автоматично ще възпроизвеждат потока чрез медийния плейър на вашия браузър. Това са URL адресите, от които се нуждаем, за да може VLC да ги прочете! Можете бързо да тествате всяка връзка във вашия уеб браузър или чрез VLC на нормалния си компютър, за да сте сигурни, че ще работи на pi.
За да намерите тези станции, можете да потърсите директния поток онлайн, ако услугата го хоства. Бърз начин може да бъде и пускането на потока, щракнете с десния бутон върху браузъра и натиснете „инспектиращ елемент“. Придвижете се до раздела мрежа и той трябва да посочи „директния“URL адрес на потока. Това видео в YouTube показва това. Опресняването на страницата с отворен раздел трябва да помогне.
След като разполагате със своите станции, искате да ги пуснете онлайн, за да може вашата старша програма за Python seniorRadio да ги вземе. Има много опции за това, можете да използвате сайтове като Github, bitbucket или дори sourceforge. Основната цел на хостването на този списък онлайн е потребителят, който го настройва, да може да променя списъка с потоци онлайн дистанционно.
В началото на програмата python има променлива, наречена url, просто променете това като URL на вашия json файл с връзките към URL адреса на станцията
Можете да следвате същия формат като моя файл internetStation.json. Ако искате да използвате и github, можете просто да раздвоите моето хранилище seniorRadio и да редактирате собствения си файл internetStation.json и да го насочите към този „суров“URL адрес. Можете да намерите това по -долу в GITU на Github, след като щракнете върху файла.
Стъпка 5: Създайте вериги
Сега трябва да настроим веригата. Това ще се промени в зависимост от вашето оборудване, но по -долу е начинът, по който настроих моето.
pinout.xyz/ за справка кои пинове са кои. Тъй като използваме библиотеката gpiozero, ние се занимаваме само с номерирането на BCM пинове. Обърнете внимание, че купих няколко допълнителни въртящи се енкодера KY040 - циферблатите - за да ги изпробвам, тъй като не всички имат еднаква точност. Всеки от тях ще има някакъв „подскачащ“или просто неправилен изход, така че избрах най -доброто от двете, които имах. В кода ще отбележите, че има някои стъпки за ограничаване на това подскачане.
Свързах моя бутон към BCM щифт 17 и маса
Моят светодиод към 1k ом резистор, след това BCM щифт 27 и маса
Моите въртящи се енкодери KY040 имаха + кабела към 5V, GND към земята и SW изключен. Те бяха свързани чрез мини платка
Станционен ротационен енкодер dt щифт, свързан към BCM щифт 21
Станционен ротационен енкодер щифт, свързан към BCM щифт 20
Dt щифт на въртящ се енкодер на ниво аудио, свързан към BCM щифт 19
Ротационен енкодер за нивото на звука, свързан с щифт 16 на BCM
Ако промените тези щифтове, просто актуализирайте номера и в програмата на python, където тя настройва манипулаторите
Използвах мини дъска, за да направя това по -лесно. Използвах и джъмперни проводници M/M и M/F, за да улесня интерфейса. Запоях няколко кабела на джъмпера към щифтовете на бутона/LED, който купих по -рано. За да не запоявате, можете да получите бутони и светодиоди, които вече имат джъмперни проводници или лесно биха се свързали с такъв.
Стъпка 6: Тествайте го
Сега трябва да имате функционираща система! Нека го тестваме. Придвижете се до папката с програмата python, вероятно:
cd старши Радио
python3 seniorRadio.py
Понастоящем има забавяне от 45 секунди в началото на програмата, за да му се даде време да намери Bluetooth високоговорителя при включване. Можете да коментирате този ред, ако нямате нужда от него по време на тестването. Програмата може да ви каже, че трябва да инсталирате допълнителни пакети, продължете, ако е така. Може също да се наложи да инсталирате по -нова версия на Python.
sudo apt-get install python3.7
Някои възможни проблеми, дори ако програмата работи:
Не чувам звук
Уверете се, че високоговорителят е включен и избран във вашето малиново пи. Чрез графичния интерфейс трябва да можете да го сдвоите и след това да го изберете като аудио изходно устройство. Освен това проверете аудио драйверите си. Често срещан проблем е, че може да се наложи да преинсталирате пакета pulseaudio
Аудио прекъсване или изрязване
Опитайте да преместите устройството по -близо до вашия WiFi рутер. Освен това се уверете, че Bluetooth високоговорителят е наблизо. Може да е и проблем с аудио драйвера
Стъпка 7: Поставете в постоянен корпус
След това го поставете в кутия или подобно устройство, за да живее постоянно. Препоръчвам да имате такъв, до който да имате достъп по -късно за отстраняване на грешки. Взех тази малка дървена кутия в занаятчийски магазин за 2 долара и я свързах на страницата с консумативи. Един от приятелите ми препоръча кутия за пури.
След това изрязах отвори отпред за бутоните и въртящите се превключватели и пробих дупка в задната част на кутията за захранващия кабел microUSB.
Тествах стойката и се уверих, че работи, и ето!
Накрая използвах супер лепило за задържане на бутона. Моята дъска имаше лепило на дъното, което свързах към част от кутията. Използвах малка лента от тиксо, за да закрепя гърба на пи към кутията, така че може да се премести по -късно, ако е необходимо.
Стъпка 8: Настройка на програмата за стартиране при стартиране
И накрая, вероятно ще искате тази програма на python да се стартира при стартиране на малиновото пи, така че не е нужно да го правите ръчно. Има много начини да направите това, които можете да намерите онлайн.
Лично аз го настроих по втория начин на този урок за SparkFun:
Тук той изчаква системата да влезе в графичния работен плот, преди да стартира програмата. След това програмата на python се забавя за 45 секунди, за да даде време на системата да се свърже отново с високоговорителя Bluetooth. Ако използвате вграден високоговорител, можете да премахнете това забавяне. Обърнете внимание, че Bluetooth високоговорителят трябва да е включен първи! (за Bluetooth решение)
Сега можете да опитате да изключите и включите отново вашето pi! След около 90 секунди вашето пи трябва да започне да възпроизвежда радио потоците отново. При натискане на бутона, той ще направи пауза/възпроизвеждане. Обърнете внимание, че при тези рестартирания той препрочита този файл internetStation json, така че ако промените станциите си, трябва да рестартирате устройството, за да работят. Честито!
Ако сте направили това или сте направили промени в проекта, моля, уведомете ме!
Страница на Github:
Препоръчано:
Интернет радио BOSEBerry Pi: 4 стъпки (със снимки)
Интернет радио BOSEBerry Pi: Обичам да слушам радио! Използвах DAB радио в къщата си, но установих, че приемането е малко неравномерно и звукът продължава да се къса, затова реших да създам собствено интернет радио. Имам силен wifi сигнал около дома си и цифровия брат
Поддържане на тъпота Просто интернет радио: KISSIR: 13 стъпки
Поддържане на тъпота Просто интернет радио: KISSIR: Понякога просто трябва да е тактилно. Няма никакъв интерфейс. Просто бутони. Raspberry Pi като интернет радио плейър не е нищо ново и има много инструкции как да създадете интернет радио плейър с малиново пи с или без
Използване на радио за откриване на мълния: 4 стъпки
Използване на радио за откриване на мълния: Малките радиостанции могат да се използват за нещо повече от слушане на музика или спорт. Всички радиостанции (дори евтини радиостанции само за AM) могат да се използват за откриване на мълнии и други атмосферни явления. С тренирано ухо дори може да се определи дали мълнията се движи към
Първи стъпки с радио Ham: 5 стъпки (със снимки)
Първи стъпки с радиото с шунка: Като наскоро издаден лиценз за шунка, искам да премина през процеса, който предприех, за да вляза в радиото с шунка. Бях привлечен от аспекта на самоувереността на хобито, давайки на хората начин да общуват, когато други методи са нарушени. Но също така е полезно да
ЕВТИНИЯТ ШУМ - ПРЕВЪРНЕТЕ РАДИО НА РЪКА В МОБИЛНО РАДИО: 6 стъпки
ЕВТИНИЯТ ШУМ - ПРЕВЪРНЕТЕ РАДИО НА РЪКА В МОБИЛНО РАДИО: Мобилно радио радио с ограничен бюджет? Да, може да се направи с малко творчество. Там има множество евтини китайски преносими радиостанции. Тези евтини нови радиостанции от своя страна понижиха цените на качествените употребявани съоръжения за шунка. Друго, което се добавя