自从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 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根据接收的指令实现各个组件的控制.
1.3 软件结构及设计
该系统以工业计算机为核心, 使用Visual Basic编程语言编制软件, 建立控制协议与PLC进行串行通信, 根据统计过程控制(statistical process control, SPC)的判别原则控制清洗程序, 并使用Access数据库将相关数据存储. 其结构如图3所示.
为实现基础的控制功能与权限管理功能, 该系统的启动流程设计为: 首先, 进行登陆操作, 根据登录账号的使用权限不同而显示不同的功能按钮; 然后, 控制软件与PLC通信获取各个传感器及高压电气设备的状态并显示在主控窗口上; 最后, 软件进入主控窗口等待不同的功能按钮被激活.
针对实现程序重构的功能, 该系统被设计成一个开放性的工作平台, 可根据不同按钮执行不同的功能. 其中“主控窗口”可实时显示设备状态; “程序控制”是主要控制清洗程序的界面, 在此可运行、选择或编辑需要运行的清洗程序, 用来满足前文的需求1、3、5、6和7; “参数设置”满足需求8、9和10的参数调节; “用户管理”进行访问控制管理, 提供安全性保障; “故障报警”提示必要的故障信息, 用来满足需求2与其他潜在需求. 其中主要的界面是“主控窗口”和“程序控制”, 如图4和图5所示
在程序控制界面编辑程序时, 根据控制协议将对应的命令设计为按钮事件. 例如: 当点击清洗泵旁的“开”按钮时, 会向上面的指令框中加入如下指令:
0010 [M0XD1] //开启清洗泵.
该设计实现了程序重构的功能, 通过点击按钮简化编程环境, 解决了编程时需要输入代码的问题, 适用于工业生产环境, 方便重新设计水清洗技术的工艺流程. 此外, 通过点击“载入”按钮可将当前程序激活, 通过“启动”按钮运行当前的清洗程序.
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) |
其中,
3σ准则指的是如果生产的产品在某一生产周期的质量采样值都处于
小概率原理与3σ准则相对应, 即不合格品的概率约0.27%. 如果在生产过程中有一定量的采样值不在
控制图是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) |
若生产过程偏离稳定状态就被称为异常, 具体体现是控制图中采样点的位置不符合统计概率学三原理的分布位置[20]. 在一个稳定的生产过程中, 通常有8个常用的判异准则, 分别是:
(1) 有1个点在
(2) 连续9个点在中心线的同一侧.
(3) 连续6个点递增或递减.
(4) 连续14个点中相邻点交替上下.
(5) 连续3个点中有2个点落在
(6) 连续5个点中有4个点落在
(7) 连续15个点在
(8) 连续8个点在中心线两侧且不在
异常的出现一般都具有引起该异常的原因, 例如: 判异准则(1)的原因有计算错误、测量错误、原材料不合格、设备故障等; 判异准则(3)的原因有工具逐渐磨损、维修逐渐失效等; 判异准则(7)的原因有数据错误、计算错误、数据分层不够等.
2.4 SPC的应用根据SPC的统计概率学三原理、控制图和判异准则, 该系统将SPC作为一个反馈模块, 采样点作为输入, 对应的控制结果作为输出. 该系统的控制系统框图如图6所示. 首先设备开启执行, 控制模块根据初始设定控制清洗模块执行, 然后SPC模块采集样本点数据并进行计算, 之后将得出的调整命令发送给控制模块, 最后控制模块进行命令执行, 直到输出的样本点合格时停止执行.
SPC在用于水清洗系统的过程控制时, 可将其设计为一个负责接受电阻值, 并输出下一次清洗的控制指令或完成清洗的模块. 在其内部有3步处理: (1) 计算控制图数据; (2) 判断当前的异常模式; (3) 根据设定的异常原因给出指令.
3 控制协议
控制协议是该软件控制PLC执行动作和设备联网的关键协议, 该系统中设计了4类指令: 设备开关指令、逻辑判断指令、数值设置指令和接口指令, 该软件上可识别并运行全部类型的指令; PLC中可识别并运行设备开关指令和数值设置指令; 无人运输车辆、工厂总控计算机和其他工业设备可通过接口指令与该设备软件通信. 控制协议具体设计为5位字符, 第1位字符确定“指令类型”, 第2位字符确定执行“组件编号”, 字符可由1位数字或字母组成, 剩余字符根据不同指令进行设定.
设备开关指令: 剩余3字符由“功能”和“动作”组成, 其中“功能”是2位字符, “动作”是1位字符, 如表1所示.
逻辑判断和数值设置指令: 剩余3字符由“动作”和“数值”组成, 其中“动作”是1位字符, “数值”是十六进制2位数字, 如表2所示.
接口指令: 在该系统涉及的工业互联网中, 接口指令需要提供设备状态、设置设备启动和停止. 因此接口指令剩余3个字符与设备开关指令类似, 由“功能”和“动作”组成, 其中“功能”是2位字符, “动作”是1位字符, 如表3所示. 例如: 当前总控台需要知道0号水清洗机的运行状态, 那么通过网络对0号水清洗机发送指令“S0QXZ”, 会收到该设备的回复指令“S0QXP”, 表示该设备已停止.
通过以上的协议指令可实现具有重构功能的自动化控制和基本的设备联网功能. 为了实现智能判断的功能设计了指令判断、过程判断和故障判断3个模块.
3.1 指令判断模块因为控制协议的存在, 该设备的水循环回路可以重构, 但在自主设计指令时, 有错误编程的可能, 因此设计了指令判断模块, 用来确保程序的正确性和安全性. 指令判断模块运行流程如图7所示.
首先需确定重构后的指令是否存在. 因为当前设备组件是固定且不需要扩展, 所以将这些指令均存入数据库中. 在保存重构后的指令程序时, 会将每行指令与数据库中指令对比, 确保指令存在.
然后确定指令是否满足水循环回路. 在数据库中保存了程序的水循环组件指令可设置的后继指令, 在命令设置错误时会进行标注, 只有满足水循环结构的回路时, 重构才会成功.
3.2 过程判断模块在该设备中, 设定在漂洗结束时收集电阻值, 再通过过程判断模块得出对应的指令结果, 以此控制设备的运行. 该模块根据SPC理论进行设计, 过程判断模块程序流程如图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个样本点及以上在
其他异常: 未在所包含的异常中情况出现时, 说明未清洗干净, 此时会自动执行一次清洗和漂洗程序.
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Ω, 满足合格模式, 则完成清洗.
在实际清洗中, 小面积的助焊剂相比大面积的助焊剂更难清洗, 所以图10选出两块具有小面积助焊剂黄色脏污进行对比. 图10(a)为清洗前的电路板, 图10(b)为清洗后的电路板, 在外观上可以看出, 黄暗色的助焊剂已被清洗掉, 经过离子残留测试也是合格的.
未改造前, 该设备1次全自动程序进行7次清洗和漂洗程序, 水清洗液在运行2次全自动程序(即14次清洗和漂洗)后进行更换; 改造后, 该设备与系统的各个模块均可正常运行, 且10批次清洗测试中总共运行59次清洗或漂洗程序, 平均每次清洗运行5.9次清洗可达到质量要求, 提升了约15%的清洗效率; 水清洗液在平均运行14.75次后进行更换, 提升了约5%的使用效率.
该系统与相似设备的控制功能对比如表4所示. 该系统设计对水清洗技术与工厂实际需求进行分析, 在实现水清洗机基础的功能上, 扩展了过程控制、程序重构和云端互联的3个主要的功能, 满足了各项需求, 所以该水清洗控制系统在一定程度上可满足节能省水的智能自动化控制要求.
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 |