starttime=time()dowhiletime()<starttime+5 doEventsloop
ifmscomm1.inbuffercount=1then%是否有响应
ifASC(mscomm1.input)=6then %是否为PLC正确响应 &使PLC运行
Privatesubcommand1_click()
dimdevdatasstringmscomm1.inbuffercount=0mscomm1.outbuffercount=0devdat= 8250F +chr(3) )使PLC停止
Privatesubcommand2_click()dimdevdatasstring
mscomm1.inbuffercount=0mscomm1.outbuffercount=0devdat= 7250F +chr(3) 定时检测PLC状态
[5]
%M8037的复位命令字符串
mscomm1.output=ch(2)+devdat+sumcheck(devdat)(发送M0的置位命令,由于是(编程口通
信,不需要写站号和标识号
Endsub
%M8037的置位命令字符串mscomm1.output=ch(2)+devdat+sumcheck(devdat)
%发送M0的置位命令Endsub
setin=mscomm1.input%读接收缓冲区text1.text=setinsetin1=mid(setin1,2,1)%接收到的字符%从左起第三产业个字符起的4个字符%是K4M16的数值,排列顺序为2184.所%以我们取左起第2字符的2个字符就%是K4M16的低8位:M16+M23md=mid(setin1,2,1)
%取M19M18M17M16+8421md1=val(#&H +md)%转换为十进制m(0)=md1mod2
shape1.backcolor=&H80FF80%绿色+PLC运行态ELSE
shape.backcolor=&HFF8080%红色+PLC停止态EndifEndsub
Privatesubtimer1_timer()
dimdevaddasstring
dimsetinasstring,setin1asstringdimmdasstring,md1asintegerdimmgasstring,mg1asintegerdimm(6)asintegerdimdiannjasinteger
devadd= 0 + 0102 + 02 +chr(3)%读K4M16命令字符串mscomm1.inbuffercount=0mscomm1.outbuffercount=0
mscomm1.output=chr(2)+devadd+sumcheck(devadd)
%发送读K4M16命令tim=timer1
doIftimer>tim+1thenexitdo
loopuntilmscomm1.inbuffercount>=83 2 下位PLC程序
!PLC元件分配
X0ON水位上液位触点闭合
X2ON电机过热继电器动作
PLC与上位机通信以及PLC组网的相关资料
50
M20ON水位下液位指示M21ON电机过热指示
青海大学学报第28卷
M16ONPLC在运行态 OFFPLC在停止态M17ON电机在运行态 OFF电机在停止态M18ON系统在自动态 OFF系统在手动态
M0ON系统自动状态 OFF系统手动状态有关
[3]290
此外,程序中的M8000、M8002、M8035、M8036、M8037为PLC的特殊软件元件,与PLC的运行控制
。
指令语句表代码(限于篇幅未使用梯形图)
LDIM0ANDM32LDX001ORY000ANDM0ORB
ANIX000ANIX002OUTY000OUTM17ANIM8037
OUTM16LDM0OUTM18LDX000OUTM19LDX001OUTM20LDX002OUTM21END
OUTM8035OUTM8036LDM8037RSTM0LDM8002RSTM32LDX002ORX000ORM0RSTM32
LDM8000
4 结语
通过通信接口将PLC与PC,甚至PLC网络与计算机网络链接,将PC强大的运算能力和PLC的抗干扰能力强、可靠性高、编程简单等优点结合起来,可使以PLC为核心的工业控制系统更加智能化和富有灵活性。参考文献:
[1]漆海霞.基于FX编程口的PC与PLC的通信[J].工业计算机,2009,22(2):23.
[2]三菱电子有限公司.FX系列微型可编程控制器用户手册:通信篇[M].上海:[出版者不详],2006:5.[3]王万丽,郝庆文,臧永福.三菱系列PLC原理及应用[M].北京:人民邮电出版社,2009:178-291.[4]宋莉.基于PLC的远程监控及故障诊断[D].青岛:山东科技大学,2004:34.
[5]孙亚宁,邓平东.PC和PLC通信程序程序设计[J].昆明理工大学学报:理工版,2007,32(6):21.
(责任编辑唐宏伟)