Satura rādītājs:
- 1. darbība: servera iestatīšana
- 2. darbība: iestatiet Pi un instalējiet Darkice
- 3. darbība: straumes poga un ētera zīme
- 4. darbība: drošas izslēgšanas poga un darbības gaismas diode
- 5. darbība. Lieciet Python skriptus palaist no sāknēšanas
- 6. darbība: izveidojiet kasti
- 7. darbība: uzstādīšana
Video: Radio poga ar vienu pogu: 7 soļi (ar attēliem)
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:56
Es uzbūvēju kastīti sava drauga bārā, kurā ir Raspberry Pi, un, nospiežot vienu pogu, tas straumē audio uz vietni, izmantojot Darkice un Icecast, vienlaikus iededzot zīmi “On-Air”. Es domāju, ka tas ir kaut kas, ko cilvēki jau dara, bet pēc plašas meklēšanas es neko neatradu un nolēmu to izdomāt pats un padarīt šo pamācāmo.
Es izmantoju Raspberry Pi 3+ B, bet, cik es varu pateikt, tas darbotos ar jebkuru Pi (iespējams, GPIO pin numuri atšķirtos, tomēr es to nevaru apliecināt). OS izmantoju NOOBS pakotni un ieejai nopirku super vienkāršu skaņas karti. Es arī pievienoju drošai izslēgšanas pogai un aktivitātes gaismas diodei, lai aizsargātu Pi.
Jums būs nepieciešams:
Raspberry Pi
NOOBS pakotne SD kartē
Ieslēgšanas/izslēgšanas slēdzis (es izmantoju lielu sarkanu avārijas apturēšanas pogu, piemēram, šo, bet tas var būt jebkura veida klikšķa slēdzis)
Uzspied pogu
1 LED
Zīmi “On-Air”, es izveidoju savu ar LED bloku
Lodāmurs un mazs savienotājplate (es tikko nogriezu sloksni no viena no tiem, kas man bija apkārt)
Skaņas karte (es izmantoju šādu ļoti vienkāršu)
1. darbība: servera iestatīšana
Patiesai radiostacijai, kuru mēs izmantojam, es šo daļu neveicu, jo man nebija piekļuves serverim un to izdarīja mans draugs, taču Icecast vietnē ir pamata iestatīšanas rokasgrāmata, un man izdevās iegūt sākumā tas darbojas no Pi, lai tikai redzētu, kā tas notiek. Varat arī iegūt kontu vietnē internet-radio.com, un tas darbojas kopā ar Darkice.
2. darbība: iestatiet Pi un instalējiet Darkice
Iegūstiet SD karti ar NOOBS paketi. Kad esat atvēris Raspbian un instalējis visus atjauninājumus, atveriet termināļa logu un ierakstiet:
sudo apt-get update
sudo apt-get install darkice
Darkice ir daļa no Debian, tāpēc tā tiks instalēta automātiski, tas aizņem dažus mirkļus.
Kad tas ir pabeigts, ievadiet uzvedni:
tumsa
Tas parādīs kļūdas ziņojumu un nedarbosies, bet tas ir labi. Ziņojumā tas pateiks kaut ko līdzīgu:
Izmantojot konfigurācijas failu: /etc/darkice.cfg
Jums ir jārediģē šis fails, tāpēc uzvednē ierakstiet:
sudo nano /etc/darkice.cfg
Rediģējiet atvērto failu, izmantojot informāciju šajā wiki. Radioreference lapa, kad esat pabeidzis, nospiediet taustiņu kombināciju CTRL-X, lai aizvērtu, Y, lai saglabātu, un jums vajadzētu atgriezties termināļa uzvednē. Pēc jaunas programmas instalēšanas vienmēr ir labi atsāknēt, tāpēc ierakstiet:
pārstartēt
un, kad Pi ir restartējies, atveriet termināļa logu. Tagad, ierakstot “Darkice”, tam vajadzētu darboties bez kļūdas ziņojumiem. Ja apmeklējat vietni https:// YOURSERVERADDRESS: 8000/(8000 vai neatkarīgi no tā, kuram portam ir piešķirts jūsu ledus serveris), jums vajadzētu iegūt statistikas lapu, kurā teikts, ka esat izveidojis savienojumu. Ja nē, izlabojiet konfigurācijas failu (audio ievades līnija man radīja dažas problēmas, bet es izmēģināju visas iespējas un galu galā atradu savu skaņas karti). Kad Darkice darbojas pareizi, pārejiet pie nākamās darbības.
3. darbība: straumes poga un ētera zīme
Šim nolūkam es veicu virkni dažādu apmācību, jo nebija nevienas konkrētas darbības, lai Python pogai piešķirtu darbību. Lielākā problēma, ar kuru es saskāros, bija panākt, lai Darkice darbotos fonā (un tādējādi nesasaldētu Python skriptu, kad tā sāka darboties), bet es palūdzu kodētāja draugu nākt palīgā, un viņš izdomāja veidu, kā to izdarīt, rakstot lapas, ko es nesaņem. Acīmredzot kaut kur kodā varētu būt iespējams izmantot arī &, bet es neesmu kodētājs, un tas, kas man ir, darbojas, tāpēc es izvēlējos to nejaukt. Kad viss bija kārtībā, es sāku izvilkt visus kabeļus no maizes dēļa, līdz man palika šāds iestatījums:
GPIO16 ārējam 3 punktu savienotājam.
GPIO7 uz ON-Air zīmes LED masīva pozitīvo spaili.
GPIO25 uz klikšķa slēdža.
Klikšķa slēdža otra puse ir piestiprināta pie 3 punktu savienotāja.
Gaismas diodes masīva negatīvais spailes piestiprina arī 3 punktu savienotājam.
(Pārējās diagrammas sastāvdaļas ir izskaidrotas nākamajā solī).
Python skripts, ar kuru mēs nonācām, ir šāds (lūdzu, ņemiet vērā, ka tas ir pamācība visam projektam, es īsti nezinu pietiekami, lai izskaidrotu kodu. Es to saliku kopā no dažādām citām apmācībām dažādām funkcijām):
importēt laikuimportēt importēt RPi. GPIO kā 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)
pārslēgšana = nepatiesa
def start_darkice ():
print ('zvana apakšprocess') #result = subprocess.call ('sh screen -S darkice -d -m darkice') os.system ('screen -S darkice -d -m darkice') drukāt ('atsākt') def stop_darkice (): os.system ('screen -X -S darkice quit')
kamēr taisnība:
buttonState = GPIO.input (buttonPin), ja buttonState == True: ja ne toggle: toggle = True print ('ieslēdzot darkice') start_darkice () #print ('BUTTON STATE TRUE') GPIO.output (ledPin, GPIO. HIGH)
cits:
if toggle: toggle = False print ('stopping darkice') stop_darkice () #print ('BUTTON STATE FALSE') GPIO.output (ledPin, GPIO. LOW) time.sleep (1)
Py fails ir pievienots šai instrukcijai, varat to vienkārši lejupielādēt un, ja vēlaties, izpildīt 5. darbību.
4. darbība: drošas izslēgšanas poga un darbības gaismas diode
Drošības labad un lai pagarinātu Pi kalpošanas laiku, es pievienoju drošu izslēgšanas pogu un ārējas darbības gaismas diodi, lai cilvēki zinātu, kad ir droši atvienot kārbu. Es viegli atradu pamācības abiem šiem, bet es pamanīju, ka Raspberry Pi 3 B+ ir ACT LED piešķirta GPIO tapa, bet iepriekšējiem modeļiem nav, un tas varētu būt problemātiski, ja jums ir vecāks Pi.
Pievienojiet gaismas diodes pozitīvo spaili pie GPIO13 un negatīvo pie GPIO26. Lai ACT LED darbotos, jums ir jārediģē fails config.txt BOOT direktorijā. To var atrast pārlūkprogrammā Raspbian vai ar:
sudo nano /usr/boot/config.txt
Rediģējot failu, vienkārši pievienojiet šādas rindas:
# Izmantojiet ārējo LED kā SD ACT LED dtoverlay = pi3-act-led, gpio = 19
Tagad ārējā gaismas diode mirgos ar SD kartes darbību.
Pievienojiet spiedpogu slēdžus pie GPIO3 un GPIO8. Es atradu šādu kodu no apmācības, un tas darbojas labi:
importēšanas laiks no gpiozero importēšanas poga no apakšprocesa importēt check_call no signāla importēšanas pauzes
izslēgšana ():
check_call (['sudo', 'poweroff'])
shutdown_btn = Poga (2, aizturēšanas laiks = 1)
shutdown_btn.when_held = izslēgšana
pauze ()
laiks. miegs (1)
Šis py fails ir arī pievienots, lai jūs varētu lejupielādēt, ja vēlaties. Mana poga ir jātur nospiesta 1 sekundi, ja vēlaties to mainīt, mainiet vērtību “hold-time =”.
5. darbība. Lieciet Python skriptus palaist no sāknēšanas
Atkal par šo tēmu ir daudz pamācību, es izmantoju šo no Dexter Industries un sekoju pirmajam solim, rediģējot rc.local failu.
sudo nano /etc/rc.local
Šeit jums dokumenta beigās jāpievieno pilns faila ceļš, katras rindas beigās pievienojot &. Katram failam jāpievieno viena rinda:
sudo python/home/pi/YOURFILENAME, py &
sudo python /home/pi/YOURFILENAME2.py &
tieši pirms rindas
izeja 0
Katras rindas beigās esošais & ir svarīgs, lai nodrošinātu programmas cilpas.
6. darbība: izveidojiet kasti
Tas ir pilnībā atkarīgs no jums. Tam patiešām ir jābūt tikai Pi izmēram, bet es savā ierīcē ievietoju kompresoru, lai saglabātu radio plūsmu diezgan konsekventā līmenī, tāpēc kaste ir nedaudz lielāka. Manējā priekšpusē ir caurums zīmei On-Air un lielai sarkanajai pogai, kā arī es izveidoju nelielu instrukciju kartīti dīdžejiem un ievietoju to zem pogas. Kastes sānos ir caurums spiedpogai, ACT LED un audio ieejai, kā arī inkrustētas instrukcijas bāra darbiniekiem par to, kā droši izslēgt kastīti.
7. darbība: uzstādīšana
Piestipriniet visas atsevišķās sastāvdaļas savā kastē, paturot prātā, ka vienmēr ir labi ļaut gaisa cirkulācijai ap Pi, lai novērstu pārkaršanu. Pievienojiet mikserim audio kabeļus, nospiediet pogu un izbaudiet apraidi!
Ieteicams:
Servo piekares bloķēšana ar vienu pogu: 3 soļi
Servo piekares bloķēšana ar vienu pogu: Pilnas balstiekārtas kalnu velosipēdi nodrošina vienmērīgu braukšanu, taču, braucot pedāļus augšup, bieži vien ir jāatslēdz piekare. Pretējā gadījumā balstiekārta saspiež, stāvot uz pedāļiem, tērējot šīs pūles. Velosipēdu ražotāji to zina un nodrošina
4 pogu spēles, izmantojot vienu analogo ievadi: 6 soļi (ar attēliem)
4 pogu spēles, izmantojot vienu analogo ievadi: šī pamācība ir vērsta uz vienas analogās ievades līnijas izmantošanu vairākām pogām, kuras var noteikt neatkarīgi viena no otras. Un, lai uzsvērtu šo pogu izmantošanu, ir programmatūra četru dažādu 4 taustiņu spēļu spēlēšanai. Visas spēles (astoņi no
Arduino USB pogu panelis: 5 soļi (ar attēliem)
Arduino USB pogu panelis: Arduino Leonardo ir ļoti jaudīga tāfele ar nelielām atšķirībām no ļoti populārā Arduino UNO. ATMega 32U4 ir galvenais Leonardo procesors. Šo mikrokontrolleru varat izmantot seriāliem sakariem, izmantojot USB. Arduino Leo
Bufete ar vienu pogu: 4 soļi
Bufete ar vienu pogu: PIEZĪME. Kang Chiao maltīšu sistēmai bezjēdzīgi, ja neesat mūsu skolā. Ierīcēm ir divi pielietojumi. To var izmantot, lai izlaistu garlaicīgo ēdienu izvēli, vienkārši izvēloties bufeti, kas ir patiešām noderīga cilvēkiem, kuri vēlas tikai ēst
Vairāku pogu savienošana ar vienu tapu Arduino: 4 soļi
Vairāku pogu savienošana ar vienu Arduino tapu: Sveiki, visi, kad jūsu Arduino projektos ir pāraugušas mirgojošas gaismas diodes, jums var būt vajadzīgas dažas papildu tapas. Es jums parādīšu triku, kuru varat izmantot, ja jums var būt vairākas pogas, kas visas ir savienotas ar vienu un to pašu analogo tapu