FX系列PLC专用协议通信指令格式详解

  
  让大家久等了!主要最近事情太多,加上翻译、制作也不太容易,天气又热...
  好啦,进入正题吧!

  约定说明:
     ENQ为请求标志,ASCII值5,VB中以chr(5)表示;
     ACK为正确标志,ASCII值6,VB中以chr(6)表示;
     STX为请求标志,ASCII值2,VB中以chr(2)表示;
     EXT为请求标志,ASCII值3,VB中以chr(3)表示;
     表格中红色字为需要求和效验的部分;
     和效验为每一项的ASCII值的总和转换成十六进制后区低两位;
     站号、PLC号、元件数量、和效验都是以十六进制表示;
     等待延时为0-150毫秒,以十六进制0H-FH表示,如100ms为AH。

  1、批量读出位元件--BR指令
  格式:

  1 2 3 4 5 6 7 8             15 16 17  
PC侧:
ENQ
站号
PLC号
BR
延时
首地址
数量
和效验
ACK
站号
PLC号
PLC侧:
STX
站号
PLC号
数据
EXT
和效验
                  9 10 11 12 13 14        

  例如:要读出站号为5的FX系列PLC的X40到X44共5点的状态值,延时100ms,假设X40与X43为OFF,其余为ON:

注释:
请求
站号
PLC号
命令
延时
元件首地址
元件数量
和效验
 
代码:
ENQ
0
5
F
F
B
R
A
X
0
0
4
0
0
5
5
7
ASCII码:
05H
30H
35H
46H
46H
42H
52H
41H
58H
30H
30H
34H
30H
30H
35H
35H
37H

  您只要将以上兰色部分的代码以字符串形式(VB中可以表示为chr(5)&"05FFBRAX00400547")发送到PLC,就会有正确的回应信息,如下:
注释:
站号
PLC号
元件首地址
和效验
 
代码:
STX
0
5
F
F
0
1
1
0
1
EXT
0
5
ASCII码:
02H
30H
35H
46H
46H
30H
31H
31H
30H
31H
03H
30H
35H


  请自行分析以上代码。

 

  2、批量读出字元件--WR指令
  格式:

  1 2 3 4 5 6 7 8             15 16 17  
PC侧:
ENQ
站号
PLC号
WR
延时
首地址
数量
和效验
ACK
站号
PLC号
PLC侧:
STX
站号
PLC号
数据
EXT
和效验
                  9 10 11 12 13 14        

  该命令使用方法与1(BR)命令相同,不再赘述。


  3、批量写入位元件--BW指令
  格式:

  1 2 3 4 5 6 7 8 9        
PC侧:
ENQ
站号
PLC号
BW
延时
首地址
数量
写入值
和效验
PLC侧:
 
ACK
站号
PLC号
                    10 11 12  

 


  4、批量写入字元件--WW指令
  格式:

  1 2 3 4 5 6 7 8 9        
PC侧:
ENQ
站号
PLC号
WW
延时
首地址
数量
写入值
和效验
PLC侧:
 
ACK
站号
PLC号
                    10 11 12  



     请继续关注
如何控制PLC的运行/停止




请尊重站长的劳动,转载时请附上Sinan的邮箱或主页链接
sinan@sina.com  http://www.gkong.com