计算机系统应用  2023, Vol. 32 Issue (4): 112-119   PDF    
基于统计过程控制的水清洗控制系统
王兴, 王亦雷, 杜辰, 江忠浩, 李彩霞     
太原科技大学 计算机科学与技术学院, 太原 030024
摘要:为了将水清洗机接入工业网络并实现智能自动化控制, 本文提出了一种基于统计过程控制(SPC)可重构程序的水清洗控制系统. 该系统根据水清洗设备的参数和组件特性构建了该设备的控制协议; 根据协议指令制定了指令判断模块; 根据SPC理论设计了过程控制模块. 控制协议让该系统的清洗程序具有重构和联网的功能; 指令判断模块为重构后的指令提供了安全性保障; 过程控制模块让该系统的清洗过程具备动态调整清洗组件的功能. 这些功能使得该设备可以实现智能自动化控制. 通过测试, 该系统比原有系统的清洗次数平均减少了15%, 水清洗液的使用率提升了约5%, 并扩展了3项功能, 提高了设备的利用率和智能化水平, 最终满足节能省水、多用途和联网的需求.
关键词: PCBA    控制协议    统计过程控制    智能自动化控制    工业4.0    
Water Cleaning Control System Based on Statistical Process Control
WANG Xing, WANG Yi-Lei, DU Chen, JIANG Zhong-Hao, LI Cai-Xia     
College of Computer Science and Technology, Taiyuan University of Science and Technology, Taiyuan 030024, China
Abstract: A water cleaning control system based on the reconfigurable program of statistical process control (SPC) is proposed to connect a water cleaning machine to an industrial network and realize intelligent automatic control. The system uses parameters and component characteristics of water cleaning equipment to construct the control protocol of the equipment and formulates an instruction judgment module according to the protocol instruction. In addition, it designs a process control module through SPC theory. The control protocol makes the cleaning program of the system capable of reconfiguration and networking. The judgment module ensures the security of reconstructed instructions. The process control module makes the cleaning process of the system able to dynamically adjust cleaned components. These functions enable the equipment to realize intelligent automatic control. Through the test, the average cleaning times of the system are reduced by 15%, and the utilization rate of water cleaning solutions is increased by about 5% compared with the original system. Furthermore, three functions have been expanded, which improves the utilization rate and intelligence level of the equipment, and the requirements of energy and water saving, multiple purposes, and networking are finally satisfied.
Key words: printed circuit board assembly (PCBA)     control protocol     statistical process control (SPC)     intelligent automatic control     industry 4.0    

自从2011年德国在汉诺威工业博览会上提出工业4.0战略, 新一代工业改革便成为研究热点之一. 在最近关于工业改革的调查中, Friesd等人[1]的研究表明, 大多数企业希望其生产系统可以重构并具有灵活的通信系统, 多数制造商希望生产系统中的生产单元可以模块化并使用无人驾驶车辆来运输物料; Jeske等人[2]的研究表明, 工业数字化可以平均提高38%的生产率, 并可有效减少员工的实际工作时间. 这些调查说明, 随着新的制造模式和技术的兴起[3, 4], 提高制造业自动化设备的智能化水平非常重要.

印制电路板组件(printed circuit board assembly, PCBA)是现代生产生活中不可或缺的零部件之一, 然而, 在制造过程中不可避免地会留下污染物. 这些污染物是由助焊剂、氧化物残渣和合成高分子树脂等各种极性或非极性污染物组成[5]. 如果这些污染物不被清除, PCBA将有许多故障, 如短路、漏电或腐蚀等. 因此, 装焊后进行PCBA的清洗是一道关键工序. 针对清洗PCBA污染物的问题, 国内外有水清洗、气相、离心、等离子和超声波等多种清洗技术[6-9]. 在水清洗技术领域, AQUEOUS公司的SMT 6500型和SMT 750-LD型水清洗机、凯尔迪科技公司的双门自动清洗机和捷科精密公司的PCBA板离线清洗机有一定的代表性[10-12]: 这3台设备的技术都很相似, 具有喷淋清洗技术、自动控制系统、液体配比和循环过滤系统. 但是三者的自动控制系统有一定程度上的区别: SMT 6500型水清洗机具备过程控制和程序重构功能; SMT 750-LD型水清洗机仅具备自动清洗的功能; 双门自动清洗机具备云端互联功能; PCBA板离线清洗机使用传统的工业自动控制. 由此可知, 目前的PCBA全自动水清洗机的程序多数是固定的, 这使得设备功能有限且智能化程度不高, 会出现难以适应实际生产环境的情况, 比如: 清洗水量无法根据脏污程度自动调节; 不同型号的PCBA无法使用不同的清洗程序; 清洗工艺变更时无法重构程序等问题.

因此, 为了提升工厂智能化水平, 该系统设计从灵活性、重构性、设备联网及数字化等方面入手, 为实现水清洗机的智能自动化提出了具有可行性的系统设计, 并可根据实际环境进行灵活扩展, 期望达到工厂设备协同生产的目的.

1 系统设计

本文中水清洗控制系统的硬件基础是某企业闲置设备SMT750-LD型水清洗机, 其硬件与SMT 6500型水清洗机类似, 可使用软件控制喷淋清洗、液体配比和清洗液循环, 但无法进行程序重构与过程控制. 为了节约成本并扩展当前工业网络, 该企业要将该设备添加到整个工业系统中. 因此该系统设计主要包括两方面的内容: (1) 设计基础的控制功能与权限管理; (2) 设计过程控制、程序重构和设备互联的功能. 该企业工业网络系统结构如图1所示.

图 1 工业网络系统结构

1.1 PCBA水清洗技术需求分析

水清洗技术流程有3步: 首先使用水基清洗剂将PCBA上的污染物润湿, 再用去离子水将污染物从PCBA表面带走, 最后烘干来达到清洁的目的. 以下是根据国家和企业生产标准[13-15]进行的需求分析.

(1) 清洗步骤有3步: 清洗、漂洗和烘干.

(2) 清洗和漂洗时需要使用去离子水.

(3) 清洗时去离子水和水基清洗剂按比例混合.

(4) 水基清洗液超出标准后不可再次使用.

(5) 漂洗后的去离子水不建议再次使用.

(6) 清洗时伴随振动可有效溶解污染物.

(7) 水基清洗剂添加含量10 g/kg.

(8) 水基清洗液温度在50–70℃之间.

(9) 喷淋和漂洗时间在6–10 min.

(10) 清洗合格时的电阻值在624–1040 kΩ之间.

1.2 硬件结构

在该设计中, 对原有的水清洗机进行扩展并根据相关需求组成了图2所示的系统硬件结构. 所有的数据分析在工业计算机中执行, 并通过预定义的通信协议, 将控制决策下发给PLC, PLC根据接收的指令实现各个组件的控制.

图 2 硬件结构

1.3 软件结构及设计

该系统以工业计算机为核心, 使用Visual Basic编程语言编制软件, 建立控制协议与PLC进行串行通信, 根据统计过程控制(statistical process control, SPC)的判别原则控制清洗程序, 并使用Access数据库将相关数据存储. 其结构如图3所示.

图 3 软件结构

为实现基础的控制功能与权限管理功能, 该系统的启动流程设计为: 首先, 进行登陆操作, 根据登录账号的使用权限不同而显示不同的功能按钮; 然后, 控制软件与PLC通信获取各个传感器及高压电气设备的状态并显示在主控窗口上; 最后, 软件进入主控窗口等待不同的功能按钮被激活.

针对实现程序重构的功能, 该系统被设计成一个开放性的工作平台, 可根据不同按钮执行不同的功能. 其中“主控窗口”可实时显示设备状态; “程序控制”是主要控制清洗程序的界面, 在此可运行、选择或编辑需要运行的清洗程序, 用来满足前文的需求1、3、5、6和7; “参数设置”满足需求8、9和10的参数调节; “用户管理”进行访问控制管理, 提供安全性保障; “故障报警”提示必要的故障信息, 用来满足需求2与其他潜在需求. 其中主要的界面是“主控窗口”和“程序控制”, 如图4图5所示

在程序控制界面编辑程序时, 根据控制协议将对应的命令设计为按钮事件. 例如: 当点击清洗泵旁的“开”按钮时, 会向上面的指令框中加入如下指令:

0010 [M0XD1] //开启清洗泵.

该设计实现了程序重构的功能, 通过点击按钮简化编程环境, 解决了编程时需要输入代码的问题, 适用于工业生产环境, 方便重新设计水清洗技术的工艺流程. 此外, 通过点击“载入”按钮可将当前程序激活, 通过“启动”按钮运行当前的清洗程序.

图 4 主控窗口界面

图 5 程序控制界面

2 SPC原理及应用

SPC是使用统计工具分析数据并根据分析结果控制生产过程. 其具体实现是基于3个统计概率学原理: 正态分布、3σ准则和小概率原理[16-18].

2.1 统计概率学三原理

正态分布是非常普遍的一个概率分布模式, 其在质量控制中的公式如下:

$ {{y}} = \frac{1}{{\sigma \sqrt {2\pi } }}e\frac{{\left( {x - \overline x } \right)}}{{2{\sigma ^2}}}{\text{ }} \; ( - \infty < x < \infty , \; \sigma > 0) $ (1)

其中, $ \overline x $ 是产品质量特性的均值, σ影响正态分布曲线的上下高度, 在一定数据量下, 接近平均的数据量越多正态分布曲线越高, 说明产品质量特性值越稳定. 对于一个生产企业而言, 在整个生产经营过程中总是必然存在一定不同程度的周期波动性. 当产品生产过程受控时, 异常波动就会消失, 采集到的数据就满足正态分布.

3σ准则指的是如果生产的产品在某一生产周期的质量采样值都处于 $ \overline x $ ±3σ之间, 那么该产品的生产过程是受控的. 因为正态分布的函数在 $ \overline x $ ±3σ之间的概率密度为99.73%, 即本周期内该产品合格率为99.73%, 所以可以忽略不合格产品.

小概率原理与3σ准则相对应, 即不合格品的概率约0.27%. 如果在生产过程中有一定量的采样值不在 $ \overline x $ ±3σ区间之内, 那么就意味着生产过程即将或已经处于不受控状态, 此时应尽快调整生产策略.

2.2 控制图

控制图是SPC的主要统计工具, 最初由美国休哈特博士提出将正态分布曲线图按顺时针方向转90°进行过程控制, 表示数据变化趋势的图像, 经过发展形成了对应的标准[19]. 目前主流的控制图可分为两大类, 分别是计量型控制图和计数型控制图. 在该系统中根据采样值的特性, 决定采取计数型控制图的单值-移动极差控制图(X-Rm控制图)来控制过程, 并根据以下公式计算分别得出单值图(X图)和移动极差图(Rm图).

Rm图样本点:

$ {R_m} = \left| {{X_{l + 1}} - {X_l}} \right|, \; l \geqslant 2 $ (2)

Rm图上限和下限:

$ {U_{CL}} = 3.267 \times \overline {{R_m}} {, _{}} \; {L_{CL}} = 0 $ (3)

Rm图中心线:

$ \overline {{R_m}} = \frac{{\displaystyle\sum\limits_{l = 2}^k {{R_m}} }}{k} $ (4)

X图中心线:

$ \overline X = \frac{{\displaystyle\sum\limits_{l = 1}^k {{X_l}} }}{k} $ (5)

X图上限和下限:

$ \begin{gathered} {U_{CL}} = \overline X + 2.660\overline {{R_m}} \\ {L_{CL}} = \overline X - 2.660\overline {{R_m}} \\ \end{gathered} $ (6)

过程标准差:

$ {\sigma _0} = \frac{{\overline {{R_m}} }}{{1.128}} $ (7)
2.3 判异准则

若生产过程偏离稳定状态就被称为异常, 具体体现是控制图中采样点的位置不符合统计概率学三原理的分布位置[20]. 在一个稳定的生产过程中, 通常有8个常用的判异准则, 分别是:

(1) 有1个点在 $ \overline x $ ±3σ区域以外.

(2) 连续9个点在中心线的同一侧.

(3) 连续6个点递增或递减.

(4) 连续14个点中相邻点交替上下.

(5) 连续3个点中有2个点落在 $ \overline x $ ±2σ区域以外.

(6) 连续5个点中有4个点落在 $ \overline x $ ±1σ区域以外.

(7) 连续15个点在 $ \overline x $ ±1σ区域以内.

(8) 连续8个点在中心线两侧且不在 $ \overline x $ ±1σ区域内.

异常的出现一般都具有引起该异常的原因, 例如: 判异准则(1)的原因有计算错误、测量错误、原材料不合格、设备故障等; 判异准则(3)的原因有工具逐渐磨损、维修逐渐失效等; 判异准则(7)的原因有数据错误、计算错误、数据分层不够等.

2.4 SPC的应用

根据SPC的统计概率学三原理、控制图和判异准则, 该系统将SPC作为一个反馈模块, 采样点作为输入, 对应的控制结果作为输出. 该系统的控制系统框图如图6所示. 首先设备开启执行, 控制模块根据初始设定控制清洗模块执行, 然后SPC模块采集样本点数据并进行计算, 之后将得出的调整命令发送给控制模块, 最后控制模块进行命令执行, 直到输出的样本点合格时停止执行.

SPC在用于水清洗系统的过程控制时, 可将其设计为一个负责接受电阻值, 并输出下一次清洗的控制指令或完成清洗的模块. 在其内部有3步处理: (1) 计算控制图数据; (2) 判断当前的异常模式; (3) 根据设定的异常原因给出指令.

图 6 SPC的控制系统

3 控制协议

控制协议是该软件控制PLC执行动作和设备联网的关键协议, 该系统中设计了4类指令: 设备开关指令、逻辑判断指令、数值设置指令和接口指令, 该软件上可识别并运行全部类型的指令; PLC中可识别并运行设备开关指令和数值设置指令; 无人运输车辆、工厂总控计算机和其他工业设备可通过接口指令与该设备软件通信. 控制协议具体设计为5位字符, 第1位字符确定“指令类型”, 第2位字符确定执行“组件编号”, 字符可由1位数字或字母组成, 剩余字符根据不同指令进行设定.

设备开关指令: 剩余3字符由“功能”和“动作”组成, 其中“功能”是2位字符, “动作”是1位字符, 如表1所示.

表 1 设备开关指令部分数据表

逻辑判断和数值设置指令: 剩余3字符由“动作”和“数值”组成, 其中“动作”是1位字符, “数值”是十六进制2位数字, 如表2所示.

表 2 逻辑判断和数值设置指令部分数据表

接口指令: 在该系统涉及的工业互联网中, 接口指令需要提供设备状态、设置设备启动和停止. 因此接口指令剩余3个字符与设备开关指令类似, 由“功能”和“动作”组成, 其中“功能”是2位字符, “动作”是1位字符, 如表3所示. 例如: 当前总控台需要知道0号水清洗机的运行状态, 那么通过网络对0号水清洗机发送指令“S0QXZ”, 会收到该设备的回复指令“S0QXP”, 表示该设备已停止.

表 3 接口指令部分数据表

通过以上的协议指令可实现具有重构功能的自动化控制和基本的设备联网功能. 为了实现智能判断的功能设计了指令判断、过程判断和故障判断3个模块.

3.1 指令判断模块

因为控制协议的存在, 该设备的水循环回路可以重构, 但在自主设计指令时, 有错误编程的可能, 因此设计了指令判断模块, 用来确保程序的正确性和安全性. 指令判断模块运行流程如图7所示.

图 7 指令判断模块程序流程

首先需确定重构后的指令是否存在. 因为当前设备组件是固定且不需要扩展, 所以将这些指令均存入数据库中. 在保存重构后的指令程序时, 会将每行指令与数据库中指令对比, 确保指令存在.

然后确定指令是否满足水循环回路. 在数据库中保存了程序的水循环组件指令可设置的后继指令, 在命令设置错误时会进行标注, 只有满足水循环结构的回路时, 重构才会成功.

3.2 过程判断模块

在该设备中, 设定在漂洗结束时收集电阻值, 再通过过程判断模块得出对应的指令结果, 以此控制设备的运行. 该模块根据SPC理论进行设计, 过程判断模块程序流程如图8所示.

图 8 过程判断模块程序流程

由于清洗过程的初期的电阻值比后期的电阻值高, 无法直接套用普通的判异准则, 因此经过实验, 在该系统中归类出以下几种异常模式.

合格: X图中最后3个样本点依次递增, 最后2点在控制图上下限内; Rm图中最后2个样本点在上下限内依次递减, 最后1点小于50 kΩ.

异常1: X图中2个点及以上落在上下限内, 且Rm图的最后2点大于50 kΩ, 说明未漂洗干净, 执行一次漂洗程序.

异常2: X图中3个点及以上落在下限之外, 且Rm图的最后2点小于50 kΩ, 说明清洗液需要更换, 此时执行更换清洗液程序.

异常3: X图中3个点及以上落在上限之外, 且Rm图的最后2点小于50 kΩ, 说明清洗剂含量不够, 此时执行添加清洗剂程序.

异常4: X图中3个样本点及以上在 $ \overline x $ ±2σ中, 且Rm图2个点递增或递减, 说明清洗效果过大或过小, 需要调整清洗力度.

其他异常: 未在所包含的异常中情况出现时, 说明未清洗干净, 此时会自动执行一次清洗和漂洗程序.

3.3 故障判断模块

硬件出现故障时, PLC会返回相关设备的故障指令, “故障检测”界面会显示出具体的故障信息. 该设备可能出现的故障主要有6个: (1) PLC通信故障; (2) 清洗液温度过高; (3) 烘干空气温度过高; (4) 程序运行中清洗腔的门被打开; (5) 清洗液低于正常限位; (6) 过滤器需要更换.

故障(1)出现时, 控制软件会多次重启串口, 若还是无法解决, “故障检测”会提示通信故障; 当故障(2)和故障(3)出现时, 控制软件会自动启停对应加热器, 若2 min内温度未变化, “故障检测”会提示对应的加热器故障; 当故障(4)出现时, “故障检测”会紧急停止设备并给出安全门打开的提示; 当故障(5)和故障(6)出现时“故障检测”会提示对应组件需要更换.

4 系统测试

此次PCBA清洗实验进行了10批次, 总共运行59次清洗或漂洗程序并更换4次水基清洗液, 实验结果如图9图10所示.

图中每次峰值的产生均为完成1批次清洗. 例如: 第5批次清洗实验, 即第5次峰值, 第1次喷淋和漂洗程序完成后采集的电阻数据为570 kΩ, 属于其他异常模式, 则执行下一次喷淋和漂洗程序; 第2次采集的电阻数据为560 kΩ, 属于异常2模式, 更换清洗液后进行下一轮清洗; 第3次采集的电阻数据为640 kΩ, 属于其他异常模式, 则再执行一次清洗和漂洗程序; 第4次采集的数据为720 kΩ, 属于异常1模式, 则进行1次漂洗程序; 第5次采集的数据为750 kΩ, 满足合格模式, 则完成清洗.

图 9 实验结果的SPC控制图

图 10 清洗前后的电路板对比

在实际清洗中, 小面积的助焊剂相比大面积的助焊剂更难清洗, 所以图10选出两块具有小面积助焊剂黄色脏污进行对比. 图10(a)为清洗前的电路板, 图10(b)为清洗后的电路板, 在外观上可以看出, 黄暗色的助焊剂已被清洗掉, 经过离子残留测试也是合格的.

未改造前, 该设备1次全自动程序进行7次清洗和漂洗程序, 水清洗液在运行2次全自动程序(即14次清洗和漂洗)后进行更换; 改造后, 该设备与系统的各个模块均可正常运行, 且10批次清洗测试中总共运行59次清洗或漂洗程序, 平均每次清洗运行5.9次清洗可达到质量要求, 提升了约15%的清洗效率; 水清洗液在平均运行14.75次后进行更换, 提升了约5%的使用效率.

该系统与相似设备的控制功能对比如表4所示. 该系统设计对水清洗技术与工厂实际需求进行分析, 在实现水清洗机基础的功能上, 扩展了过程控制、程序重构和云端互联的3个主要的功能, 满足了各项需求, 所以该水清洗控制系统在一定程度上可满足节能省水的智能自动化控制要求.

表 4 各型号控制功能对比

5 结论与展望

本文中所设计的PCBA水清洗智能控制系统在某公司的闲置SMT750-LD型水清洗设备上加以改造, 添加了由控制协议、主控界面、指令判断模块、过程判断模块和故障判断模块组成的控制软件. 控制协议可方便重构与控制清洗程序, 并可具有简单的设备联网功能; 指令判断模块进行水循环回路检查; 过程判断模块采用SPC理论对清洗过程进行生产控制. 通过实机测试, 表明该设备适合用于工厂生产环境, 可批量清洗装焊后的PCBA, 运行简单方便、节能省水, 并可根据生产需求进行重构清洗程序, 进而有效降低生产成本. 本文的研究着重于实现水清洗机过程控制的智能化和网络化, 或许可对工业生产智能制造系统的进步贡献一份思路. 在未来的研究中, 将不断精细该系统各个模块, 开发更多的指令交互, 并进行更深度的工业智能化改造.

参考文献
[1]
Fries C, Fechter M, Nick G, et al. First results of a survey on manufacturing of the future. Procedia Computer Science, 2021, 180: 142-149. DOI:10.1016/j.procs.2021.01.137
[2]
Jeske T, Würfels M, Lennings F. Development of digitalization in production industry—Impact on productivity, management and human work. Procedia Computer Science, 2021, 180: 371-380. DOI:10.1016/j.procs.2021.01.358
[3]
任磊, 贾子翟, 赖李媛君, 等. 数据驱动的工业智能: 现状与展望. 计算机集成制造系统, 2022, 28(7): 1913-1939. DOI:10.13196/j.cims.2022.07.001
[4]
高士根, 周敏, 郑伟, 等. 基于数字孪生的高端装备智能运维研究现状与展望. 计算机集成制造系统, 2022, 28(7): 1953-1965. DOI:10.13196/j.cims.2022.07.003
[5]
丁飞, 董天文, 张海涛, 等. 印制电路板的清洗技术. 2019中国高端SMT学术会议论文集. 成都: 四川省电子学会SMT专业委员会, 2019. 292–297.
[6]
冯欣宇, 胡钱旺, 俞杰. 气相清洗机系统设计. 机械工程与自动化, 2019(5): 139-140. DOI:10.3969/j.issn.1672-6413.2019.05.054
[7]
孔祥祯, 杨江平, 刘东青, 等. 装备中的电路板超声波清洗实验分析. 空军预警学院学报, 2017, 31(4): 297-300. DOI:10.3969/j.issn.2095-5839.2017.04.014
[8]
王英平. 离心清洗技术在印制电路板清洗中的应用. 电子测试, 2017(8): 102, 101. DOI:10.16520/j.cnki.1000-8519.2017.08.050
[9]
王晨, 程璐军, 丁诗炳, 等. 航空电子产品印制电路板组件中性清洗技术研究. 航空电子技术, 2019, 50(3): 51-56.
[10]
Craw RG, Perry CJ. Water treatment systems and methods of treating water: US, US10981802B2. 2021-04-20.
[11]
肖立煌. 一种双门的水基型自动清洗机. 2019中国高端SMT学术会议论文集. 成都: 四川省电子学会SMT专业委员会, 2019. 298–304.
[12]
谢芳, 张红波. 一种PCBA板清洗用丝网清洗机: 中国, CN202123200122. X. 2022-06-28.
[13]
中华人民共和国工业和信息化部. SJ/T 11639-2016 电子制造用水基清洗剂. 2016.
[14]
中华人民共和国信息产业部. SJ 20896-2003 印制电路板组件装焊后的洁净度检测及分级. 北京: 工业电子出版社, 2004.
[15]
中华人民共和国信息产业部. SJ 20883-2003 印制电路组件装焊后的清洗工艺方法. 北京: 工业电子出版社, 2004.
[16]
郝丛雨. 基于SPC的发动机总装车间质量控制研究[硕士学位论文]. 重庆: 重庆理工大学, 2022.
[17]
Viharos ZJ, Jakab R. Reinforcement learning for statistical process control in manufacturing. Measurement, 2021, 182: 109616. DOI:10.1016/j.measurement.2021.109616
[18]
Ng JJ. Statistical process control chart as a project management tool. IEEE Engineering Management Review, 2018, 46(2): 26-28. DOI:10.1109/EMR.2018.2834379
[19]
国家市场监督管理总局, 国家标准化管理委员会. GB/T 17989.2-2020 控制图 第2部分: 常规控制图. 北京: 中国标准出版社, 2020.
[20]
王熠琛, 张明聚, 李立云, 等. 基于统计过程控制的建筑沉降监测分析方法. 北京工业大学学报, 2022, 48(9): 952-960. DOI:10.11936/bjutxb2021060007