一、前言:
PHILIPS公司的P89C58基于 80C51内核采用PHILIPS高密度CMOS技术设计制造,具有8k字节非易失性Flash只读程序存储器EPROM、3个16位定时/计数器和6个中断源,4层优先级中断嵌套结构,可用于多机通信的串行I/O口,I/O扩展或全双工UART。此外,P89C51采用低功耗静态设计,宽工作频率 (DC-33MHz),宽工作电压范围(2.7-5.5V),两种软件方式选择电源空闲和掉电模式。本设计采用P89C58作为核心处理器,用于实现停车场现代化管理的智能电子板,其内设置了一套智能并且完善的逻辑控制处理流程,在其周边搭配一套读卡器、两个地感就和一个液晶显示器就能方便而高效地实现一个大型停车场的系统管理。由此可见其硬件设计结构简单、体积小,价格低廉;在软件设计上我们力求做到通讯顺畅、功能齐全、管理人性化。
二、概述:
在实际的环境中,我们在停车场入口的挡臂前设置地感A,当有车辆要进场时,必须经过设置在停车场的臂杆前处的地感A,车辆在地感A处干预地感,地感受干预产生信号,此时基于单片机P89c58为核心的智能功能板能迅速实现对其产生的信号的采集,在采集到地感A的信号时,即了解到当前有车辆要求进入停车场,如图1,随即向320 X 240的液晶显示屏发指令驱动显示“请读卡”信息以提示用户,同时为用户打开非接触式感应读卡器允许用户进行读卡操作。用户进行读卡操作时,功能板同样能迅速地采集非接触式读卡器向其发送过来的卡号信息,并将该信息转发至上位pc机处理,pc机对卡号进行是否有效判断,将结果返还功能板,功能板能对pc机返还的信息进行判断,当收到卡号无效信息内容时,发出指令驱动液晶显示屏显示“此卡无效或缴费过期,不允许进入”提示用户。否则,当功能板接收到卡号有效信息时即发指令控制执行起臂动作,允许当前车辆行进,同时驱动的液晶显示屏提示“允许进入,请进”。为了完成关臂动作,功能板将采集设置在臂杆之后的地感 B的信号,以判断车辆是否成功驶进停车场内。当允许进入的车辆经过地感B时,地感B与地感A工作原理相同,产生信号并传送到功能板,功能在采集到地感B送来的信号时候,即确认车辆已经成功进入,功能板则发指令关闭读卡器和启动关臂动作。由此完成车辆进场方面的管理。
在车场内的车辆出场的管理方面,功能板使用同样工作方式和原理,功能板从读卡器采集卡号信息送至上位PC机,由PC机返还卡号是否有效结果,卡号无效,功能板驱动液晶显示器显示“此卡无效或缴费过期,出场未允许”提示用户;当卡号有效,功能板则控制起臂动作,同时驱动液晶显示器显示“出站允许,一路顺风”。
三、信号方案:
P89C58芯片与通信方式采用异步串行通信,信号方案主要是单片机与上位机之间的通信协议。该接口只需使用两个光耦就能完成和上位机通信的任务如图2,即节约成本又实现了隔离,如果在PC机的串行口上加接一个RS232至RS485的转换器;在单片机的串行口各连接一个RS485,很容易构成控制距离达 1.2 km 的控制系统。
1.单片机->上位机数据(用户信息)
字节 |
ASCII |
16进制数 |
解释 |
第一 |
|
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 | |
第十三 |
|
03H |
数据尾 |
2.单片机与上位机数据通信(状态信息)
字节 |
ASCII |
16进制数 |
解释 |
第一 |
|
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 | |
第七 |
|
03H |
数据尾 |
根据上面的信号方案,车到地感A处,此处是入口,地址是52H(R),单片机等待接收卡号。读取卡号是 30H,31H,32H,33H,34H,35H,36H,37H,38H,39H(0123456789),卡号接收后,记录当前时间:2003年3月 25日,下午13点12分30秒,单片机发出数据信息(H):
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的功能,达到了最高的性价比;在软件设计方面考虑较周到, 使通讯顺畅、功能齐全、管理人性化,并且性能稳定、监测数据准确。实际试验后效果很好。
参考文献:
[1]何立民.MCS—51系列单片机应用系统设计系统配置与接口技术[M].北京: 北京航空航天大学出版社. 1990
[2]王晓霞,王翠茹. 多协议标记交换网络的流量工程.华北电力大学学报. 2002
[3]王述全.基于串行接口方式单片机通用数据采集系统设计.微计算机信息. 2004
上一篇:一种简单实用的电话报警系统的设计
下一篇:基于AT89S51的液位控制系统
推荐阅读最新更新时间:2024-03-16 12:51