三菱通讯一问三不知?看完再也不用担心面试官问三菱PLC通信了

三菱通讯一问三不知?看完再也不用担心面试官问三菱PLC通信了2 : 兼容 QnA 系列串行通信模块支持的 QnA 简易帧。软元件数据:0x0B 0x00 0x00 0x00 0x00 0x00 0x00

大家好,欢迎来到IT知识分享网。

前言

三菱MC协议是开发三菱系列PLC必须掌握的一种通信协议,其目的是让外部设备,可以通过串行通信模块C24或以太网接口模块E71,实现对可编程控制器CPU的数据访问。

MC协议是Melsec协议的简称。

通信帧类型

外部设备通过C24/E71访问可编程控制器CPU时,可以选择不同的通信帧及数据格式来实现,具体如下所示:

三菱通讯一问三不知?看完再也不用担心面试官问三菱PLC通信了

通信帧命名规格

通信帧命名格式如下:

xxx 兼容 n m 帧(示例: QnA 兼容 3C 帧、QnA 兼容 3E 帧)

1、xxx 用于表示与以前产品模块的指令兼容性的对象可编程控制器 CPU

A : A 系列可编程控制器 CPU

QnA : QnA 系列可编程控制器 CPU

2、n对应的是以前产品模块的帧

1 : 兼容 A 系列的计算机链接模块、以太网接口模块支持的指令的通信帧

2 : 兼容 QnA 系列串行通信模块支持的 QnA 简易帧

3 : QnA 系列串行通信模块支持的 QnA 帧及兼容 QnA 系列以太网接口模块支持的通信帧

4 : 兼容 QnA 系列串行通信模块支持的 QnA 扩展帧

3、m是指相应帧进行数据通信的对象模块

C : C24

E : E71

通信方式

从前面的描述,我们可以知道,MC协议是兼容串口通信和以太网通信的。

一般我们使用比较多的是以太网通信,对于FX5U系列/Q系列/Qna系列/L系列的PLC,通常会使用QnA兼容3E帧,对于FX3U系列,我们需要加以太网模块,采用A兼容1E帧。

对于串口设备,一般会使用QnA兼容2C帧和QnA兼容4C帧。

通信编码格式有ASCII和二进制两种方式,通过二进制编码数据进行的通信与通过ASCII编码数据进行的通信相比,前者的通信数据量约为后者的二分之一,因此二进制编码的方式可缩短通信时间。

通过MC协议进行的数据通信,一般情况下都是以半双工通信进行。

对可编程控制器CPU进行访问时,应在接收到来自于可编程控制器CPU侧的对应于之前发送的指令报文的响应报文后,再发送下一个指令报文。

在响应报文的接收完毕之前,不能发送下一个指令报文

三菱通讯一问三不知?看完再也不用担心面试官问三菱PLC通信了

PLC设置

三菱PLC如果要走MC协议,是不需要额外编程的,但是需要做一些简单的配置。

1.在右侧工程栏中双击PLC参数;

三菱通讯一问三不知?看完再也不用担心面试官问三菱PLC通信了

2、在弹框中选择内置以太网端口设置,设置IP,设置通信数据代码设置,勾选允许RUN中写入;

三菱通讯一问三不知?看完再也不用担心面试官问三菱PLC通信了

3.点击打开设置,在弹框第一栏中选择TCP协议,MC协议,端口号根据自己需求设置比如4999,然后设置结束,设置结束,重新下载PLC程序;

三菱通讯一问三不知?看完再也不用担心面试官问三菱PLC通信了

4、断电重启PLC。

协议帧

通过以上了解之后,下面我们对协议帧进行更深入地了解,为了方便起见,我们以以太网的Qna兼容3E帧为例进行说明,其他的帧都是大同小异。

协议帧一般分为三种,分别是请求帧、响应帧及异常帧。

请求帧:表示发送请求的报文。

响应帧:如果请求正确,控制器CPU会以响应帧进行返回。

异常帧:如果请求错误,CPU会以异常帧返回。

读取请求帧报文格式:

三菱通讯一问三不知?看完再也不用担心面试官问三菱PLC通信了

读取响应帧报文格式

三菱通讯一问三不知?看完再也不用担心面试官问三菱PLC通信了

读取异常帧报文格式

三菱通讯一问三不知?看完再也不用担心面试官问三菱PLC通信了

写入请求帧报文格式

三菱通讯一问三不知?看完再也不用担心面试官问三菱PLC通信了

写入响应帧报文格式

三菱通讯一问三不知?看完再也不用担心面试官问三菱PLC通信了

写入异常帧报文格式

三菱通讯一问三不知?看完再也不用担心面试官问三菱PLC通信了

实际案例

读取案例:读取从D0开始的5个寄存器,我们结合协议文档,按照报文格式进行报文拼接。

发送报文如下:

副头部:0x50 0x00

网络编号:0x00

PLC编号:0xFF

请求目标模块I/O编号:0xFF 0x03

请求目标模块站号:0x00

请求数据长度:0x0C 0x00

CPU监视定时器:0x0A 0x00

指令:0x01 0x04

子指令:0x00 0x00

起始软元件:0x00 0x00 0x00

软元件代码:0xA8

软元件点数:0x05 0x00

响应报文如下:

副头部:0xD0 0x00

网络编号:0x00

PLC编号:0xFF

请求目标模块I/O编号:0xFF 0x03

请求目标模块站号:0x00

响应数据长度:0x0C 0x00

结束代码:0x00 0x00

软元件数据:0x0B 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00

网络调试助手测试结果:

三菱通讯一问三不知?看完再也不用担心面试官问三菱PLC通信了

这样就知道了D0-D4分别为0x0B 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00,将其转换成数据,就是11,0000。

其他存储区的读写也是同样的原理。

附录

三菱通讯一问三不知?看完再也不用担心面试官问三菱PLC通信了

三菱通讯一问三不知?看完再也不用担心面试官问三菱PLC通信了

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/82920.html

(0)

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

关注微信