赵玉善, 郭 慧
(华东理工大学机械与动力工程学院,上海 200237)
基于NX/Open的悬挂式爬坡输送线的碰撞检测仿真系统开发
赵玉善, 郭慧
(华东理工大学机械与动力工程学院,上海 200237)
在悬挂式上下坡输送线的结构设计中,预测和有效避免挂件在上下坡过程中的动态碰撞是企业的迫切需求。针对该输送线需满足零件设计参数化、碰撞检测可视化的特点,开发了一种以NX/Open API为数据接口的快速检测爬坡过程中挂件是否发生碰撞的仿真系统。实现了对已建模零件的参数化修改,以及对爬坡输送线进行自动化的虚拟装配和运动仿真,通过不同参数下的再仿真试验及其效果反馈,最终达到消除碰撞和优化结构的目的。
NX二次开发;碰撞检测;虚拟装配;运动仿真
悬挂式输送线是根据企业车间的工艺线路,以恰当的速度实现车间内部、车间与车间之间连续输送成件物品的设备。其允许实体挂件在空间上下坡和转弯,且布局方式自由灵活,占地面积小,广泛应用于机械、汽车、电子、家用电器、轻工、食品等行业的大批量流水生产作业中。
在实际生产中,挂件在上下坡时容易受到斜坡坡度、吊具长度、挂件尺寸及其间距等综合因素的影响而发生碰撞,属于动态可碰撞问题,难以用常规作图法进行求解[1]。国内外对输送机上下坡和转弯过程中的运动规律和受力性能研究有限[2-5],面临的主要问题有:①缺乏对斜坡阶段的动态碰撞仿真研究;②基于设计需求,还没有一个专门解决此类问题的快速检测系统。在结构设计上,上下坡输送线可简化为爬坡机构,本文基于NX平台,开发了一种能够快速检测爬坡机构是否发生碰撞的仿真优化系统。该系统采用UIStyler对已建模零件的可变参数进行界面化设计,使用户能够同时修改所有零件的可变尺寸;根据零件的装配序列和约束关系,以VS2010为编译环境,实现装配环境下零件的自动化装配;在仿真环境中,以NX/Open API为接口模板,对运动仿真模型的前处理设置进行面向过程的开发,得到自动化仿真的结果。设计人员可通过仿真效果的反馈,重复进行结构参数的更改和优化,最终消除输送线爬坡阶段的碰撞现象。
悬挂式爬坡输送线如图1所示,由架空轨道、牵引链、滑架、吊具以及驱动装置等组成。
图1 悬挂式爬坡输送线
挂件被固定在吊具上随牵引链缓慢地沿轨道运行,为提高生产效率企业往往以较高的密集度排列挂件。在爬坡的首尾转向阶段,由于加速度与重力的影响,挂件的空间姿势将发生改变,当挂件尺寸比较长时,往往会出现工件碰撞的现象,影响输送线的正常运行,急需开发一种仿真系统以确定工件之间在给定斜坡上爬行时不发生碰撞的最小距离。
机构的复杂度直接影响装配和运动仿真的速度,为此,必须对爬坡输送线进行合理的机构模型简化,机构中各零件的简化模型如表 1所示。为提高仿真的实际效果,简化机构时必须遵循 2个基本条件:①允许替换部分零件或局部结构,但不能改变原机构的运动形式和自由度;②简化后的机构模型必须能够模拟实际情况。
表1 爬坡机构的简化模型
为方便整个碰撞检测仿真系统的反复优化试算,需要一种能够快速对各部件参数进行修改的参数化界面,参数修改器的开发将大大提高整个仿真系统的运行速度。
NX/Open API是NX的直接编程接口,同时也是开发商用来创建大量应用程序以增强 NX功能的辅助工具,NX/Open应用程序一般由菜单、对话框、应用程序DLL和NX/Open API库函数等组成。针对本文各模块应用程序的开发,给出了如图2所示的NX/Open开发应用程序的一般框架,图3所示为NX开发的项目目录结构,当NX启动时会在给定目录中寻找并加载相应的应用程序和资源。
图2 NX/Open的应用程序框架
图3 项目目录结构
参数修改器的应用程序通过将部件设置为“可工作部件”并依次查询和设置部件属性对象标识,最终完成对部件原型尺寸的修改。参数修改器的程序开发流程如图4所示。
图4 参数修改器程序设计流程图
应用程序涉及3种典型的UF_ATTR属性操作数据结构:UF_ATTR_value_s、UF_ATTR_value_u以及 UF_ATTR_part_attr_s,下面给出了关于吊具参数修改的部分程序代码:
将DLL文件、菜单文件、对话框文件以及bmp图片按照图 3所示的目录结构进行放置,并使系统环境变量UGII_USER_DIR指向开发目录,然后打开NX并新建一个装配模型,选择定制菜单,可看到如图5所示的参数修改器的人机对话框界面。
图5 参数修改器对话框界面
利用所开发的参数修改器,可以快速方便地修改调整悬挂式爬坡输送线牵引链、吊具以及挂件的参数,为仿真系统的反复优化试算提供了便捷。
由于挂件在上下坡时除了受到斜坡坡度、吊具长度、挂件尺寸及其间距等因素的影响外,还受到惯性与重力的影响,且挂件之间的碰撞发生在动态过程中,难以用常规作图法精确求解。故需要虚拟装配[6]和运动仿真进行虚拟检查。
在NX提供的装配环境中,相对于完全依赖操作者进行手工装配的传统装配方式,采用NX/Open API二次开发的方式进行自动化装配,可极大地提高装配效率。装配体是以树型结构来组织装配体中的组件和零件,而部件与子部件之间的装配关系则通过部件实例来描述[7]。图6所示为爬坡机构的装配树结构,从中可以看出,一个装配体文件只能有一个装配树,或者说只能有一个根节点,且部件事例(occurrence)与部件实例(instance)之间呈现出多对一的映射关系,当装配体AUTO被加载为显示部件后,系统为其分配一个部件标识即part_1,AUTO部件包含了1个对象(标识为Obj_part_1)和3个装配部件实例轨道(GUI)、吊具(DIA)和挂件(GUA)。
图6 爬坡机构的装配树结构
在自动化装配前,为方便数据的描述,可将装配体部件之间的装配关系做适当简化。编程实现爬坡虚拟装配自动化包含以下几个步骤:
(1) 加载主动组件。使用函数 UF_ASSEM_ add_part_to_assembly可将组件从文件路径加载进装配体,同时可在指定的位置和方位将部件放入工作部件层中,实现了装配部件与工作部件的上下级装配关系。
(2) 主动、从动组件的事例标识获取。通过函数UF_ASSEM_ask_part_occ_of_inst可直接获取主动组件的事例标识,而从动组件的获取则需要先确定从动组件的部件标识,然后获取从动组件的所有事例标识,最后通过二者的匹配,最终确定从动组件的事例标识。
(3) 约束对象标识的获取。将对象所在的部件设置为工作部件,再利用函数 UF_OBJ_cycle_ by_name获取约束对象的标识。
(4) 约束关系的建立。装配约束可以看成是主动件A配合到从动件B的针对部件原型的虚拟关系,爬坡机构主模型的装配约束可按照表 2所述步骤进行建立。
表2 建立装配约束的步骤
爬坡机构涉及的装配约束关系有 Touch、Align、Center和Distance,图7展示了爬坡机构装配模型中的距离约束,根据实际情况,应使吊具间距 ds等于挂件两孔的距离 d5,同时挂件间距 S作为影响碰撞的主要设计参数,应以界面化编辑。
图7 距离约束
新建一个装配部件,选择关联的定制菜单,浏览子部件并输入挂件间距S,得到如图8所示的调用爬坡机构自动化装配程序的运行结果。
图8 自动装配的运行结果
运动仿真直接使用主模型的装配文件,通过添加机构连接和驱动,模拟机构的实际运动,进而分析机构的运动规律,最后根据分析和研究的动力学数据对机构模型提出改进和优化[8]。运动仿真建立的过程由前处理和后处理组成,针对爬坡机构的前处理自动化开发,其程序设计流程如图9所示。
图9 前处理程序设计流程图
仿真模型的前处理包括定义连杆(link)、添加运动副(joint)和设置驱动(driver)。其中轨道作为机架应定义为固定连杆(fixed joint);运动副涉及类型有平面副(planar)、共线副(inline)以及点在线上副(point on curve),而平面副和共线副的定义是仿真成功的关键;为使挂点在牵引链上的相对位置不发生改变,可将所有的点在线上副添加相同的恒定初速度;最后为两个挂件连杆定义干涉。运动仿真前处理的建立如图10所示。
图10 建立仿真前处理
后处理由解算方案和动画组成,其中解算类型为“常规驱动”,分析类型为“运动学/动力学”,时间由仿真效果反馈确定,步数控制在 300步以内(步数越多,解算时间越长),重力方向为“–Z”,然后选择动画,即可观看仿真结果。当采用图 5和图8中的原始参数及约束距离时,得到如图11所示的仿真结果,动画显示有挂件干涉的现象。将干涉结果反馈给系统,重新调整参数,进行新一轮运动仿真,直至不发生干涉为止。
图11 碰撞仿真结果
以NX为平台,基于悬挂式爬坡输送线存在的防碰撞设计问题,利用NX/Open与VS2010实现了装配环境下的部件参数修改器、自动化装配方案以及运动仿真前处理自动化设置的开发。根据仿真试验结果的反馈,如发生碰撞,可通过修改器快速修正主模型参数,经过再仿真,反复检查和对比爬坡机构的碰撞情况,最终达到优化机构和消除碰撞的目的。设计人员也可通过虚拟仿真获取不同参数下挂件临界碰撞的数据表,为安全生产提供保障。
[1] 王志强, 洪嘉振, 杨辉. 碰撞检测问题研究综述[J].软件学报, 1999, 10(5): 545-551.
[2] 黄大巍, 高秀华, 邢浩. 双轨悬挂自行输送机动力学建模及仿真分析[J]. 系统仿真学, 2006, 18(11): 3138-3142.
[3] 张志贤, 刘检华, 宁汝新. 虚拟环境下平面连杆机构运动仿真实现技术研究[J]. 计算机研究与发展, 2010, 47(6): 980-986.
[4] 刘乐全. 基于 ARX的悬挂输送机运行轨迹仿真与受力分析计算[D]. 南京: 南京航空航天大学, 2006.
[5] Sugimoto K. On the bases of wrench spaces for the kinematic and dynamic analysis of mechanisms [J]. Journal of Mechanical Design, 2003, 125(3): 552-556.
[6] 刘文, 刘艳斌, 张星. 基于虚拟样机技术的电梯动态设计与优化[J]. 图学学报, 2012, 33(6): 82-87.
[7] 周临震, 李青祝, 秦珂. 基于UG NX系统的二次开发[M]. 镇江: 江苏大学出版社, 2011: 45-186.
[8] 曹岩. UG NX 7.0装配与运动仿真实例教程[M]. 西安: 西北工业大学出版社, 2010: 180-220.
Development of Collision Detection Simulation System for Suspension Type Climbing Conveyor Line Based on NX/Open
Zhao Yushan,Guo Hui
(School of Mechanical and Power Engineering, East China University of Science and Technology, Shanghai 200237, China)
In the structure design of suspension type conveyor line having uphill and downhill function, to predicate and effectively avoid the dynamic collision of the pendants running in the slope have been enterprise′ urgent needs. In order to meet the requirement of parametric design on parts and visual collision detection for the conveyor line, a simulation system is developed for rapid collision detection for the climbing pendants with the data interface NX/Open API. The system is helpful to modify the modeling parts by the way of parameterization, and realize automation of virtual assembly and motion simulation for the climbing conveyor. Finally, the collision is eliminated and the structure is optimized through once more simulation test and its effect feedback under different parameters.
NX secondary development; collision detection; virtual assembly; motion simulation
TP 391.9
A
2095-302X(2015)06-0950-05
2015-06-23;定稿日期:2015-08-08
赵玉善(1988–),男,河南商丘人,硕士研究生。主要研究方向为机械设计及理论、NX二次开发。E-mail:yushanbluss@163.com
郭慧(1964–),女,江西赣州人,副教授,博士。主要研究方向为计算机图形学、逆向工程。E-mail:ghcad@163.com