基于PyQt5的铸造过程数据管理软件开发*

2023-01-30 04:08周乐尧汪东红刘淑梅邱慧慧龚潜海
计算机时代 2023年1期
关键词:模型库数据管理铸件

周乐尧,汪东红,刘淑梅,姜 淼,邱慧慧,龚潜海

(1.上海工程技术大学材料工程学院,上海 201620;2.上海交通大学材料科学与工程学院上海市先进高温材料及其精密成形重点实验室;3.嘉善鑫海精密铸件有限公司;4.湖州鼎盛机械科技股份有限公司;5.浙江佳力风能技术有限公司)

0 引言

铸造是机械制造的重要基础,铸造产量可以反映出经济是否滞涨。计算机技术为铸造行业带来了新的工具,可以指导生产,检验质量,能切实减少生产和人力成本,同时缩短生产周期,适应企业协同发展[1]。

传统铸造行业数据无法复用,缺乏科学的管理模型和技术一直是行业关心的问题,而铸造行业信息智能化仍处于起步晚、理解不足,数据管理停留在数据增删改查的阶段。王建涛等在PDM(Product Data management)基础上建立了集成化产品数据管理的模型,但未提出具体的开发方案[2]。赵振聚焦于航天材料以B/S 架构、Struts 框架和Oracle 数据库开发了基于航天碳纤维复合材料构件的工艺数据库[3]。王宁以更宏观的角度提出了基于CMMI(Capability Maturity Model Integration)的大数据采集管理系统的方案[4]。计效园开发了基于单件化管理和智能化方法的ERP(Enterprise Resource Planning)系统——华铸ERP[5]。

目前,铸造行业信息化主要有三个问题:工厂材质标准数据缺少可靠管理、铸件结构与模型数据难以保存和复用、铸件缺陷检测依赖人力且伴随着一定的错误率[6]。本文针对以上三个问题,开发了基于PyQt5的铸造过程数据管理软件,由材料成分与性能库、铸件结构与模型库、铸件缺陷识别三部分组成,完成了铸件材料成分、铸件模型、冶金质量的数据管理。

1 软件总体设计及开发步骤

1.1 软件总体设计

传统铸造企业经过多年的发展,原料成本和人力成本的优势减弱,企业需要提升铸件产品质量,提高企业核心竞争力。经过需求分析,主要问题在于材质标准数据难以存储及管理、铸件产品模型数据难以保存及复用、铸件产品质量控制依赖人力及手段老旧等问题。基于以上问题,本文基于PyQt5 搭建了铸造过程数据管理软件,主要由材料成分与性能库、铸件结构与模型库、铸件缺陷识别三个核心模块组成,工具栏由用户管理、材质管理和打印功能组成。数据管理软件登录页如图1 所示,包含工号、密码登陆,在菜单栏可以注册新用户。材料成分与性能库包含了材质的牌号、标准、具体成分信息,用户可以扩充删减数据库材质信息,也可以根据材质标准和牌号查询数据并打印;铸件结构与模型库包含了铸件的二维、三维模型,保证了从铸件的材质性能到浇注系统模型都可以进行可靠的管理;铸件缺陷识别工具使用YOLOv5 目标检测算法,能够检测铸件产品缺陷,及时淘汰次品,提升铸件产品质量。

图1 铸造过程数据管理软件登录页

1.2 软件开发步骤

不同于Web 应用依赖于浏览器JavaScript 解析,移动App性能低于PC机且安全性有待考察,桌面式应用更符合工业类软件的需求。Qt 是C++开发的GUI工具集,包含跨平台类库、集成开发工具集和跨平台IDE(Integrated Development Environment),在不同的操作系统上重新编译即可运行。PyQt5允许Python 调用Qt的强大API库[8]。

⑴UI设计

Qt Designer 设计符合MVC 架构,实现了视图和逻辑的分离,代码简洁,开发周期短。Qt Designer 提供多种控件的拖拽设计,可及时查看控件效果。Qt Designer 生成的.ui 文件可以通过Pyuic5 工具转换成.py 文件,巧妙地解决了开发人员UI设计困难的问题。QSS与CSS类似,可以美化界面及控件。

⑵程序开发及方法完善

UI 部分结束之后,需要编写相应按钮、框的槽函数及信号,与数据库连接,在主窗口类中继续完成相应类的扩充。

⑶程序打包

程序编写完毕后可以由Pyinstaller 将Python 文件打包成可执行程序,在不同的设备上进行测试,调整相关bug,最终发布。

2 铸造过程数据管理软件功能设计与应用

2.1 铸造过程数据管理软件主页

铸造过程数据管理软件主视图选择清晰的底色,如图2所示,主要由四个区域组成,分别是左侧导航栏、右侧功能视图,菜单栏和工具栏。左侧导航栏由材料成分与性能库、铸件结构与模型库、铸件缺陷识别工具组成;右侧功能视图包含筛选查询操作并展示数据结果;菜单栏包含用于注册、修改密码、登录、退出等操作;工具栏包含打印当前、打印所有、用户管理、添加材质、淘汰材质。

图2 铸造过程数据管理软件主页

2.2 材料成分与性能库

材料成分与性能库由铸钢、不锈钢、铸铁、高温合金四个二级功能组成,用户登录系统之后,为保证数据安全不直接显示材质标准,点击左侧导航栏具体的材质之后显示相关数据。用户在选择的材质数据库中可以根据牌号或者材质标准查询相关材质标准信息。如图3 所示,在铸钢材质标准库中查询材质标准为DIN 的材质标准信息,操作结果基本在0.1s 内完成。用户需要打印数据库所有材质标准信息,主界面中无需进行查询操作。如需打印部分数据,主界面中进行查询操作之后才可以进行打印操作,否则提示表不确定。

图3 查询材质(材质标准为DIN)

材料成分与性能库是可扩充的。如图4 所示,用户首先在材料种类中选择自己需要扩充的材料性能库,分别输入材质代号、材质标准以及每个元素的含量,点击添加按钮即可扩充数据库。淘汰材质标准时只需要输入材质代号,其余具体信息自动补充,点击淘汰材质按钮后,数据库的相关记录会被删除。

图4 添加材质标准

2.3 铸件结构与模型

铸造行业模拟过、生产过的零件数据如果不存储,实际就会产生重复性工作。为了提高铸造过程数据的可复用性,软件开发了铸件结构与模型库,主要由二维模型、三维模型两个二级功能组成。

在铸造过程数据管理软件中,用户点击模型库的二维模型,可以上传有关铸件的二维图纸信息,点击三维模型上传铸件结构模型信息。上传完成的二维、三维模型在模型库中显示,也避免了相应铸件信息的数据重复管理。如图5 所示,用户可上传铸钢、铸铁、高温合金、不锈钢三维铸件结构模型信息,也可上传铸钢、铸铁、高温合金、不锈钢浇铸系统模型信息,所有的模型信息都保存在数据库中,不易丢失。

图5 上传模型

2.4 铸件缺陷识别模块

传统质量审核伴随人力资源的消耗,同时人工审核存在一定的错误率。为了减少人力和生产成本,引入了一种人工智能目标识别检测缺陷算法--YOLOv5(You Look Only Once v5)。YOLOv5 是一种单阶段目标检测算法,该算法在YOLOv4 的基础上做了改进,比一般的神经网络算法均值权重文件更小,训练速度更快,适合应用于工业场景下缺陷识别与检测[9]。在铸造过程中由于工艺、材质性能和合金凝固的影响,不可避免地出现孔洞、疏松、夹杂等缺陷,有缺陷的产品不能应用于后续工业生产与制造,该算法应用于生产线可及时发现产品缺陷[10]。

如图6所示,YOLOv5s网络结构由Input、Backbone、Neck、Prediction四个部分组成,输入端上传图片,采用Mosaic 数据增强方式,自动计算数据集的最佳锚框值,由于参数量少,预测速度更快。如图7 所示,模型迭代200 次以后Precision(准确率)、Recall(召回率)等模型参数逐渐收敛,趋于拟合。结果发现表明在迭代300 次后,识别准确率均在98.9%以上,召回率在99.3%以上,模型在测试集上取得了较好的结果。

图6 YOLOv5结构

图7 YOLOv5 参数收敛情况

铸件缺陷检测工具左侧导航栏由选择模型、初始化模型、图片检测、视频检测和摄像头检测组成,右侧检测信息可以直接显示缺陷的详细坐标信息,进行视频检测和摄像头检测时可以通过暂停按钮实现暂停检测,也可以直接结束检测。相较于图片检测,视频和摄像头检测更适合生产线场景。检测案例选择叶轮实物图,叶轮的缺陷主要由裂纹、缩松和气孔三种缺陷组成,如图8 所示,识别结果为裂纹的置信度为85%,缩松的置信度为87%,气孔的置信度为85%,总体测试集样本识别精度较高。

图8 叶轮缺陷识别效果

3 结论

本文分析了铸造行业信息化中存在的实际问题,开发了基于PyQt5 的铸造过程数据管理软件,建立了材料成分与性能库,用户可以通过软件管理和打印材质,获得清晰的铸件材质数据;建立了铸件结构与模型库,用户可以通过软件,上传和存储铸件结构模型以便相似铸件数据的复用;搭建了铸件缺陷识别工具,使用目标检测算法,用户可以通过图片、视频和摄像头来检测铸件缺陷,获得即时的缺陷信息,识别准确率均在98.9%以上,召回率在99.3%以上。此外,本文使用的是轻量级数据库,数据存储有限,后期的开发可以使用大型数据库。

猜你喜欢
模型库数据管理铸件
2021 年中国铸造行业数据发布
GJB 2896A-2020《钛及钛合金熔模精密铸件规范》解读
企业级BOM数据管理概要
定制化汽车制造的数据管理分析
海洋环境数据管理优化与实践
CTCS-2级报文数据管理需求分析和实现
废铸件推出装置
环形凹槽类铸件铸造工艺
基于模型库系统的金融体系流动性风险预警机制研究
基于模型库的现代成本会计计量系统研究