基于C#语言的PowerMill模具零件加工软件的二次开发

2022-03-24 10:50池聖財陈泽中
模具工业 2022年3期
关键词:二次开发刀具模具

0 引 言

随着智能制造业的发展,汽车装备工程中对模具的精度、加工效率等提出了越来越高的要求

。在模具CAM技术方面,面向模具零件加工编程的PowerMill软件相比UG NX软件占用系统资源少、操作相对简单,同时可以根据企业的需求进行基于PowerMill的宏命令定制二次开发,因此在制造行业中被广泛应用。黄志江等

根据汽车覆盖件模具修边刀块的形状特征、刀块单件加工工艺和编程技术,运用Visual Basic.NET编程语言对PowerMill编程软件进行二次开发,生成修边刀块单件加工的自动编程插件,实现了数控(numerical control,NC)编程的智能化、自动化和标准化。尹健磊等

针对应用PowerMill加工模具零件电极时重复劳动多、编程效率低等问题,以Visual Basic6.0为开发平台,利用宏命令对PowerMill进行二次开发,建立了电极实例库、刀具库和工艺模板库等自动编程管理系统,提高加工效率,降低生产成本。由此可知,只要开发人员熟练掌握PowerMill和对应的编程开发语言,可实现两者的有效链接,完成对PowerMill的二次开发,发挥软件的最大效能,并服务于不同需求的客户,对提升工作质量和效率有重要的作用

基于C#编程汇编语言,通过动态链接库文件(.dll)实现了PowerMill和C#用户操作界面的动态链接,并且根据企业的需求将需要的PowerMill模块整合到同一个软件操作界面中。该方式不仅可以加快NC编程人员的编程效率,还能根据程序员的需求修改相应的C#编程内容以实现不同模块功能的整合。

1 二次开发模块系统设计

在开发软件系统之前要进行需求分析,明确需要解决的问题以及系统应当具备的功能。

(2)合适的考评激励机制。学校现有的管理制度中,将教师指导大学项目获得结题纳入了实践工作量计算,互联网+、获奖的学科竞赛有获奖奖励,但更多的其他创新创业教育则没有纳入教师的报酬和工作量计算之中,学校应进一步和一线教师进行交流,了解现有师资对专创一体化的投入情况、开展进行、观念等,制定清晰的投入回报与工作量计算标准。对于在创新创业教研、实践方面有突出表现的教师(团队)给予适当的物质、精神奖励,激发教师开展创新创业教育的积极性。

基于C#的PowerMill软件二次开发设计模块如图1所示,根据软件实际应用需求将PowerMill二次开发所需要的模块总结为以下4点。

(1)实现C#和PowerMill软件的动态链接。

(2)归纳需要使用的PowerMill软件功能,将其整合到1个用户图形界面(graphical user interfaces,GUI)中。

(4)将模具零件加工常用的前处理、刀具路径设置、后处理等3个模块整合到1个功能界面中,缩短工程人员的操作时间。

(3)在开发包含所有需要功能的前提下,尽可能简化代码和操作界面,使工程人员方便操作,适当增加程序注释以方便工程人员对程序进行删改。

1.1 建立动态链接库

动态链接库(dynamic link library,DLL)是实现共享函数库概念的一种方式,即动态链接库程序内部的代码可以被其他外部程序调用,进行资源共享。DLL中有对话框模板、字符串、封装函数等多种资源。首先为了连接PowerMill软件和C#汇编语言窗口,需要编写一个可使其他应用程序进行访问的动态链接库

具体的实现原理如下:设计实现模型区域清除功能的窗口,如图9所示,将需要用到的参数全部整合到一个界面框中。

股骨颈骨折术后要恢复患者髋关节功能,需配合有效的功能锻炼。常规功能康复训练对于老年术后患者应用效果有限[1]。并且大多数老年患者术前多合并糖尿病、高血压等疾病,长期卧床更易导致肌肉萎缩、下肢深静脉血栓等并发症发生。所以,在本研究中,针对手术治疗的股骨颈骨折患者应用阶段性康复功能训练,以期提高患者预后,现报告如下。

在汇编窗口中,将类库文件引用到PowerMill项目文件中,并通过图3所示的类库引用语句,可实现PowerMill软件和C#汇编窗口的动态链接。

以选择模型区域清除功能为例,在前处理功能模块选择模型区域清除时,图8中的【功能-1】菜单栏会根据选择的策略发生动态变化。

在C#相应的程序模块中,通过引用生成的PowerMill插件路径,可将需要的动态链接库链接到需要的程序中。

1.2 前处理模块设计

PowerMill软件在进行刀路编程前,一般要对模型进行前处理。前处理分别为建立用户坐标系、补破孔、建立毛坯和导入刀具模板四大类。采用C#汇编语言的用户界面框架功能(windows presentation foundation,WPF)实现功能的整合。前处理功能模块的整合如图4所示。

完成刀具导入前处理之后,需要设置每个刀路的路径参数。但由于每个刀具路径的功能不同,需要设置一个根据不同选项而动态变化的参数设置界面。通过使用类的继承功能,实现根据刀具路径功能的选择显示不同参数设置界面,通过继承类的函数完成界面的动态变化,如图7所示。

其中,以建立用户坐标系功能为例,PowerMill软件自带的编程识别语言为宏命令文件,可将PowerMill的宏命令引用到WPF中按钮控件的函数中,通过设置命令传递函数CommissOrder()使C#中的宏命令通过函数传递到PowerMill中,即可通过C#汇编窗口控制PowerMill的运行流程。

通过上述方式,可将创建用户工作平面命令传递到PowerMill中。同理,可分别完成建立用户坐标系、补破孔、建立毛坯和刀具模板程序的编写。

命令传递函数CommissOrder()如下:

上述代码中,Coordinate()为实现建立坐标系按钮的设置函数,CommissOrder()为发送宏命令CREATE WORKPLANE到PowerMill中的函数。

试验竹林为集约经营的连片毛竹林,在同一类型林分内选取立地条件、经营水平相近,坡度20°~35°的坡面设置20 m × 20 m的样方18个作为调查样地。样地四周用绳索进行标识,四角用木柱标志并标样地号,并对标准地的立柱和绳索进行保护,避免损坏。

2 刀具路径与参数设置模块设计

PowerMill软件之所以能够进行零件的仿真加工,是因为在编程方面有庞大的指令系统,可具体编辑实际加工中的大部分参数,也可以自由编辑刀具路径,并配备自动碰撞检查、过切等防范措施

。但在传统加工过程中,编程人员需要按照工序一步步设置参数,若将PowerMill中常用的代码整合到C#程序的应用程序接口(application program interface,API)中,可缩短模具数字控制(numerical control,NC)代码的编写过程,同时也能减少人为因素导致的参数错误。刀具选择界面如图5所示。

综上,以铂类为基础的3种化疗方案均能有效控制乳腺癌,具有较好的临床疗效,均可以作为临床上治疗晚期TNBC的方案选择。

在数控模具零件加工中,常用的功能有模型区域清除、模型残留区域清除、平行精加工、等高精加工、陡峭和浅滩加工、清角精加工等六大加工刀路,也需要将PowerMill中已导入的刀具模板中的刀具名称导入到相应的下拉菜单。模具零件加工有3种常用的边界,也需要将这些功能加入到前处理界面中。通过使用C#程序中的GroupBox、ComboBox和Button三个按钮即可实现上述前处理功能的API界面。刀具导入界面如图6所示,刀具导入的代码如下:

4.1 水肥管理:苦瓜生长期长,结果多,对肥水的需求高。定植后结合灌水,每隔15~20天追一次三元复合肥,每亩10千克。开花结果期7~10天喷施1次0.2%尿素和0.3%磷酸二氢钾混合液。

本工作针对非参数回归模型,在Ferguson给出的总体分布函数的贝叶斯估计基础上,进一步得到一个光滑的条件分布估计.基于该分布最终构造出回归函数的贝叶斯估计,并研究该估计的收敛性质,给出该估计中超参数的合理表达式.最后,通过实证分析将非参数贝叶斯方法与局部线性回归进行了比较.

这些都是力所能及的事情,而且,我也承认,在爱里使劲儿表现也是一种需求。这不算什么。我的一个朋友讨厌一切带毛的东西,讨厌的程度是家里人连件裘皮大衣都没有,可他女朋友就是爱狗,这样的相爱让他必须接受身上有毛的狗和身上粘有狗毛的女朋友。有一天,我看到他带着狗出来遛弯儿,目光淡定从容,他笑笑说:“这有什么办法!”他还顺手把狗身上粘的树叶摘下去。所以,我的意思是,你为她做一些你之前很排斥的事情,也是一种使劲儿的表现。

通过查阅开发者手册,根据所述流程可将C#软件生成的类库PowerMill.dll添加到开发项目文件夹目录中,图2表示通过将生成的文件包放入文件夹以便快速找到动态链接库。

转到前处理模块的策略选择下拉菜单的定义函数,设计代码使之可根据不同的选项显示不同的操作界面,代码如下:

上述代码中ProcessFunction()为弹出模型区域清除功能的函数,双斜杠上面的函数为覆盖之前选择功能的函数。

3.幸福需求呈现多种层次。通过对比发现,员工对于幸福的需求情况,也存在着较大差异。约60%的员工认为“家人平安健康、家庭和睦、子女优秀”最能够让自己感到幸福,约42%的员工认为“经济宽裕”是影响幸福的最主要因素,约19%的员工认为“事业上良好的发展空间”、“团队氛围好,有归属感”等职业需求是影响幸福感的关键因素。在提到对未来幸福生活进行规划时,员工给出了如下答案:幸福是在充分物质基础上做自己喜欢的事;幸福是自由自在无拘无束;幸福是在困境中有人帮助;幸福是自我价值的体现;幸福就是多和家人在一起。

以实现覆盖已选择的等高精加工界面的函数DengGaoJingJiaGong_FuGai()为例,通过设计与【功能-1】界面相同大小的空白窗口,使之覆盖之前选择好的刀具策略窗口,如图10所示。实现覆盖之前选项界面的函数如下:

泛海控股官网显示,2003年1月,市长李宪生在武汉市十一届一次人代会所作的《政府工作报告》中,站在武汉未来城市发展的高度,正式提出在汉口王家墩老机场原址建设“武汉王家墩商务区”的战略部署,武汉CBD建设正式拉开序幕。

通过以上的编辑可实现根据下拉菜单选项动态变化的窗口界面,具体实现结果如图11所示,2种界面窗口通过下拉菜单选项进行动态切换。

同理,设计好余下的窗口实现功能,即可完成刀具路径与参数设置模块的设计。

3 后处理功能模块的设计

完成刀具路径参数的设置后,需导出所有加工过程中需要的时间,因此有必要设计后处理界面窗口。

将刀具路径和参数模块设计步骤中计算好的刀路导入总刀路列表中,同时根据粗加工、半精加工、精加工工步,将对应的刀具路径导入相应的模块中分别进行NC程序输出。

以粗加工工步程序输出为例,后处理模块设计界面及生成NC程序的操作步骤如图12所示。

最后通过设计好的XML文档,输出每个步骤所需要的时间参数,完成所有操作流程和粗加工、半精加工、精加工的工艺时间表,因篇幅有限,仅显示粗加工工步的总时长,如表1所示。

4 结束语

结合某汽车公司实际模具零件加工工艺流程,针对PowerMill软件主要应用群体NC工程师在实际生产过程中遇到的问题,如PowerMill软件的学习周期过长、软件操作繁琐、重复性劳动多等因素,导致编程过程中人为错误增加,通过基于C#语言的二次开发插件,将需要的功能进行模块化、体系化整理,设计了可快速实现模具三维的坐标系设定、破孔修补、建立毛坯和刀具模板导入的前处理功能,流程化计算刀具路径设定和设计API窗口,批量化导出刀具路径最终结果的后处理等三大常用功能模块,缩短企业NC编程开发人员的时间,提高企业生产能力。

[1]付腊梅,曹 伟,李永刚,等.基于C#二次开发AutoCAD在汽车制造装备行业中的应用[J].锻压装备与制造技术,2021,56(6):130-134.

[2]黄志江,雷文臻,韦彦少,等.PowerMILL二次开发在修边刀块单件加工中的应用[J].模具工业,2015,41(1):71-74.

[3]尹健磊,褚 忠,刘浩然,等.基于PowerMILL的模具零件电极自动编程管理系统研究与开发[J].模具工业,2014,40(8):61-64.

[4]周淑芳,郑 义,刘纪新,等.基于VB技术的PowerMILL二次开发与应用[J].科技与创新,2016(2):6-7.

[5]尹健磊.基于PowerMILL的注塑模电极加工自动化编程系统研究[D].青岛:青岛理工大学,2014:5-8.

[6]陈 盼.基于DIC的变形测量算法研究及动态链接库设计[D].合肥:合肥工业大学,2014:2-3.

[7]彭 婧,李胜利.基于PowerMill的大赛典型零件数控仿真加工[J].信息记录材料,2021,22(5):95-97.

猜你喜欢
二次开发刀具模具
数控刀具管理系统的设计及开发研究
例谈对高中数学教材中习题的二次开发
浅谈CAD软件二次开发的方法及工具
模具部
核燃料环形芯体压烧模具的设计
核燃料环形芯体压烧模具的设计
例谈课本习题的“二次开发”
硅胶刀具清洁器
用于阳极管生产线模具预安装的结构
生路