0 引言
现在许多商业三维建模软件如CREO,NX,CATIA等都有自己专门的布线模块,但在实际布线应用中都存在着布线操作复杂、线轴文件管理混乱、无法输出布线信息文件等诸多问题。针对这一问题国外学者Robinson G将沉浸式虚拟现实技术应用线束设计中Thantulage GI将启发式搜索算法应用到线缆路径规划中,从理论层面解决布线效率低下等问题,也有诸多学者从软件层面入手,运用各三维造型软件提供的二次开发接口,开发智能布线系统。
本文运用二次开发技术开发辅助布线系统以弥补现有软件布线模块的缺陷。基于CREO平台,结合Visual Studio提供的MFC界面开发窗口,运用CREO/TOOLKIT二次开发语言,对线缆零件库的搭建、快速布线、线缆信息文件输出等关键技术进行了研究,拓展了CREO现有的布线功能,提高了布线效率。在文章的最后,开发出了具有上述功能的布线系统,验证了相关技术的可行性和有效性。
1 系统框架
基于CREO的复杂机电产品辅助布线系统,主要包括了布线数据设计模块、布线设计模块、布线信息输出模块,如图1所示。
图1 布线系统框架
1)布线数据设计模块
布线数据设计模块主要负责线缆布线设计前所需要的各种数据准备,包括结构件模型装配、线缆线夹的创建和管理、布线端口坐标系安装、用于管理线缆的线束零件的创建管理、线缆规格模型库和布线空间干涉检查。这些布线之前的准备为下一步的布线操作准备好数据,并排除可能在布线过程中存在的电气干涉问题。在此过程创建好的零件、线夹和线缆等数据可以上传到数据库,方便日后的使用。
2)线缆布线设计模块
线缆布线设计模块主要利用上一过程中准备好的数据进行线缆模型创建和在CREO布线空间环境下进行线缆布线。线缆模型创建主要根据线缆规格模型库中所选的线缆规格生成三维线缆模型,自由布线是指布线设计人员可以根据自己的设计经验来控制线缆走线位置,设计线缆的走线姿态。接线表布线可以根据接线表内的线缆连接关系进行布线,免去了人工布线的繁琐过程。接线表是虚拟布线设计的重要输入信息,该表详细给出了线缆中所有导线两端的端子信息,包括导线规格、接插件代号、接插件规格和针脚号等。布线设计过程中就是根据接线表获取线缆的详细连接关系信息,作为布线设计的数据来源,接线表格式如图2所示。布线路径搜索功能可以在CREO布线空间内搜索出符合布线约束的走线路径,然后在此路径上自动生成线缆完成线缆布线过程。
3)布线结果输出
布线结果输出模块主要包括以下功能:1)线缆材料清单:线缆布线结束后可以对布线空间内的线缆进行分类统计,并可以按照实际需要选择某个线束零件中的线缆或者全部线缆进行统计,然后输出到Excel表格中,为后续的线缆制作做准备。2)电气信息查询:电气信息查询包含连接件信息查询和线缆路径点查询,连接件信息查询可以获取连接件端口的线缆连接情况,线缆路径点查询可以获取线缆在布线空间内的走线位置情况。
图2 接线表
2 关键技术
2.1 电气元件库
在复杂机电产品线缆装配设计的过程中,需要使用到大量不同规格的接线端子。接线端子是实现电气元件间相互连接不可或缺的元件,随着工业自动化程度和高准确率标准的提升,接线端子的数量急剧增加,因此建立常用接线端子的元件库将会大幅提高布线效率。
为实现电气元件的自动化装配,需要使用以下CREO二次开发接口函数:
2.2 自由布线
在CREO中有两种布线方式:简单布线和网络布线两大类。简单布线在布线过程中只需选择线缆的起点和终点,系统自动生成线缆路径,生成的默认路径一般无法满足线缆的实际敷设标准,需要人工进行后续的路径调整。网络布线是先创建出线缆的路径点网络,然后设定各个网络段的优先级,然后依据优先级靠前的路径网络生成布线路径。这两种布线方法都需要进行大量的重复工作。
基于本文提出的自由布线技术,可以通过连续点击路径平面创建路径位置点,自动生成经过这些位置点的线缆路径,无需重复点选线缆的起始位置端口和线缆位置的后续调整。自由布线的主要代码如下所示:
2.3 布线信息输出
布线信息输出是布线模块二次开发的关键部分。布线结果文件可以提高布线的便捷性,同时避免因为无法预估线缆长度而造成的浪费。线缆的长度信息存储在CREO的线缆参数中,线缆参数的结构体如下所示:
3 CREO二次开发技术
利用CREO/TOOLKIT工具对CREO进行开发时,有两种工作方式,分别是同步模式(Synchronous Mode)和异步模式(Asynchronous Mode)。在同步模式下CREO系统和利用TOOLKIT工具开发的应用程序必须同时运行,开发的应用程序不可以独立运行。在此模式下CREO系统和利用TOOLKIT工具开发的应用程序交替获取运行控制权。同步模式下又分为动态链接库模式(DLL Mode)和多进程模式(Multi-process Mode),其中多进程模式又被称为派生模式(Sprawled Mode)。动态链接库模式需要编写DLL文件,在运行开发程序时需要将利用CREO/TOOLKIT工具编写的动态链接库文件加载进CREO系统,新开发的功能将无缝集成到CREO系统内。在动态链接库模式下,开发的应用程序和CREO系统进行通信时,应用程序直接调用接口函数实现。在多进程模式下CREO与CREO/TOOLKIT应用程序之间通过进程进行数据交换。相比于动态链接库模式,多进程模式需要更多的通信时间,而且随着应用程序复杂程度的增加,两者之间的通信时间消耗更多。
在异步模式下,CREO/TOOLKIT应用程序可以远程启动CREO系统,CREO系统和CREO/TOOLKIT应用程序可以独立运行。此模式下的CREO/TOOLKIT应用程序不同于同步模式下的应用程序。与同步模式相比,异步模式下应用程序执行速度较慢,而且异步模式下的应用程序可开发性也不好。所以除了有特殊要求外,基于CREO的CREO/TOOLKIT应用程序开发一般都采用同步模式下的动态链接库模式,故本文针采用同步模式下的动态链接库模式进行布线原型系统的开发。
基于CREO/TOOLKIT应用程序的开发流程大致分为三个步骤:源文件编写、动态链接库文件编译链接和DLL文件的加载运行。
1)源文件编写
源文件包括程序文件和资源文件。程序文件是根据实现的功能需求编写的C或者C++代码文件,代码文件主要是所要实现的功能的核心代码,需要根据所需要的功能进行编写。资源文件主要用于菜单创建、UI创建和一些信息输出。资源文件的书写格式有其特殊的要求,以菜单资源为例,每个菜单需要四行内容来描述,第一行为特殊标识,不能和其他内容重复,第二行为菜单的中文名称,第三行为菜单英文名称,可以设置为空,第四行暂时未用。资源文件如图3(a)所示。
2)DLL编译链接
编写完程序文件后,需要在编译环境下进行编译链接以检查程序代码是否有错误。当出现错误后需要进行调试,DLL程序代码不能像EXE程序一样进行调试,需要附加到CREO进程中进行调试。
图3 资源文件和注册文图
3)DLL加载运行
DLL文件必须加载进CREO系统中运行而不能单独运行。加载时需要注册事先编写扩展名为.dat的文本文件。在注册.dat文件时,可以选择自动注册和手动注册两种方式。自动注册需要将注册文件放到指定的CREO启动目录下,当CREO启动时注册文件将自动被注册。手动注册是指在CREO中的“辅助应用程序”中运行注册文件,注册文件格式如图3(b)所示。
4 辅助布线原型系统开发与验证
根据本文所提出的布线系统设计的体系框架,结合CREO/TOOLKIT工具开发了复杂机电产品辅助布线系统。
4.1 电气元件库
所开发的线轴库的界面如图4(a)所示,主要功能包括:线轴的创建与编辑,线缆参数的展示以及线缆的查询和删除等功能。图4(b)为卡箍库界面,它可以实现卡箍零件的预览以及根据用户选择的装配位置实现自动装配等功能。图4(c)为接线端子库界面,针对不同规格的接线端子,当用户双击库列表上的任意接线端子,在下方可以展示出端子的参数信息以及图形预览,此外使用者可以在模型中任意选择接线端子的装配位置实现自动装配,大大提高了装配效率。
图4 电气元件库
4.2 自由布线
自由布线在布线前可以先创建布线自由点,通过布线自由点完成线缆布线路径的规划,而且可以实现沿局部线缆和整条线缆布线,如图5所示。
图5 自由布线
4.3 线缆信息文件输出
电气整机布线结束后,可以通过线缆材料清单输出功能将所布线缆信息输出到Excel表中,为线缆制作或其它后续工作提供参考依据,如图6所示。
图6 布线信息输出
5 结束语
文章在CREO布线模块现有功能的基础上,针对线缆布局设计中存在的效率低、可靠性差等问题,在CREO平台上,对线缆敷设所需零件库、CREO简单布线技术、接线表的读取、布线信息的参数化输出等技术进行了相关研究,结合Visual Studio环境下的CREO/TOOLKIT二次开发技术,成功开发出了一个面向快速布线的辅助布线系统,提高了布线效率和准确度,具有现实的工程意义和使用价值。
由于CREO软件本身的接口限制等问题,通过二次开发工具提升布线效率也存在一定的局限性,需要进一步的学习和研究。
核心关注:拓步ERP系统平台是覆盖了众多的业务领域、行业应用,蕴涵了丰富的ERP管理思想,集成了ERP软件业务管理理念,功能涉及供应链、成本、制造、CRM、HR等众多业务领域的管理,全面涵盖了企业关注ERP管理系统的核心领域,是众多中小企业信息化建设首选的ERP管理软件信赖品牌。
转载请注明出处:拓步ERP资讯网http://www.toberp.com/
本文网址:http://www.toberp.com/html/consultation/10839624339.html