论文部分内容阅读
摘要:随着社会的不断发展,生活水平的不断提高,私家车的数量也与日俱增。同时也引来了车位紧张的问题。但值得注意的是,居民小区的车位利用并不十分充分。针对上述现象,本文设计一种基于物联网的居民社区停车位共享平台。最终实现用户可以及时获知停车位信息、预约停车位等功能。成功解决车位紧张、停车难的出行难题。
关键词:物联网;智能锁;停车位;共享
该系统由硬件和软件两部分组成:智能地锁作为硬件部分,可以对车位信息进行及时获取。软件系统作为管理平台,负责与用户的交互和处理用户、停车位之前的需求关系,并对硬件部分进行监管维护。整个系统通过UML进行建模设计,硬件设计使用SolidWorks和AltiumDesinger。移动端使用Android,PC端采用JavaWeb。技术路线的确定为系统的后续变更和研发提供了基础。
1、系统建模
在进行系统的开发之前,需要详细了解分析共享车位平台的业务需求,以保证系统的顺利开发。经过调查发现,共享车位系统的业务需求可以分为三类:智能锁和车位的管理、发布车位信息、预约车位。
智能锁和车位的管理:该功能的使用者主要是系统的管理和维护人员。管理人员可以对车位进行增删查改的控制、并且可以监控智能锁、当出现故障时可以及时维修。
发布车位信息:该功能的使用者主要是车位的拥有者,可以将车位信息发送给平台。
预约车位:该功能的使用者主要是普通用户,主要功能为预约已发布的车位。
除了上述业务需求以外,平台还需要具备导航功能、智能锁保修功能、预约共享车位功能以确保更加良好的用户体验。
2、系统的设计和实现
该章节主要讲述的系统的设计过程和实现方法。其中,设计阶段的主要工作包括:智能锁的设计、服务端的设计、PC端和移动端的设计。
2.1通讯协议
由于智能地锁的本身条件所限,传输协议只能采取TCP协议或者UDP协议。这两种协议均属于TCP/IP协议族,该族协议是一种传输层协议。虽然这两种协议都可以与服务器进行通信,但是两种协议有较大的不同,主要体现在可靠性上。TCP是一种可靠的协议,在和服务器建立连接之前需要进行三次握手,即智能锁端先向服务器发送信息,服务器返回信息,智能锁返回确认信息。经过三次握手后,数据进行传输。这种传输方式的好处是数据的传递较为可靠,但实时性较弱。UDP是一种非可靠的协议,在建立连接前不需要进行三次握手,而是直接进行通讯,这样很容易造成数据的丢失。根据对本系统的业务需求的分析得出,智能锁的信息需要安全可靠的传送到服务端,因此最终选用了TCP协议。对于应用层协议,选取了自定义的通讯协议。
当用户在Android客户端使用此APP时,服务器与客户端应用之间的相关数据和信息应该进行同步,例如一般用户车位预约信息、车主共享车位信息、程序后台操作人员任务发布状态、安装维修人员接受任务状态等全部和平台对外服务有关的信息。基于TCP长连服务器对底层地锁的限制,此应用也需要首先与TCP服务器连接,随后基于这一服务器平台对数据进行实时转发,进而实现对底层地锁的实时管控。然而对于客户端的一般数据来说,其均可从数据库中获得,不需要通过底层设备对数据进行同步。因此当客户端和服务器之间只需要同步普通数据时,通过HTTP协议即可完成。HTTP作为一种应用层协议,是在TCP短连接模式和请求应答模式基础上建立的,基本可应用于所有类型的网络架构。通信协议的信息可作为普通数据,通过JSON格式封装的字符串实现传输,但针对图片及相关类型的二进制数据,只有通过标准的HTTP协议才可完成传输。
2.2服务器端
服务器作为同步及交互客户端数据、浏览器端和地锁端数据的平台,其核心功能为提升数据传输的稳定性,保障数据传输的高效性、安全性和可靠性。服务器主要包含底层地锁数据接口、后台监控数据接口和Android端数据接口三个模块。
1)底层地锁和服务器均与TCP服务器连接,通过这一平台完成数据同步,地锁状态的实时变化情况可由底层地锁数据接口监测。
2)企業监管人员在Web端和客户端对数据提出的请求均由底层地锁数据接口处理,每提出一个数据请求,接口将进行相应的处理流程。
3)一般用户、来自于公司的维修安装工作人员以及车位主所提出的数据同步需求均会传递至Android端数据接口,这一接口通常会对大部分请求进行处理。
2.3智能地锁端
本设计中地锁开关由中间推杆控制,中间推杆处于伸出状态时,地锁处于关闭状态,此时上端顶盖上升,阻止车辆的进入;当中间推杆处于收缩状态时,地锁则处于开启状态。地锁利用WI-FI或GPRS与网络连接,基于TCP长连方式实现与服务器的数据交互。
智能地锁端的核心功能在于控制地锁的开关,进而对车位主所共享的车位进行管控。智能地锁端的功能均是基于TCP服务器实现的,因此当地锁第一次与服务器连接时,需首先注册并与服务器共享ID号码及注册行为等相关数据,以使服务器明确地锁的基本信息。在地锁实际应用过程中,通常会遇到网络信号不稳定等情况,致使服务器和地锁之间的连接断开,因此为保障地锁与服务器之间连接的稳定性,需要在地锁内部嵌入断开重连机制。其次,服务器通常会主动断开并清除无效的地锁连接,因此有必要在地锁内部嵌入“心跳”机制,也就是说地锁通过有时间规律地向服务器传输心跳信息,告知服务器此连接的有效性,防止被服务器清除。
2.4浏览器端
浏览器端可实现以下功能:系统管理员可以利用可视化界面从服务器端得到实时数据或者和服务器进行数据交互,随后在浏览器端后台录入相关的车位共享和地锁等信息,同时可以发布维修及安装任务。详细功能描述如下:
1)浏览器端可通过图表等可视化形式展示车位和地锁的地址、编号及状态等实时信息;
2)用户可以在浏览器端实时更改、增删或查询车位信息,同时浏览器端可以实现相关数据的自动更新;
3)系统管理人员可在浏览器端发布及管理车位订单和安装维修任务。
2.5移动APP端
一般用户和车位主是移动客户端的主体使用人员。本文开发的APP是基于Android平台设计的,在这一应用中,拥有私家车位的用户可以提出申请,成为车位主,申请经后台操作人员处理审核通过后,用户便可以车位主的身份共享车位;其次此应用通过百度地图的API,可以展示地图信息并对用户周边的共享车位进行标记,以便于一般用户查找附近车位并进行预约操作。在这一系统中,地锁的安装和维修人员数量相对较少,因此可设计开发专门针对安装和维修人员的应用,系统管理员在此应用中发布相关任务,安装和维修人员接受任务后,可在系统中查看车位主地址,随后前往进行地锁安装和维修工作。若维修人员发现地锁不能维修,可以在系统中提出地锁报废,再由安装人员进行安装。
3、实验与测试
在整个平台的设计和开发过程中软件测试是十分重要的一部分。是系统正式上线后能否正常工作的关键。为了测试系统的可靠性和稳定性,将系统服务器部署到阿里云上,使用外网测试平台各项功能是否正常。测试主要包括车位主发布车位共享信息,普通用户正常预约使用#后台管理人员发布地锁安装和维修任务以及安装维修人员接收安装维修任务。实验证明平台运行流畅,各个业务流程顺利进行,数据传输快速,界面设计合理#比较符合当前国内用户的使用习惯。
参考文献:
[1]杨雷.基于物联网技术的共享停车位管理系统设计[J].数码设计,2018,7(01):47-49.
[2]李煜.私家车位共享APP的设计与实现[D].西北大学, 2017.
[3]陆斌.车位共享系统设计及服务端开发[D].东南大学, 2017.
关键词:物联网;智能锁;停车位;共享
该系统由硬件和软件两部分组成:智能地锁作为硬件部分,可以对车位信息进行及时获取。软件系统作为管理平台,负责与用户的交互和处理用户、停车位之前的需求关系,并对硬件部分进行监管维护。整个系统通过UML进行建模设计,硬件设计使用SolidWorks和AltiumDesinger。移动端使用Android,PC端采用JavaWeb。技术路线的确定为系统的后续变更和研发提供了基础。
1、系统建模
在进行系统的开发之前,需要详细了解分析共享车位平台的业务需求,以保证系统的顺利开发。经过调查发现,共享车位系统的业务需求可以分为三类:智能锁和车位的管理、发布车位信息、预约车位。
智能锁和车位的管理:该功能的使用者主要是系统的管理和维护人员。管理人员可以对车位进行增删查改的控制、并且可以监控智能锁、当出现故障时可以及时维修。
发布车位信息:该功能的使用者主要是车位的拥有者,可以将车位信息发送给平台。
预约车位:该功能的使用者主要是普通用户,主要功能为预约已发布的车位。
除了上述业务需求以外,平台还需要具备导航功能、智能锁保修功能、预约共享车位功能以确保更加良好的用户体验。
2、系统的设计和实现
该章节主要讲述的系统的设计过程和实现方法。其中,设计阶段的主要工作包括:智能锁的设计、服务端的设计、PC端和移动端的设计。
2.1通讯协议
由于智能地锁的本身条件所限,传输协议只能采取TCP协议或者UDP协议。这两种协议均属于TCP/IP协议族,该族协议是一种传输层协议。虽然这两种协议都可以与服务器进行通信,但是两种协议有较大的不同,主要体现在可靠性上。TCP是一种可靠的协议,在和服务器建立连接之前需要进行三次握手,即智能锁端先向服务器发送信息,服务器返回信息,智能锁返回确认信息。经过三次握手后,数据进行传输。这种传输方式的好处是数据的传递较为可靠,但实时性较弱。UDP是一种非可靠的协议,在建立连接前不需要进行三次握手,而是直接进行通讯,这样很容易造成数据的丢失。根据对本系统的业务需求的分析得出,智能锁的信息需要安全可靠的传送到服务端,因此最终选用了TCP协议。对于应用层协议,选取了自定义的通讯协议。
当用户在Android客户端使用此APP时,服务器与客户端应用之间的相关数据和信息应该进行同步,例如一般用户车位预约信息、车主共享车位信息、程序后台操作人员任务发布状态、安装维修人员接受任务状态等全部和平台对外服务有关的信息。基于TCP长连服务器对底层地锁的限制,此应用也需要首先与TCP服务器连接,随后基于这一服务器平台对数据进行实时转发,进而实现对底层地锁的实时管控。然而对于客户端的一般数据来说,其均可从数据库中获得,不需要通过底层设备对数据进行同步。因此当客户端和服务器之间只需要同步普通数据时,通过HTTP协议即可完成。HTTP作为一种应用层协议,是在TCP短连接模式和请求应答模式基础上建立的,基本可应用于所有类型的网络架构。通信协议的信息可作为普通数据,通过JSON格式封装的字符串实现传输,但针对图片及相关类型的二进制数据,只有通过标准的HTTP协议才可完成传输。
2.2服务器端
服务器作为同步及交互客户端数据、浏览器端和地锁端数据的平台,其核心功能为提升数据传输的稳定性,保障数据传输的高效性、安全性和可靠性。服务器主要包含底层地锁数据接口、后台监控数据接口和Android端数据接口三个模块。
1)底层地锁和服务器均与TCP服务器连接,通过这一平台完成数据同步,地锁状态的实时变化情况可由底层地锁数据接口监测。
2)企業监管人员在Web端和客户端对数据提出的请求均由底层地锁数据接口处理,每提出一个数据请求,接口将进行相应的处理流程。
3)一般用户、来自于公司的维修安装工作人员以及车位主所提出的数据同步需求均会传递至Android端数据接口,这一接口通常会对大部分请求进行处理。
2.3智能地锁端
本设计中地锁开关由中间推杆控制,中间推杆处于伸出状态时,地锁处于关闭状态,此时上端顶盖上升,阻止车辆的进入;当中间推杆处于收缩状态时,地锁则处于开启状态。地锁利用WI-FI或GPRS与网络连接,基于TCP长连方式实现与服务器的数据交互。
智能地锁端的核心功能在于控制地锁的开关,进而对车位主所共享的车位进行管控。智能地锁端的功能均是基于TCP服务器实现的,因此当地锁第一次与服务器连接时,需首先注册并与服务器共享ID号码及注册行为等相关数据,以使服务器明确地锁的基本信息。在地锁实际应用过程中,通常会遇到网络信号不稳定等情况,致使服务器和地锁之间的连接断开,因此为保障地锁与服务器之间连接的稳定性,需要在地锁内部嵌入断开重连机制。其次,服务器通常会主动断开并清除无效的地锁连接,因此有必要在地锁内部嵌入“心跳”机制,也就是说地锁通过有时间规律地向服务器传输心跳信息,告知服务器此连接的有效性,防止被服务器清除。
2.4浏览器端
浏览器端可实现以下功能:系统管理员可以利用可视化界面从服务器端得到实时数据或者和服务器进行数据交互,随后在浏览器端后台录入相关的车位共享和地锁等信息,同时可以发布维修及安装任务。详细功能描述如下:
1)浏览器端可通过图表等可视化形式展示车位和地锁的地址、编号及状态等实时信息;
2)用户可以在浏览器端实时更改、增删或查询车位信息,同时浏览器端可以实现相关数据的自动更新;
3)系统管理人员可在浏览器端发布及管理车位订单和安装维修任务。
2.5移动APP端
一般用户和车位主是移动客户端的主体使用人员。本文开发的APP是基于Android平台设计的,在这一应用中,拥有私家车位的用户可以提出申请,成为车位主,申请经后台操作人员处理审核通过后,用户便可以车位主的身份共享车位;其次此应用通过百度地图的API,可以展示地图信息并对用户周边的共享车位进行标记,以便于一般用户查找附近车位并进行预约操作。在这一系统中,地锁的安装和维修人员数量相对较少,因此可设计开发专门针对安装和维修人员的应用,系统管理员在此应用中发布相关任务,安装和维修人员接受任务后,可在系统中查看车位主地址,随后前往进行地锁安装和维修工作。若维修人员发现地锁不能维修,可以在系统中提出地锁报废,再由安装人员进行安装。
3、实验与测试
在整个平台的设计和开发过程中软件测试是十分重要的一部分。是系统正式上线后能否正常工作的关键。为了测试系统的可靠性和稳定性,将系统服务器部署到阿里云上,使用外网测试平台各项功能是否正常。测试主要包括车位主发布车位共享信息,普通用户正常预约使用#后台管理人员发布地锁安装和维修任务以及安装维修人员接收安装维修任务。实验证明平台运行流畅,各个业务流程顺利进行,数据传输快速,界面设计合理#比较符合当前国内用户的使用习惯。
参考文献:
[1]杨雷.基于物联网技术的共享停车位管理系统设计[J].数码设计,2018,7(01):47-49.
[2]李煜.私家车位共享APP的设计与实现[D].西北大学, 2017.
[3]陆斌.车位共享系统设计及服务端开发[D].东南大学, 2017.