“LC-AI-8960”的版本间的差异
(→功能特点) |
|||
(未显示2个用户的4个中间版本) | |||
第1行: | 第1行: | ||
== 产品名称 == | == 产品名称 == | ||
− | RPI_WM8960音频解码模块 双麦克风 智能语音识别 | + | RPI_WM8960音频解码模块 双麦克风 智能语音识别[https://pan.baidu.com/s/1eTtRx7KpDaHKbwO5QAFvWQ/ 百度网盘] |
== 概述 == | == 概述 == | ||
− | + | 艾尔赛WM8960模块搭载英国原装Wolfson音频解码芯片和双硅麦克风阵列。专为LCPI设计的音频声卡扩展板,低功耗,立体声编解码,<br> | |
支持高音质播放和录音,可直接驱动扬声器播放音乐。也可用于DIY类似于天猫精灵、Google Assistant等智能音箱。<br> | 支持高音质播放和录音,可直接驱动扬声器播放音乐。也可用于DIY类似于天猫精灵、Google Assistant等智能音箱。<br> | ||
== 功能特点 == | == 功能特点 == | ||
− | * | + | * 基于LCPI 40pin接口,适用于LCPI系列主板<br><br> |
− | * | + | * 支持LCPI Zero/Zero W/2B/3B/3B+/4等开发板 <br><br> |
* 采用WM8960低功耗立体声编解码芯片,可通过I2S接口通讯<br><br> | * 采用WM8960低功耗立体声编解码芯片,可通过I2S接口通讯<br><br> | ||
* 板载2个高质量MEMS硅麦克风,可左右声道录音<br><br> | * 板载2个高质量MEMS硅麦克风,可左右声道录音<br><br> | ||
第17行: | 第17行: | ||
* 供电电压:5V<br><br> | * 供电电压:5V<br><br> | ||
* 逻辑电压:3.3V<br><br> | * 逻辑电压:3.3V<br><br> | ||
− | * | + | * LCPI控制接口:I2C<br><br> |
* 音频接口:I2S<br><br> | * 音频接口:I2S<br><br> | ||
* DAC信噪比:98db,ADC信噪比:94db;<br><br> | * DAC信噪比:98db,ADC信噪比:94db;<br><br> | ||
第32行: | 第32行: | ||
[[Image:LC-Voice-WM8960 1.png]] | [[Image:LC-Voice-WM8960 1.png]] | ||
− | + | 1、LCPI 2*20P座子:支持LCPI Zero/Zero W/2B/3B/3B+/4等<br> | |
− | 2、MIC_L&MIC_R: | + | 2、MIC_L&MIC_R: 左右MEMS硅麦克风<br> |
− | + | 3、WM8960:低功耗立体声编解码芯片<br> | |
− | 4、POWER:输出接扬声器时此Micro USB| | + | 4、POWER:输出接扬声器时此Micro USB|需接上以提供足够电流<br> |
− | 5、KF301- | + | 5、KF301-4P端子:左右声道扬声器输出,功率2X1W<br> |
− | 6、PH2.0- | + | 6、PH2.0-4P座子:左右声道扬声器输出,功率2X1W<br> |
− | 7、3.5MM耳机输出口:功率40mW(16Ω@3.3V) | + | 7、3.5MM耳机输出口:功率40mW(16Ω@3.3V)<br> |
− | 8、RGB LED: | + | 8、RGB LED: 3个APA102全彩LED,连接到LCPI的SPI接口<br> |
− | |||
− | |||
+ | 9、6X6mm按键:连接到LCPI的GPIO17<br> | ||
== 硬件连接 == | == 硬件连接 == | ||
第57行: | 第56行: | ||
首先确保所用的Pi运行的Raspbian操作系统是更新于2018.06.27或者2018.06.27之后,然后将WM8960模块插入Pi,接好键盘、显示器等必要的外设,Pi连上WiFi/有线网络,如下图:<br> | 首先确保所用的Pi运行的Raspbian操作系统是更新于2018.06.27或者2018.06.27之后,然后将WM8960模块插入Pi,接好键盘、显示器等必要的外设,Pi连上WiFi/有线网络,如下图:<br> | ||
[[Image:LC-Voice-WM8960 2.png]] | [[Image:LC-Voice-WM8960 2.png]] | ||
− | |||
1.2、换源 | 1.2、换源 | ||
第64行: | 第62行: | ||
(1)输入:sudo nano /etc/apt/sources.list<br> | (1)输入:sudo nano /etc/apt/sources.list<br> | ||
[[Image:LC-Voice-WM8960 3.png]] | [[Image:LC-Voice-WM8960 3.png]] | ||
− | |||
(2)用#注释掉原文件内容,用以下内容替代<br> | (2)用#注释掉原文件内容,用以下内容替代<br> | ||
第74行: | 第71行: | ||
输入完成后按Ctrl+X键保存退出<br> | 输入完成后按Ctrl+X键保存退出<br> | ||
− | |||
1.3、驱动下载并安装 | 1.3、驱动下载并安装 | ||
第87行: | 第83行: | ||
[[Image:LC-Voice-WM8960 7.png]] | [[Image:LC-Voice-WM8960 7.png]] | ||
− | |||
1.4,检查声卡名称是否与源代码seeed-voicecard相匹配<br> | 1.4,检查声卡名称是否与源代码seeed-voicecard相匹配<br> | ||
第104行: | 第99行: | ||
输入:pip install spidev gpiozero #安装需要的工具包<br> | 输入:pip install spidev gpiozero #安装需要的工具包<br> | ||
[[Image:LC-Voice-WM8960 9.png]] | [[Image:LC-Voice-WM8960 9.png]] | ||
− | |||
− | |||
− | |||
3、控制APA102 LED的示例<br> | 3、控制APA102 LED的示例<br> | ||
第119行: | 第111行: | ||
●选择“OK”<br> | ●选择“OK”<br> | ||
●选择“Finish”<br> | ●选择“Finish”<br> | ||
− | |||
3.2、运行APA102 LED<br> | 3.2、运行APA102 LED<br> | ||
第136行: | 第127行: | ||
4、Alexa SDK和DuerOS SD<br> | 4、Alexa SDK和DuerOS SD<br> | ||
由于国内登录不上Google Assistant,所以使用在国内能连接的Alexa和百度DuerOs作为语音引擎,开发出能让大多数人使用的语音互助系统。<br> | 由于国内登录不上Google Assistant,所以使用在国内能连接的Alexa和百度DuerOs作为语音引擎,开发出能让大多数人使用的语音互助系统。<br> | ||
− | |||
4.1、配置和DOA测试<br> | 4.1、配置和DOA测试<br> | ||
第153行: | 第143行: | ||
输入:cd examples<br> | 输入:cd examples<br> | ||
[[Image:LC-Voice-WM8960 12.png]] | [[Image:LC-Voice-WM8960 12.png]] | ||
− | |||
4.2、运行<br> | 4.2、运行<br> | ||
在虚拟环境下运行python kws_doa.py。请用snowboy来唤醒,我们就可以看到方位信息。<br> | 在虚拟环境下运行python kws_doa.py。请用snowboy来唤醒,我们就可以看到方位信息。<br> | ||
[[Image:LC-Voice-WM8960 13.png]] | [[Image:LC-Voice-WM8960 13.png]] | ||
− | |||
5、百度中文语音互动/Alexa英文语音互动 | 5、百度中文语音互动/Alexa英文语音互动 | ||
第174行: | 第162行: | ||
输入:pip install tornado<br> | 输入:pip install tornado<br> | ||
[[Image:LC-Voice-WM8960 14.png]] | [[Image:LC-Voice-WM8960 14.png]] | ||
− | |||
5.2、取得授权<br> | 5.2、取得授权<br> | ||
− | 在终端运行 alexa-auth,然后登陆获取alexa的授权,或者运行dueros-auth获取百度的授权。授权文件会自动保存在 /home/pi/.avs. | + | 在终端运行 alexa-auth,然后登陆获取alexa的授权,或者运行dueros-auth获取百度的授权。授权文件会自动保存在 /home/pi/.avs.jason。<br> |
+ | 在中国地区通常获取百度的授权就够用,方法如下:<br> | ||
[[Image:LC-Voice-WM8960 15.png]] | [[Image:LC-Voice-WM8960 15.png]] | ||
第184行: | 第172行: | ||
[[Image:LC-Voice-WM8960 16.png]] | [[Image:LC-Voice-WM8960 16.png]] | ||
− | '''注意:如果想在alexa-auth 和dueros-auth 之间切换,请先删除 /home/pi/.avs.jason。这个是隐藏文件,请用ls-la显示文件''' | + | '''注意:如果想在alexa-auth 和dueros-auth 之间切换,请先删除 /home/pi/.avs.jason。这个是隐藏文件,请用ls-la显示文件'''<br> |
− | |||
− | |||
5.3、安装mpg123播放器<br> | 5.3、安装mpg123播放器<br> | ||
− | + | LCPI有3个播放器(mpv, mpg123和gstreamer)可供使用,语音交互上mpg123有着不错的表现。<br> | |
输入:sudo apt install mpg123 #安装mpg123播放器<br> | 输入:sudo apt install mpg123 #安装mpg123播放器<br> | ||
[[Image:LC-Voice-WM8960 17.png]] | [[Image:LC-Voice-WM8960 17.png]] | ||
− | |||
6、百度中文语音互动测试<br> | 6、百度中文语音互动测试<br> | ||
第205行: | 第190行: | ||
[[Image:LC-Voice-WM8960 19.png]] | [[Image:LC-Voice-WM8960 19.png]] | ||
− | 接着终端会打印出很多debug信息,当我们看到status code: | + | 接着终端会打印出很多debug信息,当我们看到status code:204时对着WM8960模块上面的咪头说snowboy来唤醒语音交互功能,<br> |
+ | WM8960语音模块成功识别到 snowboy 这句语音后会打印出一大串调试信息(如果没有识别到snowboy不会有调试信息输出),<br> | ||
+ | 此时立即说出你要执行的操作,比如:播放张学友的歌,智能语音模块会立即播放张学友的音乐。<br> | ||
'''(提示:snowboy这个单词用手机翻译软件读出来比用嘴读出来可能更易识别)''' | '''(提示:snowboy这个单词用手机翻译软件读出来比用嘴读出来可能更易识别)''' | ||
− | |||
7、APA102 LED测试 | 7、APA102 LED测试 | ||
第217行: | 第203行: | ||
输入:python pixels.py #运行LED<br> | 输入:python pixels.py #运行LED<br> | ||
[[Image:LC-Voice-WM8960 20.png]] | [[Image:LC-Voice-WM8960 20.png]] | ||
− | |||
− | |||
8、WM8960模块输出音量调节<br> | 8、WM8960模块输出音量调节<br> | ||
− | + | LCPI桌面的音量调节按钮默认用来调节自带声卡的音量,要调节WM8960模块的音量,需先将WM8960模块(即seeed-2mic-voicecard)设置为默认声卡。<br> | |
8.1、点击 首选项---Audio Device Settings<br> | 8.1、点击 首选项---Audio Device Settings<br> | ||
[[Image:LC-Voice-WM8960 21.png]] | [[Image:LC-Voice-WM8960 21.png]] | ||
− | |||
8.2、声卡:seeed-2mic-voicecard(Alsa mixer),再分别点击Make Default和OK<br> | 8.2、声卡:seeed-2mic-voicecard(Alsa mixer),再分别点击Make Default和OK<br> | ||
[[Image:LC-Voice-WM8960 22.png]] | [[Image:LC-Voice-WM8960 22.png]] | ||
− | |||
温馨提示:<br> | 温馨提示:<br> | ||
1, 在环境已经配置好了的情况下,下次开机只需要执行上面的第7和第8步就可以测试语音交互功能 和APA102 LED;<br> | 1, 在环境已经配置好了的情况下,下次开机只需要执行上面的第7和第8步就可以测试语音交互功能 和APA102 LED;<br> | ||
2,因为配置过程中很多文件需要从国外的Github/Raspberry官网下载相关的文件,速度可能较慢,请耐心等待,若下载失败可多次尝试! | 2,因为配置过程中很多文件需要从国外的Github/Raspberry官网下载相关的文件,速度可能较慢,请耐心等待,若下载失败可多次尝试! |
2023年5月15日 (一) 14:08的最新版本
产品名称
RPI_WM8960音频解码模块 双麦克风 智能语音识别百度网盘
概述
艾尔赛WM8960模块搭载英国原装Wolfson音频解码芯片和双硅麦克风阵列。专为LCPI设计的音频声卡扩展板,低功耗,立体声编解码,
支持高音质播放和录音,可直接驱动扬声器播放音乐。也可用于DIY类似于天猫精灵、Google Assistant等智能音箱。
功能特点
- 基于LCPI 40pin接口,适用于LCPI系列主板
- 支持LCPI Zero/Zero W/2B/3B/3B+/4等开发板
- 采用WM8960低功耗立体声编解码芯片,可通过I2S接口通讯
- 板载2个高质量MEMS硅麦克风,可左右声道录音
- 板载标准3.5mm耳机接口,输出功率:40mW(16Ω@3.3V)
- 板载双通道喇叭接口,可直接驱动扬声器,输出功率:2X1W
- 支持立体声、3D环绕等音效输出
- 板载3个可编程APA-102-2020全彩LED
- 供电电压:5V
- 逻辑电压:3.3V
- LCPI控制接口:I2C
- 音频接口:I2S
- DAC信噪比:98db,ADC信噪比:94db;
- 提供完善的参考资料,搭配树莓派可DIY类似出于天猫精灵、小度音箱、Google Assistant功能的智能音箱
介绍说明
接口说明
1、LCPI 2*20P座子:支持LCPI Zero/Zero W/2B/3B/3B+/4等
2、MIC_L&MIC_R: 左右MEMS硅麦克风
3、WM8960:低功耗立体声编解码芯片
4、POWER:输出接扬声器时此Micro USB|需接上以提供足够电流
5、KF301-4P端子:左右声道扬声器输出,功率2X1W
6、PH2.0-4P座子:左右声道扬声器输出,功率2X1W
7、3.5MM耳机输出口:功率40mW(16Ω@3.3V)
8、RGB LED: 3个APA102全彩LED,连接到LCPI的SPI接口
9、6X6mm按键:连接到LCPI的GPIO17
硬件连接
1、系统配置与驱动安装
1.1、准备工作
首先确保所用的Pi运行的Raspbian操作系统是更新于2018.06.27或者2018.06.27之后,然后将WM8960模块插入Pi,接好键盘、显示器等必要的外设,Pi连上WiFi/有线网络,如下图:
1.2、换源
在安装驱动之前,请根据以下流程切换源到清华:
(1)输入:sudo nano /etc/apt/sources.list
(2)用#注释掉原文件内容,用以下内容替代
deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ stretch main non-free contrib
deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ stretch main non-free contrib
输入完成后按Ctrl+X键保存退出
1.3、驱动下载并安装
输入:git clone https://github.com/respeaker/seeed-voicecard.git #下载驱动
输入:cd seeed-voicecard #打开文件夹
输入:sudo ./install.sh #安装声卡驱动
输入:sudo reboot #重启Pi
1.4,检查声卡名称是否与源代码seeed-voicecard相匹配
输入:arecord -L
2、安装Python和虚拟环境
这样是为了隔离SDK与系统Python包关系
输入:cd /home/pi
输入:git clone https://github.com/respeaker/4mics_hat.git
输入:cd /home/pi/4mics_hat
输入:sudo apt install python-virtualenv #安装Python2虚拟环境
输入:virtualenv --system-site-packages ~/env #建立虚拟环境,命名env
输入:source ~/env/bin/activate #激活虚拟环境
输入:pip install spidev gpiozero #安装需要的工具包
3、控制APA102 LED的示例
3.1、APA102 LED接口配置
板载的APA102 LED通过Pi的SPI接口来控制,故需要先配置Pi的SPI接口。
步骤如下:
●输入:sudo raspi-config
●选择“SPI”
●选择“Yes”
●选择“OK”
●选择“Finish”
3.2、运行APA102 LED
输入:cd /home/pi
输入:git clone https://github.com/respeaker/4mics_hat.git
输入:cd /home/pi/4mics_hat
输入:sudo apt install python-virtualenv #安装Python 虚拟环境
输入:virtualenv --system-site-packages ~/env #创建Python 虚拟环境
输入:source ~/env/bin/activate #激活Python 虚拟环境
输入:pip install spidev gpiozero #安装spidev和gpiozero
输入:python pixels.py #运行APA102 LED,LED会闪烁
4、Alexa SDK和DuerOS SD
由于国内登录不上Google Assistant,所以使用在国内能连接的Alexa和百度DuerOs作为语音引擎,开发出能让大多数人使用的语音互助系统。
4.1、配置和DOA测试
(1)配置Voice engine
输入:source ~/env/bin/activate #激活Python虚拟环境
输入:cd ~/4mics_hat
输入:sudo apt install libatlas-base-dev #安装snowboy depend
输入:sudo apt install python-pyaudio #安装pyaudio音频处理包
输入:pip install ./snowboy*.whl #安装snowboy for KWS
输入:pip install ./webrtc*.whl #安装webrtc for DOA
输入:cd ~/
输入:git clone https://github.com/voice-engine/voice-engine #write by seeed
输入:cd voice-engine/
输入:python setup.py install
输入:cd examples
4.2、运行
在虚拟环境下运行python kws_doa.py。请用snowboy来唤醒,我们就可以看到方位信息。
5、百度中文语音互动/Alexa英文语音互动
5.1、配置和安装相关依赖
输入:source ~/env/bin/activate #activate the virtual
输入:cd ~/
输入:git clone https://github.com/respeaker/avs
输入:cd avs #install Requirements
输入:python setup.py install
输入:sudo apt install gstreamer1.0
输入:sudo apt install gstreamer1.0-plugins-good
输入:sudo apt install gstreamer1.0-plugins-ugly
输入:sudo apt install python-gi gir1.2-gstreamer-1.0
输入:pip install tornado
5.2、取得授权
在终端运行 alexa-auth,然后登陆获取alexa的授权,或者运行dueros-auth获取百度的授权。授权文件会自动保存在 /home/pi/.avs.jason。
在中国地区通常获取百度的授权就够用,方法如下:
(2)选择baidu dueros,然后输入自己的百度账号即可完成授权
注意:如果想在alexa-auth 和dueros-auth 之间切换,请先删除 /home/pi/.avs.jason。这个是隐藏文件,请用ls-la显示文件
5.3、安装mpg123播放器
LCPI有3个播放器(mpv, mpg123和gstreamer)可供使用,语音交互上mpg123有着不错的表现。
输入:sudo apt install mpg123 #安装mpg123播放器
6、百度中文语音互动测试
WM8960模块的3.5mm音频接口处插上耳机/喇叭端子接喇叭(如果所用的显示器有HDMI音频功能会优先从HDMI输出音频)。
以上步骤均配置无误后,以后只要输入以下3条指令即可进入语音交互功能。
输入:cd /4mics_hat #打开文件夹
输入:source ~/env/bin/activate #激活虚拟环境
输入:PLAYER=mpg123 python ns_kws_doa_alexa_with_light.py
接着终端会打印出很多debug信息,当我们看到status code:204时对着WM8960模块上面的咪头说snowboy来唤醒语音交互功能,
WM8960语音模块成功识别到 snowboy 这句语音后会打印出一大串调试信息(如果没有识别到snowboy不会有调试信息输出),
此时立即说出你要执行的操作,比如:播放张学友的歌,智能语音模块会立即播放张学友的音乐。
(提示:snowboy这个单词用手机翻译软件读出来比用嘴读出来可能更易识别)
7、APA102 LED测试
以上步骤均配置无误后,以后只要输入以下3条指令即可测试LED功能。
输入:cd ~/4mics_hat #打开文件夹
输入:source ~/env/bin/activate #激活虚拟环境
输入:python pixels.py #运行LED
8、WM8960模块输出音量调节
LCPI桌面的音量调节按钮默认用来调节自带声卡的音量,要调节WM8960模块的音量,需先将WM8960模块(即seeed-2mic-voicecard)设置为默认声卡。
8.1、点击 首选项---Audio Device Settings
8.2、声卡:seeed-2mic-voicecard(Alsa mixer),再分别点击Make Default和OK
温馨提示:
1, 在环境已经配置好了的情况下,下次开机只需要执行上面的第7和第8步就可以测试语音交互功能 和APA102 LED;
2,因为配置过程中很多文件需要从国外的Github/Raspberry官网下载相关的文件,速度可能较慢,请耐心等待,若下载失败可多次尝试!