Obsah:
- Krok 1: Nastavte svoj server
- Krok 2: Nastavte Pi a nainštalujte Darkice
- Krok 3: Tlačidlo streamovania a nápis On-Air
- Krok 4: Tlačidlo bezpečného vypnutia a kontrolka aktivity
- Krok 5: Spustite skripty Pythonu zo zavedenia
- Krok 6: Zostavte krabicu
- Krok 7: Inštalácia
Video: Box na streamovanie rádia jedným tlačidlom: 7 krokov (s obrázkami)
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 11:59
Postavil som box pre bar svojho priateľa, ktorý má vo vnútri Raspberry Pi a stlačením jedného tlačidla streamuje zvuk na webové stránky pomocou Darkice a Icecast a súčasne rozsvieti nápis „On-Air“. Myslel som si, že je to niečo, čo ľudia už robia, ale po rozsiahlom hľadaní som nič nenašiel a rozhodol som sa, že na to prídem sám a vytvorím tento návod.
Použil som Raspberry Pi 3+ B, ale pokiaľ viem, bude fungovať na akomkoľvek Pi (možno sa budú líšiť čísla pinov GPIO, čo však nemôžem potvrdiť). Použil som balík NOOBS pre OS a kúpil som si pre vstup super jednoduchú zvukovú kartu. Do krabice som tiež pridal tlačidlo bezpečného vypnutia a kontrolku aktivity na ochranu Pi.
Budete potrebovať:
Malinový koláč
Balíček NOOBS na SD karte
Vypínač (Použil som veľké červené tlačidlo núdzového zastavenia, ako je toto, ale môže to byť akýkoľvek druh prepínača „kliknutia“)
Tlačidlo
1 LED dióda
Znak „On-Air“som vyrobil pomocou diódy LED
Spájkovačka a malá doska konektorov (práve som odrezal pásik z jedného z nich, ktorý som mal okolo)
Zvuková karta (použil som super jednoduchú, ako je táto)
Krok 1: Nastavte svoj server
Pokiaľ ide o skutočnú rozhlasovú stanicu, ktorú používame, túto časť som neurobil, pretože som nemal prístup na server a urobil to môj priateľ, ale na webovej stránke Icecast je základný sprievodca nastavením a podarilo sa mi získať na začiatku to funguje od Pi, aby ste videli, ako to pokračuje. Prípadne môžete získať účet na internet-radio.com a funguje to s Darkice.
Krok 2: Nastavte Pi a nainštalujte Darkice
Získajte kartu SD s balíkom NOOBS. Keď otvoríte Raspbian a nainštalujete všetky aktualizácie, otvorte okno Terminál a zadajte:
sudo apt-get aktualizácia
sudo apt-get install darkice
Darkice je súčasťou Debianu, takže sa nainštaluje automaticky, chvíľu to trvá.
Po dokončení na výzvu zadajte:
darkice
Zobrazí sa chybové hlásenie a nespustí sa, ale je to v poriadku. V správe bude uvedené niečo ako:
Použitie konfiguračného súboru: /etc/darkice.cfg
Tento súbor musíte upraviť, takže na výzvu zadajte:
sudo nano /etc/darkice.cfg
Upravte súbor, ktorý sa otvára, pomocou informácií na tejto wiki. Radioreferenčná stránka, keď skončíte, stlačením klávesov CTRL-X zatvorte, Y uložte a mali by ste sa vrátiť na výzvu Terminál. Po inštalácii nového programu je vždy dobré reštartovať počítač, takže zadajte:
reštartovať
a keď sa Pi reštartuje, znova otvorte okno Terminál. Teraz, keď zadáte „Darkice“, malo by sa spustiť bez akýchkoľvek chybových hlásení. Ak prejdete na stránku https:// YOURSERVERADDRESS: 8000/(8000 alebo na ľubovoľný port, ku ktorému je priradený server Icecast), mali by ste dostať stránku so štatistikami, že ste pripojení. Ak nie, upravte konfiguračný súbor (vstupný zvukový riadok mi spôsoboval problémy, ale vyskúšal som všetky možnosti a nakoniec som našiel zvukovú kartu). Akonáhle Darkice beží správne, prejdite na ďalší krok.
Krok 3: Tlačidlo streamovania a nápis On-Air
Na to som urobil veľa rôznych návodov, pretože neexistoval žiadny konkrétny na priradenie akcie tlačidlu v Pythone. Najväčším problémom, s ktorým som sa stretol, bolo prinútiť Darkice, aby bežal na pozadí (a teda aby nezamrzol skript Pythonu, keď sa spustil), ale požiadal som priateľa kodéra, aby mi prišiel pomôcť a on prišiel na spôsob, ako to napísať - listy. nechapem Zrejme to môže byť možné aj pomocou znaku „&“niekde v kóde, ale nie som kodér a to, čo mám, funguje, a tak som sa rozhodol s tým nemiešať. Akonáhle som mal všetko funkčné, začal som bičovať všetky káble z dosky, kým mi nezostalo nasledujúce nastavenie:
GPIO16 na externý 3-bodový konektor.
GPIO7 na kladný pól poľa LED pre značku ON-Air.
GPIO25 na prepínač kliknutí.
Druhá strana prepínača sa pripája k 3-bodovému konektoru.
Záporný pól sústavy LED sa tiež pripája k 3-bodovému konektoru.
(Ostatné komponenty na diagrame sú vysvetlené v nasledujúcom kroku).
Skript Python, s ktorým sme skončili, je nasledovný (upozorňujeme, že toto je návod pre celý projekt, v skutočnosti neviem dostatočne vysvetliť kód. Zostavil som ho z rôznych ďalších návodov na rôzne funkcie):
import timeimport os import RPi. GPIO as GPIO GPIO.setwarnings (False) GPIO.setmode (GPIO. BOARD) ledPin = 12 buttonPin = 16 GPIO.setup (ledPin, GPIO. OUT) GPIO.setup (buttonPin, GPIO. IN, pull_up_down = GPIO. PUD_UP)
toggle = nepravda
def start_darkice ():
print ('calling subprocess') #result = subprocess.call ('sh screen -S darkice -d -m darkice') os.system ('screen -S darkice -d -m darkice') print ('resuming') def stop_darkice (): os.system ('screen -X -S darkice quit')
kým je pravda:
buttonState = GPIO.input (buttonPin) if buttonState == True: if not toggle: toggle = True print ('turn on darkice') start_darkice () #print ('BUTTON STATE TRUE') GPIO.output (ledPin, GPIO. HIGH)
inak:
if toggle: toggle = False print ('stopping darkice') stop_darkice () #print ('BUTTON STATE FALSE') GPIO.output (ledPin, GPIO. LOW) time.sleep (1)
Súbor py je priložený k tomuto návodu, môžete si ho len stiahnuť a podľa potreby vykonať krok 5.
Krok 4: Tlačidlo bezpečného vypnutia a kontrolka aktivity
Len kvôli bezpečnosti a predĺženiu životnosti Pi som pridal tlačidlo bezpečného vypnutia a diódu LED pre externú aktivitu, aby ľudia vedeli, kedy je bezpečné škatuľu odpojiť. Ľahko som našiel návody pre oba tieto typy, ale všimol som si, že Raspberry Pi 3 B+ má pin GPIO priradený ACT LED, zatiaľ čo predchádzajúce modely nie a to môže byť problematické, ak máte starší Pi.
Pripojte kladný pól LED na GPIO13 a záporný na GPIO26. Aby ACT LED fungovala, musíte upraviť súbor config.txt v adresári BOOT. Nájdete to v prehliadači Raspbian alebo pomocou:
sudo nano /usr/boot/config.txt
Pri úprave súboru jednoducho pridajte nasledujúce riadky:
# Použite externú LED ako SD ACT LED dtoverlay = pi3-akt-led, gpio = 19
Teraz externá LED dióda bliká s aktivitou karty SD.
Pripojte svorky tlačidlového spínača k GPIO3 a GPIO8. Z tutoriálu som našiel nasledujúci kód a funguje to dobre:
čas importu z gpiozero import Tlačidlo z podprocesu import check_call z pozastavenia importu signálu
def shutdown ():
check_call (['sudo', 'poweroff'])
shutdown_btn = Tlačidlo (2, čas_držania = 1)
shutdown_btn.when_held = vypnutie
pauza()
time.sleep (1)
Tento súbor py je tiež priložený, aby ste si ho mohli stiahnuť, ak chcete. Moje tlačidlo musí byť podržané 1 sekundu, ak to chcete zmeniť, zmeňte hodnotu „hold-time =“.
Krok 5: Spustite skripty Pythonu zo zavedenia
Opäť existuje veľa návodov na túto tému, použil som tento od Dexter Industries a podľa prvého kroku som upravil súbor rc.local.
sudo nano /etc/rc.local
Tu musíte pridať úplnú cestu k súboru na koniec dokumentu doplnenú znakom „&“na konci každého riadka. Pre každý zo súborov by ste mali pridať jeden riadok:
sudo python/home/pi/YOURFILENAME, py &
sudo python /home/pi/YOURFILENAME2.py &
tesne pred radom
výjazd 0
„&“Na konci každého riadka je dôležité na zaistenie slučiek programu.
Krok 6: Zostavte krabicu
To je úplne na vás. Skutočne to musí byť iba veľkosť Pi, ale do zostavy som vložil kompresor, aby bol rádiový prúd na pomerne konzistentnej úrovni, takže krabica je o niečo väčšia. Ten môj má vpredu otvor na nápis On-Air a jeden na veľké červené tlačidlo, plus som vyrobil malú inštruktážnu kartu pre DJ-ov a vložil som ju pod tlačidlo. Na bočnej strane škatule je otvor pre tlačidlo, kontrolku ACT LED a zvukový vstup a vložené pokyny pre zamestnancov baru, ako box bezpečne vypnúť.
Krok 7: Inštalácia
Upevnite všetky oddelené komponenty do svojej škatule, pričom je potrebné mať na pamäti, že je vždy dobré umožniť určitú cirkuláciu vzduchu okolo Pi, aby sa zabránilo prehriatiu. Pripojte zvukové káble k mixážnemu pultu, stlačte tlačidlo a užívajte si vysielanie!
Odporúča:
Blokovanie zavesenia servo jedným tlačidlom: 3 kroky
Blokovanie servo odpruženia jedným tlačidlom: Horské bicykle s plným odpružením poskytujú plynulú jazdu, ale často vyžadujú zablokovanie odpruženia pri šliapaní do kopca. V opačnom prípade sa zavesenie stlačí, keď stojíte na pedáloch, pričom túto snahu mrháte. Výrobcovia bicyklov to vedia a poskytujú
Zostavte si svojho robota na streamovanie videa riadeného internetom s Arduino a Raspberry Pi: 15 krokov (s obrázkami)
Zostavte si svojho robota na streamovanie videa riadeného internetom s Arduino a Raspberry Pi: I'm @RedPhantom (alias LiquidCrystalDisplay / Itay), 14-ročný študent z Izraela, ktorý sa učí na strednej škole Max Shein Junior High School pre pokročilé vedy a matematiku. Vytváram tento projekt, aby sa z neho každý mohol učiť a zdieľať! Môžete mať
Bufet s jedným tlačidlom: 4 kroky
Jednodotykový bufet: POZNÁMKA: Pre stravovací systém Kang Chiao zbytočné, ak nie ste v našej škole. Zariadenia majú dve použitia. Dá sa použiť na preskočenie nudného procesu výberu jedál jednoduchým výberom bufetu pre vás, čo je skutočne užitočné pre ľudí, ktorí chcú jesť iba
Klávesnica USB s jedným tlačidlom RGB: 6 krokov (s obrázkami)
RGB klávesnica s jedným tlačidlom USB: Cítili ste niekedy potrebu mať malú, ale funkčnú klávesnicu s podsvietením RGB, ktorá nie je väčšia ako veľkosť jedného klávesu? Nie? Koho to zaujíma, urobte si to aj tak! Tento návod vás prevedie krokmi, ktoré potrebujete k tomu, aby ste si urobili svoj vlastný, mierne zbytočný,
Transplantujte svoje klasické dotykové myši Mac s jedným tlačidlom: 5 krokov
Transplantujte klasickú jednostlačidlovú myš Mac Inards: je vám zle z hlúpo vyzerajúcich nových myší? Ste unavení z vašich klasických myší s jedným tlačidlom a chýbajú vám … nič iné ako jedno tlačidlo? Ukážem vám, ako transplantovať vnútornosti lacnej myši dobrej vôle do vašej myši Mac, aby ste dosiahli dokonalú rovnováhu štýlu