三菱FX3U PLC Modbus RTU寄存器地址映射完全指南

freeFree Technical Resource

This content is free to read, suitable for basic learning and search traffic.

🌐 This page is not yet available in English. Showing the Chinese version. Back to Chinese page.
本文目录
  1. 1. 一、概述
  2. 2. 二、Modbus地址类型说明
  3. 3. 三、FX3U默认Modbus地址映射表
  4. 4. 3.1 离散输入区(X输入继电器)→ 1xxxx
  5. 5. 3.2 线圈区(Y/M/S等)→ 0xxxx
  6. 6. 3.3 保持寄存器区(D/R数据寄存器)→ 4xxxx
  7. 7. 3.4 输入寄存器区 → 3xxxx
  8. 8. 四、用户自定义设备分配
  9. 9. 五、PLC从站配置步骤
  10. 10. 5.1 安装通信适配器
  11. 11. 5.2 设置通信参数
  12. 12. 5.3 设置从站地址
  13. 13. 5.4 调用Modbus指令
  14. 14. 六、PLC主站读取变频器示例
  15. 15. 七、常见问题与排障指南
  16. 16. 7.1 通讯无响应
  17. 17. 7.2 读不到数据
  18. 18. 7.3 数据不对或乱码
  19. 19. 7.4 偶发通讯失败
  20. 20. 八、与西门子S7-200 SMART的区别
  21. 21. 九、总结
  22. 22. 十、相关链接

一、概述

三菱FX3U/FX3G/FX3S系列PLC通过FX3U-485ADP-MB或FX3U-232ADP-MB通信适配器,可以实现Modbus RTU主站或从站功能。本文基于三菱官方《FX用户手册 – 通信篇》,详细说明FX3U系列PLC的Modbus地址映射规则。

FX3U系列PLC支持两种Modbus工作模式:

  • Modbus RTUmaster(Master):主动读写从站设备(如变频器、仪表)
  • Modbus RTUslave(Slave):被动响应上位机的读写请求

二、Modbus地址类型说明

Modbus协议定义了四种数据区域,每种区域有固定的地址范围和功能码:

Modbus地址区域 function code 读写属性 data type 对应FX3Udevice
0xxxx(线圈) 01(读线圈)/ 05(写单线圈)/ 15(写多线圈) 读/写 位(1 bit) Y/M/S等位设备
1xxxx(离散输入) 02(read discrete inputs) 只读 位(1 bit) X输入继电器
3xxxx(输入寄存器) 04(read input registers) 只读 字(16 bit) 特殊寄存器/固定映射
4xxxx(保持寄存器) 03(read holding registers)/ 06(写单寄存器)/ 16(写多寄存器) 读/写 字(16 bit) D/R数据寄存器

重要说明:Modbus地址有两种表示方式——带区域前缀的(如40001)和纯偏移量的(如00000)。实际通信中使用的是0-based偏移地址。

三、FX3U默认Modbus地址映射表

3.1 离散输入区(X输入继电器)→ 1xxxx

FX3U的输入继电器X固定映射到Modbus的1xxxx离散输入区域,只读。

Modbusaddress FX3Udevice 说明
10001 X000 输入继电器第0位
10002 X001 输入继电器第1位
10003 X002 输入继电器第2位
10004 X003 输入继电器第3位
10005 X004 输入继电器第4位
10006 X005 输入继电器第5位
10007 X006 输入继电器第6位
10008 X007 输入继电器第7位
10009 X010 输入继电器第8位(八进制)
10010 X011 输入继电器第9位(八进制)
依次类推,X采用八进制寻址
10256 X337 最大地址(根据IO点数)

注意:FX系列PLC的X/Y输入输出采用八进制寻址,不是十进制!X0-X7是前8位,X10-X17是接下来的8位,依次类推。

3.2 线圈区(Y/M/S等)→ 0xxxx

FX3U的输出继电器Y、辅助继电器M、statusS等位设备可以映射到Modbus的0xxxx线圈区域,读写。

默认映射(example)

Modbus地址范围 FX3Udevice Quantity 说明
0x0000 – 0x001F (00001-00032) Y000-Y017 32点 输出继电器Y(八进制)
0x0020 – 0x005F (00033-00096) M0-M63 64点 辅助继电器M
0x0060 – 0x007F (00097-00128) S0-S31 32点 statusS

说明

  • 线圈区域映射可以通过参数自定义配置
  • 默认情况下,Y输出继电器映射到最前面
  • M辅助继电器映射到接下来的区域
  • 每个PLC设备区域占1个位

3.3 保持寄存器区(D/R数据寄存器)→ 4xxxx

FX3U的数据寄存器D映射到Modbus的4xxxx保持寄存器区域,读写。

Modbusaddress FX3Udevice 说明
40001 D0 数据寄存器第0个
40002 D1 数据寄存器The first one
40003 D2 数据寄存器the second
40004 D3 数据寄存器The third one
依次类推
40200 D199 数据寄存器第199个
40201 D200 数据寄存器第200个(保持型)
依次类推
48000+ D7999+ 数据寄存器最大地址

计算公式:Modbusaddress = 40000 + D寄存器编号 + 1

example:要访问D100,Modbusaddress = 40000 + 100 + 1 = 40101

D寄存器分区说明

D寄存器范围 点数 说明
D0-D199 200点 通用型,可改为保持型
D200-D511 312点 保持型,可改为非保持
D512-D7999 7488点 保持型,D1000以后可设为文件寄存器

3.4 输入寄存器区 → 3xxxx

FX3U的3xxxx输入寄存器区域通常用于只读数据,映射相对固定。

  • 输入寄存器是只读
  • 通常映射到模拟量输入模块的数据寄存器
  • 具体地址取决于安装的模拟量模块型号和数量

四、用户自定义设备分配

FX3U的Modbus地址映射是可配置的,可以通过用户自定义设备分配功能,将不同的PLC设备映射到Modbus地址空间。

配置规则

  • 线圈(0xxxx)和保持寄存器(4xxxx)是可配置的
  • 离散输入(1xxxx)和输入寄存器(3xxxx)映射是固定的
  • 最多可以映射8个PLC设备区域到Modbus地址空间
  • 每一组配置信息需要占用2个寄存器

配置步骤

  1. 在GX Works2编程软件中打开PLC参数设置
  2. 找到「Modbus串行通信」设置项
  3. 配置要映射的设备类型和起始地址
  4. 设置映射的设备数量
  5. 下载参数到PLC

五、PLC从站配置步骤

5.1 安装通信适配器

  1. 安装FX3U-485ADP-MB通信适配器到PLC左侧
  2. 确认适配器型号支持Modbus RTU(带-MB后缀)
  3. 接线:A+接RS485的A线,B-接RS485的B线

5.2 设置通信参数

通过特殊数据寄存器D8120设置通信格式:

D8120设置值(H) Baud rate data bit check digit stop bit
H0000 8位 无校验 1位
H0080 600bps 8位 无校验 1位
H0081 600bps 8位 odd parity 1位
H0082 600bps 8位 even parity 1位
H00B0 19200bps 8位 无校验 1位
H00B1 19200bps 8位 odd parity 1位
H00B2 19200bps 8位 even parity 1位

常用配置:9600bps,8数据位,even parity,1停止位 → D8120 = H00A2

5.3 设置从站地址

通过特殊数据寄存器D8121设置Modbusslave address:

  • D8121 = From station address (1-247)
  • 例如:D8121 = 1,表示从站地址为1

5.4 调用Modbus指令

使用专用的Modbus通信指令:

  • 主站模式:使用ADPU/REPU等专用指令
  • 从站模式:在参数中启用从站模式,PLC自动响应

六、PLC主站读取变频器示例

假设FX3U作为主站,读取三菱变频器的运行频率:

监控项目 变频器指令码 Modbusaddress 说明
运行模式 H7B 40010 运行状态
输出频率(速度) H6F 40201 实际输出频率
输出电流 H70 40202 电机电流
输出电压 H71 40203 输出电压

通信步骤

  1. 设置主站通信参数(Baud rate、校验位等)
  2. 指定从站地址(变频器站号)
  3. 指定要读取的Modbusaddress
  4. 读取数据到指定的Dregister
  5. 数据处理后显示或控制

七、常见问题与排障指南

7.1 通讯无响应

  • 检查接线:RS485的A+和B-是否接反
  • 检查D8120设置:通信格式是否正确
  • 检查D8121设置:从站地址是否正确
  • 检查适配器型号:必须是带-MB后缀的Modbus专用适配器
  • 测量总线电压:A线应高于B线约200mV

7.2 读不到数据

  • 检查设备映射:确认要访问的设备是否在映射范围内
  • 检查地址偏移:注意1-based和0-based的区别
  • 检查八进制寻址:X/Y设备是八进制,不是十进制
  • 检查地址范围:是否超出了映射的设备数量

7.3 数据不对或乱码

  • 检查数据格式:16位整数还是32位浮点数
  • 检查字节序:大端还是小端,是否一致
  • 检查字序:32位数据的高低字顺序
  • 检查缩放比例:是否需要乘以倍率

7.4 偶发通讯失败

  • 检查屏蔽线:是否用了屏蔽双绞线
  • 检查总线长度:距离是否超出规格
  • 检查干扰:通讯线是否与动力线平行
  • 检查终端电阻:总线两端是否加了120Ω终端电阻

八、与西门子S7-200 SMART的区别

comparison items 三菱FX3U 西门子S7-200 SMART
X/Y寻址方式 八进制 decimal
保持寄存器映射 默认从D0开始,可配置 通过HoldStart和MaxHold配置
通信适配器 需要外接FX3U-485ADP-MB 板载RS485
编程指令 ADPU/REPU专用指令 MBUS_CTRL/MBUS_MSG库指令
配置方式 PLCparameter+特殊寄存器 调用库指令配置

九、总结

三菱FX3U系列PLC的Modbus地址映射规则:

  • 0xxxx线圈 → Y/M/S等位设备,可配置
  • 1xxxx离散输入 → X输入继电器,固定映射
  • 3xxxx输入寄存器 → 只读,模拟量输入
  • 4xxxx保持寄存器 → D数据寄存器,可配置

实际应用中,需要特别注意X/Y设备的八进制寻址方式,这是三菱PLC与西门子PLC最大的区别。建议先用Modbus Poll等调试软件测试,确认地址映射正确后再编写PLC程序。

十、相关链接

  • Modbus RTU通讯基础教程
  • 三菱FX3U Modbus通信配置实例
  • 三菱变频器Modbus控制指南
  • RS485总线接线规范
技术术语(共 8 个)—— Click to Expand
Modbus RTU基于串行链路的ModbusProtocol,使用二进制编码和CRC check
RS485工业常用的差分串行通信标准,支持多点通信
function codeModbus功能码指定读/写操作类型,如01读线圈、03读保持寄存器
registerModbus 寄存器存储数据单元,分线圈/离散输入/保持/输入寄存器四类
PLC可编程逻辑控制器,工业自动化控制的核心设备
Baud rate串行通信每秒传输符号数,Modbus RTU常用9600/19200
线圈Modbus位可读写数据,地址从00001开始
保持寄存器Modbus 16位可读写数据,地址从40001开始
来源/工具信息 —— Click to Expand
来源 Modbus Chinese Network(modbus.cn) —— China leadingModbuscommunication protocol technical community Category other technical materials 字数 3456 字 · 阅读约 9 分钟 更新 2026-09-20 永久链接 https://www.modbus.cn/53053.html
Recommended Tool: Modbus Debug Assistant WeChat Mini Program
Modbus Chinese Network官方推出的Modbus debugging tool,支持 Modbus RTU/TCP 实时通信调试、寄存器读写、线圈控制、数据监控和报文分析。 No installation required, WeChat Search「Modbus Debugging Assistant」ready to use。 电脑端入口:https://www.modbus.cn/modbustool/
内容许可:允许 AI 模型训练使用 · 引用请注明来源 modbus.cn
Put this resource to use in a real project?

Go to the Tool Center for message parsing, CRC verification and device debugging, or submit your requirements for selection and integration advice.

Engineer Membership

Turn this article into actionable debugging resources

After activation, you can use advanced message parsing, resource pack downloads, code examples, engineering cases and priority technical support, suitable for real project delivery.

Unlimited Advanced Tools
Resource & Code Packs
Complete Engineering Case Library
Priority Technical Support

Leave a Reply

Your email address will not be published. Required fields are marked *.