浅析嵌入式技术在儿童安全防护中的结合与运用
2020-12-28林展鹏何守文黄仁成
林展鹏 何守文 黄仁成
摘 要 针对儿童因意外事故而造成死亡发生率不断提高的现象,设计了一款通过树莓派和摄像头,超声波传感器等进行监测和通过GPS定位的智能巡逻机器人。该系统通过STM32主控制器与辅助元器件相互协调,可以实现循迹、避障、PID智能调速、实时传输图像与精准定位等功能,机器人通过树莓派与摄像头进行动态实时监测,判断儿童是否存在意外事故等安全隐患,通过GPS定位和无线传输,准确且及时地发出警报和报警,从而有效地保证儿童的安全。
关键词 STM32;PID;树莓派;巡逻机器人
引言
意外和明天,我们永远不知道哪个先来;在当今社会中,几乎到处都存在发生意外事故的可能性。意外事故影响着我国儿童生命安全、生活质量和身体健康。据调查表明在我国,儿童意外事故已成为0-14岁儿童最主要的死亡原因。对儿童而言,多数儿童的意外事故是发生在儿童活动最多的地方——各类游玩休闲场所,儿童游玩时大多情况监护人不在场,缺少保护,并且传统的游戏形式无法满足他们,他们由于天性可能会创造一些危险的游戏形式,其中难免存在一定的安全隐患,如攀爬树木、在湖边等水域较深或者有漏电风险的区域护栏边嬉戏甚至翻越等危险行为;由此看来,儿童的健康问题已经不仅仅是生存问题,更重要的是保护问题,即使传统的防护措施充足,儿童意外事故的发生也是屡禁不止[1]。随着现代电子技术的发展,嵌入式技术应用在很多方面,而本文就儿童安全的防护,结合嵌入式技术设计一款以STM32为主控板,利用树莓派加摄像头、GPS定位模块、超声波等传感器的智能巡逻机器人,将智能巡逻机器人应用于监测玩乐区儿童安全的工作,从而减少意外事故的发生。
1系统框架与组成
1.1 系统框架
智能巡逻机器人采用STM32芯片为主控核心,用OpenCV摄像头采集画面数据,发送给树莓派进行快速处理,结合超声波传感器、GPS定位,利用人工智能算法对儿童的行为进行画面分析,做出相应的措施。智能巡逻机器人主要在特定规划好的区域内巡逻, 利用超声波传感器和摄像头检测前方路况,在提前设置好儿童特定的游玩区域内做出路线规划并巡视,以免碰到行人,巡视过程中也会全程录像。同时摄像头监测儿童,当儿童即将发生或者已经发生意外事故时,智能巡逻机器人会发出语音警报并向终端发送GPS定位和报警,从而降低儿童在游玩场所发生事故的概率或及时处理发生的意外事故。具体实现方案如图1所示。
1.2 系统组成
我们所设计的智能巡逻机器人主要由两部分组成:第一部分是硬件的设计,第二部分是上位机和算法的开发。这使得该系统具有完整的传感器系统、运动控制算法、GPS定位和实时通信能力,硬件部分中,系统配备有核心控制板模块、传感器模块、电机驱动模块、树莓派摄像头模块等,算法开发中,使用了障碍检测算法、循迹算法、PID算法、OpenCV图像识别算法等。
2硬件组成与设计
2.1 核心控制板模块
在主控芯片选择时,我们选择了功能丰富、高性能、低功耗、接口多的STM32,STM32是意法半导体公司设计推出的以ARM Cortex-M为内核的32位控制器,本系统选择的是32位Cortex-M3内核的STM32F103芯片,该芯片具有72MHz的速度和高达1MB的闪存,不仅成本低且性能好,广泛应用于高集成度的电路系统中[2]。而且该芯片具有电源管理电路,处理器运行电压可从2V到3.6V,具有多种复位保护措施,有很强的移植以及拓展性,综合以上满足本系统需求,因此选用此款芯片。
2.2 传感器模块
传感器采用超声波模块,对于路况,超声波测距是一种有效的非接触测距方法,由于超声波指向性强,能量消耗缓慢,可以以一定频率的超声波并借助空气媒质传播,且在介质中传播的距离较远,到达障碍物后会反射回来,因此可以通过计算传输时间得出距离[3]。将超声波传感器安装在机器人的四个方位并进行连续扫描,当距离低于设定距离时,就会控制电机执行后退,从而实现机器人的避障和避让行人。
2.3 树莓派摄像头模块
树莓派(Raspberry Pi 4B)是一款基于ARM的微型电脑主板,它能替代日常桌面计算机多种用途(如播放高清视频,编程,文字处理等),我们的智能巡逻机器人是通过树莓派和摄像头模块完成循迹从而正常行驶和巡逻,而树莓派主要作用是负责处理摄像头传回的图像数据[4]。
3上位机和算法开发
3.1 障碍检测算法
当智能巡逻机器人工作时,超声波传感器会对周围环境进行连续扫描,超声波模块会对周围发射方波,并检测是否有方波返回,若检测到方波返回就会通过IO口产生高电平,而高电平持续的时间就是超声波从发射到返回的时间,通过计算公式就可以计算得到与障碍物的距离:距离=(高电平持续时间*声速(340m/s))/2[5]。接着判断距离是否小于所设定的距离,若不小于,则继续之前的行动;否则,若小于,继续判断是否大于极限距离,如果小于极限距离,就驱动电机转向,远离障碍;若大于极限距离,就减少PWM输出占空比,驱动电机减速,远离障碍,然后继续扫描周围环境,从而形成一个障碍检测循环。
3.2 循跡算法
本系统采用摄像头完成循迹,智能巡逻机器人通过无线通信实现远程检测前方路径,利用树莓派和摄像头采集得到的前方路径图像信息,通过上位机将图像二值化,二值化是指将RGB图像转为灰度图,再根据预设的图像HSV值判断并将大于预设值置1,否则置0。接着由得到的二值化图像信息采用PID算法控制电机,从而使智能巡逻机器人能够行驶在预定的路径。对比红外循迹,采用摄像头循迹将提高行驶过程中的稳定性。
3.3 PID算法
智能巡逻机器人行驶过程中,有很多外界环境会导致电机转速有误差,且各个电机本身的材质不同,不同电机转速不同,为了同步每个电机的转速,并稳定在某个值,我们需要采用经典的PID算法控制电机,从而使得电机稳定的匀速运行[6]。
在PID算法控制过程中,通过设定的目标值与反馈值进行比较,计算得到偏差,接著根据偏差计算得到积分累加和和微分,最后根据公式计算得到PID输出[7]。
PID控制方程式:
其中 Kp是比例增益;Ki是积分增益;Kd是微分增益;e(t)是偏差;u(t)是PID输出。
3.4 OpenCV图像识别算法
智能巡逻机器人采用了基于OpenCV的特征值提取信息来完成目标的识别与锁定。当机器人开始工作时,树莓派摄像头开始运作,不断捕获每一帧图像i形成视频流,而每一帧图像都会传入OpenCV图像识别算法,通过本系统设计的特征值提取出目标(危险区域如假山)。
为了准确提取出图像中的信息,必须是对图像每一帧进行处理,在接收到截取的一帧图像后,首先会调用OpenCV的颜色转换函数:
cv.cvtColor(frame, hsv, CV_BGR2HSV);//将RGB图像转为HSV图像转化为HSV图像后,根据设定的HSV特征值将图像二值化。
读取HSV图的3通道像素,更改灰度图的1通道像素;在所截取的每一帧图像中,确定HSV图目标像素的特征范围,把灰度图对应坐标的像素改为白色(255),否则为黑色(0);如图2 假山RGB图二值化灰度图对比。
识别完成后,会只保留感兴趣的部分,当确定目标后,会将信息传递给STM32,以便STM32控制各个模块从而实现监测功能。
4结束语
本文就如何实现儿童安全防护的智能巡逻机器人做了详细阐述,从硬件部分和算法设计两方面分别介绍,各个模块相互协调,从而实现超声波自动测距避障、PID算法智能调速、树莓派摄像头动态监测实时传输图像的功能,最终达到预期要求,完成嵌入式技术在儿童安全防护中的结合与运用,未来将继续改进优化,使其应用范围更加广泛。
参考文献
[1] 但春燕. 意外伤害,儿童的头号杀手[J]. 早期教育月刊,2004(2):31.
[2] 陈靖南. 基于Cortex-M3的通用嵌入式开发板设计与实现[D]. 北京工业大学,2014.
[3] 刘亿文,姚洪平,马恒. 基于单片机的超声波测距系统的设计[J]. 电子世界,2014(1):34-35.
[4] 理查德,格里梅特. 树莓派机器人实战秘笈[M]. 北京:人民邮电出版社,2018:117.
[5] 姜丽军. 超声波测距仪的设计[J]. 消费电子,2014(10):67-68.
[6] 林文建,钟杭,黎福海,等. 两轮自平衡机器人控制系统设计与实现[J]. 电子测量与仪器学报,2013(8):750-759.
[7] 张文君,盛维涛,袁宇鹏,等 智能轮式机器人离散模糊自适应PID控制研究[J]. 制造业额自动化,2015(8):5-8.
作者简介
林展鹏(2000-),男,广东汕尾人;毕业院校:广东东软学院,专业:电子信息工程,学历:本科,现就职单位:广东东软学院,研究方向:嵌入式。
何守文(2000-),男,广东揭阳;毕业院校:广东东软学院,专业:电子信息工程,学历:本科,现就职单位:广东东软学院,研究方向:嵌入式。