300 lines
6.5 KiB
Markdown
300 lines
6.5 KiB
Markdown
# Modbus配置接口文档
|
||
|
||
本文档描述了VWED系统中Modbus配置模块的API接口,包括Modbus设备配置的添加、删除、修改、查询等功能。
|
||
|
||
## 1. 新增Modbus配置
|
||
|
||
### 接口描述
|
||
添加新的Modbus设备配置信息。
|
||
|
||
### 请求方式
|
||
- **HTTP方法**: POST
|
||
- **接口路径**: `/api/vwed-modbus-config/add`
|
||
|
||
### 请求参数
|
||
|
||
| 参数名 | 类型 | 必填 | 描述 |
|
||
|-------|------|-----|------|
|
||
| name | String | 是 | 配置名称 |
|
||
| ip | String | 是 | 设备IP地址 |
|
||
| port | Integer | 是 | 通信端口号 |
|
||
| slave_id | Integer | 是 | 从站ID |
|
||
| address_type | String | 是 | 地址类型("0X"-线圈寄存器, "1X"-离散输入寄存器, "3X"-输入寄存器, "4X"-保持寄存器) |
|
||
| address_number | Integer | 是 | 地址编号 |
|
||
| task_id | String | 否 | 关联的任务ID |
|
||
| target_value | Integer | 否 | 目标值 |
|
||
| reset_after_trigger | Boolean | 否 | 触发后是否重置,默认为false |
|
||
| reset_signal_address | Integer | 否 | 重置信号地址 |
|
||
| reset_value | Integer | 否 | 重置值 |
|
||
| remark | String | 否 | 备注信息 |
|
||
| tenant_id | String | 否 | 租户ID |
|
||
|
||
### 请求示例
|
||
|
||
```json
|
||
{
|
||
"name": "测试Modbus配置",
|
||
"ip": "192.168.1.100",
|
||
"port": 502,
|
||
"slave_id": 1,
|
||
"address_type": "4X",
|
||
"address_number": 1000,
|
||
"target_value": 1,
|
||
"remark": "设备1号控制器"
|
||
}
|
||
```
|
||
|
||
### 响应参数
|
||
|
||
```json
|
||
{
|
||
"code": 200,
|
||
"message": "Modbus配置添加成功",
|
||
"data": {
|
||
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||
"name": "测试Modbus配置"
|
||
}
|
||
}
|
||
```
|
||
|
||
## 2. 删除Modbus配置
|
||
|
||
### 接口描述
|
||
删除指定的Modbus配置信息(软删除)。
|
||
|
||
### 请求方式
|
||
- **HTTP方法**: DELETE
|
||
- **接口路径**: `/api/vwed-modbus-config/{config_id}`
|
||
|
||
### 请求参数
|
||
|
||
| 参数名 | 类型 | 必填 | 描述 |
|
||
|-------|------|-----|------|
|
||
| config_id | String | 是 | 配置ID (URL路径参数) |
|
||
|
||
### 响应参数
|
||
|
||
```json
|
||
{
|
||
"code": 200,
|
||
"message": "Modbus配置删除成功",
|
||
"data": null
|
||
}
|
||
```
|
||
|
||
## 3. 修改Modbus配置
|
||
|
||
### 接口描述
|
||
修改已有的Modbus配置信息。
|
||
|
||
### 请求方式
|
||
- **HTTP方法**: PUT
|
||
- **接口路径**: `/api/vwed-modbus-config/{config_id}`
|
||
|
||
### 请求参数
|
||
|
||
| 参数名 | 类型 | 必填 | 描述 |
|
||
|-------|------|-----|------|
|
||
| config_id | String | 是 | 配置ID (URL路径参数) |
|
||
| name | String | 否 | 配置名称 |
|
||
| ip | String | 否 | 设备IP地址 |
|
||
| port | Integer | 否 | 通信端口号 |
|
||
| slave_id | Integer | 否 | 从站ID |
|
||
| address_type | String | 否 | 地址类型 |
|
||
| address_number | Integer | 否 | 地址编号 |
|
||
| task_id | String | 否 | 关联的任务ID |
|
||
| target_value | Integer | 否 | 目标值 |
|
||
| remark | String | 否 | 备注信息 |
|
||
|
||
### 请求示例
|
||
|
||
```json
|
||
{
|
||
"name": "更新后的配置名称",
|
||
"ip": "192.168.1.101",
|
||
"port": 503,
|
||
"remark": "已更新的备注信息"
|
||
}
|
||
```
|
||
|
||
### 响应参数
|
||
|
||
```json
|
||
{
|
||
"code": 200,
|
||
"message": "Modbus配置更新成功",
|
||
"data": {
|
||
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
|
||
}
|
||
}
|
||
```
|
||
|
||
## 4. 获取Modbus配置详情
|
||
|
||
### 接口描述
|
||
获取指定Modbus配置的详细信息。
|
||
|
||
### 请求方式
|
||
- **HTTP方法**: GET
|
||
- **接口路径**: `/api/vwed-modbus-config/{config_id}`
|
||
|
||
### 请求参数
|
||
|
||
| 参数名 | 类型 | 必填 | 描述 |
|
||
|-------|------|-----|------|
|
||
| config_id | String | 是 | 配置ID (URL路径参数) |
|
||
|
||
### 响应参数
|
||
|
||
```json
|
||
{
|
||
"code": 200,
|
||
"message": "获取Modbus配置详情成功",
|
||
"data": {
|
||
"name": "测试Modbus配置",
|
||
"ip": "192.168.1.100",
|
||
"port": 502,
|
||
"slave_id": 1,
|
||
"address_type": "4X",
|
||
"address_number": 1000,
|
||
"task_id": "b1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||
"target_value": 1,
|
||
"remark": "设备1号控制器"
|
||
}
|
||
}
|
||
```
|
||
|
||
## 5. 获取Modbus配置列表
|
||
|
||
### 接口描述
|
||
获取系统中所有Modbus配置的列表信息,支持分页查询和条件筛选。
|
||
|
||
### 请求方式
|
||
- **HTTP方法**: GET
|
||
- **接口路径**: `/api/vwed-modbus-config/list`
|
||
|
||
### 请求参数
|
||
|
||
| 参数名 | 类型 | 必填 | 描述 |
|
||
|-------|------|-----|------|
|
||
| page | Integer | 否 | 页码,默认为1 |
|
||
| size | Integer | 否 | 每页记录数,默认为10 |
|
||
| name | String | 否 | 配置名称,用于筛选 |
|
||
| ip | String | 否 | 设备IP地址,用于筛选 |
|
||
|
||
### 响应参数
|
||
|
||
```json
|
||
{
|
||
"code": 200,
|
||
"message": "获取Modbus配置列表成功",
|
||
"data": {
|
||
"records": [
|
||
{
|
||
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||
"name": "测试Modbus配置1",
|
||
"ip": "192.168.1.100",
|
||
"port": 502,
|
||
"slave_id": 1,
|
||
"address_type": "4X",
|
||
"address_number": 1000,
|
||
"task_id": "b1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||
"task_name":"20",
|
||
"target_value": 1,
|
||
"remark": "设备1号控制器",
|
||
"status": 1,
|
||
"create_date": "2023-05-10 14:30:22"
|
||
},
|
||
{
|
||
"id": "b2c3d4e5-f6a7-8901-bcde-f123456789ab",
|
||
"name": "测试Modbus配置2",
|
||
"ip": "192.168.1.101",
|
||
"port": 503,
|
||
"slave_id": 2,
|
||
"address_type": "3X",
|
||
"address_number": 2000,
|
||
"task_id": "c1b2c3d4-e5f6-7890-abcd-ef1234567890",
|
||
"task_name":"20",
|
||
"target_value": 0,
|
||
"remark": "设备2号控制器",
|
||
"status": 1,
|
||
"create_date": "2023-05-11 10:45:33"
|
||
}
|
||
],
|
||
"total": 2,
|
||
"size": 10,
|
||
"current": 1
|
||
}
|
||
}
|
||
```
|
||
|
||
## 6. 测试Modbus连接
|
||
|
||
### 接口描述
|
||
测试与Modbus设备的连接是否正常。
|
||
|
||
### 请求方式
|
||
- **HTTP方法**: POST
|
||
- **接口路径**: `/api/vwed-modbus-config/test-connection`
|
||
|
||
### 请求参数
|
||
|
||
| 参数名 | 类型 | 必填 | 描述 |
|
||
|-------|------|-----|------|
|
||
| ip | String | 是 | 设备IP地址 |
|
||
| port | Integer | 是 | 通信端口号 |
|
||
| slave_id | Integer | 是 | 从站ID |
|
||
| address_type | String | 否 | 地址类型 |
|
||
| address_number | Integer | 否 | 地址编号 |
|
||
|
||
### 请求示例
|
||
|
||
```json
|
||
{
|
||
"ip": "192.168.1.100",
|
||
"port": 502,
|
||
"slave_id": 1,
|
||
"address_type": "4X",
|
||
"address_number": 1000
|
||
}
|
||
```
|
||
|
||
### 响应参数
|
||
|
||
```json
|
||
{
|
||
"code": 200,
|
||
"message": "Modbus连接测试成功",
|
||
"data": {
|
||
"connected": true,
|
||
"current_value": 12345
|
||
}
|
||
}
|
||
```
|
||
|
||
## 数据模型说明
|
||
|
||
### Modbus地址类型
|
||
|
||
| 类型值 | 说明 |
|
||
|-------|------|
|
||
| 0X | 线圈寄存器 |
|
||
| 1X | 离散输入寄存器 |
|
||
| 3X | 输入寄存器 |
|
||
| 4X | 保持寄存器 |
|
||
|
||
### 状态码说明
|
||
|
||
| 状态码 | 说明 |
|
||
|-------|------|
|
||
| 200 | 操作成功 |
|
||
| 400 | 请求参数错误 |
|
||
| 404 | 未找到指定资源 |
|
||
| 500 | 服务器内部错误 |
|
||
|
||
### 配置状态说明
|
||
|
||
| 状态值 | 说明 |
|
||
|-------|------|
|
||
| 1 | 启用 |
|
||
| 0 | 禁用 | |