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