摘要:HOLLiAS-LEC G3小型一体化PLC支持自由口通讯功能,可以与任何协议的第三方设备进行自由口通讯。WWW_PLCJS@_COM%-PLC-技.术_网
W1WW_P4LCJS_COM-PLC-技.术_网
关键词:自由口通讯; PLC;FLASH存储;WW.W_PLCJS_COM-PLC-技.术_网
WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)
1 引言WWcW_PLCJS_COM-PLC-技.术_网
和利时G3系列PLC是杭州和利时公司自主研发的小型一体化PLC产品。G3系列PLC具有可靠性高、指令丰富、通讯能力强等特点。其支持六种编程语言,包括LD、IL、FBD、SFC、ST、CFC,能够适应多种PLC编程基础的人群。一些大的控制系统具有很多现场设备,其中一部分现场设备可能不支持标准的通讯协议, 但是还需要与第三方控制设备进行数据通讯,任何一个厂商的PLC都不可能支持所有现场设备的数据通信协议。如何实 PLC与非标准协议的第三方设备进行互联呢,G3系列PLC推出了自由口的通讯方式,可以实现与任何协议的第三方设备进行互联。本文介绍的是G3系列PLC通过自由口与Flash存储设备进行数据通讯。WW.W_PLC※JS_C,OM-PL,C-技.术_网
2 G3系列PLC的通讯方式WWW_PLCJS@_COM%-PLC-技.术_网
G3系列PLC支持多种通讯方式,如Profibus DP、以太网、自由口通讯。G3系列PLC的CPU模块本体集成了一个RS232通讯口和一个RS485通讯口,RS232和RS485支持标准的Modbus RTU、G3专有协议和自由口通讯协议。用户可以用图程序设定通讯口的协议、通讯速率、数据位、校验、发送数据和接收数据。下图为和PLC自由口相关的功能块指令。WWW_PLCJS_COM-PLC-技.术_网
WWW_PL※CJS_COM-PLC-技.术_网
WWW_PL※CJS_COM-PLC-技.术_网
图1为设定自由口通讯速率、数据位、校验的指令;图2为恢复Modbus RTU和G3专有协议的指令,同时也可以设定通讯速率、数据位和校验;图3为数据发送指令;图4为数据接收指令。同时软件中有CRC校验的功能块指令,可以进行数据校验。也可以通过ST语言方便的编写校验程序。以计算CRC校验码为例,下面是变量声明部分:——可——编——程——控-制-器-技——术——门——户
FUNCTION_BLOCK Generate_CRCWWW_PLCJS※COM-PLC-技.术_网(可※编程控※制器技术门户)
VAR_INPUTWWcW_PLCJS_COM-PLC-技.术_网
pData:POINTER WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)
TO BYTE;plcjs.技.术_网
byteCounter:WORD;WWW_PL※CJS_COM-PLC-技.术_网
END_VARP.L.C.技.术.网——可编程控制器技术门户
VAR_OUTPUTWWW_PLC※JS_COM-PmLC-技.术_网
CRC_Code:WORD;plcjs.技.术_网
FINISH:BOOL:=FALSE;——可——编——程——控-制-器-技——术——门——户
END_VARWWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)
VARWWcW_PLCJS_COM-PLC-技.术_网
Reg16: WORD;WWW_PL※CJS_COM-PLC-技.术_网
j: BYTE;WW.W_PLCJS_COM-PLC-技.术_网
i: WORD;WWW_P※LCJS_COM-PLC-)技.术_网
mval: WORD;WWW_PLCJS@_COM%-PLC-技.术_网
temp_byte: BYTE;P.L.C.技.术.网——可编程控制器技术门户
flg: WORD;WWW_PL※CJS_COM-PLC-技.术_网
END_VARWWW_PLCJS※COM-PLC-技.术_网(可※编程控※制器技术门户)
P.L.C.技.术.网——可编程控制器技术门户
以下是ST语言的程序代码部分:WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)
Reg16 := 16#FFFF;——可——编——程——控-制-器-技——术——门——户
mval := 16#A001; WWW.PLCJS.COM——可编程控制器技术门户
W1WW_P4LCJS_COM-PLC-技.术_网
FOR i:=0 TO byteCounter-1 BY 1 DOWWW_PLCJS※COM-PLC-技.术_网(可※编程控※制器技术门户)
temp_byte:=pData^;WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)
pData:=pData+1;plcjs.技.术_网
Reg16:=(Reg16 XOR temp_byte);WW.W_PLC※JS_C,OM-PL,C-技.术_网
WWW.PLCJS.COM——可编程控制器技术门户
FOR j:=0 TO 7 BY 1 DOWWW_P※LCJS_CO※M-PLC-技-.术_网
flg := 0;plcjs.技.术_网
flg:=(Reg16 AND 16#0001); WWcW_PLCJS_COM-PLC-技.术_网
Reg16 := SHR(Reg16,1); WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)
IF (flg = 1) THENWWW.PLCJS.COM——可编程控制器技术门户
Reg16:=Reg16 XOR mval;plcjs.技.术_网
END_IF;WWW_PLCJS※COM-PLC-技.术_网(可※编程控※制器技术门户)
END_FOR;W1WW_P4LCJS_COM-PLC-技.术_网
END_FOR;WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)
WWW_PLCJ-S_COM-PLC-技.术_网(可-编程控-制器技术-门户)
CRC_Code:=Reg16;WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)
FINISH:=TRUE;WWW_PLCJS_COM-PLC-技.术_网
3 数据存储系统的设计WWcW_PLCJS_COM-PLC-技.术_网
该PLC控制系统是应用在节能汽车上,通过PLC对液压回路的控制使汽车达到降低油耗的目的,在该车的试验阶段,需要把运行过程中的一些过程数据进行记录。当时提出了三种设计方案,第一种方案是对PLC进行改造,在内部增加一条FLASH芯片,修改PLC的底层程序,实现数据的存储;第二种方案是通过GPRS收发器把数据上传到远程PC;第三种方案是通过自由口与U盘读写模块进行通讯,把数据实时写入U盘中。我们对运行环境进行了现场考察和反复研究,在可靠性、稳定性、方便性等方面做了大量工作,权衡利弊,最终选择了方案三进行实施。WW.W_PLC※JS_C,OM-PL,C-技.术_网
Flash存储设备首先要配置各项参数,包括接口方式、功能设置、通讯速率等,如图5所示:WWcW_PLCJS_COM-PLC-技.术_网
P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户
图5模块配置WW.W_PLC※JS_C,OM-PL,C-技.术_网
PLC进行压力、流量、速度等一些参数的采集,并把数据转换为ASII码的形式进行实时存储。然后通过自由口对U盘读写模块发送指令,U盘读写模块对发送的指令进行响应,并完成相应的读写U盘操作。系统要求在每组数据后面进行时间记录,所以PLC在每次数据发送的同时把时间写在文件中,程序流程图如图6所示:WW.W_PLC※JS_C,OM-PL,C-技.术_网