1松下电工FP系列可编程控制器通信协议MEWTOCOL松下电工(中国)有限公司制御EC@int.mew.co.jp2ComputerLink计算机链接MEWTOCOL-COM特点1.用于程序处理和交互式操作.2.数据传输采用ASCII码的形式.3.首先由计算机发送指令.4.由PLC对指令自动进行相应响应.基本描述指令格式指令信息:%AD(H)AD(L)#指令代码文本代码1BCC(H)BCC(L)CR应答信息(正常时):%AD(H)AD(L)$响应代码文本代码1BCC(H)BCC(L)CR应答信息(发生错误时):%AD(H)AD(L)!错误代码(H)错误代码(L)BCC(H)BCC(L)CR校验数据范围3指令一览表指令功能描述RCSReadsinglepointofcontactinformation读取单个触点的状态信息WCSWritesinglepointofcontactinformation写入单个触点的状态信息RCPReadpluralpointofcontactinformation读取多个触点的状态信息WCPWritepluralpointofcontactinformation写入多个触点的状态信息RCCReadwordunitofcontactinformation读取字单位的触点的状态信息WCCWritewordunitofcontactinformation写入字单位的触点的状态信息SCPresetwordunitincontactarea预置字单位的触点RDReaddataarea读取数据寄存器值WDWritedataarea写入数据寄存器值SDPresetofdataarea预置数据寄存器值RSReadtimerandcountersetvaluearea读取定时器/计数器目标值WSWritetimerandcountersetvaluearea写入定时器/计数器目标值RKReadtimerandcounterelapsedvaluearea读取定时器/计数器经过值WKWritetimerandcounterelapsedvaluearea写入定时器/计数器经过值MCRegistrationandresetofmonitorcontact登录及复位监控触点MDRegistrationandresetofmonitordata登录及复位监控数据MGMonitorexecution执行监控RRReadsystemregister读取系统寄存器WRWritesystemregister写入系统寄存器RTReadProgrammableController(PC)status读取PLC当前状态RPReadprogram读取程序WPWriteprogram写入程序RMRemotecontrol(RUN/PROGRAMmodeswitching)遥控(运行/编程模式切换)ABTransmissionabortcommand传输终止指令4触点和数据代码1.触点代码触点代码说明X外部输入Y外部输出R内部继电器T定时器C计数器L链接继电器2.数据代码数据代码说明D数据寄存器DTL链接寄存器LDF文件寄存器FLS目标值SVK经过值EVIX索引寄存器IXIY索引寄存器IYWX字单位外部输入WXWY字单位外部输出WYWR字单位内部继电器WRWL字单位链接继电器WL5错误代码错误类型代码说明链接系统错误2021222324252627282930未定义:NACK错误:WACK错误:多重端口错误:传输格式错误:硬件错误:单元号错误:不支持错误:无应答错误:缓冲区关闭错误:超时错误:远程单元无法被正确识别,或者发生了数据错误.用于远程单元的接收缓冲区已满.远程单元编号(01至16)设置与本地单元重复.试图发送不符合传输格式的数据.或者某一帧数据溢出或发生了数据错误.传输系统硬件停止操作.远程单元的编号设置超出01至63的范围.接收方数据帧溢出.试图在不同的模块之间发送不同帧长度的数据.远程单元不存在.(超时)试图发送或接收处于关闭状态的缓冲区.持续处于传输禁止状态.基本程序错误40414243BCC错误:格式错误:不支持错误:处理步骤错误:在指令数据中发生传输错误.所发送的指令信息不符合传输格式.例:指令中的数据项目过多或不足.缺少#符号及目标站号.发送了一个未被支持的指令.向未被支持的目标站发送了指令.在处于传输请求信息挂起时,发送了其他指令.处理系统错误50515253链接设置错误:同时操作错误:传输禁止错误:忙错误:设置了实际不存在的链接编号.当向其他单元发出指令时,本地单元的传输缓冲区已满.无法向其他单元传输.在接收到指令时,正在处理其他指令.6错误类型代码说明PLC错误60616263656667参数错误:数据错误:寄存器错误:PLC模式错误:保护错误:地址错误:丢失数据错误:在指令中包含有无法使用的代码,或者代码没有附带区域指定参数(X,Y,D,等以外.)指令中的代码带有非法的功能指定参数(0,1,2,等).触点编号,区域编号,数据代码格式(BCD,hex,等)上溢出,下溢出以及区域指定错误.过多记录数据在未记录状态下的操作(监控记录、跟踪记录等。)当记录溢出时,将进行重新记录。当一条指令发出时,运行模式不能够对指令进行处理。在存储保护状态下执行写操作到程序区域或系统寄存器。地址(程序地址、绝对地址等)数据编码形式(BCD、hex等)、上溢、下溢或指定范围错误。要读的数据不存在。(读取没有写入注释寄存区的数据。)关于校验码BCC(H)(L)①校验码是将指令中的各个ASCII字符的16进制(00~FF)进行异或求和后生成的.该校验码也以两个ASCII码表示.例)%01#RCSX00001DCR②如果在校验码处写入”**”,则表示忽略校验码.%25H030H131H#23HR52HC43HS53HX58H030H030H030H030H1DH异或(XOR)求和BCC(H)=“1”(31H)BCC(L)=“D”(44H)转换为字符7指令说明1.读取单触点状态(指令代码:RCS)指令%#RCS触点代码(1字符)触点编号(4字符)BCC(H)BCC(L)CR应答读取正常%$RC触点数据(1字符)BCC(H)BCC(L)CR读取错误%!BCC(H)BCC(L)CR说明:字符$表示正常的应答.触点数据触点状态数据OFF0ON1目标站号(L)目标站号(H)源站号(L)源站号(H)源站号(L)源站号(H)错误代码参阅说明.BCDHEX(占3位)(占1位)单触点指定82.写入单触点状态(指令代码:WCS)指令%#WCS指令代码(1字符)触点编号(4字符)触点数据(1字符)BCC(H)BCC(L)CR应答读取正常%$WCBCC(H)BCC(L)CR读取错误%!BCC(H)BCC(L)CR说明:字符$表示正常的应答.触点数据触点状态数据OFF0ON1目标站号(L)目标站号(H)源站号(L)源站号(H)源站号(L)源站号(H)错误代码BCDHEX(占3位)(占1位)单触点指定参阅说明.Y,R,L9触点编号(4字节)3.读/写触点状态的辅助说明(单触点)[定时器(T),计数器(C),触点代码]即使将内部T(C)的编号作为C(T)编号读取,也不会产生错误,而返回触点信息.(字单位块)RCC,WCC定时器和计数器触点无法在字单位块内操作。如果用T或C的触点编号指定一个字的号码,则如下所示:触点代码组编号应答信息T(C)0T(C):0~151T(C):16~312T(C):32~473T(C):48~63::::15T(C):240~255触点编号(4位)BCDHEX(占3位)(占1位)BCD0(占3位)X,Y,R,LT,C104.读取多触点状态(指令代码:RCP)指令%#RCPn(1字符)触点代码(1字符)触点编号.(1)(4字符)触点代码(1字符)触点编号.(n)(4字符)BCC(H)BCC(L)CR应答读取正常%$RC触点1数据(1字符)触点n数据(1字符)BCC(H)BCC(L)CR读取错误%!BCC(H)BCC(L)CR说明:字符$表示正常应答.触点数据触点状态数据OFF0ON1目标站号(L)目标站号(H)源站号(L)源站号(H)错误代码BCDHEX(占3位)(占1位)多触点指定触点编号(n:1to8)n=1-8参阅说明.源站号(L)源站号(H)115.写入多触点状态(指令代码:WCP)指令%#WCPn(1字符)触点1代码(1字符)触点1编号.(4字符)触点数据(1字符)触点n代码(1字符)触点n编号.(4字符)触点数据(1字符)BCC(H)BCC(L)CR应答读取正常%$WCBCC(H)BCC(L)CR读取错误%!BCC(H)BCC(L)CR说明:字符$表示正常应答.触点数据触点状态数据OFF0ON1目标站号(L)目标站号(H)源站号(L)源站号(H)源站号(L)源站号(H)错误代码BCDHEX(占3位)(占1位)多触点指定n:1~8Y,R,Ln=1-8126.按字单位读取触点状态(指令代码:RCC)指令%#RCC触点代码(1字符)起始字编码(4字符)结束字编码(4字符)BCC(H)BCC(L)CR应答读取正常%$RC触点数据1(4字符)触点数据n(4字符)BCC(H)BCC(L)CR读取错误%!BCC(H)BCC(L)CR说明:触点代码与单触点读取相同触点数据顺序字FCB87430③④①②触点数据①②③④目标站号(L)目标站号(H)源站号(L)源站号(H)源站号(L)源站号(H)错误代码BCDCrowd标识BCDX,Y,R,LBCDHEXHEX137.按字单位写入触点状态(指令代码:WCC)指令%#WCC触点代码(1字符)起始CH编码(4字符)结束CH编码(4字符)数据1(4字符)数据n(4字符)BCC(H)BCC(L)CR应答读取正常%$WCBCC(H)BCC(L)CR读取错误%!BCC(H)BCC(L)CR说明:触点代码与单触点读取相同触点数据顺序字FCB87430③④①②触点数据①②③④目标站号(L)目标站号(H)源站号(L)源站号(H)源站号(L)源站号(H)错误代码Crowd标识BCDY,R,LBCDBCDHEXHEX148.按字单位预置触点(指令代码:SC)指令%#SC触点代码(1字符)起始字编码(4字符)结束字编码(4字符)预置字模式(4字符)BCC(H)BCC(L)CR应答预置正常%$SCBCC(H)BCC(L)CR预置错误%!BCC(H)BCC(L)CR目标站号(L)目标站号(H)源站号(L)源站号(H)源站号(L)源站号(H)错误代码BCDY,R,LBCDBCDHEX159.读取数据寄存器值(指令代码:RD)指令%#RD数据代码(1字符)起始数据编码(5字符)结束数据编码(5字符)BCC(H)BCC(L)CR应答读取正常%$RD数据1(4字符)数据n(4字符)BCC(H)BCC(L)CR读取错误%!BCC(H)BCC(L)CR说明:数据(4字符)D③④①②FC数据①②③④目标站号(L)目标站号(H)源站号(L)源站号(H)源站号(L)源站号(H)错误代码D,L,FBCDBCDBCDHEXHEX16举例说明指令及其应答的具体情况ReadingfromtheDataArea(RD读取指令)计算机主机读取PLC内容。程序示例:读取PLC的DT1105至DT1107的数据。假定DT1105至DT1107的数据为以下数值:DT1105=0063HDT1106=3344HDT1107=000AH计算机主机的指令显示如下:%01#RDD011050110757CR起始码目标码指令名称DT1105DT1107BCC终止符PLC的应答显示如下:%01$RD630044330A0062CR起始码目标码指令名称DT1105数据DT1106数据DT1107数据BCC终止符说明:“$”表示正常应答。17对于索引寄存器指令%#RD数据代码(1字符)0(9字符)BCC(H)BCC