Modbus协议中定义的四种类型的地址空间分别对应不同的数据类型和功能,各自使用不同的功能码来访问。以下是这四种类型的简要说明以及它们各自的功能码:
### 1. 线圈(Coils)
- **描述**:线圈是可读写的二进制值(0或1),通常用来表示开/关状态、启动/停止命令等。
- **功能码**:
- 读取线圈状态:功能码01(Read Coils)
- 写单个线圈:功能码05(Write Single Coil)
- 写多个线圈:功能码15(Write Multiple Coils)
### 2. 离散输入(Discrete Inputs)
- **描述**:离散输入是只读的二进制值,常用于表示传感器状态(如开关状态)。
- **功能码**:
- 读取离散输入状态:功能码02(Read Discrete Inputs)
### 3. 输入寄存器(Input Registers)
- **描述**:输入寄存器是只读的16位寄存器,通常用于存储模拟信号的值,如温度、压力或者其他测量值。
- **功能码**:
- 读取输入寄存器:功能码04(Read Input Registers)
### 4. 保持寄存器(Holding Registers)
- **描述**:保持寄存器是可读写的16位寄存器,可以用来存储和调整设备参数,或者作为与设备交换控制信息的缓冲区。
- **功能码**:
- 读取保持寄存器:功能码03(Read Holding Registers)
- 写单个保持寄存器:功能码06(Write Single Register)
- 写多个保持寄存器:功能码16(Write Multiple Registers)
这些地址空间和功能码是Modbus协议核心部分,使得Modbus能够广泛应用于各种工业设备和系统中,支持各种不同的数据交换需求。