• 收藏
  • 加入书签
添加成功
收藏成功
分享

基于语音控制的智能小车

孙子怡 万晓 谭飞
  
西部文化媒体号
2022年89期
无锡太湖学院 智能装备工程学院 江苏无锡 214064

打开文本图片集

摘要:伴随电子产品行业的蓬勃发展,具有语音控制功能的小车逐渐获得人们的喜爱,在我们的平时消费生活中起着不能忽略的重要作用。目前,声控科技已在许多行业得以应用。本文设计的是一种可语音识别遥控的小车。小车具有以下功能:语音控制和手动控制前进后退、左转右转、停止,寻迹避障。硬件部分包括红外遥控、驱动模块、感应模块、显示模块、语音识别模块,语音播报模块,其中遥控是由红外遥控和接收头组成;驱动模块是由双路H桥电机PWM驱动模块与两个直流电机组成;感应模块由红外避障模块和寻迹模块组成;显示模块使用的LCD1602;语音识别使用的是语音模块LD3320,语音播报模块是JQ8900-16P。采用的控制核心是STC89C52RC单片机。经过测试,当外界的声音较为安静,且操纵者的口齿流利时,语音控制小汽车的语言识别系统可以准确地接收到用户的声音,并根据这些声音进行相应的操纵,从而实现期望的目标。当各感应模块接收到信号后反馈单片机程序进行运算处理,发出指令信号控制驱动模块,然后驱动模块控制电机正反转,使小车能够进行所需的运动。本文首先详细阐述了系统的方案,接着深入剖析了各个单元的软件和硬件工作原理,最后全面总结出了该系统的主要构成部分。

关键词:语音识别;寻迹避障;小车

1.总体设计

1.1系统方案的选择

主体模块考虑使用STC89C52控制小车。52单片机编程简单方便,使用比较灵活,价格也便宜,通过与其他单片进行比较,52单片机存储空间较大,内部结构虽然不够丰富,但其功能完全满足本次设计。语音控制模块考虑使用LD3320+STC11L32XE。LD3320具有良好的语音识别性能,能够准确识别各种语音指令,结合STC11L32XE可进一步提升整体的识别精度。二者搭配可以较好地处理复杂的语音信号和数据,确保小车能及时、准确地响应,让使用者获得流畅的控制体验。

2总体框架

如图 21图为智能语音控制小车的功能控制总体设计框图

按照所选的单片机和智能语音控制小车的控制总体设计框图,设计如下系统:语音控制系统、显示控制系统、手动控制系统、寻迹避障系统和电动小车的控制系统最终组合成设计方案。整个系统分为以下七个部分:

(1)语音识别:语音识别用的是LD3320模块,比较方便,不用提前录入语音,只要说出指令,就可以执行命令[2]。首先,通过语音识别,然后将信号传输到单片机,单片机根据接收到的信息,对小车进行相应的操控。

(2)手动控制:操作红外遥控器控制小车,具有手动控制小车的前进后退和左转右转和选择手动控制、语音控制、寻迹避障等功能。

(3)寻迹:寻迹模块在检测到物体时将发出高电平信号,单片机接收到高电平信号后根据小车目前的状态做出不同的动作,当右侧寻迹模块检测到物体时小车左转,当左侧寻迹模块检测到物体时小车右转,两个都检测不到就直行。

(4)自动避障:当红外模块检测物体时,左边模块检测到障碍物,单片机控制小车向右转,右边模块检测到障碍物时,单片机控制小车向左转,中间模块检测到障碍物时,小车左转,左右同时模块检测到障碍物时小车直行。

(5)小车运动控制原理:一个轮子由一个直流电机控制。两个电机正转时,小车前进;两个电机反转时,小车后退;左侧反转右带正转时,小车左转;左侧正转右侧反转时,小车右转。由单片机I/O口来控制驱动模块,从而控制小车轮子正反转。

3.硬件设计

本系统硬件主要是由八大模块构成:小车底盘、单片机模块、语音控制模块、电机驱动模块、稳压模块、寻迹模块、避障模块、显示模块、语音播报模块。

3.1STC89C52单片机简介

STC89C52RC是一款先进而又节省能源、表现优异的低功耗集成控制器,它采用MCS-51芯片,并且在功率方面做出了巨大提升,其中包括 8KB的闪存,使得它在处理复杂任务时,表现优于传统51芯片。STC89C52RC拥有8 位微处理器[3],并且具备丰富的可编程闪存储能力,因此它具备极高的应用便捷性。最小系统是使单片机正常运行的最简单配置。如图 31所示为单片机最小系统电路图。

3.2驱动模块

L298N型号的直流电机驱动芯片,其外形精致、重量极低,而且拥有卓越的驱动性能,可以根据需要调整电机的电压,从而达到正反转的功效[3]。

3.3语音控制模块

语音识别用的是LD3320模块,比较方便,不用提前录入语音,只要说出指令,就可以执行命令。使用5V供电,内部电路和串口电压为3.3V。语音模块和单片机之间通过串口通信的方式控制小车,用蓝牙实现无线连接,txd和rxd是串口通信引脚。

3.4稳压模块

电路供电采用的是LM324开关稳压芯片,VCC,GND输入,Vout,GND输出。此模块输入为4V-35V,输出为2V-30V电压可调,转换效率高。

3.5寻迹模块

当寻迹模块的红外对管无法检测到黑线时,红外接收管将会被关闭,而开关指示灯也将会处于关闭状态,DO输出将会变为高电平。但是,如果能够检测到黑线,开关指示灯将会被打开,DO输出将会变为低电平。此外,供电与单片机一样,也是5V。DO可以用来向单片机发送数据。

3.6避障模块

避障模块比较器使用LM324,模块使用5V供电,接电后绿色电源指示灯点亮。输出口DO可直接和单片机I/O口连接。通过调节模块上的电位器可以自行改变探测距离。当检测到障碍物时DO输出低电平,没有障碍物时高电平。

4.软件设计

4.1 软件开发环境

大学期间常用开发环境是Keil,不仅可以进行程序编写、编译和下载,还可以做一个工程里面可以包含多个程序文件,对大型系统开发起到很大的帮助。

4.2 程序主程序设计

语音识别小车的主程序主要分为四个,分别为遥控、语音、寻迹、避障

(1)遥控部分:通过使用Mini红外遥控器及其配套的接收模块,可以将遥控器发射的信号经过处理,并将其通过单片机I/O口传输至电机驱动模块,以控制小车的履带及其前后方向的运动。

(2)语音部分:通过将语音模块与单片机串口连接,可以在小车运行期间,通过收集串口中的信息,并将其与特定的约束条件进行匹配,从而生成一系列的操纵命令,从而调节小车的运行状态,使其能够顺利地进行前进或倒退

(3)寻迹部分:当寻迹模块检测到黑线时,它的输出端会发出一个低电平信号,以便在寻迹的过程中,单片机能够监测I/O口的电平[4],一旦发现低电平,就会根据小车目前的运动情况,控制驱动模块,并发出不同的指令。当左侧寻迹模块检测到轨迹时小车左转,右侧寻迹模块检测到轨迹时小车右转,都检测不到轨迹时,小车直行。

(4)避障部分:采用的是红外感应模块,红外模块是检测小车和障碍物的距离,使小车在规定距离内躲避运动。

4.3系统子程序设计

4.3.1 遥控子程序设计

遥控部分使用Mini红外遥控器和红外接收模块,使用的是遥控自带的键值,我们需要提前设置好前进后退代码,在遥控程序运行之初要先使轮子静止,在程序初始位置写入使轮子静止的程序。当红外遥控器发射的数据被软件解码,并通过I/O口将其转换为控制电机的指令,这样就可以让小车实施特定的运算。

红外解码原理是红外接收头在接收遥控器发出的红外信号时先产生下降沿,进入外部中断0的中断函数中。4.5ms后检测输出口是不是低电平,如果是就先等9ms的低电平过去。等整个9ms低电平过去,然后再等4.5ms的高电平过去[5]。接着开始接收传送的用户码,用户反码,数据码,数据反码。在560us的电平到达之前,需要观察高电平的持续时间,若不小于1.12ms,即可将其视作1。在此期间,应该保持9ms的电平,并在4. 5ms的电平到达之前进行检测[5]。通过对比接受的信息与其对应的码,单片机可以检查码与码之间的相似性,若相同,就会被记录下来,若差异明显,就会被抛弃。

4.3.2语音子程序设计

语音部分采用的是语音模块和单片机串口通信的方式实现的。当小车处于语音控制时,单片机不断检测串口传来的数据,然后通过和不同约定码比对,单片机输出相应的动作指令去控制驱动模块。控制小车进行对应操作。小车前进、后退、左转、右转、停止所对应的语音指令为“qian”、“hou”、“zuo”、“you”、“ting zhi”。在程序运行之初要先使轮子静止,在程序初始位置写入使轮子静止的程序。

4.3.3寻迹子程序设计

寻迹模块在检测到黑线时将发出低电平信号,没有检测到黑线发出高电平。单片机接收到电平信号后根据小车目前的状态做出不同的动作,当右侧寻迹模块检测到物体时小车右转,当左侧寻迹模块检测到物体时小车左转,两个模块都检测不到黑线时就直行。

4.3.4避障子程序设计

在程序运行之初要先使轮子静止,在程序初始位置写入使轮子静止的程序。当单片机检测到路面上的障碍物时,它会自动控制小车朝左或右方向移动,如果没有发现障碍物,则保持原路不变。在这种情况下,小车可以安全地行驶。

5.测试结果和误差分析

(1)使用红外遥控器,您可以轻松切换语音、远程操控、自动导航和自动避障四种模式,同时还能够远程控制小车的行驶方向。经测试,红外遥控器发射距离为0-8米,有效角度60度,遥控器与接受头之间不能有遮光障碍物;

(2)根据实验结果,当外部环境的55分贝噪声较低的情况下,“qian”、“hou”、“zuo”、“you”、“ting zhi”就能够轻松地控制,从而实现对汽车的正确驾驶。

(3)在寻迹模式下,左寻迹模块检测到黑线时,小车左转。右寻迹模块检测到黑线时,小车右转。小车可以正常寻黑线行驶,不会脱离轨道。经测试,在正常室内光环境和黑暗环境时,寻迹模块工作正常,可满足大多数环境,适应性较强。

(4)经测试,在避障模式下,中间的模块检测到障碍物时,小车向左转。左边模块检测到障碍物时,小车向右转,右边模块检测到障碍物时,小车向左转,三个模块检测不到障碍物时小车直行。小车可以在正常行驶中躲避前方障碍物。经测试,在正常室内光环境和黑暗环境时,避障模块工作正常。

(5)经测试,通过遥控器切换控制模式,当按键按下时,小车会语音播报当前控制模式。

结束语

基于语音控制的智能小车是当代科技与工程领域的融合产物,它将语音识别技术应用于传统智能小车的控制中,为用户提供了一种更为直观、便捷的操作方式。通过内置的语音识别系统,用户可以简单地通过语音指令控制小车的移动、停止、转向以及执行特定任务,极大地提高了用户体验的便捷性和智能化水平。随着技术的不断进步和市场的不断扩大,基于语音控制的智能小车将会得到得到更广泛的应用和发展。未来,随着技术的不断进步,智能小车将成为各行各业的核心力量,它将极大地改善人类的出行方式,提供更加便捷的智慧服务。

参考文献

[1]王宝萍. 玩具智能小车控制系统的设计与实现[D]. 电子科技大学, 2012.

[2]王中心, 王东方, 王亚伟, et al. 基于LD3320语音识别模块的智能家居声控系统[J]. 物联网技术, 2016(11):24-26.

[3]韩竺秦, 牛王元, 李玉华, et al. 基于STC89C52的太阳能追踪系统设计[J]. 电子质量, 2016(2):31-34.

[4]钟修皓, 王晓虹, 刘文壮, et al. 智能语音巡检机器人系统的设计与实现[J]. 电子设计工程, 2015(15):5-7.

[5]李志强, 彭友云. 基于单片机的红外通信接口的设计[J]. 轻工科技, 2007, 23(3):50-50.

*本文暂不支持打印功能

monitor