机床接线盒装配图与开孔图的CAD
1 问题的提出通常情况下,为合理正确设计接线盒,要反复查阅设计手册,查出管接头之间的最小安装距离以后,再进行人工换算,有时要反复排列好多次,确认无误后,再进行绘图。这种设计方法效率低、准确性差,重复劳动强度大,且装配图与开孔图之间的对应关系难以保证。针对上述情况,我们利用CAD开发了机床接线盒安装图及开孔图设计软件。
2 软件的设计与开发
在开发软件之前,我们首先对接线盒设计的有关资料进行了整理,包括接线盒的规格,常用两种型号管接头D96-4A和D21-1的规格以及外形,不同规格接线盒所对应的导轨长度、端子对数,不同规格管接头安装时的最小间距等一系列参数。
软件设计思想为:设计员只需通过用户界面选择接线盒规格,输入各面所要安装管接头的型号、规格及所对应的管号,再选择装配图或是开孔图,即自动生成图形。如是装配图,自动生成明细表;如是开孔图,自动标注尺寸及技术要求。软件还应具有智能判断功能,如界面输入管接头过多,软件自动提示“管接头太多,超出最小间距”,相邻管接头之间的最小间距及设计手册内所包含的各种参数要求,应全部在软件内实现,整个过程不再需要人工查阅任何资料。
按照上述设想,首先利用Auto CAD 12.0所提供的对话框设计语言(简称DCL),设计了如图1所示的用户界面。下面介绍接线盒参数化软件设计的大致流程和其中部分子程序。
图1
该软件是利用Auto CAD 12.0开发系统(简称ADS)进行设计的,编译环境为32位Highc 1.71,生成文件为运行在Auto CAD 12.0下保护模式EXP文件,整个软件包括主程序和22个子程序,主程序流程图如图2所示。从主程序流程图看出,程序开始,首先装入如图1所示的对话框,每一栏均对应一回调函数,通过回调函数,对话框被激活,且赋初值,列表框内已显示出接线盒一系列规格。对话框每一栏均对应一关键字,程序通过关键字建立起与对话框的联系,然后通过控制对话框的ADS函数库2〗tile(hdlg:“boxlist”,(clientfunc)boxlistcb),其中“CD#*2〗list(hdlg,“boxlist”,listnew,0)来实现的。整个对话框的装入、显示、激活、启动、赋值、关闭等都是通过ADS来管理。在主对话框打开的同时,亦可打开子对话框。如用户所用接线盒不在标准规格内,则可点自定义USR接线盒尺寸按钮,软件将打开一子对话框,由用户自己来输入接线盒的尺寸,输入后暂放在boxlist[]数组内。
boxlist定义如下:
static struct boxlist{
char *name;
int 1, w, h, hd, jd0, jd1;
}boxlist[]={
{“B0”,100,80,80,35,0,0},
{“B1”,100,100,80,35,0,0},
…
{“B35”,500,400,120,55,450,57},
{“USR”,100,80,80,35,0,0},
};
其中1—接线盒长度,w—宽度,h—高度,hd—开孔距底面的位置,jd0—导轨长度,jd1—端子个数。接线盒尺寸选定后,开始输入各面管接头的管号、型号、规格。以上顶面为例,如该面没有,则空白;如有,则输入的参数放在toplist[200]数组内,参数输入后,再选择是装配图或开孔图,确认后,点选OK,对应OK按钮的回调函数内,又调一子程序boxcpd(),该子程序判断该面管接头是否能排开,如排不开,则会在对话框的下面出现提示:“管接头太多,超出最小间距,”提示你重新输入参数。如程序判断合理,则关闭对话框,开始执行。程序首先确定主视图的位置,主视图定下后,开始逐面进行判断,如toplist[200]数组不空,则调boxtlazt(list, rot, d, a, pt)子程序,由于toplist数组内每一管接头包含有管号、型号、规格三个参数,所以首先通过子程序,求出共有几个管接头,并将每一管接头包含的三个参数分离开来。根据管接头的个数,求出平均分布时两管接头之间的平均距离boxlist[].l/(n+l)=lnn,将lnn取整。调第一个管接头距接线盒边最小距离子程序subb(),subb()与lnn相比较,取大者即为第一个管接头在此面的安装位置,其管接头安装高度为boxlist[].hd。找到第一个管接头安装位置后,根据型号不同,调subgd96()或subgd21()管接头外形图,同时把管号写入明细表。并通过子程序subg()获得与此规格管接头相对应的密封圈的型号和规格,一块写入明细表。在写入明细表时,软件自动区分是d96-4a或d21-1,当一列写满后,自动另起一行,第一个管接头到此就处理完毕。接下来处理第二个,与第一个不同的是调subc(s[i],s[i+1])子程序来确定不同规格的两个管接头之间的最小距离,subc与lnn相比较取大者,即为第二个管接头在此面的安装位置。以此类推,直到最后一个管接头为止,整个过程就结束了。
图2
接线盒开孔图设计程序处理过程与上述相似,不同之处是判定出第一个管接头的位置之后,根据其规格调对应子程序subd()获得开孔尺寸,有了孔的尺寸和位置,画出孔的形状,同时对此孔进行标注。以此类推,在标注尺寸的同时,亦标上了粗糙度符号,直到四面全部结束后,自动标上技术要求,填上图幅比例,整个图形就算完成了。只需输入一次参数,前后不到5min,装配图与开孔图全部生成,而且准确无误。
该软件开发的难点之一是接线盒主视图基点的选择。由于接线盒大小不一,图幅比例也不一样,因此,主视图基点选择不好会与接线盒其他各面及技术要求标题栏等位置相冲突,手工选择又影响效率。通过利用Auto CAD所提供的系统变量VIEWCTR,找出了对不同接线盒规格、不同图幅比例都适合的基点,使问题迎刃而解。另外该软件与一般参数化设计最大不同之处在于,它不仅仅是图形尺寸驱动的参数化,而是包含设计、计算和分析的参数化,比一般的参数化软件更难、更复杂。
3 结论
利用该软件进行接线盒设计,不仅提高了效率和准确性,而且大大减少了设计员的重复劳动。同时对一些与上述接线盒规格型号不完全匹配的情况,只要对软件稍加修改即可使用。如笔者单位在1997年为美国通用汽车公司生产的压力机是引用日本小松技术,其接线盒与我单位所用D36-2系列不同,同时其安装方法也不同,通过对软件稍加修改即投入使用,保证了设计任务的按期完成。【MechNet】
文章关键词: 机床
页:
[1]