WebApi与点位的读写
当配置号http服务后,即可通过WebApi与LECPServer进行通讯了。
其中通讯命令有4组,分别是
- plc_read_node 读单个节点
- plc_read_nodes 读多个节点
- plc_write_node 写单个节点
- plc_write_nodes 写多个节点
下面是每个接口的详细说明
plc_read_node 读单个节点
基本信息
- 接口状态:正常
- 接口URL:http://xxxxx:xxx
- 请求方式:POST
- Content-Type:application/json
参数说明
| 名称 | 类型 | 说明 |
|---|---|---|
| action | string | 命令字 plc_read_node |
| node | string | 节点名称,以 NODE.[dev].[node_name] 形式呈现,如 NODE.MODBUS.C00 |
返回值说明
| 名称 | 类型 | 说明 |
|---|---|---|
| errcode | int | 异常编号 如果成功,则返回 0 |
| errmsg | string | 异常信息,如果成功,则返回 "" |
| rtval | object array | 以数组方式返回该节点的值,数组长度为LECPServer中设置点位读取长度 |
例程
// 下行命令
{
"action": "plc_read_node",
"node": "NODES.MODBUS.C0000"
}
// 返回
{
"errcode": 0,
"errmsg": "",
"rtval": [
true,
true,
false,
false,
false
]
}
plc_read_nodes 读多个节点
基本信息
- 接口状态:正常
- 接口URL:http://xxxxx:xxx
- 请求方式:POST
- Content-Type:application/json
参数说明
| 名称 | 类型 | 说明 |
|---|---|---|
| action | string | 命令字 plc_read_nodes |
| node | string array | 节点名称,以 [ NODE.[dev].[node_name], NODE.[dev].[node_name]] 形式呈现,将需要读取的节点均放到一个数组内,如 [ "NODE.MODBUS.C00", ""NODE.MODBUS.H00""] |
返回值说明
| 名称 | 类型 | 说明 |
|---|---|---|
| errcode | int | 异常编号 如果成功,则返回 0 |
| errmsg | string | 异常信息,如果成功,则返回 "" |
| rtval | object array | 以二维数组方式返回所有节点的值,数组长度为LECPServer中设置点位读取长度 |
例程
// 下行命令
{
"action": "plc_read_nodes",
"node": [
"NODES.MODBUS.C0000",
"NODES.MODBUS.H0000"
]
}
// 返回
{
"errcode": 0,
"errmsg": "",
"rtval": [
true,
true,
false,
false,
false
]
}
plc_write_node 写单个节点
基本信息
- 接口状态:正常
- 接口URL:http://xxxxx:xxx
- 请求方式:POST
- Content-Type:application/json
参数说明
| 名称 | 类型 | 说明 |
|---|---|---|
| action | string | 命令字 plc_write_node |
| node | string | 节点名称,以 NODE.[dev].[node_name] 形式呈现,如 NODE.MODBUS.C00 |
| value | object array | 节点的值,以数组方式表示,程度需要和LECPServer点位设置长度一致 |
返回值说明
| 名称 | 类型 | 说明 |
|---|---|---|
| errcode | int | 异常编号 如果成功,则返回 0 |
| errmsg | string | 异常信息,如果成功,则返回 "" |
例程
// 下行命令
{
"action": "plc_write_node",
"node": "NODES.MODBUS.C0000",
"value": [
true,
true,
false,
false,
false
]
}
// 返回
{
"errcode": 0,
"errmsg": ""
}
plc_write_nodes 写多个节点
基本信息
- 接口状态:正常
- 接口URL:http://xxxxx:xxx
- 请求方式:POST
- Content-Type:application/json
参数说明
| 名称 | 类型 | 说明 |
|---|---|---|
| action | string | 命令字 plc_write_nodes |
| node | string array | 节点名称,以 [ NODE.[dev].[node_name], NODE.[dev].[node_name]] 形式呈现,将需要读取的节点均放到一个数组内,如 [ "NODE.MODBUS.C00", ""NODE.MODBUS.H00""] |
| value | object array | 节点的值,以二维数组方式表示,如 [[v1-1,v1-2,v1-3,v1-4], [v2-1,v2-2,v2-3,v2,4]],每个子数组长度需要和LECPServer点位长度设置一致 |
返回值说明
| 名称 | 类型 | 说明 |
|---|---|---|
| errcode | int | 异常编号 如果成功,则返回 0 |
| errmsg | string | 异常信息,如果成功,则返回 "" |
例程
// 下行命令
{
"action": "plc_write_nodes",
"node": [
"NODES.MODBUS.C0000",
"NODES.MODBUS.H0000"
],
"value": [
[
true,
true,
false,
false,
false
],
[
99,
99,
99,
99,
99
]
]
}
// 返回
{
"errcode": 0,
"errmsg": ""
}