背景:
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文章
4943浏览量
97177 -
Google Assistant
+关注
关注
0文章
28浏览量
3723
发布评论请先 登录
相关推荐
评论