检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
操作场景 开发应用驱动集成ModuleSDK进行OT数采。(此示例以采集OPCUA为示例) 在节点部署集成了ModuleSDK应用驱动。 配置好数据源模板(可自定义)。 在平台进行数据源配置,以及点位配置,下发。 集成ModuleSDK应用驱动对平台下发的配置进行处理。 通过下发
先设置“工业子系统数”再“绑定资源包”。 绑定工业资源包选择“工业子系统采集服务”,请您根据需要选择绑定的资源包,并单击确认。 在“节点概览”页可以看到“工业子系统数”以及“绑定的资源包”信息。 父主题: 集成ModuleSDK进行工业子系统接入
OT应用:数据处理类型的应用,实现了总线回调接口,IoT边缘云服务为OT应用提供总线对接能力、设备反向控制(命令)能力。 驱动应用:协议转换类型的应用,可将使用自定义协议的设备接入边缘计算。 IT应用:实现工业子系统接入的应用,实现了对子系统配置同步、反向调用接口、以及数据采集能力。
IoT边缘云服务,专业版和基础版大于1-1-22版本的EdgeHub,不再支持集成Java SDK小于2.1.2版本的应用、不再支持集成C SDK编译日期小于2021-07-07 14:32:56版本的应用,专业版不受影响。 父主题: Module-SDK
printf("process ended.\n"); return EDGE_SUCCESS; } /* * 监控APP,检视设备上报的数据,并对设备进行相应的控制 */ void monitor_app() { // 禁用缓冲区 setvbuf(stdout
基于ModuleSDK开发应用实现数据处理或自定义驱动时,分为开发和使用两个部分。 开发操作 开发说明 应用的开发 利用客户端(AppClient、DriverClient、ItClient、DcDriver)进行自定义的业务处理 应用的使用 将应用打包上传至云,部署到节点。连接子设备查看应用工作。
方案概述 基于ModuleSDK开发应用实现数据处理或自定义驱动时,分为开发和使用两个部分。 开发操作 开发说明 App应用的开发 利用DcClient进行自定义的业务处理 App应用的使用 将应用打包上传至云,部署到节点,连接子设备查看应用工作状态 父主题: 开发指导
会根据input_name订阅Topic(比如/modules/user_monitor_app/messages/inputs/input,这里user_monitor_app是SDK应用对应的模块id,最后的“input“就是Demo代码里的input_name),这个函数会
ModuleSDK中,客户端类ItClient提供多个方法供客户开发应用时使用,使用时可参考每个函数的功能定义。 表1 ItClient方法说明 接口 说明 createFromEnv 根据环境变量创建客户端,相关配置参数从环境变量获取。 syncConfigs 从云端同步集成应用的配置。 confirmConfigs
操作场景 使用ModuleSDK开发插件应用,接入其他协议设备(如HTTP请求数据),将其他协议的数据转化为MQTT协议JSON数据上报到IoTDA。 父主题: 集成ModuleSDK进行协议转换
COPY MyCApp/MyCApp $docker_path # 将依赖库和配置文件放到对应目录下,确保编译的时候不会出错 COPY MyCApp/lib /usr/lib COPY MyCApp/conf $docker_path/conf COPY MyCApp/start.sh
准备数据源 在部署数采应用之前需要先准备数据源,数据源可以是Modbus Server的对应服务器,也可以是类似Modbus Slave的模拟器网关,此处以Modbus Slave模拟器举例。 安装Modbus Slave模拟器 下载Modbus Slave模拟器。 安装完毕后,启动Modbus
若制作镜像包以容器化方式部署应用,不支持在一个容器内运行多个集成ModuleSDK的软件进程或者重启集成ModuleSDK的软件进程,会导致鉴权失败等问题。 上传打包的项目。 将jar文件上传到联网的linux机器上,如目录(/home/monitor)中 安装docker。 请确认使用的系统已经安装
#运行文件在/var/IoTEdge/downloaded-job/run下面 java -jar ./monitor-app.jar > monitor_running.log 2>&1 将monitor-app.jar和start.sh一起压缩得到monitor-app.zip。
边云时钟同步 √ √ 远程节点登录 √ √ 边缘应用托管 容器应用部署、升级 √ √ 进程应用部署、升级 √ √ 第三方应用托管、应用状态监控 √ √ 边缘应用集成SDK扩展 √ √ 第三方应用订阅管控 × √ 边缘自治 边缘应用本地执行 √ √ 离线数据自动缓存与自动恢复上报 √
AppClient方法说明 ModuleSDK中,客户端类AppClient提供多个方法供客户开发应用时使用,使用时可参考每个函数的功能定义。 表1 AppClient方法说明 接口 说明 createFromEnv 根据环境变量创建客户端,相关配置参数从环境变量获取。 setBusMessageCallback
操作场景 开发应用集成ModuleSDK进行数据处理。 在节点接入一个电机设备,设备遇到问题上报信息“error”给节点,节点监听到设备的“error”信息,下发命令让设备进行重启。 示例工程为monitor-app。 父主题: 集成ModuleSDK进行数据处理
制作镜像包或插件包 若制作镜像包以容器化方式部署应用,不支持在一个容器内运行多个集成ModuleSDK的软件进程或者重启集成ModuleSDK的软件进程,会导致鉴权失败等问题。 镜像包打包 构建需要打包的项目 构建项目,此处示例,构建好的文件存放在目录 /home/ModuleSDK-Demo
、虚机)。 应用 基础版和专业版上运行的进程和容器应用,每个应用对应一个进程或容器。 应用版本 确定了软件包以及编排包的应用,如MySQL 5.7。 模块 将应用的某个版本部署到基础版/专业版上运行的实例。 模块影子 存储应用配置的JSON文档,通过云边协同同步到应用实例。 数据流转
private AppClient appClient; publicMonitorApp() throws GeneraException { appClient = AppClient.createFromEnv(); } 定义并创建AppClient, AppClient.c