Obsah:
- Zásoby
- Krok 1: Nastavení (bez hlavy) Raspberry Pi W
- Krok 2: Nainstalujte software Senior Radio
- Krok 3: Nainstalujte další software
- Krok 4: Najděte toky rádiových stanic
- Krok 5: Vytvořte obvody
- Krok 6: Otestujte to
- Krok 7: Vložte do trvalé skříně
- Krok 8: Nastavení programu, který se má spustit při spuštění
Video: Senior Radio - Raspberry Pi: 8 kroků
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:21
Projekt Senior Radio je zařízení internetového rádia s přístupem k otevřenému zdroji s hardwarovými i softwarovými komponentami. Je určen pro uživatele obeznámené s ovládáním kapesního rádia, kde číselníky ovládají hlasitost a vybranou rozhlasovou stanici. Projekt je vytvořen s designem zaměřeným na uživatele, zaměřeným na uživatele, který chce podobnou velikost a ovládání jako standardní ruční rádio.
Byl postaven tak, aby uspokojil potřeby umožňující osobám se zdravotním postižením poslouchat tisíce různých obsahů streamovaných internetem, které jsou obvykle běžně dostupné pouze prostřednictvím internetového prohlížeče. Mnoho lidí nemá schopnost takové zařízení snadno používat, a proto si tento design klade za cíl vytvořit známé rozhraní pro moderní technologie.
Základní funkce je na Githubu, uložená v programu python 3.7.3 s názvem seniorRadio.py. Čte a zapisuje soubor json pro uložení stavu rádia, takže když ho vypnete, bude si pamatovat aktuální úroveň zvuku a zvolenou stanici. Kromě toho čte online hostovaný soubor json, který můžete změnit! To vám umožní vzdáleně aktualizovat rozhlasové stanice, pokud to dáváte někomu jinému.
V současné době je vytvořen pro připojení k reproduktoru bluetooth, ale lze jej snadno vyrobit i pro přehrávání integrovaného reproduktoru.
Tvůrcem tohoto zařízení pravděpodobně není uživatel a potřebuje alespoň určité zkušenosti s elektronikou a základními znalostmi programování. Velmi užitečné jsou také zkušenosti s Linuxem.
Pro uživatele je funkce jednoduchá:
Po zapnutí přehraje poslední stanici vybranou přes výchozí zvukové zařízení. Levý volič ovládá stanici, kde se několik kliknutí na číselník změní na novou adresu URL. Převrátí se po posledním nebo prvním vstupu. Pravý volič ovládá úroveň zvuku. LED indikuje, že program je zapnutý. A tlačítko pozastaví nebo „vypne“rádio. Jakmile je tedy uživatel zapnutý, stačí stisknout tlačítko pro pozastavení/přehrávání nebo „vypnout/zapnout“rádio a dva ciferníky pro ovládání.
Zásoby
Odkaz na každou položku je konkrétní, kterou jsem použil. Celkem mě to stálo asi 60 $ se spoustou zbylých zásob!
Základní znalosti elektroniky a linuxu - pro montáž a ladění
Raspberry Pi Zero W (Zero WH má hlavičky předpájené a pravděpodobně užitečné)
MicroSD karta-8 GB+ a schopnost o
Napájecí adaptér MicroUSB 5V - Link také obsahuje adaptér microHDMI a adaptér microUSB OTG na USB A pro nastavení, pokud je potřebujete
Bluetooth reproduktor
M/F a M/M propojovací kabely
2 Rotační kodér - stejný odkaz jako výše
Malé prkénko
Stiskněte tlačítko
LED (volitelně) - zakoupená LED + tlačítko výše
Krabice na balení
Krok 1: Nastavení (bez hlavy) Raspberry Pi W
Potřebujeme nastavit operační systém na Raspberry Pi, na kterém bude spuštěn software. Nic z toho není pro tento projekt jedinečné. Pro ladění bych doporučil jej nastavit, abyste k němu měli také přístup v bezhlavém režimu. To znamená, že přistupujete k pi prostřednictvím své WiFi sítě prostřednictvím GUI nebo terminálu SSH a nepotřebujete klávesnici, myš a monitor, abyste jej mohli používat pokaždé. Pokud jste technicky zdatnější, můžete to udělat bez nutnosti připojení k monitoru/myši/klávesnici. Zde několik příkladů pokynů. Je však méně přímočará a níže je další způsob, jak ji nastavit.
Poprvé budete pravděpodobně potřebovat:
- Raspberry Pi W
- Adaptér karty MicroSD na SD [pro zápis OS na kartu SD]
- Karta MicroSD (~ 8 GB+) [pro uložení OS a našeho programu]
- MicroUSB napájení (5V)
- MicroUSB na USB A [pro myš/klávesnici]
- Mini adaptér HDMI na HDMI [pro výstup z displeje]
- Klávesnice
- Myš
- Monitor
Nejprve budete muset flashovat operační systém na kartu micro SD rPi.
Použil jsem raspian buster, ten stáhnete do počítače pomocí čtečky/zapisovače karet SD a poté na kartu SD přenesete raspian OS. BalenaEtcher je jednoduchý software, jak to udělat
Poté vložte kartu SD do slotu pi, připojte monitor, klávesnici a napájení. Proveďte kroky nastavení, ke kterým vás Raspian vyzve, včetně připojení k vaší síti WiFi a spárování reproduktoru bluetooth prostřednictvím grafického uživatelského rozhraní. Osvědčeným postupem by bylo jej aktualizovat pomocí následujících příkazů
sudo apt-get update
sudo apt-get upgrade
Pokud chcete zahrnout označení vašeho pi bezhlavě, budeme muset nejprve získat IP adresu pí. Prostřednictvím terminálu jej najdete prostřednictvím
ifconfig
příkaz. Poté musíte povolit SSH a VNC přes možnosti rozhraní v
sudo raspi-config
Po restartu můžete nyní vyzkoušet přístup k pi přes SSH nebo VNC. SSH je pouze koncové rozhraní a pro spárování reproduktoru bluetooth může být jednodušší použít GUI. Ke snadnému přístupu k pi na samostatném počítači ve vaší síti můžete použít program jako VNC connect. Do SSH můžete použít program jako tmel.
Kromě toho můžete nastavit cloudový účet VNC, abyste mohli v případě potřeby přistupovat k zařízení mimo síť
Krok 2: Nainstalujte software Senior Radio
To lze provést z terminálového okna malinového pi. Nejprve se ujistěte, že máte nainstalovaný git
sudo apt-get install git
V závislosti na operačním systému, který jste nainstalovali, se tyto kroky mohou lišit, protože možná budete muset nainstalovat další balíčky, systém vám řekne, pokud ano. Nejprve musíme stáhnout starší rádiový kód z github. https://github.com/Bunborn/seniorRadio V ideálním případě si vytváříte vlastní repo, abyste mohli provádět změny a snadno měnit rozhlasové stanice stejným způsobem jako já. Pokud ano, rozdělte repo
Můžete však použít totéž jako já, pokud chcete hostovat soubor json rádia na jiném místě
Poté naklonujte repo na libovolném místě, kde chcete. Výchozí adresář je v pořádku. Získejte adresu URL, pro kterou chcete repo githubu, stisknutím zeleného klonu nebo tlačítka pro stažení.
Zpět v okně terminálu, git klon
Při pohledu pomocí ls byste nyní měli vidět další adresář s názvem seniorRadio. Fantastický!
Kód má být samodokumentující, jeho prohlédnutí by bylo užitečné. Zvláště pro účely ladění a pokud měníte systém.
Krok 3: Nainstalujte další software
Než se přesuneme k obvodu a vyzkoušíme ho, musíme si také stáhnout VLC a python api. Možná už máte nainstalovaný VLC. První dva příkazy aktualizují pi a poslední dva níže uvedené příkazy nainstalují VLC a poté python api
sudo apt-get update
sudo apt-get upgrade
sudo snap nainstalovat VLC
sudo apt-get install vlc-python
Kromě toho také nainstalujte gpiozero, které použijeme k propojení s piny GPIO piny. V závislosti na operačním systému jej již můžete mít nainstalovaný.
sudo apt-get install gpiozero
Krok 4: Najděte toky rádiových stanic
Další, jedna z nejzábavnějších částí! Čas na výběr streamů, které chcete.
V mém souboru internetStations.json vidíte mé odkazy na streamy, hlavně pro zprávy a hudbu. Ale tam je spousta hostovaného obsahu. Klíčem je najít adresu URL přímého proudu. Tady na tomto blogu najdete například zpravodajské a hudební stanice BBC. Tyto přímé streamy nebudou mít žádné grafické rozhraní a budou automaticky přehrávat stream prostřednictvím přehrávače médií v prohlížeči. Toto jsou adresy URL, které potřebujeme, aby je VLC dokázalo přečíst! Jakýkoli odkaz můžete rychle otestovat ve svém webovém prohlížeči nebo prostřednictvím VLC na svém normálním počítači, abyste se ujistili, že bude fungovat na pí.
Chcete -li tyto stanice najít, můžete vyhledat přímý stream online, pokud je služba hostitelem. Rychlým způsobem by také mohlo být přehrání streamu, kliknutí pravým tlačítkem na prohlížeč a kliknutí na „zkontrolovat prvek“. Přejděte na kartu síť a měla by indikovat přímou adresu URL streamu. Toto video na youtube je toho důkazem. Obnovení stránky s otevřenou kartou by mělo pomoci.
Jakmile máte své stanice, chcete je dát online, aby je váš program seniorRadio python mohl chytit. K tomu existuje mnoho možností, můžete použít weby jako Github, bitbucket nebo dokonce sourceforge. Hlavním účelem hostování tohoto seznamu online je, aby uživatel, který jej nastavuje, mohl seznam streamů online vzdáleně změnit.
Na začátku programu python je proměnná s názvem url, jednoduše změňte toto na URL vašeho souboru json s odkazy na URL stanice
Můžete sledovat stejný formát jako můj soubor internetStation.json. Pokud byste chtěli použít také github, můžete jednoduše rozšířit mé úložiště seniorRadio a upravit svůj vlastní soubor internetStation.json a nasměrovat jej na tuto „surovou“adresu URL. To zjistíte níže v Github GUI po kliknutí na soubor.
Krok 5: Vytvořte obvody
Nyní musíme nastavit obvod. To se změní na základě vašeho vybavení, ale níže je uvedeno, jak jsem to své nastavil.
pinout.xyz/, kde jsou uvedeny odkazy na které piny. Protože používáme knihovnu gpiozero, zabýváme se pouze číslováním BCM pinů. Všimněte si, že jsem si koupil několik dalších rotačních kodérů KY040 - číselníky - abych je vyzkoušel, protože všechny nemají stejnou přesnost. Každý z nich by měl nějaký „poskakující“, nebo prostě nesprávný výstup, takže jsem vybral to nejlepší ze dvou, které jsem měl. V kódu si všimnete, že existuje také několik kroků, jak omezit i toto odskakování.
Připojil jsem své tlačítko k pinu 17 BCM a uzemnění
Moje LED na 1k ohmový odpor pak BCM pin 27 a uzemnění
Moje rotační kodéry KY040 měly + vodič na 5 V, GND na kostru a SW odpojené. Ty byly propojeny přes mini prkénko
Kolíkový dt kodér stanice připojený ke kolíku 21 BCM
Pin kolíkového kodéru stanice připojený k pinu 20 BCM
Kolík dt audio kodéru úrovně zvuku připojený ke kolíku 19 BCM
Pin audio rotačního kodéru připojený ke kolíku 16 BCM
Pokud tyto piny změníte, aktualizujte číslo také v programu python, kde nastavuje obslužné rutiny
Abych to usnadnil, použil jsem mini prkénko. Pro usnadnění rozhraní jsem použil také propojovací vodiče M/M a M/F. Na kolíky tlačítka/LED, které jsem koupil dříve, jsem připájel několik propojovacích vodičů. Chcete -li nepájet, můžete získat tlačítka a LED diody, které již mají propojovací vodiče nebo se k nim snadno připojí.
Krok 6: Otestujte to
Nyní byste měli mít fungující systém! Pojďme to vyzkoušet. Přejděte do složky pomocí programu python, pravděpodobně:
cd seniorRadio
python3 seniorRadio.py
V současné době je na začátku programu zpoždění 45 sekund, aby měl čas najít bluetooth reproduktor při zapnutí. Pokud to během testování nepotřebujete, můžete tento řádek okomentovat. Program vám může říci, že je třeba nainstalovat další balíčky, pokud ano, pokračujte. Také je třeba nainstalovat novější verzi Pythonu.
sudo apt-get install python3.7
Některé možné problémy, i když je program spuštěn:
Neslyším žádný zvuk
Ujistěte se, že je reproduktor ve vašem malinovém pi zapnutý. Prostřednictvím grafického uživatelského rozhraní byste jej měli mít možnost spárovat a poté vybrat jako výstupní zvukové zařízení. Kromě toho zkontrolujte zvukové ovladače. Častým problémem je, že budete možná muset přeinstalovat balíček pulseaudio
Zvuk trhaný nebo řezání dovnitř a ven
Zkuste zařízení přesunout blíže k routeru WiFi. Kromě toho se ujistěte, že je poblíž reproduktor bluetooth. Může to být také problém s ovladačem zvuku
Krok 7: Vložte do trvalé skříně
Dále jej vložte do krabice nebo podobného zařízení, ve kterém bude trvale žít. Doporučuji mít jeden, ke kterému budete mít přístup i později pro ladění. Tuto malou dřevěnou krabičku jsem dostal v obchodě s řemeslnými výrobky za 2 dolary a propojil jsem ji na stránce se zásobami. Jeden z mých přátel mi doporučil krabičku doutníků.
Poté jsem v přední části vyřízl otvory pro tlačítko a otočné spínače a v zadní části krabice jsem vyvrtal otvor pro napájecí kabel microUSB.
Otestoval jsem držák a ujistil se, že funguje, a voilà!
Nakonec jsem použil super lepidlo k držení tlačítka. Moje prkénko mělo na spodní straně lepidlo, které jsem připojil k části krabice. Pomocí malého proužku lepicí pásky jsem připevnil zadní část pí k krabici, takže ji bylo možné v případě potřeby později přesunout.
Krok 8: Nastavení programu, který se má spustit při spuštění
Nakonec budete pravděpodobně chtít, aby se tento pythonový program spustil při spuštění Raspberry Pi, takže to nemusíte dělat ručně. Existuje mnoho způsobů, jak to provést, které najdete na internetu.
Osobně jsem to nastavil pomocí druhého způsobu v tomto tutoriálu SparkFun:
Zde čeká, než systém vstoupí na grafickou plochu, než program spustí. Poté je programem python zpožděn o 45 sekund, aby systém získal čas na opětovné připojení k reproduktoru bluetooth. Pokud používáte integrovaný reproduktor, můžete toto zpoždění odstranit. Všimněte si, že bluetooth reproduktor by měl být nejprve zapnutý! (pro řešení bluetooth)
Nyní můžete zkusit vypnout a znovu zapnout pi! Asi po 90 sekundách by vaše pí mělo začít znovu přehrávat rádiové streamy. Po stisknutí tlačítka se přehrávání pozastaví/spustí. Poznámka k těmto restartům znovu načte soubor json internetStations, takže pokud změníte své stanice, musíte zařízení restartovat, aby fungovaly. Gratulujeme!
Pokud jste to provedli nebo jste provedli úpravy projektu, dejte mi prosím vědět!
Stránka Github:
Doporučuje:
Udržování stopky jednoduché internetové rádio: KISSIR: 13 kroků
Udržování stopky jednoduché internetové rádio: KISSIR: Někdy to prostě musí být hmatové. Žádné rozhraní jakéhokoli druhu. Jen tlačítka. Raspberry Pi jako přehrávač internetového rádia není nic nového a existuje spousta návodů, jak vytvořit přehrávač internetového rádia pomocí malinového pi s nebo bez
Smart Buoy [GPS, rádio (NRF24) a modul karty SD]: 5 kroků (s obrázky)
Smart Buoy [GPS, rádio (NRF24) a modul karty SD]: Tato řada Smart Buoy mapuje náš (ambiciózní) pokus o vybudování vědecké bóje, která může provádět smysluplná měření o moři pomocí běžných produktů. Toto je tutoriál dva ze čtyř - ujistěte se, že jste aktuální, a pokud potřebujete rychlý
Web Radio: 5 kroků (s obrázky)
Web Radio: Před několika měsíci jsem viděl vývojovou desku M5stickC v Banggood a koupil jsem si ji na hraní. Můžete jej získat zde. Zkoušel jsem spoustu skic, ale nakonec jsem tuto stránku prošel a rozhodl jsem se zkusit vytvořit webové rádio. Pro tuto vývojovou desku jsou
Interaktivní rádio pro vyprávění příběhů: 6 kroků (s obrázky)
Interaktivní rádio pro vyprávění příběhů: V tomto projektu převedeme úhledně vypadající rádio do interaktivního vypravěče s podporou hlasu. Budoucnost, jsme tady
Senior Remote: 5 kroků (s obrázky)
Senior Remote: Upravte dálkové ovládání televize své matky, aby bylo přátelské k seniorům. Moje máma se narodila v roce 1931. Je z generace rádia a druhé světové války. Její zrak selhává a není dobrá s ničím elektronickým. Dálkové ovladače televize ji pletou. Tento režim mi přišel poté, co se