Modbus TCP协议

1、简介

Modbus TCP是一种应用于工业自动化领域的通信协议,它是Modbus协议的一个变种,采用TCP/IP协议进行数据传输。Modbus TCP使得Modbus协议可以通过以太网网络运行,允许设备之间在IP网络上交换数据。

在Modbus TCP协议中,通信通常由一个客户端(通常称为Master)和一个或多个服务器(Slave)进行。客户端发出请求,服务器响应这些请求。这些请求和响应包括读取或写入服务器中存储的数据。这些数据可以是输入/输出状态、保持寄存器、模拟输入等。

Modbus TCP常用于工业环境中,用于连接控制系统和现场设备,如传感器、执行器、变频器等。它特别适用于那些需要在设备之间进行快速、可靠通信的场景。

2、modbus TCP常用功能码

功能码

Hex表示

功能

备注

1

0x01

读取线圈

可读写开关量 接受05、15写入

2

0x02

读取离散输入

只读开关量

3

0x03

读取保持寄存器

可读性模拟量 接受06、16写入

4

0x04

读取输入寄存器

只读模拟量

5

0x05

写入单线圈

0xFF00表示ON(True) 0x0000表示OFF(False)

6

0x06

写入单个寄存器

只能操作1个寄存器(2字节)

15

0x0F

写入多个线圈

每个字节只能存储一个线圈的值

16

0x10

写入多个寄存器

操作的基本单位是字节

3、常用功能码及名词解释
线圈(Coils)

线圈在Modbus协议中可以类比为布尔类型的变量。每个线圈代表一个单一的二进制位,通常用于控制或指示某个功能的开/关状态。例如,在编程中,你可能会用一个布尔变量来控制一个循环是否继续执行或判断一个条件是否满足,类似地,在Modbus中,线圈可以用来控制一个电机的启停或检测某个开关是否被激活。

寄存器(Registers)

寄存器则可以类比为程序中的整数变量。在Modbus中,寄存器是16位的,这意味着它可以存储从0到65535的整数值。寄存器根据其用途可分为保持寄存器和输入寄存器:

  • 保持寄存器(Holding Registers):这些寄存器可以读写,类似于普通的变量。它们可用于保存可更改的设置或中间计算结果。
  • 输入寄存器(Input Registers):这些寄存器仅供读取,类似于常量或只读变量。它们常用于保存从设备如传感器获取的不可更改数据。
4、常用数据类型

英文描述

简易表示

转换过程

目标顺序

中文描述

go类型

占用字节

字节序

字节交换

Signed

int16

-

有符号整数

int16

2

-

-

Unsigned

uint16

-

无符号整数

uint16

2

-

-

Float little-endian byte swap

float32CDAB

ABCD->DCBA->CDAB

CDAB

浮点数

float32

4

小端

Float big-endian

float32ABCD

ABCD

ABCD

浮点数

float32

4

大端

×

Float little-endian

float32DCBA

ABCD->DCBA

DCBA

浮点数

float32

4

小端

×

Float big-endian byte swap

float32BADC

ABCD->BADC

BADC

浮点数

float32

4

大端

32-bit Signed big-endian byte swap

int32BADC

ABCD->BADC

BADC

有符号整数

int32

4

大端

32-bit Unsigned big-endian

uint32ABCD

ABCD

ABCD

无符号整数

uint32

4

大端

×

32-bit Unsigned little-endian byte swap

uint32CDAB

ABCD->DCBA->

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ljklxlj

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值