Obsah:

PAB: osobní audio box: 5 kroků
PAB: osobní audio box: 5 kroků

Video: PAB: osobní audio box: 5 kroků

Video: PAB: osobní audio box: 5 kroků
Video: Omylem Jsem Odhalila Prsa! - Andrea Nguyen 2024, Listopad
Anonim
PAB: osobní audio box
PAB: osobní audio box

Myšlenka tohoto projektu se zrodila z potřeby oškrábat tři velké součásti HiFi systému, které nyní dosáhly konce své životnosti. Kromě toho jsem potřeboval více místa v poličce na další předměty, a tak jsem využil příležitosti a začal studovat na Personal Audio Boxu, abych nahradil všechny funkce tří vintage „obrů“.

Raspberry Pi3B+ se zdálo být nejlepší volbou z těchto důvodů:

  • Malý formát a nízká spotřeba energie;
  • Zvukový výstup PCM s přijatelnou kvalitou;
  • Dostupnost mopidy, rozšiřitelného hudebního serveru implementujícího protokol mpd;
  • Vysoká integrace zdrojů: místní hudba, CDROM, rádiové streamy, Spotify, Tunein atd.

Díky integraci s několika dalšími komponentami jsem dokázal vytvořit kompletní a bezhlavý systém, schopný přehrávat hudbu z disků CD, místních souborů, online rádia, seznamů skladeb Spotify a podcastů. A díky použití frontendu mohu nyní spravovat veškerý jeho provoz z jakéhokoli zařízení připojeného k LAN (smartphone, počítač, tablet).

Zásoby

  • Malina PI3B+
  • Starý obal na DVD
  • Čtečka CDROM
  • Napájení 5v-5A
  • Superkondenzátory
  • Různé komponenty (tranzistory, LED, relé, operační zesilovač): viz detaily projektu

Krok 1: Pouzdro a rozložení součástí

Pouzdro a rozložení součástí
Pouzdro a rozložení součástí
Pouzdro a rozložení součástí
Pouzdro a rozložení součástí
Pouzdro a rozložení součástí
Pouzdro a rozložení součástí
Pouzdro a rozložení součástí
Pouzdro a rozložení součástí

První problém, se kterým jsem se potýkal, byl výběr a nalezení vhodného případu. Když jsem doma nic nenašel, našel jsem tento levný DVD přehrávač na Amazonu za pár dolarů, ale cokoli podobného bude dost dobré. Pouzdro má tyto rozměry: 27 cm x 20 cm x 3,5 cm.

Zcela jsem odstranil veškerý obsah, ponechal jsem pouze malou desku pro správu přední LED, tlačítka napájení a vstupu USB. Poté jsem naplánoval vnitřní rozložení nových komponent (viz obrázek).

Krok 2: Přepínač Audio Stereo Sensing

Přepínač Audio Stereo Sensing
Přepínač Audio Stereo Sensing
Přepínač Audio Stereo Sensing
Přepínač Audio Stereo Sensing
Přepínač Audio Stereo Sensing
Přepínač Audio Stereo Sensing

Proč automatický přepínač zvuku? Potřeba vyplývá ze skutečnosti, že často poslouchám televizi přes HiFi zesilovač, ale nechtěl jsem pokaždé vybrat přepínač zdroje na zesilovači. U tohoto obvodu je vstup zesilovače vždy stejný a zdroj je automaticky vybrán přepínačem Audio Stereo Sensing.

Schéma je přímočaré. Pokud PAB nepřehrává, zdroj zvuku pro HiFi pochází z televizoru. Pokud hraje PAB, relé vybere zvuk z Raspberry.

Krok 3: Box superkondenzátorů

Box superkondenzátorů
Box superkondenzátorů
Box superkondenzátorů
Box superkondenzátorů

Jak je známo, náhlé přerušení napájení Raspberry způsobí okamžité vypnutí bez provedení postupu vypnutí, což riskuje ohrožení operačního systému a tím i jeho celkové funkčnosti. Superkondenzátor se liší od tradičního kondenzátoru ve dvou základních charakteristikách: jeho desky mají ve skutečnosti větší plochu a vzdálenost mezi nimi je mnohem menší, protože vložený izolátor funguje jinak než konvenční dielektrikum. Pomocí těchto technik lze vyrobit kondenzátory s velmi vysokou kapacitou (řádově několik desítek Faradů) při zachování malých rozměrů. Cílem je tedy vytvořit 5v „vyrovnávací paměť“prostřednictvím superkondenzátorů a aktivovat vypnutí, když je detekována absence napájecího napětí. Tímto způsobem již nebude nutné ručně spouštět spouštění, ale jednoduše vyjmout zástrčku (nebo aktivovat spínač), aby bylo zajištěno bezpečné vypnutí.

S odkazem na schéma je napájecí zdroj přiveden na levý terminál a Schottkyho dioda brání jakémukoli návratu proudu do napájecího zdroje. Dva 1,2W 5W výkonové odpory paralelně omezují nabíjecí proud superkondenzátorů, aby chránily napájení. Bez těchto odporů by špičkový proud požadovaný dvěma vybitými superkondenzátory téměř jistě mohl poškodit napájecí zdroj. Výkonová dioda musí být nutně typu Schottky, aby bylo možné vložit minimální pokles napětí v sérii s 5V barem.

Dva superkondenzátory jsou zapojeny do série, aby na jejich koncích bylo zajištěno maximální napětí 5,4 voltů (každý superkondenzátor je 10F, 2,7V) a dva odpory paralelně s kapacitami vyrovnávají nabíjecí proudy a zaručují pomalé vybíjení, když se malina otočí vypnuto. Dva odpory 1KΩ paralelně se vstupem rozdělují 5V zdroje na polovinu, aby zachytily potřebný signál pro detekci výpadku napájení (připojeno k Raspberry GPIO 7). Na rozdíl od moderních lithiových článků zaručují superkondenzátory téměř nekonečný počet cyklů nabíjení a vybíjení, aniž by došlo ke ztrátě jakýchkoli charakteristik.

Obvod bude tedy schopen udržet Raspberry napájené a funkční po dobu potřebnou k provedení pravidelného vypnutí. Začátek procesu vypnutí bude detekován programem spuštěným na Raspberry, který bude sledovat stav GPIO 7, ke kterému je připojena úroveň výkonu. Když je napájení odpojeno, kolík 7 GPIO projde na nízké úrovni a spustí vypnutí. Toto je kód:

#!/usr/bin/env python

importujte RPi. GPIO jako GPIO importujte podproces GPIO.setmode (GPIO. BCM) # použijte číslování GPIO GPIO.setwarnings (False) INT = 7 # pin 26 monitorů Napájení # použijte slabý pull_up k vytvoření vysokého GPIO.setup (INT, GPIO. IN, pull_up_down = GPIO. PUD_UP) def main (): while True: # nastavte přerušení na sestupné hraně a počkejte, až se to stane GPIO.wait_for_edge (INT, GPIO. FALLING) # znovu zkontrolujte úroveň pinu, pokud GPIO.input (INT) == 0: # stále nízké, vypnutí Pi subprocess.call (['poweroff'], shell = True, / stdout = subprocess. PIPE, stderr = subprocess. PIPE) if _name_ == '_main_': hlavní()

Program musí být uložen v/usr/local/bin/.py a nakonfigurován tak, aby běžel při spuštění Raspberry. Z provedených testů se ukázalo, že kapacity dvou superkapacitorů jsou dostatečné k zajištění doby vypnutí Raspberry. Pokud je potřeba více času, bude stačit zavést dva další superkondenzátory souběžně se stávajícími nebo je nahradit dvěma většími kapacitami.

Krok 4: Sestavení a použití portů USB

Sestavování a používání portů USB
Sestavování a používání portů USB

Blokové schéma ukazuje, jak připojit několik zařízení pro PAB na hlavní 3 sběrnici (+5 V, USB a audio stereo).

Všimněte si toho, že napájecí zdroj čtečky CD byl připojen přímo k hlavnímu napájecímu zdroji pomocí kabelu „Y“, zatímco zvukový vstup jde do Raspberry. Čtyři porty USB Raspberry byly použity pro:

  • Čtečka CD;
  • 250 GB pendrive pro ukládání místních hudebních souborů (mp3, m4a, wma, flac atd.);
  • 16GB micro SD karta (s USB adaptérem) pro uložení plné zálohy hlavního Raspi SD (viz níže);
  • připojení k externímu portu USB na pouzdře.

Externí port USB lze použít k přehrávání externí hudby nebo napájení externích zařízení. V mém případě napájím externí vysílač Bluetooth, protože jsem kvůli nízkému dosahu a nestabilitě vyřadil interní Raspi. S externím bluetooth řídím doma 2 různé stereo reproduktory.

16GB micro SD karta (s USB adaptérem) obsahuje plnou zálohu Raspberry. Používám rpi-clone, který se ukázal jako velmi dobrý projekt, který umožňuje mít plnou pracovní zálohu Raspberry bez nutnosti odebrat interní SD. Tento SD jsem mnohokrát vyměnil za interní bez problému. Takže jsem nastavil cronjob pro uživatele root:

#Backup on sda - každou středu večer

15 2 * * 3/usr/sbin/rpi -clone sda -u | mail -s "Zálohování PAB na SD - hotovo"

Poté jsem znovu použil původní tlačítko napájení na skříni k vypnutí a restartování Raspberry, podle tohoto průvodce:

Krok 5: Software a operační systém

Software a operační systém
Software a operační systém
Software a operační systém
Software a operační systém
Software a operační systém
Software a operační systém

Hlavní operační systém PAB je prostý Raspbian minimal (Debian Buster) s několika konkrétními doplňky:

  • rpi-clone pro hlavní zálohu;
  • ssmtp, jednoduché MTA pro získání pošty ze systému;
  • udevil, umožňující automatický počet jednotek USB;
  • abcde, chytit moji sbírku CD a komprimovat ji do jakéhokoli zvukového formátu;
  • mopidy, plný démon hudebního přehrávače se spoustou doplňků.

Poté jsem napsal úplnou serverovou aplikaci PAB Scheduler pomocí python3 a tornado, jejíž kód je mimo rozsah tohoto článku, ale na požádání mohu poskytnout pokyny. Pomocí plánovače můžete nastavit seznamy skladeb pro jakoukoli denní dobu, přičemž se liší pracovní dny od víkendů.

Hlavním softwarem, na kterém běží PAB, je mopidy. Instalaci a konfiguraci mopidy (poměrně rozsáhlou) naleznete v její dokumentaci zde:

Toto jsou nainstalované doplňky:

  • Mopidy-Alsamixer
  • Mopidy-internetový archiv
  • Mopidy-Místní-Sqlite
  • Mopidy-Podcast
  • Mopidy-Scrobbler
  • Mopidy-Soundcloud
  • Mopidy-Spotify
  • Mopidy-Spotify-Tunigo
  • Mopidy-Cd
  • Mopidy-Iris
  • Mopidy-Místní-Obrázky
  • Mopidy-TuneIn

Abych získal plnou kontrolu nad PAB, zvolil jsem rozšíření Iris frontend (viz obrázky). Jedná se o velmi výkonnou webovou aplikaci s následujícími funkcemi:

  • Kompletní ovládání webového rozhraní pro Mopidy
  • Vylepšená podpora pro místní knihovny (poháněno Mopidy-Local-Sqlite)
  • Procházejte a spravujte seznamy skladeb a stopy
  • Objevte novou, populární a související hudbu (využívá Spotify)
  • Volně hostované
  • Integrace s:

    • Spotify
    • LastFM
    • Génius
    • Snapcast
    • Icecast

Tímto způsobem mohu svobodně ovládat svou hudbu téměř odkudkoli (počítač, tablet, smartphone).

Doporučuje: