来源:中国一卡通网 作者:yang wen hu 发布时间:2007-04-02 10:06:32 字体:[大 中 小]
摘 要:本文详细介绍了125KHZ 射频卡读卡器及DVP 系列PLC的通讯协议,并在WINDOW 环境下使用VB 开发通讯,采样,记录及控制程序,实现PC 与读卡器、PLC 之间通信.
1、前言
一卡通系统在楼宇智能化方面已经得到了广泛的应用,对于安防、进出控制、身份识别等方面的技术日见成熟。通过PC 机实现对读卡器的采样及判断,在由PC 机发出控制指令给PLC,实现考勤管理及智能门禁控制,以动态数据画面、报表形式、文件共享等技术实现对办公及住宅的安全实时管理。本文详细介绍了125KHZ 射频卡读卡器及DVP 系列PLC的通讯协议,并在WINDOW 环境下使用VB 开发通讯,采样,记录及控制程序,实现PC 与读卡器、PLC 之间通信.
2、PC 与125KHZ 射频卡读卡器的数据采样
射频IC 卡识别技术,通常由载有密码的射频IC 卡来代替键盘密码,不可复制.读卡模块读出密码后,即产生输出信号,将卡号送入PC 进行数据库管理.
(1) 读卡器通讯协议传输速率为9600bps,无奇偶校验,数据位为8 位,1 个停止位.
(2) R232 数据格式
(3) 通信口初始化
Mscomm1.setting=”9600,N,8,1”
Mscomm1.comport=1
Mscomm1.input=0
Mscomm1.inputmode=cominputmodebinary
Mscomm1.rthreshold=11
Mscomm1.portopen=True
(4) 设置串口响应
Select Case Mscomm1.commevent
Case ComEvReceive
Dim buffer as Variant
Dim string(11) as string
Buffer=Mscomm1.inpu
Dim I as Interger
Dim Cardnumber as long
Cardnumber=CDec(buffer(7)*2^16+ buffer(8)*2^8+ buffer(9))
For I=0 to 10
StringBuf(I)=DecToHex(CDec(buffer(I)))
Next
Text1.Text = "数据:" & StringBuf(0) & StringBuf(1) & StringBuf(2) & StringBuf(3) _
& StringBuf(4) & StringBuf(5) & StringBuf(6) & StringBuf(7) & StringBuf(8) &
StringBuf(9) & StringBuf(10) & " 卡号:" & Str(CardNumber)
CardCode = Mid$(Text1.Text, 42)
End select
Function DecToHex(DecNumber As Integer) As String
If DecNumber <= 15 Then
DecToHex = " 0" & Hex(DecNumber)
Else: DecToHex = "" & Hex(DecNumber)
End If
End Function
进一步转换成卡号,利用ODBC打开存有关于卡号内容的本地数据库,对卡号进行判断并
记录下合法卡号,当前时间及其他信息生成报表进行考勤管理和门禁控制.
3、PC 与DVP 系列PLC 的串行通讯
通过PC 的COM2 与DVP 系列PLC 的 RS-232C 端口连接,来实现控制
(1) DVP 系列PLC 的通信协议为ASCII 模式,9600 传输速度,偶同位,1 个起始位,1 个停止位.
(2)通讯资料格式
(3)接收命令
DVP 系列PLC 有读命令,复位命令和强制命令,表中X-输入继电器,Y-输出继电器,M-辅助继电器,S-状态元件,T-定时器,C-计数器,D-数据寄存器.另外用于强制命令时,0XFF000 为线圈导通0X0000 为断开
(4)PLC 装置地址
(5)PLC 基本梯型图
M1 由PC 发出通断命令,当X1 闭合时,M1 闭合则电磁门锁闭合,M1 断开则电磁门锁打
开.当X1 断开时PC 只执行考勤而对门禁不起作用.
(6)通信初始化及控制
Mscomm2.setting=”9600,E,7,1”
Mscomm2.comport=2
Mscomm2.inputmode=cominputmodetext
Mscomm2.portopen=True
Private sub sendon()
Mscomm2.output=”:01050801FF00F2”+chr$(13)+chr$(10)
End sub
Private sub sendoff()
Mscomm2.output=”:010508010000F1”+chr$(13)+chr$(10)
End sub
4、结束语
该系统已经成功的运用于考勤和门禁管理,程序设计简明,且实现成本较低,可以通过互联网络进行远程管理和控制,对其他型号的PLC 和读卡器也有借鉴之处,在办公管理自动化中非常有效.
推荐文章
论坛热帖