Cov txheej txheem:

Rov Qab Los Rau Lub Sij Hawm Yav Tom Ntej: 8 Kauj Ruam (nrog Duab)
Rov Qab Los Rau Lub Sij Hawm Yav Tom Ntej: 8 Kauj Ruam (nrog Duab)

Video: Rov Qab Los Rau Lub Sij Hawm Yav Tom Ntej: 8 Kauj Ruam (nrog Duab)

Video: Rov Qab Los Rau Lub Sij Hawm Yav Tom Ntej: 8 Kauj Ruam (nrog Duab)
Video: txhob hnov qab kuv lub npe - Bee lee [Official MV] 2022-23 2024, Hlis ntuj nqeg
Anonim
Rov Qab Los Rau Lub Sij Hawm Yav Tom Ntej
Rov Qab Los Rau Lub Sij Hawm Yav Tom Ntej

Txoj haujlwm no pib lub neej raws li lub tswb moos rau kuv tus tub. Kuv tau ua kom zoo li lub sijhawm sib tw los ntawm Rov Mus Rau Yav Tom Ntej. Cov zaub tuaj yeem qhia lub sijhawm hauv ntau hom ntawv, suav nrog ib qho ntawm cov yeeb yaj kiab tau kawg. Nws tuaj yeem teeb tsa tau los ntawm cov nyees khawm nyob rau sab saum toj ntawm lub thawv ntawv tab sis kuj ntawm lub vev xaib uas tau txais los ntawm Raspberry Pi Zero sab hauv. Hauv ib qho ntawm cov qauv zaub nws yuav qhia txog huab cua hauv zos (los ntawm kuv lub chaw nres tsheb huab cua Arduino) nrog rau kev kwv yees thiab ib qho kev ceeb toom txhua hnub, teeb tsa ntawm lub vev xaib interface. Nws kuj tseem muaj lub suab ua tsaug rau DAC thiab yuav tshaj tawm suab paj nruag siv AirPlay raws tu qauv. Lub tswb nrov tuaj yeem yog cov ntaub ntawv audio uas koj xaiv. Nws yuav dim thiab ua kom pom cov duab pom ntawm lub sijhawm ntawm hnub (piv txwv li kaj ntug thiab tsaus ntuj).

Kauj ruam 1: Tom qab

Xyoo tas los kuv tau tshawb nrhiav qhov project Arduino tshiab uas nyuam qhuav ua tiav kuv thawj zaug, ib qho chaw nres tsheb huab cua hauv tsev. Kuv tus tub hnub nyoog 11 xyoos nyuam qhuav saib cov yeeb yaj kiab Back to the Future thawj zaug yog li kuv xav tias nws yuav lom zem los tsim nws lub tswb tswb uas zoo li lub sijhawm nyob hauv Delorean rau nws lub hnub yug. Qhov no tsis yog lub tswv yim tshiab, muaj ob peb qhov haujlwm zoo sib xws nyob ntawd (qhov no piv txwv), yog li kuv xav tias nws yuav yog txoj haujlwm zoo los kawm los ntawm lwm tus thiab khaws qee qhov txuj ci tshiab.

Thawj qhov ua haujlwm tau zoo heev (nws tsis tau npaj rau nws lub hnub yug: Kuv tau ua tiav los ntawm Christmas) tab sis kuv tau mob siab rau qhov kuv xav kom nws ua thiab pom tias kuv daim duab kos tau khiav mus rau qhov txwv txwv ntawm Arduino. Kuv kuj tseem muaj ntau qhov khoos phis tawj me me sab nraud (WiFi, MP3 player, lub suab nrov nrov, RTC thiab lwm yam), yog li nws txhua yam tau txais me ntsis tsis zoo. Thaum kawg, Kuv txiav txim siab txav mus rau Raspberry Pi platform uas ua kom yooj yim kho vajtse thiab tso cai rau kuv ntim ntau ntau yam ua haujlwm thiab cov yam ntxwv.

Kauj Ruam 2: Cov Khoom Kho Vajtse Loj

Sab Hauv Lub Thawv

Nov yog cov khoom siv hluav taws xob kuv siv. Feem ntau ntawm lawv yog cov khoom siv los ntawm Core Electronics hauv Australia tab sis tau kawg lawv tau npaj muaj nyob rau lwm qhov thiab:

  • 4 x Quad Alphanumeric Zaub -Yellow -Green
  • Raspberry Pi Zero W.
  • Pimoroni pHAT DAC rau Raspberry Pi Zero
  • Suab Amp (PAM8403 IC)
  • Raspberry Pi 3+ fais fab mov
  • 4 x Jumper hlau - 0.1 ", 5 -pin, 12"
  • 40 tus pin (2 x 20) ribbon cable
  • Raspberry Pi GPIO Txiv neej Header
  • Raspberry Pi Qauv B - GPIO Shrouded Header (2X20)
  • GPIO Stacking Header rau Pi A+/B+/PI 2/PI 3 - ntev ntxiv 2X20
  • 4 x 5 tus pin txiv neej lub taub hau
  • 2 tus hais lus me me 3W
  • 2 x coaxial cables rau analog suab txuas DAC rau Amp
  • Veraboard lossis PCB kev cai los tswj Rpi rau lub amp, LED, cov nyees khawm
  • 5 x hloov pauv ib ntus khawm khawm
  • 4 x 2-txoj kev PCB-mountable ntsia hlau dav hlau thaiv

Lub Thawv

  • Cov khoom me me thiab cov khoom ntawm MDF, ntsia hlau thiab ntsia hlau los ua 'chassis'
  • Ntsuab tinted perspex, cov chaw muag khoom hauv zos
  • Styrene, qauv ua kua nplaum, tshuaj tsuag xim (xim xim txhuas) los ntawm ib lub khw nyiam ua haujlwm hauv ib cheeb tsam
  • Cov ntawv nplaum (cov ntaub ntawv muaj nyob ntawm kev thov - luam tawm los ntawm Redbubble)

Kauj Ruam 3: Muab tag nrho ua ke

Muab Nws Tag Nrho Ua Ke
Muab Nws Tag Nrho Ua Ke

LED zaub rau lub moos suav nrog 16x14-ntu cov lej thiab cov lej lej, hmoov zoo tib tus lej raws li Rov Qab Mus Rau Yav Tom Ntej lub sijhawm. Thaum tsuas yog thawj peb lub cim yuav tsum tau ua tus lej thiab tus so tuaj yeem yog 7-ntu cov lej hais kom ua raws cov yeeb yaj kiab, Kuv txiav txim siab ua kom lawv txhua tus lej thiab tso cai rau qee qhov yooj yim hauv qhov uas tuaj yeem tso tawm thiab kom lawv txhua tus saib tib yam. Adafruit quad-backpacks yog ib qho kev daws teeb meem zoo ntawm no thiab tuaj yeem khiav ntawm Raspberry Pi's I2C npav. Xav paub ntau ntxiv txog cov koog no thiab yuav hu xov tooj tuaj yeem pom ntawm no ntawm Adafruit lub vev xaib. Tsuas yog qhov tsis yog tus qauv uas kuv yuav tsum tau ua yog hloov chaw nyob ntawm peb ntawm lawv yog li txhua lub hnab ntim khoom tshwj xeeb.

Txhawm rau ua suab (hauv lub tso suab), Kuv suav nrog Pimoroni pHAT DAC thiab 2 x 3W lub tso suab tso suab raws li PAM8403 nti. PHAT DAC yog qhov yooj yim heev txuas rau Pi. Kuv muab 2 x 20 tus pin txiv neej lub taub hau ntawm Pi thiab GPIO teeb lub taub hau ntawm DAC yog li lawv tuaj yeem ntsaws ua ke nyob rau lwm qhov. Tus txiv neej lub taub hau txuas mus rau sab saum toj ntawm DAC, tso cai rau kuv los ua kab xov txuas nrog poj niam txuas, thaum xub pib mus rau Raspberry Pi tawg rau qhob cij-ntsuas tab sis thaum kawg mus rau lub hau npog ntawm tus kheej-ua PCB.

Txog lub suab nrov nrov, muaj ntau txoj hauv kev xaiv (suav nrog tsuas yog tau txais lub nti thiab teeb tsa koj tus kheej). Qhov no muaj qhov kev xaiv ntawm kev hloov pauv cov txiaj ntsig los ntawm kev hloov pauv lub xeev ntawm ib tus pin (siab nyob rau, qis qis) thiab kuv tau txuas nws kom qhov no tuaj yeem tswj tau los ntawm Pi. Hauv kuv qhov kev sim ua thawj zaug los xaim qhov no, Kuv pom muaj suab nrov ntau tom qab thaum lub suab qhib. Tom qab ntau qhov kev ua si ib puag ncig nrog hauv av, thaum kawg kuv tau sim txav cov khoom siv hluav taws xob los ntawm Pi's 5V rau 3.3V thiab qhov ntawd kho nws. Kuv kwv yees muaj ntau lub suab nrov tsim los ntawm ntau yam digital teeb liab ya ncig tab sis nws zoo li 3.3V cov khoom yog qee qhov cais tawm.

Lwm qhov kev sib txuas suav nrog cov suab sib piv los ntawm DAC rau lub tshuab hluav taws xob (Kuv tau siv cov xov tooj sib txuas ntawm no los pab tswj lub suab nrov nrov) thiab tso suab rau ob khub me me 3W hais lus uas haum rau hauv lub thawv. Kuj tseem muaj GPIO kev sib txuas rau plaub qhov hloov pauv nyob rau sab saum toj ntawm lub npov thiab kuv tau txuas lub pob ib ntus rau qhov pib dua "RUN" pins (saib ntu Txuas Ntxiv ntawm nplooj ntawv no). Lub pob pib dua tau teeb tsa tawm ntawm qhov pom tom qab ntawm lub thawv ntawv. Nov yog daim duab qhia pom kev sib txuas:

Kauj Ruam 4: Kev Cai PCB

Kev cai PCB
Kev cai PCB

Thaum tsis muaj dab tsi nyuab nyuab heev txog ntawm kab hluav taws xob, muaj cov kab txuas me me thiab cov qhob cij tuaj yeem zoo li spaghetti zoo nkauj sai. Yog li kuv tsim PCB los ua kom txhua yam tswj tau. Nws yog lub tsev-brew ib leeg-tog board thiab kuv tau txais ib tus phooj ywg los pab ua nws. Tom qab nws tau ua thiab txuas mus, Kuv paub tias kuv tsis nco qab suav nrog kev sib txuas rau cov dav hlau thaiv rau lub suab thiab tom qab ntawd kuv tau hloov pauv txav lub suab amp muab los ntawm 5V rau 3.3V, yog li nws tsis zoo thiab kuv yuav tsum tau tsoo qee qhov Veroboard tso cai rau kev sib txuas suab. Tsis tas li, lub suab amp board pinouts nyob ntawm qhov tsis sib xws (lawv txawm sib txawv ntawm cov pins) yog li kev sib txuas rau qhov no rau PCB tseem ceeb yog qhov txaus ntshai me ntsis nrog 11 luv ~ 1cm txuas xov hlau.

Yog tias kuv tau ua lwm lub rooj tsavxwm, Kuv yuav suav nrog txhua qhov kev hloov kho no thiab tseem hloov qhov txuas rau plaub lub khawm rau qee yam zoo dua. DAC thiab Pi yuav teeb tsa sab xis rau sab saum toj, yog li tsis xav tau daim kab xev xav tau. Daim duab saum toj no qhia seb nws yuav zoo li cas.

Kauj Ruam 5: Qhov Kev Ruaj Ntseg

Cov ntaub ntawv kaw
Cov ntaub ntawv kaw
Cov ntaub ntawv kaw
Cov ntaub ntawv kaw
Cov ntaub ntawv kaw
Cov ntaub ntawv kaw

Kuv xav ua ib lub thawv ntawv uas zoo li ib kab ntawm cov yeeb yaj kiab sijhawm. Peb kab ntawm cov lus qhia LED yuav tau ntau dhau rau lub tswb moos thiab yuav tau ntxiv qhov txiaj ntsig. Kuv xav txog kev ua lub thaiv ntawm txhuas tab sis kuv tsis muaj txuj ci hauv cheeb tsam ntawd. Kuv tau ua ob peb tus qauv yas hauv kuv lub neej tab sis, thiab muaj qee qhov kev paub txog kev ua ntoo, yog li txiav txim siab ua tus ncej siv MDF txhawm rau teeb tsa LEDs thiab hais lus thiab txhim kho perspex rau pem hauv ntej, tom qab ntawd npog nrog 5-sided styrene lub thawv nrog lub bezel nyob rau sab xub ntiag, pleev xim rau hauv cov xim txhuas xim hlau. Cov yas thiab cov xim tau txais los ntawm cov khw muag khoom hauv zos. Kuv tau saib ze ntawm daim ntawv lo ntawm cov yeeb yaj kiab thiab ua kuv qhov zoo tshaj plaws los theej cov xim, hom ntawv thiab qhov loj me. Kuv siv Photoshop los tsim cov ntawv thiab tau txais lawv luam tawm ua cov ntawv nplaum los ntawm Redbubble.

Cov duab saum toj no qhia:

  1. Pem hauv ntej ntawm MDF chassis. 4 lub hnab ev ntawv LED tau teeb tsa nyob rau ntawm xub ntiag nrog cov xim ntsuab-tinted perspex
  2. Sab hauv lub thawv. Hnab ev ntawv txhua tus tau teeb tsa thiab kab, Raspberry Pi thiab kev cai PCB hauv, hais lus ntawm ob sab.
  3. Cov xov hlau tau teeb tsa thiab lub plhaub sab nrauv npaj mus ntxiv. Nws yog qhov nyem me ntsis!

Kauj Ruam 6: Teeb Kho Raspberry Pi

Kuv muaj qee qhov teeb meem sib xws nrog Raspbian Stretch (uas tej zaum yuav daws tau yog tias kuv mob siab) tab sis Jessie ua haujlwm nrog nws zoo xwb, yog li kuv txiav txim siab mus nrog qhov ntawd.

Kuv teeb tsa Pi ua chav tsis muaj lub taub hau nrog VNC thiab SSH nkag. Qhov no tuaj yeem ua tiav yam tsis tau ntsaws rau hauv cov keyboard lossis saib tab sis kuv tsuas yog qiv lub TV thiab tsoo cov keyboard, thiab ua rau nws mus tsis tau taub hau sai sai. Txij thaum ntawd los, Kuv zoo nkauj npaum li siv VNC txij thaum ntawd los.

Kuv lub moos cim siv Python 2.7.9 thiab tso siab rau ob peb lub tsev qiv ntawv, teev hauv qab no. Ib yam li qhov no, Kuv tab tom siv Flask web server thiab MQTT rau kev tswj chaw taws teeb thiab Shairplay rau kev tso nkauj. Kuv nyuam qhuav ua raws daim ntawv teeb tsa on-line rau tag nrho cov no thiab tsis muaj teeb meem hlo li. Nov yog cov tsev qiv ntawv nab hab sej thiab lwm yam pob khoom kuv xav tau los nruab nrog cov kab ntawv txuas rau kev teeb tsa lossis tsuas yog cov lus txib koj xav tau kom khiav kom tau nws:

Python tsev qiv ntawv

  • Adafruit_LED_Backpack
  • Rpi. GPIO (apt-tau nruab sej-rpi.gpio)
  • alsaaudio
  • paho.mqtt.client (pip nruab paho-mqtt)
  • hwj (apt-get install nab-flask)

Lwm pob ntawv thiab lwm yam

  • yoov tshaj cum (apt-tau nruab yoov tshaj cum)
  • shairport
  • Lub vev xaib Pimoroni muaj qee cov ntaub ntawv zoo ntawm kev teeb tsa DAC, yog li kuv tsuas yog khiav nrog qhov ntawd.

Kauj ruam 7: Software

Image
Image
Software
Software

Lub moos chaws tau sau hauv Python thiab siv xov xov los ua lub tswb nrov thiab qee lub suab nrov nyob rau tom qab yam tsis thaiv qhov hloov tshiab. Kuv siv lub tsev qiv ntawv ConfigParser thiab cov ntaub ntawv teeb tsa nws tswj hwm tau nyeem thiab sau los ntawm lub moos chaws zoo li Flask web app kom txhua lub sijhawm kev teeb tsa raug hloov pauv ntawm lub vev xaib lossis lub moos, nws tau ua tiav. Lub moos software tseem suav nrog MQTT tus tswv lag luam kom tso cai tswj hwm cov zaub thiab hloov mus rau kev tswj chaw deb. Kuv qhov kev xav sab nrauv yog qhov kawg los sau iOS app rau kev tswj chaw taws teeb tab sis lub vev xaib sib txuas ua haujlwm zoo txaus rau tam sim no.

Thawj daim duab saum toj no qhia tias lub moos zoo li cas hauv nws ntau hom zaub, thiab muaj cov vis dis aus luv luv qhia nws hauv hom scrolling.

Thaum cov cai tsis zoo saib nws yog qhov zoo thiab ruaj khov. Kuv zoo siab xa nws mus rau txhua tus neeg thov nws thiab yuav tso nws online thaum nws tau teeb tsa zoo dua thiab tawm tswv yim.

Lub Web app

Cov duab tom ntej qhia tias lub web interface zoo li lub moos zoo li cas. Kuj tseem muaj kev teeb tsa thiab tswj cov nplooj ntawv thiab cov no ua rau nws yooj yim dua ua si nrog lub moos yam tsis muaj khawm ntau ntau:-).

Kauj Ruam 8: Dab Tsi Ntxiv?

Dab Tsi Ntxiv?
Dab Tsi Ntxiv?

Muaj Python shareport metadata decoder muaj yog li kuv xav tias kuv yuav ntxiv qee qhov chaws los tso tawm cov ntaub ntawv zoo li lub npe thiab tus kws kos duab thaum ua suab paj nruag. Nws kuj tseem yuav yooj yim heev los suav hnub tuaj thiab hnub poob lub sijhawm kom cov zaub tuaj yeem ua kom pom kev kaj thiab ploj, tsis yog teeb nws tus kheej. Tej zaum ntxiv qhov siv xov tooj cua hauv internet yuav lom zem heev. Cov zaub scrolling kuj tseem tuaj yeem tsim kho tau ntau dua.

Pom zoo: