基于物联网技术的智能停车场系统设计与实现
2022-06-21林楷焱钟俊健
林楷焱,钟俊健,陶 铭
(东莞理工学院 计算机科学与技术学院,广东 东莞 523808)
0 引 言
随着我国经济的发展,机动车的数量越来越多,传统停车场寻找车位困难、管理复杂等问题凸显。一个停车场系统的优劣直接影响到停车的效率、停车场的管理成本以及利润。因此,设计并实现一种可以帮助车主快速寻找空余车位且节能降耗的智能停车场对于解决智慧城市建设过程中的“停车难”问题具有重要意义。
本系统基于物联网技术,采用STM32C8T6+ESP12S和树莓派4B实现,通过消息队列遥测传输(Message Queuing Telemetry Transport, MQTT)协议与后台系统连接,把传感器采集的数据传输到后台系统,并接受后台系统发送的操控指令。后台系统基于SpringBoot+MyBatis框架实现,主要接收硬件系统传输的数据并提供存储及查询等功能,以及发送操控指令到硬件系统。
1 系统架构
本系统主要由硬件系统和后台系统组成,通过MQTT服务器通信。
1.1 硬件系统架构
硬件系统主要实现4种功能。将STM32C8T6作为主控,实现空余车位展示、空余车位数量展示及智能照明。采用树莓派4B实现车辆进出场管理。所有功能模块通过MQTT服务器与后台系统交互。系统硬件架构如图1所示。
图1 硬件系统架构
1.2 后台系统架构
后台软件系统采用SpringBoot+MyBatis框架实现,并参考了MVC三层框架(纵向上可划分为模型层(Model)、视图层(View)及控制层(Controller))。各层之间独立,通过接口通信。主要实现录入进入车辆数据、录入离开车辆数据、接收空余车位数量、录入车位情况、查看车辆记录、查看车位状态、查询报表、账号管理、支付停车费等功能。后台软件系统架构如图2所示。
图2 后台软件系统架构
2 系统部分功能流程
车辆进出场管理功能模块流程如图3所示。STM32每个单位时间内检测有无物体,若无物体则继续检测,若有物体则拍照并进行车牌快速端到端检测与识别。识别发现并非车牌则返回第一步继续检测有无物体,若识别到车牌则上传车牌数据(对于车辆进入,则打开舵机开闸;对于车辆离开,则等待接收后台发送缴费成功通知,收到通知后启动舵机开闸)。在启动舵机开闸之后需要持续识别车辆是否离开,待车辆离开3 s后关闭舵机。
图3 车辆进出场管理功能模块流程
智能照明功能模块流程如图4所示。通过传感器识别有无人或者车辆在车位附近。
图4 智能照明管理功能模块流程
3 硬件系统实现
车辆进出场管理模块由树莓派4B作为主控板,搭载超声波传感器、舵机及摄像头,硬件效果如图5所示。超声波传感器持续监测有无物体进出场,若有物体则对物体拍照并上传,然后调用阿里云接口识别车牌。本文所设计的车牌识别算法如下所示:
图5 车辆进出场管理模块硬件示意图
根据车牌识别结果判断是否为车辆,若是车辆,则将车牌信息通过MQTT上传至后台系统。在车辆进入时舵机开闸,在车辆离开时将等待后台通知缴费情况并决定是否开启舵机开闸。树莓派作为主控板检测到车辆进出场时记录的信息如图6所示。
图6 车辆进出场记录信息
STM32C8T6作为空余车位展示模块的主控板,由3 V电池盒连接升压模块进行供电。STM32会在设定时间通过超声波传感器检测车辆入库过程,然后控制红(有车)、绿(无车)、黄(缓冲)灯显示车位相应的状态并将数据通过ESP12S上传到后台系统。车位有车、无车及缓冲示意图如图7所示。
图7 车位有车、无车及缓冲示意图
空余车位数量展示硬件示意图如图8所示。以STM32C8 T6为主控板,后台系统通过MQTT服务器把空余车位数量以及车位总量发送给ESP12S,ESP12S通过串口转发给STM32,最后STM32控制数码管展示相关信息。
图8 空余车位数量展示硬件示意图
智能照明功能模块硬件示意图如图9所示。以STM32C8T6为主控板,通过红外传感器探测有无人或者车辆,若有则把灯光调至正常亮度并持续一段时间,若无则降低亮度以降低能耗。
图9 智能照明功能模块硬件示意图
4 后台软件系统实现
硬件系统通过MQTT把车牌号信息发送到后台系统后,车辆进入,后台系统查询数据库该车是否离开或者有无该车记录,若该车未离开,则记录该车进入停车场的时间并把数据存入数据库。车辆出场后,后台系统查询数据库该车是否离开停车场,若离开,则计算费用并更新支付状态。
当空余车位展示模块把车位状态信息通过MQTT发送到后台系统后,后台系统更新数据库,并通过MQTT发送最新的车位数量信息给空余车位数量展示模块。车辆出厂支付信息如图10所示。
图10 车辆出场支付
此外,系统管理员也可登录后台系统数据库,查询车辆进出场记录、车位实时状态信息,以及生成指定起始时间范围内的报表信息。车辆出场时,用户可访问支付页面,支付页显示车牌号、待支付金额、车辆进出场时间。确认信息无误后点击“确认支付”,后台更新支付状态并发送开启舵机指令开闸。
5 结 语
本文基于物联网技术设计并实现了一种智能停车场系统。其中,硬件系统采用STM32C8T6+ESP12S和树莓派4B实现,后台系统采用SpringBoot+MyBatis框架实现。系统具备车辆进出场管理、空余车位管理、智能照明等功能,可以方便用户快速寻找空余车位并实现停车场的节能降耗。作为智慧城市建设与发展过程中的重要一环,停车场智能化管理的问题将愈加凸显,本系统虽然实现了预设的功能,但仍需进一步完善。