智能消毒防疫机器人设计
2022-08-17孙浩瑜胡嘉慧王有民赵锦洋
孙浩瑜,胡嘉慧,王有民,赵锦洋
(西北民族大学,甘肃兰州,730000)
0 引言
经过本团队的调研以及走访,我们设计了一款STM32F1系列芯片作为主控芯片的机器人,通过提前设定路线,自动、高效、精准的对学校食堂,商场,医院,火车站,飞机场等公共场所进行自主消毒防疫工作,同时可完成智能测温,语音播报工作。通过各模块的协作完成相对应的消毒防疫功能,也能够辅助减轻防疫人员的工作强度,减少人力资源的消耗,有效减少人员交叉感染,提高工作效率。
1 系统总体设计
本项目设计的智能消毒防疫机器人主要由Cortex-M3内核的STM32F1系列芯片作为主控芯片,搭配LD3320语音识别模块、ZigBee通讯模块、超声波模块、语音播报模块、温度检测模块、人体测温模块以及指纹识别模块和RFID射频识别模块等构成。通过红外等传感器返回值对电机的占空比等参数进行调整,进而使机器人沿着设定轨道行进,在行进过程中使用消毒喷洒装置对周围环境进行消毒,同时通过微处理器的定时器、IIC通讯协议、SPI通讯协议、I/O口的复用、串口等功能来完成程序的设计和优化。
2 系统硬件设计
本项目是以智能消毒防疫机器人为研究对象,该机器人使用了以STM32为核心的主控芯片,在硬件系统中主要包括自主移动避障系统、人体体温识别系统、语音控制系统、安全防盗系统以及电机驱动系统。其硬件系统框图如图1所示。
图1 硬件系统框图
2.1 电源模块
如硬件系统框图所示,消毒防疫机器人采用主备用供电模式。为满足该消毒防疫机器人在不同工作模式下能够正常稳定工作的目的,供电模式采用行业主流的锂电池,锂电池具有续航时间长的特点。通过内部降压电路设计,将电池的电压降压为各模块所需要的电压供电,既能保证芯片的长时间进行工作,又便于检修。
2.2 核心板模块
消毒防疫机器人使用STM32F103ZET6芯片作为核心主板,该处理器不仅具有较高的工作频率,功能强大,替换方便,并且具有丰富的 I/O 外设接口、多种通信接口等。STM32F103ZET6芯片可以对不同类型的情况进行综合处理,将控制板和各个控制模块,移动模块相结合,是消毒防疫机器人的硬件核心。
2.3 自主移动模块
用红外传感器对周围环境进行检测,该传感器利用红外线来进行数据处理,并且配置超声波模块,该模块通过发送和接收超声波,利用时间差和声音传播速度,计算出模块到前方障碍物的距离。消毒防疫机器人通过红外传感器对路面进行红外线采集,并将采集到的数据返回到STM32芯片进行数据处理,继而改变电机方向、数值等参数,通过处理超声波模块返回的参数进行避障功能,故机器人可以实现自主移动避障的功能。
2.4 智能控制模块
本项目中消毒防疫机器人外围配置指纹锁模块、ZigBee通讯模块、语音识别模块等。利用As608指纹模块实现机器人的智能安保功能,此模块通过高效准确采集指纹图像信息,将采集到的信息反馈给指纹识别算法芯片完成信息的采集与处理,主控芯片得到处理后的数据实现正确指纹才能开锁的功能。并且通过LD3320语音识别模块和ZigBee通讯模块同时对机器人进行控制,用户通过LD3320给机器人发送指令,由于LD3320语音识别模块的识别距离有限,则通过通讯模块进行信号的传输,从而达到对机器人的智能指令控制功能。
2.5 硬件结构
智能消毒防疫机器人在开启电源后,先通过稳压电路等对电路进行有效的保护,防止出现电压过高或者过低的情况,继而给主控芯片、电机驱动、As602指纹识别模块、人体测温模块、LD3320语音识别模块、Z igBee通讯模块、超声波模块供电。首先用户输入正确指纹使智能消毒防疫机器人进入启动状态,机器人通过语音识别模块对用户的话语进行识别,获取正确信息后反馈给主控芯片,之后主控芯片控制电机驱动的各个参数进行自主移动,通过超声波模块对周围环境进行距离检测,如发现障碍,则不能实现往前的指令,同时利用语音播报对行人进行安全警示。在自主移动避障过程中,采用消毒喷洒装置来实现对周围环境的消毒功能。在不进行消毒工作时,机器人通过采集行人给予的测量体温的信号实现测量体温功能。
核心板STM32处理器与不同类型的传感器模块以不同的数据传输方式进行连接,实现人体温度测量、障碍物距离测量以及移动时路线的实时检测,喷洒消毒液的功能。
2.6 机械结构
本设计主要针对当今社会,随着物联网的不断发展,疫情情况不断延续,智能消毒防疫机器人愈加被人们需要,所以设计了一款智能消毒防疫机器人。该设计具有自主移动功能和喷洒消毒液功能以及自主测温功能。并且其工作环境、温度等不受限,使得该设计有更大的可使用性。通过各模块的协作,可以完成智能消毒防疫机器人所具有的功能。
该设计是基于一辆可移动的小车进行功能发展完善,该设计长约40公分,宽约40公分,高约50公分,以便放置电源模块、核心板模块、自主移动模块、智能控制模块等。在车身上部放置STM32F103ZET6芯片核心主板,方便其与其他模块进行连线传输,对该智能消毒防疫机器人在线路方面进行简化处理,使电路简单,不易造成发热爆炸等现象;在车身底部安装喷洒消毒液的装置,使其能够更全方位的覆盖周围环境,以便完成该设计的核心工作:消毒,并且使工作效率更高;在车身前方安装智能触摸装置,方便工作人员对其进行开关以及选择工作模式;在其车身两侧安装红外线传感器,通过红外传感器对路面情况进行红外线数据采集,并将采集到的数据返回到STM32芯片进行数据处理,之后主控芯片控制电机驱动的各个参数进行自主移动,实现自主移动功能;在其车身上部放置温度传感器,方便行人检测自己的体温是否处于健康范围;在其车身上部安装语音播报以及语音识别模块,智能消毒防疫机器人通过语音识别模块对用户的话语进行识别,获取正确信息后反馈给主控芯片,同时利用语音播报对行人进行安全警示。
3 主要软件设计
本项目中使用C语言进行编程,使用的编译器为Keil 5。而Cortex-M3系列处理器的开发应用可以全部在C语言环境中完成。程序编写时使用模块化编程,把不同模块的初始化及驱动过程封装在不同的.c文件中,在main.c文件中只实现调用的过程,不同文件中函数的调用通过相应的.h文件来实现。模块化编程最大的好处就是程序的可阅读力比较强,编程思路的体现更加清晰,对于程序的分模块调试以及程序修改也非常方便,方便他人阅读和学习。
智能消毒防疫机器人在控制芯片启动之后,先将各模块进行初始化。当机器人接收到正确指纹后,才能接收用户所给与的控制信息,如若没有接收到正确指纹,则返回输入指纹环节,直到接收到正确指纹。其次,在语音识别到信息后才能进行相应的功能,若收集到需要喷洒消毒液的信息,则进入自移动喷洒消毒液功能中;若没有接收到喷洒消毒液的信息,则进入人体温度检测环节,直到接收到需要喷洒消毒液的指令,如此反复工作。程序执行流程图如图2所示。在进入人体温度检测环节时,如果STM32核心控制板接收到温度传感器传送回来的人体温度,则控制语音播报模块读出接收到的数据,如果没有接收到传送回来的人体温度或者温度处于不正常区间,则播报使用者重新测温的警示。在进行机器人自主移动进行消毒工作环节时,如果主控板没有接收到左右两侧红外传感器以及超声波模块返回的数据时,智能消毒防疫机器人以恒定的速度向前行驶,当接收到任意一个传感器返回的数据时,主控板根据返回的数据进行相应的调节,使机器人能够稳定正确的行驶在轨迹上。
图2 程序执行流程图
4 总结与展望
智能消毒防疫机器人设计完成后,在模拟的公共场合情境中不断调试机器人的自主移动避障,喷洒消毒液功能,语音控制以及测温语音播报功能直到机器人能够完美完成用户设定的不同任务,达到预期的结果。
调试过程表明,本项目设计的消毒防疫机器人能够通过各种传感器模块、指纹锁模块、ZigBee通讯模块以及消毒喷洒装置的融合统一实现机器人的自主移动功能、安保功能、人体测温功能以及消毒液体喷洒功能。同时在试验过程中,机器人运行稳定、操作简便,在模拟的环境中可以正确完成各个功能,有较强的实用性。因此,本智能消毒防疫机器人具有一定的使用价值,能够辅助减轻防疫人员的工作强度,减少人力资源的消耗,有效减少人员交叉感染,提高工作效率。
根据市场需求,相较于人工喷洒消毒液来说,本智能消毒防疫机器人的工作效率更高、工作费用更廉价、工作完成度更强、消耗的劳动力更少。相较于传统的消毒机器人来说,现在市面存在的消毒机器人只能完成在固定地点、固定模式、固定时间进行消毒,并且体积大质量重,成本也较高,功能单一,不能有效降低防疫人员的工作强度,并且在使用起来不方便,耗时耗力。而本智能消毒防疫机器人完成强度更高,寿命更长久,功能更齐全,拥有更加良好的稳定性与可操作性,对于人工的依懒性不强,在设置工作模式之后即可进行自主工作,无需人工进行监控。
本项目以时代背景疫情防控为基础,联想到公共场合的消杀问题,故提出智能消毒防疫机器人的设计。其具有一定的使用价值,但功能还不够完备,该设计本身的应用层面更广,不只局限于基于疫情的消杀情境,更是可以应用到养殖场、食品产业等生产线中。但该设计在实际工作环境中还不能够完全替代人工,希望在今后的学习研究中做更进一步的开发与升级,使该机器人更好的服务于实际应用之中。