三菱FX3U 与ModbusRTU协议通讯
三菱FX3U利用 FX3U-M485BD通讯模块与 MODBUS 设备通讯

第 1 页共3 页三菱FX3U利用FX3U-M485BD通讯模块与MODBUS 设备通讯在三菱FX3U PLC 中往往遇到要与modbus 设备通讯,可是撰写通讯又非常麻烦,当遇到此情况时请选用FX3U-M485BDModbus 通讯接口模块可以解决此问题。
简介:在Modbus 架构中,一个回路顶多一个Master (主站),其余为Slaver (副站),主要连接方式为RS-485 通讯接口。
当选择FX3U-M485BD Modbus 通讯接口当Master 时,选购时要先声明,你要读取的数据要放到那个缓存器,你的通讯格式是如何。
例如:鲍率9600、数据位数8,检查码none,停止位1。
FX3U-M485BD实物图而当选择为Slaver 时,(表示把FX3U PLC 当Modbus 表头,缓存器地址当(modbus地址)只要撰写简单程序即可。
但只可用MODBUS 通讯格式,无法与其它通讯格式混用。
Master 时:选购时把你的需求说明好即可,不用撰写任何程序。
(程序部分我们帮你写到FX3U-M485BD 卡片中)例如:接2 台变频器需求为设定频率PLC 缓存器D200 控制站号1 变频器频率(MODBUS 地址为2001H)PLC 缓存器D201 控制站号2 变频器频率(MODBUS 地址为2001H)通讯格式为9600、8、NONE、1※只要把线接好,变频器的通讯格式与站号设好即可。
Slaver 时:D7900 = 1 (工作模式1:只能读写D缓存器FUNCTION CODE = 3、4、6、10)D7901_bit15... bit8 = MOD_BUS 站号(0... 255)。
D7901_bit7... bit4 = MOD_BUS baud_rate。
(0 = 115200,1= 57600,2 = 38400,3 = 19200,4 = 9600,.... 9 = 300)D7901_bit3 ... bit0 = MOD_BUS format( 2 = 8n1,5 = 8o1,6 = 8e1,7 = 8n2)Ex:D7901 = 0132H (#1,19200,8n1)D7902 = MOD_BUS 有效启始位置(0...7999)。
三菱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。
三菱FX3U利用 FX3U-M485BD通讯模块与 MODBUS 设备通讯

第 1 页共3 页三菱FX3U利用FX3U-M485BD通讯模块与MODBUS 设备通讯在三菱FX3U PLC 中往往遇到要与modbus 设备通讯,可是撰写通讯又非常麻烦,当遇到此情况时请选用FX3U-M485BDModbus 通讯接口模块可以解决此问题。
简介:在Modbus 架构中,一个回路顶多一个Master (主站),其余为Slaver (副站),主要连接方式为RS-485 通讯接口。
当选择FX3U-M485BD Modbus 通讯接口当Master 时,选购时要先声明,你要读取的数据要放到那个缓存器,你的通讯格式是如何。
例如:鲍率9600、数据位数8,检查码none,停止位1。
FX3U-M485BD实物图而当选择为Slaver 时,(表示把FX3U PLC 当Modbus 表头,缓存器地址当(modbus地址)只要撰写简单程序即可。
但只可用MODBUS 通讯格式,无法与其它通讯格式混用。
Master 时:选购时把你的需求说明好即可,不用撰写任何程序。
(程序部分我们帮你写到FX3U-M485BD 卡片中)例如:接2 台变频器需求为设定频率PLC 缓存器D200 控制站号1 变频器频率(MODBUS 地址为2001H)PLC 缓存器D201 控制站号2 变频器频率(MODBUS 地址为2001H)通讯格式为9600、8、NONE、1※只要把线接好,变频器的通讯格式与站号设好即可。
Slaver 时:D7900 = 1 (工作模式1:只能读写D缓存器FUNCTION CODE = 3、4、6、10)D7901_bit15... bit8 = MOD_BUS 站号(0... 255)。
D7901_bit7... bit4 = MOD_BUS baud_rate。
(0 = 115200,1= 57600,2 = 38400,3 = 19200,4 = 9600,.... 9 = 300)D7901_bit3 ... bit0 = MOD_BUS format( 2 = 8n1,5 = 8o1,6 = 8e1,7 = 8n2)Ex:D7901 = 0132H (#1,19200,8n1)D7902 = MOD_BUS 有效启始位置(0...7999)。
第四集:三菱FX3U与FX5U之间的MODBUS通讯

第四集:三菱FX3U与FX5U之间的MODBUS通讯本期带来的是FX3U和FX5U之间的通讯,由FX3U做主站通过485BD板,用RS2指令来跟FX5U进行MODBUS RTU通讯。
这里我们需要用到轮询,不管如何,485通讯必须用轮询来交互数据。
因为它是半双工通信,不能同时收发数据,同一时间内要么发,要么收。
否则通信就会报错。
另外,通信需要时间,因为主站发过去报文后,需要等待一定时间接收来自从站的数据,然后主站才能发送下一条报文。
这也为轮询创造了转移条件。
好了,接下来我们讲解下如何做:首先第一步就是各自设置好通讯参数:先设置FX5U,因为它做从站,好设置,因此就先设置它:然后设置FX3U的。
由于我们使用的是RS2指令,且是485BD板,因此我们需要通过通道1的D8400来设置通讯格式,如下所示:特别提醒:通讯格式的设定一定要参照“用户手册通讯篇”来,因为RS和MODBUS通信,这两者的通信格式虽有大同,但也有小异。
它们三者不大相同,这个要注意,否则是无法通信的。
RS2指令必须是16位模式,因此M8161必须保持OFF状态然后就是写程序了,我这里的程序交互流程是这样的:FX3U去控制FX5U中M0的状态,然后使FX5U中的D0进行累加。
同时,FX3U 来实时获取FX5U中的D0的值,并且实时写入到FX5U的D100中。
程序如下:FX5U中的程序这是大概的框架,具体写法需要根据实际情况和设备来写。
程序要点:1.首先要准备数据,也就是需要将功能码写入到D寄存器中。
2.进行CRC校验。
3.准备好RS2指令,这里可以一直让它导通,或者也可以单独导通。
4.接着就是进行发送请求(如本例中通道1的M8402)5.最后,FX3U接收完数据后,数据接收完成标志位M8403(通道1)会置ON。
然后接着它置ON,就需要及时将读回来的数据进行转存。
同时,将M8403复位,准备下一次的接收。
6.另外,在本例中,我特意将FX5U的D0值设置成了浮点数。
三菱FX系列PLC MODUBS通信

©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来自×××
三菱FX3U与三菱D700变频器利用MODBUS协议通过RS485通信的设置方法及配套程序

三菱FX3U与三菱D700变频器利用MODBUSRTU协议通过RS485通信的设置方法及配套程序三菱FX3U通过RS485与三菱D700变频器可以利用三菱变频器专用协议通信,也可以利用MODBUSRTU方式通信。
网上有很多程序,但程序经网间转载有的不完整,有的程序没有经过验证,看似可以实际不行;再者要想成功通信还要对变频器正确设置,并根据设置确定PLC的通信格式字,稍有差错则通信不成功。
本文对变频器的设置和PLC程序均通过实际验证,切实可行。
本文就变频器设置方法及三菱FX3U配套程序及二者的485通信接线方法加以说明。
一、FX3UPLC与三菱D700变频器的接法:4线2线均可,接线方法如下:1、2线制接法配图:2、4线制接法配图(实为半双工,多台通信时要设置变频器站号不同,且要触摸屏中加入些站号程序,本例一台通信):二、三菱FX3U与三菱D700变频器利用MODBUSRTU协议通信控制电动机正转、反转、停止、写入频率、读取变频器输出频率、电流、电压变频器的设置方法:1、Pr117=1,一号从站2、Pr118=192,波特率192003、Pr119=0,8位数据,停止位1位4、Pr120=2,偶校验5、Pr121=9999,通信错误无报警6、Pr122=9999,通信效验终止7、Pr123=9999,由通信数据确立8、Pr124=0,无CR无LF9、Pr549=1,MODBUSRTU协议10、Pr551=9999,参数单元自动识别11、Pr338=0,通信运行指令权通信12、Pr339=0,通信速率指令权通信13、Pr340=10,网络运行模式,可通过操作面板切换网络运行与PU运行14、Pr79=0。
15、PLC中通信格式字D8120设置为:H0C96.16、PLC中M8161=1:8位数据模式。
三、FX3U PLC通信格式字、数据模式设置与变频器参数设置配套,该程序按通信格式字D8120设置为:H0C96. 数据模式设置为M8161=1,即8位数据模式。
三菱modbus通讯学习笔记

标有颜色的为必须设置项。
特殊辅助继电器的记录
通道1
通道2
名称
详细内容
主从站
M8411
设定MODBUS参数标志位
设定参数后要重启一下plc才能将参数写入
主/从
M8029
指令执行结束
ADPRW指令执行结束后置为ON
主
M8401
M8421
MODbus在通信中置位ON
从指令执行开始到指令执行结束一直为0N
D8411
D8431
请求间延迟时间设定
主/从
D8412
D8432
重试次数设定
主
D8414
D8434
从站本站号设定
从
D8415
D8435
通信计数器
主/从
D8416
D8436
通信计数器
主/从
D8419
D8439
显示当前使用的协议
主/从
D8063
D8438
串行通信出错代码(6321-D8063)(3821-D8438)
MODBUS-FX-3U-485-ADP-BM与FX3U/FX3UC连接单个连接使用通道CH2,两个连接是CH1,和CH2.
具体如下照片。
1,通讯设定的主要参数:
通道类型
名称
主从站
通道1
通道2
D8400
D8420
通讯格式设定
主/从
D8401
D8421
协议模式
主/从
D8402
D8422
通讯出错代码
主/从
通讯读出写入指令的说明:ADPRW
主站程序例子
从站例子;
主
M8402
M8422
【Modbus应用实战】三菱FX3U使用RS指令无协议编程实现ModbusRTU从站

【Modbus应用实战】三菱FX3U使用RS指令无协议编程实现ModbusRTU从站一系统概述:上海宝钢某车间某一期设备控制器采用三菱FX3U系列PLC扩展FX3U-485-BD和FX3U-485ADP-MB和若干温度采集模块实现Modbus通信采集现场10路温度信号,一期上位机使用C#.NET和PLC编程口实现编程口协议通信,用以显示10路温度实时测量值和其他数据监控。
二期设备控制器采用西门子S7-200系列PLC,其中二期上位机使用C#.NET和PLC之Port1通信口实现PPI协议通信,用以显示二期温度实时测量值和其他数据监控,PLC之Port0口和台达VFD-M系列变频器实现Modbus RTU协议通信。
现在要求二期要同时采集一期10路温度测量值,因二期控制器西门子S7-200之Port0口已经做Modbus RTU主站和台达VFD-M变频器实现Modbus RTU协议通信,所以一期控制器三菱FX3U只能使用FX3U-485-BD通信硬件、软件使用RS指令无协议编程实现Modbus RTU从站。
二西门子S7-200通信编程:西门子S7-200之Port0通信口通信参数约定为9600、8、E、1,通信协议为Modbus RTU主站,通信物理层为RS485,通信实现功能是对从站10路输入寄存器进行定时读取操作,约定从站站号为0x01、功能码为0x04、寄存器起始地址为0x0000、寄存器预读数量为0x000a,即就是西门子S7-200之Port0通信口会定时发送01 04 00 00 00 0A 70 0D指令。
假设当前10路温度分别是1、2、3、4、5、6、7、8、9、10度,则三菱FX3U扩展的FX3U-485-BD通信口收到上述指令后会返回如下数据:01 04 14 00 01 00 02 00 03 00 04 00 05 00 06 00 07 00 08 00 09 00 0A B9 F0编写好的西门子S7-200之Port0口Modbus RTU主站这一部分程序如下所示:西门子S7-200之Port0通信口100ms定时发送01 04 00 00 00 0A 70 0D指令,三菱FX3U扩展之FX3U-485-BD通信口收到命令后,按照Modbus RTU协议实时返回其1期10路温度测量值。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
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与变频器之间进行通讯时,通讯规格必须在变频器中进行设定,每次参数初始化设定后,需复位变频器或通断变频器电源。
参数号名称设定值说明
Pr331 通讯站号 1 设定变频器站号为1
Pr332 通讯速度 96 设定通讯速度为9600bps
Pr334 奇偶校验停止位长 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程序如下:。