Files
HF-MES-manual/integration/data-integration.md
2026-04-13 12:25:24 +08:00

290 lines
10 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 数据与集成
## 1. 功能概述
数据与集成模块实现 MES 系统与 ERP、SCADA、PLC 等系统的数据互联互通,打通企业信息孤岛,实现数据共享和业务协同。
**核心功能:**
| 功能 | 说明 |
|------|------|
| 接口管理 | 接口配置与监控 |
| 数据同步 | 主数据同步 |
| 消息集成 | 消息队列集成 |
| 文件传输 | 文件数据交换 |
## 2. 系统集成架构
### 2.1 集成架构图
```
┌─────────────────────────────────────────────────────────────┐
│ 企业应用集成架构 │
├─────────────────────────────────────────────────────────────┤
│ │
│ ┌─────────┐ │
│ │ ERP │ ─────────────────────────────────────────▶ │
│ │ SAP/用友 │ 物料主数据、采购订单、生产计划、销售订单 │
│ └────┬────┘ │
│ │ │
│ │ ◀───────────────────────────────────────── │
│ │ 工单完工、质量数据、库存数据 │
│ ▼ │
│ ┌─────────┐ │
│ │ MES │ │
│ │ MES │ ──────────────────────────────────────────▶ │
│ └────┬────┘ 工单执行、产量数据、质量数据 │
│ │ │
│ │ ◀───────────────────────────────────────── │
│ │ 设备运行参数、状态数据 │
│ ▼ │
│ ┌─────────┐ │
│ │ SCADA │ ──────────────────────────────────────────▶ │
│ │ PLC/RTU │ 设备数据采集、实时监控 │
│ └─────────┘ │
│ │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ 集成中间件 │ │
│ │ ┌────────┐ ┌────────┐ ┌────────┐ ┌────────┐ │ │
│ │ │消息队列 │ │数据总线 │ │文件传输 │ │API网关 │ │ │
│ │ └────────┘ └────────┘ └────────┘ └────────┘ │ │
│ └─────────────────────────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────┘
```
### 2.2 集成方式对比
| 集成方式 | 实时性 | 复杂度 | 数据量 | 适用场景 |
|---------|--------|--------|--------|---------|
| API接口 | 高 | 中 | 中 | 实时交互 |
| 中间库 | 低 | 低 | 大 | 批量同步 |
| 消息队列 | 中 | 中 | 中 | 异步消息 |
| 文件交换 | 低 | 低 | 大 | 批量数据 |
## 3. 接口管理
### 3.1 接口类型
| 接口类型 | 说明 | 方向 |
|---------|------|------|
| 上游接口 | 从其他系统获取数据 | ERP→MES |
| 下游接口 | 向其他系统推送数据 | MES→ERP |
| 双向接口 | 双向数据交换 | ↔ |
### 3.2 常用接口
**与ERP系统集成**
| 接口名称 | 方向 | 数据内容 |
|---------|------|---------|
| 物料主数据 | ERP→MES | 物料信息、BOM、工艺 |
| 供应商主数据 | ERP→MES | 供应商信息 |
| 客户主数据 | ERP→MES | 客户信息 |
| 采购订单 | ERP→MES | 采购到货信息 |
| 生产工单 | ERP→MES | 生产工单 |
| 完工汇报 | MES→ERP | 工单完工信息 |
| 质量数据 | MES→ERP | 检验数据 |
| 库存数据 | MES→ERP | 库存数据 |
**与SCADA系统集成**
| 接口名称 | 方向 | 数据内容 |
|---------|------|---------|
| 设备状态 | SCADA→MES | 设备运行状态 |
| 产量数据 | SCADA→MES | 实时产量 |
| 工艺参数 | SCADA→MES | 温度、压力等 |
| 报警信息 | SCADA→MES | 设备报警 |
| 生产指令 | MES→SCADA | 生产控制指令 |
### 3.3 接口配置
**接口配置要素:**
| 配置项 | 说明 |
|--------|------|
| 接口编码 | 接口唯一标识 |
| 接口名称 | 接口名称 |
| 接口类型 | API/中间库/消息 |
| 源系统 | 数据来源系统 |
| 目标系统 | 数据目标系统 |
| 接口地址 | API地址或数据库连接 |
| 认证方式 | 认证类型和凭证 |
| 数据格式 | JSON/XML/DB |
**接口配置示例:**
| 接口项 | 配置值 |
|--------|--------|
| 接口编码 | INT-001 |
| 接口名称 | 物料主数据同步 |
| 接口类型 | API |
| 源系统 | ERP |
| 目标系统 | MES |
| 接口地址 | http://erp-api/mdm/materials |
| 认证方式 | Token认证 |
| 调用频率 | 每日全量+实时增量 |
## 4. 数据同步
### 4.1 同步策略
| 同步策略 | 说明 | 触发方式 |
|---------|------|---------|
| 实时同步 | 数据变化即时同步 | 事件触发 |
| 定时同步 | 按计划定时同步 | 定时任务 |
| 手动同步 | 手工触发同步 | 人工操作 |
| 全量同步 | 全部数据同步 | 定时/手动 |
| 增量同步 | 仅同步变化数据 | 事件/定时 |
### 4.2 主数据同步
**物料数据同步:**
| 同步字段 | 说明 | 必填 |
|---------|------|------|
| 物料编码 | 物料唯一标识 | ✓ |
| 物料名称 | 物料名称 | ✓ |
| 规格型号 | 规格型号 | - |
| 计量单位 | 计量单位 | ✓ |
| 物料分类 | 物料类别 | - |
| 安全库存 | 安全库存量 | - |
| 采购周期 | 采购提前期 | - |
**BOM数据同步**
| 同步字段 | 说明 | 必填 |
|---------|------|------|
| 产品编码 | 父项物料编码 | ✓ |
| 物料编码 | 子项物料编码 | ✓ |
| 用量 | 物料用量 | ✓ |
| 损耗率 | 损耗百分比 | - |
| 工序序号 | 物料使用的工序 | - |
### 4.3 业务数据同步
**工单数据同步:**
| 同步方向 | 数据内容 |
|---------|---------|
| ERP→MES | 工单编号、产品、数量、计划日期 |
| MES→ERP | 完工数量、完工时间、不良数量 |
**库存数据同步:**
| 同步方向 | 数据内容 |
|---------|---------|
| MES→ERP | 入库数量、出库数量、库存数量 |
## 5. 消息集成
### 5.1 消息类型
| 消息类型 | 说明 | 用途 |
|---------|------|------|
| 生产消息 | 生产相关事件 | 工单开工、完工等 |
| 质量消息 | 质量相关事件 | 检验完成、不良发生等 |
| 设备消息 | 设备相关事件 | 设备故障、报警等 |
| 库存消息 | 库存相关事件 | 入库、出库等 |
### 5.2 消息格式
**消息标准格式:**
```json
{
"messageId": "MSG-20260410-001",
"messageType": "PRODUCTION_START",
"sourceSystem": "MES",
"targetSystem": "ERP",
"timestamp": "2026-04-10 10:00:00",
"data": {
"workOrderId": "WO-001",
"productId": "P001",
"quantity": 1000,
"startTime": "2026-04-10 10:00:00"
}
}
```
### 5.3 消息处理
| 处理模式 | 说明 | 特点 |
|---------|------|------|
| 即时处理 | 消息立即处理 | 低延迟 |
| 异步处理 | 消息队列缓冲 | 高吞吐 |
| 批量处理 | 消息批量处理 | 高效率 |
## 6. 接口监控
### 6.1 监控指标
| 指标 | 说明 | 监控内容 |
|------|------|---------|
| 接口调用次数 | 接口调用统计 | 成功/失败次数 |
| 接口响应时间 | 接口响应速度 | 平均/最大响应时间 |
| 接口成功率 | 接口可用性 | 成功/总调用 |
| 数据同步时效 | 数据同步及时性 | 延迟时间 |
### 6.2 接口日志
| 日志类型 | 说明 | 保留时间 |
|---------|------|---------|
| 调用日志 | 接口调用记录 | 6个月 |
| 请求日志 | 请求报文记录 | 3个月 |
| 响应日志 | 响应报文记录 | 3个月 |
| 错误日志 | 错误信息记录 | 12个月 |
### 6.3 异常处理
| 异常类型 | 处理方式 |
|---------|---------|
| 网络异常 | 自动重试3次 |
| 超时异常 | 增加超时时间 |
| 认证异常 | 重新获取Token |
| 数据异常 | 记录异常,人工处理 |
## 7. 数据转换
### 7.1 数据映射
**字段映射配置:**
| 源字段 | 目标字段 | 转换规则 |
|--------|---------|---------|
| material_code | mat_code | 直接映射 |
| unit_price | cost | 单位转换(元→万元) |
| create_time | createDate | 时间格式转换 |
### 7.2 数据校验
| 校验规则 | 说明 |
|---------|------|
| 必填校验 | 必填字段不能为空 |
| 格式校验 | 数据格式正确 |
| 长度校验 | 字段长度不超限 |
| 业务校验 | 业务规则校验 |
## 8. 集成安全
### 8.1 认证方式
| 认证方式 | 说明 | 安全性 |
|---------|------|--------|
| 用户名密码 | 基础认证 | 中 |
| API Key | 接口密钥 | 中 |
| Token认证 | OAuth2.0 | 高 |
| 数字证书 | SSL证书 | 高 |
### 8.2 传输安全
| 安全措施 | 说明 |
|---------|------|
| HTTPS | 数据传输加密 |
| 数据签名 | 数据完整性验证 |
| 数据脱敏 | 敏感数据保护 |
---
**数据与集成篇完**