查看: 4034|回复: 2

[大赛作品提交] 【进阶五】家庭陪伴小机器人语音识别功能

[复制链接]
  • TA的每日心情
    开心
    2018-9-6 15:08
  • 签到天数: 11 天

    连续签到: 1 天

    [LV.3]偶尔看看II

    发表于 2018-1-3 02:33:21 | 显示全部楼层 |阅读模式
    分享到:
    本帖最后由 ky123 于 2018-1-31 14:10 编辑

    硬件部分
    Dueros语音模块是百度度秘事业推出的语音识别硬件方案,其中本项目使用的是个人开发套件,主要适用于个人爱好开发者!
    该模块的主要功能是降噪和回声消除,提高音频的信噪比和实现播放音乐时语音打断!

    原理框图

    原理框图

    1.树莓派与麦克阵列的电信号连接关系
    树莓派与麦克阵列板通过 40pin 连接器连接,连接器信号包括:
    • I2C 控制信号
    • Reset 信号
    • 树莓派输出的音频信号线( PCM I2S 格式)
    树莓派与麦克阵列板 USB 连接:
    • MIC 阵列处理后音频信号上传
    • USB 5V 供电
    2.麦克阵列板包含主要器件
    • 1 颗音频信号处理器 CX20921
    • 2 颗数字 MEMS 麦克
    • 1 个 32Mb SPI Flash
    • 1 个 3.5 耳机接口,耳机信号输出
    • 1 颗 DAC+耳机放大器 TLV320DAC3203
    • 2 颗电源 LDO 3.3V 和 1.8V
    • 1 个 Micro USB 接口
    • 1 颗电源指示 LED
    3.主要接口说明
    • JP1: 40pin 连接器直接与树莓派 40pin 插针连接
    • J1: USB 口与树莓派 USB 口通过 Micro USB Cable 连接
    • J3: 用于外接其它数字 MEMS 麦克
    • J9:连接耳机或外部音箱和音频线
    • J10:音频信号处理器 I2S 输出及连接树莓派 PCM 输入

    模块接口图

    模块接口图

    安装以上接口连接即可!特别注意树莓派与模块之间的USB必须是含有数据线!(仅电源线不可行,实际使用时该USB也负责音频数据传输)
    软件部分

    操作系统:raspbian jessie
    编程语音:python

    1.配置网络
    修改以下路径的文件/etc/wpa_supplicant/wpa_supplicant.conf, 保存后重启树莓派生效。
    1. ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
    2. update_config=1
    3. country=GB

    4. network={
    5.         ssid="个人wifi SSID"
    6.         psk="个人wifi 密码"
    7.         key_mgmt=WPA-PSK
    8. }
    复制代码
    1.安装依赖包
    1. sudo apt-get update
    2. sudo apt-get install python-dateutil
    3. sudo apt-get install gir1.2-gstreamer-1.0
    4. sudo apt-get install python-pyaudio
    5. sudo apt-get install libatlas-base-dev
    6. sudo apt-get install python-dev     
    7. sudo pip install tornado
    8. sudo pip install hyper
    复制代码
    hyper库用来支持http2.0 client, pyaudio用来支持录音,tornado用来完成oauth认证。
    2.下载编译好的openssl和Python安装包,并进行安装
    *从如下地址下载openssl安装包*(链接: https://pan.baidu.com/s/1skAP6WH 密码: wknz)*从如下地址下载python2.7.14安装包*(链接: https://pan.baidu.com/s/1o8MHkzK 密码: ngx4) sudo tar -zxvf openssl1.1.tar.gz -C /usr sudo tar -zxvf python2.7.14.tar.gz -C /usr/local/ sudo rm -rf /usr/bin/python sudo ln -s /usr/local/python2.7.14/bin/python /usr/bin/python3.运行和测试
    授权
    1. ./auth.py
    复制代码
    直接运行使用默认的client_id和client_secret,开发者可以替换成自己在DuerOS开放平台申请的client_id和client_secret,进而实现在控制台自定义的配置属性。
    [size=0.875]app/auth.py
    [size=0.875]其中,
    需要在开放平台中“安全设置”的“授权回调页",设置成
    1. http://127.0.0.1:3000/authresponse
    复制代码
    4.添加唤醒识别脚本
    1. ./wakeup_trigger_start.sh
    复制代码


    验证“小度小度”即可唤醒设备,并实现交互!


    5.提供的交互内容
    • 音乐推荐、音乐点播、音乐收藏、音乐切换、音乐信息、音乐控制,比如
    • 支持节目推荐、节目点播、播放控制、订阅需求、节目查询,比如相声,京剧,电台、笑话、新闻等
    • 信息问答,天气,计算,翻译,汇率,时间,股票,汉语诗词等
    • 闹钟提醒


    更多信息参考:https://dueros.baidu.com官网及论坛

    GPIO口占用图

    GPIO口占用图
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2019-12-26 22:21
  • 签到天数: 310 天

    连续签到: 1 天

    [LV.8]以坛为家I

    发表于 2018-1-3 17:50:56 | 显示全部楼层
    配置过程很详细,不过如果要自定义动作要怎么设置了?
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    难过
    2021-2-27 22:16
  • 签到天数: 1568 天

    连续签到: 1 天

    [LV.Master]伴坛终老

    发表于 2018-1-3 21:03:51 | 显示全部楼层
    好喜欢机器人,个人买是不是很贵
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /2 下一条



    手机版|小黑屋|与非网

    GMT+8, 2024-4-30 08:25 , Processed in 0.142440 second(s), 23 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.