目录

鸿枢智维:基于 OpenHarmony 的工业多端协同作业系统

参赛作品「竟无止境」队 —— 中国研究生操作系统开源创新大赛 · OpenHarmony 工业多端协同作业系统赛道。

项目简介

鸿枢智维面向钢铁制造、特高压电力等高安全要求的工业现场,构建了一套基于 OpenHarmony 的智能多端协同作业系统,打通”设备异常 → 巡检上报 → AI 诊断 → 专家会诊 → 结果回传 → 安全审计”的完整业务闭环。系统以 ArkTS/ArkUI + Native NAPI 为技术底座,围绕多端协同作业、智能体辅助决策、可信接入与生产安全管控三大能力构建,并在此基础上实现了动态信任评分、HMAC-SHA256 真实签名、AI 安全网关、一次性高危指令令牌、防篡改哈希链审计等一整套安全机制。

应用场景

  • 工业产线现场巡检:巡检人员携带移动终端靠近设备时自动同步运行日志。
  • 故障诊断与远程会诊:疑难故障现场画面与设备状态流转至专家端,支持云端 AI 增强诊断与人工会诊结合。
  • 生产安全管控:对检修手册、设备工艺等高密级数据的访问进行分级管控,拦截非法设备接入与越权数据调阅。

主要功能

  1. 多端协同作业与流转:巡检端、故障设备端、专家端三类角色的工单同步、运行日志秒级同步、故障图片上报与远程会诊流转。
  2. 智能体辅助决策:支持文本描述、故障图片、设备状态码的多输入诊断;端侧轻量分类模型(本地训练,见 tests/edge_ai_model/)与云端 Qwen 增强诊断相结合,按设备型号与故障等级推送标准化处置建议(SOP)。
  3. 可信接入与生产安全管控:
    • 设备白名单可在线增删,每台设备拥有独立生成的 HMAC 密钥(不再是硬编码单设备)。
    • 设备动态信任评分状态机(0–100 分,TRUSTED/LIMITED/RESTRICTED/BLOCKED 四态),认证失败、非法签名、重放、越权访问自动降级。
    • 挑战应答签名、会话令牌、指令令牌、跨设备协议报文签名统一采用 HMAC-SHA256(基于 OpenHarmony Crypto Framework),签名密钥独立分表存储。
    • AI 安全网关:RBAC 鉴权 → Prompt 注入检测 → 数据分级脱敏(PUBLIC/INTERNAL/CONFIDENTIAL/SENSITIVE)→ PDP 策略授权 → 输出校验 → 审计留痕,SENSITIVE 数据不出端,AI 结论仅作辅助不直接控制设备。
    • 高危控制指令(如停机、断电)须专家确认后签发一次性令牌,消费即失效。
    • 审计日志采用哈希链关联,任意历史记录被篡改都可在校验时被检测出来。

系统环境

  • 开发/构建环境:DevEco Studio,工程按 HarmonyOS targetSdkVersion 6.1.1(24) / compatibleSdkVersion 5.0.5(17) 维护。
  • 运行环境:OpenHarmony/HarmonyOS 真机、云手机或 DevEco Studio 模拟器(可安装 HAP 即可)。
  • 数据库:OpenHarmony 本地 relationalStore(端侧持久化/离线缓存);中心数据库(openGauss 等国产数据库)的接入属于后续工作,详见「已知限制」。
  • 硬件:当前在云手机/模拟器上完成端侧验证,尚未在真实国产 OpenHarmony 开发板上部署,详见「已知限制」。

依赖要求

  • Node.js(用于运行 src/tools/ 下的协议测试脚本 stage7_protocol_tests.js,无需额外 npm 包)。
  • Python 3(用于运行端侧模型训练脚本 train_edge_fault_model.py,纯标准库实现,无需额外 pip 包)。
  • Windows PowerShell(用于运行一键构建验收脚本 verify_stage7.ps1)。
  • 如需现场演示云端 Qwen 增强诊断,需要自行配置 DashScope API Key(见下方「Qwen 配置说明」),默认构建不包含任何长期密钥。

构建方法

完整源码见本仓库 src/ 目录(对应初赛提交中的 HongsuZhiwei_Submission 工程)。

  1. 用 DevEco Studio 打开 src/ 工程目录。
  2. 命令行构建单机三角色演示版(在 src/ 目录下执行):
hvigorw assembleHap --no-daemon

构建产物位于:

src/entry/build/default/outputs/default/entry-default-unsigned.hap
  1. 如需构建三个独立角色 HAP(巡检端/设备节点端/专家端),或一键完成全部构建 + 安全扫描 + 协议测试,直接运行:
powershell -NoProfile -ExecutionPolicy Bypass -File src\tools\verify_stage7.ps1

Qwen 配置说明(可选)

默认基线构建 ENABLE_DIRECT_QWEN_CALL=false,AI 诊断走端侧模型 + 安全网关 + Fallback 链路,不注入任何长期密钥。如需现场演示云端 Qwen 增强:

$env:DASHSCOPE_API_KEY = "your_api_key"
$env:INDUSTRIAL_ENABLE_DIRECT_QWEN_CALL = "true"
hvigorw assembleHap --no-daemon

演示结束后建议将 INDUSTRIAL_ENABLE_DIRECT_QWEN_CALL 改回 false 并重新构建,避免密钥打入提交产物。GeneratedAiSecret.ets 已在 .gitignore 中排除。

运行方法

推荐直接使用已构建好的可执行文件(无需自行构建):见 demo/ 目录,内含单机三角色集成演示版 HAP 及三个独立角色 HAP,附完整安装与演示步骤说明(demo/README.md)。

简要步骤:

hdc list targets
hdc install -r demo\entry-default-unsigned.hap
hdc shell aa start -b com.openharmony.industrial.agent -a EntryAbility -m entry

完整推荐演示路径(故障生成 → 巡检认证 → AI 诊断生成工单 → 专家会诊回传 → 重启验证持久化)见 demo/README.md。

测试方法

支撑本项目关键功能、安全机制与端侧模型结论的全部测试脚本、原始结果与验证报告见 tests/ 目录,按四类组织:

子目录 内容 重新运行方式
tests/protocol/ 协议编解码、签名校验、幂等、重放、重试等 15 项测试,15/15 通过 node src/tools/stage7_protocol_tests.js
tests/security/ 15 项安全威胁场景验收(SEC-001~SEC-015),全部通过 安装 demo/entry-default-unsigned.hap 后在应用内触发内置安全测试入口
tests/edge_ai_model/ 端侧故障分类模型训练脚本、数据集、学习到的权重、held-out 测试准确率 python src/tools/train_edge_fault_model.py
tests/build_verification/ 四个 HAP 构建、密钥残留扫描、文档完整性一键验收 powershell -File src\tools\verify_stage7.ps1

每个子目录内均附 README 说明具体用例内容和证据字段含义,详见 tests/README.md。

已知限制

以下内容为当前版本的真实边界,已在代码与文档中如实标注,答辩时不作为”已完成”表述:

  • 跨设备真实通信:三个独立角色 HAP 之间、以及设备发现能力,当前仍基于本地协议模拟(LocalMockTransportAdapter / SoftBusSimulationTransportAdapter),尚未接入真实 DSoftBus / DeviceManager。OhDistributedTransportAdapter 为预留的空实现接口。
  • 国产数据库:端侧使用 OpenHarmony 本地 relationalStore(SQLite 实现),尚未接入 openGauss 等国产中心数据库,docs/persistence_design.md 中说明了后续同步方案。
  • 国产芯片实机部署:当前仅在云手机/模拟器上完成端侧验证,BoardRuntimeAdapter 中的 SimulatedOpenHarmonyBoardAdapter 明确标注”因暂未取得国产 OpenHarmony 开发板,仅完成模拟器替代验证”。
  • NAPI 原生数据采集:native/ 下的 C++ NAPI 模块桥接正确、可真实编译执行,但当前返回固定的 MOTOR-001 示例日志,未连接真实传感器/现场采集协议。
  • 端侧模型规模:训练样本仅 32 条人工构建的示教数据,训练与测试准确率为真实拟合与独立评估的结果,但样本规模小,不构成生产级模型验证,详见 tests/edge_ai_model/edge_model_training_report.md。
  • 多模态输入:故障图片通过真实相机/相册 API 采集并上传,但当前诊断链路仅将图片 URI 元信息纳入 AI 提示词,未对图片内容做真实的视觉理解。
  • 密钥存储:HMAC 签名密钥与协议密钥采用独立分表存储(与被保护数据分离),提升了相较早期版本的安全强度,但仍与业务数据库同处一个本地 RDB 文件,尚未迁移到 HUKS 硬件密钥库,docs/tamper_evident_audit.md 中说明了后续加固方向。

目录结构

项目根目录/
├── README.md               本文件
├── src/                     完整源码工程(entry / apps / shared / native / datasets / docs / tools)
├── docs/
│   ├── 项目创新说明.pdf
│   └── 成员分工及主要贡献说明.pdf
├── tests/                   测试及验证材料(见上方「测试方法」)
└── demo/                    可运行可部署成果(HAP 安装包 + 演示指引)
关于
603.3 MB
邀请码
    Gitlink(确实开源)
  • 加入我们
  • 官网邮箱:gitlink@ccf.org.cn
  • QQ群
  • QQ群
  • 公众号
  • 公众号

版权所有:中国计算机学会技术支持:开源发展技术委员会
京ICP备13000930号-9 京公网安备 11010802047560号