Files
HF-MES-manual/production_configuration/process_model.md

476 lines
20 KiB
Markdown
Raw Normal View History

# 工艺流程模型
## 1. 功能概述
工艺流程模型属于 MES 系统的基础模块,用于构建产品的工艺流程分类、工艺流程、工序单元 、工序设定值、工序结果参数等核心工艺数据,为生产执行、品质管理等业务模块提供工艺基础数据支撑。
**核心功能:**
- 工艺流程类别:维护工艺流程的分类体系,按生产工段进行分类
- 工序单元:维护标准化的工序单元库,可被多个工艺流程复用,实现工序标准化
- 工艺流程管理:维护具体产品的完整工艺流程,定义工序顺序、工序设定值、工序结果参数等
**功能对应截图**
![图片:工艺模型功能截图](/public/image/process_model/图片:工艺模型功能截图.png)
## 2. 术语说明
| 术语 | 定义 | 说明 |
|------|------|------|
| 工艺流程类别 | Process Category对工艺流程进行工段分类管理的单元 | 用于区分不同生产工段的工艺流程 |
| 工艺流程 | Process Flow定义产品从原材料到成品的完整加工顺序 | 又称工艺路线或生产流程 |
| 工序单元 | Process Unit标准化的小工序模块 | 可被多个工艺流程复用 |
| 工序设定值 | Process Set Value工序作业的标准参数 | 如温度、压力、时间等,属于工序单元的属性 |
| 工序结果参数 | Process Result Parameter工序作业的实际结果记录 | 用于工艺监控和品质追溯,属于工序单元的属性 |
| 设备类别 | Device Category对设备的类别进行分类管理的单元 | 用于区分不同类型的设备,属于工序单元的属性 |
| 计算脚本 | Process Calculation Script工序接口执行额外的代码逻辑 | 用于生产执行中进行复杂计算,属于工序的属性 |
| 通道异常记录 | Channel Exception Record记录工序通道异常的详细信息 | 用于设备点位预警,属于工序的属性 |
**数据模型关系说明:**
```mermaid
flowchart TB
subgraph 工艺流程类别
CA[工艺流程类别A]
CB[工艺流程类别B]
end
subgraph 工艺流程
PA1[工艺流程A1]
PA2[工艺流程A2]
PB1[工艺流程B1]
end
subgraph 工序单元
U1[工序单元1]
U2[工序单元2]
U3[工序单元3]
end
CA -->|1:N| PA1
CA -->|1:N| PA2
CB -->|1:N| PB1
PA1 --- U1
PA1 --- U2
PA2 --- U2
PB1 --- U2
PB1 --- U3
U1 -->|属性| PSV1[工序设定值]
U1 -->|属性| PRP1[工序结果参数]
U1 -->|属性| DC1[设备类别]
U2 -->|属性| PSV2[工序设定值]
U2 -->|属性| PRP2[工序结果参数]
U2 -->|属性| DC2[设备类别]
```
**关系说明:**
| 关系类型 | 说明 |
|---------|------|
| 工艺流程类别 → 工艺流程 | **1 对 N**:一个工艺流程类别可以包含多个工艺流程 |
| 工艺流程 ↔ 工序单元 | **N 对 M**:一个工艺流程可以引用多个工序单元,一个工序单元可被多个工艺流程复用 |
| 工序单元 → 工序设定值 | **属性**:工序设定值是工序单元的属性之一 |
| 工序单元 → 工序结果参数 | **属性**:工序结果参数是工序单元的属性之一 |
| 工序单元 → 设备类别 | **属性**:设备类别是工序单元的属性之一 |
**简化关系图:**
```mermaid
flowchart LR
A[工艺流程类别] -->|1:N| B[工艺流程]
B -.->|N:M| C[工序单元]
C -->|包含| D[工序设定值]
C -->|包含| E[工序结果参数]
C -->|包含| F[设备类别]
```
## 3. 工艺流程模型交互流程
### 3.1 工艺流程类别管理
#### 3.1.1 工艺流程类别说明
工艺流程类别是对工艺流程进行工段分类管理的单元,用于区分不同生产工段的工艺流程。
**功能对应截图**
![图片:工艺流程类别列表截图](/public/image/process_model/图片:工艺流程类别列表截图.png)
#### 3.1.2 新增工艺流程类别
**操作步骤:**
1. 进入【生产配置】→【工艺模型】→【工艺流程类别】
2. 点击【新增】按钮
3. 填写基本信息
4. 点击【保存】完成类别创建
**字段说明:**
| 字段 | 说明 | 必填 |
|------|------|------|
| 工艺流程类别编码 | 类别的唯一标识代码 | 是 |
| 工艺流程类别名称 | 类别的名称,如"**工段" | 是 |
| 备注 | 其他补充说明信息 | 否 |
**【重要】** 类别编码一旦启用不允许修改和删除,请在创建时仔细确认。
**功能对应截图**
![图片:工艺流程类别设置截图](/public/image/process_model/图片:工艺流程类别设置截图.png)
#### 3.1.3 工艺流程类别查询
**查询条件:**
| 查询条件 | 说明 |
|---------|------|
| 类别编码 | 按类别编码精确查询 |
| 类别名称 | 按类别名称模糊查询 |
### 3.2 工序单元管理
#### 3.2.1 工序单元说明
工序单元是标准化的小工序模块,是构成工艺流程的基本单位。工序单元具有通用性,可被多个工艺流程引用,实现工序的标准化复用。
**工序单元特点:**
- 标准化:定义统一的工序名称、工序编码、作业规范
- 复用性:可被多个工艺流程引用,无需重复创建
- 可配置:支持配置工序的预设工艺参数、预设结果参数
**功能对应截图**
![图片:工序单元列表截图](/public/image/process_model/图片:工序单元列表截图.png)
#### 3.2.2 新增工序单元
**操作步骤:**
1. 进入【生产配置】→【工艺模型】→【工序单元】
2. 点击【新增】按钮
3. 填写工序单元基本信息
4. 点击【确定】完成工序单元创建
**字段说明:**
| 字段 | 说明 | 必填 |
|------|------|------|
| 工序单元编码 | 工序单元的唯一标识代码 | 是 |
| 工序单元名称 | 工序单元的名称,如"SMT贴装" | 是 |
| 设备类别 | 完成该工序的设备类别,如"SMT" | 是 |
| 备注 | 其他补充说明信息 | 否 |
**【注意】** 工序单元创建后,不允许修改编码,请在创建时仔细确认。
**【重要】** 工序单元被工艺流程引用后,不允许删除,请在创建时仔细确认。
**功能对应截图**
![图片:新增工序单元截图](/public/image/process_model/图片:新增工序单元截图.png)
#### 3.2.3 预设设定值
预设设定值是预设该工序的标准参数,如温度、压力、时间等,工艺流程新增工序的时候会按照预设设定值默认配置。
**功能对应截图**
![图片:预设设定值对话框截图](/public/image/process_model/图片:预设设定值对话框截图.png)
**操作步骤:**
1. 在【工序单元】页面,点击需要配置设定值的工序单元
2. 点击【预设定值】按钮,弹出预设设定值对话框
3. 填写设定值参数
4. 点击【确定】完成设定值配置
**【重要】** 根据工序单元的类别,预设的设定值对话框也会不同。
以下是MES系统预设的设定值对话框种类
- 充放电相关:![图片:分容预设设定值对话框截图](/public/image/process_model/图片:分容预设设定值对话框截图.png)
- 分选相关:![图片:分选预设设定值对话框截图](/public/image/process_model/图片:分选预设设定值对话框截图.png)
- OCV相关![图片:预设设定值对话框截图](/public/image/process_model/图片:预设设定值对话框截图.png)
- 静置相关:![图片:静置预设设定值对话框截图](/public/image/process_model/图片:静置预设设定值对话框截图.png)
- DCIR相关![图片DCIR预设设定值对话框截图](/public/image/process_model/图片DCIR预设设定值对话框截图.png)
除了以上之外MES还提供表格形式的预设设定值对话框用于配置复杂的设定值。
其余:![图片:常规预设设定值对话框截图](/public/image/process_model/图片:预设设定值对话框截图.png)
**【重要】** 如果现场有特殊需求需要自定义设定值对话框内容需要联系MES系统管理员进行开发。
#### 3.2.4 预设结果参数
预设结果参数是预设该工序的实际结果记录,如电压、电流、时间等,工艺流程新增工序的时候会按照预设结果参数默认配置。
**功能对应截图**
![图片:预设结果参数对话框截图](/public/image/process_model/图片:预设结果参数对话框截图.png)
##### 3.2.4.1 新增结果参数
**操作步骤:**
1. 在【工序单元】页面,点击需要配置结果参数的工序单元
2. 点击【预设结果参数】按钮,弹出预设结果参数对话框
3. 点击【新增一行】按钮,弹出新增结果参数对话框
4. 填写结果参数参数
5. 点击【确定】完成结果参数配置
**【重要】** 新增之后,系统会默认增加 进站时间(START_TIME)、出站时间(FINISH_TIME)、设备编码(DEVICE_CODE)三个结果参数。
**字段说明:**
| 字段 | 说明 | 必填 |
|------|------|------|
| 参数 | 结果参数的唯一标识代码 | 是 |
| 名称 | 结果参数的名称,如"电压" | 是 |
| 类型 | FLOAT/INT/VARCHAR/TEXT/TIMESTAMP | 是 |
| 是否唯一 | 结果参数是否会根据工步数量而变化例如分容、化成等结果参数会根据工步数量变化10个工步就有10个结果参数而二封或者注液等工序没有工步所以唯一 | 是 |
| 是否上传 | 结果参数上传的时候根据是否上传进行判断如果是则上传到MES系统否则不上传 | 是 |
| 备注 | 其他补充说明信息 | 否 |
**功能对应截图**
![图片:新增预设结果参数对话框截图](/public/image/process_model/图片:新增预设结果参数对话框截图.png)
##### 3.2.4.2 导入预设结果参数
导入预设结果参数是批量导入该工序的结果参数,如电压、电流、时间等。
**操作步骤:**
1. 在【工序单元】页面,点击需要配置结果参数的工序单元
2. 点击【预设结果参数】按钮,弹出预设结果参数对话框
3. 点击【导入】按钮,弹出导入结果参数对话框
4. 点击【选择文件】上传包含结果参数的xlsx文件
**【注意】** 导入的结果参数如果与已有的结果参数编码或者名称重复,会弹出报错。
**【注意】** 导入的xlsx文件MES会提供下载用户可以根据下载的文件进行修改后重新导入。
**功能对应截图**
![图片:导入结果参数的按钮和文件对话框截图](/public/image/process_model/图片:导入结果参数的按钮和文件对话框截图.png)
![图片:导入结果参数文件截图](/public/image/process_model/图片:导入结果参数文件截图.png)
#### 3.2.5 工序单元查询
**查询条件:**
| 查询条件 | 说明 |
|---------|------|
| 工序单元编码 | 按工序单元编码精确查询 |
| 工序单元名称 | 按工序单元名称模糊查询 |
| 设备类别 | 按设备类别筛选 |
**功能对应截图**
![图片:工序单元查询列表截图](/public/image/process_model/图片:工序单元查询列表截图.png)
### 3.3 工艺流程管理
#### 3.3.1 工艺流程说明
工艺流程是定义产品从原材料到成品的完整加工顺序的核心数据,包含工序排列、工序名称、工序编码、工艺设定值、工艺结果参数等信息。
**功能对应截图**
![图片:工艺流程列表截图](/public/image/process_model/图片:工艺流程列表截图.png)
#### 3.3.2 新增工艺流程
**操作步骤:**
1. 进入【生产配置】→【工艺模型】→【工艺流程】
2. 点击【新增】按钮
3. 填写工艺流程基本信息
4. 点击【保存】完成工艺流程创建
**字段说明:**
| 字段 | 说明 | 必填 |
|------|------|------|
| 工艺流程编码 | 工艺流程的唯一标识代码 | 是 |
| 工艺流程名称 | 工艺流程的名称 | 是 |
| 工艺流程类别 | 关联的工艺流程类别 | 是 |
| 产品代码 | 关联的产品型号 | 是 |
| 备注 | 其他补充说明信息 | 否 |
**【重要】** 工艺流程被生产批次绑定后,不允许删除。
**功能对应截图**
![图片:新增工艺流程截图](/public/image/process_model/图片:新增工艺流程截图.png)
#### 3.3.3 工艺流程、工序单元、工序的关系
```mermaid
flowchart TB
A[工艺流程类别] -->|1:N| B[工艺流程A]
A -->|1:N| C[工艺流程B]
B --> D[工序1]
B --> E[工序2]
B --> F[工序3]
C --> G[工序2]
C --> H[工序4]
C --> F
D --> I[工序单元:贴装]
E --> J[工序单元:焊接]
F --> K[工序单元:检测]
G --> I
H --> L[工序单元:组装]
```
**【注意】** 工序编码和工序名称是系统自动分配的分配规则是工艺流程的唯一ID拼接工序单元编码用户无需手动输入用户可以根据需要修改名称但是编码不能修改。
### 3.4 设置工序(工艺详情)
工艺详情页面是用于配置工艺流程的详细信息,包括新增工序、删除工序、编辑设定值、编辑结果参数、设置计算脚本等。
**功能对应截图**
![图片:工艺详情页面截图](/public/image/process_model/图片:工艺详情页面截图.png)
#### 3.4.1 设置工序(工艺详情)说明
**操作步骤:**
1. 进入【生产配置】→【工艺模型】→【工艺流程】
2. 点击【设置工序】按钮
3. 进入【工艺详情】页面
**功能说明:**
- 新增工序:配置工艺流程的工序顺序、工序单元、是否开启通道异常记录等信息
- 删除工序:配置工艺流程的工序顺序、工序单元、是否开启通道异常记录等信息
- 编辑设定值:为每个工序配置标准的作业参数,如温度、压力、时间等
- 编辑结果参数:为每个工序配置实际的结果记录,如电压、电流、时间等
- 设置计算脚本:为每个工序配置实际的结果记录,如电压、电流、时间等
#### 3.4.2 新增工序
**操作步骤:**
1. 在【工艺流程】页面,点击需要配置工艺流程的【设置工序】按钮,进入到【工艺详情】页面
2. 点击新增按钮,弹出新增工序对话框
3. 选择工序单元,系统会自动生成工序编码和工序名称
4. 选择是否开启通道异常记录
5. 点击【确定】完成工序配置
**工序配置字段说明:**
| 字段 | 说明 | 必填 |
|------|------|------|
| 工序单元 | 从工序单元库选择的工序 | 是 |
| 工序编码 | 系统自动生成的工序编码格式为工艺流程唯一id+工序单元编码 | 是 |
| 工序名称 | 系统自动生成的工序名称格式为工艺流程唯一id+工序单元名称 | 是 |
| 开启通道异常记录 | 是否开启对该工序的通道异常记录 | 否 |
| 备注 | 其他补充说明信息 | 否 |
**【注意】** 工序删除后,相关的设定值和结果参数也会被删除,请谨慎操作。
**【重要】** 工艺流程被生产批次绑定后,工序不允许删除。
**功能对应截图**
![图片:新增工序对话框截图](/public/image/process_model/图片:新增工序对话框截图.png)
#### 3.4.3 工序设定值
工序设定值是工序作业的标准参数,如温度、压力、时间等。
**操作步骤:**
1. 在【工艺详情】页面,点击需要配置设定值的工序
2. 点击【新增设定值】按钮,弹出新增设定值对话框
3. 填写设定值参数、单位、最小值、最大值、正常值、警告值、报警值
4. 点击【确定】完成设定值配置
**【注意】** 如果该工序的工序单元设置了预设设定值,系统会自动填充预设设定值,用户无需手动配置。
**【重要】** 工序设定值设备会通过MES接口 [get_battery_process_setting]() 和 [get_tray_process_setting]() 进行获取。
**功能对应截图**
![图片:工序设定值对话框截图](/public/image/process_model/图片:工序设定值对话框截图.png)
#### 3.4.4 工序结果参数
工序结果参数是工序作业的实际结果记录,如电压、电流、时间等。
**【注意】** 如果该工序的工序单元设置了预设结果参数,系统会自动填充预设结果参数,用户无需手动配置。
**【重要】** 如果该工序的结果参数是非唯一的,系统会在设定值确定之后,根据设定值的工步数量动态生成结果参数。
> 例如,分容工序的结果参数是电压、电流、电压等,根据工步数量生成第一个工步的电压、电流、电压,和第二个工步的电压、电流、电压等,直到最后一个工步。
**功能对应截图**
![图片:工序结果参数对话框截图](/public/image/process_model/图片:工序结果参数对话框截图.png)
#### 3.4.5 计算脚本
计算脚本是在设备调用接口的过程中根据设置的脚本触发位置例如接口执行前或者执行后触发复杂计算的脚本计算脚本用PHP代码编写用于项目基于接口追加特定的复杂逻辑。
**功能对应截图**
![图片:计算脚本对话框截图](/public/image/process_model/图片:计算脚本对话框截图.png)
##### 3.4.5.1 新增计算脚本
**操作步骤:**
1. 在【工艺详情】页面,点击需要配置计算脚本的工序
2. 点击【计算脚本】按钮,弹出新增计算脚本列表对话框
3. 点击【新增】按钮,弹出新增计算脚本对话框
4. 填写计算脚本基本信息,包括脚本名称、触发位置、脚本内容
5. 点击【计算脚本编辑器】按钮,弹出计算脚本编辑器对话框
6. 在计算脚本编辑器中编写PHP代码
7. 点击【保存】按钮,保存计算脚本
8. 点击【确定】完成计算脚本配置
**功能对应截图**
![图片:新增计算脚本对话框截图](/public/image/process_model/图片:新增计算脚本对话框截图.png)
![图片:计算脚本编辑器对话框截图](/public/image/process_model/图片:计算脚本编辑器对话框截图.png)
**【注意】** 脚本编辑器有语法高亮、代码提示、格式化等功能
**【注意】** 脚本编辑器有预设好的函数库,用户可以直接拖拽进行使用
**【重要】** 脚本编辑器有是保存计算某个结果参数数据,需要结果参数里有对应的参数,否则会报错。
##### 3.4.5.2 计算脚本使用案例
**案例1**
例如需要增加OCV2的K值计算从后台设置到执行和导出显示流程
```mermaid
sequenceDiagram
participant 用户 as 用户
participant MES as MES系统
participant 设备 as 设备
用户->>MES: 1. 编辑计算脚本(设置触发位置:结束位置)
MES->>MES: 2. 保存计算脚本配置
设备->>MES: 3. 设备上传数据OCV2数据
MES->>MES: 4. 判断触发位置是否为"结束位置"
MES->>MES: 5. 加载对应的计算脚本
MES->>MES: 6. 执行脚本逻辑计算K值
MES->>MES: 7. 保存计算结果到结果参数
MES->>用户: 8. 返回计算完成结果
```
**流程说明:**
| 步骤 | 执行者 | 操作 | 说明 |
|------|--------|------|------|
| 1 | 用户 | 编辑计算脚本 | 设置触发位置为"结束位置" |
| 2 | MES | 保存脚本配置 | 保存脚本内容和触发位置 |
| 3 | 设备 | 上传数据 | 设备调用接口上传OCV2数据 |
| 4 | MES | 判断触发位置 | 检查触发位置是否为"结束位置" |
| 5 | MES | 加载脚本 | 根据触发位置加载对应脚本 |
| 6 | MES | 执行计算 | 运行脚本逻辑计算K值 |
| 7 | MES | 保存结果 | 将计算结果保存到结果参数 |
| 8 | MES | 返回结果 | 向用户展示计算完成状态 |
#### 3.4.6 查看日志
日志是记录工艺详情页面的操作日志,包括新增、删除、编辑工序、配置设定值、配置结果参数、配置计算脚本等操作。
**操作步骤:**
1. 在【工艺详情】页面,点击【查看日志】按钮
2. 弹出日志对话框,显示所有操作日志
**功能对应截图**
![图片:查看日志对话框截图](/public/image/process_model/图片:查看日志对话框截图.png)