三菱plc通讯协议.docx
《三菱plc通讯协议.docx》由会员分享,可在线阅读,更多相关《三菱plc通讯协议.docx(11页珍藏版)》请在冰豆网上搜索。
![三菱plc通讯协议.docx](https://file1.bdocx.com/fileroot1/2022-11/28/d4a693c6-10ca-40f7-a10b-343e791f26ff/d4a693c6-10ca-40f7-a10b-343e791f26ff1.gif)
三菱plc通讯协议
三菱plc,通讯协议
篇一:
三菱PLC通讯协议
三菱PLC编程口通讯协议
一、三菱PLC编程口通讯协议
三菱PLC编程口的通讯协议比较简单,只有四个命令,即:
命令命令码目标设备
DEVICEREADCMD0X,Y,M,S,T,C,D
DEVICEWRITECMD1X,Y,M,S,T,C,D
FORCEONCMD7X,Y,M,S,T,C
FORCEOFFCMD8X,Y,M,S,T,C
五个标示:
ENQ05H请求
ACK06HPLC正确响应
NAK15HPLC错误响应
STX02H报文开始
ETX03H报文结束
使用累加方式的和校验,帧格式如下:
STXCMDDATA......DATAETXSUM(upper)
1
SUM(lower)
和校验:
SUM=CMD+?
?
+ETX。
如SUM=73H,SUM=“73”。
1、DEVICEREAD(读出软设备状态值)
计算机向PLC发送:
始命令首地址位数终和校验
STXCMDGROUPADDRESSBYTESETXSUM
PLC返回
STX1STDATA2NDDATA.....LASTDATAETXSUM
2、DEVICEWRITE(向PLC软设备写入值)
计算机向PLC发送:
始命令首地址位数数据终和校验
PLC返回
ACK(06H)接受正确
NAK(15H)接受错误
3、位设备强制置位/复位
FORCEON置位
始命令地址终和校验
STXCMDADDRESSETXSUM
02h37haddress03hsum
FORCEOFF复位
始命令地址终和校验
2
STXCMDADDRESSETXSUM
02h38haddress03hsum
PLC返回
ACK(06H)接受正确
NAK(15H)接受错误
以上可以看出,协议非常简单,但是由于没有寄存器类型
信息,所以地址的计算十分关键,如D100和M100分别对
应哪个地址呢,下面就是三菱Fx系列PLC地址对应表:
PublicConstPLC_D_Base_AddRess=4096
PublicConstPLC_D_Special_Base_AddRess=3584
PublicConstPLC_Y_Group_Base_AddRess=160
PublicConstPLC_PY_Group_Base_AddRess=672
PublicConstPLC_T_Group_Base_AddRess=192
PublicConstPLC_OT_Group_Base_AddRess=704
PublicConstPLC_RT_Group_Base_AddRess=1216
PublicConstPLC_M_SINGLE_Base_AddRess=2048(命
令为7或8时)
PublicConstPLC_M_Group_Base_AddRess=256
PublicConstPLC_PM_Group_Base_AddRess=768
PublicConstPLC_S_Group_Base_AddRess=0
PublicConstPLC_X_Group_Base_AddRess=128
PublicConstPLC_C_Group_Base_AddRess=448
3
PublicConstPLC_OC_Group_Base_AddRess=960
PublicConstPLC_RC_Group_Base_AddRess=1472
PublicConstPLC_TV_Group_Base_AddRess=2048
PublicConstPLC_CV16_Group_Base_AddRess=2560
PublicConstPLC_CV32_Group_Base_AddRess=3072
当我们用DEVICEREAD命令时,D100地址
=100*2+4096;M100地址=100+256;不同的是D类型寄存
器存放的是字,M寄存器存放的是位,同样是读两个字节,
D100返回的就是PLC中D100地址的值,M类型寄存器返
回的是M100到M116的值。
所以当我们用FORCEON命
令时,M100寄存器地址=100+2048;
这也没有什么复杂的,不是吗,可是三菱公司好像不甘于
如此,FORCEON/Off命令中地址排列与DEVICE
READ/WRITE不同,是低位在前高位在后。
如Y20,地址
是0510H,代码中4个字节地址表示为:
1005。
(注意:
Y
寄存器为八进制,如Y20地址=16+1280=0510H)
篇二:
三菱PLC编程口协议
最近做一个PC通过编程口与FXPLC通讯的程序,在网
上找好久,内部软元件的地址还是找不全。
没办法,只好使用
串口监视软件分析GXDeveloperPLC编程软件发送的代
码三菱FX系列PLC编程口通信协议总览
该协议实际上适用于PLC编程端口以及FX-232AW模
4
块的通信。
感谢网友visualboy提供。
通讯格式:
命令命令码目标设备
DEVICEREADCMD0X,Y,M,S,T,C,D
DEVICEWRITECMD1X,Y,M,S,T,C,D
FORCEONCMD7X,Y,M,S,T,C
FORCEOFFCMD8X,Y,M,S,T,C
传输格式:
RS232C
波特率:
9600bps
奇偶:
even
校验:
累加方式(和校验)
字符:
ASCII
16进制代码:
ENQ05H请求
ACK06HPLC正确响应
NAK15HPLC错误响应
STX02H报文开始
ETX03H报文结束
帧格式:
STXCMDDATA......DATAETXSUM(upper)
SUM(lower)
例子:
5
STX,CMD,ADDRESS,BYTES,ETX,SUM
02H,30H,31H,30H,46H,36H,30H,34H,03H,37H,34H
SUM=CMD+......+ETX;
30h+31h+30h+46h+36h+30h+34h+03h=74h;
累加和超过两位取低两位
命令格式
1、DEVICEREAD(读出软设备状态值)
计算机向PLC发送:
始命令首地址位数终和校验
STXCMDGROUPADDRESSBYTESETXSUM
例子:
从D123开始读取4个字节数据
02h30h31h,30h,46h,36h30h,34h03h37h,34h
地址算法:
address=address*2+1000h
再转换成ASCII
31h,30h,46h,36h
PLC返回
STX1STDATA2NDDATA.....LASTDATAETXSUM
注:
最多可以读取64个字节的数据
例子:
从指定的存储器单元读到3584这个数据
02h33h35h38h34h03h44h,36h
2、DEVICEWRITE(向PLC软设备写入值)
始命令首地址位数数据终和校验
6
STXCMDGROUPADDRESSBYTES1STDATA2ND
DATA......LASTDATAETXSUM例子:
向D123开始的两个存储器中写入1234,ABCD
02h31h31h,30h,46h,36h30h,34h
33h,34h,31h,32h,43h,44h,41h,42h03h34h,39hPLC返回
ACK(06H)接受正确
NAK(15H)接受错误
3、位设备强制置位/复位
FORCEON置位
始命令地址终和校验
STXCMDADDRESSETXSUM
02h37haddress03hsum
FORCEOFF复位
始命令地址终和校验
STXCMDADDRESSETXSUM
02h38haddress03hsum
PLC返回
ACK(06H)接受正确
NAK(15H)接受错误
设备强制中的地址公式:
Address=Address/8+100h
说明:
1.帧中的BYTES表示需要读取或者写入的字节数。
7
2.地址算法上有说明。
3.累加和是从STX后面一个字节开始累加到ETX的和。
通过串口监视得到的数据如下:
PLC型号:
FX0N
使用GXDeveloper的在线,调试,软元件测试功能
以下列出不同的操作发送的不同内容,前面一段是Hex
码后面一段是对应的ASCII码
//////////////////////////////////CMDONYO//////////////////
023730303035034646.70005.FF
//////////////////////////////////CMDOFFYO/////////////////////023830303035033030.80005.00
//////////////////////////////////CMDONY1////////////////////
023730313035033030.70105.00
//////////////////////////////////CMDOFFY1//////////////////
023830313035033031.80105.01
//////////////////////////////////CMDONXO//////////////////
023730303034034645.70004.FE
//////////////////////////////////CMDOFFXO/////////////////////023830303034034646.80004.FF
//////////////////////////////////CMDONX1//////////(来
自:
WWw.xlT小龙文档网:
三菱plc,通讯协议)////////
023730313034034646.70104.FF
8
//////////////////////////////////CMDOFFX1//////////////////
023830313034033030.80104.00
//////////////////////////////////CMDONT0//////////////////
023730303036033030.70006.00
//////////////////////////////////CMDOFFT0//////////////////
023830303036033031.80006.01
//////////////////////////////////CMDONT1//////////////////
023730313036033031.70106.01
//////////////////////////////////CMDOFFT1/////////////////
023830313036033032.80106.02
//////////////////////////////////CMDONC0//////////////////
023730303045033046.7000E.0F
//////////////////////////////////CMDOFFC0//////////////////////023830303045033130.8000E.10
//////////////////////////////////CMDONC1//////////////////
023730313045033130.7010E.10
//////////////////////////////////CMDOFFC1//////////////////////023830313045033131.8010E.11
//////////////////////////////////CMDONM0//////////////////
023730303038033032.70008.02
//////////////////////////////////CMDOFFM0//////////////////////023830303038033033.80008.03
9
//////////////////////////////////CMDONM1//////////////////
023730313038033033.70108.03
//////////////////////////////////CMDOFFM1//////////////////////023830313038033034.80108.04
//////////////////////////////////CMDONS0//////////////////
023730303030034641.70000.FA
//////////////////////////////////CMDOFFS0//////////////////////023830303030034642.80000.FB
//////////////////////////////////CMDONS1//////////////////
023730313030034642.70100.FB
//////////////////////////////////CMDOFFS1//////////////////////023830313030034643.80100.FC
//////////////////////////////////CMDWRITED015AB16Bit/////////////////02313130303030324142313503.1100002AB15.
343040
//////////////////////////////////CMDWRITED115AB15AB32Bit/////////////////
02313130303030344142313541.1100004AB15A
423135033242B15.2B
//////////////////////////////////CMDWRITET015AB16Bit/////////////////023130383030303241423135
10
03.1080002AB15.
343747
//////////////////////////////////CMDWRITET115AB15AB32Bit/////////////////
02313038303030344142313541.1080004AB15A
423135033332B15.32
//////////////////////////////////CMDWRITEC015AB16Bit/////////////////02313041303030324142313503.10A0002AB15.
353050
//////////////////////////////////CMDWRITEC115AB15AB32Bit/////////////////
02313041303030344142313541.10A0004AB15A
423135033342B15.3B
以上是用FX-0NPLC时的情况,从上面的数据很容易分
析出内部软元件的地址,有趣的是在换成FX-1N时发现有所
不同
FX-1NPLC
以下列出不同的操作发送的不同内容
//////////////////////////////////CMDONYO//////////////////
02453730303043033532.E7000C.52
//////////////////////////////////CMDOFFYO/////////////////////0245
11
3830303043033533.E8000C.53
//////////////////////////////////CMDONY1////////////////////
02453730313043033533.E7010C.53
//////////////////////////////////CMDOFFY1//////////////////
02453830313043033534.E8010C.54
//////////////////////////////////CMDONXO//////////////////
02453730303132033432.E70012.42
//////////////////////////////////CMDOFFXO/////////////////////02453830303132033433.E80012.43
//////////////////////////////////CMDONX1//////////////////
02453730313132033433.E70112.43
//////////////////////////////////CMDOFFX1//////////////////
02453830313132033434.E80112.44
篇三:
浅谈各种PLC通讯协议
浅谈各种PLC通讯协议
一、美系厂家RockwellABRockwell的PLC主要是包括:
PLC2、PLC3、PLC5、SLC500、ControlLogix
等型号,PLC2和PLC3是早期型号,现在用的比较多的
小型PLC是SLC500,中型的一般是ControlLogix,大型的
用PLC5系列。
DF1协议是Rockwell各PLC都支持的通讯
协议,DF1协议可以通过232或422等串口介质进行数据传
输,也可以通过DH、DH+、DH485、ControlNet等网络介
12
质来传输。
DF1协议的具体内容可以在AB的资料库中下载。
AB的PLC也提供了OPC和DDE,其集成的软件中RSLogix中就包含DDE和OPCSERVER,可以通过上述软件来进行数据通讯。
AB的中高档的PLC还提供了高级语言编程功能,用户还可以通过编程实现自己的通讯协议。
二、GE现在在国内用的比较多的主要是90-70和90-30系列PLC,这两款PLC都支持SNP协议,SNP
协议在其PLC手册中有协议的具体内容。
现在GE的PLC也可以通过以太网链接,GE的以太网协议内容不对外公开,但GE提供了一个SDK开发包,可以基于该开发包通讯。
三、西门子系列PLC主要包括其早期的S5和现在的S7-200、S7-300、S7-400等各型号PLC,早期的S5PLC支持的是3964R协议,但是因为现在在国内应用较少,除极个别改造项目外,很少有与其进行数据通讯的。
S7-200是西门子小型PLC,因为其低廉的价格在国内得到了大规模的应用,支持MPI、PPI和自由通讯口协议。
西门子300的PLC支持MPI,还可以通过Profibus和工业以太网总线系统和计算机进行通讯。
如果要完成点对点通讯,可以使用CP340/341。
S7400作为西门子的大型PLC,提供了相当完备的通讯功能。
可以通过S7标准的MPI进行通讯,同时可以通过C-总线,Profibus和工业以太网进行通讯。
如果要使用点对点通讯,S7-400需要通过CP441通讯模块。
西门子
13
的通讯协议没有公开,许多组态软件都支持MPI、PPI等通讯方式,Profibus和工业以太网一般通过西门子的软件进行数据通讯。
四、施耐德(莫迪康)施耐德的PLC型号比较多,在国内应用也比较多。
其通讯方式主要是支持Modbus
和MODBUSPLUS两种通讯协议。
Modbus协议在工控行业得到了广泛的应用,已不仅仅是一个PLC的通讯协议,在智能仪表,变频器等许多智能设备都有相当广泛的应用。
MODBUS经过进一步发展,现在又有了MODBUSTCP方式,通过以太网方式进行传输,通讯速度更快。
ModbusPLUS相对于MODBUS传送速度更快,距离更远,该通讯方式需要在计算机上安装MODCON提供的SA85卡并需安装该卡的驱动才可以进行通讯。
除了上述两种方式之外,莫迪康的PLC还支持如TCP/IP以太网,Unitelway,FIPWAY,FIPIO,AS-I,Interbus-s等多种通讯方式。
五、欧姆龙系列PLC在中国推广的也比较多。
在通讯方式上,OMRON现在主要采用两种通讯方式:
HostLink协议是基于串口方式进行数据传输的通讯方式。
当PLC进入MONITOR方式时,上位机可以和欧姆龙PLC通讯。
在和欧姆龙通讯时要注意,两次通讯之间要留一定时间,如果通讯速度过快容易造成PLC通讯异常。
ControlLink是欧姆龙PLC的一种快速通讯方式。
ControlLink通过板卡进行数据
14
通讯,板卡之间有数据交换区,由板