99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

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

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

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

如何制作動作感應(yīng)樹莓派Halloween音箱

454398 ? 來源:網(wǎng)絡(luò)整理 ? 作者:網(wǎng)絡(luò)整理 ? 2019-11-29 17:12 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

又是一年中的那個時候,社會上普遍認(rèn)為嚇壞年幼的孩子并給他們糖果。哦,高興。我在這里通過向您展示如何制作一個簡單的動作感應(yīng)Raspberry Pi Halloween音箱來使您的工作更輕松。這是一個演示:

這就是您所需要的

可能您唯一還沒有的部分是運(yùn)動傳感器,這是您應(yīng)該能夠找到的小巧而廉價的部分

Raspberry Pi(任何型號都可以)。

運(yùn)動傳感器(?3美元)。

連接線。

有線揚(yáng)聲器(大多數(shù)藍(lán)牙揚(yáng)聲器都可以選擇使用輸入)。

3.5毫米立體聲電纜,公對公。

完成后,您可能還想添加一些同步的燈光效果,但是在本教程中,我們將僅涵蓋一些令人恐懼的聲音!

設(shè)置

我們正在使用Raspbian Jessie Lite和Python 2.7,但是在您的Pi上運(yùn)行的任何Linux發(fā)行版都應(yīng)該可以。我已將其保留在標(biāo)準(zhǔn)主機(jī)名“ raspberrypi.local”上,因此首先使用SSH遠(yuǎn)程登錄(如果您使用的是Mac,請打開“終端”窗口。以下是在Windows中執(zhí)行相同操作的方法)-或選擇使用帶有桌面GUI的完整Raspbian,請隨時跳過更新。

ssh pi@raspberrypi.local

(enter raspberry as the password)

sudo apt-get update

sudo apt-get install python-pip

sudo pip install gpiozero

這會安裝一個簡單的庫,用于處理Python中具有許多內(nèi)置類型的GPIO引腳-在傳感器和按鈕中。用GPIO4上的信號引腳,VCC連接至5V以及GND連接至GND的方式連接傳感器。這可能會因您的確切模型而異,因此請使用引腳圖進(jìn)行確認(rèn)。

《圖id =“ attachment_598229” aria- describeby =“ caption-attachment-598229” class =“ wp-caption aligncenter”》

圖片來源:raspberrypi.org

我的Pimoroni的Pi 2外殼上有一個直接激光蝕刻的引腳圖。

現(xiàn)在,讓我們制作運(yùn)動檢測腳本。

nano motion.py

粘貼:

from gpiozero import MotionSensor

pir = MotionSensor(4)

while True:

if pir.motion_detected:

print(“Motion detected!”)

else:

print (“No motion”)

按CTRL-X,然后按Y保存并退出,然后運(yùn)行:

python motion.py

您應(yīng)該會在屏幕上看到重復(fù)的“ no motion”消息,直到您的手在傳感器前面揮動,直到它停留在“ Motion Detected!”上。

如果該消息完全不變,則說明您的連接錯誤。

如果您有興趣了解更多有關(guān)這個簡單的GPIOZero庫,看看這個奇妙的備忘單。

Pla Sound聲音

連接便攜式揚(yáng)聲器,并在需要時確保已接通電源。我們將使用 pygame 庫播放聲音,因此請繼續(xù)安裝它:

sudo apt-get install python-pygame

首先,我們需要一個聲音文件來播放。如果您是在桌面環(huán)境中執(zhí)行此操作,請繼續(xù)從某個位置下載 WAV 或 OGG 文件(我在這里找到了很多免費(fèi)的萬圣節(jié)聲音) ,并將其放在您的主目錄中。我建議先進(jìn)行降采樣,然后再轉(zhuǎn)換為OGG格式。

如果您是遠(yuǎn)程連接且僅使用命令行,則由于 wget 命令可能無法獲取實(shí)際文件。相反,我們可以將其本地下載到我們的桌面,然后使用 scp (安全副本)命令在命令行上進(jìn)行復(fù)制。您可以在此處了解有關(guān)scp的更多信息,但現(xiàn)在,打開一個新的Terminal選項卡,然后鍵入:

scp thunder.ogg pi@raspberrypi.local:

根據(jù)需要重命名thunder.ogg,但是不要忘記最后一個:(該命令將在沒有它的情況下完成,但不會執(zhí)行我們想要的操作)。默認(rèn)情況下,這會將文件傳輸?shù)絇i用戶的主目錄。

現(xiàn)在,讓我們修改腳本以播放聲音。首先導(dǎo)入一些新模塊:

import pygame.mixer

from pygame.mixer import Sound

然后,在現(xiàn)有import語句之后,我們將一遍又一遍循環(huán)相同的聲音以進(jìn)行測試。剩下的動作感測代碼保持原樣-它不會運(yùn)行,因為它將永遠(yuǎn)停留在此聲音播放循環(huán)中。

pygame.init()

pygame.mixer.init()

#load a sound file, in the home directory of Pi user (no mp3s)

thunder = pygame.mixer.Sound(“/home/pi/thunder.ogg”)

while True:

thunder.play()

sleep(10)

thunder.stop()

請注意,當(dāng)我最初嘗試此過程時,聲音拒絕播放,而是單擊了。罪魁禍?zhǔn)资俏募笮』虮忍芈剩核?4位,并且15秒剪輯超過5 MB。使用上面鏈接到的轉(zhuǎn)換器將其縮減到16位,一切正常,并且大小減小到260KB!

如果您在運(yùn)行Python應(yīng)用程序時發(fā)現(xiàn)揚(yáng)聲器發(fā)出嘶嘶聲,但不要其他方式,鍵入:

sudo nano /boot/config.txt

,然后在最后添加此行:

disable_audio_dither=1

重新啟動更改生效。還是不要打擾,因為無論如何我聽起來還是下雨了。

最后,讓我們修改主運(yùn)動檢查循環(huán),以在檢測到運(yùn)動時播放聲音。我們將使用15秒的延遲,以便可以播放整個循環(huán),并在出現(xiàn)大量不停運(yùn)動時充當(dāng)垃圾郵件緩沖區(qū)。

while True:

if pir.motion_detected:

print(“Motion detected!”)

thunder.play()

# ensure playback has been fully completed before resuming motion detection, prevents “spamming” of sound

sleep(15)

thunder.stop()

else:

print (“No motion”)

自動啟動

我們可能希望將其設(shè)置為帶電池且沒有互聯(lián)網(wǎng)連接的地方,因此腳本需要在重新啟動時運(yùn)行,而不必打開命令行。為此,我們將使用最簡單的方法:crontab。輸入:

sudo crontab -e

如果這是第一次運(yùn)行此命令,首先會詢問您要使用的編輯器。我為nano選擇了選項2。它將啟動到您選擇的編輯器中,因此添加以下行:

@reboot python /home/pi/motion.py &

這意味著您的motion.py腳本將在每次啟動時運(yùn)行,并以靜默方式運(yùn)行(因此

如果盡管有任何動作都沒有播放任何內(nèi)容,或者聽到一點(diǎn)點(diǎn)點(diǎn)擊,則可能未使用完整的文件路徑,或者您的文件可能需要轉(zhuǎn)換為較低的比特率和較小的文件大小。

添加更多聲音

一遍又一遍地播放相同的效果有點(diǎn)無聊,所以讓我們添加一些隨機(jī)性。下載更多萬圣節(jié)聲音,記得將其縮小到合理的大小和比特率,然后像以前一樣使用 scp 將它們發(fā)送到您的Pi。我添加了三種不同類型的尖叫聲。

修改代碼,以使我們實(shí)際上沒有創(chuàng)建一個 array 《數(shù)組,而沒有定義一個 pygame.mixer.Sound 變量。/em》的聲音。對于Python來說這很簡單,只需用方括號將它們的逗號分隔列表括起來,如下所示:

sounds = [

pygame.mixer.Sound(“/home/pi/thunder.ogg”),

pygame.mixer.Sound(“/home/pi/scary_scream.ogg”),

pygame.mixer.Sound(“/home/pi/girl_scream.ogg”),

pygame.mixer.Sound(“/home/pi/psycho_scream.ogg”)

接下來,使用以下命令將隨機(jī)庫導(dǎo)入文件中:/p》 import random

現(xiàn)在修改主運(yùn)動感應(yīng)環(huán),如下所示:

while True:

if pir.motion_detected:

print(“Motion detected!”)

playSound = random.choice(sounds)

playSound.play()

# ensure playback has been fully completed before resuming motion detection, prevents “spamming” of sound

sleep(15)

playSound.stop()

else:

print (“No motion”)

請注意小改動:而不是播放單個Sound變量,我們使用 random.choice 函數(shù)從聲音數(shù)組中選擇隨機(jī)聲音,然后播放。

以下是完整代碼,以防您遇到問題:

import pygame

from pygame.mixer import Sound

from gpiozero import MotionSensor

from time import sleep

import random

pygame.init()

pygame.mixer.init()

#load a sound file, same directory as script (no mp3s)

sounds = [

pygame.mixer.Sound(“/home/pi/thunder.ogg”),

pygame.mixer.Sound(“/home/pi/scary_scream.ogg”),

pygame.mixer.Sound(“/home/pi/girl_scream.ogg”),

pygame.mixer.Sound(“/home/pi/psycho_scream.ogg”)

pir = MotionSensor(4)

while True:

if pir.motion_detected:

print(“Motion detected!”)

playSound = random.choice(sounds)

playSound.play()

# ensure playback has been fully completed before resuming motion detection, prevents “spamming” of sound

sleep(15)

playSound.stop()

else:

print (“No motion”)

只有四個樣本,每次重復(fù)的可能性很高,但是如果您很煩,您可以添加更多樣本。

而已!用一些嚇人的LED怪物眼睛將它藏在灌木叢中,您應(yīng)該能夠為自己節(jié)省一些糖果,因為所有孩子甚至在上門之前都尖叫著逃走。還是躲在壁櫥里,因為在你讓約翰尼哭泣之后生氣的媽媽已經(jīng)流血了。

責(zé)任編輯:wv

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

    關(guān)注

    36

    文章

    647

    瀏覽量

    68806
  • 樹莓派
    +關(guān)注

    關(guān)注

    121

    文章

    2007

    瀏覽量

    107466
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    樹莓6 傳聞:發(fā)布日期與規(guī)格!

    每當(dāng)我想再為我的收藏增添一款樹莓時,總會在是立即購買還是等待硬件更強(qiáng)大的下一代之間猶豫不決。但新樹莓型號的發(fā)布往往容易被錯過,尤其是在你的信息流被病毒式傳播的貓咪視頻占據(jù)時。因此,
    的頭像 發(fā)表于 07-11 16:21 ?202次閱讀
    <b class='flag-5'>樹莓</b><b class='flag-5'>派</b>6 傳聞:發(fā)布日期與規(guī)格!

    樹莓小技巧:無需鍵盤或顯示器,如何通過WiFi設(shè)置樹莓?

    樹莓是一款小巧便攜的USB供電計算機(jī),可以隱藏起來用于小型項目,如網(wǎng)絡(luò)服務(wù)器或家庭自動化。通常,設(shè)置樹莓需要鍵盤和顯示器來編輯和查看樹莓
    的頭像 發(fā)表于 06-26 15:41 ?306次閱讀
    <b class='flag-5'>樹莓</b><b class='flag-5'>派</b>小技巧:無需鍵盤或顯示器,如何通過WiFi設(shè)置<b class='flag-5'>樹莓</b><b class='flag-5'>派</b>?

    樹莓分類器:用樹莓識別不同型號的樹莓!

    在本教程系列的第一部分中,您將學(xué)習(xí)如何使用樹莓AI攝像頭來檢測不同的樹莓型號。本系列由DavidPlowman創(chuàng)建,他是樹莓
    的頭像 發(fā)表于 06-13 16:39 ?418次閱讀
    <b class='flag-5'>樹莓</b><b class='flag-5'>派</b>分類器:用<b class='flag-5'>樹莓</b><b class='flag-5'>派</b>識別不同型號的<b class='flag-5'>樹莓</b><b class='flag-5'>派</b>!

    樹莓“揪出”家里的耗電怪獸!

    在本應(yīng)用中,我們將使用樹莓設(shè)置一個CE電流監(jiān)測器,并通過網(wǎng)頁界面顯示電路的電流讀數(shù)。本項目使用的組件硬件組件樹莓2ModelBx112通道20安培電流監(jiān)測控制器x1項目背景介紹在本
    的頭像 發(fā)表于 06-04 15:33 ?716次閱讀
    用<b class='flag-5'>樹莓</b><b class='flag-5'>派</b>“揪出”家里的耗電怪獸!

    樹莓“吉尼斯世界記錄”:將樹莓的性能發(fā)揮到極致的項目!

    樹莓是一款功能強(qiáng)大、體積小巧且高度可定制的設(shè)備,多年來,我們見證了它被應(yīng)用于眾多領(lǐng)域。無論是將其裝入3D打印的經(jīng)典游戲機(jī)外殼,還是簡單地將它隱藏起來作為家庭文件服務(wù)器,我們都報道過在社區(qū)里用樹莓
    的頭像 發(fā)表于 05-22 16:53 ?644次閱讀
    <b class='flag-5'>樹莓</b><b class='flag-5'>派</b>“吉尼斯世界記錄”:將<b class='flag-5'>樹莓</b><b class='flag-5'>派</b>的性能發(fā)揮到極致的項目!

    樹莓 Zero 打造的智能漫游車!

    使用PXFMini和樹莓Zero打造您自己的自主漫游車。本項目所用組件硬件組件ErleRoboticsPXFmini×1樹莓Zero×1樹莓
    的頭像 發(fā)表于 05-13 16:39 ?438次閱讀
    用 <b class='flag-5'>樹莓</b><b class='flag-5'>派</b> Zero 打造的智能漫游車!

    超酷的樹莓智能鏡項目,快來了解!

    ,這些樹莓智能鏡項目都非常值得一看。制作一個能夠顯示實(shí)時天氣、新聞、旅行信息等內(nèi)容的魔鏡是一個熱門項目。學(xué)習(xí)如何使用RaspberryPi單板計算機(jī)以極低的成本制作
    的頭像 發(fā)表于 03-25 09:33 ?588次閱讀
    超酷的<b class='flag-5'>樹莓</b><b class='flag-5'>派</b>智能鏡項目,快來了解!

    樹莓傳感器使用方法 樹莓 Raspberry Pi 4優(yōu)缺點(diǎn)

    樹莓傳感器使用方法 樹莓(Raspberry Pi)是一款由英國樹莓基金會開發(fā)的小型單板計
    的頭像 發(fā)表于 12-06 10:35 ?2132次閱讀

    ARM開發(fā)板與樹莓的比較

    ARM開發(fā)板和樹莓都是基于ARM架構(gòu)的單板計算機(jī),它們在教育、工業(yè)控制、物聯(lián)網(wǎng)等領(lǐng)域有著廣泛的應(yīng)用。 硬件配置 ARM開發(fā)板和樹莓的硬件配置各有特點(diǎn),具體取決于不同的型號和制造商。
    的頭像 發(fā)表于 11-05 11:11 ?1393次閱讀

    樹莓gpio有什么用,樹莓gpio接口及編程方法

    一、樹莓GPIO的用途 樹莓(Raspberry Pi)是一款小巧、功能強(qiáng)大的單板計算機(jī),廣泛應(yīng)用于編程教育、物聯(lián)網(wǎng)項目、家庭媒體中心等領(lǐng)域。GPIO(General Purpos
    的頭像 發(fā)表于 10-22 18:09 ?2682次閱讀

    什么是樹莓?樹莓是什么架構(gòu)的

    什么是樹莓 樹莓(Raspberry Pi,簡寫為RPi,別名為RasPi/RPI)是由英國“Raspberry Pi 慈善基金會”開發(fā)的一款為學(xué)習(xí)計算機(jī)編程教育而設(shè)計的微型電腦。
    的頭像 發(fā)表于 10-22 17:33 ?5846次閱讀

    樹莓和單片機(jī)的優(yōu)缺點(diǎn)是什么

    樹莓(Raspberry Pi)和單片機(jī)(Microcontroller)是兩種廣泛應(yīng)用于電子項目和嵌入式系統(tǒng)的硬件平臺。它們各自具有獨(dú)特的優(yōu)缺點(diǎn),適用于不同的應(yīng)用場景。 樹莓
    的頭像 發(fā)表于 08-30 18:21 ?2896次閱讀

    樹莓的功能用途是什么

    樹莓(Raspberry Pi)是一款由英國樹莓基金會研發(fā)的信用卡大小的單板計算機(jī),自2012年推出以來,已經(jīng)發(fā)展出多個型號和版本。樹莓
    的頭像 發(fā)表于 08-30 18:01 ?4611次閱讀

    樹莓是x86還是arm

    樹莓(Raspberry Pi)是一款由英國樹莓基金會(Raspberry Pi Foundation)開發(fā)的微型計算機(jī)。它基于ARM架構(gòu),而非x86架構(gòu)。 一、
    的頭像 發(fā)表于 08-30 15:42 ?2506次閱讀

    樹莓裝ubuntu和raspbian哪個更好

    樹莓(Raspberry Pi)是一款由英國樹莓基金會開發(fā)的單板計算機(jī),廣泛應(yīng)用于教育、科研、物聯(lián)網(wǎng)等領(lǐng)域。樹莓
    的頭像 發(fā)表于 08-30 15:41 ?2843次閱讀