时间:2024-05-22
夏伦腾 ,张 莉 ,吴 飞
(1.中南民族大学 生物医学工程学院,湖北 武汉430070;2.中南民族大学 检测与仪器校级工程中心实验室,湖北 武汉430070;3.中南民族大学 脑认知国家民委重点实验室,湖北 武汉430070)
第一财经商业数据显示2018 年中国宠物行业市场规模已经达到了1 722 亿元,为五年前市场规模的3 倍之多。宠物对于主人来说,已经成为重要的精神陪伴者。如果宠物走丢,宠主会花费大量的人力和物力进行找回,但找寻如大海捞针,找回几率极低,同时宠物丢失所造成的安全隐患和财产损失一直是一个亟待解决的社会问题[1]。 如何设计一款宠物智能可穿戴设备——宠物防丢器便显得尤为重要,具有很大的市场价值。 国内的宠物可穿戴设备应用并不广泛,功能且单一;国外的宠物可穿戴设备多以单纯测量宠物的生理参数为主,用以监测宠物的健康情况。 因此,本文提出了一种基于物联网技术的宠物寻回可穿戴设备系统的设计方案。
物联网概念在1999 年正式提出,顾名思义就是“物与物相连的互联网”,目前国内的定义是:通过传感器、无线射频技术(Radio Frequency Identification,RFID)、全球定位系统等信息传感设备,按约定协议,把任何物品与互联网连接起来,进行信息交换和通信,以实现智能化识别、定位、跟踪、监控和管理的一种网络[2]。 2016 年9月微信小程序面世,在微信生态下,触手可及、用完即走的微信小程序引起广泛关注,微信公开数据显示,小程序日活已达2.8 亿,人均使用20 个小程序,人均使用时长超过10 min。 因此越来越多的开发者将用户端的操作移植到了微信小程序端,相信以微信小程序作为用户端的设备开发更容易被市场所接受。
本文着重于在宠物出行时丢失,及时帮助主人寻回而设计了一款基于物联网技术的宠物防丢可穿戴设备系统,用户通过微信小程序控制LED 灯的闪烁,亦可以控制音乐、语音播放。 通过语音播放存储的狗语或者猫语文件来安抚宠物,避免其在走丢时乱跑,可以帮助用户迅速对宠物进行寻找,大大提高了宠物的寻回可能性;同时,在蓝牙控制信号覆盖以外,可以通过微信小程序查看宠物的地理位置和速度信息,调用手机上的腾讯地图实时显示出来,这两项信息由可穿戴设备上GPS+GPRS模块负责采集和传输;最后,在一定的范围内可以通过唤醒词对语音识别模块功能进行唤醒,通过指令关键词完成不同的功能,例如通过语音播放猫语或者狗语对宠物进行安抚,或者喊出“回家”的指令,命令宠物回家等。 本文从宠物外出丢失寻回及实际相处应用方面出发,设计了一套完整的、以可穿戴设备为基础的系统。
本文宠物可穿戴系统主要由硬件端、云端服务器、用户端三部分构成。硬件端主要包括锂电池及电源管理模块、蓝牙模块、定位及数据传输模块[3]、语音识别模块、LED 灯显示模块、语音播放模块。云端服务器主要负责地理位置数据及速度信息的云端存储。用户端主要包括蓝牙控制部分及地图信息显示部分。 基本结构如图1所示。
图1 系统示意图
本文设计用两节3.7 V 18650 锂电池进行供电,容量为2 000 mA·h。 锂电池具有电池转化效率较高、稳定性能好、工作时发热低等优点,适合应用于便携式设备上。 锂电池通过低压差线性稳压器(Low Dropout Regulator,LDO)进行输出电压校正[4],使其稳定输出5 V 电压,为整个可穿戴设备进行稳定的供电。 本文在实际应用中可以保证宠物可穿戴设备的稳定、持续运行。
本文蓝牙4.2 模块采用SKB369,该模块各方面性能较为出众[5]。 通过上文的电源模块为蓝牙模块供电,将信号输出端口与底层的LED 灯以及语音播放模块Y3-M3耦合, 通过手机特定的微信小程序对蓝牙的输出信号进行控制,从而在需要的时候打开LED 灯以及特定语音文件,帮助用户更容易地找到宠物。
当宠物跑出小区或者更大的范围时,上述蓝牙功能便不足以帮助用户寻找到宠物,用户可以通过微信小程序查看宠物可穿戴设备的地理位置及速度信息,帮助其实时定位到宠物的位置及状态。 本文采用的是SIM80-8GPS+GPRS 模块,模块集定位数据、速度信息的采集与传输为一体,它是四频模块,全球范围内可用,并且定位的精度极高,目前广泛应用于各类应用之中,例如OFO小黄车。 利用模块上SIM 卡的GPRS 数据传输功能进行底层数据的传输,将数据传输至云端服务器数据库进行存储,随时等待微信小程序端的调取显示。
用户在遛宠物或者与宠物相处时,都会有听不懂主人的指令或者在呼喊宠物时宠物并不会给予应答的情况。 如果这种情况发生在宠物走丢的初期,主人可以通过呼喊唤醒词来激活语音识别系统,然后喊出指定的口令点亮LED 灯、播放音乐,例如播放指定的狗语或者猫语文件来对宠物进行安抚和命令,从而在最有可能发生宠物丢失的时间段避免宠物走丢的距离更远,大大增加了寻回宠物的难度。
本文采用STC11L08XE 为核心处理芯片,LD3320 作为语音识别芯片。LD3320 是一颗基于非特定人语音识别(Speaker-Independent Automatic Speech Recognition,SIASR)[6]技术的语音识别/声控芯片,无需用户对其进行录音训练, 只需将识别的关键词以字符串的形式传送进芯片,即可在下次识别中立即生效。 本文语音识别模块内置高精度A/D 和D/A 通道,支持用户在程序中添加50 条关键词语的内容,有16 个IO 口可以用以控制多项执行元器件(例如LED灯)、语音播放模块以及震动电机等。
本文基于微信小程序设计了远程蓝牙控制微信小程序[7],可以远程控制多项底层执行元器件,例如LED灯的闪烁和语音播放,理论上可以实现方圆100 m 内的无障碍通信控制。 蓝牙微信小程序执行流程框图如图2所示。
图2 蓝牙微信小程序执行流程图
当宠物丢失宠物走出的距离可能已经大于蓝牙4.2的最大感应距离,这时便需要通过GPS 定位来寻找宠物。通过SIM808 模块对宠物的定理位置信息及速度信息进行数据采集,采集到的信息数据通过模块的GPRS 数据传输功能以IP 地址的方式传输至云端服务器存储,采集的信息是符合NEMA0183 标准的信息格式。SIM808 模块的程序流程图如图3 所示,微信小程序端查看地理位置的流程如图4 所示。
语音识别(ASR)技术是一种基于关键词列表识别的技术,只需要提前设定好识别的关键词语的列表,并且把这些关键词语以字符的形式传输至LD3320 语音识别芯片的内部[8]。 应用时,用户只需要说出关键词进行识别,无需用户提前进行任何录音训练。 语音识别芯片都采用了模式匹配的原理,说出的关键词的语音信号首先经过预处理,包括语音信号的采样、反混叠滤波、语音增强;接下来是特征提取[9],从语音信号波形中提取一组或几组能够描述语音信号特征的参数,若识别成功则在指定的IO 口输出高电平或者低电平信号,此信号的类型可以在程序中进行设置,以满足各种功能需要。 此模块的执行流程图如图5 所示。
对于寻找宠物的问题,蓝牙连接的稳定性及连接控制的距离有很大的影响,只有稳定的系统以及足够大的连接距离才能保证宠物寻回的及时性。为了测试本文可穿戴设备的蓝牙通信的稳定性以及可控制的极限距离,将测试宠物穿戴设备在校园、小区及公园3 个不同的地点进行测试,并且不同的距离内进行LED 灯及语音播放模块进行控制。校园内人流量大,小区内墙体多,公园内较空旷,通过这三个地点测试蓝牙信号传输的稳定性,具体的测试数据如表1 所示。
图3 GPS 定位流程图
图4 微信小程序端执行流程图
图5 语音识别功能执行流程图
表1 蓝牙稳定性测试结果
由表1 结果可以看到:根据3 个不同地方的特点,人群和建筑对蓝牙信号都有一定的影响,建筑对蓝牙信号的减弱有最大的影响,人群对蓝牙信号的影响次之,空旷地方影响最小。 在较为空旷的地方可连接的有效距离达到80 m,在人群较多的地方有效距离在70 m 左右,在建筑为较多的地方有效距离在60 m 左右。总而言之,本文可穿戴设备系统的稳定性良好,并且LED 灯的闪烁及语音播放的提醒非常明显,对寻找到宠物具有相当大的帮助,在实际应用中具有很好的效果。
当宠物丢失时间过长,就需要通过GPS+GPRS 定位功能来对宠物进行寻找,此模块会将地理位置及速度信息实时传输至云端服务器,用户可以通过微信小程序实时调取腾讯地图显示[10]。 GPS 定位的精度对寻找到宠物所需要的时间有很大的影响,实验测试人员携带可穿戴设备在不同地点、不同速度下进行地理位置信息和速度信息的采集,并且与百度地图实际地理位置以及电子表记速度进行准确对比,比较本文可穿戴设备的精度及稳定性,以NEMA 格式数据显示(例如11423.2349E 即经 度114°23′0.2349×60″, 地 图1″误 差 约 等 于30.9 m),具体测试数据如表2 所示。
由表2 实验结果可以看出:本文可穿戴设备应用的GPS+GPRS 模块精度较高, 定位的误差基本都在2 m以内,在空旷地带的定位效果更佳。另外,测试过程中模拟了各种不同速度下的采集精度情况, 与电子表记的速度信息对比, 采集的速度信息相当准确, 当速度较小时采集的误差较小。
本文语音识别控制的功能是最大的特点, 通过一个特定的唤醒词唤醒语音识别模块[11],之后再说出二级关键词,不同的关键词代表不同的指令,控制着不同IO口, 利用输出信号来完成不同的功能。 本文实验测试在程序中设定“你好”为唤醒词,设置了7 个二级关键词,分别为“调试”、“音乐”、“开灯”、“关灯”、“别动”、“回家”和“关闭”,不同的指令对不同的IO 口进行了输出电平的控制:
(1)“调试”口令识别成功后,调试识别口令无输出IO 口控制;
(2)“音乐”口令识别成功后,播放语音播放模块指定端口存储的动感音乐,控制PA1 口输出低电平;
(3)“开灯”口令识别成功后,开启LED 炫灯,控制PA2 口输出高电平;
(4)“关灯”口令识别成功后,关闭LED 炫灯,控制PA2 口输出低电平;
(5)“别动”口令识别成功后,播放存储在指定端口的狗语或者猫语翻译文件,内容为:不要动,控制PA3 口输出低电平;
(6)“回家”口令识别成功后,播放存储在指定端口的狗语或者猫语翻译文件,内容为:回家,控制PA4 口输出低电平;
(7)“关闭”口令识别成功后,关闭所有的端口用电器,控制PA1、PA3、PA4 输出高电平,PA2 输出低电平。
为测试模块功能的稳定性,将唤醒词及上述指令进行多次调试,利用串口上位机输出识别结果和万用表测量指定端口的电平输出情况,对每个指令进行10 次测试,计算成功识别率以及输出IO 口的正确率。
表2 GPS 定位精度测试结果
表3 语音识别功能测试结果
同时在测试过程中,加入一个测试程序中未设置的的关键词“有趣”,目的是测试其是否存在指令词误识别的可能性,表中总准确率只计算已设置的指令词成功识别和IO 口准确输出的成功率,具体的测试数据如表3所示。
由表3 测试结果可以看出:由于每个关键词的基元语音的细节特征不同,因此在测试时不同指令的识别成功结果不同,本文识别成功的准确率达到了81.25%,IO口正确输出的准确率达到了76.67%,并且不存在对未设置关键词“有趣”词语的误识别,稳定性较高。 可以看出当关键词的基元语音的特征越多,该关键词的识别成功率越高即模块更容易识别。 总的来说,语言识别模块的功能在实际应用中具有较好的效果,能够成功地实现通过用户的语音关键词控制可穿戴设备执行特定的底层功能。
本文系统设计综合运用传感器技术、物联网通信技术及微信小程序开发技术为一体, 以锂电池作为电源,经电源管理模块稳定输出供电给蓝牙模块、GPS+GPRS定位模块及语音识别模块。在微信小程序端控制蓝牙模块,控制距离达到了80 m,它是基于蓝牙4.2 的数据传输控制LED 灯及语音、音乐播放,便于用户在近距离内迅速找到宠物;另外,还可以在微信小程序操作,通过GPS+GPRS 模块查询宠物的具体地理位置和速度信息;最重要的是本文应用了语音识别模块,用于与宠物的互动,通过唤醒词激活模块系统,通过最多50 个关键词进行不同的功能操作,例如播放狗语或者猫语安抚宠物、播放音乐、开启LED 灯等。 通过实验调试,本文设计的系统上述功能基本实现,采集测试精度较高,可以在实际应用中具有很好的效果。
我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!