
# OT数采配置
#### 添加数采模板
数采模板是描述数采配置项的元数据，数采配置包括数据源配置元数据、点位采集配置元数据。当用户添加自定义数采应用时，可通过添加自定义数采模板完成元数据的定义。
#### 应用数据源模板导入
数据源模板描述了数据源配置项的元数据，用户在配置数据源之前，需要先导入数据源模板。IoT边缘服务当前已经预置通用数据源模板，可直接使用，系统也支持用户自定义导入模板。以下为用户添加自定义模板的详细流程及关键配置信息解释。
1. 访问[IoT边缘](https://www.huaweicloud.com/product/iotedge.html)，单击"管理控制台"进入IoT边缘控制台。
2. 在左侧导航栏选择"边缘节点 \> 应用管理"进入页面，
3. 选择" 驱动应用 \> 数采模板管理 \> 添加数采模板"。 
   ![](https://support.huaweicloud.com/bestpractice-iotedge/figure/zh-cn_image_0000001488720317.png "点击放大")
   
   
4. 添加文件，单击"确认"。 
   ![](https://support.huaweicloud.com/bestpractice-iotedge/figure/zh-cn_image_0000001423160334.png "点击放大")
   - 本地准备一份数采模板文件，文件内容合规。
   
   - IoT边缘云平台当前已经预置多个业界主流通用数采模板，可以通过导入通用模板后使用。
   
   - 支持用户自定义导入模板，导入模板后缀.json，满足json格式规范，样例及字段解释如下：
     ![](https://support.huaweicloud.com/bestpractice-iotedge/public_sys-resources/note_3.0-zh-cn.png)
     用户自定义模板需要与示例模板格式保持一致，如果在 datasource_meta 的 config_tabs 中存在 type 为 array 的数据项，则该数据项的 config_items 必须包含 key 为 slave_id 的元素。
     示例
     ```
     {
     "tpl_id": "sys_general_modbus_tcp",
     "name": "ModbusTcp通用数采模板",
     "description": "ModbusTcp通用数采模板",
     "datasource_meta": {
     "config_tabs": [{
     "key": "connection_info",
     "name": "连接信息",
     "description": "连接信息",
     "type": "object",
     "config_items": [{
     "key": "endpoint",
     "name": "服务端点",
     "description": "服务完整URL",
     "data_type": "string",
     "required": true,
     "crypted": false,
     "max_length": 128,
     "example": "127.0.0.1:502"
     }]
     },
     {
     "key": "array_info",
     "name": "组配置信息",
     "description": "组配置信息",
     "type": "array",
     "quantity": 20,
     "config_items": [{
     "key": "slave_id",
     "name": "从站号",
     "description": "从站号",
     "data_type": "int",
     "required": false,
     "crypted": false,
     "max_length": 256,
     "example": 1
     },
     {
     "key": "coil_status_valid_address",
     "name": "线圈有效地址范围",
     "description": "线圈有效地址范围",
     "data_type": "string",
     "required": false,
     "crypted": false,
     "max_length": 65535,
     "example": "0x0-0x10,0x1a-0x2f"
     },
     {
     "key": "input_status_valid_address",
     "name": "输入状态有效地址范围",
     "description": "输入状态有效地址范围",
     "data_type": "string",
     "required": false,
     "crypted": false,
     "max_length": 65535,
     "example": "0x0-0x10,0x1a-0x2f"
     },
     {
     "key": "holding_registers_valid_address",
     "name": "保持寄存器有效地址范围",
     "description": "保持寄存器有效地址范围",
     "data_type": "string",
     "required": false,
     "crypted": false,
     "max_length": 65535,
     "example": "0x0-0x10,0x1a-0x2f"
     },
     {
     "key": "input_registers_valid_address",
     "name": "输入寄存器有效地址范围",
     "description": "输入寄存器有效地址范围",
     "data_type": "string",
     "required": false,
     "crypted": false,
     "max_length": 65535,
     "example": "0x0-0x10,0x1a-0x2f"
     },
     {
     "key": "byte_swap",
     "name": "寄存器高低位交换",
     "description": "寄存器高低位交换",
     "data_type": "bool",
     "required": false,
     "crypted": false,
     "max_length": 256,
     "default": false,
     "example": true
     },
     {
     "key": "register_swap",
     "name": "寄存器顺序交换",
     "description": "寄存器顺序交换",
     "data_type": "bool",
     "required": false,
     "crypted": false,
     "max_length": 256,
     "default": false,
     "example": true
     }
     ]
     }
     ],
     "default_values": {
     "drivername": "ModbusTcp"
     }
     },
     "point_meta": {
     "data_type_enums": [
     "bool",
     "short",
     "ushort",
     "int",
     "uint",
     "long",
     "ulong",
     "float",
     "double"
     ],
     "config_items": [{
     "key": "slave_id",
     "name": "从站号",
     "description": "modbus传感器从站号",
     "data_type": "int",
     "required": true,
     "crypted": false,
     "max_length": 256,
     "example": 1
     },
     {
     "key": "register_type",
     "name": "寄存器类型",
     "description": "寄存器类型",
     "data_type": "string",
     "required": true,
     "crypted": false,
     "max_length": 256,
     "enum_value": "Coil_Status|Input_Status|Holding_Registers|Input_Registers",
     "example": "Coil_Status"
     },
     {
     "key": "register_address",
     "name": "起始地址",
     "description": "寄存器起始地址",
     "data_type": "string",
     "required": true,
     "crypted": false,
     "max_length": 256,
     "example": "0x0"
     },
     {
     "key": "cycle",
     "name": "采集周期",
     "description": "点位采集周期",
     "data_type": "int",
     "required": true,
     "crypted": false,
     "max_length": 65535,
     "example": 10000
     }
     ]
     }
     }
     ```
     表1OT数采模板 
     | **key**                                                                                                                            | **类型**                                                                                                                 | **描述**                                                                                                                                                                                                                                                                 |
     |:---|:---|:---|
     | tpl_id                                                                                                                             | String                                                                                                                 | 数采模板标识，租户下唯一 pattern: '\^\[a-zA-Z0-9_-\]\*$' 1-64。 |
     | name                                                                                                                               | String                                                                                                                 | 数据源模板名称，支持中英文 1-64。                                                                                                                                          |
     | description                                                                                                                        | String                                                                                                                 | 数据源模板描述，支持中英文，0-128。                                                                                                                                                                                                                                                   |
     | datasource_meta point_meta | Object Object | 数据源配置元数据 点位采集配置元数据（内可配置data_type_enums用来限制点位数据类型）。                                                                                                             |
        
     表2datasource_meta 
     | **key**        | **类型** | **描述**                 |
     |:---|:---|:---|
     | config_tabs    | Array  | 数据源配置表格列表。             |
     | default_values | Object | 数据源默认的值，通常用于描述默认的驱动协议。 |
        
     表3config_tabs 
     | **key**       | **类型** | **描述**                                                   |
     |:---|:---|:---|
     | key           | String | 数据源配置表格键值，pattern: 'connection_info\|collection_paras'。  |
     | name          | String | 数据源配置表格名称，1-64。                                          |
     | description   | String | 描述，0-255。                                                |
     | config_items  | Array  | 配置项列表。                                                   |
     | type（非必填）     | String | 配置表类型，可为"object"或"array"，默认为"object"，为array"时可传输多组配置项列表。 |
     | quantity（非必填） | Int    | 配置项列表组数量，当配置表类型为"array时有效"。                              |
        
     表4config_items 
     | **key**         | **类型**  | **描述**                                                                                              |
     |:---|:---|:---|
     | key             | String  | 配置项key，1-32。                                                                                        |
     | name            | String  | 默认项名称，1-64。                                                                                         |
     | description     | String  | 配置项描述，0-128。                                                                                        |
     | data_type       | String  | 配置项类型，受限于"data_type_enum"(非必填)，支持short\|ushort\|int\|int64\|uint\|long\|ulong\|float\|double\|bool。 |
     | required        | Boolean | 配置项是否必传项。                                                                                           |
     | crypted         | Boolean | 配置项是否加密。                                                                                            |
     | max_length      | Integer | 当data_type= string时配置有效，校验输入的字符串最大长度。                                                               |
     | example         | String  | 配置项举例，值在界面输入框作为示例灰色显示，0-256。                                                                        |
     | enum_value（非必填） | String  | 配置项枚举量，可生成下拉框，减少手工输入错误。                                                                             |
        
     表5default_values 
     | **key**    | **类型** | **描述**              |
     |:---|:---|:---|
     | drivername | String | 用于描述默认的驱动协议，如OPCUA。 |
        
     
    
   
   
   
#### 创建数采连接
1. 访问[IoT边缘](https://www.huaweicloud.com/product/iotedge.html)，单击"管理控制台"进入IoT边缘控制台。
2. 在左侧导航栏选择"边缘节点 \> 节点管理"，节点名称选择"test_IoT10"进入页面。
3. 在左侧导航栏选择"数采配置 \> 创建数采连接"。 
   ![](https://support.huaweicloud.com/bestpractice-iotedge/figure/zh-cn_image_0000001434626281.png "点击放大")
   
   
4. 填写"数采连接参数"后单击"确认"保存，此时配置仅在云平台存在，未下发到边侧，此时数采连接的"同步状态"为"待同步"。 
   ![](https://support.huaweicloud.com/bestpractice-iotedge/figure/zh-cn_image_0000001473199125.png "点击放大")
   - 通道标识：ModbusTCP。
   
   - 通道名称：ModbusTCP。
   
   - 驱动模块：sys_ot_dc_modbus_tcp。
   
   - 服务端点：模拟器或Modbus服务器网关的ip地址+端口号,中间用":"分隔，如"127.0.0.1:502"（半角）。
   
   - 配置信息：用于配置从站的寄存器地址可用范围与寄存器顺序等信息，共可以添加20组。不填写配置信息代表默认对应从站点位映射地址全部有效，同时对应从站字节序与寄存器顺序默认为大端。 ![](https://support.huaweicloud.com/bestpractice-iotedge/figure/zh-cn_image_0000001529163145.png "点击放大")
     表6配置信息说明 
     | 配置项         | 说明                                                                                                    |
     |:---|:---|
     | 从站号         | 配置项的从站号，范围0-255，需唯一。                                                                                  |
     | 线圈有效地址范围    | 地址量为十六进制，格式"0x"+地址量，起始地址与结束地址用"-"连接，地址范围间用","分隔，范围不可重叠。例如"0x0-0x20,0x2a-0xc5,0xd0-0xff"（半角）。          |
     | 输入状态有效地址范围  | 地址量为十六进制，格式"0x"+地址量，起始地址与结束地址用"-"连接，地址范围间用","分隔，范围不可重叠。例如"0x0-0x20,0x2a-0xc5,0xd0-0xff"（半角）。          |
     | 保持寄存器有效地址范围 | 地址量为十六进制，格式"0x"+地址量，起始地址与结束地址用"-"连接，地址范围间用","分隔，范围不可重叠。例如"0x0-0x20,0x2a-0xc5,0xd0-0xff"（半角）。          |
     | 输入寄存器有效地址范围 | 地址量为十六进制，格式"0x"+地址量，起始地址与结束地址用"-"连接，地址范围间用","分隔，范围不可重叠。例如"0x0-0x20,0x2a-0xc5,0xd0-0xff"（半角）。          |
     | 寄存器高低位交换    | 一个保持寄存器或输入寄存器对应2字节的寄存器空间，配置该项为true则交换对应寄存器内字节顺序。例如"byte1,byte2"交换后顺序为"byte2,byte1"。该项配置仅对32位及以上的数据有效。 |
     | 寄存器顺序交换     | Modbus协议默认为大端，配置该项为true则交换对应寄存器间顺序。例如"r1,r2,r3,r4"交换后顺序为"r4,r3,r2,r1"。该项配置仅对32位及以上的数据有效。              |
        
     ![](https://support.huaweicloud.com/bestpractice-iotedge/public_sys-resources/note_3.0-zh-cn.png)
     服务端点：填写Modbus服务器所在的网关地址，本实验中为[准备数据源处](https://support.huaweicloud.com/bestpractice-iotedge/iotedge_bestpractice_0174.html)的Modbus salve 模拟器。
     寄存器高低位交换、寄存器顺序交换：Modbus协议默认寄存器顺序为大端，高低位交换与顺序交换同时配置为true时，数据部分传输顺序变为小端模式。以64bits的数据底层字节顺序为"0x1,0x2,0x3,0x4,0x5,0x6,0x7,0x8"为例，配置后数据转换结果如[表7]。
     未添加配置信息，默认所有地址范围有效且寄存器顺序为大端模式。可以以从站为单位配置对应有效地址范围与寄存器顺序。
      表7寄存器数据交换配置表 
     | 配置                         | 数据顺序展示                          |
     |:---|:---|
     | 高低位交换false，顺序交换false（原始数据） | 0x1,0x2,0x3,0x4,0x5,0x6,0x7,0x8 |
     | 高低位交换true，顺序交换false        | 0x2,0x1,0x4,0x3,0x6,0x5,0x8,0x7 |
     | 高低位交换false，顺序交换true        | 0x7,0x8,0x5,0x6,0x3,0x4,0x1,0x2 |
     | 高低位交换true，顺序交换true         | 0x8,0x7,0x6,0x5,0x4,0x3,0x2,0x1 |
        
     
    
   
   
 
#### 添加点位映射
将点位上报转换为设备属性上报，将设备属性读写转换为点位读写操作，将设备命令转化为点位写操作。
1. 访问[IoT边缘](https://www.huaweicloud.com/product/iotedge.html)，单击"管理控制台"进入IoT边缘控制台。
2. 在左侧导航栏选择"边缘节点 \> 节点管理"，节点名称选择"test_IoT10"进入页面。
3. 在左侧导航栏选择"数采配置 \> 选择对应的数采连接"。 
   ![](https://support.huaweicloud.com/bestpractice-iotedge/figure/zh-cn_image_0000002656565233.png "点击放大")
   
   
4. 单击"添加点位"在"添加点位映射"弹窗中填写配置信息，如[表8]所示，然后单击"确认"。
   
   ![](https://support.huaweicloud.com/bestpractice-iotedge/figure/zh-cn_image_0000002626325872.png "点击放大")
    表8添加点位映射 
   | 基本信息                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |||
   |:---|---|---|
   | 点位标识   | 点位的唯一标识。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  ||
   | 点位名称   | 按照规范填写。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   ||
   | 设备ID   | 边缘设备页签里添加设备的ID。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           ||
   | 点位数据类型 | 当前支持如下数据类型： int(整型) uint(无符号整型) short(短整型) ushort(无符号短整型) long(长整型) ulong(无符号长整型) bool(布尔类型) float(单精度浮点型) double(双精度浮点型) | 取值范围: -2147483648\~2147483647 0\~4294967295 -32768\~32767 0\~65535 -2147483648\~2147483647 0\~4294967295 true/false -3.4\*10\^38\~+3.4\*10\^38 -1.7\*10\^-308\~1.7\*10\^308 |
   | 设备属性   | 设备属性由物模型中service_id/property_name格式构成。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    ||
   | 启用状态   | 启用点位开关，默认开启。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              ||
   | **采集配置**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |||
   | 从站号    | 点位所属从站号，范围0-255。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          ||
   | 寄存器类型  | 点位对应寄存器类型，枚举字符串值，取值范围如右侧框。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | Coil_Status\|Input_Status\|Holding_Registers\|Input_Registers                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
   | 起始地址   | 点位对应数据起始地址，十六进制，格式："0x"+（地址量）。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | 例如:"0xa3"                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
   | 采集周期   | 点位采集周期，最小200ms，低于200ms则默认为200ms。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | 范围0-65535                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
      
   ![](https://support.huaweicloud.com/bestpractice-iotedge/public_sys-resources/caution_3.0-zh-cn.png)
   1. 不同点位请勿配置同一设备的相同属性。
   2. 同一个设备请勿配置在多个数采连接下。
   
   
5. 单击"下发配置"，把点位配置下发至边缘侧。配置下发成功后启用通道，可以看到通道连接状态变为"已连接"，此时数采连接的"同步状态"为"已同步"。 
   ![](https://support.huaweicloud.com/bestpractice-iotedge/figure/zh-cn_image_0000001423253206.png "点击放大")
   ![](https://support.huaweicloud.com/bestpractice-iotedge/public_sys-resources/note_3.0-zh-cn.png)
   - 修改点位信息后需重新单击下发配置，配置才会生效。
   
   - 模块的运行状态由启用状态决定，当启用了数采连接后，模块会显示为运行中。
    
   
   
 
#### 附录：批量导入/导出点位映射
**批量导入点位映射**
1. 在左侧导航栏选择"边缘节点 \> 节点管理"，节点名称选择"test_IoT10"进入页面。
2. 在左侧导航栏选择"数采配置"-\>对应的连接通道。
3. 单击"导入点位"选择"批量添加"，单击"下载模板文件"，打开"模板文件"内容填写。
   
   ![](https://support.huaweicloud.com/bestpractice-iotedge/figure/zh-cn_image_0000001473537173.png "点击放大")
   
   
4. 选择"添加文件"导入[步骤3]下载的文件后，单击"确认"完成批量导入点位映射。
**批量导出点位映射**
1. 在左侧导航栏选择"边缘节点 \> 节点管理"，节点名称选择"test_IoT10"进入页面。
2. 在左侧导航栏选择"应用模块 \> 数采配置 \> 对应的连接通道"。
3. 单击"导出点位"完成批量导出点位。 
   ![](https://support.huaweicloud.com/bestpractice-iotedge/figure/zh-cn_image_0000001933776342.png "点击放大")
   
   
 
