“LC-AI-8960”的版本间的差异

来自LCWIKI
跳转至: 导航搜索
硬件连接
 
(未显示2个用户的3个中间版本)
第1行: 第1行:
 
== 产品名称 ==
 
== 产品名称 ==
RPI_WM8960音频解码模块 双麦克风 智能语音识别
+
RPI_WM8960音频解码模块 双麦克风 智能语音识别[https://pan.baidu.com/s/1eTtRx7KpDaHKbwO5QAFvWQ/ 百度网盘]
  
 
== 概述 ==
 
== 概述 ==
艾尔赛WM8960模块搭载英国原装Wolfson音频解码芯片和双硅麦克风阵列。专为树莓派设计的音频声卡扩展板,低功耗,立体声编解码,<br>
+
艾尔赛WM8960模块搭载英国原装Wolfson音频解码芯片和双硅麦克风阵列。专为LCPI设计的音频声卡扩展板,低功耗,立体声编解码,<br>
 
支持高音质播放和录音,可直接驱动扬声器播放音乐。也可用于DIY类似于天猫精灵、Google Assistant等智能音箱。<br>
 
支持高音质播放和录音,可直接驱动扬声器播放音乐。也可用于DIY类似于天猫精灵、Google Assistant等智能音箱。<br>
  
 
== 功能特点 ==
 
== 功能特点 ==
* 基于Raspberry Pi 40pin接口,适用于Raspberry Pi系列主板<br><br>
+
* 基于LCPI 40pin接口,适用于LCPI系列主板<br><br>
* 支持Raspberry Pi Zero/Zero W/2B/3B/3B+/4等开发板 <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>
* 树莓派控制接口:I2C<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、Raspberry Pi 2*20P座子:支持Raspberry Pi Zero/Zero W/2B/3B/3B+/4等;<br>
+
1、LCPI 2*20P座子:支持LCPI Zero/Zero W/2B/3B/3B+/4等<br>
  
2、MIC_L&MIC_R: 左右MEMS硅麦克风;<br>
+
2、MIC_L&MIC_R: 左右MEMS硅麦克风<br>
  
3、WM8960:低功耗立体声编解码芯片;<br>
+
3、WM8960:低功耗立体声编解码芯片<br>
  
4、POWER:输出接扬声器时此Micro USB|需接上以提供足够电流;<br>
+
4、POWER:输出接扬声器时此Micro USB|需接上以提供足够电流<br>
  
5、KF301-4P端子:左右声道扬声器输出,功率2X1W;<br>
+
5、KF301-4P端子:左右声道扬声器输出,功率2X1W<br>
  
6、PH2.0-4P座子:左右声道扬声器输出,功率2X1W;<br>
+
6、PH2.0-4P座子:左右声道扬声器输出,功率2X1W<br>
  
7、3.5MM耳机输出口:功率40mW(16Ω@3.3V)<br>
+
7、3.5MM耳机输出口:功率40mW(16Ω@3.3V)<br>
  
8、RGB LED: 3个APA102全彩LED,连接到树莓派的SPI接口;<br>
+
8、RGB LED: 3个APA102全彩LED,连接到LCPI的SPI接口<br>
 
 
9、6X6mm按键:连接到树莓派的GPIO17;<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>
第186行: 第173行:
  
 
'''注意:如果想在alexa-auth 和dueros-auth 之间切换,请先删除 /home/pi/.avs.jason。这个是隐藏文件,请用ls-la显示文件'''<br>
 
'''注意:如果想在alexa-auth 和dueros-auth 之间切换,请先删除 /home/pi/.avs.jason。这个是隐藏文件,请用ls-la显示文件'''<br>
 
 
  
 
5.3、安装mpg123播放器<br>
 
5.3、安装mpg123播放器<br>
树莓派有3个播放器(mpv, mpg123和gstreamer)可供使用,语音交互上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>
第210行: 第194行:
 
此时立即说出你要执行的操作,比如:播放张学友的歌,智能语音模块会立即播放张学友的音乐。<br>
 
此时立即说出你要执行的操作,比如:播放张学友的歌,智能语音模块会立即播放张学友的音乐。<br>
 
'''(提示:snowboy这个单词用手机翻译软件读出来比用嘴读出来可能更易识别)'''
 
'''(提示:snowboy这个单词用手机翻译软件读出来比用嘴读出来可能更易识别)'''
 
  
 
7、APA102 LED测试
 
7、APA102 LED测试
第220行: 第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>
  
树莓派桌面的音量调节按钮默认用来调节自带声卡的音量,要调节WM8960模块的音量,需先将WM8960模块(即seeed-2mic-voicecard)设置为默认声卡。<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功能的智能音箱

介绍说明

板子尺寸:65*30.2mm,重量:16g
LC-Voice-WM8960.png


接口说明

LC-Voice-WM8960 1.png

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/有线网络,如下图:
LC-Voice-WM8960 2.png

1.2、换源 在安装驱动之前,请根据以下流程切换源到清华:

(1)输入:sudo nano /etc/apt/sources.list
LC-Voice-WM8960 3.png

(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

LC-Voice-WM8960 4.png

输入完成后按Ctrl+X键保存退出

1.3、驱动下载并安装

输入:git clone https://github.com/respeaker/seeed-voicecard.git #下载驱动
输入:cd seeed-voicecard #打开文件夹
输入:sudo ./install.sh #安装声卡驱动
输入:sudo reboot #重启Pi
LC-Voice-WM8960 5.png.png

LC-Voice-WM8960 6.png.png

LC-Voice-WM8960 7.png

1.4,检查声卡名称是否与源代码seeed-voicecard相匹配
输入:arecord -L
LC-Voice-WM8960 8.png

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 #安装需要的工具包
LC-Voice-WM8960 9.png

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
LC-Voice-WM8960 10.png

输入:python pixels.py #运行APA102 LED,LED会闪烁
LC-Voice-WM8960 11.png

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
LC-Voice-WM8960 12.png

4.2、运行
在虚拟环境下运行python kws_doa.py。请用snowboy来唤醒,我们就可以看到方位信息。
LC-Voice-WM8960 13.png

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
LC-Voice-WM8960 14.png

5.2、取得授权

在终端运行 alexa-auth,然后登陆获取alexa的授权,或者运行dueros-auth获取百度的授权。授权文件会自动保存在 /home/pi/.avs.jason。
在中国地区通常获取百度的授权就够用,方法如下:
LC-Voice-WM8960 15.png

(2)选择baidu dueros,然后输入自己的百度账号即可完成授权
LC-Voice-WM8960 16.png

注意:如果想在alexa-auth 和dueros-auth 之间切换,请先删除 /home/pi/.avs.jason。这个是隐藏文件,请用ls-la显示文件

5.3、安装mpg123播放器
LCPI有3个播放器(mpv, mpg123和gstreamer)可供使用,语音交互上mpg123有着不错的表现。
输入:sudo apt install mpg123 #安装mpg123播放器
LC-Voice-WM8960 17.png

6、百度中文语音互动测试
WM8960模块的3.5mm音频接口处插上耳机/喇叭端子接喇叭(如果所用的显示器有HDMI音频功能会优先从HDMI输出音频)。

以上步骤均配置无误后,以后只要输入以下3条指令即可进入语音交互功能。
输入:cd /4mics_hat #打开文件夹
输入:source ~/env/bin/activate #激活虚拟环境
输入:PLAYER=mpg123 python ns_kws_doa_alexa_with_light.py
LC-Voice-WM8960 18.png

LC-Voice-WM8960 19.png

接着终端会打印出很多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
LC-Voice-WM8960 20.png

8、WM8960模块输出音量调节

LCPI桌面的音量调节按钮默认用来调节自带声卡的音量,要调节WM8960模块的音量,需先将WM8960模块(即seeed-2mic-voicecard)设置为默认声卡。

8.1、点击 首选项---Audio Device Settings
LC-Voice-WM8960 21.png

8.2、声卡:seeed-2mic-voicecard(Alsa mixer),再分别点击Make Default和OK
LC-Voice-WM8960 22.png 温馨提示:
1, 在环境已经配置好了的情况下,下次开机只需要执行上面的第7和第8步就可以测试语音交互功能 和APA102 LED;
2,因为配置过程中很多文件需要从国外的Github/Raspberry官网下载相关的文件,速度可能较慢,请耐心等待,若下载失败可多次尝试!