电子工程师技术服务社区
公告
登录
|
注册
首页
技术问答
厂商活动
正点原子
板卡试用
资源库
下载
文章
社区首页
文章
如何打造属于你的私人语音助手之环境搭建
分 享
扫描二维码分享
如何打造属于你的私人语音助手之环境搭建
树莓派
语音助手
wukong
IAMLIUBO
关注
发布时间: 2019-12-11
丨
阅读: 20128
## 我是谁,谁又是我 Hi, 大家好,我是刘波,人在江湖行走的ID是:[IAMLIUBO](https://blogs.oopswow.com/)!受到电子芯吧客平台用户活跃度的感召,为了防止世界被破坏,为了保护世界的和平,于是我决定也要来电子芯吧客平台混个脸熟了(我不会承认我是为了稿费才来的!绝对不会!滑稽.gif)。 ## 语音助手元年(智能音箱元年) 2017年可谓是各大科技巨头争相发布自己生态内智能音箱的元年,前有国外科技巨头亚马逊的Alexa、echo,谷歌的Google Home,苹果的Home Pod等,后有国内巨头阿里巴巴家的天猫精灵系列,京东家的叮当,百度家的小度,小米家的小爱同学等等,真可谓百家争鸣,百花齐放,想必正在读这篇文章的你家中也有个智能音箱吧,作为新一代的家庭智能网关,现在的智能音箱承载了越来越多的功能,比如简单的对话,查快递,询问天气等,还可以跟你家庭中的智能设备联动。 享受过智能音箱带来的便利后,大家有没有对智能音箱是如何工作的有些好奇呢?大家有没有想打造一个属于自己的语音助手呢? 没错,本系列文章就是带大家一步步了解并打造一个属于自己的语音助手。 ## 技术栈 开始打造你的私人助手之前需要掌握以下技能: * python开发语言 * 树莓派开/机 * git代码管理工具 * 基本电子电路知识 * MQTT通讯协议简单了解(后面我们会做跟别的硬件交互) * 认识 没错,不需要你有很强的技术就可以很简单的完成本项目,所以完全不用担心,而我也会尽可能详细的给大家一步步的去讲解,保证大家都可以完成这个项目。 ## 硬件准备 没有硬件是不太好开始,所以建议大家配齐以下硬件: **基本:** * 树莓派(3B/3B+/4都可以) * 内存卡(16G) * ReSpeaker麦克风阵列 * 3.5mm迷你小音箱 **扩展:** * 温湿度传感器(DHT11) * 土壤湿度传感器 * 小水泵 * 树莓派摄像头 * 0.96寸OLED显示屏 * 5V小风扇 * 继电器(x3) * NodeMCU(esp8266) * (其它在后面文章中补充) 硬件这里分为基本和扩展,基本硬件可以保证你成功运行起属于自己的语音助手,扩展硬件则可以让你有更多的玩法,当然硬件的选择取决于你,我这里只是给出一点建议,关于硬件购买链接这里就不放了,大家自行去某宝搜索购买即可。 ## 更多了解 语音助手基于潘伟洲在Github开源的wukong项目,这是一个非常棒的项目,前身也是基于潘老师写的dingdang-robot,目前已经有1.5K个star,项目主页:[wukong](https://wukong.hahack.com/#/)。 语音唤醒解决方案是采用的[snowboy](https://snowboy.kitt.ai/)。 语音转文字,文字转语音技术采用的是百度大脑语音技术(可选择讯飞或者腾讯阿里)。 自然语言处理采用的是百度UNIT。 聊天对话采用的是图灵机器人(对话库)。 ## 准备工作 硬件: * 树莓派 * 内存卡 * 读卡器 * 电源 软件: * [Win32 Disk Imager](https://sourceforge.net/projects/win32diskimager/files/Archive/win32diskimager-v0.9-binary.zip/download) * [VNC viwer](https://www.realvnc.com/en/connect/download/viewer/) * [SD Card Formatter](https://www.sdcard.org/downloads/formatter/) * [树莓派镜像](https://downloads.raspberrypi.org/raspbian_latest) * [Putty](https://the.earth.li/~sgtatham/putty/latest/w64/putty-64bit-0.73-installer.msi) * [FileZilla](https://filezilla-project.org/) 如果是初次使用树莓派请准备以上硬件和软件,并将软件安装好,如果是一个树莓派老手,请忽略,直接跳到wukong软件安装环节~ ## 树莓派烧录镜像和开机 *本章节只给第一次使用树莓派的新手查看^_^* #### 镜像烧录 打开Win32 Disk Imager软件,来烧写,我们需要先解压前面准备的树莓派镜像文件,解压完成后,在按照如下软件截图进行配置,配置好后点击Write,然后就可以开始写镜像了,此过程一般会持续几分钟,请耐心等待。  耐心等待进度条完成。  需要注意的是,烧写完成后,可能会弹出以下窗口,让你格式化内存卡,此时**一定不要点格式化磁盘!一定不要点格式化磁盘!一定不要点格式化磁盘!**  #### 设置WiFi名称和密码 上一步完成,我们来给树莓派配置我们的WiFi名称和密码,当然顺便开启SSH服务。 打开文件浏览器,找到一个名称为boot的盘符,打开,并在文件夹内新建一个名称为**wpa_supplicant.conf**的文件,然后将下面内容保存到文件内,其中**ssid="XXXXXXXXX"**的XXXXXXXXX替换成你的家庭路由器WiFi名称,**psk="XXXXXXXXX"**的XXXXXXXXX替换成WiFi密码,其余的文件不要修改。 ```bash country=CN ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1 network={ ssid="XXXXXXXXX" psk="XXXXXXXXX" key_mgmt=WPA-PSK priority=1 } ``` 然后我们再新建一个**ssh**文件,不需要任何内容,也没有任何扩展名,同样也是在boot目录下。 最终效果如下:  #### SSH远程连接 前两步操作完成后,我们就可以将内存卡插到树莓派开机了,树莓配开机后会自动连接我们前面配置的WiFi热点,下一步我们就可以用putty这个软件通过SSH协议连接树莓派了,但是在连接之前我们还需要确认一下我们的树莓派IP地址,我们需要通过路由器的管理后台进行查看,如何登录路由器后台不会的小伙伴可以自行搜索。 比如我这里经查看树莓派的IP地址如下图:  PuTTY软件设置:  填写好IP后,我们点击Open会弹出一个下面的界面,我们点击是:  输入用户和密码登录:  出现以下界面,恭喜你登录成功!  #### 软件源更改和系统更新 接下来为了更好的在国内使用,我们需要修改一下软件源,如果不修改的话后面安装程序就可能会非常慢,或者经常性安装失败。 我们这里使用清华源,这是树莓派软件包的一个国内源,可以给我们提供更快的访问速度,首先执行以下命令: ```bash sudo nano /etc/apt/sources.list ``` 然后增加下面这两行代码: ```bash deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contrib deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main non-free contrib ```  然后再执行以下代码: ```bash sudo nano /etc/apt/sources.list.d/raspi.list ``` 然后增加下面这行代码: ```bash deb http://mirrors.tuna.tsinghua.edu.cn/raspberrypi/ buster main ui ```  *注:nano编辑器的使用方法可以自己搜索以下* 最后我们需要分别执行这两句命令更新我们刚刚修改的源和更新已安装的软件: ```bash sudo apt-get update sudo apt-get upgrade ``` 第二条命令执行时间有点长,请耐心等候一下。 ## 安装wukong依赖库 本片文章我们先安装一下wukong和一些依赖库,下篇文章我们再来编译snowboy。 首先需要将wukong的源码下载下来: ```bash git clone https://github.com/wzpan/wukong-robot.git ``` 安装 sox ,ffmpeg 和 PyAudio: ```bash sudo apt-get install portaudio19-dev python-pyaudio python3-pyaudio sox pulseaudio libsox-fmt-all ffmpeg pip3 install pyaudio ``` 安装依赖的库: ```bash cd wukong-robot pip3 install -r requirements.txt ``` 请一行一行的执行上面的命令,拉取源码的时候估计时间会比较久,请耐心等候,如果拉取失败,再次尝试即可。 下篇文章我们再来编译snowboy和安装麦克风阵列驱动。
原创作品,未经权利人授权禁止转载。详情见
转载须知
。
举报文章
点赞
(
11
)
IAMLIUBO
擅长:工控电子 能源电源 光电显示 设计,制造及服务 智能硬件
关注
评论
(4)
登录后可评论,请
登录
或
注册
36b3080f4f0320f1
165
天前...
第二章在哪呀 找不到呀
0
回复
发布
xbk_050468
回复
36b3080f4f0320f1
327
天前...
同问
0
回复
发布
81b208104a833197
282
天前...
您好,我想请教一些关于语音助手的问题(可有偿),方便的话加一下我的微信:cjt19971129
0
回复
发布
xbk_298711
202
天前...
你好,我把config.yml中的baidu_yuyin里面的appid,ak,sk改成了自己注册的,不知道为什么出现CRITICAL:robot.conversation:'access_token'这个问题
0
回复
发布
相关文章推荐
MK-米客方德推出工业级存储卡
Beetle ESP32 C3 蓝牙数据收发
Beetle ESP32 C3 wifi联网获取实时天气信息
开箱测评Beetle ESP32-C3 (RISC-V芯片)模块
正点原子数控电源DP100测评
DP100试用评测-----开箱+初体验
Beetle ESP32 C3环境搭建
【花雕体验】16 使用Beetle ESP32 C3控制8X32位WS2812硬屏之二
X
你的打赏是对原创作者最大的认可
请选择打赏IC币的数量,一经提交无法退回 !
100IC币
500IC币
1000IC币
自定义
IC币
确定
X
提交成功 ! 谢谢您的支持
返回
我要举报该内容理由
×
广告及垃圾信息
抄袭或未经授权
其它举报理由
请输入您举报的理由(50字以内)
取消
提交