InventoriLogic设计自动化技巧及案例分享教学文案.docx
《InventoriLogic设计自动化技巧及案例分享教学文案.docx》由会员分享,可在线阅读,更多相关《InventoriLogic设计自动化技巧及案例分享教学文案.docx(9页珍藏版)》请在冰豆网上搜索。
![InventoriLogic设计自动化技巧及案例分享教学文案.docx](https://file1.bdocx.com/fileroot1/2023-1/26/705a1357-c11b-4e73-b354-22a8e2c9675e/705a1357-c11b-4e73-b354-22a8e2c9675e1.gif)
InventoriLogic设计自动化技巧及案例分享教学文案
Inventor-iLogic设计自动化技巧及案例分享
InventoriLogic设计自动化技巧及案例分享
栏目:
知识共享浏览:
1967添加时间:
2016-07-1413:
56:
57
InventoriLogic模块提供了对设计自动化的支持。
本文通过一些具体的案例,结合客户的实际需求,通过使用iLogic中提供的自动化函数、界面的支持以及良好的扩展性对设计实现自动化,从而使我们更方便的重用设计,提高效率。
一、案例一:
液压阀块及其装配
Inventor自带的iLogic教程中,有一个液压阀块(ManifoldBlock)的例子,很好地诠释了iLogic的能力和具体应用的方法。
图1阀块及阀块装配
首先,分析这个阀块装配,其核心就是阀块(图1左)。
在阀块的设计中,阀块的尺寸参数,联接类型、油口的孔径类型及尺寸都是设计中需要管理的关键参数。
1.阀块类型(图2、图3)
图2阀块类型1
说明:
图2中,选择Standard类型时,三个面的油口孔径相同,对应变量参数名分别为:
port_b_size,portc_c_size,port_a_size,通过if…Endif条件判断和赋值语句(=),完成参数的数值定义。
说明:
图3中,选择“Tee”型联接时,三个面的油口都有效;选择Elbow(90°弯头)联接时,下表面的油口(Port_B)开口及螺纹特征被抑制,通过Feature.IsActive()语句实现对特征状况的控制。
图3阀块类型2
2.油口位置
油口孔径有相应的规格,在Inventor中支持多值列表型变量,用户可以预先定义供用户选值。
当数值较多时,Excel表格是不错的选择,iLogic提供了很强的Excel表格的操作能力,实现在Inventor中按照设计规则完成查询及选值操作(图4)。
图4多值列表型变量
在本例中,采用了第三方嵌入对象的方式,即Excel表格存放在Inventor文件内部。
iLogic也支持将Excel可以放置在外部,区别就是在iLogic语句中,给出完整的Excel文件的路径(图5)。
图5嵌入表格及表格内容
图6返回最大值
说明:
图6中,MaxOfMany():
iLogic提供的一个数学函数,即比较括号内的数值,返回最大值,这里是比较几个油口的孔径,将最大油口孔径值赋给变量port。
GoExcel.FindRow():
iLogic提供的Excel查询函数,这里是查询嵌入的表格,从其表单Sheet1,对应的Port_size列,找到数值等于Port的是第几行,将返回数值赋给i。
GoExcel.CurrentRowValue():
配合FindRow()返回的行,读取该行中对应变量名的数值,本例中,通过查询表格获得了各个面的油口的位置。
3.属性定义
在实际使用中,用户对设计零件的零件代号有特定的要求,在该例中,当设计为标准型时,“零件代号”从嵌入的Excel表格中查询获得,如果为用户自定义的,“零件代号”设置为“HomeMade”。
图7iProperties.Value
说明:
图7中,iProperties.Value(“Project”,“PartNumber”),对应“Project”(iProperty的项目页面)中“PartNumber”(零件代号)的数值,从iLogic的iProperty对应的代码和iProperty对应的属性页面,很容易找到其对应关系(图8)。
图8iLogic属性方法及iProperty页面
4.阀块装配中的iLogic应用
在本例中,大家注意到阀块参数的变化是核心,但是阀块装配中如何直接控制阀块参数呢?
之前,我们需要借助链接外部参数的方式(Excel或Inventor文件),而用iLogic方法就变得非常简单。
如图9所示,通过Parameter()函数,我们可以直接将数值赋给装配下的零件的变量,这样就实现了在顶层装配下对底层零部件的控制。
在阀块装配中还有将模型中的属性及参数值返回到Excel表格中的应用,和前面读取Excel表格的例子类似,在此不赘述。
图9Parameter()函数
二、案例二:
用iLogic实现货架设计
我们的一位客户设计商店里的货架(图10),根据用户的要求,规格尺寸(长、宽、高),层数、列数、材料和颜色都不尽相同。
图10货架产品示意图
(1)在利用iLogic解决货架模型之前,我们首先建立正确的货架模型结构并确定关键的驱动参数。
根据货架的设计,分为三层装配(图11)。
图11货架的产品结构
(2)基于确定的结构和关键参数创建货架的三维模型。
进行零件模型创建时,首先定义如下关键参数,并且命名以便于后续查找和iLogic应用(图12)。
图12货架零件的关键参数
(3)进行子部件模型创建时,首先添加约束,确定部件的位置关系;然后创建iLogic规则,定义参数关系和参数传递(图13)。
图13参数关系
(4)创建总装时,首先放置子部件、零件,并且约束和定位;接下来创建用户参数,来定义关键参数(长、宽、高、层数、列数材料和颜色);使用iLogic语句,实现顶层参数向下游零件的参数传递(图14)。
图14装配下的参数传递
(5)在本例中,定义了材料和颜色列表变量,在这里,我们使用了iLogic的document函数直接访问InventorAPI,获取到装配中的每一个零部件(ForEach…In…),然后将材料和颜色赋值给相应的零部件(图15)。
图15document函数
(6)创建iLogic用户界面,并添加产品配置关键参数和属性控件。
iLogic提供了界面创建工具,方便用户交互操作。
图16即为根据用户的产品特点,创建的用户参数交互界面。
三、案例三:
iLogic在工程图的应用
经常听到用户希望把视图的比例和质量(去除单位)填写到工程图的标题栏内,以前用户必须通过程序调用Inventor的API来实现,而借助iLogic,实现的过程就变得异常简单。
首先我们在工程图的模板中,创建两个自定义属性,比如比例和质量。
图16iLogic用户交互界面
接下来我们把创建的自定义属性添加到标题栏的定义中(图17)。
图17iLogic在工程图中的应用
根据iLogic提供的工程图函数和属性函数,把指定的工程视图的比例和质量赋给相应的变量。
图18获取视图名称比例
注意:
图18中,ActiveSheet.View().Scale获取当前激活工程图下,指定视图名称的比例。
Round()是Inventor支持的取整函数,这里,是对质量保留3位小数。
InventorVB.DocumentUpdate()常用来当参数变更时,执行更新的操作,类似手工运行管理页面中的“更新”命令。
类似对工程图的操作方法还有很多,比如对放置视图位置的控制、视图高度的控制、图幅、标题栏样式和引出序号等。
四、案例四:
使用iLogic导出文件
iLogic支持把Inventor文件导出到常用的格式,比如AutoCAD DWG、DWF、PDF和JPG等。
请看如图19所示打开的工程图文件,我们可以很方便地使用iLogic提供的自动化函数,把它存成其他格式。
图19iLogic输出文件
注意:
Document.SaveAs()是iLogic中提供的文件另存为的函数。
Messagebox.Show()是iLogic提供的信息对话框方式,便于与用户交互。
五、语结
对于用户,iLogic将Inventor在设计重用方面的能力提升到新的高度,归纳如下。
(1)设计规则和模型数据相结合的高效方式。
(2)更强的Excel和模型数据交互操作能力。
(3)对Inventor的支持面广,从文档类型上涵盖了零件、部件和工程图,从功能上覆盖了零部件参数、物理和外观属性和文档属性、特征控制和零部件控制(包括iPart,iAssembly)、BOM属性。
(4)支持规则运行条件定义(Trigger),便于自动化处理。
(5)它采用类似VB的解释型语言,用户易学易上手。
(6)iLogic既可以嵌入在文档内(内部规则)和也可以从外部调用(外部规则),方便灵活。
(7)支持用户自定义UI调用。
(8)对InventorAPI的支持,提供了拓展空间。