当前位置: 首页 > news >正文

第五篇:IIoT 核心设备与万能配方架构设计

在工业中台的建设中,最难处理的往往是车间物理世界的“非标性”。不同工序、不同厂家的设备,其通讯协议、工艺参数千差万别。如果为每种设备都建立数据库表,系统将迅速走向崩溃。

本项目在 IIoT.ProductionService(生产与设备中心)中,通过“物理寻址自证”与“万能参数载体”两套杀招,实现了云端中台与产线物理世界的稳健对接。

一、 模块定位:设备科与配方科的双重角色

IIoT.ProductionService 是连接云端业务逻辑与车间实体的核心纽带:

  1. 设备寻址与自证:通过物理身份管理上位机终端,实现极速寻址与合法性自证。
  2. 工艺参数中枢:集中管理配方,支持工序通用工艺与针对特定机台的“特调”方案。
  3. 非标兼容性:利用 JSONB 承载差异巨大的工艺参数字典。

二、 核心数据模型:生产中心 ER 图

我们设计了两个核心聚合根(Device 与 Recipe),并通过工序 ID(ProcessId)实现跨服务的逻辑解耦。

erDiagram%% ==========================================%% 外部关联锚点 (跨服务逻辑关联)%% ==========================================mfg_processes {uuid id PK "工序唯一标识"string process_code "工序系统编码 (Unique)"string process_name "工序显示名称"}%% ==========================================%% 生产中心核心表 (物理存储层)%% ==========================================%% 设备表:物理资产与寻址devices {uuid id PK "设备 UUID"string device_name "设备名称"string device_code "系统编号 (Unique)"string mac_address "物理 MAC 地址 (Unique, 寻址核心)"uuid process_id FK "归属工序 ID"boolean is_active "是否启用"}%% 配方表:工艺参数与版本recipes {uuid id PK "配方 UUID"string recipe_name "配方名称"string version "版本号"uuid process_id FK "关联工序 ID"uuid device_id FK "专属设备 ID (Nullable)"jsonb parameters_jsonb "非标参数字典 (Native JSONB)"boolean is_active "是否启用"}%% ==========================================%% 核心物理关系与约束%% ==========================================mfg_processes ||--o{ devices : "逻辑归属 (跨模块解耦)"mfg_processes ||--o{ recipes : "定义通用工艺"devices ||--o{ recipes : "针对性特调工艺"

模型设计亮点:

  • 物理防伪:设备聚合根(Device)强制绑定物理 MAC 地址。这是设备开机向云端自证身份的唯一凭据,在数据库层面强制唯一。
  • 万能载体(JSONB):工艺配方(Recipe)使用 PostgreSQL 的原生 jsonb 类型。无论是温度、压力还是频率参数,均以 JSON 形式存储,既保证了扩展性,又支持云端进行高效的内部字段查询。

三、 业务流转:设备寻址与 ABAC 配方下发

在实际生产中,一个工人能否拉取某个配方,不仅取决于他的账号,更取决于他当前操作的是哪台设备。我们通过两个阶段实现了受控的生产过程:

sequenceDiagramautonumberparticipant HW as 物理设备 (WPF)participant API as 生产科 (ProductionService)participant Redis as 缓存 (ICacheService)participant Repo as 读仓储 (IReadRepository)participant EmployeeRepo as 人事仓储 (EmployeeRepo)Note over HW,API: 阶段一:设备开机自证寻址HW->>API: GET /api/v1/device/mac/{MAC}activate APIAPI->>Redis: 尝试从缓存获取设备标识alt 缓存未命中API->>Repo: 使用 DeviceByMacSpec 查库Repo-->>API: 返回物理设备实体 (UUID/ProcessId)API->>Redis: 回写缓存 (2h 过期)else 缓存命中Redis-->>API: 返回缓存的 DeviceIdentityDtoendAPI-->>HW: 返回设备 UUID 与 归属工序deactivate APINote over HW,EmployeeRepo: 阶段二:受控拉取工艺配方 (ABAC)HW->>API: GET /api/v1/recipe/{id} (带 User Token)activate APIAPI->>EmployeeRepo: 根据 UserId 查员工档案 (含工序/机台管辖权并集)EmployeeRepo-->>API: 返回该员工拥有的权限列表API->>API: 内存级 ABAC 审判<br/>(校验当前设备归属工序 是否在员工管辖内)API-->>HW: 授权通过:下发 JSON 配方deactivate API

关键机制描述:

  1. 设备开机自证:WPF 启动后首先上报 MAC 地址,云端通过缓存优先的方式(Cache-Aside)极速锁定设备 UUID 和所属工序。
  2. 内存级 ABAC 审判:当工人试图拉取配方时,系统会实时解析该员工的管辖权并集。如果目标机台或工序不在员工的“管辖列表”内,请求将被拦截,确保生产安全。

后续预告
通过前五篇的复盘,我们已经构建了 IIoT 中台的完整逻辑版图。

http://www.jsqmd.com/news/466800/

相关文章:

  • 4个专业步骤:acbDecrypter游戏音频提取完全指南
  • SD-PPP:突破AI绘画效率瓶颈的无缝协作解决方案
  • 颠覆式EFI生成工具:OpCore Simplify为黑苹果爱好者打造的自动化配置解决方案
  • 3步解锁鸣潮120帧流畅体验:WaveTools配置全指南
  • 打破次元壁的动漫聚合神器:Kazumi让跨平台追番体验焕然一新
  • 3个强力步骤:用OpenCore Legacy Patcher让旧Mac焕发第二春
  • BetterNCM 插件管理器安装实战:解决4类常见问题的高效指南
  • Beyond Compare 5 本地授权激活技术指南
  • 龙虾狂欢背后:生产力重塑与社会心理折射
  • Clawdbot消息推送:WebSocket实时通信实现
  • 探讨天津枳强税务师事务所靠不靠谱,在天津和平区口碑咋样 - 工业设备
  • Stable-Diffusion-V1-5 不同版本模型对比:V1-5、V2-1、XL的性能与风格差异
  • 2026年湖南、上海等地热门的不锈钢全屋定制服务商排名,哪家更靠谱? - 工业品牌热点
  • GME多模态向量-Qwen2-VL-2B企业应用:学术论文图文联合检索系统落地
  • 十八、GD32F407VET6天空星开发板:TIMER1_CH0 PWM呼吸灯实战详解
  • 使用Gemma-3-270m增强CSDN技术博客创作效率
  • 数据库管理工具深度横评:NineData 社区版、Bytebase 社区版、Archery,2026 年开发者该选哪个?
  • 2026 全国 GEO 优化服务商综合实力榜:技术、效果、生态三维度权威选型 - 速递信息
  • nlp_structbert_sentence-similarity_chinese-large镜像免配置:预装CUDA驱动+cuDNN+依赖库一体化镜像
  • Qwen3-TTS-12Hz-1.7B-Base语音合成进阶:自定义tokenizer开发指南
  • 2026年长铰链选购,分析钢琴长铰链哪家好美杰金属优势多 - mypinpai
  • CAM++实战应用:快速搭建说话人验证系统,轻松识别语音身份
  • REFramework工具集:提升应用性能与扩展性的5个核心方法
  • PROJECT MOGFACE 低代码集成示例:在Dify平台上快速搭建模型应用
  • 淘宝任务自动化工具:高效管理日常活动的技术方案
  • VisionPro新手必看:CogBlobTool斑点检测从入门到精通(附实战案例)
  • ChatGPT数学公式高效插入Word的技术实现与避坑指南
  • NeuralRecon实战:用TSDF实现室内场景3D重建的5个关键技巧
  • 【Dify向量重排序接入黄金法则】:20年架构师亲授3步极速对接Rerank引擎的实战心法
  • 美容美发小程序源码系统有哪些核心功能?覆盖美发店所有场景