4、官方参考教程

您当前位置: 首页 > 语音模块ReSpeaker 2 > 语音识别模块教程

ReSpeaker 2-Mics Pi HAT

ReSpeaker 2-Mics Pi HAT是专为AI和语音应用设计的Raspberry Pi双麦克风扩展板。 这意味着您可以构建一个集成Amazona语音服务等的功能更强大,更灵活的语音产品。

该板是基于WM8960开发的低功耗立体声编解码器。 电路板两侧有两个麦克风采集声音,还提供3个APA102 RGB LED,1个用户按钮和2个板载Grove接口,用于扩展应用程序。 此外,3.5mm音频插孔或JST 2.0扬声器输出均可用于音频输出。


Note

在参考中文wiki的过程中,如果遇到一些疑问,您可以点击页面右上角切换到英文wiki参考,两者有补充。

产品特征

创意应用

硬件概述

入门指导

1. 系统配置与驱动安装

step 1. 把ReSpeaker 2-Mics Pi HAT插入到Raspberry Pi

把 ReSpeaker 2-Mics Pi HAT 插入到 Raspberry Pi, 确保插入Raspberry Pi的时候针脚对齐。

Note

不要在上电的时候,热插拔ReSpeaker 2-Mics Pi HAT.

connection picture1 connection picture2 connection picture3

step 2. 烧录系统,登陆,换源

因为当前的Pi内核目前不支持wm8960编解码器,所以我们需要手动构建。

  1. 确保您正在您的Pi上运行最新的Raspbian操作系统(debian 9),您可以用etcher进行系统烧录

  2. 您可以用 VNC或者PUTTY连接树莓派,但之前请配置好wifi

  3. 在安装驱动之前,请根据以下流程切换源到清华。

sudo nano /etc/apt/sources.list

如果是用#注释掉原文件内容,用以下内容取代:

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

Note

如果是2019-06-20之前版本 需要将buster修改为Stretch可以通过cat /etc/rpi-issue查看是什么时候发布的版本

step 3. 驱动下载并安装 运行下面命令

sudo apt-get update
sudo apt-get upgrade
git clone https://github.com/respeaker/seeed-voicecard.git
cd seeed-voicecard #下载声卡驱动
sudo ./install.sh  --compat-kernel #安装声卡驱动
reboot  #重启

Note

若驱动安装失败您可以跳转到FAQ的Q1以解决驱动安装失败问题。

step 4. 检查声卡名称是否与源代码seeed-voicecard相匹配.

pi@raspberrypi:~/seeed-voicecard $ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: ALSA [bcm2835 ALSA], device 0: bcm2835 ALSA [bcm2835 ALSA]
  Subdevices: 8/8
  Subdevice #0: subdevice #0
  Subdevice #1: subdevice #1
  Subdevice #2: subdevice #2
  Subdevice #3: subdevice #3
  Subdevice #4: subdevice #4
  Subdevice #5: subdevice #5
  Subdevice #6: subdevice #6
  Subdevice #7: subdevice #7
card 0: ALSA [bcm2835 ALSA], device 1: bcm2835 ALSA [bcm2835 IEC958/HDMI]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 1: seeed2micvoicec [seeed-2mic-voicecard], device 0: bcm2835-i2s-wm8960-hifi wm8960-hifi-0 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0

pi@raspberrypi:~/seeed-voicecard $ arecord -l
**** List of CAPTURE Hardware Devices ****
card 1: seeed2micvoicec [seeed-2mic-voicecard], device 0: bcm2835-i2s-wm8960-hifi wm8960-hifi-0 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
pi@raspberrypi:~/seeed-voicecard $

2. 录音播放测试

step 1. 录播测试 可以用arecord录制,然后用aplay播放:(不要忘记插耳机或者喇叭):

arecord -f cd -Dhw:1 | aplay -Dhw:1

也可以通过audacity软件测试。打开Audacity后,选择 AC108和2通道 作为输入,bcm2835 alsa: - (hw:0,0) 作为输出来测试:

$ sudo apt update
$ sudo apt install audacity
$ audacity                      // 运行 audacity

step 2. 调节音量(可跳过)

alsamixer 是用于配置声音设置和调整音量,高级Linux声音体系结构(ALSA)的图形混音器程序。

alsamixer

Note

首先请用F6选择seeed-2mic的声卡设备。

左和右箭头键用于选择通道或设备,“向上和向下箭头”控制当前所选设备的音量。 退出程序使用ALT + Q或按Esc键。 More information

控制APA102 LED的示例

每个板载APA102 LED都有一个额外的驱动芯片,驱动芯片设置LED的颜色,然后保持该颜色,直到接收到新的命令。

请在执行之前打开SPI,具体步骤如下:

1
2
3
4
5
6
- 输入: `sudo raspi-config`;- 选择 "Interfacing Options";- 选择 "SPI";- 选择 “Yes”  - 选择 “OK”- 选择 “Finish”

配置完后,可以执行下列命令行来运行led示例

cd ~/
git clone https://github.com/respeaker/mic_hat.git
sudo pip install spidev #安装spi的驱动
cd mic_hat
python pixels.py


如何使用用户自定义按钮

板子上面有个用户自定义按钮,连接到GPIO17. 我们可以调用python和RPi.GPIO来读取状态。

sudo pip install rpi.gpio    // install RPi.GPIO library
nano button.py               // copy the following code in button.py
import RPi.GPIO as GPIOimport timeBUTTON = 17GPIO.setmode(GPIO.BCM)GPIO.setup(BUTTON, GPIO.IN)while True:
    state = GPIO.input(BUTTON)
    if state:
        print("off")
    else:
        print("on")
    time.sleep(1)

Save the code as button.py, then run it. It should display "on" when you press the button:

python button.py
off
off
on
on
off