三菱FX系列PLC下载通信协议说明.docx
三菱FX系列PLC下载通信协议说明作者声明:转摘时请注明出处:ourDEV.cn,谢谢。三菱FX系列PLC编程口通信协议总览该协议实际上适用于PLC编程端口以及FX-232AW模块的通信通讯格式命令(CMD)DEVICEREADCMDDEVICEWRITECMDFORCEONCMDFORCEOFFCMD命令码目标设备0X,Y,M,S,T,C,D,X,Y,M,S,T,C,D"T'X,Y,M,S,T,C“8X,Y,M,S,T,C扩展命令码读配置E00写配置E10读程序E01写程序E11传输格式:RS232C波特率:9600bps奇偶:even帧格式STX CMD DATA校验:累加方式和校验字符:ASCII命令16进制代码命令解释ENQ05H通信请求CK0611PLC正确响应NAK15HPLC错误响应STX02H报文开始ETX0311报文结束DATAETXSUM(upper)SUM(Iower)例子STX,CMD,ADDRESS,BYTES,ETX,SUM02H,30H,31H,30H,46H,36H,30H,34H,03H,37H,34H指令解释如下:STX,0,z,10F6z,z,04zz,ETX“74”报文开始,读命令,地址10F6H处,04H字节数据,报文结束,累加方式和校验其中SUM=CMD+ETX=30h+31h+30h+46h+36h+30h+34h+03h=74h;累加和超过两位取低两位,转换成ascii码,分SUM(upper),SUM(IoWer)二次传送。三菱FX系列PLC编程口通信协议例一RS232C接口,通讯波特率9600,7,e,10PC机(设置为FXlS)向停止运行的FXlS正常下载11步程序。三菱FXISPLC下载通信协议说明作者:许意义日期:2009.6.11PC机发送字节数:OOO1,数据:05/ENQ;如无应答,延迟1.28XlOmS再次发送ENQ,连续3次发送无应答,则通讯出错,和PLC连接不上。PC机发送字节数:0001,数据:05/ENQPLC应答字节数:0001,数据:06/ACK;PLC应答(已收到)PC机发送字节数:0011,数据:0230303145303031033641/STX,"O",OIE0","01",ETX,"6A";查询PLCOIEOH地址数据字节(FXIS运行状态)PLC应答字节数:OoO6,数据:023041033734/STX,zz0Azz,ETX,74;PLC返回OA,代表PLC暂停;如PLC返回09,代表PLC运行PC机发送字节数:0011,数据:0230304530323032033643/STX,0",OEO2,"02,ETX,6C;查询PLC0E02H地址数据字(PLC型号)PLC应答字节数:OoO8,数据:0243323536034533/STX,C256,ETX,E3";PLC返回6266,代表PLC型号FXlN;如PLC返回”C256,代表PLC型号FXlSPC机发送字节数:0011,数据:023038303030I3245033732/STX,0,8000,2E,ETX,72;发出读PLC指令(这些内容为PLC内预置参数值)PLC应答字节数:OOO8,数据:41/STX,zz020065A",入PLC8000H地址处连续2EH字节数据PLC应答字节数:OOO8,数据:30/"90000000,PLC应答字节数:OOO8,数据:32/"02020202,PLC应答字节数:OOO8,数据:32/"02020202”,PLC应答字节数:OOO8,数据:32/"02020202,PLC应答字节数:Ooo8,数据:32/"02020202,PLC应答字节数:OoO8,数据:32/"02020202,PLC应答字节数:OOO8,数据:32/"02020202,PLC应答字节数:OoO8,数据:32/"02020202”,PLC应答字节数:OOO8,数据:32/"02020202”,PLC应答字节数:OOO8,数据:32/"02020202,PLC应答字节数:OOo8,数据:36/"02020”,ETX,"B68000H地址处连续2EH字节数据02303230303635;Pe机读3930303030303030323032303230303230323032303032303230323030323032303230303230323032303032303230323030323032303230303230323032303032303230323030323032300342PC机发送字节数:0011,数据:023038STX,802E,2E,ETX,89;发出读PLC指令(这些内容为PLC内预置参数值)PLC应答字节数:OOO8,数据:30/STX,"2020F40",入PLC802EH地址处连续2EH字节数据PLC应答字节数:OOO8,数据:30/"9FF0BF40”,PLC应答字节数:OOO8,数据:30/"1E703640”,PLC应答字节数:OOO8,数据:30/"EC70EDC0”,PLC应答字节数:OOO8,数据:30/"EFF0E900”,PLC应答字节数:OOO8,数据:3032453245033839/802EH地址处连续2EH字节数据02323032304634;Pe机读394646304246343145373033363445433730454443454646304539303146453033303030/z/lFE03000",PLC应答字节数:OOo8,数据:3030303030303030/"00000000",PLC应答字节数:OOO8,数据:3030303030303030/"00000000",PLC应答字节数:OOo8,数据:3030303030303030/"00000000”,PLC应答字节数:OOO8,数据:3030303030303030/"00000000”,PLC应答字节数:OoO8,数据:3030303030303030/"00000000,PLC应答字节数:Ooo8,数据:3030303030034535/00000,ETX,"E5”PC机发送字节数:0011,数据:0230304530363032033730/STX,0,“0E06,02,ETX,70,z;查询PLC0E06H地址数据字PLC应答字节数:Ooo8,数据:0231303030034334/STX,100(,ETX,C4;PLC返回”1000,代表??PC机发送42字节数:0011,数据:02303830354333450338/STX,0,"805C”,3E,ETX,8B;发出读PLC805CH地址处连续3EH字节数据指令PLC应答30 30 35 433IH字节数据字节数:0128,数据:023036323430374335304630/38304630304646464646464646464646/80FoOFFFFFFFFFFF”,46464646464646464646464646464646/FFFFFFFFFFFFFFFF”,46464646464646464646464646464646/FFFFFFFFFFFFFFFF”,46464646464646464646464646464646/46464646464646464646464646464646/46464646464646464646464646464646/46464646464646464646464646034141/“fffffffffffff”, etx, ,aa,zSTX,z,062407C50F0005Cz/,;PC机读入PLC805CH地址处连续PC机发送字节数:0055,数据:0231383035433136303232/STX,"1","805C","16","022,;发出写PLC805CH地址处连续16H字节(11步程序)数据指令30 30 46 46 / 400C50F00FF,16H字节(11步程序)数据46 46 46 46 / /,FFFFFFFFFFF46 46 46 46 / "FFFFFFFFFFF”,46 03 42 31 / "FFFFFFFF”, ETX, "B1”PLC 应答字节0634 30 30 43 35 30 46;接出PC机连续送出46 464646 46 46 46 4646 46 46 46 46 4646 46 46 46 46 46 46数 :0001, 数据/ CK ; PLC应答(已收到)/数据:/PC机发送字节数:OoO5,数据:0242033435STX,B,ETXJ45";发出下载程序写结束指令PLC应答字节数:OOOL06ACK;PLC应答(已收到)PC机发送字节数:OolL数据:0230383035433136033741/STX,0,805C,16,ETX,“7A;发出读PLC805CH地址处连续16H字节(11步程序)数据指令(校验下载数据)PLC应答字节数:0048,数据:02303232343030433530463030464646/STX,022400C50F00FFF;PC机读入PLC805CH地址处连续16H字节(11步程序)数据/FFFFFFFFFFFFF”,ETX,39/下载结束三菱FX系列PLC编程口通信协议例二RS232C接口,通讯波特率9600,7,e,10PC机(设置为FXlN)向停止运行的FXlN正常下载3步程序。三菱FXINPLC下载通信协议说明作者:许意义日期:2009.6.12PC机发送字节数:0001,数据:ENQ/PC机发出通信请求PLC应答字节数:0001,数据:ACK/PLC应答(已收到)PC机发送字节数:0011,数据:STX,0,OEO2,02,ETX,6C/查询PLC0E02H地址数据字(PLC型号)PLC应答字节数:OOO8,数据:STX,62,66”,ETX,D7/PLC返回6266,代表PLC型号FXINPC机ENQ求PLC应ACK到)发送答字字节数节数:0001,数据:/PC机发出通信请:0001,数据:/PLC应答(已收PC机发送字节数:0013,数据:STXJEo0,询PLCOleoH地址数据字节(FXlN运行状态)PLC应答字节数STX,0A,ETX,74/01C0,01,ETXJDD"/查:0006,数据:PLC返回OA,代表PLC暂停/如PLC返回09,代表PLC运行PC机ENQ求PLC应ACK到)发送答字字节数节数:0001,数据:/PC机发出通信请:0001,数据:/PLC应答(己收PC机发送字节数:0011,数据:STXj0,OEO2,02,ETX,6C/再次查询PLC0E02H地址数据字(PLC型号)PLC应答字节数:OOO8,数据:STX,62,66,ETX,"D7/PLC返回6266,代表PLC型号FXlNPC机ENQ求PLC应ACK发送答字字节数节数:0001,数据:/PC机发出通信请:0001,数据:/PLC应答(己收到)PC机发送字节数:0013,数据:STX,E0,802E,2Ez,ETX,FF/发出读PLC802EH地址处连续2EH字节数据指令(这些内容为PLC内预置参数值)PLC应答字节数:0008,数据:STX,'2','O','2','O','F','4','0'/PC机读入PLC802EH地址处连续2EH字节数据PLC应答字节数:0008,数据:'9','F','F','0','B','F','4','0'PLC应答字节数:0008,数据:'1','E','7','0','3','6','4','0'PLC应答字节数:0008,数据:'E','C','7','0','E','D','C','0'PLC应答字节数:0008,数据:'E','F','F',0','E','9','0','0'PLC应答字节数:数08,数据:,1,F,E,'0','3','0','0','0'PLC应答字节数:0008,数据:'0','0','0','0','0','0','0','0'PLC应答字节数:0008,数据:'0','0','0','0','0','0','0','0'PLC应答字节数:0008,数据:'0','0','0','0','0','0','0','0'PLC应答字节数:数08,数据:'0','0','0','0','0','0','0','0'PLC应答字节数:数08,数据:'0','0','0','0','0','0','0','0'PLC应答字节数:0008,数据:'0','0','0','0','0',ETX,E5PC机ENQ发送字节数:0001,数据/PC机发出通信请求PLC应答字节数0001,数据ACK/PLC应答(已收到)PC 机发送 字节数:0013,数据:STX, RTC,z 8000 ,z 2E , ETX,z E8z / 发出读PLC 8000H地址处连续2EH字节数据指令(这些内容为PLC内预置参数 值)PLC 应答 字节数:0008,数据:STX,'O','8','0','O','D','7','C' /PC机读入PLC 8000H地址处连续2EH字节数据PLC应答字节数:OOo8,PLC应答字节数:Ooo8,PLC应答字节数:OOo8,PLC应答字节数:OoO8,PLC应答字节数:OOO8,PLC应答字节数:OoO8,PLC应答字节数:OOo8,PLC应答字节数:OOO8,PLC应答字节数:Ooo8,PLC应答字节数:OoO8,PLC应答字节数:Ooo8,格活出CifI居居出居居居居数数数数数数数数数数数0 2 2 2 0,0,0,0,0,2,2,2, 0,0,0,0,0,2,2,2, 0,0,0,0,0,2,2,2, 9,0,0,0,2 ,O 2, ,O 2, ,O 2, ,O2 0, 2, 0, 2, 0, 2, ,O2 2 2 2 O,O,O,O,CE , , , , , 2,2,2,2,ETX , , , , , 0,0,0,0,0, , , , , , 2,2,2,2,2, , , , , , 0,0,0,0,0, , , , , , 2,2,2,2,2, , , , , , 0,0,0,0,0,PC机发送字节数:0013,数据:STX,EO0,OEO6”,02,ETX,"E5”发出读PLC OEO6H地址处一字数据指令(这些内容为PLC内预置参数值)PLC 应答字节数:OOo8,数据STX, 1000 ,ETX, C4 字数据/ PC机读入PLC 0E06H地址处一/读入PLC中已有程序到)PC 机发送字节数:0013,数据:STX, Eo 1,"805C", "2E",ETX, 00/发出读PLC 805CH地址处连续2EH字节数据指令PLC 应答 字节数:0008,数据:STX,' O','2','2','4','O','3','C' /PC机读入PLC 805CH地址处连续2EH字节数据PLC应答字节数:OoO8,PLC应答字节数:OOO8,PLC应答字节数:OOO8,PLC应答字节数:Ooo8,PLC应答字节数:OoO8,PLC应答字节数:OOo8,PLC应答字节数:OOo8,PLC应答字节数:OoO8,PLC应答字节数:OOO8,PLC应答字节数:OoO8,PLC应答字节数:OOO8,居居居居居杉格杉出 数数数数数数数数数数数F,F,F, F,F,F, F,F,F, F,F,F, F,F,F, F,F,F,F,F, F,F, F,F, F,F,F,TxFFFFFFF,5CPC机发送字节数:0001,数据:ENQ/PC机发出通信请求PLC应答字节数:0001,数据:CK/PLC应答(已收/读入结束PC机发送字节数:0001,数据:ENQ求/PC机发出通信请PLCACK到)应答字节数:0001,数据:/PLC应答(已收PC机发送字节数:0010,数据:STX/E,7,7,6,0,E,ETX,z6zPLCACK应答字节数:0001,数据:/下载程序PC机发送字节数:0001,数据:ENQ/PC机发出通信请求PLC应答字节数:0001,数据:ACK/PLC应答(已收到)PC机发送字节数:0025,数据:STX,"El1,”805C,"06",'0','2','2',4,0,3,,C5;0,F,0,0,ETX,69/PC机发出写PLC805CH地址处连续06H字节(3步程序)数据指令PLC应答字节数:0001,数据:ACK/PLC应答(已收到)/下载结束PC机发送字节数:0001,数据:ENQ/PC机发出通信请求PLC应答字节数:0001,数据:ACK/PLC应答(已收到)PC机发送字节数:0010,数据:STX/E,8,'7','6','0','E',ETX,62"PLC应答字节数:0001,数据:ACKPC机发送字节数:0001,数据:ENQPLC应答字节数:0001,数据:ACKPC机发送字节数:00ENQ,数据:STX,ETX,45PLC应答字节数:0001,数据:ACK/检验程序PC机发送字节数:0001,数据:ENQPLC应答字节数:0001,数据:ACKPC机发送字节数:0013,数据:STX,zzE0,z,805Czz,06,z,ETX,"EF"发出读PLC805CH地址处连续06H字节数据指令PLC应答字节数:0008,数据:STX,'O','2','2','4','O','3','C','5','O','F','O','O',ETX,7C/PC机读入PLC805CH地址处连续06字节数据RS232C接口,通讯波特率9600,7,e,10PC机(设置为FXIN)向运行中的FXlNPLC下载程序,其结果返回PLC正在运行,无法下载程序。PC机发送字节数:0001,数据:05/ENQ;如无应答,延迟L28X10mS再次发送ENQ,连续3次发送无应答,则通讯出错,和PLC连接不上。PC机发送字节数:0001,数据:05/ENQPLC应答字节数:0001,数据:06/ACKPC机发送字节数:0011,数据:0230304530323032033643/STX,0,OEO2,02,ETX,6C;查询PLC0E02H地址数据字(PLC型号)PLC应答字节数:Ooo8,数据:0236323636034437/STX,6266,ETX,D7;PLC返回"6266",代表PLC型号FXlN;如PLC返回"C256",代表PLC型号FXlSPC机发送字节数:0001,数据:05/ENQPLC应答字节数:0001,数据:06/ACKPC机发送字节数:0013,数据:02453030303143303031034444/STX,EO0,OlC0,01,ETX,DD;发送读OICoH地址状态字节(FXlN运行状态)内容PLC应答字节数:OOO6,数据:023039033643/STX,09,ETX,6C;PLC返回09,代表PLC运行;如PLC返回0A,代表PLC暂停RS232C接口,通讯波特率9600,7,e,1oPC机(设置为FXlN)向运行中的FXlNPLC下载程序,其结果返回PLC正在运行,无法下载程序。PC机发送字节数:0001,数据:05/ENQ;如无应答,延迟L28X10mS再次发送ENQ,连续3次发送无应答,则通讯出错,和PLC连接不上。PC机发送字节数:0001,数据:05/ENQPLC应答字节数:0001,数据:06/ACKPC机发送字节数:0011,数据:0230304530323032033643/STX,"0",OEo2","02",ETX,6C";查询PLC0E02H地址数据字(PLC型号)PLC应答字节数:OOO8,数据:0236323636034437/STX,6266,ETX,D7;PLC返回6266,代表PLC型号FXIN;如PLC返回"C256",代表PLC型号FXISPC机发送字节数:0001,数据:05/ENQPLC应答字节数:0001,数据:06/ACKPC机发送字节数:0013,数据:02453030303143303031034444/STX,Eo0,OIC0,01,ETX,DD;发送读OIeOH地址状态字节(FXlN运行状态)内容PLC应答字节数:OOO6,数据:023039033643/STX,09,ETX,6C;PLC返回09,代表PLC运行;如PLC返回“0A,代表PLC暂停/Iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii/RS232C接口,通讯波特率9600,7,e,1oPC机(设置为FXIS)向FXIN下载程序,其结果返回PLC型号FXlN,不匹配,无法下载程序。PC机发送字节数:0001,数据:05/ENQ,如无应答,延迟1.28X1OmS再次发送ENQ,连续3次发送无应答,则通讯出错,和PLC连接不上。PC机发送字节数:0001,数据:05/ENQPLC应答字节数:0001,数据:06/ACKPC机发送字节数:0011,数据:0230303145303031033641/STX,0,OIE0,01,ETX,"6A";查询PLCOlEOH地址数据字节(FXIS运行状态)PLC应答字节数:OoO6,数据:023041033734/STX,zz0A,z,ETX,74;PLC返回OA,代表PLC暂停;如PLC返回09,代表PLC运行PC机发送字节数:0011,数据:0230304530323032033643/STX,"0",OEo2","02",ETX,6C";查询PLCOEO2H地址数据字(PLC型号)PLC应答字节数:OOo8,数据:0236323636034437/STX,6266,ETXjD7;PLC返回6266,代表PLC型号FXlN;如PLC返回回256,代表PLC型号FXlSRS232C接口,通讯波特率9600,7,e,10PC机(设置为FXlN)向FXlS下载程序,其结果返回PLC型号FXlS,不匹配,无法下载程序。PC机发送字节数:0001,数据:05/ENQ,如无应答,延迟L28X10mS再次发送ENQ,连续3次发送无应答,则通讯出错,和PLC连接不上。PC机发送字节数:0001,数据:05/ENQPLC应答字节数:0001,数据:06/ACKPC机发送字节数:0011,数据:0230304530323032033643/STX,"0","0E02","02",ETX,6C;查询PLC0E02H地址数据字(PLC型号)PLC应答字节数:OOO8,数据:0243323536034533/STX,C256,ETX,E3;PLC返回“C256",代表PLC型号FXlS;如PLC返回"6266",代表PLC型号FXIN三菱FXINPLe下载通信协议说明作者:叶工通讯波特率9600, 7,e, 1RS232电脑端SEND:0230304530323032033643发送完了以后PLC端ACK:02363236360344374434SEND: 02 45 30 30 30STX ,E00 OlCOACK:0231 43013030 30 31 03 44ETX XX410337“STX /,0z,ETX"XX"01偶认为应认为EOO表以上是FXlN的协议,PC机发送"E00OlCO示读,OlCO表示读的地址01表示读的字节数.PLC返回OA正好与所读字节数相符.以上是本贴给出的FXlS数据,看似FXlS的通信格式与FXlN不是太一样哦PC机发送字节数:0011,数据:0230303145303031033641/STX,0,OIE0,01,ETX,“6A";查询PLCOlEOH地址数据字节(FXlS运行状态)PLC应答字节数:Ooo6,数据:023041033734/STX,0A,ETX,"74";PLC返回OA,代表PLC暂停;如PLC返回“09,代表PLC运行RS232C接口,通讯波特率9600,7,e,10PC机(设置为FXIN)向停止运行的FXlN正常下载3步程序。PC机发送字节数:0001,数据:ENQ/PC机发出通信请求PLC应答字节数:0001,数据:ACK/PLC应答(已收到)PC机发送字节数:0011,数据:STX,0,OEO2,02”,ETX,6C/查询PLC0E02H地址数据字(PLC型号)PLC 应答STX, 62”, 66,ETX, D7PC ENQ PLCACK 到)机发送应答字节数:OoO8,数据:/PLC返回6266,代表PLC型号FXlN字节数:0001,数据:/PC机发出通信请求字节数:0001,数据:/PLC应答(已收PC机发送字节数:0013,数据:STX,"E00”,OlC0,"01”,ETX,"DD'/查询PLCOlCoH地址数据字节(FXIN运行状态)PLC应答字节数:Ooo6,数据:STX,0A”,ETX,“74'/PLC返回"0A",代表PLC暂停/如PLC返回09,代表PLC运行PC机发送字节数:0001,数据:ENQ/PC机发出通信请求PLC应答字节数:0001,数据:ACK/PLC应答(已收到)PC机发送字节数:OO11,数据:STX,OEo2,02,ETX,6C/再次查询PLC0E02H地址数据字(PLC型号)PLC 应答STX, "62,66,ETX, "D7”字节数:OoO8,数据:/PLC返回6266,代表PLC型号FXlNPC机发送字节数:0001,数据:ENQ求/PC机发出通信请PLC应答字节数:0001,数据:ACK到)/PLC应答(己收PC机发送字节数:0013,数据:STX,RTC,8000,“2E,ETX,“E8/发出读PLC值)8000H地址处连续2EH字节数据指令(这些内容为PLC内预置参数PLC应答字节数:0008,数据:STX,'O','8','0','O','D','7','C'/PC机读入PLC8000H地址处连续2EH字节数据PLC应答字节数:0008,数据:'9','0','0','0','0','0','0','0'PLC应答字节数:0008,数据:'0','2','0','2','0','2','0','2'PLC应答字节数:0008,数据:0','2','0','2','0','2','0','2'PLC应答字节数:0008,数据:'0','2','0','2','0','2','0','2'PLC应答字节数:0008,数据:0','2','0','2','0','2','0','2'PLC应答字节数:0008,PLC应答字节数:0008,PLC应答字节数:0008,PLC应答字节数:0008,PLC应答字节数:0008,PLC应答字节数:0008,2 2 2 2 2 O,O,O,O,O,CE , , , , , V 2 2 2 2 2 T , , , , , 二JL 0,0,0,0,0,0, 2,2,2,2,2,2, 0,0,0,0,0,0, 2,2,2,2,2,2, 0,0,0,0,0,0, 居居居居居活 ,一 I S 1I .,U *- JJ/- 二. 二 二一 二. -* . - * , 数数数数数数Pe机发送字节数:0013,数据:STX,E01”,802E,2E,ETX,FF/发出读PLC802EH地址处连续2EH字节数据指令(这些内容为PLC内预置参数值)PLC应答字节数:0008,数据:STX,'2','O','2','0','F','4','0'/PC机读入PLC802EH地址处连续2EH字节数据PLC应答字节数:数08,数据:PLC应答字节数:0008,安乂才占:PLC应答字节数:0008,安乂才/占:PLC应答字节数:0008,vdl :PLC应答字节数:0008,玄乂 虫占:PLC应答字节数:0008,PLC应答字节数:0008,数据:PLC应答字节数:0008,数排;:PLC应答字节数:0008,数据:PLC应答字节数:0008,数据:PLC应答字节数:0008,数据:PC 机发送字ENQPLC 应答字ACK到)PC机发送字节数:数13,数据:出读PLC 0E06H地址处一字数据指令PLC 应答字STX, zzIOOOzz, ETX, zzC4,z字数据9',' F',' F',' 0',' B',' F',' 4',' 0' 1,E,7, ,0,3,6, ,4,0, E',' C',' 7',' 0',' E',' D',' C',' 0' E',' F',' F',' 0','