基于TMS320C5416的非特定人识别智能声控垃圾桶系统设计

2018-04-26 08:51辽宁工程技术大学软件学院张家欣许树华姜彦吉
电子世界 2018年7期
关键词:垃圾桶语音单片机

辽宁工程技术大学软件学院 张家欣 许树华 姜彦吉

0 引言

为满足人们对智能生活的需求,各种智能化家居产品已经渐渐走我们的生活。垃圾桶作为生活中不可或缺的一部分,应用广泛。市面上的垃圾桶分两类:无盖垃圾桶和有盖垃圾桶,无盖垃圾桶虽然方便,但很难避免气味散发;有盖垃圾桶在扔垃圾时需要手动打来盖子,很容易沾染上脏东西和细菌,不卫生也不方便。[1]-[2]

鉴于上述情况,本系统通过单片机控制电机,并将语音识别技术结合应用到垃圾桶控制中,用户可以通过语音指令“打开”“关闭”控制垃圾桶盖,不需要触碰,更加卫生方便;同时,利用压力传感器,设定单片机采集值,设定垃圾桶提醒用户及时倒垃圾,具有较好的实用性。

1 语音识别技术

语音是一种具有时变性和非稳定特性的模拟信号[3],依据对说话人说话形式的要求,可分为孤立字 (词) 、连接词和连续语音识别系统;根据对说话人的依赖程度,可分为特定人和非特定人语音识别系统;根据词汇量的大小,可分为小词汇量、中等词汇量、大词汇量以及无限词汇量语音识别系统[4]。本文将采用非特定人语音识别系统来实现智能声控垃圾桶的设计。

2 系统硬件架构设计

系统硬件架构包括主控芯片STC12C5A60S2,语音识别模块、电机模块、压力传感器模块、LED小灯,咪头。用户发出的语音命令通过咪头接收,语音识别模块对通过咪头传来的指令进行识别,主控芯片接收并分析语音识别芯片的处理结果同时驱动电机,完成桶盖的开启关闭工作。压力传感器采集压力数值,单片机将采集值与设定值对比,持续大于设定值时间超过24小时点亮LED小灯,作为用户清理垃圾的提醒。硬件系统架构设计图如图1所示。

图1 系统硬件总体结构图

2.1 主控芯片

主控芯片采用宏晶科技的STC12C5A60S2单片机,片上具有8kbyte在系统可编Flash存储器,Flash允许程序存储器在系统可编程的同时也适用于常规编程器[5];写入单片机的程序还可以进行加密,具有安全、操作简单、方便等优点。STC12C5A60S2单片机引脚图如图2所示。

图2 STC12C5A60S2单片机引脚图

2.2 语音识别模块

TMS320C5416是TI公司的DSP处理器,芯片运算速度快,可以达到30MIPS-532MIPS;具有优化的CPU结构;功耗低;智能外设,除了标准的串行口和时分复用串行口外,还提供自动换长虹串行口和与外部处理器通信的HPI接口[6]。TMS320C5416结构框图如图3所示。

图3 TMS320C5416结构框图

2.3 电机模块

电机模块的作用是控制垃圾桶盖的开启和关闭。当用户发出“打开”的语音请求时,单片机对语音信号进行识别处理,继而通过电机正转实现打开垃圾桶的要求, STOP1闭合,电机正转停止;当用户发出“关闭”的语音请求时,通过电机的反转实现要求,STOP2闭合,电机反转停止[7]。本系统采用L298N电机,电机电路和限位开关电路如图4(a)(b)所示。

图4(a) L298N电机电路

图4(b) 限位开关电路

2.4 压力采集模块

考虑到成本和性能以及实现功能,压力采集模块采用的是YZC-133压力传感器,YZC-133为一款高精度传感器, 精度达1g,合金钢材料,防水、防油、防腐蚀,可适用于各种环境;S型梁结构设计,给安装和使带来了很大的便利;同时,还具有有响应速度快、抗干扰性强等优点。YZC-133压力传感器通过串口连接STC12C5A60S2单片机来完成压力采集工作。

3 软件设计

软件设计的编程语言使用C语言,面向DSP的C语言程序设计有它自身的特点,它主要面向实时处理的程序设计,有效、使用、简洁[8]。

系统集成开发环境采用CCS。CCS是由TI公司提供的一个将代码调试工具和代码生成工具集成于一体的DSP集成开发环境,用户可以通过CCS平台结合仿真器等硬件调试工具对硬件进行调试、程序仿真和开发。[9]CCS支持C语言编写的程序调试和开发。

基于STC12C5A60S2的智能语音识别垃圾桶系统程序主要分为语音识别、电机控制、提醒模块部分。系统程序主流程图如图5所示。

图5 系统主流程图

3.1 TMS320C5416语音识别

系统选用TMS320C5416芯片作为语音识别芯片,芯片对用户发出的语音信号进行特征提取、分析和语音识别,最后将结果输出[10]。语音识别模块流程图如图6所示。

图6 语音识别模块流程图

图7 提醒模块流程图

3.2 电机控制模块

电机控制模块用来实现垃圾桶相关控制动作,单片机通过分析从串口传入的语音识别芯片处理结果字符串实现开关垃圾桶盖控制动作。将启动函数的形式参数 的类型从 unsigned long 改为了 signed long,我们用有符号数固有的正负特性来区分正转与反转。针对终止电机转动的操作,我们定义了一个单独的 StopMotor 函数来完成。

3.3 提醒模块

在日常工作中,人们常常会因为工作忙等原因忘记倒垃圾,垃圾便会散发出难闻的气味,给人们带来卫生隐患。提醒模块的作用正是及时提醒用户倒垃圾,防止上述情况的发生。

STC12C5A60S2单片机利用串口接收来自桶底YZC-133压力传感器的压力值检测值,设定压力阈值为10g,当压力传感器检测压力数值大于等于10g并且持续时间大于等于24小时,系统将会认为用户已经超过24小时没有清理垃圾桶内的垃圾,此时做出提醒,点亮LED小灯。提醒模块程序流程图如图7所示。

4 测试结论与分析

为更好地实现系统功能和达到更好的语音识别效果和提醒效果,测试选择了5个不同音色的人进行测试,每个指令每个音色的人测试200次,部分测试结果见表1。

表1 语音测试结果

由表1可见,该系统对于非特定人语音识别准确率为93.84%,准确度较高。

5 结论

本文设计的基于STC12C5A60S2单片机的非特定人识别智能声控垃圾桶,以TMS320C5416做为语音识别模块,系统识别率高,实现了垃圾桶可以根据用户“命令”开启或关闭桶盖功能,并利用压力传感器采集数值,实现对用户及时清理垃圾的提醒。硬件选型合理,功能设计较为完善,使用方便智能,具有较好的应用价值。

[1]何侃.基于LD3320语音识别智能垃圾桶设计[J].中国科技核心期刊,2015,3(6)∶85.

[2]范馨予.基于SPCE061A的智能垃圾桶设计[J].电子世界,2017(17)∶113.

[3]高雪.语音识别技术在人机交互中的应用研究[D].北方工业大学,2011.

[4]禹琳琳.语音识别技术及应用综述[J].现代电子技术,2013,36(13)∶44.

[5]余炽业.基于STC12C5A60S2的智能循迹小车[J].实验室研究与探究,2014,33(11)∶47.

[6]申若虹.基于TMS320C5416的DSP系统设计研究[J].机械工程与自动化,2010(04)∶173.

[7]张庆芳.基于语音识别的垃圾桶设计[J].电脑知识与技术,2017(19)∶142.

[8]张勇.C/C++语言硬件程序设计——基于TMS320C5000系列DSP[M].西安∶西安电子科技大学出版社,2003∶12.

[9]徐岩,王春丽.语音信号增强技术及其应用[M].科学出版社有限责任公司∶科学出版社有限责任公司,2014∶293-295.

[10]刘培.基于DSP的G.729语音编解码算法研究及实现[D].天津大学,2008.

猜你喜欢
垃圾桶语音单片机
垃圾桶等
投进垃圾桶的信
投进垃圾桶的信
飞进垃圾桶
基于单片机的SPWM控制逆变器的设计与实现
魔力语音
基于单片机的层次渐变暖灯的研究
基于MATLAB的语音信号处理
基于MQ3与MP3的价廉物美的酒驾语音提醒器
基于单片机的便捷式LCF测量仪