【雕爷学编程】Arduino动手做(160)---HLK-V20离线语音模块3

news2025/1/5 9:05:45

37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手试试多做实验,不管成功与否,都会记录下来——小小的进步或是搞不掂的问题,希望能够抛砖引玉。

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
实验一百六十:海凌科HLK-V20 AI智能离线语音识别模块 150条本地指令离线识别

在这里插入图片描述

海凌科人气语音模组V20改词攻略(可以修改唤醒语和命令词)

专用烧录器
在这里插入图片描述
在这里插入图片描述

第一步,注册一个云知声通行证账号
https://udp.hivoice.cn/login

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

第二步,进入产品控制台,选择创建一个应用

在这里插入图片描述

第三步,进入设备场景,选择需要的语音版本
在这里插入图片描述
在这里插入图片描述
第四步,选择系统与设备类型——蜂鸟M芯片+通用设备平台

在这里插入图片描述
第五步,创建产品版本

在这里插入图片描述

第六步,配置SDK能力,前端信号处理

在这里插入图片描述
第七步,Pin脚配置

在这里插入图片描述

第八步,自定义唤醒语

在这里插入图片描述
在这里插入图片描述

第九步,自定义离线命令词与应答语

语法格式为:
action=命令词1|命令词2…@回复语

例:TempSet15=设置十五度|十五度@已设为十五度
action、命令词、回复语均由用户定义

  1. action由英文、下划线“_”和数字组成,必须英文开头,不区分大小写,15个字符内
  2. 命令词最多支持150条,每条限 2 - 10 个字符,仅支持中文
  3. 一个action最多支持一个”@”定义回复语,单条回复语不得超过500个字符,支持中英文、数字、逗号、句号、问号
    action一个控制指令的唯一标识,用户对着设备说出“设置十五度”“十五度”并被语义理解时,如已对接设备,语义理解模块会将TempSet15传给设备。

命令词想要定义的语音话术,用户必须按照定义的话术说出才有效。如用户可以使用“设置十五度”“十五度”来实现同一个设置温度15度的控制。

回复语针对该条控制指令的设备回复播报。
回复语中支持标签,来指定某些字播报时的读音:
:需要对单个汉字的发音进行纠正的场合。
注:拼音声调范围为 1 - 5,1 - 4 对应一声到四声,5对应轻声。
例:已调tiao2至中zhong1风档
播报为:已调(tiao2)至中(zhong1)风档
:需要将数字按照数值读法播报
例:已设为15度
播报为:已设为十五度
:需要将数字按照数字串逐位播报
例:已设为15
播报为:已设为一五度

在这里插入图片描述
在这里插入图片描述
第十步,设置免唤醒词

在这里插入图片描述

第十一步,配置发音人

在这里插入图片描述

第十二步,设置其他配置

在这里插入图片描述

通过命令词”打开灯光”,对应模块上 B6 引脚,继电器模块接通5V灯光电源,打开灯光;使用命令词”关闭灯光”,继电器模块断开5V灯光电源,LED 灯带熄灭。见视频

https://v.youku.com/v_show/id_XNDk5NzYwNDEyNA==.html

在这里插入图片描述

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)

实验一百六十:海凌科HLK-V20 AI智能离线语音识别模块 150条本地指令离线识别

项目测试:语音识别HLK-V20控制三色LED灯模块及自动调光

实验开源代码

/*
  【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
  实验一百七十一:HLK-V20 AI智能离线语音识别模块 150条本地指令离线识别
  项目测试:语音识别HLK-V20控制三色LED灯模块及自动调光
  模块接线:
  HLK_V20   Arduino
  VCC         5V
  GND         GND
  TX          D0
  RX          D1
  三色LED灯 Arduino
  R           D5
  G           D6
  B           D7
  -           GND
*/

String hlk;
int ledPin = 6;//定义Led引脚,输出PWM

void setup() {
  Serial.begin(115200);
  hlk = "";
  pinMode(5, OUTPUT);
  pinMode(ledPin, OUTPUT);
  pinMode(7, OUTPUT);
  digitalWrite(5, LOW);
  digitalWrite(ledPin, LOW);
  digitalWrite(7, LOW);
  Serial.println("HLK_V20 准备就绪");
}

void loop() {
  while (Serial.available() > 0) {
    hlk = String(hlk) + String(char(Serial.read()));
  }
  if (String(hlk).indexOf(String("openled")) != -1) {
    digitalWrite(5, HIGH);
    digitalWrite(ledPin, HIGH);
    digitalWrite(7, HIGH);
    Serial.println("播报语:已为您打开灯");
    hlk = "";

  } else if (String(hlk).indexOf(String("closeled")) != -1) {
    digitalWrite(5, LOW);
    digitalWrite(ledPin, LOW);
    digitalWrite(7, LOW);
    Serial.println("播报语:已为您关闭灯");
    hlk = "";
  }
  else if (String(hlk).indexOf(String("ksetcolorred")) != -1) {
    digitalWrite(5, HIGH);
    digitalWrite(ledPin, LOW);
    digitalWrite(7, LOW);
    Serial.println("播报语:好的");//调为红色灯
    hlk = "";
  }
  else if (String(hlk).indexOf(String("zengjialiangdu")) != -1) {
    for (int i = 0; i < 255; i++) { //每次+1的循环
      analogWrite(ledPin, i); //LED的亮度逐渐增加
      delay(8); //延时8毫秒
      }
      digitalWrite(5, LOW);
      digitalWrite(7, LOW);
      Serial.println("播报语:好的");//增加亮度
      hlk = "";
    }
    else if (String(hlk).indexOf(String("jianxiaoliangdu")) != -1) {
      for (int i = 255; i > 0; i--) { //每次-1的循环
        analogWrite(ledPin, i); //LED的亮度逐渐减小
        delay(8); //延时8毫秒
        }
        digitalWrite(5, LOW);
        digitalWrite(7, LOW);
        Serial.println("播报语:好的");//减少亮度
        hlk = "";
      }
    }

实验串口返回情况

在这里插入图片描述
Arduino实验场景图
在这里插入图片描述

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
实验一百六十:HLK-V20 AI智能离线语音识别模块 150条本地指令离线识别
项目测试:语音识别HLK-V20控制三色LED灯模块及自动调光(实验视频36秒)

https://v.youku.com/v_show/id_XNTE2OTE4Mzc2OA==.html?spm=a2hcb.playlsit.page.1

后来查到,离线语音模块的核心处理器是采用中国本土US516P6 芯片,属于云知声AI蜂鸟m系列。

蜂鸟系列芯片是云知声最新一代专门为离在线远场语音交互场景设计的高性能,高集成度,低成本的语音智能芯片,主要面对智能家电,小家电,灯具,智能插座等产品领域。基于蜂鸟芯片的深度定制算法,云知声离线语音技术在远场拾音、声源定位、高性能识别、低功耗唤醒、自然音色、one-shot等方面都有不错表现。

Unisound AI芯片:蜂鸟M US516P6

特点:
1、简洁友好的客制化工具,可快速部署到不同的终端产品
2、可以针对设备具体的使用场景,配置不同的语音交互方案,自动生成SDK程序
3、单MIC,识别距离:0-5M
4、唤醒词自定义
5、150 条本地指令离线识别,离线命令词与应答语自定义
6、10条免唤醒命令词,无需唤醒,说出命令词即可控制设备
7、Pin 脚配置通过定制可以自动生成代码,实现GPIO、PWM、UART等端口根据语音指令输出自定义信号,无需代码开发即可控制外部设备
8、多种发音人音色:提供标准女声、甜美女声、可爱女声、台湾女声、标准男声、女童声、男童声七种音色可选
9、稳态降噪功能
10、识别率高达90%以上
11、OTA

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/754258.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Python中绘制正弦波形、余弦波形及其复合波形的应用举例

Python中绘制正弦波形、余弦波形及其复合波形的应用举例 使用python进行绘图是其重要功能之一&#xff0c;本文讲解使用python进行正弦余弦波及其复合波形的绘制方法。 一、绘制正弦波 程序 import numpy as np import matplotlib.pyplot as plt tnp.arange(-10,10,0.1) yn…

NavigationStack, Toolbar 的使用

1. NavigationStack 导航堆栈的使用&#xff0c;NavigationView 已过时 1.1 实现 /// 导航堆栈 (懒加载) iOS 16 版本 新特性 struct NavigationStackBootcamp: View {let fruits ["Apple", "Orange", "Banana"]//["one","two…

信贷系统开发设计基础(二)

目录 架构演进篇 01 信贷架构演进概述 02 单体架构案例简介 03 单体系统群架构案例分析 04 微服务案例分析 架构演进篇 01 信贷架构演进概述 02 单体架构案例简介 03 单体系统群架构案例分析 04 微服务案例分析 总结&#xff1a; ---------------------------------------…

MySQL数据库管理——用户管理(二)

文章目录 一.表结构(增加字段)1.创建表结构2.复制数据表2.1 复制格式2.2 克隆表 3.清空表&#xff0c;删除表内的所有数据4.创建临时表 二.MySQL中6种常见的约束1.外键的定义2.创建外键约束作用3.创建主表blue4.创建从表Icecream5.为主表blue添加一个主键约束。主键名建议以&qu…

复习第四课 C语言-分支语句和循环

目录 【1】字符输入输出 【2】C语言下的垃圾字符回收 【3】分支语句 【4】循环 练习&#xff1a; 【1】字符输入输出 按字符的输入输出 int getchar(void); 功能&#xff1a;从终端输入一个字符 参数&#xff1a;无 返回值&#xff1a;输入字符的ASCII值int putchar(int…

中信银行西安分行举办金融助力外贸企业“走出去“高端论坛

7月14日&#xff0c;中信银行西安分行联合中国出口信用保险公司陕西分公司、西安市工商联举办"智汇西安、信融全球"——金融助力外贸企业"走出去"高端论坛。该论坛紧跟“加快建设贸易强国”的战略指引&#xff0c;以创新金融服务助力外贸企业融入高水平对外…

ConfigMap/Secret:配置、定制我的应用

首先你要知道&#xff0c;应用程序有很多类别的配置信息&#xff0c;但从数据安全的角度来看可以分成两类&#xff1a; 一类是明文配置&#xff0c;也就是不保密&#xff0c;可以任意查询修改&#xff0c;比如服务端口、运行参数、文件路径等等。另一类则是机密配置&#xff0…

VTK 种子小部件 SeedWidget

Part1 vtkSeedWidget介绍 vtkSeedWidget 用于在场景中放置多个种子点。种子点可用于诸如连通性&#xff0c; 区域生长分割算法之&#xff0c;分割等。 效果图&#xff1a; vtkSeedWidget默认交互操作&#xff1a; 1. 鼠标点击widget上空白位置放置种子点 2. 鼠标移入种子点&am…

【测试开发】测试用例的设计方法

目录 一. 测试用例的基本要素 二. 测试用例的设计方法 1. 测试用例设计的万能公式 水杯测试用例 2. 基于需求的设计方法 邮箱注册测试用例 3. 等价类方法 有效等价类和无效等价类 等价类思想设计测试用例步骤 4. 边界值方法 边界值思想设计测试用例步骤 5. 判定表方法…

51单片机的智能交通控制系统【含仿真+程序+演示视频带原理讲解】- 未完稿

51单片机的智能交通控制系统【含仿真程序演示视频带原理讲解】 1、系统概述2、核心功能3、仿真运行及功能演示4、程序代码 1、系统概述 该系统由AT89C51单片机、LED灯组、数码管组成。通过Protues对十字路口红绿灯控制逻辑进行了仿真。 每个路口包含了左转、右转、直行三条车道…

SpringCloud Alibaba——Nacos1.x作为注册中心的原理

目录 一、原理二、原理步骤图解 一、原理 使用Http发送注册查询服务提供方列表定时拉取 (每10秒)检测到服务提供者异常&#xff0c;基于UDP协议推送更新定时心跳 (5秒)&#xff0c;检测服务状态定时心跳任务检查集群数据同步任务使用Distro 二、原理步骤图解 Nacos1.x作为注…

python的浅拷贝和深拷贝

1、结论 python中的拷贝有以下三种 变量的赋值操作 只是形成两个变量,实际上还是指向同一个对象 浅拷贝 Python拷贝一般都是浅拷贝&#xff0c;拷贝时&#xff0c;对象包含的子对象内容不拷贝&#xff0c;因此&#xff0c;源对象与拷贝对象会引用同一个子对象 深拷贝 使用co…

【C++】开源:Web文件服务器

&#x1f60f;★,:.☆(&#xffe3;▽&#xffe3;)/$:.★ &#x1f60f; 这篇文章主要介绍开源项目——Web文件服务器。 无专精则不能成&#xff0c;无涉猎则不能通。。——梁启超 欢迎来到我的博客&#xff0c;一起学习&#xff0c;共同进步。 喜欢的朋友可以关注一下&#x…

代码随想录day17

110. 平衡二叉树 首先是明白什么是平衡二叉树&#xff1a; 一棵高度平衡二叉树定义为&#xff1a; 一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过 1 。 然后&#xff0c;区别二叉树的高度和深度&#xff1a; 二叉树的高度&#xff1a;从叶子节点到根节点 二叉树的…

【C语言】多组输入

C系列文章目录 目录 C系列文章目录 一、什么是多组输入&#xff1f; 二、如何使用多组输入 2.1&#xff0c;试题举例讲解 2.2&#xff0c;错误解法 2.3&#xff0c;我们实现多组输入的思路 2.4&#xff0c;第一种正确的解法 2.5&#xff0c;第二种正确的解法 2.6&…

Exchange 服务器监控工具

Microsoft Exchange Server 是个消息与协作系统&#xff0c;提供了通常所需要的全部邮件服务功能&#xff0c;可以被用来构架应用于企业、学校的邮件系统或免费邮件系统。包括从电子邮件、会议安排、团体日程管理、任务管理、文档管理、实时会议和工作流等丰富的协作应用&#…

基于PyQt5的图形化界面开发——打砖块

目录 0. 前言1. 砖块类定义2. 挡板类定义3. 碰撞检测4. 小球和游戏初始化5. 完整代码6. 运行效果演示7. Pyinstaller 编译exe程序PyQt5 0. 前言 本文使用 PyQt5实现一个打砖块小游戏 操作系统&#xff1a;Windows10 专业版 开发环境&#xff1a;Pycahrm Comunity 2022.3 Pyt…

自学成为一名顶级黑客(网络安全)

一、自学网络安全学习的误区和陷阱 1.不要试图先成为一名程序员&#xff08;以编程为基础的学习&#xff09;再开始学习 行为&#xff1a;从编程开始掌握&#xff0c;前端后端、通信协议、什么都学。 缺点&#xff1a;花费时间太长、实际向安全过渡后可用到的关键知识并不多。…

加密与解密 解密篇 逆向分析技术 (一) 栈/调用约定

目录 逆向是什么 32位软件逆向技术 1.启动函数 2.函数 函数的识别 函数的参数 利用栈进行传递 下面是通过esp来寻址 通过寄存器来传递参数 例子 例子 函数的返回值 例子 例子 逆向是什么 将可执行程序反汇编 通过分析反汇编代码来理解其代码功能&#xff08;各个…

慢速减压控制技术在预防同步辐射光源和原位透射电镜氮化硅窗口膜真空中破裂的应用

摘要&#xff1a;氮化硅薄膜窗口广泛应用于同步辐射光源中的扫描透射软X射线显微镜和原位透射电镜&#xff0c;但氮化硅薄膜只有几百纳米的厚度&#xff0c;很容易因真空抽取初期的快速压差变化造成破裂。为此&#xff0c;本文提出了线性缓变压力控制解决方案&#xff0c;即控制…