
# 接入案例
当前以设施云自研的Modbus数采插件为例来配置设备点位通过数采方式接入，如果是伙伴自己开发的数采插件，流程也是类似，只是数采模板和对应应用的镜像地址这些容器配置会不同。
#### 安装边缘网关
步骤一：注册网关设备
首先获取设施云链接及账号密码，登录设施云界面，打开【设备管理】 -\> 【设备】，单击"注册设备"，各参数配置如下：
设备类型：网关设备；
自定义目录信息：打开；测试环境可以不打开，打开的话确保有外挂磁盘挂载到/mnt/external_storage0这个目录下。
数据存储根目录：/mnt/external_storage0/IoTEdge/db/；
配置根目录：/mnt/external_storage0/IoTEdge/config/；
日志根目录：/mnt/external_storage0/IoTEdge/log/；
网关名称：据实填写，建议按照安装位置简写；
网关ID：参考网关名称；
所属空间：【空间管理】-【空间管理】中配置的空间，其余按照默认填写，单击"确定"；
其余参数默认即可。
图1设备注册   
![](https://support.huaweicloud.com/devg-ocsmartcampus/zh-cn_image_0000002463169238.png "点击放大")
步骤二：获取安装命令
打开【边缘管理】-【边缘设备】，存在网关信息；
图2边缘设备   
![](https://support.huaweicloud.com/devg-ocsmartcampus/zh-cn_image_0000002463328834.png "点击放大")
在对应网关设备行，单击右侧"安装"；
弹出新页面"选择架构"下拉，根据网关CPU架构类型，选择"x86_64"或"arm64"，安装目录根据磁盘使用情况，通常使用默认值"/opt/IoTEdge"即可，部分厂商(如：微能)网关，需使用扩展闪存磁盘目录：/mnt/external_storage0/IoTEdge
图3安装命令   
![](https://support.huaweicloud.com/devg-ocsmartcampus/zh-cn_image_0000002463169182.png "点击放大")
**3、执行安装指令**
**步骤一：**网关是否与华为云网络互通
在执行安装前，安装xshell/mobxterm软件，通过软件登录到网关后台，在终端命令行验证下网关是否与华为云网络互通。
网关后台命令行输入：ping ioe-installer-cn-north-4.obs.cn-north-4.myhuaweicloud.com，若网络能通，则执行**步骤二**；
图4网络验证   
![](https://support.huaweicloud.com/devg-ocsmartcampus/zh-cn_image_0000002496368213.png "点击放大")
**步骤二：**网关执行安装命令
切换root权限：命令行输入su，回车，输入root密码，回车；
将**第二点中得到的安装命令**复制到终端命令行后，回车；
图5安装命令   
![](https://support.huaweicloud.com/devg-ocsmartcampus/zh-cn_image_0000002463328778.png "点击放大")
图6安装检查   
![](https://support.huaweicloud.com/devg-ocsmartcampus/zh-cn_image_0000002496368169.png "点击放大")
安装过程中可以使用
$ docker ps
查看agent容器运行状态；
图7查看容器运行状态   
![](https://support.huaweicloud.com/devg-ocsmartcampus/zh-cn_image_0000002463328866.png "点击放大")
查看网关的状态是在线说明网关就安装成功了；
图8查看网关状态   
![](https://support.huaweicloud.com/devg-ocsmartcampus/zh-cn_image_0000002463328758.png "点击放大")
#### 添加数采模板
1. 保存以下模板保存到本地，文件名为Modbus-Tcp.json **数采模板内容：**
   ```
   {
       "tpl_id": "iotfm_general_modbustcp_V3",
       "name": "智能设施云平台自研ModbusTcp数采模板V3",
       "description": "智能设施云平台自研ModbusTcp数采模板V3",
       "datasource_meta": {
           "config_tabs": [
               {
                   "key": "connection_info",
                   "name": "连接信息",
                   "description": "连接信息",
                   "type": "object",
                   "quantity": 10,
                   "config_items": [
                       {
                           "key": "connection_ext_info",
                           "name": "连接扩展信息",
                           "description": "连接扩展信息，协议应用上线后模板增删字段需重建数采连接，新增扩展信息容纳后续新增的字段。",
                           "data_type": "string",
                           "required": false,
                           "crypted": false,
                           "max_length": 65535,
                           "example": "{\"xxx\": \"xxx\"}"
                       }
                   ]
               },
               {
                   "key": "array_info",
                   "name": "连接信息",
                   "description": "连接信息",
                   "type": "array",
                   "quantity": 10,
                   "config_items": [
                       {
                           "key": "endpoint",
                           "name": "服务端点信息",
                           "description": "服务端点信息，为json字符串数组格式",
                           "data_type": "string",
                           "required": true,
                           "crypted": false,
                           "max_length": 128,
                           "example": "{\"endpoint_id\":\"1\", \"endpoint_url\": \"127.0.0.1:123\"}"
                       }
                   ]
               }
           ],
           "default_values": {
               "drivername": "ModbusTcp"
           }
       },
       "point_meta": {
           "data_type_enums": [
               "bool",
               "short",
               "ushort",
               "int",
               "uint",
               "long",
               "ulong",
               "float",
               "double"
           ],
           "config_items": [
               {
                   "key": "endpoint_id",
                   "name": "终端节点ID",
                   "description": "Modbus终端节点ID，来源于数采连接配置，如配置失败，则将被丢弃。",
                   "data_type": "int",
                   "required": true,
                   "crypted": false,
                   "max_length": 256,
                   "example": 1
               },
               {
                   "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
               },
               {
                   "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
               },
               {
                   "key": "point_ext_info",
                   "name": "点位扩展信息",
                   "description": "点位扩展信息，协议应用上线后模板增删字段需全量调整点位，新增扩展信息容纳后续新增的点位字段。",
                   "data_type": "string",
                   "required": false,
                   "crypted": false,
                   "max_length": 65535,
                   "example": "{\"field_a\": \"valueA\", \"field_b\": 123}"
               },
               {
                   "crypted": false,
                   "data_type": "string",
                   "description": "该物理点位枚举值和物模型点位枚举值的映射关系",
                   "example": "物理点位枚举值1:物模型点位枚举值1|物理点位枚举值2:物模型点位枚举值2",
                   "key": "enum_map",
                   "max_length": 256,
                   "name": "枚举值映射表",
                   "required": false
               }
           ]
       }
   }
   ```
   
2. 导入上面文件到数采模板 ![](https://support.huaweicloud.com/devg-ocsmartcampus/zh-cn_image_0000002463169122.png "点击放大")
   ![](https://support.huaweicloud.com/devg-ocsmartcampus/zh-cn_image_0000002463169158.png "点击放大")
   ![](https://support.huaweicloud.com/devg-ocsmartcampus/zh-cn_image_0000002496368261.png "点击放大")
   **添加数采应用**
   ![](https://support.huaweicloud.com/devg-ocsmartcampus/zh-cn_image_0000002463169210.png "点击放大")
   ![](https://support.huaweicloud.com/devg-ocsmartcampus/zh-cn_image_0000002496368293.png "点击放大")
   ![](https://support.huaweicloud.com/devg-ocsmartcampus/zh-cn_image_0000002496368245.png "点击放大")
   
 
#### 添加应用版本
**须知：**该步骤将会为上述业务应用添加一个可用版本
【边缘管理】-\>【应用管理】-\>【驱动应用】-\>【操作--详情】-\>【添加版本】
![](https://support.huaweicloud.com/devg-ocsmartcampus/zh-cn_image_0000002463328774.png "点击放大")
![](https://support.huaweicloud.com/devg-ocsmartcampus/zh-cn_image_0000002496208181.png "点击放大")
1. 基本配置，容器镜像地址可以使用：swr.cn-north-4.myhuaweicloud.com/huawei-iot-facility/iotfm-edge-app-plugins-modbus-tcp:2025.0113.1944.37 ![](https://support.huaweicloud.com/devg-ocsmartcampus/zh-cn_image_0000002463169166.png "点击放大")
   
2. 配置镜像地址 ![](https://support.huaweicloud.com/devg-ocsmartcampus/zh-cn_image_0000002496368229.png "点击放大")
   
3. 配置容器规格 ![](https://support.huaweicloud.com/devg-ocsmartcampus/zh-cn_image_0000002496208217.png "点击放大")
   
4. 高级配置 ![](https://support.huaweicloud.com/devg-ocsmartcampus/zh-cn_image_0000002496368185.png "点击放大")
   ![](https://support.huaweicloud.com/devg-ocsmartcampus/zh-cn_image_0000002496208205.png "点击放大") ![](https://support.huaweicloud.com/devg-ocsmartcampus/zh-cn_image_0000002463169094.png "点击放大")
   **数据存储**
   ![](https://support.huaweicloud.com/devg-ocsmartcampus/zh-cn_image_0000002496208197.png "点击放大")
   
   | 本地卷名称  |   类型   |                    主机目录                     |                       容器目录                        | 权限 |
   |---|---|---|---|---|
   | config | CONFIG | /config                                     | /opt/iot/iotfm-edge-app-plugins-modbus-tcp/config | 读写 |
   | logs   | LOG    | /tmp/iotfm-edge-app-plugins-modbus-tcp/logs | /opt/iot/iotfm-edge-app-plugins-modbus-tcp/logs   | 读写 |
      
   **外挂** **设备**（不需要配置）
   ![](https://support.huaweicloud.com/devg-ocsmartcampus/zh-cn_image_0000002463328750.png "点击放大")
   
   **健康检查**
   配置参考下面**表1应用存活探针配置说明** 和**表2应用业务探针配置说明**进行配置。
   表1**应用存活探针配置说明** 
   | 配置名称   | 配置内容                                                              |
   |:---|:---|
   | 检查方式   | 执行命令检查                                                            |
   | 执行命令   | sh /opt/iot/iotfm-edge-app-plugins-modbus-tcp/scripts/liveness.sh |
   | 延迟时间   | 90 秒                                                              |
   | 探测超时时间 | 10 秒                                                              |
      
   表2**应用业务探针配置说明** 
   | 配置名称   | 配置内容                                                              |
   |:---|:---|
   | 检查方式   | 执行命令检查                                                            |
   | 执行命令   | sh /opt/iot/iotfm-edge-app-plugins-modbus-tcp/scripts/liveness.sh |
   | 延迟时间   | 60 秒                                                              |
   | 探测超时时间 | 10 秒                                                              |
      
   
5. 端点无需配置 ![](https://support.huaweicloud.com/devg-ocsmartcampus/zh-cn_image_0000002496208149.png "点击放大")
   
6. 部署配置 重启策略：总是重启
   网络类型：端口映射
   ![](https://support.huaweicloud.com/devg-ocsmartcampus/zh-cn_image_0000002463169198.png "点击放大")
   
7. 确认信息，立即发布 ![](https://support.huaweicloud.com/devg-ocsmartcampus/zh-cn_image_0000002496208293.png "点击放大")
   
 
#### 插件部署
部署Modbus应用模块
1. 【边缘管理】-\>【边缘设备】-\> 【网关设备】 -\> 【操作】 -\> 【详情】 -\> 【模块管理】 -\> 【部署应用】 ![](https://support.huaweicloud.com/devg-ocsmartcampus/zh-cn_image_0000002496208153.png "点击放大")
   ![](https://support.huaweicloud.com/devg-ocsmartcampus/zh-cn_image_0000002463328810.png "点击放大")
   
2. 单击确定即开始进行Modbus插件安装，等待安装完成，状态为运行中 ![](https://support.huaweicloud.com/devg-ocsmartcampus/zh-cn_image_0000002463169106.png "点击放大")
   
 
#### 数采配置
1. 创建数采连接 【边缘管理】-\>【数采管理】-\> 【数采配置】 -\> 【连接通道】 -\> 【创建数采连接】
   选择指定网关创建数采连接：
   ![](https://support.huaweicloud.com/devg-ocsmartcampus/zh-cn_image_0000002496208245.png "点击放大")
   创建数采连接
   ![](https://support.huaweicloud.com/devg-ocsmartcampus/zh-cn_image_0000002496208237.png "点击放大")
   **服务短点信息配置：**按照指定格式即可
   如：{"id":"1","url":"192.168.1.88:502"}
   
2. 导入点位 根据点位表模板，梳理完成点位表信息内容进行导入
   ![](https://support.huaweicloud.com/devg-ocsmartcampus/zh-cn_image_0000002463328826.png "点击放大")
   
3. 下发配置，当单击下发配置后，连接状态为已连接，同步状态为已同步，即可完成数据采集 ![](https://support.huaweicloud.com/devg-ocsmartcampus/zh-cn_image_0000002496208277.png "点击放大")
   
 
#### 查看采集结果
1. 查看机电设备详情 【边缘管理】-\>【机电设备】
   找到对应数采的机电设备，单击设备详情：
   图9机电设备详情   
   ![](https://support.huaweicloud.com/devg-ocsmartcampus/zh-cn_image_0000002463328886.png "点击放大") 
2. 查看机电设备点位，跳转到机电设备详情页面，单击属性管理，就可以查看到当前这个机电设备点位上报值和上报时间，如果数采配置的点位都能看到有值，就说明该设备点位采集成功了，如下图所示：
   图10机电设备属性管理   
   ![](https://support.huaweicloud.com/devg-ocsmartcampus/zh-cn_image_0000002463328790.png "点击放大") 
 
