Beyond Parametrics: Designing With Rules9 Jul, 2008 By: Jeffrey Rowe
New add-on expands Autodesk Inventor's parametric modeling capabilities.
Like it or not, most mechanical CAD software employs parametrics, a method of linking dimensions and variables to geometry. When values associated with geometry change, the geometry itself also changes. A parameter is a variable to which other variables are related, and these other variables can be obtained through parametric equations. With parametrics, design modifications and creating a family of parts can be performed quickly compared with the redrawing required by CAD packages that don't provide parametrics, although most contemporary CAD packages have this ability built in.
Parametric modifications can be performed in several ways, including via a spreadsheet, script, or by manually changing the dimensional numerical values associated with a digital model. Parameters can define the size and shape of features and control the relative positions of components within assemblies. For example, you can specify the size of a cover plate as: height = width/16, with equations that define the relationships between the parameters.
You can also define parameters that relate dimensions to functional requirements. For example, you can define the cross-sectional area of a part to have certain proportions and withstand a certain load, such as: area = load/material strength * factor of safety. You can link a spreadsheet to a part or assembly and drive the parameter values from cells in the spreadsheet. Parameters can also be exported to bills of materials (BOM) and parts lists.
As far as specific CAD tools go (and as an example), Autodesk Inventor has a Parameters tool for viewing and editing parameters in the Parameters table, creating user-defined parameters, and linking to a spreadsheet containing parameter values. Model parameters are created automatically when you define a sketch dimension, create a feature, or add an assembly constraint.
You can create user parameters, which are more general than model parameters and can be used to convey functional requirements. User parameters can be also be driven by a spreadsheet. You can apply user parameters in equations. If you use the same parameters in many parts, such as force or material, you can define the parameters in templates used to create new part files. Custom parameters are created through the application programming interface (API). However, Inventor does not have the capability to handle Boolean, string, or multivalue parameters, hence the need and opportunity for an add-in that can.
Bring On the Rules
As useful as parametric modeling can be, it has limitations. Unless you are using a spreadsheet or table to drive a family of parts, a parametric model represents only a single design iteration. To overcome this constraint, iLogic from Logimetrix, an add-in for Autodesk Inventor 2008 and 2009, goes beyond parametric modeling. Instead of using just parametric variables to capture the design intent sufficient to define a single model, iLogic uses rules to capture the design intent sufficient to define a model capable of representing all possible valid configurations of a design. iLogic is not by itself generative, meaning that it does not describe geometry. Rather, it defines the rules that drive geometry and the relationships that define parts and assemblies. iLogic drives all the attributes and parameters that describe Inventor 3D models that already exist.
While iLogic goes beyond the traditional capabilities of parametric design, it is not an engineer-to-order (ETO) or knowledge-based engineering (KBE) tool. Historically, ETO packages have been used to create products whose customer specifications require unique engineering design or significant customization, and usually result in a unique set of components, bills of material, and production routings. KBE tools add at least a level of complexity (and expense) by not only creating a CAD model, but also attempting to capture and account for the knowledge that goes into designing the model. One of KBE's strengths is its ability to reuse knowledge, but it almost certainly requires expert outside consulting assistance to make it work. While iLogic's rules-based design add-in is different from either ETO or KBE, it does provide some unique capabilities and is relatively easy to learn and use. iLogic promotes what the company calls Rules Driven Design (RDD) that provides a means for capturing and reusing engineering knowledge for automating design processes.
RDD with iLogic provides a rules-based design approach and methodology for capturing design intent and creating reconfigurable, reusable parts and assemblies that goes far beyond what is possible with parameters. Working with Inventor feature properties and conditional statements, iLogic introduces conditional logic into a parametric model. Because iLogic uses Visual Basic.NET (VB.NET) as a language together with a set of specialized functions for driving the parametric models directly, it requires minimal, fundamental programming skills for realizing its power and potential, as well as being scalable and customizable.
An iLogic rule is an object that is added to a design, and the rule object is embedded in -- not a separate part of -- a design definition. Rules are what allow you to define the total number of possible configurations based on the total number of possible input combinations as set forth in the rules. Whereas parametrics address the what of a design, Logimetrics, a term coined by Logimetrix, address the why and provides much more potential and many more possibilities for a given base design.
Rules created with iLogic are more meaningful for expressing logic and the resulting design variations, and also let you take advantage if Inventor's iParts and iAssemblies. By themselves, iParts and iAssemblies have a fixed list of possible configurations, whereas iLogic rules can define configuration possibilities based on the total number of possible input combinations. iLogic rules are also flexible, because they can contain formulas, equations, strings, and multivalue parameters that can be turned on and off. iLogic rules not only define the inputs that drive a design, but can also define and drive outputs and formats, such as an Excel spreadsheet or an HTML report, that are launched with a rule.
iLogic embeds rules (as objects) directly into Inventor part and assembly models that define and drive the models' parameters and attributes. iLogic rules provide a means of directly driving the parameters and attributes of a model.
iLogic enables the creation and inclusion of custom parameters -- string, Boolean (true/false), and multivalue (combo box list of valid sizes or equations) -- into a design. It provides an enhanced parameters list editor interface for accommodating rules and custom parameters. The iLogic Parameters editor also provides an advanced filtering function to assist in parameter input definition, management, and editing.
The VB.NET programming language is native to the iLogic rule object and is what allows its scalable approach to rules-driven design. According to the company, beginners with little or no programming experience can quickly learn the basic functions of iLogic that will provide them with the fundamentals of rules-driven design. How true this claim actually is, I can't say, but VB.NET is about as easy as programming gets.
Some examples of iLogic's programmed automation functions include these:
- read and write to Excel spreadsheet documents, regardless of format
- generate and launch html files as a means of publishing design specification reports
- keep BOM information up to date when rules morph a model into a new configuration
- automated publishing for DWF or other file formats
- launch external applications and open reference documents such as Word, Excel, HTML, etc.
- automatically update and drive threads specifications when a hole or rod size changes
- automatically send e-mail notifications when critical design parameters change
Although iLogic does require what I would consider an intermediate level programming knowledge and ability, for VB.NET these are relatively easy skills to learn. I spoke with iLogic's director of development, Dave Reaume, and he said there is a misperception and misconception of the difficulty of programming and that it is actually quite easy for most users who attempt it. He added, however, that future versions of the product would provide a simpler, more graphical programming approach with less text entry required.
iLogic also comes with ready-to-use sample code for many applications. With some experience, iLogic can unlock the hidden potential of just about any mechanical design. Granted, there are other rules-based tools out there, but iLogic seems particularly well suited for the task in the parameter-centric Autodesk Inventor design environment. A free 30-day trial is available to those who register at the company's Web site.