CA88

首页 新闻中心 沉点产品 实操指南|LicOS PLC/PAC的Modbus TCP/RTU配置详解

实操指南|LicOS PLC/PAC的Modbus TCP/RTU配置详解

分类:沉点产品
起源:CA88科技
颁布功夫:2025-10-13
浏览:3223


在工业自动化系统中 ,Modbus和谈作为最经典的现场通讯尺度之一 ,凭借结构清澈、兼容性强的特点 ,宽泛利用于节造器、传感器及监控系统之间的数据交互。本文将简要注明CA88科技LicOS PLC/PAC在作为Modbus服务器时的地址结构与通讯机造 ,援手开发者和集成商急剧理解与部署系统。

根基职能与意思

在LicOS PLC/PAC中 ,Modbus地址的作用重要体此刻以下四个方面:

数据标识与定位

每个地址对应PLC内部的特定数据区域 ,如线圈、输入寄放器、维持寄放器等。通过地址 ,客户端能够正确接见或批改指标数据。

数据交互与通讯

客户端通过读写特定地址实现与PLC的实时通讯 ,实现数据采集与节造号令的下发。

设备互联与兼容

清澈的地址规定使LicOS设备能与其他支持Modbus和谈的系统实现无缝互联。

系统配置与守护方便

明确的地址映射可降低系统调试与后期守护的复杂度 ,提高项目执行效能。

Modbus通讯体式有三种 ,这是凭据物理层/传输层而做的适配。凭据TCP等传输层和谈的特点 ,Modbus摇身一变 ,就成为了ModbusTCP ,使用RS485、RS232等串行物理层和谈 ,Modbus就形成了ModbusRTU和ModbusASCII。

本教程基于以下开发前提:

软件:

Smart Control V5.0、Modbus Toolkit 5、SCOMM

网络拓扑:

1760340540206637

Modbus TCP

Modbus TCP和谈的数据体式由三部门组成:MBAP + 职能码 + 数据。

其中 MBAP 含四个字段:事务标识符、和谈标识符、长度、单元标识符。

事务标识符(2字节):暗示数据序号 ,每发送一次数据可自增或维持不变;

和谈标识符(2字节):固定为00;

长度(2字节):暗示后续数据的长度;

单元标识符:相当于串行从机地址。

示例:从机返回数据 0001 0000 0005 03 04 02 0006

其中 0001 为新闻序号 ,0000 暗示Modbus TCP和谈 ,0005 为后续数据长度 ,03 为单元标识符 ,04 为职能码 ,02 暗示数据长度为2字节 ,0006 为寄放器数据。

1. 报文头MBAP

MBAP为报文头 ,长度为7字节 ,组成如下:

1760340540334994

报文体式

1760340540965491

报文体式诠释

从机返回响应数据:

1760340541112774

从机返回响应数据结构图

2. 帧结构PDU

帧结构PDU由职能码+数据组成。职能码为1字节 ,数据长度不定 ,由具体职能决定。

职能码

Modbus的操作对象有四种:线圈、离散输入、维持寄放器、输入寄放器。

1760340541528237

职能码诠释

凭据对象的分歧 ,Modbus的职能码有:

1760340541600044

职能码类型

3. 服务器配置

PLC/PAC作为ModbusTCP服务器 ,有以下几个参数 ,如下图所示:

1760340542657929

ModbusTCP服务器配置

l Base Info Config-根基信息

Enable or Disable:TRUE启用PLC的 ModbusTCP从站职能:FALSE关关PLC的ModbusTCP从站职能。

Port ID:端标语。

Max Connection:最大衔接数量。

l Filter Info Config-过滤信息

Enable Filter:TRUE启用IP过滤职能 ,FALSE关关IP过滤职能。

Mask:允许接入的客户端所处网段的子网掩码。

Start IP:允许接入的客户端所处网段的肇始IP。

End IP:允许接入的客户端所处网段的实现IP。

l Clients Info:衔接信息 ,衔接数量及IP信息

Nummber ofclient:已经接入的客户端数量。

IP ofclient:当有多个客户端接入时 ,轮询显示接入客户端的IP、端口信息 ,显示体式如下图所示。

1760340542727445

接入设备IP信息

4. 0x01:读多个线圈

在从站中读1~2000个陆续线圈状态 ,ON=1 ,OFF=0

要求:MBAP 职能码 肇始地址H 肇始地址L 数量H 数量L(共12字节)

响应:MBAP 职能码 数据长度 数据(一个地址的数据为1位)

如:在从站0x01中 ,读取起头地址为0x0000的线圈数据 ,读0x0008位

00 02 00 00 00 06 01 01 00 00 00 08

回:数据长度为0x01个字节 ,数据为0x01 ,第一个线圈为ON ,其余为OFF

00 02 00 00 00 04 01 01 01 01

00000001

1760340542950786

读多个线圈

5. 0x02:读多个离散量输入

在从站中读1~2000个陆续的离散量输入状态

要求:MBAP 职能码 肇始地址H 肇始地址L 数量H 数量L(共12字节)

响应:MBAP 职能码 数据长度 数据(长度:9+ceil(数量/8))

如:从地址0x0000起头读0x0008个离散量输入

00 03 00 00 00 06 01 02 00 00 00 08

回:数据长度为0x01个字节 ,数据为0x01 ,第一个离散量输入为ON ,其余为OFF

00 03 00 00 00 04 01 02 01 01

00000001

1760340543452739

读多个离散量输入

6. 0x03:读多个维持寄放器

在从站中读维持寄放器陆续块的内容

要求:MBAP 职能码 肇始地址H 肇始地址L 寄放器数量H 寄放器数量L(共12字节)

响应:MBAP 职能码 数据长度 寄放器数据(长度:9+寄放器数量×2)

如:肇始地址是0x0000 ,寄放器数量是 0x0003

00 04 00 00 00 06 01 03 00 00 00 03

回:数据长度为0x06 ,第一个寄放器的数据为0x05 ,第二个寄放器的数据为0x06 ,其余为0x00

00 04 00 00 00 09 01 03 06 00 05 00 06 00 00

5,6,0

1760340543184818

读多个维持寄放器

7. 0x04:读多个输入寄放器

在从站中读1~2000个陆续输入寄放器

要求:MBAP职能码 肇始地址H肇始地址L寄放器数量H寄放器数量L(共12字节)

响应:MBAP职能码 数据长度 寄放器数据(长度:9+寄放器数量×2)

如:读肇始地址为0x0000 ,数量为0x0005的寄放器数据

00 05 00 00 00 06 01 04 00 00 00 05

回:数据长度为0x0A ,第一个寄放器的数据为0x0B ,第一个寄放器的数据为0x16 ,其余为0x00

00 05 00 00 00 0D 01 04 0A 00 0B 00 16 00 00 00 00 00 00

11,22,0,0,0

1760340543214370

读多个输入寄放器

8. 0x05:写单个线圈

在从站中的一个输出写成ON或OFF

要求:MBAP职能码 输出地址H输出地址L输出值H输出值L(共12字节)

响应:MBAP职能码 输出地址H输出地址L输出值H输出值L(共12字节)

如:将地址为0x0003的线圈设为ON

00 07 00 00 00 06 01 05 00 03 FF 00

回:写入成功

00 07 00 00 00 06 01 05 00 03 FF 00

TRUE

1760340544107286

写单个线圈

9. 0x06:写单个维持寄放器

在从站中写一个维持寄放器

要求:MBAP职能码寄放器地址H寄放器地址L寄放器值H寄放器值L(共12字节)

响应:MBAP职能码寄放器地址H寄放器地址L寄放器值H寄放器值L(共12字节)

如:向地址是0x0000的寄放器写入数据0x000A

00 08 00 00 00 06 01 06 00 00 00 0A

回:写入成功

00 08 00 00 00 06 01 06 00 00 00 0A

10

1760340544850013

写单个维持寄放器

10. 0x10:写多个维持寄放器

在一个远程设备中写陆续寄放器(1~123个寄放器)

要求:MBAP职能码肇始地址H肇始地址L寄放器数量H寄放器数量L字节长度寄放器值(13+寄放器数量×2)

响应:MBAP职能码肇始地址H肇始地址L寄放器数量H寄放器数量L(共12字节)

如:向肇始地址为0x0000 ,数量为0x0001的寄放器写入数据 ,数据长度为0x02 ,数据为0x000F

00 00 00 00 00 09 01 10 00 00 00 01 02 00 0F

回:写入成功

00 00 00 00 00 06 01 10 00 00 00 01

1

1760340544185803

写多个维持寄放器

11. 0x0F:写多个线圈

将一个从站中的一个线圈序列的每个线圈都强造为ON或OFF ,数据域中置1的位要求相应输出位ON ,置0的位要求响应输出为OFF

要求:MBAP职能码肇始地址H肇始地址L输出数量H输出数量L字节长度输出值H输出值L

响应:MBAP职能码肇始地址H肇始地址L输出数量H输出数量L

如:将地址为0x0000、0x0002的线圈设为ON ,0x0001的线圈为OFF

00 01 00 00 00 08 01 0F 00 00 00 03 01 05

回:写入成功

00 01 00 00 00 06 01 0F 00 00 00 03

3

1760340545194489

写多个线圈

Modbus RTU

Modbus RTU 数据包通常由 从站地址、职能码、数据和差错校验 组成。

例如 ,主机发送的数据包为:06 03 00 50 00 04 45 AF。

其中:

06 为从站地址;

03 为职能码 ,暗示读取维持寄放器;

0050 为肇始寄放器地址;

0004 暗示读取 4 个字的数据;

45AF 为 CRC 校验码 ,用于检测数据传输是否犯错。

1. 帧结构

帧结构 = 地址 + 职能码 + 数据 + 校验

地址:占用一个字节 ,领域0-255 ,其中有效领域是1-247 ,其他有特殊用处 ,好比255是广播地址(广播地址就是应答所有地址 ,正常的必要两个设备的地址一样能力进行查问和回复)。

职能码:占用一个字节 ,职能码的意思就是 ,知路这个指令是干啥的 ,好比能够查问从机的数据 ,也能够批改数据 ,所以分歧职能码对应分歧职能。

数据:凭据职能码分歧 ,有分歧结构 ,在后续的事俘中有注明。

校验:为了保障数据不谬误 ,增长这个 ,而后再把前面的数据进行推算看数据是否一致 ,若是一致 ,就注明这帧数据是正确的 ,再回复;若是不一样 ,注明这个数据在传输的时辰出了问题 ,数据不合的 ,所以就抛弃了。

主机查问数据:

1760340545143492

主机查问数据结构图

2. 职能码

凭据对象的分歧 ,Modbus的职能码有:

1760340545123116

职能码类型

凭据对象的分歧 ,Modbus的职能码有:

1760340546123194

职能码类型

3. 服务器配置

PLC/PAC作为ModbusRTU服务器 ,有以下几个参数 ,如下图所示:

1760340546203720

ModbusRTU服务器参数

根基配置

是否启用:值为TRUE暗示ModbusRTU通路开启;值为FALSE暗示ModbusRTU通路关关 ,默认值为FALSE。

从站地址:PLC/PAC作为ModbusRTU从站时的地址编号 ,取值领域为1-247。

串口配置

COM端口:PLC/PAC作为ModbusRTU从站时的通讯端口 ,默认值为1 ,取值领域为1-4 ,别离对应CPU单元的串标语为1-4的串口 ,各串口的管脚界说请参阅《PLC/PAC可编程逻辑节造器硬件手册》。

波特率:ModbusRTU通讯时的传输速度 ,取值领域为1200-115200bps ,建议使用9600bps ,默认值也为9600bps。

奇偶校验:ModbusRTU通讯时的数据校验方式 ,支吃戽校验(ODD)、偶校验(EVEN)、无校验(NONE)三种数据校验步骤 ,默以为偶校验EVEN。

数据位:ModbusRTU通讯时的数据位长度 ,支持5、6、7、8位数据长度 ,默以为8位数据位。

终场位:ModbusRTU通讯时的终场位长度 ,支持1、2位终场位长度 ,默以为1位终场位长度。

4. 0x01:读多个线圈

作用:读从机线圈寄放器 ,位操作 ,可读单个或多个;

发送指令:从机地址:0x01 ,寄放器起头地址:0x0000 ,共读取8个线圈。发送号令如下:

1760340546187219

TX:01 01 00 00 00 08 3D CC

响应:返回数据每一位的对应的线圈状态 ,1暗示ON ,0暗示OFF;

1760340547115684

RX:01 01 01 07 10 4A

5. 0x02:读多个离散输入

读从机离散输入寄放器 ,位操作 ,可读单个或多个;

发送指令:从机地址:0x01 ,寄放器起头地址:0x0000 ,共读取8个输入。发送号令如下:

1760340547181006

TX:01 02 00 00 00 08 79 CC

响应:返回数据每一位的对应输入的状态 ,1暗示ON ,0暗示OFF;

1760340547325729

RX:01 02 01 10 A0 44

6. 0x03:读多个维持寄放器

作用:读从机维持寄放器 ,字节操作 ,可读单个或多个;

发送指令:从机地址:0x01 ,寄放器起头地址:0x0000 ,共读取1个寄放器。发送号令如下:

1760340547192235

TX:01 03 00 00 00 01 84 0A

响应:返回数据。

1760340548924385

RX:01 03 02 00 0F F8 40

7. 0x04:读多个输入寄放器

作用:读从机输入寄放器 ,字节操作 ,可读单个或多个;

发送指令:从机地址:0x01 ,寄放器起头地址:0x0000 ,共读取1个寄放器。发送号令如下:

1760340548855608

TX:01 04 00 00 00 01 31 CA

响应:返回数据。

1760340548174901

RX:01 04 02 00 0F F9 34

8. 0x05:写单个线圈

作用:写单个线圈 ,位操作 ,只能写一个 ,写0xFF00暗示线圈为ON ,写0x0000暗示线圈为OFF;

发送指令:从机地址:0x01 ,设置线圈0x0000为ON。发送号令如下:

1760340549273708

TX:01 05 00 00 FF 00 8C 3A

响应:同发送数据。

9. 0x06:写单个维持寄放器

作用:写单个维持寄放器 ,字节操作 ,只能写一个;

发送指令:从机地址:0x01 ,设置线圈0x0000为0x2193。发送号令如下:

1760340549151536

TX:01 06 00 00 21 93 D1 F7

响应:同发送数据。

10. 0x10:写多个维持寄放器

作用:写多个维持寄放器 ,字节操作 ,可写多个;

发送指令:从机地址:0x01 ,寄放器地址0x0000 ,写2个寄放器4个字节数据。发送号令如下:

1760340549205599

TX:01 10 00 00 00 02 04 00 08 00 09 B2 6B

响应:返回数据。

1760340550176199

RX:01 10 00 00 00 02 41 C8

LicOS PLC/PAC作为Modbus服务器 ,具备齐全的Modbus TCP与RTU通讯能力。其地址映射清澈 ,职能码覆盖全面 ,支持工业现场常见的数据读写需要。

在现实部署时 ,建议结合具体网络环境与设备机能 ,合理配置衔接数、串口参数及IP过滤战术 ,以保险通讯的实时性与安全性。


- END -
热点推荐
热点资讯
热点话题
CA88Licos系列产品
PLC过控:EC200系列CPU

EC200系列CPU是一款高机能幼型PLC ,充分阐扬幼型机的单体优势 ,以超值的性价比为用户幼型节造系统提供解决规划。

PLC过控:EC300系列CPU

EC300系列CPU是一款中型PLC ,通讯接口丰硕且拓展性强 ,为过程节造领域的中幼型设备和系统提供不变、靠得住和高性价比的解决规划。

PLC过控:EC400系列CPU

EC400系列CPU是一款大型PLC ,拥有丰硕的通讯接口和壮大的拓展性 ,支持双CPU和双PLC冗余 ,为过程节造领域的大型系统提供不变、靠得住和高性价比的解决规划。

PAC运控:MC500系列CPU

LicOS MC500是一款幼型活动节造器 ,支持总线轴和脉冲轴 ,在16轴以内或者总线+脉冲混合活动节造场景中 ,MC500提供不变靠得住、高性价比的混合式活动节造解决规划。

PAC运控:MC600系列CPU

LicOS MC600系列是一款中型活动节造器 ,它提供不变靠得住、机能壮大的混合式活动节造解决规划。

PAC运控:MC700系列CPU

LicOS MC700是专门针对高难度、高精度要求的复杂活动节造系统或设备打造的一款产品 ,它占有极强的算力和实时性保障。

I/O系统:GL200系列

GL200系列IO系统以其丰硕的 ?橹掷唷⒂浊煞奖愕牡镀缴杓啤⒏叻直媛市藕挪杉褪凳狈蠢∧芰 ,为自动化行业提供不变靠得住的解决规划。

I/O系统:GR200系列

GR200系列远程通讯扩大 ? ,支持EtherCAT与Profinet ,实现远程机架扩大 ,建设24V冗余电源和16通路数字I/O ,简化工控自动化集成。

I/O系统:GL100系列

GL100系列IO系统以全面覆盖的 ?槔嘈汀⒏叻直媛市藕糯χ煤徒媒莸墓こ套樘芰 ,为用户提供定造化解决规划 ,满足多样化的工业自动化需要。

I/O系统:GR100系列

LicOS GR100系列扩大 ?橹С諩therCAT和PROFINET双和谈 ,兼容主流设备 ,适配GL100系列IO ? ,提供全面的通路级诊断职能 ,实现高效系统构建与故障响应。

伺服驱动:S2系列伺服驱动器

S2系列伺服驱动器 ,以全新设计和精彩表观 ,结合LSM系列伺服电机 ,提供全面的驱动节造解决规划 ,实现地位、速度和扭矩的精确切换 ,确保机能卓越和用户履历的便捷与矫捷。

伺服驱动:S3系列伺服驱动器

S3系列伺服驱动器以其比S2更紧凑的体积 ,专为狭幼空间设计 ,与LSM系列伺服电机的无缝共同 ,提供合用于各类驱动利用的高机能解决规划 ,实现矫捷的地位、速度和扭矩节造 ,确保用户享有卓越机能和不变靠得住的操作履历。

伺服驱动:T3系列脉冲型伺服驱动器

LicOS T3系列脉冲型伺服是新一代高机能伺服驱动器 ,可实现亚微米级此外地位节造精度 ,可大幅提升工业自动化设备的精座 ,速度、效能和不变性。具备通用化和平台化两大特点 ,支持RS485通讯 ,功率领域涵盖200W~1000VV。

伺服驱动:U系列尺度型伺服驱动器

LicOS U系列新一代高机能AC伺服驱动器。拥有高响应 ,高精度、高速度的特点 ,同时选取先进底层算法 ,占有多种高级职能 ,可能适应多行业场景 ,功率领域涵盖100W~7500W

远程RTU:RZ系列油气款RTU

LicOS RZ系列向油气款RTU ,面向油气工控的高机能远程数据采集、节造与传输终端 ,集成数据采集、和谈转换、冗余通讯及本地边缘处置于一体

远程RTU:RC系列轨交款RTU

LicOS RC系列向轨交款RTU ,面向轨交工控的高机能远程数据采集、节造与传输终端 ,集成数据采集、和谈转换及本地边缘处置于一体

远程RTU:NC系列电网款RTU

LicOS NC系列向电网款RTU ,面向电网工控的高机能远程数据采集、节造与传输终端 ,集成数据采集、和谈转换、冗余通讯及本地边缘处置于一体

散布式DCS:DCS 5.0 边缘节造数据中心

LicOS DCS 5.0 边缘节造数据中心 ,实现软件界说节造的主题,集成过程节造、安全联锁、工艺优化等所有主题职能。

散布式DCS:DCS 5.0 智能现场终端

LicOS DCS 5.0 智能现场终端 ,直接与出产过程交互 ,掌管数据采集、感知和节造指令的执行。

工业互换机:LC3000系列互换机

LC3000系列工业以太网互换机 ,可满足工厂自动化、轨路交通、能源等严苛工业场景需要 ,为大型系统提供不变、靠得住和高性价比的解决规划。

CA88科技 ,助您开启工业数字化和智能化之路

在线留言
企微客服
CA88科技在线客服

官方企微客服

扫码关注
关注CA88科技

CA88科技公家号

在线客服
返回顶部

申请产品试用

感激您关注CA88科技 ,为了更好的为您服务 ,请填写并提交以下信息 ,我们将尽快与您联系!

基础信息

需要信息

*
CA88PLC征询
【网站地图】