背景:
Google發(fā)布了他們的AIY項(xiàng)目套件,最初沒(méi)有多少人可以訪問(wèn)它。我開(kāi)始修改Google Assistant SDK時(shí)添加類(lèi)似AIY的功能。每個(gè)項(xiàng)目都需要一個(gè)名稱(chēng),因此我將其命名為GassistPi( G oogle Assist ant Pi )。到目前為止,該項(xiàng)目已快速轉(zhuǎn)發(fā),其中包含了許多有趣的功能,并擁有自己的社區(qū)。
那么你可以用這個(gè)項(xiàng)目做什么:
沒(méi)有IFTTT,API.AI的GPIO語(yǔ)音控制,動(dòng)作SDK。
沒(méi)有IFTTT和MQTT的NodeMCU的語(yǔ)音控制。
流互聯(lián)網(wǎng)廣播電臺(tái)。
連接到RPi的伺服語(yǔ)音控制。
安全關(guān)閉RPi。
從YouTube流媒體音樂(lè)。
跟蹤地塊。
流RSS源。
控制Kodi。
從Google Play音樂(lè)中流式傳輸音樂(lè)。
控制Chromecast。
控制Sonoff Tasmota設(shè)備/模擬Wemo
全部通過(guò)語(yǔ)音命令。
步驟1:入門(mén)
下載Raspbian桌面圖像的最新項(xiàng)目并將其刻錄到SD卡上。
連接外圍設(shè)備,如麥克風(fēng),揚(yáng)聲器,鍵盤(pán),鼠標(biāo),顯示器,然后啟動(dòng)Pi 。
打開(kāi)終端并執(zhí)行以下步驟
步驟2:安裝音頻配置文件
1。更新操作系統(tǒng)和內(nèi)核
sudo apt-get update
sudo apt-get install raspberrypi-kernel
2。重啟Pi
3。根據(jù)您的設(shè)置選擇音頻配置。 speaker-test命令用于初始化alsa,所以請(qǐng)不要跳過(guò)它。 AIY-HAT和CUSTOM-HAT用戶,請(qǐng)?jiān)谔岬降牡胤街貑i,否則會(huì)導(dǎo)致音頻和任務(wù)欄問(wèn)題。
sudo chmod +x /home/pi/GassistPi/audio-drivers/USB-DAC/scripts/install-usb-dac.sh
sudo /home/pi/GassistPi/audio-drivers/USB-DAC/scripts/install-usb-dac.sh
speaker-test
3.2。 AIY-HAT用戶,
sudo chmod +x /home/pi/GassistPi/audio-drivers/AIY-HAT/scripts/configure-driver.sh
sudo /home/pi/GassistPi/audio-drivers/AIY-HAT/scripts/configure-driver.sh
sudo reboot
sudo chmod +x /home/pi/GassistPi/audio-drivers/AIY-HAT/scripts/install-alsa-config.sh
sudo /home/pi/GassistPi/audio-drivers/AIY-HAT/scripts/install-alsa-config.sh
speaker-test
3.3。 USB MIC和HDMI用戶,
sudo chmod +x /home/pi/GassistPi/audio-drivers/USB-MIC-HDMI/scripts/install-usb-mic-hdmi.sh
sudo /home/pi/GassistPi/audio-drivers/USB-MIC-HDMI/scripts/install-usb-mic-hdmi.sh
speaker-test
3.4。 USB MIC和AUDIO JACK用戶,
sudo chmod +x /home/pi/GassistPi/audio-drivers/USB-MIC-JACK/scripts/usb-mic-onboard-jack.sh
sudo /home/pi/GassistPi/audio-drivers/USB-MIC-JACK/scripts/usb-mic-onboard-jack.sh
speaker-test
3.5。 CUSTOM VOICE HAT用戶,
sudo chmod +x /home/pi/GassistPi/audio-drivers/CUSTOM-VOICE-HAT/scripts/install-i2s.sh
sudo /home/pi/GassistPi/audio-drivers/CUSTOM-VOICE-HAT/scripts/install-i2s.sh
sudo reboot
sudo chmod +x /home/pi/GassistPi/audio-drivers/CUSTOM-VOICE-HAT/scripts/custom-voice-hat.sh
sudo /home/pi/GassistPi/audio-drivers/CUSTOM-VOICE-HAT/scripts/custom-voice-hat.sh
speaker-test
使用HDMI/板載插孔,確保強(qiáng)制音頻
sudo raspi-config
選擇高級(jí)選項(xiàng),然后音頻并選擇強(qiáng)制音頻
那些使用任何其他DAC或HAT按照制造商的指南安裝卡,然后您可以嘗試使用USB-DAC配置文件后更改硬件ID
4。重啟Pi
5。使用以下命令檢查揚(yáng)聲器
speaker-test -t wav
步驟3:CONTINUE SETTING UP AUDIO
1。下載憑證---》 .json文件
2.將.json文件放入/home/pi目錄不要重命名
3.使用單行安裝程序安裝Google智能助理。
4.1使安裝程序可執(zhí)行
sudo chmod +x 。/GassistPi/scripts/gassist-installer.sh
4.2執(zhí)行安裝程序
sudo 。/GassistPi/scripts/gassist-installer.sh
5.從終端復(fù)制google助理驗(yàn)證鏈接并使用您的Google帳戶進(jìn)行授權(quán)
6。將授權(quán)碼從瀏覽器復(fù)制到終端,然后按enter鍵
7.驗(yàn)證成功后,Google Assistant演示測(cè)試將自動(dòng)啟動(dòng)。開(kāi)始時(shí),音量可能較低,助手音量獨(dú)立于Pi音量,所以使用“音量調(diào)高”命令增加音量。
8.驗(yàn)證助手的工作后,關(guān)閉并退出終端
步驟4:BOOT SERVICE SETUP上的HEADLESS AUTOSTART
1。打開(kāi)/home/pi/GassistPi/systemd/目錄中的服務(wù)文件,并在指定的位置添加項(xiàng)目和模型ID并保存文件。
2。使服務(wù)安裝程序可執(zhí)行
sudo chmod +x /home/pi/GassistPi/scripts/service-installer.sh
3。運(yùn)行服務(wù)安裝程序
sudo /home/pi/GassistPi/scripts/service-installer.sh
4。啟用服務(wù)
sudo systemctl enable gassistpi.service
5。啟動(dòng)服務(wù)
sudo systemctl start gassistpi.service
步驟5:GPIO,SERVO和Pi關(guān)閉的語(yǔ)音控制
默認(rèn)的GPIO和關(guān)閉觸發(fā)字是* *觸發(fā)**。它應(yīng)該用于控制GPIO,伺服和Pi的安全關(guān)閉。
故意包含它以防止由于誤報(bào)命令引起的控制動(dòng)作。如果您想更改觸發(fā)字,可以用您想要的觸發(fā)字替換main.py和assistant.py代碼中的‘** trigger **’。
伺服電機(jī)的默認(rèn)關(guān)鍵字是的伺服即可。例如,命令觸發(fā)伺服90 將使伺服旋轉(zhuǎn)90度。
如果您想更改關(guān)鍵字,可以將action.py腳本中的‘servo’替換為所需的電機(jī)關(guān)鍵字。
為了安全關(guān)閉pi,命令是:觸發(fā)關(guān)閉
您可以在actions.py腳本中定義自己的自定義操作。
步驟6:語(yǔ)音控制NodeMCU
有兩種方法可以控制NodeMCU:
控制運(yùn)行網(wǎng)絡(luò)服務(wù)器的NodeMCU。
控制運(yùn)行Sonoff-Tasmota的NodeMCU固件。
控制運(yùn)行網(wǎng)絡(luò)服務(wù)器的NodeMCU:
添加wifi憑據(jù),進(jìn)行所需的更改并將Arduino代碼上傳到NodeMCU并從串行監(jiān)視器獲取IP地址。在actions.py文件中添加NodeMCU的IP地址。
語(yǔ)法:“嗨谷歌,觸發(fā)器打開(kāi)/關(guān)閉Devicename”
控制運(yùn)行Sonoff-Tasmota固件的NodeMCU:
Pi3和Pi Zero用戶分別在main.py腳本和pushbutton.py腳本中的標(biāo)記位置分配設(shè)備名稱(chēng)和設(shè)備IP地址。
語(yǔ)法:“嗨谷歌,打開(kāi)/關(guān)閉Devicename”
使用Sonoff-Tasmota優(yōu)于網(wǎng)絡(luò)服務(wù)器的優(yōu)點(diǎn)是,使用Sonoff-Tasmota,您可以除了GassistPi之外,還使用Amazon Alexa(回聲設(shè)備)模擬Wemo切換并控制NodeMCU。
步驟7:將YouTube VDIEOS轉(zhuǎn)換為Chromecast并控制Chromecast
首先,在actions.py腳本中的指定位置添加Chromecast的IP地址。
投放YouTube視頻的默認(rèn)命令為播放所需視頻在Chromecast上, Chromecast 作為觸發(fā)詞。
示例:嗨谷歌,在Chromecast上播放MasterChef第1季第1集投下MasterChef YouTube視頻。
注意:使用第三方腳本投放到Chromecast的YouTube已被屏蔽,因此我采用了一種迂回的方法,因此您可能無(wú)法在Chromecast上找到常用的YouTube界面。
以下是使用 Chromecast 作為觸發(fā)詞來(lái)控制Chromecast的默認(rèn)命令。暫停:
嘿谷歌,暫停Chromecast
恢復(fù):
嗨谷歌,恢復(fù)Chromecast
停止:
嘿谷歌,結(jié)束Chromecast
向上/向下更改音量:
嗨谷歌,Chromecast音量增大/減小
第8步:YOUTUBE的音樂(lè)流
這利用了YouTube Data API v3。
添加YouTube API和生成API密鑰
1。轉(zhuǎn)到Google云端控制臺(tái)上的項(xiàng)目頁(yè)面 - 》
2。從列表中選擇您的項(xiàng)目。
3。在左上角,單擊漢堡圖標(biāo)或三條水平堆疊線。
4。將鼠標(biāo)指針移到“API和服務(wù)”上,然后選擇“憑據(jù)”。
5。單擊創(chuàng)建憑據(jù)并選擇API密鑰,然后選擇關(guān)閉。記下創(chuàng)建的API密鑰,并將其輸入到指定位置的actions.py腳本中。
6。 “從API和服務(wù)”選項(xiàng)中選擇庫(kù),然后在搜索欄中輸入youtube,選擇“YouTube Data API v3”API并單擊“啟用”。
7。在API窗口中,單擊“所有API憑據(jù)”,然后在下拉列表中確保對(duì)剛剛生成的API密鑰進(jìn)行勾選(復(fù)選標(biāo)記)。
播放音樂(lè)的默認(rèn)關(guān)鍵字沒(méi)有自動(dòng)播放的YouTube是Stream 。
例如, Stream I get you 命令將從YouTube獲取Bebe Rexha的“我有你”。
從使用自動(dòng)播放的YouTube播放音樂(lè)的默認(rèn)關(guān)鍵字是自動(dòng)播放和流。
例如,自動(dòng)播放和流我得到你命令將播放請(qǐng)求的“我有你”,并且在曲目結(jié)束后將自動(dòng)播放后續(xù)曲目。自動(dòng)播放曲目的數(shù)量限制為最多10個(gè)。可以在actions.py腳本中的YouTube_Autoplay功能下進(jìn)行更改。
步驟9:從Google音樂(lè)中播放音樂(lè)
來(lái)自Google音樂(lè)的音樂(lè)使用[Gmusicapi]。
輸入行中的actions.py文件中的Google用戶ID和密碼
logged_in = api.login(‘YOUR_GMAIL_ID’, ‘YOUR_GMAIL_PASSWORD’, Mobileclient.FROM_MAC_ADDRESS)
如果您使用的是兩步身份驗(yàn)證或雙因素身份驗(yàn)證,請(qǐng)生成并使用應(yīng)用專(zhuān)用密碼。
您可以做的事情:
播放使用以下語(yǔ)法循環(huán)播放所有歌曲:
“嗨谷歌,播放來(lái)自Google音樂(lè)的所有歌曲”
播放添加到用戶創(chuàng)建的播放列表中的歌曲(不包括:大多數(shù)播放的播放列表,thumsup播放列表等)使用語(yǔ)法:
“嘿谷歌,播放第一版的歌曲yogle in Google Music“
播放列表按創(chuàng)建日期排序,如果您有多個(gè)播放列表,請(qǐng)使用類(lèi)似的語(yǔ)法替換第一個(gè),第二個(gè),第三個(gè)等。此外,您需要在main.py中進(jìn)行適當(dāng)?shù)母模ㄒ言谀_本中對(duì)其進(jìn)行評(píng)論以提供幫助)
使用以下語(yǔ)法播放特定藝術(shù)家的歌曲:
“Hey Google,播放來(lái)自Google音樂(lè)的藝術(shù)家YOUR_ARTIST_NAME的歌曲”
使用以下語(yǔ)法播放特定相冊(cè)中的歌曲:
“嗨谷歌,播放來(lái)自Google音樂(lè)專(zhuān)輯YOUR_ALBUM_NAME的歌曲”
目前你不能做的事情:(某些功能可能會(huì)在以后添加):
更改曲目
隨機(jī)曲目
重復(fù)曲目
步驟10:控制KODI
添加YouTube API并生成API密鑰
按照“YOUTUBE中的音樂(lè)流”步驟中列出的步驟添加API密鑰
在Kodi上啟用HTTP控制
默認(rèn)情況下,Web服務(wù)器處于禁用狀態(tài),必須由用戶手動(dòng)啟用。
1。這可以在設(shè)置→服務(wù)→控制→允許通過(guò)HTTP進(jìn)行遠(yuǎn)程控制中完成。
2。將端口號(hào)設(shè)置為8080,將用戶名設(shè)置為kodi,將密碼設(shè)置為kodi(用戶名和密碼應(yīng)為小寫(xiě))。
在Kodi上添加YouTube插件
讓Kodi播放YouTube視頻,您需要在Kodi上添加并啟用YouTube插件。
用于Kodi控制的命令Sytanxes
請(qǐng)注意,所有命令中都應(yīng)使用“on Kodi”。
步驟11:PARCEL跟蹤,RSS FEAY播放和無(wú)線電流
PARCEL跟蹤
跟蹤包裹的默認(rèn)關(guān)鍵字是parcel 。
例如,您可以說(shuō)我的包裹在哪里或跟蹤我的包裹。
生成的API編號(hào)應(yīng)添加到指定位置的actions.py腳本中。為了更好地理解,請(qǐng)按照隨附的YouTube視頻進(jìn)行操作。
RSS FEEDS PLAYBACK
播放RSS源的默認(rèn)關(guān)鍵字是Feed或新聞或報(bào)價(jià)。使用示例,頂級(jí)科技新聞將播放頂級(jí)技術(shù)新聞,頂級(jí)世界新聞將播放與不同節(jié)目相關(guān)的頭條新聞,頂級(jí)體育新聞將播放頂級(jí)體育相關(guān)新聞,當(dāng)天的報(bào)價(jià)將給出一些報(bào)價(jià)。
請(qǐng)勿將Play命令與YouTube中的音樂(lè)流媒體相關(guān)聯(lián)。 actions.py文件中feed函數(shù)中的numfeeds變量是Feed限制。某些RSS源最多可包含60個(gè)項(xiàng)目,并且numfeeds變量限制要流式傳輸?shù)捻?xiàng)目數(shù)。默認(rèn)值已設(shè)置為10,如果您愿意,可以更改。
RADIO STREAMING
流式廣播的默認(rèn)關(guān)鍵字將調(diào)整為。例如,調(diào)入Radio 2命令將打開(kāi)actions.py文件中列出的相應(yīng)無(wú)線電流。
已啟用OK-Google和自定義熱門(mén)詞/喚醒詞的無(wú)線電流。
第12步:添加原始的Google家庭式指標(biāo)
根據(jù)電路板更改草圖中的引腳編號(hào)并上傳。
按照給出的電路圖。
-
開(kāi)發(fā)板
+關(guān)注
關(guān)注
25文章
5057瀏覽量
97520 -
Google Assistant
+關(guān)注
關(guān)注
0文章
28瀏覽量
3745
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論