赵世民 刘奇锋 李淑芝
摘 要:针对目前私家车保有量快速增长,城市车位资源紧缺,停车困难,设计了一款基于物联网平台和MQTT传输协议的“枫停”智能车位锁控制系统。使用IOT设备、移动端、服务器三端数据交互,实现软硬件结合的APP控制系统。软件可监控附近的车位状态、车位锁状态,以实现移动端对硬件的操控。对比现在市场上已有的多种蓝牙车位锁,该系统具有信号稳定、设备成本低、移动端使用便捷和寻找车位周期短等优势。
关键词:OneNET;MQTT;物联网技术;智慧停车;智能车位锁
中图分类号:TP39 文献标识码:A
Abstract: Feng Ting Intelligent Parking Lock Control System is developed to provide solution to the shortage of parking spaces caused by increasing volume of private cars. This is an APP control system which is designed based on the Internet of Things (IoT) platform and MQTT (Message Queuing Telemetry Transport) transfer protocol, using interactive data collected from IoT devices, mobile terminals and servers. The APP is able to monitor the nearby parking occupancy and the parking lock status, which make it possible for users to control the hardware by mobile terminal. Compared with the already existing Bluetooth parking locks in the market, this system has more advantages, such as stable signal, low equipment cost, convenient use of mobile terminal and short period for finding parking spaces.
Keywords: OneNET; MQTT; Internet of Things; intelligent parking; intelligent parking lock
1 引言(Introduction)
随着私家车数量的增多,车位资源日益稀少,停车困难成为困扰车主的首要问题。造成停车难的主要原因有很多种:停车场和固定车位的紧缺、路边乱停乱放的现象、车位使用不合理、寻找空闲车位困难[1]等。更重要的是车主在寻找车位的过程中也会造成局部交通堵塞、增加污染排放和噪声等问题,甚至因车位引发市民之间的矛盾和交通事故。目前市面上的车位锁主要有以下几种:
(1)金属机械车位锁:这种车位锁不仅使用麻烦,上锁、开锁都需要下车手动操作。
(2)蓝牙车位锁[2]:蓝牙遥控有效距离较低,在车内可能无法成功下发指令。无法实现共享车位状态。
(3)单片机伸缩型车位锁:需要专用遥控器,或需要识别车牌号。此类车锁独立性较强,没有提供数据上传、车锁定位[3]等功能。不方便集中管理,无法实现车位信息共享。
本文提出的基于OneNET[4]的“枫停”车位锁不依托蓝牙控制,采用NB-IoT通讯模块由OneNET物联网平台发送指令,车位锁实时返回数据给平台,实现对多个车位锁的集中管理。移动端APP能够实时显示车位状态、车位锁状态、空闲车位的精确位置,预定车位等丰富的功能。车位锁信号稳定不易掉线,功耗小,待机时间长。
2 总体设计(Overall desigon)
基于OneNET平台的“枫停”车位锁控制系统由硬件车位锁和软件控制系统组成,软件系统包括手机客户端和后台服务器。用户通过手机客户端可以查找和定位车位,控制硬件车位锁,硬件开发平台为OneNET平台。OneNET是中国移动面向公众服务的物联网开放平台,硬件可通过LwM2M、MQTT、EDP、TCP等多种协议接入。软件系统和硬件车位锁的通信通過OneNET平台的MQTT通信接口实现。
硬件车位锁通过无线通信将车位锁的状态信息传输至OneNET,手机客户端通过访问云平台可获取车位锁的实时状态;手机客户端上产生的操作通过云平台发送给车位锁,实现客户端对车位锁的实时控制。
3 硬件车位锁设计(Hardware parking lock design)
3.1 车位锁性能需求分析
硬件车位锁需满足以下需求:
(1)车位锁本身防水且外壳坚硬,在室外环境不会轻易受损。
(2)车位锁功耗低,无须频繁更换电池。
(3)车位锁在信号欠佳的地点仍可以与“枫停”控制系统通信。
(4)异物检测功能防止机械臂在转动过程中受力损伤自身。
3.2 车位锁核心模块设计
硬件车位锁使用钢结构外壳保证车位锁不易受损。主控模块采用STM32F103C8T6对各模块进行协调控制,无线模块采用NB-IoT通信模组通过消息发布/订阅的方式向OneNET发布车位锁的状态信息。客户端下发的对车位锁控制的指令后电机驱动模块在转动车位锁时为电机提供瞬时大电流,E18-D80NK红外模块可检测车位锁上方是否有汽车或异物。使用4个一号锂电池可使车位锁能在该主控模块下持续工作一年。各模块之间关系如图1所示,硬件车位锁成品图如图2所示。
3.3 车位锁通信协议
根据需求,车位锁选用MQTT协议作为与OneNET连接的通信方式。由于发布数据量较小,只需通过设置MQTT传输过程中的发布主题topic和消息传递等级,平台即可成功订阅车位锁发布的信息。
4 软件控制系统设计(Software control system design)
4.1 软件系统总体设计
软件系统包括移动端APP和服务器后台组成。APP前端主要用于用户操作,后台服务器采用MySQL数据库管理数据,服务器部署在阿里云平台上。系统功能主要包括用户信息管理、车位锁控制和停车服务管理。软件系统结构如图3所示。
4.2 系统功能模块设计
系统的总体使用流程是首先用户注册登录“枫停”APP,接着查找停车位,找到后预约车位,到达车位附近后即可在手机APP上远程开锁。具体功能模块设计介绍如下。
(1)用户信息管理
用户信息管理主要包括用户注册登录、个人车位管理和个人信息管理三个功能。
①用户登录可通过手机号登录,也可使用已注册的账号登录。设计中使用第三方合作账号登录(QQ、微信),用户登录后才能使用预约车位等功能。
②个人车位管理主要实现用户对自己的私人车位设置租用时间段。可在自己私人车位空闲的时候将车位向公众出租。
③个人信息管理主要包含:账号密码管理、停车记录、个人钱包和优惠卡券。
(2)停车服务管理
停车服务模块需包括:实时车位信息,车位预约及缴费和目的车位导航等功能。
①实时车位信息:车位锁无线通讯模块将设备经纬度信息发布到OneNET平台,服务器端通过OneNET平台API获取指定设备的经纬度信息后,将位置信息通过Json格式传给移动端APP。
②车位预约及缴费:在手机上点击空闲车位即可选择预约时间,使用支付宝或微信支付完成后即可成功预约并占用车位。
③车位导航:通过调用百度地图API实现。首先根据用户IP位置定位,用户授权系统获取IP位置信息后,调用location方法获取用户所在位置经纬度坐标,点击目的停车位后即可通过两个经纬坐标规划初行车路线图。
(3)车位锁控制
车位锁控制主要包括指定车位控制、车位锁实时状态和汽车驶离检测三个功能。
客户端APP和OneNET平台对接后设备在线即可实现移动客户端对车位锁下发开锁、上锁指令。车位锁的红外检测模块会将车位实时信息上传到OneNET平台接口,若用户下发上锁指令但锁上有车时车位锁会拒绝上锁,确保不会因操作失误造成的财产损失。此模块技术难点是车位锁、平台数据和客户端数据间的数据通信,其方法描述详见表1。
4.3 软硬件通信接口设计
采用OneNET平台设计实现软硬件的交互。首先在OneNET平台上添加硬件设备,然后设计接口实现软件客户端与硬件的通信。
(1)OneNET平台添加车位锁
初次使用OneNET平台需要注册平台账号。在开发者中心选择创建与设备相同协议的产品,产品创建成功后选择添加设备,一个产品中可以创建并管理多台设备。添加完设备,平台会给分配给每个设备一个独有的设备ID,根据设备ID及该产品的Master-APIkey,用户便可通过硬件接入到云平台进行数据交互。
(2)终端与OneNET的对接
OneNET平台提供API进行通信,对官方指定URL执行POST或GET类型的HTTP请求(如,http://api.heclouds.com/cmds/devices/),OneNET会以JSON的形式返回数据。系统后台解析JSON数据后即可控制车位锁。控制接口实现方法详见表2。
5 功能实现(Function realization)
移动端APP使用Spring Boot搭建后台服务,后台服务器采用Ubuntu16.04云服务器。服务器主要负责与终端的数据交互和数据处理。MySQL数据库存储用户账号、密码,车位锁的经纬度定位、车位当前状态信息。短信验证码使用阿里云短信服务平台,第三方账号登录已获得QQ授权。软件控制系统的部分截图如图4所示。
6 性能测试与对比分析(Performance test and comparative analysis)
在完成该系统的硬件设计与制作、软件开发和与OneNET平台对接后,经过对本文所设计的系统全面测试,本系统可以正常执行客户端下发的各种命令,平台数据上传及更新服务正常运行,移动端APP可成功预约车位,设备各模块功能正常运行。目前该系统在校园固定停车位做测试投入使用,截至2020年2月,使用次数达326次,其中命令下发失败2次,车位预约超时1次,电机转动异常2次,系统测试成功率达98.4%。
本文设计的硬件车位锁物料成本约为200元,为市面上已有智能车位锁平均价格的65%,并有自研车位共享与预约平台。与现有文献和产品相对比,文献[5]使用智能推荐附近停车场,没有提供车位管理的功能,用户也无法选择租借的时间段。文献[6]没有移动端APP,用户只能在电脑上查看车位信息,用户无法随时获得车位的最新信息。而本文设计的系统只需1—2分钟即可精确预约固定车位,根据导航即可直接停入所预约的车位,无须因车位被占用而二次寻找,有效减少车主寻找车位的周期。
7 结论(Conclusion)
“枫停”利用OneNET平台搭建了一个软件系统+硬件车位锁的智能停车系统,系统容错率更高,可实时监控车位情况,通过手机即可对车位锁下发命令。为车主提供了一个可以预约车位、智能化管理车位的便捷系统。提高了城市车位的使用效率,一定程度减缓了寻找车位难、车位资源不足的
问题。
参考文献(References)
[1] Tasseron G, Martens K. Urban parking space reservation through bottom-up information provision: An agent-based analysis[J]. Computers, Environment and Urban Systems, 2017 (64): 30-41.
[2] Cui Q, Ning J, Yin X. Design and Implementation of a new type of Intelligent Automatic Parking Lock[C]. 2018 Chinese Automation Congress (CAC). IEEE, 2018: 1466-1470.
[3] Huang K Y, Chang S B, Tsai P R. The advantage of the arduino sensing system on parking guidance information systems[C]. 2017 IEEE International Conference on Industrial Engineering and Engineering Management (IEEM). IEEE, 2017: 2078-2082.
[4] 陳宝远,褚庆文,孙忠祥,等.一种基于OneNet设备云的智能硬件组网方法[J].哈尔滨理工大学学报,2017,22(05):76-80.
[5] 陈姝瑾.基于微信小程序的智能停车场管理系统的研究与设计[J].信息系统工程,2019(03):67-68.
[6] 张瑞增.基于智能车位锁的共享停车位管理系统研究与设计[D].山东大学,2017.
作者简介:
赵世民(1999-),男,本科生.研究领域:数字水印.
刘奇锋(1998-),男,本科生.研究领域:数字水印.
李淑芝(1964-),女,硕士,教授.研究领域:数字水印.