Orodha ya maudhui:
- Vifaa
- Hatua ya 1: Maelezo ya Sehemu ya Raspberry:
- Hatua ya 2: Nambari za Kijijini za IR
- Hatua ya 3: Programu kuu
- Hatua ya 4: Sehemu ya Raspberry: autostart na Kuongeza faili mpya
- Hatua ya 5: Usimamizi wa Nguvu kupitia Arduino Nano
- Hatua ya 6: Cabling
- Hatua ya 7: Sanduku
Video: Raspitone: rahisi kutumia Jukebox: Hatua 7
2024 Mwandishi: John Day | [email protected]. Mwisho uliobadilishwa: 2024-01-30 12:50
Halo, mradi wangu unaofuata ni, kama ninavyotumia kufanya, mradi sio muhimu sana:
Hii ni sanduku la jukiki kulingana na Raspberry 3 B +
Najua, kitu kama hiki kinaweza kufanywa kwa urahisi na smartphone na spika ya Bluetooth.
Lakini kwa mradi wangu, nilikuwa na sharti mbili ngumu:
Nilitaka kutengeneza kitu "mavuno".
Na kwa jumla, kutokana na ukweli kwamba mwanamke wangu hana matumaini kabisa kwa kompyuta au bluetooth au kitu kingine chochote kutoka karne ya 21, (na hata 20), ilibidi nifanye kitu rahisi sana kutumia ………
Kwa hivyo, uainishaji ulikuwa kama ifuatavyo:
Kitufe kimoja cha kushinikiza kuanza mashine
Skrini ya kugusa (rahisi sana) kusimamia muziki.
Kugusa mara moja kwenye skrini ili kusimamisha mashine.
Na kuwa na sauti nzuri ………
Vifaa
Kwa hili nilitumia:
1 Raspberry 3 B +
Sinema ya nyumbani 1 ya zamani ambayo haikuwa na maana kwa sababu ya msomaji wa DVD OOS (Samsung 2.1 ya zamani iliyo na woofer na spika 2 ambazo nilibadilisha kutoshea sanduku)
1 HIFIBERRY DIGI + bodi (na pato la macho kwa Amp ya nguvu)
Screen 1 ya kugusa capacitive 7 (yangu ni Makeasy ya rasipiberi iliyo na pembejeo ya HDMI na inaendeshwa kupitia USB lakini skrini yoyote ya kugusa ya HDMI inapaswa kuwa sawa)
1 nguvu suplly 5V 5A
1 ngao ya kupokezana
1 Arduino nano kusimamia mchakato wa KUZIMA / KUZIMA
1 IR imesababisha kuendesha sinema ya nyumbani (iliyoongozwa na transistor ya 2N2222 NPN)
Mpokeaji 1 wa IR (kwa nambari za IR zinazojifunza sehemu ya mradi, ninapata yangu kutoka kwa diski ngumu ya zamani ya Multimedia na amri ya mbali)
3 iliyoongozwa
1 kubadili kwa hali ya matengenezo
1 kubadili kwa kufanya kazi kwa arduino (wakati wa kupakia arduino imewekwa upya)
viunganishi vingine vya JST na Dupont
Na kwa sanduku
Mbao na plywood (lakini sitaelezea kwa undani utengenezaji wa sanduku). kusema tu kwamba, kuhusu boomer ndani ya sanduku, plywood ya 10 mm na kuni 18 mm ni lazima ikiwa hautaki kuona Jukebox ikivuka sebuleni wakati wa kucheza !!!!
Hatua ya 1: Maelezo ya Sehemu ya Raspberry:
Raspi inapaswa kusimamia mambo tofauti:
1) amri kwa sinema ya nyumbani (kupitia kijijini cha IR)
2) faili za muziki
3) skrini ya kugusa
4) Mapigo ya moyo kwa Arduino (ambayo itasimamia Wdt (angalia kipima muda cha mbwa))
Nilianza kutoka kwa usambazaji wa Raspbian kwenye kadi ya 16 G SD (Kama tutasoma tu faili kutoka kwa kadi ya SD, matumizi ya HDD sio lazima). Sitatumia muda kwenye sehemu hii kwani wavuti imejaa tuto juu yake..
Wacha tuone sehemu tofauti katika hatua zifuatazo….
Hatua ya 2: Nambari za Kijijini za IR
Kwa kuwa sikuweza kupata mpango wa mzunguko wa sinema ya nyumbani, niliamua kuiendesha kupitia amri za mbali
Hatua ya kwanza nilipaswa kukamilisha ilikuwa kujifunza kwa Raspi nambari za amri ya mbali ya sinema ya Nyumbani. Kwa kuwa nilitumia tuto nzuri sana katika Maagizo kutoka kwa nambari za Austin Stanton IR
Nilikuwa na tofauti, labda kwa sababu ya toleo jipya kwani mafundisho ni ya zamani, faili ya hardware.conf haipo tena (angalau sikuipata)
Inaonekana pia kwamba transistor iliyotumiwa kwenye tuto ni transistor ya PNP, kwa upande wangu nilitumia 2N2222 ambayo ni NPN lakini matokeo ni sawa. (Isipokuwa cabling !!!!!!!!)
Ugawaji wa pini umetolewa katika / boot/config.txt:
#autorisation de lirc le 08/07 / 2019dtoverlay = lirc-rpi, gpio_out_pin = 22, gpio_in_pin = 23
LED ya IR itaunganishwa sana na pin22 ya Raspi.
Maneno moja muhimu: wakati wa kusoma nambari kwa Raspi ni lazima kutumia maneno muhimu yaliyoorodheshwa kwenye amri
irrecord - orodha-nafasi ya majina
Hii ndio faili niliyoijenga kwa sanduku langu la jukiki:
pi @ raspitone: / nk / lirc $ paka lircd.conf
# Tafadhali chukua muda kumaliza faili hii kama ilivyoelezwa katika # https://sourceforge.net/p/lirc-remotes/wiki/Check… # na uifanye ipatikane kwa wengine kwa kuituma kwa # #
# Faili hii ya usanidi ilitengenezwa kiatomati
# kutumia lirc-0.9.4c (chaguomsingi) mnamo Mei 9 17: 33: 37 2019 # Amri ya amri iliyotumika: -d / dev / lirc0 /root/lircd.conf
Toleo la Kernel (uname -r): 4.14.98-v7 + # # Jina la mbali (kama faili ya usanidi): jukebox
# Chapa ya kifaa cha mbali, kitu unachoshikilia mkononi mwako: # Mfano wa kifaa cha mbali nr:
# Maelezo ya kifaa cha mbali:
# Je! Kifaa cha mbali kina kifaa cha kukamata kifurushi e. g., a
# usb dongle?:
# Kwa vifaa vya USB vilivyojumuishwa: kitambulisho cha muuzaji wa usb, kitambulisho cha bidhaa
# na kamba ya kifaa (tumia dmesg au lsusb):
# Aina ya kifaa kinachodhibitiwa
# (TV, VCR, Sauti, DVD, Satelaiti, Cable, HTPC,…):
# Vifaa / vifaa vinavyodhibitiwa na kijijini hiki:
anza kijijini
jina jukebox
bits 16
bendera SPACE_ENC | CONST_LENGTH
eps 30
100
kichwa 4470 4496
moja 542 1693
sifuri 542 581
553
pre_data_bits 16
pre_data 0xC2CA
107863
togles_bit_mask 0x0
mzunguko 38000
anza nambari
KEY_POWER 0x807F
KEY_AUX 0x8877
KEY_VOLUMEUP 0xCC33
KEY_VOLUMEDOWN 0xDC23
nambari za mwisho
mwisho kijijini
Kama unavyoona, ninahitaji tu amri 4 za kuendesha Sinema ya Nyumbani
Nguvu (IMEWashwa / IMEZIMWA)
AUX => kubadili kituo cha kuingiza macho (kama HC inavyoanza kwenye kisomaji cha DVD kila wakati)
Na ujazo +/-
Amri zinazohusiana zinatekelezwa kupitia amri za LIRC:
kwa mfano: "irsend SEND_ONCE jukebox KEY_VOLUMEUP"
Hatua ya 3: Programu kuu
Programu kuu imeandikwa katika Python:
Kama mimi ni mpya katika Python nadhani kuna maboresho mengi ambayo yanaweza kufanywa, lakini inaendesha….
Maelezo:
1) dhibiti skrini ya picha:
Kwa hili, nilitumia APPJAR ambayo ni TKINTER lakini iliyostaarabika kwa mwanafunzi (kesi yangu), hii inamaanisha rahisi kutumia, labda na uwezekano mdogo, lakini ilitosha kwa kusudi langu.
2) cheza faili za mp3:
Nilitumia mplayer kwa chatu.
3) toa nambari za kubahatisha kwa kucheza katika hali ya kuchanganya:
Kwa kuwa sikutaka kusikia wimbo huo kila robo, niliunda programu ndogo kuangalia ikiwa nambari haikuwepo kwenye orodha ya nambari zilizopita x (x kulingana na urefu wa orodha ya kucheza).
Kazi ya randint katika chatu sio "ya nasibu" kadiri nilivyoona.
4) tuma "mapigo ya moyo" kwa Arduino
5) dhibiti kicheza faili:
Kama Mplayer anavyopendeza, wakati faili inapoanza hakuna njia ya kujua kwa Python wakati imekamilika (angalau sikupata njia rahisi)
Ili kutatua kwamba nilitumia amri za mplayer kutoa urefu wa faili na maendeleo katika faili ya sasa
Kwa wote 4 na 5 nilitumia uwezekano uliopewa na Appjar kutengeneza kazi ya mara kwa mara (kwani appjar ni programu ya hafla hii ni njia ya kuunda hafla ya mara kwa mara). kazi ni:
#
p.setPollTime (1000)
Taskman wa "meneja wa kazi" ambayo ni def katika programu inayosimamia yote ambayo sio matukio ya skrini (mwisho wa faili iliyochezwa, jaza bar ya maendeleo, tuma mapigo ya moyo kwa Nano,….)
Mara baada ya kuanza skrini inaonekana kama hii:
Hapa kuna programu: (inaweza kufunguliwa kupitia Notepad ++ au Geany)
Hatua ya 4: Sehemu ya Raspberry: autostart na Kuongeza faili mpya
Ukiangalia programu unaweza kuona kuwa ninatumia faili zingine za bash:
1) Start_jukebox:
Kwa kweli kusudi ni kuwezesha sinema ya Nyumbani na kuhamia kwa pembejeo ya D. IN (pembejeo ya macho kwenye sinema yangu ya Nyumbani)
pi @ raspitone: / bin $ paka kuanza_jukebox #! / bin / bash
tuma SEND_ONCE sanduku la sanduku KEY_POWER
lala 7
tuma tena SEND_ONCE sanduku la jukki KEY_AUX
lala 2
2) stop_jukebox:
Ili kuwezesha sinema ya Nyumbani
pi @ raspitone: / bin $ paka stop_jukebox
#! / bin / bash
tuma SEND_ONCE sanduku la sanduku KEY_POWER
Faili hizi mbili za bash zinaitwa na Python na amri ya os.system
Kuanza hati ya Python nilifanya bash ndogo
pi @ raspitone: ~ $ paka dem_jukebox.bash #! / bin / bash
cd / nyumbani / pi
chatu jukebox_gui.py
Kwa kuanza kiotomatiki katika hali ya GUI nimebadilisha faili ya autostart katika / etc / xdg / lxsession / LXDE-pi
pi @ raspitone: / nk / xdg / lxsession / LXDE-pi $ paka autostart @ lxpanel - wasifu LXDE-pi
@pcmanfm - desktop - maelezo mafupi LXDE-pi
@xscreensaver -no-splash
@lxterminal - amri = "dem_jukebox.bash"
uhakika-rpi
Kuongeza faili mpya za mp3:
Ili kuongeza faili mpya, nilipendelea kutengeneza hati ndogo ya Python:
new_song_file.py
Kwanza nitaelezea shirika la faili za mfumo:
Faili zote ziko ndani / nyumbani / pi
Faili za mp3 zimepigwa katika saraka ya / nyumbani / pi / Muziki
Kila msanii ana saraka yake ndogo inayoshikilia faili zinazohusiana za mp3
pi @ raspitone: ~ / Music / Mike_oldfield $ ls-jumla ya 760516
-rwxr ----- 1 pi pi 2254923 juin 30 2017 A_New_Beginning.mp3
-rwxr ----- 1 pi pi 2691736 juin 30 2017 Kuwasili.mp3
-rwxr ----- 1 pi pi 8383244 juin 30 2017 Kupaa.mp3
-rwxr ----- 1 pi pi 5410816 juin 30 2017 Blue_Night.mp3
-rwxr ----- 1 pi pi 13125199 juin 30 2017 Castaway_ (Instrumental).mp3
-rwxr ----- 1 pi pi 12903583 juin 30 2017 Castaway.mp3
-rwxr ----- 1 pi pi 2969869 juin 30 2017 Celt.mp3
-rwxr ----- 1 pi pi 9047745 juin 30 2017 Chariots_ (Instrumental).mp3
-rwxr ----- 1 pi pi 9403263 juin 30 2017 Magari.mp3
Katika saraka Hati tunaweza kupata orodha iliyojengwa ya faili za kucheza.
pi @ raspitone: ~ / Nyaraka $ paka orodha.txtFranz_Ferdinand / Michael_live.mp3
Franz_Ferdinand / mbaya_na_heathen.mp3
Franz_Ferdinand / Walk_Away_live.mp3
Franz_Ferdinand / love_and_destroy.mp3
Franz_Ferdinand / moto_wake.mp3
Franz_Ferdinand / eleanor_put_boots_on_ yako.mp3
Franz_Ferdinand / nakukosa.mp3
Franz_Ferdinand / this_fire_ (playgroup_remix).mp3
Franz_Ferdinand / Jacqueline.mp3
Pia tunaweza kupata data ya orodha za kucheza (lakini hii imejengwa na hati ya Python)
Hati ndogo ya Python inaongeza nyimbo mpya, zilizohifadhiwa kwenye Muziki, kwenye orodha.txt baada ya kupangilia tittles katika muundo wa UNIX
Hapa kuna hati: (inaweza kufunguliwa kupitia Notepad ++ au Geany)
Hatua ya 5: Usimamizi wa Nguvu kupitia Arduino Nano
Kama nilitaka kuwa na kitu rahisi kuanza, niliamua kuifanya na nano ndogo:
Kanuni:
Wakati wa kushinikiza kitufe cha kuanza vifaa vyote vinatumiwa, nano huanza (sekunde 1 au 2) na inachukua usimamizi wa nguvu kwa kuchochea relay ambayo inazima mawasiliano ya kitufe cha kushinikiza.
Kisha Nano anasubiri kwa sekunde 35 kupokea mapigo ya moyo kutoka kwa Raspberry (inamaanisha kuwa mchakato wa kuanza umekamilika na programu ya jukebox inaendesha).
Kwa muda mrefu kama nano inapokea mapigo ya moyo huweka tena kwenye (Tazama kipima muda cha mbwa)
Ikiwa hakuna mapigo ya moyo tena (inamaanisha mpango wa jukebox umesimamishwa) Nano anasubiri kwa sekunde 20 (kuwa na uhakika kwamba raspi imesimamishwa kabisa) kutoa relay ya umeme.
Sanduku la juk basi huwashwa kabisa
Niliongeza swichi ili kuamsha pembejeo ya nano kuonyesha hali ya matengenezo (ninatumia kisanduku cha juk kudhibiti vifaa vyangu vingine vya raspi kupitia ssh et vnc). Nano basi huzima mchakato wa mbwa wa kuangalia
Maoni:
pembejeo ya mapigo ya moyo kutoka Raspi inahitaji kuvutwa (lakini 3.3V kutoka Raspi inachukuliwa kama kiwango cha juu na Nano)
Inaweza kufanywa na NE555 lakini mimi ni mvivu na huwa na nano kwenye droo yangu !!!!
Hapa kuna programu fupi ya C (inaweza kufunguliwa na Notepad ++)
Hatua ya 6: Cabling
Kwa Skrini:
Cable ya HDMI na kebo ya USB hutumiwa kwenye Raspi kuwezesha na kuendesha skrini.
Kwa jopo la mbele:
Cable ya USB pia imeunganishwa kutoka Raspi ili kuweza kupakia faili mpya au kutengeneza nakala rudufu.
Cable ya USB imeunganishwa kutoka Nano ili kuweza kupata laini (kwa marekebisho ikiwa ni lazima)
Mimi kuziba pia dongle ya kibodi isiyo na waya kwenye rasipberry ili kuweza kufanya matengenezo bila kutumia kuziba nje ya USB
Kama Raspberry na Arduino hutumiwa, cabling ni rahisi sana.
Yote iko kwenye bodi ya matriki ya ukanda.
Kutoka kwa raspberry 2 GPIO hutumiwa:
Pin22 kwa IR LED
Bandika 27 kwa mapigo ya moyo kwa Arduino
juu ya Arduino
Pini 2 hutumiwa kama pini ya kukatiza kwa mapigo ya moyo kutoka Raspi.
Pini 3 hadi 5 hutumiwa kuendesha gari iliyoongozwa (Anzisha, Wdt, Matengenezo).
Pin 6 ni ya kubadili matengenezo.
Pin 7 ni pato la kupeleka ngao.
Hapa kuna faili ya fritzing:
Hatua ya 7: Sanduku
Sitaelezea mengi niliyofanya kwani inategemea nguvu amp na spika zilizotumiwa.
Kama habari sinema ya nyumbani iko chini ya sanduku.
Zaidi ya spika:
1 woofer
Spika 2 za kati, ambazo nilibadilisha kuziingiza kwenye sanduku.
Juu:
Pannel ya mbele iliyo na skrini, LED, swichi na plugs za USB.
Mbao:
Kwa spika, njia za upande juu na chini nilitumia ubao wa kuni wa mm 18 mm.
Upande wa mbele ni plywood 10 mm na visu 40 mm.
Ili kuwezesha ufungaji na matengenezo (ikiwa inahitajika !!!) Ninaweka mizunguko kwenye droo nyuma ya pannel ya mbele
Ili kuzuia kuchomwa moto shimo kubwa hufanywa chini ya paneli ya nyuma na ninaweka shabiki wa 5V (8 cm) kwenye pannel ya nyuma karibu na mzunguko.
Picha hapo juu ni kutoa tu wazo.
Kwa hivyo, ndio hivyo !!!!!!!!!
Asante kwa kunisoma
Na tukutane wakati mwingine kwa vituko vipya
Ilipendekeza:
Taa za Kombe la Povu la DIY - Rahisi na ya bei rahisi Mapambo ya Diwali Kutumia Vikombe vya Povu: Hatua 4
Taa za Kombe la Povu la DIY | Wazo rahisi na la bei rahisi la Diwali la Kutumia Vikombe vya Povu: Katika chapisho hili, tutazungumza juu ya mradi wa Sherehe za Diwali kwenye bajeti. Natumai utapenda mafunzo haya
Njia ya bei rahisi na rahisi ya Tin ya PCB yako Kutumia Chuma cha Soldering: 6 Hatua
Njia ya bei rahisi na rahisi ya Tin ya PCB yako Kutumia Chuma cha Soldering: Wakati nilikuwa mwanzilishi katika uchapishaji wa PCB, na kutengenezea mimi kila wakati nilikuwa na shida kwamba solder haibaki mahali pazuri, au athari za shaba zinavunjika, pata vioksidishaji na zingine nyingi. . Lakini nilifahamiana na mbinu nyingi na hacks na mmoja wao
Jinsi ya kutumia waya na kutumia GY-30 BH1750 Sensor ya Mwanga (GY30 / GY302) - Rahisi - Mradi wa Arduino !: Hatua 7
Jinsi ya kutumia waya na kutumia GY-30 BH1750 Light Sensor (GY30 / GY302) - Rahisi - Mradi wa Arduino!: Katika mafunzo haya tutajifunza jinsi ya kutumia haraka na kwa urahisi sensor ya nguvu ya GY-30 BH1750 na Arduino. Tazama video ya onyesho
DIY MusiLED, Muziki uliosawazishwa LEDs na Bonyeza mara moja Windows & Linux Maombi (32-bit & 64-bit). Rahisi kujirudia, Rahisi Kutumia, Rahisi kwa Port: 3 Hatua
DIY MusiLED, Muziki uliosawazishwa LEDs na Bonyeza mara moja Windows & Linux Maombi (32-bit & 64-bit). Rahisi kujirudia, Rahisi Kutumia, Rahisi Bandari. Mradi huu utakusaidia kuunganisha LEDs 18 (6 Nyekundu + 6 Bluu + 6 Njano) kwa Bodi yako ya Arduino na uchanganue ishara za wakati halisi wa Kompyuta yako na uzipeleke kwa taa za taa kuziwasha kulingana na athari za kipigo (Mtego, Kofia ya Juu, Kick)
Njia Rahisi / rahisi / Sio ngumu ya Kufanya Watu / wanadamu / wanyama / roboti ionekane kama Wana Maoni ya baridi / mkali wa joto (Rangi ya Chaguo lako) Kutumia GIMP: Hatua 4
Njia Rahisi / rahisi / Sio ngumu Kufanya Watu / wanadamu / wanyama / roboti ionekane kama Wana Maono ya joto / mkali wa joto (Rangi ya Chaguo lako) Kutumia GIMP: Soma … kichwa