三菱-FX-PLC-ModbusRTU通讯程序

合集下载

三菱PLC直接连接第三方MODBUS设备方式

三菱PLC直接连接第三方MODBUS设备方式

对于三菱PLC挂接MODBUS设备的困扰,想必很多工程师都会有,三菱不像西门子PLC有库函数,稳定性高,官方可靠。

而三菱PLC想要连接MODBUS从站,就需要自己手把手编程MODBUS主站程序,占用内部扫描时间,通讯周期,大大削弱三菱PLC对应其他设备的控制能力和处理能力。

比如扫描周期加长了,对应IO反应就增加了。

今天我们介绍的是一个转换设备无需三菱PLC编程MODBUS主站程序,只需要把三菱PLC自由口设置下通讯参数即可。

如下图:德阳迅诺科技FX-MB设备自动访问三菱PLC和MODBUS从站设备。

来实现两者的数据交换。

通过德阳迅诺组态软件先配置转换器,告诉转换器你想交换哪些数据。

举例用户需求将远程MODBUS-RTU #1号地址的40001寄存器数据存放到三菱PLC D0寄存器,如下配置画面第一条:1号插槽 MODBUS地址=1 读/写=读数据长度=1 数据类型4000X 保持寄存器MODBUS起始地址=0 对应PLC 起始地址=0;同时用户需求将三菱PLC D0寄存器数据送到MODBUS-RTU #2号地址的40001寄存器数据,如下配置画面第二条:2号插槽 MODBUS地址=2 读/写=写数据长度=1 数据类型4000X 保持寄存器MODBUS起始地址=0 对应PLC 起始地址=0;同时用户需求将远程MODBUS-RTU #3号地址的10001-10016寄存器(输入离散寄存器)数据存放到三菱PLC M10-M25寄存器,如下配置画面第三条:3号插槽 MODBUS地址=3 读/写=读数据长度=1(离散量只能读写16个一次)数据类型1000X 输入离散寄存器MODBUS起始地址=0 对应PLC 起始地址=10;(M10)注意:配置为开关量(离散量)系统默认对应M寄存器。

配置为模拟量系统默认对应D寄存器。

这样可以轻松实现针对10个设备的数据交换任务。

当然由于PLC端波特率固定的限制,对应一台设备的刷新速度也不会很快。

三菱FX系列PLC的modbusTCP通讯

三菱FX系列PLC的modbusTCP通讯

三菱FX系列PLC的modbusTCP通讯
BCNet-FX是一款新型的以太网通讯处理器,是为满足日益增多的工厂设备信息化需求(设备网络监控和生产管理)而设计,用于三菱FX1S/1N/2N/3S/3G/3GC/3U/3UC系列PLC的以太网数据采集,BCNet-FX支持工控领域内绝大多数SCADA软件,支持三菱以太网协议和ModbusTCP两种通讯方式。

一、ModbusTCP通讯说明
BCNet-FX模块内部集成ModbusTCP通讯服务器,因此ModbusTCP客户机,如支持ModbusTCP 的组态软件、OPC服务器、PLC以及实现ModbusTCP客户机的高级语言开发的软件等,可以直接访问三菱FX系列PLC的内部数据区,Modbus协议地址在BCNet内部已经被默认映射到FX系列PLC的地址区,实现的功能号包括:FC1、FC2、FC3、FC5、FC6和FC16。

二、上位机通讯配置(以西门子组态软件WINCC为例)
1.打开Wincc软件,新建一个项目,右击“变量管理”,选择“添加新的驱动连接”,在弹出的对话框中选择“Modbus TCPIP.chn”,点击“确定”。

2.右击“Modbus TCPIP/IP 单元#1”选择“新驱动程序的连接”,新建一个名称,点击“属性”,弹出属性的对话框,在“CPU类型”选择“984”,在“服务器”中填入BCNet-FX的IP地址,点击确定。

3.右击“变量名称”,新建变量,这里我们新建一个D0变量,对应地址的设定请点击“选择”,弹出对话框,“区域”中选择“4x保持寄存器”,“4x”中填入“402001”,注意:根据ModbusTCP 地址对应关系D0的地址为42001,由于wincc中的地址位数为6位,所以42001对应到wincc中为402001。

三菱PLC与变频器通讯-ModbusRTU协议

三菱PLC与变频器通讯-ModbusRTU协议

Modbus是Modicon公司为其PLC与主机之间的通讯而发明的串行通讯协议。

其物理层采用RS232、485等异步串行标准。

由于其开放性而被大量的PLC及RTU厂家采用。

Modbus通讯方式采用主从方式的查询-相应机制,只有主站发出查询时,从站才能给出响应,从站不能主动发送数据。

主站可以向某一个从站发出查询,也可以向所有从站广播信息。

从站只响应单独发给它的查询,而不响应广播消息。

MODBUS通讯协议有两种传送方式:RTU方式和ASCII方式。

三菱700系列变频器能够从RS-485端子使用ModbusRTU 通讯协议,进行通讯运行和参数设定。

对象:1. 三菱PLC:FX2N+FX2N-485-BD2. 三菱变频器:F700系列,A700系列。

两者之间通过网线连接,具体参照下图。

FX2N-485-BD与n台变频器的连接图一.三菱变频器的设置PLC与变频器之间进行通讯时,通讯规格必须在变频器中进行设定,每次参数初始化设定后,需复位变频器或通断变频器电源。

参数号名称设定值说明Pr331 通讯站号 1 设定变频器站号为1Pr332 通讯速度 96 设定通讯速度为9600bpsPr334 奇偶校验停止位长 2 偶校验,停止位长1位Pr539 通讯校验时间 9999 不进行通讯校验Pr549 协议选择 1 ModbusRTU协议Pr551 PU模式操作权选择 2 PU运行模式操作权作为PU接口进行ModbusRTU协议通讯时,Pr551必须设置为2,Pr340设置为除0以外的值,Pr79设置为0或2或6。

通过RS-485端子进行ModbusRTU协议通讯时,必须在NET网络模式下运行。

一.三菱PLC的设置对通讯格式D8120进行设置D8120设置值为0C87,即数据长度为8位,偶校验停止位1位,波特率9600pbs,无标题符和终结符。

修改D8120设置后,确保通断PLC电源一次。

二.通讯程序采用ModbusRTU协议与变频器通讯的部分PLC程序如下:三:程序说明:1.当X1接通一次后,变频器进入正转状态。

三菱FX1Nplc自写MODBUS RTU 从站程序

三菱FX1Nplc自写MODBUS RTU 从站程序

P23
M8002
5
MOV
H0C81
D8120
M8000 14
SET
ADD D6005 K2 校验之前 实际发送 数据总长 度
M8161
D6002 发送数据 长度
D8120
B/D
7
B/D
M8161 A/S 12
A/S
D6005 A/S 15 272 315
B/D 265 D6002 A/S 23
B/D 15
* 本程序占用的D寄存器点位为D6000以后的区域(详见注释
* D6500对应03功能码的40001,之后按顺序排列
* 本程序由江西自动化网/ 会员“工控小生”编辑
* 本程序实例下载地址/thread-26770-1-1.htm
M1505 163
准备发送
[ 162] T199
167 接收后延 时发送
[ 164] M8122
171 发送请求
[ 169]
K2 T199 接收后延 时发送
T199 A/S 167 A/S
M8122
SET
M8122
A/S 169
发送请求
B/D 171
M8123
RST
M8123
A/S 42 55 84
M8000 0
CALL P23
P23
A/S
1
5
A/S
4
FEND
* 三菱MODBUS从站通讯程序 端口配置默认为 9600 8 N 1
* 规定站号存储地址D6000,仅支持功能码03和功能码06
* 03功能码一次最多只能读取50个字,如地址间隔较大请分批读取
* 本程序占用如下单元:M1500-M1526;T199;V0-V1

三菱PLC与变频器通讯-ModbusRTU协议Word

三菱PLC与变频器通讯-ModbusRTU协议Word

Modbus是Modicon公司为其PLC与主机之间的通讯而发明的串行通讯协议。

其物理层采用RS232、485等异步串行标准。

由于其开放性而被大量的PLC及RTU厂家采用。

Modbus通讯方式采用主从方式的查询-相应机制,只有主站发出查询时,从站才能给出响应,从站不能主动发送数据。

主站可以向某一个从站发出查询,也可以向所有从站广播信息。

从站只响应单独发给它的查询,而不响应广播消息。

MODBUS通讯协议有两种传送方式:RTU方式和ASCII方式。

三菱700系列变频器能够从RS-485端子使用ModbusRTU 通讯协议,进行通讯运行和参数设定。

对象:1. 三菱PLC:FX2N+FX2N-485-BD2. 三菱变频器:F700系列,A700系列。

两者之间通过网线连接,具体参照下图。

FX2N-485-BD与n台变频器的连接图一.三菱变频器的设置PLC与变频器之间进行通讯时,通讯规格必须在变频器中进行设定,每次参数初始化设定后,需复位变频器或通断变频器电源。

参数号名称设定值说明Pr331 通讯站号 1 设定变频器站号为1Pr332 通讯速度 96 设定通讯速度为9600bpsPr334 奇偶校验停止位长 2 偶校验,停止位长1位Pr539 通讯校验时间 9999 不进行通讯校验Pr549 协议选择 1 ModbusRTU协议Pr551 PU模式操作权选择 2 PU运行模式操作权作为PU接口进行ModbusRTU协议通讯时,Pr551必须设置为2,Pr340设置为除0以外的值,Pr79设置为0或2或6。

通过RS-485端子进行ModbusRTU协议通讯时,必须在NET网络模式下运行。

一.三菱PLC的设置对通讯格式D8120进行设置D8120设置值为0C87,即数据长度为8位,偶校验停止位1位,波特率9600pbs,无标题符和终结符。

修改D8120设置后,确保通断PLC电源一次。

二.通讯程序采用ModbusRTU协议与变频器通讯的部分PLC程序如下:三:程序说明:1.当X1接通一次后,变频器进入正转状态。

三菱FX系列PLC MODUBS通信

三菱FX系列PLC MODUBS通信
MODBUS ASCII通信协议是采用ASCII码进行通信. 数据校验采用的是LRC校验. 基本数据格式为: 地址 功能码 数据数量 数据1 ... 数据n LRC高字节 LRC低字节 回车 换行
©COPYRIGHT 2012 三菱电机自动化(中国)有限公司
直接支持Modbus ASCII 的三菱FA设备
不难发现,在以上不同Modbus协议中,都涉及 到2个重要概念:功能码、Modbus地址。 那什么是功能码?什么又是Modbus地址呢?
©COPYRIGHT 2012 三菱电机自动化(中国)有限公司
MODBUS功能码
功能码就是表达不同Modbus功能的代码。
由于协议所定,MODBUS根据功能不同的数值 也有着固定的含义:
©COPYRIGHT 2012 三菱电机自动化(中国)有限公司
FX 系列 PLC Modbus通讯模块的使用
©COPYRIGHT 2012 三菱电机自动化(中国)有限公司
一. 简 介
FX系列PLC可以作为主站或从站挂入到 Modbus网络中,支持RTU或ASCII的通信格式。 无论何种选择,所使用的模块为同一种(FX3U-
+
A/F500系列变频器
FR-A5NM
©COPYRIGHT 2012 三菱电机自动化(中国)有限公司
Modbus对应一览表
产品
Q PLC
Modbus Modbus Modbus Modbus
RTU
ASCII
TCP
Plus



×
FX PLC ○

×
×
GOT

×

×
INV

××△SV来自×××

三菱变频器ModbusRTU协议

三菱变频器ModbusRTU协议

三菱FX2N系列PLC与三菱700系列变频器ModbusRTU协议通讯应用
深圳壮盈科技有限公司张金波2006-11-2
Modbus是Modicon公司为其PLC与主机之间的通讯而发明的串行通讯协议。

其物理层采用RS232、485等异步串行标准。

由于其开放性而被大量的PLC及RTU厂家采用。

Modbus通讯方式采用主从方式的查询-相应机制,只有主站发出查询时,从站才能给出响应,从站不能主动发送数据。

主站可以向某一个从站发出查询,也可以向所有从站广播信息。

从站只响应单独发给它的查询,而不响应广播消息。

MODBUS通讯协议有两种传送方
式:RTU方式和ASCII方式。

三菱700系列变频器能够从RS-485端子使用ModbusRTU通讯协议,进行通讯运行和参数设定。

对象:
1.三菱PLC:FX2N+FX2N-485-BD
2.三菱变频器:F700系列,A700系列。

两者之间通过网线连接,具体参照下图。

FX2N-485-BD与n台变频器的连接图
一.三菱变频器的设置
PLC与变频器之间进行通讯时,通讯规格必须在变频器中进行设定,每次参数初始化设定后,需复位变频器或通断变频器电源。

四.程序说明:
1.当X1接通一次后,变频器进入正转状态。

2.当X2接通一次后,写入变频器运行频率60HZ。

3.当X3接通一次后,变频器进入停止状态。

4.当指令中,变频器指令地址为0时,为广播指令,所有从站变频器只接受PLC发出指令,不向主机发送响应信息。

三菱_FX系列PLC串口通讯配置方法

三菱_FX系列PLC串口通讯配置方法

三菱_FX系列PLC串⼝通讯配置⽅法WebAccess 与三菱 FX系列PLC串⼝通讯配置⽅法WebAccess三菱FX系列驱动⽀持以下型号PLC:FX, FX0, FX0N, FX1N,FX2N,FX1S等。

FX系列PLC与上位机软件的通讯⽅式分为:RS232与RS485两种模式,默认通讯参数如下:波特率:9600,数据位:7位,停⽌位:1位,奇偶校验:偶校验,下⾯分别从两个⽅⾯进⾏配置说明:⼀、RS232⽅式通讯通常情况下,三菱FX系列PLC通过编程⼝(PS/2)与上位机软件进⾏RS232模式通讯,此时PLC中不需要做特殊配置,只需在WebAccess中将PLC对应的通讯参数匹配即可。

步骤如下:1、添加通讯端⼝图1 添加通讯端⼝数据流控(Flow Control):Rts、Dtr握⼿协议当使⽤RS232/RS485转换器进⾏通讯连接时,数据流控信号将根据该转换器的流控功能来决定。

有些RS232/RS485转换器不需要软件做任何类型的握⼿协议,⽽有些则需要软件进⾏Rts信号握⼿协议。

强烈建议⽤户选择具有⾃动流控的RS232/RS485转换器。

2、添加设备图2 设备参数配置单元号:实际PLC的串⾏地址号,即Device ID。

单个PLC可以默认0进⾏通讯。

3、添加IO点根据下图中的“参数”栏选择合适的参数类型(模拟量、数字量)和相应的转换代码。

图3 添加IO点表1⼆、RS485⽅式通讯为便于远距离通讯,三菱FX2N系列PLC通过FX2N-485-BD模块实现RS485⽅式与WebAccess软件通讯,安装FX2N-485-BD 需设置PLC的D8120寄存器,请参照《FX通讯⽤户⼿册》。

FX2N-485-BD通讯模块如下图: FX2N-485-BD模块安装位置图:图4 FX2N-485-BD模块及接线图(1)三菱PLC配置⽅法步骤1、FXGP/WIN-C编程软件配置⽅法使⽤FXGP/WIN-C编程软件来进⾏串⾏⼝设置。

三菱FX与FX系列PLC MODBUS通讯方法

三菱FX与FX系列PLC MODBUS通讯方法

三菱FX系列与FX系列PLCMODBUS通讯的方法本文通过实践应用以后总结出来的,相对于三菱公司标准手册,把一些重点提了出了,如有不清楚的可以参照三菱手册,进行学习。

目录一,硬件设备组成 (3)二,设备接线 (3)1对接线 (3)2对接线 (3)三,相关软元件的详细内容 (4)3.1特殊数据寄存器 (4)3.2MODBUS通讯设定 (9)3.3特殊辅助继电器 (10)四,MODBUS标准功能 (12)4.1MODBUS标准功能支持一览表 (12)五,编程 (14)5.1ADPRW指令参数 (14)5.2编程软件通讯设置 (18)5.3编写通讯程序 (19)5.3.1主站通讯程序 (19)5.3.2主站读写程序 (20)5.3.3从站通讯程序 (20)5.4程序运行 (21)注:本文只在供交流学习使用,文中大量引用三菱资料,不可随意篡改三菱公司版权一,硬件设备组成1.FX3U64ER PLC2台2.FX3U-485ADP-MB MODBUS特殊通讯模块2台3.FX3U-CNV-BD功能扩展模块(与FX3U-485ADP-MB搭配使用)2台二,设备接线1对接线图2.11对接线2对接线图2.22对接线导线最好使用带屏蔽层绝缘导线,我这边使用的是标准的紫色DP通讯线。

为一对线形式,一根红色线,一根绿色线。

使用2对线形式一样,此处并没有异议。

三,相关软元件的详细内容3.1特殊数据寄存器图3.1特殊数据寄存器表1图3.2特殊数据寄存器表2图3.3特殊数据寄存器表3图3.4特殊数据寄存器表4图3.5特殊数据寄存器表53.2MODBUS通讯设定通讯中使用的软元件如图所示使用通信端口(通道1)时设定D8400使用通信端口(通道1)时设定D84201)D8400、D8420(通信格式)在通信格式中设定数值,可进行数据长度、奇偶性、波特率等通信设定。

通信格式的内容如下表所示。

图3.6D84008420通讯设定3.3特殊辅助继电器图3.7特殊辅助继电器1图3.8特殊辅助继电器2图3.9特殊辅助继电器3四,MODBUS标准功能4.1MODBUS标准功能支持一览表图4.1MODBUS标准功能1图图4.2MODBUS标准功能2FX3S/FX3G/FX3GC/FX3U/FX3UC系列的功能代码对应表图4.3MODBUS标准功能3五,编程在编写主站程序时我们会用到FNC276ADPRW/MODBUS读出写入指令5.1ADPRW指令参数图5.1ADPRW指令参数1图5.2ADPRW指令参数2图5.3ADPRW指令参数3图5.4ADPRW指令参数45.2编程软件通讯设置首先打开编程软件,我这边使用的是GX Work2V1.555D,打开后新建一个PLC程序,然后设定MODBUS通讯通道信息,我这边的设定如图所示,也可根据自己需求设定。

三菱PLC的MODBUSRTU的CRC计算程序编写,通讯必须掌握

三菱PLC的MODBUSRTU的CRC计算程序编写,通讯必须掌握

三菱PLC的MODBUSRTU的CRC计算程序编写,通讯必须掌握(点击上方红字,免费领资料)今天就说下采用RTU数据模式控制变频器,包括变频器的调频、正转、反转、停止命令的写入及运行频率的读取。

先了解下RTU帧的结构:帧头 3.5个字节的通讯时间从机地址:通讯地址0~247, 0代表广播功能码: 01H、02H、03H等数据: 2*N个字节的数据,为通讯的主要内容,包括数据地址、数据内容等。

CRC 低位: CRC校验码CRC 高位: CRC校验码帧尾: 3.5个字节的通讯时间在变频器的控制器,功能码主要用到两个03H和06H。

03H表示主机向变频器读取数据,要读取多少个数据由命令中“数据个数”而定,最多可以读取 16 个数据。

读取的参数地址必须是连续的。

每个数据占用的字节长度为 2 字节,也即一个字(word)。

以下命令格式均以 16 进制表示(数字后跟一个“H”表示 16 进制数字),一个 16 进制占用一个字节,主要作用是读取变频器的参数及工作状态,比如变频器的频率、电压、电流以及运行状态(正转、反转、停机、故障状态的监视等)06H的命令表示主机向变频器写数据,一条命令只能写一个数据,不能写多个数据。

它的作用是改变变频器的参数及工作方式,比如控制变频器正反转、停机,设定频率、转矩、加减速时间等。

我们从主机往从机发送命令后,如果发送成功,从机会返回一个回应信息,从这个返回信息中可以看出我们想要得到的东西,这里说下发送写命令06H,它的返回信息与发送命令是一样的,所以我们只有在读命令03H才用到返回信息。

下面我们举个例子说明发送信息与返回信息。

03H,从通讯地址为01的变频器,以地址0004H开始,连续读取两个数据内容就是去读0004H和0005H地址的内容。

03H从上表看出主机向从机发送命令需要知道从机的地址、功能码(命令)、数据地址、数据个数、CRC校验码,以上例子中我们知道从机的地址是01H,功能码是读03H,地址是0004H,拆分成高低位,数据个数是俩个0002H,同样拆分,最后的CRC校验码是根据以上数据计算出来的,数据发送到从机后,从机也根据信息计算一个CRC校验码,如果与主机计算的校验码一致,则通讯成功,会向从机发送一组返回信号,我们就知道了从变频器中读取的信号,例如0004H和0005H 地址的数据是5000,0,那么返回信息除了地址与命令码不变,后面的数据就变成了字节个数、数据内容了,5000的16进制是1388H,因此数据内容是高位13H,低位88H。

三菱PLC连接MODBUS从站的简易方式

三菱PLC连接MODBUS从站的简易方式

FX-MB 三菱PLC扩展MODBUS-RTU简易方式首先用于三菱PLC扩展的485BD或者232BD口与最多10台MODBUS-RTU设备之间交换数据,PLC无需编程直接将MODBUS设备连入三菱PLC,支持所有三菱系列PLC。

通讯口1:三菱专用协议通讯方式,支持连接到所有三菱PLC扩展通讯口;通讯口2:标准MODBUS-RTU协议,支持01、02、03、04、05、06、0F、10命令;PLC通讯速率:9.6Kbps;MODBUS-RTU波特率:1.2Kbps~115.2Kbps;连接MODBUS-RTU设备数量:MAX-10个;交换数据:(80个输入字节)/(80个输出字节);通讯回路相互隔离,隔离电压1KV且均带TVS防雷击、过流自恢复保险保护;24VDC输入电源极性保护。

●概述:1.通讯口1速率(固定):9.6Kbps。

2.通讯口2通讯速率(设置固定):1.2Kbps、2.4Kbps、4.8Kbps、9.6Kbps、19.2Kbps、38.4Kbps、57.6Kbps、115.2Kbps。

3.模块外形尺寸及端子结构图:4.连接数量:三菱PLC端网络:最多为32个;MODBUS-RTU网络:最多10个设备(地址范围0~255可选,每增加1个FX-MB模块可增加连接最多10个设备)5.用户参数设置:使用迅诺科技组态软件配置;6.模块LED状态指示:面板上排指示灯MBUF(第一个灯绿色):正确发送和接受组态配置的MODBUS-RTU设备后常亮。

MT (第三个灯黄色):MODBUS-RTU数据发送灯。

MR (第四个灯黄色):MODBUS-RTU数据接收灯。

面板下排指示灯POWER(第一个灯红色):电源指示灯;RUN (第四个灯绿色):工作后常亮。

●本模块参数设置使用迅诺组态软件设置进行用户参数设置。

状态设置:本模块采用通过拨码开关SW0选择运行状态或者停止配置状态, ON表示“0”,OFF表示“1”,见图1所示。

FX5U和三菱变频器Modbus-RTU通讯控制

FX5U和三菱变频器Modbus-RTU通讯控制

FX5U和三菱变频器Modbus-RTU通讯控制FX5U和三菱变频器基于RS485 Modbus-RTU通讯控制本次实验主要是测试FX5U PLC与三菱变频器,通过RS485接⼝进⾏moudbus通讯控制,运⾏频率和监控频率,电压电流等通过通讯控制;运转信号通过两种⽅式来控制:1、外部信号PLC接线输出控制,2、通讯给出信号控制⼀、配置PLC: FX5U-32MT/ES变频器:FR-E740-3.7K-CHT电机:三相异步电机线缆:RJ45⽹线;⼀头带RJ45接头,另⼀头散线⼆、接线1、PLC端:FX5U有内置458接⼝变频器:PU接⼝2、接线⽅式①1对配线:②2对配线这⾥采⽤的是2对配线,不同配线⽅式,设置终端电阻不同采⽤外部信号控制:PLC输出信号Y0来控制变频器运转启动变频器:接线对应:PLC 0V----COM0Y0---- STFPLC 24V----PC三、参数设置PLC端:参数---模块参数---485串⼝变频器:Pr.117,118,119,120对应PLC设置注意:119设定的停⽌位长Pr.121=9999 (9999 即使发⽣通讯错误变频器也不会跳闸)Pr.122=9999 (9999 不进⾏通讯校验(断线检测))Pr.338=0或1 (0:启动指令权通讯;1:启动指令权外部)Pr.340=1 (1 ⽹络运⾏模式)Pr.79=0 (外部/PU切换模式)Pr.549=1 (1 Modbus-RTU协议)四、程序设置这⾥FX5U采⽤ADPRW命令与从站进⾏通信该命令可通过主站所对应的功能代码,与从站进⾏通信(数据的读取/写⼊)。

1、写⼊运⾏频率从站地址:01H功能代码:06HMODBUS地址:0DH访问点数:0(固定)读取数据存储软元件起始:D0输出通信执⾏状态的起始位软元件编号:M0H1:对应变频器站号(这⾥设置为1号站)H6:功能代码(保持寄存器写⼊)H0D:modbus地址,这⾥为频率写⼊,对应下表为40014,还需减去40001,为13,16进制换算为0DK0:访问点数,为固定的0,D0:数据存储软元件起始地址,这⾥是写⼊频率的值(单位:0.01HZ),要想设为转速,变频器参数Pr.37 的设定,可切换频率和转速,转速单位为(1r/min)M10:输出通信执⾏状态的起始位软元件编号2、监控数据从站地址:01H功能代码:03HMODBUS地址:0C8H访问点数:3(运⾏频率,电流,电压)读取数据存储软元件起始:D100输出通信执⾏状态的起始位软元件编号:M303、这⾥根据使⽤情况,运转信号采⽤外部控制还是通讯控制①外部控制:导通Y0即可②通讯给启动:从站地址:01H功能代码:06HMODBUS地址:8H (40009-40001H)访问点数:0(固定)读取数据存储软元件起始:D10输出通信执⾏状态的起始位软元件编号:M20给信号⽅式:对应下表⽐如我们给正转信号,对应位1置位,0000 0000 0000 0010,对应D10给的值即为2写⼊频率后,D10赋值=2,执⾏该程序,即可启动读取相关状态同上五、其他系列变频器的⽐较1、接⼝D700和E700,E800系列:PU接⼝A700,F700和A800,F800系列:PU接⼝,和RS485端⼦D700和E700系列只有PU⼀个接⼝,当连接多台时,使⽤分配器,这⾥需要注意的是,多台连接时变频器间不要连接②,⑧其他⽤法相同。

三菱PLC与变频器通讯-ModbusRTU协议Word

三菱PLC与变频器通讯-ModbusRTU协议Word

Modbus是Modicon公司为其PLC与主机之间的通讯而发明的串行通讯协议。

其物理层采用RS232、485等异步串行标准。

由于其开放性而被大量的PLC及RTU厂家采用。

Modbus通讯方式采用主从方式的查询-相应机制,只有主站发出查询时,从站才能给出响应,从站不能主动发送数据。

主站可以向某一个从站发出查询,也可以向所有从站广播信息。

从站只响应单独发给它的查询,而不响应广播消息。

MODBUS通讯协议有两种传送方式:RTU方式和ASCII方式。

三菱700系列变频器能够从RS-485端子使用ModbusRTU 通讯协议,进行通讯运行和参数设定。

对象:1. 三菱PLC:FX2N+FX2N-485-BD2. 三菱变频器:F700系列,A700系列。

两者之间通过网线连接,具体参照下图。

FX2N-485-BD与n台变频器的连接图一.三菱变频器的设置PLC与变频器之间进行通讯时,通讯规格必须在变频器中进行设定,每次参数初始化设定后,需复位变频器或通断变频器电源。

参数号名称设定值说明Pr331 通讯站号 1 设定变频器站号为1Pr332 通讯速度 96 设定通讯速度为9600bpsPr334 奇偶校验停止位长 2 偶校验,停止位长1位Pr539 通讯校验时间 9999 不进行通讯校验Pr549 协议选择 1 ModbusRTU协议Pr551 PU模式操作权选择 2 PU运行模式操作权作为PU接口进行ModbusRTU协议通讯时,Pr551必须设置为2,Pr340设置为除0以外的值,Pr79设置为0或2或6。

通过RS-485端子进行ModbusRTU协议通讯时,必须在NET网络模式下运行。

一.三菱PLC的设置对通讯格式D8120进行设置D8120设置值为0C87,即数据长度为8位,偶校验停止位1位,波特率9600pbs,无标题符和终结符。

修改D8120设置后,确保通断PLC电源一次。

二.通讯程序采用ModbusRTU协议与变频器通讯的部分PLC程序如下:三:程序说明:1.当X1接通一次后,变频器进入正转状态。

三菱PLC的MODBUSRTU的CRC计算程序编写,通讯必须掌握

三菱PLC的MODBUSRTU的CRC计算程序编写,通讯必须掌握

三菱PLC的MODBUSRTU的CRC计算程序编写,通讯必须掌握上一章我们介绍了MODBUS协议中的RTU数据模式中的CRC校验码的计算原理,为了方便在PLC中完成通讯控制,今天我们说下PLC中CRC校验码程序的编写。

首先,原理在上一章讲到了,我们利用三菱PLC梯形图进行编写,先看下流程图:CRC计算流程图从上图中发现,有两个循环过程,即单个数据的CRC的计算,主要是对首个数据的CRC暂存器进行8次移位运算,另一个大循环是所有数据的运算(先运算完一个8位数据的CRC,下一个数据与这个CRC 进行运算),这样把所有数据都计算完成后即可得到CRC校验码。

按照流程图步骤进行编写:1、初始CRC值:FFFFH,为了方便移位,我们采用位组成的方式来表示CRC暂存器: K4M0,采用变址寄存器V对数据进行依次运算,大的循环次数要根据传输数据的个数来决定,小的循环(单个数据的CRC)移位8次就循环8次,将数据初始化。

基本框架如下:数据初始化程序整体框架2、小循环单个数据的CRC小循环单个数据的CRC计算首先将M100复位是为了后面的高位补零用,SFTR指令是位右移指令,表示对M0为起始位置的16数据右移1位置,高位用M100填补即高位补零,低位M0为移除的溢出数据即LSB。

如果LSB=1,则需要把移位后的数据与A001H进行异或计算,结果保存到CRC暂存器K4M0中,此时将覆盖原来的K4M0中的数据,在这里需要跳转指令CJ跳过LSB=0的情况。

如果LSB=0,只要把移位后的数据放入CRC暂存器中即可。

这样首个数据就运算完成,进行下一个数据的运算(大循环)。

3、CRC校验码全部数据运算完成后,我们要对暂存器进行高低8位调换,将CRC校验码的高位存放到D100,低位存放发到D102中。

至此CRC 校验码计算完成。

如果觉得麻烦,在FX3U中有现成的CRC计算指令CRC S D n,S代表要计算的数据的起始编号,D为CRC校验码保存的数据寄存器,n表示数据个数。

fx3umodbus通讯案例编程

fx3umodbus通讯案例编程

fx3umodbus通讯案例编程FX3U Modbus通讯是指Mitsubishi FX3U系列可编程控制器通过Modbus协议与其他设备进行通信的一种方式。

Modbus是一种通信协议,常用于工业自动化领域,可以实现不同设备之间的数据交换和控制操作。

下面将列举10个FX3U Modbus通讯案例编程,示例代码如下:1. 读取Modbus从站设备的保持寄存器数据:```cpp#include <FX3U_ModbusRTU.h>void setup() {// 初始化Modbus串口通信ModbusRTU.begin(9600);}void loop() {uint16_t data;// 读取从站设备地址为1的保持寄存器地址0的数据ModbusRTU.readHoldingRegisters(1, 0, 1, &data);// 输出读取到的数据Serial.println(data);delay(1000);}```2. 写入数据到Modbus从站设备的保持寄存器:```cpp#include <FX3U_ModbusRTU.h>void setup() {// 初始化Modbus串口通信ModbusRTU.begin(9600);}void loop() {uint16_t data = 100;// 向从站设备地址为1的保持寄存器地址0写入数据100 ModbusRTU.writeSingleRegister(1, 0, data);delay(1000);}```3. 读取Modbus从站设备的输入寄存器数据:```cpp#include <FX3U_ModbusRTU.h>// 初始化Modbus串口通信ModbusRTU.begin(9600);}void loop() {uint16_t data;// 读取从站设备地址为1的输入寄存器地址0的数据 ModbusRTU.readInputRegisters(1, 0, 1, &data); // 输出读取到的数据Serial.println(data);delay(1000);}```4. 写入数据到Modbus从站设备的多个保持寄存器:```cpp#include <FX3U_ModbusRTU.h>void setup() {// 初始化Modbus串口通信ModbusRTU.begin(9600);}uint16_t data[] = {100, 200, 300};// 向从站设备地址为1的保持寄存器地址0开始连续写入3个数据ModbusRTU.writeMultipleRegisters(1, 0, 3, data);delay(1000);}```5. 读取Modbus从站设备的线圈状态:```cpp#include <FX3U_ModbusRTU.h>void setup() {// 初始化Modbus串口通信ModbusRTU.begin(9600);}void loop() {uint8_t data;// 读取从站设备地址为1的线圈地址0的状态ModbusRTU.readCoils(1, 0, 1, &data);// 输出读取到的状态Serial.println(data);delay(1000);}```6. 写入数据到Modbus从站设备的线圈:```cpp#include <FX3U_ModbusRTU.h>void setup() {// 初始化Modbus串口通信ModbusRTU.begin(9600);}void loop() {uint8_t data = 1;// 向从站设备地址为1的线圈地址0写入数据1 ModbusRTU.writeSingleCoil(1, 0, data);delay(1000);}```7. 读取Modbus从站设备的离散输入状态:```cpp#include <FX3U_ModbusRTU.h>void setup() {// 初始化Modbus串口通信ModbusRTU.begin(9600);}void loop() {uint8_t data;// 读取从站设备地址为1的离散输入地址0的状态 ModbusRTU.readDiscreteInputs(1, 0, 1, &data); // 输出读取到的状态Serial.println(data);delay(1000);}```8. 写入数据到Modbus从站设备的多个线圈:```cpp#include <FX3U_ModbusRTU.h>void setup() {// 初始化Modbus串口通信ModbusRTU.begin(9600);}void loop() {uint8_t data[] = {1, 0, 1};// 向从站设备地址为1的线圈地址0开始连续写入3个数据ModbusRTU.writeMultipleCoils(1, 0, 3, data);delay(1000);}```9. 读取Modbus从站设备的保持寄存器数据(使用ModbusTCP 协议):```cpp#include <FX3U_ModbusTCP.h>void setup() {// 初始化ModbusTCP网络通信ModbusTCP.begin("192.168.1.100", 502);}void loop() {uint16_t data;// 读取从站设备地址为1的保持寄存器地址0的数据ModbusTCP.readHoldingRegisters(1, 0, 1, &data);// 输出读取到的数据Serial.println(data);delay(1000);}```10. 写入数据到Modbus从站设备的保持寄存器(使用ModbusTCP协议):```cpp#include <FX3U_ModbusTCP.h>void setup() {// 初始化ModbusTCP网络通信ModbusTCP.begin("192.168.1.100", 502);}void loop() {uint16_t data = 100;// 向从站设备地址为1的保持寄存器地址0写入数据100ModbusTCP.writeSingleRegister(1, 0, data);delay(1000);}```以上是10个FX3U Modbus通讯案例编程,通过这些示例代码,可以实现与其他Modbus设备的数据交换和控制操作。

三菱700系列变频器使用modbusrtu通讯协议与三【最新】

三菱700系列变频器使用modbusrtu通讯协议与三【最新】

三菱700系列变频器使用ModbusRTU通讯协议与三菱PLC进行通讯运行和参数设定Modbus是Modicon公司为其PLC与主机之间的通讯而发明的串行通讯协议。

其物理层采用RS232、485等异步串行标准。

由于其开放性而被大量的PLC及RTU厂家采用。

Modbus通讯方式采用主从方式的查询-相应机制,只有主站发出查询时,从站才能给出响应,从站不能主动发送数据。

主站可以向某一个从站发出查询,也可以向所有从站广播信息。

从站只响应单独发给它的查询,而不响应广播消息。

MODBUS通讯协议有两种传送方式:RTU方式和ASCII方式。

三菱700系列变频器能够从RS-485端子使用M odbusRTU通讯协议,进行通讯运行和参数设定。

对象:1. 三菱PLC:FX2N+FX2N-485-BD2. 三菱变频器:F700系列,A700系列。

两者之间通过网线连接,具体参照下图。

上图为:FX2N-485-BD与n台变频器的连接图一.三菱变频器的设置PLC与变频器之间进行通讯时,通讯规格必须在变频器中进行设定,每次参数初始化设定后,需复位变频器或通断变频器电源。

参数号名称设定值说明Pr331 通讯站号 1 设定变频器站号为1Pr332 通讯速度 96 设定通讯速度为9600bpsPr334 奇偶校验停止位长 2 偶校验,停止位长1位Pr539 通讯校验时间 9999 不进行通讯校验Pr549 协议选择 1 ModbusRTU协议Pr551 PU模式操作权选择 2 PU运行模式操作权作为PU接口进行ModbusRTU协议通讯时,Pr551必须设置为2,Pr340设置为除0以外的值,Pr79设置为0或2或6。

通过RS-485端子进行ModbusRTU协议通讯时,必须在NET网络模式下运行。

二.三菱PLC的设置对通讯格式D8120进行设置: D8120设置值为0C87,即数据长度为8位,偶校验停止位1位,波特率9600pbs,无标题符和终结符。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

三菱-FX-PLC-ModbusRTU通讯程序
进行ModbusRTU协议通讯时,Pr551必须设置为2,Pr340设置为除0以外值,Pr79设置为0或2或6。

RS-485进行ModbusRTU协议通讯时,必须NET网络模式下运行。

二.三菱PLC设置
对通讯格式D8120进行设置
D8120设置值为0C87,即数据长度为8位,偶校验停止位1位,波特率9600pbs,无标题符和终结符。

修改D8120设置后,确保通断PLC电源一次。

三.通讯程序
采用ModbusRTU协议与变频器通讯部分PLC程序如下:
四:程序说明:
1.当X1接通一次后,变频器进入正转状态。

2.当X2接通一次后,写入变频器运行频率60HZ。

3.当X3接通一次后,变频器进入停止状态。

当指令中,变频器指令址为0时,为广播
指令,所有从站变频器只接受PLC发出指令,不向主机发送响应信息。

相关文档
最新文档