CAD开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

AutoCAD大学

相关分类

更上一层楼:使用 Autodesk Inventor 实现绘图自动化

2023-1-13 07:43| 发布者: admin| 查看: 561| 评论: 0|来自: AutoCAD

摘要: 使用 iLogic 和 Inventor API 自动绘制 2D 工程图。创建图纸和视图、添加尺寸、放置零件序号、定位草绘符号等。

Designing with Inventor

我们以前都听过:“你不能用iLogic自动化绘图。好吧,我们在这里告诉您,您可以!在本文中,您将学习开发使用 iLogic 和 Inventor API 自动执行 2D 绘图所需的逻辑的基本技术。您将学习如何创建视图、添加尺寸和零件序号,以及使用草绘符号甚至明细栏。这些信息将为如何开发绘图自动化以及避免哪些内容提供大量信息,从而确保稳健稳定的自动化项目。

采用正确开发和设计的 3D 模型、生成工程视图、添加尺寸和零件序号、更新零件清单、添加和操作草图符号:这是 Inventor Automation 可以完成大量工作并最终受益的领域。但是这个小宝石很难得到。计划、准备和处理实施此类项目的所有要求需要时间。但不要害怕,这是可以做到的。

list

发明家自动化的四个关键方面

首先我要说的是,任何成功的 Inventor 自动化项目都需要一个计划。一个计划将需要知识和智慧,那种提供现状和当前事态的情报。您必须非常熟悉您的数据,或者与合适的团队在一起。你必须知道你从哪里开始,然后才能决定如何到达你想去的地方。

欧特克发明家自动化数据流

wrkflow

  • 逻辑
  • 模型开发

  • 外部数据源

  • 用户界面

概述

公司经常问我的设计流程中的步骤之一是模型配置。过去,我创建了几个演示数据集,展示了 iLogic 的一些开箱即用功能,以及任何人都可以如何构建基本的产品配置器。重要的是能够获取零件和装配体模型的池或集合,并以准确和一致的方式将它们组合在一起,遵守最佳建模和组装实践,确保 3D 信息的稳定性和完整性。这绝对是开发过程中每个人都可以联系的领域。

本文将演示使用开发的模型配置“自动”生成用于报价、制造或制造的 2D 设计文档的过程。讨论的主题将集中在开发 2D 图纸所需的基本功能上,包括:

  • 创建、命名和激活工作表

  • 定义模型引用

  • 创建、命名、定位和缩放视图

  • 创建和修改明细栏

  • 添加维度

  • 放置气球

  • 添加和定位草绘符号

  • 使用标题栏的 iProperties 和参数

规划

要使任何自动化项目取得成功,您必须进行规划。制定一个计划,以监控和管理成功指标为目标,将允许考虑意外情况,并为设计制定某种类型的路线图。捕获设计所需的视图和尺寸需要多少图纸?需要包括哪些注释?注释是否因需要记录的设计类型而异?我们是否有足够的知识来预测图纸需要如何配置?用户是否需要与流程交互?您必须问自己很多问题,计划将帮助您了解这些问题是什么。

图纸自动化与模型自动化不同。在我之前的AU课程中,我讨论了如何开发产品配置器,采用模型并将它们放在特定的配置中,以表示您生产或制造的产品。3D模型在概念化和可视化如何组合在一起时是工程“黄金”。毫无疑问,它对于执行分析、减少昂贵的原型创建以及加快从概念到生产的推出时间至关重要。但是,拥有这些配置的详细图纸是我们大多数人发现价值的地方。没有图纸,人类将面临制造质量和一致性的任何东西的挑战。想象一下建造一个没有蓝图的房子!祝你好运。

要在 Inventor 中完成绘图自动化项目,需要了解 Inventor 的工作原理。请记住,iLogic 不会改变 Inventor 的工作方式,它只会改变您的工作方式。如果不知道视图需要参照,或者尺寸需要选择两个点,或者任何类似的东西,就很难理解自动化该过程所需的内容。此外,图纸参考是模型,不要忘记对这些模型给予一些特别注意。查找下面的模型开发部分,了解如何准备这些有价值的 3D 模型。

相关:Inventor iLogic 最佳实践和 Thomas Fitzgerald 的成功基础

逻辑

我从哪里开始?

我承认,我不是程序员。我从来没有上过课,我从来没有去过学校写代码,我没有尤达可以寻求建议,除非你认为谷歌是一个类似尤达的人物。互联网上有丰富的信息可用,可以用你想学习的任何代码语言做某些小步骤。不久前,我开始学习Visual Basic .Net,因为需要理解iLogic。但是,根据您的 Inventor 自动化体系结构,您可以使用 C# .Net 作为逻辑的代码语言,但第一步是了解要使用的语言。

到 iLogic 还是不到 iLogic?

我一直被问到这个问题。“iLogic和Inventor API哪个更好?”老实说,它们是一体的。我一直认为 iLogic 就像一扇通往 Inventor API 的大门。它只是一个具有命令库的环境,这些命令库利用 Inventor API 执行 Inventor 任务。

决定是否使用 iLogic 的关键取决于几个不同的因素。您想完成简单的小任务,例如更新 iProperty 信息吗?或者,您是否要更新零件特征数据,甚至创建伪iAssembly,基本上控制组件中零部件的抑制状态?

应该考虑的另一个因素是安全性。由于其现成的工具和界面,大多数公司在设计和开发其iLogic代码时,使用默认设置并将其iLogic代码存储在文件本身中。这带来了一些不良情况。首先,代码会向有权访问该文件的任何人公开,在大多数情况下,这很好。但是,人们可以花费大量时间和精力将代码放在一起,以使其他人员不应该修补它。通常,代码中可能涉及敏感信息,出于显而易见的原因,我们不希望在那里并且任何人都可以使用。外部规则可以通过保护网络上某处的规则逻辑来在一定程度上缓解这个问题,并且我们的网络安全可以防止窥探者准确地看到代码中的内容。

如果您希望使用 Inventor Automation 执行一系列更复杂的任务,例如连接到其他业务系统,或者如果您需要实时更新的数据库信息,那么我建议您使用 Visual Studio 和 Inventor API。创建 Inventor 加载项可以为您提供安全性和单一环境,以执行自动化项目所需的所有 UI 和逻辑任务。

发明家 API

API,或应用程序编程接口,是Inventor中“做”的秘诀。如果要在草图中绘制线条,请选择“线条”按钮,然后输入 Inventor 所需的内容。首先,选择一个起点,然后选择一个终点。Inventor 中的每个任务都有一组函数,用于执行从绘制线条到创建组件约束再到缩放工程视图的所有操作。了解 Inventor 中每个任务的复杂步骤对于规划和实施自动化项目至关重要。

应用程序接口

在自动化的规划阶段,从 Inventor API 的角度概述 Inventor 步骤将大大加快逻辑开发。以开发绘图自动化的概念为例。手动创建图形时的第一步是定义要使用的模板,命名它,然后保存它。之后,需要多少张纸?查看 Inventor API 帮助以查看创建工作表的函数。

表

现在,我知道这令人生畏。前十几次我也迷茫和困惑。但是,有很多关于如何阅读和使用 Inventor API 的信息。查找它,在YouTube上进行搜索,您会惊讶于可用示例,教程和视频的数量。

代码结构和组织

构建代码的最佳方式是什么?我从我的经验中学到的是,越通用越好。您将创建的每个函数、子例程或规则都应尽可能简单和模棱两可。每个人都将有一个输入,即函数性质所需的数据。数据挖掘、操作和解释在项目的这一阶段最为普遍。

即使您打算使用 iLogic 作为逻辑工具,也要以执行特定功能或任务的方式组织规则。您可以随时从另一个规则调用这些规则,以更好地控制逻辑触发特定例程的时间。有很多小规则总是比一个大的、复杂的规则更好。函数和子例程应以相同的方式编写。

命名约定

识别要在 Inventor 自动化中使用的文件的能力是模型开发中需要注意的关键点之一。例如,如果您作为 Inventor 用户决定要将零部件添加到装配体,则需要两位信息;文件名和文件位置。一些公司使用所谓的“智能文件命名约定”,其中文件名中的每个字符都有某种含义,通常后跟一个序列号以确保唯一性。一些公司使用字母和数字字符的任意或随机组合来命名他们的文件。通常,这些公司使用文档管理系统,如 Autodesk Vault,可以在其中搜索数据库属性以识别文件。使用 PDM 的公司可以创建搜索查询以根据工程或设计信息查找文件,而不是依赖于文件名的逻辑性和意义。

无论您使用什么过程来命名文件,都无关紧要。需要关注的重要一点是公约可能是什么。同样,图形自动化可能需要命名图纸、视图、工作特征和实体,以识别和访问它们以进行不同的逻辑处理。如果要向视图添加维度,请使用哪种视图?将零件序号添加到在视图中参照的组件中的零部件?您可能需要向组件中的人脸添加属性标签。要查找的属性的名称是什么?为它们提供逻辑名称使此练习变得更加简单。

绘图自动化

什么是绘图自动化?

我们必须做些什么来确保自动创建图纸?“自动”是一个可以解释的词。对大多数人来说,这意味着在没有任何人类互动的情况下发生了一些事情。那将是一个完美的世界。然而,在工程中,我们只是想尽量减少人际互动的数量,特别是如果一个过程是可重复的、可预测的和相对一致的。如果我们能够自动化流程,那么我们就可以通过消除人为错误的可能性来确保质量和一致性。它还使我们能够更有效地利用我们的人力资源。

在 Autodesk Inventor 中,绘图自动化具有要遵循的特定步骤,以适应任务之间的关联。与生成视图的示例一样,我们首先必须确定该视图的引用。接下来的部分将更详细地讨论开发绘图自动化的过程。

模板

定义一个或一系列模板来创建图形是该过程的第一步。您可以使用默认模板,也可以创建特定于图形自动化的全新模板系列。使用 IDW 还是 DWG 文件扩展名并不重要。记录模板的文件路径位置,稍后需要。

根据图形自动化的比例,可能需要许多不同的模板。您用于一种商品的模板可能与另一种商品不同,仅仅是因为所需的详细程度。创建单个零件文件的工程图显然与创建复杂装配体的工程图不同。大多数时候,您可以适应很多这些差异。

床单

确定要使用的绘图模板后,接下来是图纸。我们需要多少张纸?我们需要什么尺寸?我们要对工作表应用什么名称?边框和标题栏呢?需要考虑以下事项:

  • 工作表的命名约定

  • 调整床单的尺寸,A 尺寸,B 尺寸等。

  • 激活特定工作表

  • 删除工作表

视图

创建各种视图使我们能够捕获必要的几何信息,以准确定义事物的配置方式。发明人基于模型参照创建视图。作为最终用户,我们可以定义要用于生成的每个视图的模型参考,具体取决于所需的视图类型。Inventor API 还允许我们定义该模型引用。

如果要详述单个零件文件,则模型参考将在整个工程图中保持一致。复杂的装配呢?需要考虑许多不同的组件、子组件、方向、可见性选项等。这就是了解 Inventor 的力量和优势将帮助您的地方。需要考虑以下事项:

  • 视图的命名约定

  • 需要什么类型的视图,基础,投影,剖面等。

  • 视图缩放

  • 视图定位

  • 视图方向

使用强大的命名约定来标识需要从每个视图中关闭可见性的零件和装配体。有一些方法可以循环访问视图,并根据所选零部件和子装配体的名称关闭其可见性。利用装配体中的详细程度表示来控制视图中显示的图形信息。

技巧

使用视图时,在编写逻辑代码时,有一些事情并不明显。首先,视图基于 2D 点(本质上是 X 和 Y)放置。其次,视图尺度难以判断。我总是根据图纸大小管理缩放。这样,无论我使用什么图纸大小,视图都将始终适合。

零件清单

在大多数情况下,如果您正确配置视图,零件清单将自行处理。但在某些情况下,零件清单不能反映您想要表示的内容。

我们所有人都在某一时刻根据详细级别创建了一个视图,然后放置了一个零件清单。为什么我隐含的零部件和子装配体仍显示在“零件清单”中?有时,我们必须过滤掉零部件和子装配体,因为详细级别不控制零件列表;视图表示过滤器可以。我们也可以编写代码来做同样的事情。如果需要,我们还可以使用自定义或“动态”信息填充零件清单。需要考虑以下事项:

  • 明细栏位置

  • 内容过滤

  • 项目重新编号

尺寸

以自动化方式创建和放置维度的话题已经挑战了像我这样的顾问一段时间。最终用户只需查看视图,即可使用基本信息应用所需的维度来详细说明它。但自动化无法查看视图并以可视化方式处理它。代码需要其他标准、其他信息来确定如何放置维度。我使用的方法将“工作点”应用于以图形方式构成尺寸应位于何处的零部件或子装配体。创建工作点后,我按照预定的命名约定重命名它们,以便当我的代码需要它们时,它可以找到它们。

根据需要 2D 文档的文件的类型或类别,维度的数量可能非常多。通常,对于报价,您可能只需要整体尺寸、封装、连接信息等。但是对于制造或制造文档,嗯,你可以想象。我们如何轻松控制、管理和使用放置所有这些维度所需的信息?正如我在之前的 AU 课程中所讨论的,我喜欢在此类情况下利用外部数据源。使用 Microsoft Excel 或 SQL 数据库可以实现输入和编辑大量数据所需的灵活性和用户友好性。

技巧

使用 Dimensions 时,在编写逻辑代码时,有一些事情并不明显。尺寸放置基于 2D 点,再次基于 X 和 Y。您需要一个起点、一个终点和一个用于放置文本的点。由于点依赖于 3D 图形信息,因此需要将点“投影”到 2D 空间中。熟悉 Inventor API 中的几何意图。

气球

当我第一次开始使用 Inventor 时,我惊讶地发现,如果我将零件序号指向视图中的其他内容,零件序号会更新并反映零件清单中的相应项目编号。我来自AutoCAD,在那里,四重检查我们称之为BOM的手动表以确保项目编号匹配是非常繁琐,耗时且容易出错的。当我开始使用绘图自动化时,我发现使用气球比我预期的要容易得多。确定需要气球的东西就像属性标记一样简单。在以前版本的 Inventor 中,这是使用 Brian Ekins 开发的名为 Attribute Helper 的实用程序完成的。它提供了一个简单易用的界面来选择面、边缘、点等,并对其应用命名标签。然后,您需要做的就是遍历文件并找到属性,访问其对象和中提琴,您现在知道要将气球附加到什么。最困难的部分是放置气球本身,确保您不会干扰图形中的其他注释。

技巧

使用气球时,在编写逻辑时,有一些事情并不明显。可以基于附着点或相对于视图来控制零件序号的放置。我发现使用连接点作为参考并根据连接点实体的位置控制气球的方向更容易。如果图元位于视图中心线的右侧,则气球的方向在右侧。如果是在左边,那么左边。你明白了。您还可以控制零件序号形状类型以及零件序号值。

草绘符号

Inventor 中,我们使用草绘符号来控制文本块。它们是预定义的,存储在图形中,易于使用,甚至可以是动态的。他们甚至可以让领导者附加到几何体并四处移动。在我看来,使用草绘符号是其中最简单的。您只需调用所需符号的名称并定义其相对于工作表的位置。如果要使用动态草绘符号,请添加提示输入字段。

模型开发

属性

您是否曾经想给面孔或边缘起个名字?好吧,现在你可以了!你已经能够做到很长时间了,但现在我们可以很容易地做到。在 Inventor 2019 中,如果选择面或边,然后单击鼠标右键,您将在菜单中看到分配名称的机会。您提供的名称将是要搜索的命名属性,正如我在应用气序号时所解释的那样。

如果您未使用 Inventor 2019,则添加属性的另一种方法是使用属性帮助程序

使用属性指定面和边的关键是要有适当的命名约定,并了解零件序号过程将涉及哪些文件及其方向。

工作要点

我发现使用工作点来定义任何维度的起点和终点的位置取得了巨大的成功。我在必要的文件中创建适当的工作点,根据命名约定为其指定逻辑名称,并关闭可见性。因为所有维度都有两个点,所以我用“1”和“2”对每个相应的工作点进行后修正。它允许在代码中循环变得更加容易。我理论上使用属性来标记顶点是可行的,尽管我还没有尝试过工作流程。

最后

外部数据源

正如我之前提到的,外部数据源可能非常有价值,特别是如果您的绘图自动化具有包含大量变量的方面。Microsoft Excel 和 Microsoft SQL Server 是用于按需完成存储和检索变量信息的工具。它们还提供了一种用户友好的方法,用于在绘图自动化扩展和增长时添加、更新和管理特定于设计的信息。

用户界面

并非所有图形自动化项目都需要用户界面。通常,在开发设计自动化时将创建和使用用户界面,例如产品配置器。如果是这种情况,绘图自动化通常是设计自动化的扩展并利用其 UI。但是,可以创建一个 UI 来启动绘图自动化过程,并提供应用关键信息以满足绘图自动化输入的方法。

开发发明家加载项

就复杂性、工作量和功能而言,下一个合乎逻辑的步骤是开发 Inventor 加载项。通过手动触发 iLogic 规则来运行这些规则,或者开发一个或多个 iLogic 窗体,或者在 Visual Studio 中创建窗口窗体并使用 iLogic 规则运行它们,这些都是与最终用户交互的非常常见的方法。但有些公司需要或希望简化最终用户在 Inventor 环境中的工作方式。对于那些想要全力以赴真正“自定义”Inventor 的人来说,开发 Inventor 加载项是必经之路。我的朋友布莱恩·埃金斯(Brian Ekins)多次谈到这个话题。查看他的 AU 类,为 Inventor 创建加载项

想要查看一些代码示例?下载完整的课程讲义。

Thomas Fitzgerald是一位高级实施顾问,专门从事Inventor自动化和数据管理。Thomas曾为许多公司提供咨询,这些公司与大型和小型工程部门有着非常多样化的接触。他的工作经验包括汽车、造船、采矿和物料搬运行业的机械设计,以及利用 Inventor API、iLogic、Microsoft SQL Server 和 Microsoft Visual Studio 的自定义配置应用程序。Thomas在机械设计和制造行业拥有超过20年的经验,使用过众多欧特克产品。他是Autodesk认证讲师,并拥有Microsoft认证系统管理员证书。


路过

雷人

握手

鲜花

鸡蛋
UG快捷键鼠标垫

QQ|Archiver|CAD开发者社区 ( 苏ICP备2022047690号-1 )

GMT+8, 2024-5-7 00:23

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部