0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

GoogleAssistant的有趣功能

454398 来源:工程师吴畏 2019-08-07 09:35 次阅读

背景:

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音乐中流式传输音乐。

将YouTube视频投射到Chromecast

控制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,否则会导致音频和任务栏问题。

3.1。 USB DAC或USB声卡用户,

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
收藏 人收藏

    评论

    相关推荐

    HyperLynx 2409新增功能和改进功能

    HyperLynx的范围正从高速设计扩展到为PCB设计和验证的所有阶段提供仿真和分析。HyperLynx现在包括原理图验证和通用电路仿真功能。Xpedition Valydate即将
    的头像 发表于 11-04 11:15 212次阅读

    PICO 4 Ultra-OTA系统焕新-更便捷、更真实、更有趣

    近日,PICO 4 Ultra迎来了其正式发售后的首次系统OTA功能更新。这次更新标志着PICO 4 Ultra产品生态的进一步完善,旨在通过多项关键功能的升级,为用户提供更加沉浸式的虚拟体验。此次
    的头像 发表于 10-25 15:28 231次阅读

    短文6:关于功率因素的有趣问答

    2个关于功率因素的有趣问答。
    的头像 发表于 09-23 12:22 161次阅读

    基于XIAO SAMD21开发板的多功能笔筒设计方案

    今天小编给大家带来的是来自国外的Maker Arnov Sharma的多功能笔筒项目,这个多功能笔筒项目是使用3D打印零件进行搭建的,在笔筒的前端添加了XIAO扩展板,给这个笔筒添加一个显示器,可以在显示器上显示许多内容,例如两个眼睛,文本等等,这些使得这个笔筒更加
    的头像 发表于 09-06 10:07 224次阅读
    基于XIAO SAMD21开发板的多<b class='flag-5'>功能</b>笔筒设计方案

    全网最有趣的光模块科普,请告诉我牛不牛!

    相信很多通信人,都听说过光模块的大名。但对于各种光模块的种类、性能指标、命名方式却总是记不住,到处搜索,难以找全~所以今天文档君就为大家全方位“盘一盘”光模块,搞了超多有趣的例子,让你一次性记住
    的头像 发表于 06-24 08:04 164次阅读
    全网最<b class='flag-5'>有趣</b>的光模块科普,请告诉我牛不牛!

    功能测试主要做什么 功能测试包含哪些测试

    功能测试是软件测试的一个重要组成部分,主要目的是验证软件的功能是否满足需求规格说明书(SRS)中定义的功能要求。功能测试的目的是确保软件在执行预定
    的头像 发表于 05-29 16:05 4946次阅读

    功能数显表的功能特点有哪些?

    功能数显表是一种集成了多种测量功能的数字显示仪表,它在工业自动化、电气测试、实验室研究以及现场服务等领域有着广泛的应用。
    的头像 发表于 05-09 16:26 910次阅读

    来看看蓝牙 5.4 版带来了一些新的有趣功能

    Bluetooth SIG 的 Bluetooth® v5.4 核心规范为支持 Bluetooth 的物联网设备带来了多项优势,重点是增强了通信能力、安全性和效率。这些改进尤其适用于涉及大量设备的应用,如零售、资产跟踪和智慧家居环境。 主要优势包括: • 与数千个终端节点进行双向通信 • 带响应的周期性广播 (PAwR) • 加密广播数据 (EAD) • 范围更广,能效更高 • 提高资产跟踪的准确性和精确度 • 基于标准的 ESL 和其他应用方法 蓝牙 v5.4 的两项主要改进是带响应的周期性广播(PAw
    的头像 发表于 04-23 14:52 7838次阅读
    来看看蓝牙 5.4 版带来了一些新的<b class='flag-5'>有趣</b><b class='flag-5'>功能</b>

    探秘台灯革新:四键带数码管时钟显示功能台灯电子方案深度解析

    探索一款创新的台灯电子方案,它融合了四键操作和数码管时钟显示功能,使用DLT8SA20A芯片,确保了稳定性与可靠性。这款台灯不仅提供灵活的亮度调节(15%-85%)和无极调光功能,还能通过触摸按键
    的头像 发表于 03-13 21:10 333次阅读
    探秘台灯革新:四键带数码管时钟显示<b class='flag-5'>功能</b>台灯电子方案深度解析

    安科瑞多功能电力仪表设置仪表脉冲常数教程

    功能电力仪表
    jf_55193456
    发布于 :2024年02月02日 15:14:30

    基于光的打印金属纳米结构的方法

    在纳米尺度上打印金属可创建具有有趣功能的独特结构,对电子设备、太阳能转换、传感器和其他系统的发展至关重要。
    的头像 发表于 01-22 14:43 617次阅读

    Amazon Connect新增生成式AI功能

    Connect Contact Lens为客户互动添加了AI生成摘要功能,帮助管理人员评估和优化坐席表现; Amazon Connect中的Amazon Lex现已利用生成式AI,使构建有效且有趣的自助
    的头像 发表于 12-18 17:34 518次阅读

    他们都用Copilot做什么?让工作高效又有趣

    办公体验 扫描二维码,锁定直播间 点亮在看,给BUG点好看 原文标题:他们都用Copilot做什么?让工作高效又有趣 文章出处:【微信公众号:微软科技】欢迎添加关注!文章转载请注明出处。
    的头像 发表于 12-01 08:10 323次阅读
    他们都用Copilot做什么?让工作高效又<b class='flag-5'>有趣</b>

    神秘又有趣的话题——芯片引脚顺序!

    亲爱的“芯”朋友,你们有没有发现,每颗芯片上都布满了密密麻麻的引脚,犹如一座迷宫,让人无从下手?今天,我们一起来揭开这个迷宫的神秘面纱,探索一下这个既神秘又有趣的话题——芯片引脚顺序!芯片,这个看似
    的头像 发表于 11-28 09:33 1.4w次阅读
    神秘又<b class='flag-5'>有趣</b>的话题——芯片引脚顺序!