|
经典图书 开发公差查询系统的结构功能图如1所示。
图1 尺寸公差模块结构图
3.1公差库的建立
公差镶嵌模块采用ACCESS2000建库,用ADO技术访问数据库。ADO即ActiveX Data Objects,它是Microsoft的一个最新的数据访问技术,是DAO,RDO数据访问接口的替代,它不依赖于对象之间的相互层次作用,比DAO和RDO都更加灵活,适用范围更加广泛。ADO访问数据是通过OLE DB实现的,是连接应用程序和OLE DB的桥梁。公差镶嵌模块应用关系型数据结构形式将国标中的孔、轴、基孔制及基轴制配合全部国标公差转换成了数据库形式。为叙述方便,下面仅以孔为例详细说明公差在数据库中的存储及程序对数据的提取和处理。其余类似处理。
国标(GB/T1800·3-1998)规定,孔基本偏差代号从A到ZC标号,公差共12等级。确定一个尺寸的偏差必须具备基本尺寸、偏差代号、公差等级3个条件,所以国标孔的极限偏差表是三维的。如果公差库按三维存储,则需要建立多个表,各表之间要依据各条件关系用主键建立联系,编程时要用SQL语句联合查询,这将大大降低查询速度,增大存储空间,且相关数据被打碎存放于不同表格中,不利于以后系统管理员对数据库的维护。为避免上述不足,易于编程,经过分析,笔者认为,将偏差代号、公差等级合二为一,图2中上下偏差也合成在一起,从而将三维表变成二维表,存储方式如图2所示。
表2中第1行数据为存储在数据库中的字段名称,第1列为基本尺寸信息,其他数据为孔偏差信息,其中前7位为上偏差,后7位为下偏差,上下偏差的第1位数字为符号位。查询结果由程序分离,经VB界面显示,设计人员确认后,标注到Solidworks中相应尺寸上。如:查询基本尺寸为30、公差等级为9级、基本偏差代号为A的孔,查询结果将为00352000030000,程序公差分离后,标注到尺寸上的结果为:上偏差0.352mm,下偏差0.300mm。这里有一个问题需要注意:由于Solidwork。对传人的数据是以m为单位的,所以程序中必须添加尺寸单位换算的功能。
3.2 应用程序开发的实现过程
Solidworks不支持.EXE文件,但可执行.DLL文件。所以本系统通过ActiveX技术将所开发的系统作为插件插人到Solidworks中,从而可以从外部操作Solidworkss在VB环境下,建立一个ActiveX DLL工程,通过引用下拉菜单加载Solidworks API函数库,使VB建立与Solidworks中各对象的联系,能在VB程序中识别Solidworks各对象的类别,操作其属性和方法。程序编完后,生成.DLL文件,然后在Solidworks环境下以Add-一Ins(*.dll )文件类型打开该文件,则在插件中会自动添加所建立的工程,这样就可以像用Solidworks自带插件一样使用该插件。尺寸公差标注过程放在"标注内容"窗体上的[确定]控件的Click事件中,每次按下[确定]后,Solidworks将自动激活所选尺寸,标注公差。
3.3 标注实例
下面以阶梯轴尺寸公差的标注为例说明该系统的使用:
首先选择要标注公差的尺寸,单击工程图中菜单栏上的KNSolidworka、尺寸标注、公差查询,或按Alt + A快捷键后,出现标注内容对话框,输人基本尺寸,选择相应公差查询类型,单击[CX]按钮,公差查询对话框出现。选择相应标签,单击所需基本偏差及公差等级代号按钮,所查结果会出现在上下偏差的文本框中,确定后返回标注内容对话框。
再按[确定]后,被选中的尺寸上就会被标注了上下偏差。
4 基本结论
本次尺寸公差标注的二次开发,能让设计人员快速、准确地标注工程图中尺寸公差.减少了设计人员的工作量和工作时间,有效提高了设计效率,且操作简单方便。所以此二次开发有一定的应用价值。 |
|