0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

可播放音頻的無線門鈴的制作教程

454398 ? 來源:wv ? 2019-09-04 10:24 ? 次閱讀

第1步:訂購外殼零件

首先需要做的是案例。這是電子設備內(nèi)部的木制Tardis。你可以在Etsy找到這個。有一家名為Lazer Models的商店出售lazer切割木制模型。您將需要木膠和一點時間將所有東西放在適當?shù)奈恢貌⑺鼈冋澈显谝黄稹?/p>

***當您將模型放在一起時,請不要粘貼或使用頂部燈光在展示中的頂部部件。一個led會在這里點亮,然后點亮。你需要那個洞****

第二步:LED鉆孔

Tardis的頂部應該有一個小洞,我們留下了碎片。使用鉆頭鉆一個穿過該孔到達Tardis中心的孔。在中間有一塊用于穩(wěn)定的木制件,它是堅固的。鉆孔應穿過這個部分,以便底部隱藏的隔間和頂部連接。這將允許兩根小線從底部隔間向上延伸到頂部,LED將放置在頂部。

第3步:繪畫

這對我來說是最困難的部分。我從業(yè)余愛好大廳得到了我用過的油漆。官方的Tardis油漆很難找到,木制Tardis上的碎片很小,所以你需要精細的油漆刷。我在業(yè)余愛好大廳買了工藝油漆和刷子。您將需要外部的藍色和白色字體的頂部的黑色以及白色。我只畫了正面的字母,因為它非常小而且很難搞亂。我不得不用黑色或藍色回過頭幾次錯誤。涂完漆后你需要一罐聚氨酯。我做了三層油漆,以我想要的方式得到它。然后噴涂3層聚氨酯,以密封和光澤Tardis。這有助于翹曲,也給它一個很好的光澤。

步驟4:鉆側(cè)孔

現(xiàn)在您需要鉆孔和切割在Tardis案件的一側(cè)有幾個洞。你需要一個足夠大的洞,用于魷魚按鈕的動力。您還需要一個用于連接Sound板的電源線和USB線的孔。我鉆了最初的洞,然后使用一把精確的刀子將孔打得足夠圓和圓形。

第5步:Raspberry Pi

現(xiàn)在你將需要設置Raspberry Pi的。為此,我購買了Raspberry pi 3,電源線,Raspberry Pi散熱器,32gb micro sd卡,母對母跳線,10歐姆電阻,兩個包裝魷魚按鈕,10v至5V電源轉(zhuǎn)換器,跳線電纜和跳線電纜制造商套件,以及USB音板,如果你有它,帶有USB加密狗的無線鍵盤使這更容易。您還需要第二張Raspberry Pi和SD卡。這將需要一個Raspberry Pi零和一個gpio引腳輸入焊接。

*** SD卡不需要32gb一個8gb就行了***

您需要將圖像下載到SD卡上才能在Raspberry Pi中使用。然后你可以使用任何免費軟件將圖像寫入SD卡。我使用Win32DiskImager 。.這是一個非常簡單的過程。您只需插入將分配驅(qū)動器號的SD卡。然后瀏覽到下載的圖像并寫入磁盤,然后選擇SD卡。我在那里使用Raspian圖像。谷歌搜索Raspian并將圖像寫入SD卡將為您提供所需的一切。

將圖像寫入SD卡后,將其插入Raspberry Pi 3的端口并插入電源線進行首次啟動。 Raspian圖像將打開像素桌面環(huán)境。有一個黑色方塊的圖像,這是我們將使用我們的腳本來完成這項工作的終端。單擊該圖像以打開終端。

***此時請務必注意我通過手機錄制節(jié)目然后將視頻上傳到y(tǒng)outube并使用yt2mp3網(wǎng)站將其轉(zhuǎn)換為mp3來獲取音頻文件。然后將它們下載到Raspberry Pi并將它們放在/home/pi目錄中。您可以使用文件夾圖標并從下載文件夾中拖動文件來執(zhí)行此操作。

我附上了一張GPIO板圖片,告訴你哪些引腳可以做什么。為簡單起見,我建議使用我做過的針腳。針腳3是我的電源按鈕。引腳14是我的引腳,引腳18是程序引腳。這沒有任何關(guān)系,因為這是無線完成的。在home/pi目錄中還有我的MP3圖像。

第6步:Power Shell腳本

這種方式有兩個shell腳本。腳本運行啟動并啟動python腳本。 python腳本運行并等待按鈕按下或引腳電壓波動輸入。 shell腳本非常簡單,以下是第一個。這將在創(chuàng)建后啟動python腳本。

#!/bin/bash

#Power按鈕

cd/

cd/home/pi

sudo python3 power.py

cd/

這個腳本將啟動power.sh,這是我們也將創(chuàng)建的python腳本的名稱。我們從終端創(chuàng)建這個腳本的方法是輸入cd/home/pi然后輸入。然后我們需要為腳本創(chuàng)建一個目錄,所以輸入sudo mkdir bin然后輸入。這將創(chuàng)建一個bin文件夾,我們可以將其用于腳本。然后輸入cd/home/pi/bin然后輸入。然后鍵入sudo nano power.sh然后輸入。這將打開一個空白文檔,其中將輸入上面的腳本。要保存按cntrl和x然后它將詢問您是否要保存按y為是然后它將確認位置并按Enter鍵。這會創(chuàng)建腳本,但我們需要它可執(zhí)行。所以按cd/home/pi進入。然后sudo chmod + x/home/pi/bin/power.sh然后輸入。這將使我們剛創(chuàng)建的power腳本可執(zhí)行給所有用戶?,F(xiàn)在我們需要這個腳本在重啟時運行。這意味著它將在啟動時自動運行,這將啟動我們將創(chuàng)建的其他腳本。輸入cd/home/pi然后輸入。然后鍵入sudo crontab -e然后輸入。它會詢問你使用哪個編輯器選擇納米2,我相信然后進入。這份文件已經(jīng)寫好了。只需滾動到底部并輸入@reboot sh/home/pi/bin/power.sh然后用cntrl和x保存,用y確認然后輸入。現(xiàn)在shell腳本將在重啟時運行。

第7步:Power Python腳本

現(xiàn)在shell腳本已準備好啟動我們需要的python腳本創(chuàng)建python腳本。從終端類型cd/home/pi然后輸入。 python腳本不需要自己的目錄,將它們保存到這個主目錄中,并且mp3很好。輸入sudo nano power.py然后輸入。這將再次打開空白文本編輯器。 python中的腳本是非常依賴于間距的,所以如果你得到任何語法錯誤,它的間距。

將RPi.GPIO導入GPIO

導入時間

導入子流程

GPIO.setmode(GPIO.BCM)

GPIO.setup(3,GPIO.IN,pull_up_down = GPIO.PUD_UP)

oldButtonState = 1

而為True:

buttonState1 = GPIO.input(3)

如果buttonState1!= oldButtonState1且buttonState1 == False:

subprocess.call(“sudo shutdown -h now”,

shell = True,stdout = subprocess.PIPE,stderr = subprocess.PIPE)

oldButtonState1 = buttonState1

time.sleep(.1)

然后用cntrl和x保存,然后用Y確認,然后輸入。現(xiàn)在將發(fā)生的事情是shell腳本將在啟動時運行并啟動此python腳本,它將等待按鈕3按下按鈕以關(guān)閉覆盆子pi進入睡眠模式并啟動它。現(xiàn)在用sudo shutdown -h關(guān)閉覆盆子pi從終端關(guān)閉并進入。一旦關(guān)閉pi并且綠燈熄滅,然后拔下它?,F(xiàn)在將魷魚開關(guān)連接到引腳3.引腳數(shù)從SD卡末端的低數(shù)字開始。從該端向下計數(shù)時,引腳3和接地是引腳5和6。倒數(shù)2然后4然后6.這兩個引腳是引腳3和地。將魷魚開關(guān)插入這些引腳。他們向右滑動。哪個引腳無關(guān)緊要哪一個。一旦開關(guān)打開,將pi重新插入,它將啟動。由于我們的腳本在啟動時運行,按下按鈕進行測試,它應該關(guān)閉進入睡眠模式。然后再次按它,它將再次啟動。如果不起作用,某些按鈕可能松動,檢查引腳上的連接,還有一些按鈕松動,需要按下并保持一秒鐘才能使連接齊平。你可以測試幾次。

步驟8:LED跳線

現(xiàn)在我們可以運行這根電纜但它還沒有連接。你買的小led有兩個鋁針從它上面脫落。積極的時間越長。將10歐姆電阻連接到正端。然后拿走你買的跳線,將一個連接到正極,一個連接到負極。然后將電纜穿過Tardis機箱頂部的孔穿過中間孔并進入底部隔間。如果你想把它們放在一起,你可以使用電工膠帶。但它并不是真的需要。這些都不是很重。小心不要拉扯它們會彈出來。我們還沒有將它連接到Raspberry pi。

第9步:Dr-who Shell腳本

這是shell腳本,就像另一個腳本腳本一樣將在重新啟動時運行并啟動我們將編寫的Dr-who python腳本。這是以完全相同的方式完成的。從終端cd/home/pi/bin進入。然后sudo nano dr-who.sh并進入。然后鍵入以下內(nèi)容:

#!/bin/bash

#dr啟動腳本

cd/

cd/home/pi

sudo python3 dr-who.py

cd/

然后按cntrl和x然后輸入Y.然后按cd/home/pi然后輸入。

然后sudo chmod + x/home/pi/bin/dr-who.sh然后輸入。然后sudo crontab -e然后滾動到底部并鍵入

@reboot sh/home/pi/bin/dr-who.sh然后用cntrl和x然后Y保存然后輸入。 crontab上現(xiàn)在應該有兩行在啟動時啟動power shell腳本和dr-who shell腳本。

***雖然我們在這里還有兩個要添加的條目以后進行播放**

輸入以下內(nèi)容:

@reboot sudo systemct1 enable pigpiod

@reboot sudo systemct1 start pigpiod

然后保存pigpiod是使用我們將使用的無線按鈕所需的包。默認情況下不安裝它。保存退出終端后。按sudo apt-get install pigpiod然后輸入。您必須連接到互聯(lián)網(wǎng)才能下載。這可以從Raspberry pi的桌面上完成。

第10步:Dr-who Python腳本

這是門鈴真正的膽量。這是運行的主程序本身。它在引腳18上運行,但輸出在引腳14和18上。此程序?qū)⑹筁ED亮起,然后將選擇一個mp3,它將播放然后LED將再次閃爍。 mp3的文件名正是我為了記住它們而命名的文件名。您可以隨心所欲地命名它們。請記住,他們不能在名稱中使用任何python命令,例如我在名稱中使用單詞sort命名了一個文件并且它混淆了python,因此它被更改了。記得從終端cd/home/pi然后輸入。然后sudo nano dr-who.py然后進入。在文本中輸入將要編寫的以下腳本。

**這是我的腳本,如果你有不同數(shù)量的MP3,或者它們的名稱不同,你的腳本會有所不同**

將RPi.GPIO作為GPIO導入

導入時間

導入隨機

導入os

GPIO.setmode(GPIO.BCM )

GPIO.setup(18,GPIO.IN,pull_up_down = GPIO.PUD_UP)

def randomnumber():

number = random.randint(1 ,6

***選擇1到6之間的隨機數(shù),如果您的MP3數(shù)量不同則需要更改***

如果數(shù)字== 1:

os.system(‘mpg123 thedoctor.mp3’)

time.sleep(1)

elif number = = 2:

os.system(‘mpg123 opening.mp3’)

time.sleep(1)

elif number == 3:

os.system(‘mpg123 thecrack.mp3’)

time.sleep(1)

elif number == 4:

os.system(‘mpg123 bowties.mp3’)

time.sleep(1)

elif number = = 5:

os.system(‘mpg123 exterminated.mp3’)

** MP3名稱可能會有所不同取決于你的名字**

time.sleep(1)

else:

os.system(‘mpg123 timespace.mp3’)

time.sleep(1)

GPIO.setwarnings(False)

GPIO.setup(14,GPIO.OUT)**也將輸出設置到引腳14 **

GPIO.output(14,F(xiàn)alse)** Led在引腳14上設置為最初關(guān)閉**

而True:

GPIO.output( 14,F(xiàn)alse)

input_state = GPIO.input(18)**引腳18是輸入**

if(GPIO.input(18)== False):

GPIO.output(14,True)

time.sleep(1)

GPIO.output(14,F(xiàn)alse)

time.sleep(1)

randomnumber()

GPIO.output(14,True)

time.sleep(1)

GPIO.output(14,F(xiàn)alse)

time.sleep (.5)

GPIO.output(14,True)

time.sleep(1)

GPIO.output(14,F(xiàn)alse)

當引腳18與頂部引腳14上的LED相互作用時,這是做什么的tardis將閃爍,然后選擇一個音頻文件并播放,然后LED將閃爍兩次然后熄滅。這是門鈴響起時會發(fā)生的事情。我們還需要這個覆盆子pi的IP地址用于另一個腳本,這樣就會收到無線信號,所以一定要通過GUI桌面將覆盆子pi連接到你的wifi然后再回到終端輸入sudo hostname - 然后進入。記下你需要的IP地址。您現(xiàn)在也可以將電纜插入到引腳14的引腳,按照引腳14的GPIO引腳和與其對角的接地引腳。

步驟11:前按鈕Raspberry Pi

Raspberry pi零需要一些做的事情。首先需要焊接引腳。使用烙鐵和一些焊料焊接引腳,以實現(xiàn)牢固連接。關(guān)于如何在線完成這項工作有很多資源。 Youtube很棒。一旦引腳焊接在SD卡中,就需要像之前一樣寫入銼刀圖像。我們這里不需要電源按鈕。我們將需要一個再次啟動時運行的shell腳本,它將啟動我們的python腳本,它將無線地發(fā)信號通知另一個覆盆子pi上的引腳18來運行我們的程序。

步驟12:門鈴外殼腳本

此腳本幾乎與另外兩個。從終端輸入cd/home/pi然后輸入。 sudo mkdir/home/pi/bin然后進入。 cd/home/pi/bin然后輸入。 sudo nano doorbell.sh然后進入。

#!/bin/bash

cd/

cd home/pi

sudo python3 doorbell.py

cd/

然后用cntrl和x保存然后輸入Y.然后sudo chmod + x/home/pi/bindoorbell.sh然后進入。然后cd/home/pi然后進入。然后sudo crontab -e然后輸入select nano然后輸入。在底部輸入

@reboot sh/home/pi/bin/doorbell.sh然后用cntrl和x保存然后輸入Y.這將在啟動時運行shell腳本,然后我們將創(chuàng)建一個連接前門鈴的python腳本,按下時將發(fā)出另一個覆盆子pi的信號。

步驟13:門鈴Python腳本

這是要在前端之間啟用無線通信的腳本門鈴和我們創(chuàng)造的鐘聲。在第一個Raspberry pi上運行音頻的腳本基于低電壓運行。它設置為高,所以一旦改變它運行腳本閃爍燈光并播放音頻。此腳本向Raspberry pi發(fā)送一個低信號,然后將該引腳設置為高電平,以便在按下時運行一次。該腳本如下:

來自gpiozero導入LED

來自gpiozero導入按鈕

來自gpiozero.pins.pigpio導入PiGPIOFactory

來自信號導入暫停

導入時間

factory = PiGPIOFactory(host =‘192.168.1.13’)

led = LED(18,pin_factory = factory)

button =按鈕(3)

while:

如果button.is_pressed:

led.off()

led.on()

否則:

led.on()

LED模塊沒有被用于led,它只是在第一個運行程序的Raspberry pi上發(fā)出信號。一旦將其保存到/hom/pi目錄,并且因為已經(jīng)創(chuàng)建了啟動它的shell。我們現(xiàn)在可以用sudo shutdown -h來關(guān)閉兩個Raspberry pi。然后需要首先打開第一個Raspberry pi,因為crontab條目將啟動需要首先啟動的pigpiod。然后可以啟動門鈴的第二個覆盆子pi。然后,只要您正確完成物理按鈕的焊接并插入正確。按下按鈕將啟動LED和音頻。

***現(xiàn)在需要揚聲器或音頻不起作用。我在網(wǎng)上發(fā)現(xiàn)了一個音板,通過USB端口從Raspberry pi中獲取電力。這是完美的,所以它不需要自己的插頭。我推薦它。音頻輸出通過3.5毫米插孔。音板將通過我們在機箱中制作的孔插入鈴聲覆盆子pi,一根電線將進入3.5毫米插孔,另一根電線將插入USB。默認的audi是HDMI端口,因此您需要將pi強制插入3.5 mm插孔。這是從終端用sudo raspi-config然后輸入完成的。將彈出一個菜單,選擇高級選項,然后選擇3.5 mm音頻,然后保存并退出。一旦你完成了這個并且插入了揚聲器,你可以測試你的鈴聲幾次,你完成后唯一剩下的就是將門鈴Raspberry pi連接到房子里。

Step 14:電源轉(zhuǎn)換器

這是最后一步。首先確保編鐘的Raspberry pi已打開。在你目前的門鈴后面有兩條線正負兩條。電壓為10或12伏。你需要的是一個功率轉(zhuǎn)換器,將其轉(zhuǎn)換為5伏特,這是Raspberry pi使用的。如果你看看我們使用的跨接電纜的末端是端子是母頭和鋁制的,并且蓋子上有蓋子。您可以在套件中自行獲取這些目的,以創(chuàng)建自己的電纜。挑選你想成為女性和男性的那一面,剝?nèi)ル娋€以露出銅。然后將母端放在家用電線上,反之亦然。然后電源轉(zhuǎn)換器也有兩根電線。紅色表示正面,黑色表示負面?,F(xiàn)在我們做同樣的事情剝?nèi)ル娋€以露出銅。將公端放在它們上面并用鉗子將它壓扁。如果需要,可以放置塑料蓋。然后,您可以將電源轉(zhuǎn)換器插入室內(nèi)電線。積極到正面,負面到負面。您可以使用電動膠帶粘貼此連接,以便更好地固定。如果在將5v端插入Raspberry pi時正確完成,它將打開電源。按下按鈕可以測試門鈴的工作情況。鈴聲音頻應該啟動。一旦它完成,您可以將電源轉(zhuǎn)換器,門鈴Raspberry pi全部放在您之前門鈴后面的墻洞內(nèi)。用螺絲擰上新的門鈴蓋。現(xiàn)在,只要有人按下前門鈴,Tardis就會閃爍,然后播放音頻然后再次閃爍。從技術(shù)上講,這可以通過任何音頻和任何情況來完成。我將構(gòu)建的下一個將是Darth Vader。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 無線門鈴
    +關(guān)注

    關(guān)注

    1

    文章

    21

    瀏覽量

    11845
收藏 人收藏

    評論

    相關(guān)推薦

    為什么PCM2707做的聲卡可以播放音樂但是HID按鍵不能用?

    前幾天用PCM2707C做了個USB聲卡,插上電腦自動安裝了3個驅(qū)動,播放音頻沒問題,可是按鍵去沒有反應,手冊上說可以通過按鍵上一曲下一曲和暫停,不知是為何調(diào)了半天就是沒反應.功能選擇端口是按手冊接的.不知有沒有人遇到過同樣的問題,能否提供一點想法.謝了!
    發(fā)表于 10-16 06:02

    tas5805m連續(xù)通過tinyplay播放音頻有概率出現(xiàn)播放不了的情況,為什么?

    通過pp3軟件得到配置文件,并通過I2c寫入tas5805m。連續(xù)通過tinyplay播放音頻有概率出現(xiàn)播放不了的情況,此時時鐘都有信號,參考電路圖
    發(fā)表于 10-12 07:15

    如何使用音頻接口播放音頻文件

    ZDP1440是一款基于開源GUI引擎的圖像顯示專用驅(qū)動芯片,內(nèi)部集成16MB顯示內(nèi)存、2D圖形加速器、音頻解碼器等豐富多媒體功能,本文將介紹如何使用音頻接口播放音頻文件。
    的頭像 發(fā)表于 08-06 16:12 ?449次閱讀
    如何使用<b class='flag-5'>音頻</b>接口<b class='flag-5'>播放音頻</b>文件

    請問如何播放Cyw43xxx BLE掃描和音頻?

    我想要布萊掃描、配對 Airpods 和播放音頻(.mp3)。 使用 stm32+cyw43xxx. 我不知所措,想查看文件,卻不知道該查看哪個文件。
    發(fā)表于 07-23 06:53

    請問如何使用PSoC4播放音頻文件?

    如何使用 PSoC4 播放音頻文件
    發(fā)表于 07-02 07:19

    請問如何在線播放某一特定時刻的音頻?

    請各位大佬指教. 在做一個在線播放音頻的設備,能記錄播放的時間,想從上一次停止的時間再播放。比如從音頻的1分鐘以后開始播放。 之前用linu
    發(fā)表于 06-28 14:28

    esp-adf大版本升級到最新,播放音頻的log怎么關(guān)閉呢?

    esp-adf大版本升級到最新,播放音頻的log怎么關(guān)閉 4976) ADF_BIT_STREAM: length = 960, bytenum = 0, bread = 960 D (4977
    發(fā)表于 06-28 07:41

    如何通過BLE播放音頻?

    現(xiàn)在是我有一個android app,有一塊esp32板子上面有喇叭,板子刷了a2dp_sink例子的固件。如果用bluetooth 和板子pair之后,可以播放音樂。 現(xiàn)在要求不用bluetooth,而是用ble連接,然后播放音樂,請問可以實現(xiàn)嗎?求指點迷津,謝謝。
    發(fā)表于 06-26 06:36

    請問用蜂鳴器播放音樂的時候如何同時播放兩段音樂?

    我用 PWM 控制的音樂播放,可以按照樂譜播放音符 但現(xiàn)在有個需求,是在播放背景音樂的時候同時疊加一個前景音樂進去? 各位有什么好的思路嗎?
    發(fā)表于 06-14 08:23

    fx3枚舉成usb揚聲器,電腦無法播放音頻是哪里出了問題?

    參考fx3 sdk 1.3.5例程uac_examples,將fx3修改為usb 揚聲器,電腦能識別到設備,但電腦無法正常播放音頻,fx3也收不到音頻數(shù)據(jù)。請問是哪里出了問題?有沒有相關(guān)的例程可以參考?
    發(fā)表于 03-06 06:52

    音頻播放功能的愛普生IC支持12種言語

    音頻播放
    Piezoman壓電俠
    發(fā)布于 :2024年01月12日 09:55:57

    芯知識 | 什么是音頻藍牙播放語音芯片?

    隨著科技的不斷進步,音頻藍牙播放語音芯片成為嵌入式音頻系統(tǒng)中備受關(guān)注的創(chuàng)新解決方案。本文將深入解析什么是音頻藍牙播放語音芯片,以及其在實現(xiàn)
    的頭像 發(fā)表于 12-15 08:36 ?680次閱讀
    芯知識 | 什么是<b class='flag-5'>音頻</b>藍牙<b class='flag-5'>播放</b>語音芯片?

    【ELF 1開發(fā)板試用】+語音播放控制

    2.播放音頻文件 使用指令“mplayer elf1_audio.wav”,可播放指定的音頻文件elf1_audio.wav。 圖6播放音樂 圖7完成
    發(fā)表于 11-22 09:32

    arduino能用pwm播放音樂嗎?

    arduino能用pwm播放音樂嗎,歌曲通過外部的flash存儲
    發(fā)表于 11-08 08:19

    【樹莓派】播放音頻和視頻

    Raspberry Pi上播放音頻和視頻的最簡單方法是使用已安裝的OMXPlayer應用程序。 這是硬件加速的,可以播放許多流行的音頻和視頻文件格式。OMXPlayer使用OpenMAX(omx
    的頭像 發(fā)表于 11-03 15:12 ?717次閱讀