新能源汽车低电量运行下的无线测距及智能语音交互系统

2021-11-25 10:44王铭杰付大同孙小羊吴启琴
科技创新与应用 2021年33期
关键词:测距语音无线

王铭杰,田 源,付大同,孙小羊,吴启琴

(三江学院 电子信息工程学院,江苏 南京210012)

19世纪末20世纪初,燃油汽车的发明大大改变了人们的生活方式,随着嵌入式技术的发展,由燃油汽车衍生的车载空调、车载导航、车载MP3播放器、车载记录仪等智能化的电子产品同样随着燃油汽车的更新迭代迅速发展起来,并迅速投入应用,产生巨大的社会效益。随着时代的发展和科技的进步,在21世纪初,新能源汽车逐渐开始替代传统的燃油汽车进入人们的日常生活,电子设备的开发逐渐向新能源汽车领域渗透,其相关嵌入式产品的发展也遵循着同样的规律。

如今,随着国家政策的大力支持和节能减排观念的不断普及,蓬勃发展的新能源汽车及其相关产业,已经成为一种国家意志,逐渐发展成为不可阻挡的趋势。特别是与新能源汽车密切相关的汽车电子产品层出不穷,通过对近年来国内外相关电子产品的研究发现,现在的汽车电子产品绝大多数嵌入于汽车控制系统内部,通过汽车CAN总线进行实时电量的读取和开发,具备实时检测剩余电量,智能调整设备供电,低电量下语音提醒和声光警示的功能。然而对于部分缺乏汽车低电量运行下安全防范意识的车主来说,由于没有经验,单纯的声光提示并不能帮助他们以更有效的方式解决问题。所以,开发一款专用于为用户提供汽车低电量运行下的意外状况解决方案的装置很有必要。

因此,我们设计了该新能源汽车低电量运行下的无线网络测距及智能语音交互系统。将无线测距模块、语音识别模块和语音播报模块相结合,并集成在同一个装置中,区别于传统的放置于汽车内部需要通过CAN模块读取汽车数据的方案,该装置主要通过语音交互系统给出解决方案,无需和CAN总线相连,更无需了解CAN总线相关知识或使用高成本的CAN模块,大大降低了开发难度和开发成本,此外,我们辅以LORA模块对充电桩、服务区等网络节点进行高精度测距,令测距结果在OLED屏上显示出来,便于引导用户进行数据分析并做出合理决策。

1 系统设计与实现

本研究设计了一种基于STM32f103c8t6最小系统板的无线网络测距及智能语音交互系统,如图1所示,本系统以STM32单片机为核心,使用LORA无线测距模块、OLED显示模块、LD3320语音识别模块和XYV17B语音播报模块作为外围模块,组成一个无线测距及智能语音交互系统。

图1 系统设计框图

本系统创新性地将完善的预防及处理方案存储在语音播报的内容之中,并通过智能语音交互的方式完成全部功能的实现。该系统的工作流程如图2所示。

图2 系统工作流程图

2 系统硬件设计

2.1 语音识别模块

通过对市场上已有产品使用CAN模块从汽车上读取数据的方案分析和比较发现,语音识别方案无需考虑CAN总线通讯协议的一致性,更无需集成于车载系统内部,而且与传统的键盘输入和手动控制方式相比,语音识别更加符合人们的日常习惯,也更加方便快捷,车主无需使用双手便可对该装置进行控制,所以我们选择通过语音识别的方式控制该系统。

LD3320识别原理是非特定人语音识别技术ASR,是一个基于关键词语列表的匹配识别技术,算法本质是在提取输入声音的特征后,在关键词语列表中寻找一个和当前指令匹配度最高的拼音作为最终的结果。基于LD3320识别原理,我们采用增添相似关键词语的方法用于吸收错误识别,比如,某个应用场景中,需要识别的关键词语是4条:汽车低电量、开机、测距模式、新能源汽车省电方案。在把这几个关键词通过程序写进语音识别模块后,再另外设置与每个词语对应的2-3个相似词汇到程序里面,比如手机低电量、开门、距离、省电等。

因为内部LD3320是会对一次识别返回1个最优结果和3个备选结果序号的,只有当识别的结果在4个以内才会识别有效,我们取最优的结果存放到读取寄存器提供给用户读取。如果识别到的是无效的“相似关键词语”,如手机低电量、开门、距离、省电等。装置会给出不同的声光指示,表明是由其他无效的语音信息造成的误识别,如表1所示。

表1 语音识别模块

通过测试结果可以发现,添加相似关键词后,识别准确率从60%上升到90%,非常有效地提高了识别的准确率。极大地丰富了新能源汽车用户的主观使用体验。

语音识别关键词:汽车,低电量运行,省电措施,测距模式。

2.2 语音播报模块

XY-V17B是一款功能非常强大的智能语音播放模块,克服了其他语音播放模块缺乏曲目选择及控制功能的缺点,集成IO触发模式、UART串口模式、ONE_line单总线串口控制、标准MP3模式等功能,更加便于基于单片机的相关汽车电子产品的开发,支持MP3、WAV解码格式,可通过USB数据线连接电脑更新TF卡和U盘内容更改存储音频文件。

由于其相比于其他语音播报模块,XY-V17B具有支持U盘、TF卡存储容量大、可以通过控制引脚电平选择不同播放曲目的特点,适用于车载语音播报,所以采用了本模块作为该系统的语音播报模块。

XY-V17B共有5种工作模式,分别为标准MP3模式、I/O组合模式、I/O独立模式、UART串口模式、一线串口模式,可以通过3个配置IO进行选择。在本系统中选择使用I/O独立模式,配置CON1、CON2引脚为高电平,CON3为低电平,将需要播放的曲目存储在SD卡或U盘中,用IO0-IO7独立控制8首曲目,IO触发指定的曲目,一直循环播放指定曲目,电平释放即停止播放。播放中途释放电平,即刻停止播放(见图3)。

图3 XY-V17B外围模块、模式选择及音频放大电路原理图

2.3 LORA无线测距模块

XL1280-D01无线模块采用的是SEMTECH公司最新的LoRaTM调制技术的无线芯片,此芯片包含多样的物理层以及多种调制方式,如LORA、FLRC、GFSK。特殊的调制和处理方式使得LORA和FLRC调制的传输距离大大增加,且GFSK调制兼容蓝牙BLE协议。出色的低功耗性能、片上DC-DCTime-of-flight使得此芯片功能强大,可用于智能家居、安全系统、定位追踪、无线测距、穿戴设备、智能手环与健康管理等。

基于该LORA模块通信距离可达2-3km及以上且集成了TOF飞行时间测距的功能,可以满足新能源汽车低电量行驶情景下的测距需求,并且LORA模块本身就具有低成本、低功耗、抗干扰能力强的优点,选择其作为该系统的测距模块再合适不过。

2.4 无线测距方案

(1)使用一个SX1280作为主机,另一个位于充电桩或服务区的LORA模块作为从机,由用户指令触发后发起测距请求,同时主机开启内部定时器开始定时;

(2)从机收到测距请求后会同步该请求信号,然后把同步完的测距应答信号发送回主机,通过测量这个应答过程持续的时间,主机可以算出信号来回的飞行时间,进而得到测距的数据。

测距开始时,模块给目标连续发送射频信号,然后接收从目标返回的信号,这里将发射端发出信号和接收到接收端应答信号的时间间隔记为Tt,接收端收到主机发射的数据信号和发出应答信号的时间间隔记为Tr。信号在这对收发机之间的单向飞行时间Tf=(Tt-Tr)/2,则两点间的距离d=c*Tf,其中c表示电磁波传播速度,见图4。

图4 time-of-flight测距法

2.5 LORA模块无线测距实验

模块采用弹簧天线,由于此天线容易受外部线路影响,周围的金属物体对其测距结果影响较大,所以实验选择在空旷的平地进行,将从机固定于路边店铺旁约2m高的平台上(该店铺可以在手机导航上查找到),以保持最佳的通讯效果,此位置记为B点,测试人员携带着主机和电源徒步行走逐渐拉远接收节点B的距离,观察手机导航当前位置距离B点的距离,每50m做一次测量,一直测到500m,共计10次,分别记录实际值、平均值、最大值、最小值、误差值,如表2所示。

表2 模块无线测距实验表

通过对测距结果的分析,我们可以得出以下结论:LORA测距在短距离下测量误差较大约1-2m,随着测量距离的增加测量误差逐渐减小,当测量距离达到500m时,误差只有17-20cm,可以满足该系统对于测距的精度要求。

3 系统软件设计

系统主程序由语音识别子程序、OLED显示子程序、LORA1280测距子程序、XY-V17B语音播报子程序构成。

3.1 主程序设计思路

(1)初始化配置(系统时钟,OLED,I2C,UART,SX1280)。

(2)调用语音识别子程序,设置检测模式,写入语音识别指令。

(3)进入WHILE循环,并对所读指令进行判断。(4)对应不同指令,控制不同电平触发播放不同的MP3曲目。

(5)若识别到测距指令的ID号,则调用SX1280的测距子程序对各网络节点进行测距,并在OLED屏上显示出从车主当前位置到下一个充电站或服务区的距离。

3.2 LORA无线测距程序思路和技术路线

由图5可知,在测距操作期间,多个从机和多个主机可以处于通信范围内。但是,测距操作只能使用一个从机和一个主机。为了帮助从机区分主机和其他主机,响应范围内的其他主机,并寻址特定的从机,测距请求包含一个地址字段,从机在测距请求接收时对其进行检查。

图5 LORA无线测距流程图

首先,使用以下命令设置无线电应为测距操作生成的IRQ:

SetDioIrqParams(irqMask、dio1Mask、dio2Mask、dio3Mask)

并发出以下命令明确指定SX1280在测距操作中的作用:

SetRangingRole(角色),0x01为主机,0x00为从机。

然后,使用以下命令启动测距过程:

从站:SetRx(周期基准rx,周期计数rx)

主机方面:SetTx(周期basetx,periodCountTx)来读取测距结果:

将收音机设置为Xoscilator模式,并在LORA内存中启用时钟:

WriteRegister(0x97F,ReadRegister(0x97F)|(1<<1));

接着设置量程类型,读取量程寄存器:

WriteRegister(0x0924,(ReadRegister(0x0924)&0xCF)|((((resultType)&0x03)<<4));

valLsb=((ReadRegister(0x0961)<<16)|(ReadRegister(0x0962)<<8)|(ReadRegister(0x0963)));

最后,将无线电调回配置模式即可。

3.3 主函数测距例程

3.4 语音识别程序设计

3.4.1 设置检测模式

I2C_ByteWrite(ASR_MODE_ADDR,0)

3.4.2 设置识别语句

3.4.3 添加相似关键词,吸收错误语句

3.4.4 设置识别灵敏度

4 应用场景分析

4.1 新能源汽车远程出行

由于新能源汽车从2010年之后才在中国市场逐渐发展起来,有关新能源汽车充电桩的建设至今还无法像汽车加油站一样普及全国,这就导致车主想要寻找到充电桩会异常麻烦,特别是在汽车远程出行时,汽车半路没电,人生地不熟的情况下,更需要一个贴心的智能小助手来为他们提供解决问题的方案。

4.2 车主出行前未对汽车充电

人人都有疏忽大意的时候,遗忘是我们最不想面对,又不得不面对的事实,但是机器不会,我们利用机器不会遗忘的特性来提醒我们做好汽车出行前的准备工作。

4.3 新能源汽车行驶途中突然没电

汽车快要没电时,人的第一反应往往是靠边停车,而在停车之后往往会通过手机百度或者向亲友求助的方式解决问题,然而这样只会浪费车主宝贵的时间,我们直接将已有的处理方案存储在系统内部,系统识别到指令便可直接通过语音播放出来,车主无需自行查找,只需根据实际情况自行选择即可,更加方便快捷。

4.4 车主缺乏经验

由于缺乏经验,车主不了解环境温度的变化对于新能源汽车续航里程数的影响,更不了解如何采取人为措施控制新能源汽车的电量从而提高新能源汽车的续航里程数。只要使用了我们的系统,用户无需担心自己缺乏经验,更无需自行上网查找,只要发出语音指令,系统便自动通过语音播报给出相应的省电方案。

4.5 所有电动汽车

区别于车载系统,无需考虑通讯协议的限制,可以在所有电动汽车上使用。由于该装置无需和汽车CAN总线相连,只需电源便可工作,故可以作为独立的电子产品出售,具有广阔的市场前景。

5 结束语

文章设计了基于新能源汽车低电量下的生活情景,使用无线测距技术,并将智能预防和解决方案融于语音交互系统中,区别于市场上的现有产品,创新性地为车主提供预防和处理新能源汽车低电量运行下可能遇到的种种问题的解决方案,突破了原有产品需考虑汽车通讯协议的一致性的局限性,可用于所有的新能源电动汽车,此外还具有低成本、低功耗的优点,应用前景广阔。

猜你喜欢
测距语音无线
基于RSSI测距的最大似然估计的节点定位算法
《无线互联科技》征稿词(2021)
基于STM32的多通道超声波测距系统设计
魔力语音
基于MATLAB的语音信号处理
基于MQ3与MP3的价廉物美的酒驾语音提醒器
无线追踪3
基于ARM的无线WiFi插排的设计
对方正在输入……
一种PP型无线供电系统的分析