智能化停车场车位监测管理系统
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
由图4-6及图4-7可见,仿真可分为数据包构造过程以及数据包还原过程,其仿真界面如图:
图4-7网络仿真界面
4.3.1超声波距离数据包构造仿真
选择该仿真后,输入车位和假想距离。
现在的普通停车场,一层一般拥有50个左右。
因此这翠的车位号范围设置为1至50。
根据第三章第二节的讨论,有这样的结论:超声波检测的距离数据是在O.6米至1.6米属于有车停放,1.6米至3米之间没有停放车辆,小于0.6米或者大于3米则表明该车位异常。
因此设置可输入的距离范围是0.0米至10米。
假设现在是对车位号是30检测,获得距离数据是l米,属于异常情况。
如图4—7,车位号输入30,距离输入l。
选择确定则丌始构造数据包,最后生成文本文档。
输入的车位号相当于下位机的IP地址。
同时为了简化,车位号也当作网卡地址的一部分。
输入的距离属于数据负载部分,大小是3个字节。
这是不满足以太网最小数据负载是46个字节的要求,需要填充补足。
本仿真把距离数据包的负载大小规定为50个字节,并把距离数据填充到整个负载的最高位,其余全部设定为O。
这样在识别数据时只需要提取整个负载的前3个字节即可。
对负载处
理完以后,程序开始按顺序调用Libnet的数据包构造函数。
构造完成以后程序对各个协议头进行校验,包括CRC32校验和报头校验。
最后生成文本文档。
文
图4.8超声以太网仿真输入界面
图4-9超声波仿真数据包
本文档以车位号命名,并且加上“d”以表示是距离数据的数据包。
如图4—9就是有关车位30的超声波检测距离的数据包,文本文档名字是“30d.txt”。
由于是内容是以二进制填写的,所以都是一些相应的ASCII符号。
而MAC地址是以字符串填入的,因此可以识别。
前6个字节是目的地址,后6个是源目的地址。
可以看到源目的地址是“26c41E”。
后面的“lE”就是30的十六进制表示,即表明是出车位号为30的车位下位机发出的。
文本文档的大小为96字节。
按照图4—2的封装形式,整个协议头长度是:
14(以太网报头长度)+20(IP报头长度)+8(UDP报头长度)=42(字节)
负载设定为50个字节,CRC32校验为4个字节。
所以整个帧大小为42+50+4=96个字节。
刚好等于文本文档的大小,封装成功。
4.3.2图像数据包构造仿真
选择该仿真后,需要输入车位号码以及选择图片。
如图4—10,输入的车位是28,图片选择如图4-11的车辆图片,表示该车位的图像。
该图像大小为1.928KB,即1975个字节。
为了可以方便的写入文本文档,对图像文件的每个字节做以下
图4.10图像以太网仿真输入图
Z叩61102174141姗…
图4-11用于仿真的汽车图
处理:一个字节的无符号值的范围是0~255。
先将每个字节看成是0~255的其中一个值,而不把它当作一个ASCII码考虑。
然后把它变成字符串。
整个过程把每个字节都变成了三个字节,因此图像用于打包的大小就是原来的三倍,即1975×3=5925个字节。
对于以太网来帧来说,整个以太网帧的负载最大是1500个字节。
除去IP报头的20字节以及UDP的8个字节,完整的以太网帧实际上可以
容纳的数据负载大小是1500-20—8=1476个字节。
显然5925大于1476,图像不可能完全置于以太网帧内,只能分割。
在分割过程中,最后l帧的负载大小有可能小于以太网最小数据负载的为46字节的要求。
为了区分距离数据包与图像数据包,若出现分割的最后一部分小于46个字节,则填充至100个字节。
因此整个图像处理过程如下:
获取图像文件的大小,然后建立一个以字节为单位,长度是图像大小的数组。
按顺序将图像的内容,每次读入一个字节并把该字节置于数组之中。
读完图片以后,数组也被填满,内容即是图像每个字节的内容。
对数组的每个单元进行处理,按照每个单元的值即ASCII码值转换成字符串。
如ASCII码值是123的,处理后即是字符串“123”。
转换后传入相应的字符串。
这个过程也是一直到把数组的所有单元都处理完。
新产生的字符串就是图像的内容的字符表达。
每次按顺序截取1000个字节,然后把它们作为数据负载封装到以太网帧里面,写入文本文档。
每个文本文档的名字组成是:车位号+“P”+“k”。
k表示第几帧,是封装的顺序。
这次选择的图像大小是1.928KB,即1975个字节。
转换后大小是5925个字节。
按照每1000个字节处理,可以分割成6份,按顺序Iji『5帧每帧都是1000个字节,最后1帧是925个字节。
由上文可知,整个协议报头的长度是:14(以太网报头长度)+20(IP报头长度)十8(UDP报头长度)----42(字节)负载为1000个字节,CRC32校验为4字节。
因此Ij{『5个帧的内容大小是42+1000+4=1046(字节)约1.02KB
这与文本文档的大小一致。
同理,最后l帧的大小是971个字节,与文本文档的大小一致。
第一帧的文本文档名字是“8p1.txt”。
第二帧的文本文档名字是“8p2.txt”。
一直到最后l帧即第6帧,名字是“8p6.txt”。
如图4一12就是有关8号车位图像的其中一个数据包,内容见图,文本文档名字是“8p1.txt”。
可见,源地址为“26c408”,即第8号车位。
图4-12图像仿真数据包
4.3.3数据还原
数据还原是选取任何一个数据包,程序根据数据包的内容进行判断,分别还原为图像或者距离数据,同时给出是哪个车位。
判断的准则是根据端口以及数据包负载的大小进行判断。
超声波距离数据包的接收端口设为256,而图像接收的端口设为250。
同时,距离数据包负载大小只有50个字节。
而图像数据包的负载最小是100个字节。
通过获得数据包负载大小也可以将不同性质的数据包区分。
如果判断是距离数据包,则提取负载以及车位信息,最后给出车位号和车位情况。
仿真过程把车位号直接用于命名文件名称以及IP地址。
因此根据文件名称或者IP地址即可获得车位号。
按照填充的规则,负载的静3个字节就是距离数据。
因此只要提取盼3个字节即可。
获得距离后进行判断车位状况:0.6米~1.6米为已停放车辆。
1.6米~3米为没有车辆停放,小于0.6米或者大于3米为车位异常。
现选择文件名为“30d.txt”的文本文档。
该文档是表示第30号车位的距离数据,由前文知道,仿真输入的距离为l米,因此判断应为异常。
程序运行后得到的信息如图4一12。
图4-12超声波信息包数据还原结果图
可见,距离获取以及判断也讵确。
如果判断是图像数据,那么还需要寻找其他分组。
这些分组是必须来自于同一个下位机即同一个网卡和IP地址,以及同一时间段。
与判断距离数据包的车位号一样,通过根据文件名称或者IP地址即可获得车位号。
是否同一时间段则通过IP报头的标识字段判断,相同则是,相反则不是。
之后就按照顺序进行组装。
顺序号既可以根据文件名(不包括后缀名)的最后l位获取。
如文件名是“8p3.txt”。
没有后缀名即“8p3”,顺序号就是“3”。
也可以通过IP段偏移量获得。
因为仿真是假定以太网网络状况理想,所以每个数据包都可以到达主机,并且不同时间段的数据包不会同时到达主机,它们相隔的时间相对长。
因此仿真过程不产生不同时间段的数据包。
现选择文件名是“8p3.txt”的文本文档。
该文档表示第8号车位的图像。
之前选择的图像是图4-11。
程序运行后获得这样的信息(如图4-13)。
可以看出,仿真结果是争正确的:既正确返回图像,也正确显示了车位号。
图4-13图像信息包数据还原结果图
图5.1系统登录界面
不论是换班还是系统在关闭后的重新进入,都是该界面。
操作人员输入登陆账号以及密码后,系统通过查询数据库,获得该操作人员的权限,然后选择适当的界面供操作人员使用。
权限越高,可操作项越多。
权限越低,可操作项越少。
图5—2为管理员级别的界面,而图5-3是操作员的级别。
两图有明显的区别。
两者操作界面的下方都是一些系列操作键。
管理人员的操作键数目明显多于操作员的操作键数目。
操作人员缺乏的那些操作键具有的功能是拥有管理员或者超级
图5.2管理员操作界面
图5.3一般操作人员操作界面
用户权限可以进行的操作。
对于普通操作人员来说,这些键不仅仅是隐藏了,而且是屏蔽了。
它利用了VB控件通用属性中的Enabled属性,令其值为False,使之失效。
即使普通操作员知道这些键的位置并进行点击,也不可以操作。
总的来说超级用户即开发人员,可以对系统进行任何操作。
管理人员可以对数据库进行添加删除等操作,包括操作人员添加、记录删除。
操作人员除了对自己的密码进行修改以及查询信息以外,只可以监控。
(2)数据操作部分
系统记录的数据主要有车位信息,车位使用情况,操作人员记录,操作人员操作记录等。
以操作人员查询为例,图5—4是操作人员查询的界面。
这个是只具有一般操作员权限的用户管理界面。
可以看出,在这个界面上可以进行人员的查询、添加的操作。
如果是具有管理员权限的,将拥有删除、修改的权限。
操作之后数据会保存到数据库。
图5.4操作人员管理界面
(3)监控部分:
监控部分是实时图像显示如图5—5。
这是一个4×4的监控画面,每个子画面显示一个车位,一个16个车位,轮巡时间由超级用户进行配置。
每个子画面的左上角均显示捕捉图像的时间,右上角为车位的位置标识。
这些标识有助于操作人员知道相应车位的情况。
从图5—5可以看到,界面的右下方有一个车位显示的按钮,通过点击它可以快速切换到电子地图。
操作人员通过该快捷键进行切换,与电子地图的车位图交互显示。
当发现某一画面异常可立刻进行操作。
监控画面时得操作人员直观得到车况,提高整个系统的管理水平。
图5-5实时图像画面图
40
(4)电子地图部分
电子戆霾是运震¥转软{孛援寒梅建豹寝羧车位溪,妇瑟5-6。
图5-6电子车位画嘲图
霹觅,这个疆蟊裁是搡佟久员登录送入系统掰看到静主要簿分。
瀚主标畜车斑毒的图标就魑车位。
每个圈标上面除了杯有车位号以外,还用颜色袭明该图标的使用状况。
缘色表明该车饿空闲,黄色表明该车位已皱使用,红色则表明该车像的使用获况在发生变纯。
状况交纯有三静情况:一惫窜驶入空阕像嚣,二是车骏离车位,三鼹翠位异常。
电子地图可以总览所有的车位,第一时间知道率位的使用状况。
同时它也熊反应车谴傻翔状况豹交纯。
当车位使羽状况发生交化的时候,该强标将交红怨,提醒管理人员。
电子地圈与实时监控嘲面通过快捷键切换,使操作人员更容易获褥停车场熊馈瑟。
电子燎图除了模拟每个车位使用状况以外,还霹以立刻反成恣时车位韵情况:只要双老怒要查看静率位的相应萄标,该车位鹘强像立刻出蕊,如图5—7。
当其中一个率位第22号牟位车况发生变化,其图标颜色变为红色。
图5-6电子车位变化画面图
双击该图标,界面的右上角立刻出现该位置的图像画面。
该画面类似监控图像画面的子窗口。
它的左上角显示时间,右上角显示位置。