以微控制器为核心的停车场管理功能板设计
扫描二维码
随时随地手机看文章
一、前言:
图1:汽车进入车场控制示意图 |
二、概述:
在实际的环境中,我们在停车场入口的挡臂前设置地感A,当有车辆要进场时,必须经过设置在停车场的臂杆前处的地感A,车辆在地感A处干预地感,地感受干预产生信号,此时基于单片机P89c58为核心的智能功能板能迅速实现对其产生的信号的采集,在采集到地感A的信号时,即了解到当前有车辆要求进入停车场,如图1,随即向320 X 240的液晶显示屏发指令驱动显示“请读卡”信息以提示用户,同时为用户打开非接触式感应读卡器允许用户进行读卡操作。用户进行读卡操作时,功能板同样能迅速地采集非接触式读卡器向其发送过来的卡号信息,并将该信息转发至上位pc机处理,pc机对卡号进行是否有效判断,将结果返还功能板,功能板能对pc机返还的信息进行判断,当收到卡号无效信息内容时,发出指令驱动液晶显示屏显示“此卡无效或缴费过期,不允许进入”提示用户。否则,当功能板接收到卡号有效信息时即发指令控制执行起臂动作,允许当前车辆行进,同时驱动的液晶显示屏提示“允许进入,请进”。为了完成关臂动作,功能板将采集设置在臂杆之后的地感B的信号,以判断车辆是否成功驶进停车场内。当允许进入的车辆经过地感B时,地感B与地感A工作原理相同,产生信号并传送到功能板,功能在采集到地感B送来的信号时候,即确认车辆已经成功进入,功能板则发指令关闭读卡器和启动关臂动作。由此完成车辆进场方面的管理。
在车场内的车辆出场的管理方面,功能板使用同样工作方式和原理,功能板从读卡器采集卡号信息送至上位PC机,由PC机返还卡号是否有效结果,卡号无效,功能板驱动液晶显示器显示“此卡无效或缴费过期,出场未允许”提示用户;当卡号有效,功能板则控制起臂动作,同时驱动液晶显示器显示“出站允许,一路顺风”。
三、信号方案:
图2:通讯接口单元 |
1.单片机->上位机数据(用户信息)
字节 | ASCII | 16进制数 | 解释 |
第一 | <STX> | 02H | 数据头 |
第二 |
P~_ ` ~o |
50H~5FH 60H~6FH | 地址代码:单片机地址码,由单片机硬件决定 50H~5FH:入口地址代码(共16个地址) 60H~6FH:出口地址代码(共16个地址) |
第三 | H | 48H | 指令类型:单片机->上位机数据(用户信息) |
第四 | 0~9 | 3XH(X=1~10) | 卡号字节1~10 |
第五 |
| 00H~99H | 年,BCD码表示,如:03H表示2003年 |
第六 |
| 01H~12H | 月,BCD码表示,如:03H表示3月 |
第七 |
| 01H~31H | 日,BCD码表示,如:15H表示15号 |
第八 |
| 00H~23H | 时,BCD码表示,如:16H表示下午16点 |
第九 |
| 00H~59H | 分,BCD码表示,如:04H表示4分 |
第十 |
| 00H~59H | 秒,BCD码表示,如:50H表示50秒 |
第十一 |
| 00H~FFH | 校验码低位字节;将前面所有代码(包括STX>) 校验码高位字节;相加,取最后两个字节 |
第十二 |
| 00H~FFH | |
第十三 | <ETX> | 03H | 数据尾 |
2.单片机与上位机数据通信(状态信息)
字节 | ASCII | 16进制数 | 解释 |
第一 | <STX> | 02H | 数据头 |
第二 |
P~_ ` ~o |
50H~5FH 60H~6FH | 地址代码:单片机地址码,由单片机硬件决定 50H~5FH:入口地址代码(共16个地址) 60H~6FH:出口地址代码(共16个地址) |
第三 | I | 49H | 指令类型:单片机->上位机数据(状态信息) |
第四 | H~W I P Q R S T U | 48H~57H | 故障代码:48H表示没有故障或接收数据正确 49H表示数据接收有误,请求重发 50H表示起落杆不能开起 51H表示起落杆不能降落 52H表示第一个地感可能损坏 53H表示第二个地感可能损坏 54H表示读卡器可能损坏 55H表示卡机可能损坏 |
第五 |
| 00H~FFH | 校验码低位字节;将前面所有代码(包括STX>) 校验码高位字节;相加,取最后两个字节 |
第六 |
| 00H~FFH | |
第七 | <ETX> | 03H | 数据尾 |
根据上面的信号方案,车到地感A处,此处是入口,地址是52H(R),单片机等待接收卡号。读取卡号是30H,31H,32H,33H,34H,35H,36H,37H,38H,39H(0123456789),卡号接收后,记录当前时间:2003年3月25日,下午13点12分30秒,单片机发出数据信息(H):<STX>, R, H, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, <ETX>, <ETX>, %, <DC3>, <DC2>, 0, <ETX>, ), <ETX>。十六进制表示:(共22个字节):
02H,52H,48H,30H,31H,32H,33H,34H,35H,36H,37H,38H,39H,03H,03H,25H,13H,
12H,30H,03H,29H,03H上位机接收到数据后,发送返回如下:
允许通过发送: 02H,52H,50H,03H,03H,25H,13H,12H,30H,01H,24H,03H
不允许通过发送: 02H,52H,51H,03H,03H,25H,13H,12H,30H,01H,25H,03H
要求单片机再次发送数据发送:02H,52H,52H,03H,03H,25H,13H,12H,30H,01H,26H,03H
上位机设置单片机时间:假设当前时间为2003/5/13,早上9点42分20秒,上位机发送数据:02H,52H,54H,03H,05H,13H,09H,42H,20H,01H,2EH,03H。单片机数据接收正确,返回状态:02H,52H,49H,48H,00H,E5H,03H ;单片机数据接收错误,请求重发:02H,52H,49H,49H,00H,E6H,03H。
上位机查询单片机状态:假设当前时间为2003/5/13 早上9点42分20秒,上位机发送数据:02H,52H,53H,03H,05H,13H,09H,42H,20H,01H,2DH,03H;单片机返回状态:02H,52H,49H,48H,00H,E5H,03H(48H表示无故障,其它依次类推)。上位机查询单片机最后一次记录的卡号和时间:假设当前时间为:2003/5/13,早上9点42分20秒,单片机最后一次记录处理卡号的时间是:2003/5/12,下午16点30分59秒,上位机发送数据:02H,52H,52H,03H,05H,13H,09H,42H,20H,01H,2CH,03H;单片机返回:02H,52H,48H,30H,31H,32H,33H,34H,35H,36H,37H,38H,39H,03H,05H,13H,09H,
42H,20H,03H,2FH,03H。
四、结语
目前使用的停车场管理系统硬件复杂、体积较大,而且价格昂贵,出现故障时很难检查和维护。基于P89c58核心的停车场管理功能板结构简单,本文作者的创新点是在硬件和软件设计过程中充分开发了P89c58的功能,达到了最高的性价比;在软件设计方面考虑较周到, 使通讯顺畅、功能齐全、管理人性化,并且性能稳定、监测数据准确。实际试验后效果很好。