Tuesday, December 15, 2020

Generative Design

The second half of this year has been pretty busy for me.  One area that I have invested a lot of my time has been learning Generative Design.  I still remember being at Autodesk University when Autodesk first started talking about this technology.  They had a bulkhead from an Airbus plane.  They talked about how much weight they were able to remove from just that one subassembly.  I knew then that this would be the future of design.

It has been a few years, but I have really had my first opportunity to really get into Fusion 360's Generative Design process and learn how to perform the design studies.  It really is a powerful technology and even though the studies are done in Fusion 360, I have sought ways to bring this ability to Inventor.  Through this learning and investigation, I have come to discover that Fusion 360's Generative Design process can be used on almost any file.  If you are using Fusion Team, you can use the Desktop Connector to sync your local files to the cloud.  Then use Fusion 360's Any CAD ability to place the Inventor model in a new Fusion 360 design.  If you can't leverage Any CAD, then you can always export and import an STP file.

Regardless of how you get your design into Fusion 360, either by designing right in Fusion 360, using Any CAD, or importing an STP file, you will need to do some sort of setup.  Generative Design has two key geometry definitions, Preserve Geometry and Obstacle Geometry.  Preserve Geometry is a body, or bodies, that need to be part of the final design.  They usually represent key connection points.  Obstacle Geometry is a body, or bodies, that need to be avoided in the final design.  Both of these can be component bodies or bodies modeled specifically for the design study.  You do have the option of creating a Starting Shape, which is a body that represents the shape you want to start with.  This is not a requirement and I don't often define a Starting Shape.



Preserve Geometry
 
Obstacle Geometry


The Connector Obstacle command does a great job of allowing you to define assembly hardware as obstacles.  You can pick a hole and define a bolt, with or without a nut, shown as cylinders.  You also can define a tool clearance, shown as another cylinder, which will ensure you have access to properly assemble your components.

Connector Obstacle

After you have all of the Preserves and Obstacles defined, you can begin defining your Load Cases.  Load Cases are Structural Loads and Constraints that represent different scenarios that your design is going to face.  You can apply static forces, pressure, moments, bearing loads, and remote forces, which were added in November of 2020.


Next comes defining your Objectives and Limits, this is where you can define the objectives for the study.  You have a few choices as to what types of outcomes you are looking for.  The most common is the Minimize Mass with a minimum Safety Factor.



One of the best parts of the Generative Design workflow in Fusion 360 is that it is manufacturing aware, meaning, that we can identify potential manufacturing methods and the study will take those into consideration when generating the outcomes.  We have choices of Unrestricted, meaning it will just generate the best shape possible, Additive, 2 1/2-Axis Milling, 3-Axis Milling, 5-Axis Milling, 2-Axis Cutting, and Die Casting.  Each will have its own specific parameters.  There is also the ability to enable cost estimation for the outcomes.  This enables you to enter the number of pieces you need to make and Fusion will use the aPriori database to also estimate manufacturing cost.


The last criteria you will have to define is the materials.  You can define the potential materials that are being considered for the component.  You can set materials for all manufacturing methods, or you set specific materials for specific manufacturing methods.


After all the setup, you can then Preview the outcome.  This is a good idea because it can help you see if you forgot to include a preserve or obstacle, which has happened to me once or twice.  


Then it is time to run the study.  The study will be done in the cloud.  When Autodesk first introduced this workflow, it cost 25 Cloud Credits to calculate the outcomes, however, they have since removed that cost.  Now the only cost associated with running the Generative Design Study is just a cost of 100 Cloud Credits per outcome that you generate an actual design file from.  The time it takes to fully calculate all the outcomes is a combination of how many manufacturing methods and materials you have chosen.  For me, it usually takes a couple of hours, but the actual time will vary.

As the study outcomes are being generated, you will be able to start looking at the results.  There are different display modes for the results and the left-hand side of the dialog gives you the ability to filter the outcomes of a variety of factors.  One of the newer enhancements is that you will receive recommendations as to which ones are seen as the best possible outcomes.


I could go on and on about filtering and sorting individual results, but the goal would be to export an outcome to a design file.  That would be better as another blog post soon, so this will all for now.  Hopefully, you will be able to leverage this workflow, regardless of which tool you use as your primary design tool.  

If you would like to see more, please watch my recent webinar on how to perform a Generative Design Study on an Inventor model.


Tuesday, November 3, 2020

Inventor Feature Properties

 Last week, I had a support call that the solution ended up being a familiar, yet relatively unused function of Inventor.  I had already been using Inventor for years before I found it and  I am not sure how many users even know about it.  I am talking about Conditional Suppression of the Feature Properties.  

Inventor Feature Properties users access to several different properties of a given feature in the browser.  It will allow a user to change the name of the feature, create some conditional suppression, enable or disable certain Adaptive elements, and change the appearance of the feature.

In this case, I want to focus on the conditional suppression options.  These allow a user to create conditional suppression of a feature based on the value of a parameter.  You might say, I can already do that with iLogic.  This is true, however, iLogic requires a certain level of comfort with writing VB.net code.  Inventor Feature Properties don't require any code and offer an alternative to users that are intimidated by iLogic.

The premise is really simple, you can access the dialog by right-clicking on a feature in the browser.


Once in the dialog, it is just a matter of defining the conditions of the suppression.  




The user can enable If then build and expression related to a parameter.  Your choices for parameters will be limited to any parameters of that feature and any parameter with a meaningful name.  Then it is a matter of picking the typical equation types, such as equals, does not equal, greater than, greater than or equal, less than, or less than or equal.  When it comes to the value to test for, it can be a static value or another parameter values.

Here is a simple demo video of how this can work.


This is a pretty simple command, but it is capable of quite a lot.  It is just a matter of identifying driving relationships.  At my job, we get a lot of requests from our customers to help them add automation to their designs.  We will typically lean on iLogic for that automation, but before we do, we consider if something like the Feature Properties can help us accomplish the given task before we jump to iLogic.  So think of the Feature Properties the next time you need to create some conditional suppression.



Thursday, October 22, 2020

Bringing a Little It's A CAD World to Autodesk University

 Every year Autodesk conducts Autodesk University or AU at locations all over the world.  It is the opportunity for Autodesk software users, industry experts, and Autodesk employees to gather together to share knowledge.  This year, in light of COVID-19, Autodesk has elected to host one virtual global event, which will be held November 17th to 20th.  Whether you have attended AU multiple times, or never attended, this is a great opportunity to grow your skills and knowledge.

You can still register for AU.

https://www.autodesk.com/autodesk-university/conference/overview

I have spoken at AU Las Vegas on a few occasions and since this year is being conducted virtually, I figured I would submit a few class proposals.  Two of those proposals have been accepted.  My class presentations will be pre-recorded next week, then I will be hosting a live Q & A for each of my two classes during the week of AU. 

The classes I will be teaching at AU are Vault & Inventor Properties:  Working Together for Better Data Management and The Essential Skills for Sheet Metal Modeling in Fusion 360.

Vault & Inventor Properties:  Working Together for Better Data Management is an in-depth look at the Inventor iProperties and Vault Property systems.  I will be discussing the differences between the two systems.  Then I will show how to create properties and mappings between the two systems to create a seamless experience for end-users.

The Essential Skills for Sheet Metal Modeling in Fusion 360 will cover the basic skills necessary for creating sheet metal models in Fusion 360.  I see a lot of posts in the Fusion 360 Facebook User Group from people that are looking for resources on how to get started in different areas of Fusion 360.  I felt that this class would be the perfect opportunity to create a resource for sheet metal modeling.  I will discuss the purpose of the Sheet Metal Rules and how the Flange command can be used to create three different types of geometry.

You can find these two classes and many more in the AU Session Schedule.

https://www.autodesk.com/autodesk-university/conference/schedule

If you do have the opportunity to attend, I hope you check out my classes and attend the live Q and A session for one, or both, of the classes.  It would be a great way to connect to those of you that have been reading this blog over the last few years.


Hope to talk to you then.


Thursday, June 25, 2020

Inserting Parameter Values into Drawing Text

The last parameter workflow that I wanted to share is how to insert a model parameter into a drawing note.  It is a feature I rarely use, but I don't do production work full-time.  The process is pretty simple but will link the value from the model to the drawing note text.  You will be at your most productive when you can create these types of relationships which cause Inventor to do the bulk of your time-consuming tasks.

To illustrate this, I thought about scenarios where drawings have notes about unmarked fillet radii.  This is where filleted edges are not dimensioned but the user will place a note that reads, "All unmarked fillets to be 1/16 in."  To make that note more intelligent, I could create a user parameter named FilletRadius, then use that parameter when creating the required fillets.  When I add the note on the drawing, I could insert the FilletRadius parameter's value into my note, instead of typing that value out.  Which would save me from having to edit the note if the FilletRadius value changes.

So the first step would be to create the necessary Model or User parameter.  For my example, I am going to create one called FilletRadius.


Then I need to create the Fillet features that use that value as the radius value.


The last step would be in the drawing file.  You start a Text Annotation as usual and type and static text that you need in the note.  For my example, I would type, "Unmarked radii have a radius of."  To get the User Parameter into the annotation, I configure the drop-down menus above the text pane.  Selecting the file, User or Model parameter, the required parameter, and the precision.  After those selections are correct, you can click on Insert Parameter, which will insert the specified value into the note text.  Then you can finish the note off with any other static text.


Here is a video demonstration of how to insert the parameter.



That is all there is to it.  Again, this creates a dynamic link between the model parameter and the text note.  This will eliminate having to update the model value and the note text if the unmarked fillet radii change.  The scenarios of where this can be useful are numerous.  Hopefully, you can use this technique to build similar relationships between model parameters and text notes.


Thursday, June 4, 2020

Automation Through Linked Inventor Parameters

Building automation into Inventor models is one of the biggest requests that I hear in my job.  Customers have a few projects that they have built and they want to find a way to leverage that and build new projects faster.  In most cases, the designs have variations in them that make them unique.  When I review these customer models, looking for ways to add automation to them, I first look for ways to utilize basic Inventor functionality before considering custom programing.  One of the easiest ways to get automation into a design or project is to link parameters.  

A model's parameters can be linked to either another model or an Excel file.  Once the parameters are linked, changing the values in one location will cause the linked parameter in all the other locations to update.  In most cases, the local update icon will light up in the other files, letting you know that Inventor sees new values and wants to update the models to reflect the new values.  The process of creating the link is pretty simple but can be very powerful and save time for the user and eliminate mistakes.

To link parameters to an Inventor file or Excel file, you will first need to open the Parameter dialog box and click the "Link" button.  


Inventor will then display the Open dialog, where the user can filter based on the file type they are looking for.  



If an Inventor model is picked, a dialog box will be displayed asking which parameters you would like to link.  



If the selected parameters are not marked for Export, Inventor will ask if it is okay to mark it for export.


Once that is done, Inventor will bring all the parameters into the parameter list.  


If an Excel file is picked, the user can also pick the Start Cell for where Inventor should start reading parameter values. 


Then Inventor will add the parameters to the list.


Here is a video demonstrating the process of linking parameters between Inventor files.


Here is a video demonstrating the process of linking parameters to an Excel file.


Having done this multiple times, I have a few tips that will save you from errors and make the process more manageable.  First of all, even though you can link parameters between models, Inventor will complain about a cyclical reference if you link parameters between an assembly and one of its parts.


If you prefer to control parameters by linking between Inventor files, you could create a separate file that holds all the parameters and then link the models to that file, as a shared resource. 

If you want to link parameters to an Excel file, you have to put all the values on the first tab in the file.  I have seen customers create multiple tabs for different calculations, then push those values to the main tab.  Also, when you link the parameters to an Excel file, you will be asked for a start cell.  Inventor will then start reading that column for parameter names and use the next cell to the right as the value.  If it sees a blank row, it will stop reading values.  By using different Start Cells and blank rows, you will have better control of which parameter values get pulled into which files.  One limitation of this is that you will not be to link one part file to a specific Excel file more than once. 

Lastly, I advise you to keep the parameter names of each file unique.  If you link in a parameter named "Length" and you already have a parameter named "Length" in your file, Inventor will change the name of the linked parameter to "Length_1."  I haven't seen this cause an error or issue, but it might cause confusion.

So that is all there is to it.  Using the ability to link parameters to other models or Excel files should give you an easy way to add some automation to your new or existing project.


  

Friday, May 8, 2020

Inserting Parameters into iProperties

A common challenge Inventor's users face is the need to put model dimension values into iProperties.  For example length, width, and thickness values into the description.  Many users resort to manually entering these values.  This usually results in errors because they forgot to update a value when the model changes.  However, manually entering these values is not necessary.  It is possible to link your description or any standard or custom iProperty to a parameter value.

The first step in this process is to understand the meaning behind the Export column in the parameter dialog.


The Export column has two roles.  One is it will allow the parameter value to be derived into another part during a Derive operation.  The other role turns this value into a Custom iProperty.  I use the Export column for this purpose more frequently than for Derive operations.

Simply checking that box isn't all there is though.  Since parameters are typically entered as decimals, it may be necessary to format the value in the custom iProperty.  Also, you need to understand the formula for getting the iProperty value into another iProperty, i. e. the Description.  To illustrate how to do this, I am going to use a wall panel similar to one I would have made back in my days in the RV industry.  I have made the part as a rectangle that I extruded, then added a few cutouts.  To make creating the formula easier, I like to give my parameters meaningful names, so I name them Length, Width, and THK.  I can then check the Export column for those three parameters.




Then I want to make sure that Custom iProperty associated with these parameters are formatted the way I want.  Right-clicking in the Equation Cell for an Exported parameter will show the command to format the iProperty.  


In this dialog, I have options such as decimal or factional, precision, and unit string.  The Apply to existing comparable parameters options will also format other exported parameters the same way.  This can save a lot of time since you won't have to format each parameter individually.


Now, opening the iProperty dialog and jumping to the Custom tab, I will see the three custom iPropertiers that were created by exporting the parameters.


The formula to insert these into another iProperty isn't that difficult.  It is just a matter of starting the value with an equal symbol, to signify that you are going to be creating a formula.  Then anytime you want to insert a parameter, you enclose its name in <   > symbols.  So in my case, my Description will be =<THK> Panel, <Width> x <Length>.



This formula method will work in an iProperty and will allow you to pull from any iProperty.  Once a formula is entered, the iProperty will display the result of the formula.  If you need to edit the formula, clicking the function symbol next to the iProperty will display the formula, so you can edit it if necessary.

Here is a video demonstrating how to accomplish this.


Thursday, April 30, 2020

Taking Parameters to the Next Level

Accessing a model's parameters in Inventor gives a user access to many functions.  You probably have changed values directly in the Parameter dialog.  Perhaps you have even given the parameters descriptive names or created equations between values.  However, there are several functions that are available that are often overlooked. 

Did you know that you can have iProperties pull parameter values?  Did you know that you can link parameters to Excel files or other Inventor models?  You can even pull parameters into text notes in an Inventor drawing.  Leveraging these functions can simplify your daily workload, so I wanted to share some of these often-overlooked parameter functions.  So in the coming weeks, I will be sharing blog posts and videos on how to incorporate these into normal workflows.  First up, will be how to pull parameter values into iProperties.  Come back next week and check that out.

Wednesday, April 8, 2020

Fusion 360: Rest Machining Between Setups

If you consistently read my blog, it doesn't take long to notice that there is a large cross-section of material covered.  That is influenced by my job, but it is also related to my drive to constantly learn new skills.  Similarly, Autodesk keeps expanding its offering, and one of their current areas of development is CAM.  Consequently, I have been spending some of my time picking up some CAM skills.  Recently, I was talking to one of our customers that does CNC machining.  He had an interesting question that lead me to a really cool workflow that I thought was worth sharing.

The Scenario:
The customer had a part that required machining on more than one side.  Also, he preferred to include the vise in the model to make sure he didn't have any issues with the tool contacting his workholding.  He wasn't exactly sure how to approach the multiple setups, but his biggest question was how could he get the stock for the Setup 2 to be the shape that was left after the operations of Setup 1.

The Answer:
I knew Fusion 360 was capable of all of this, but it had been a long time since I had worked with Fusion 360's ability to export a setup's remaining stock.  Also, Fusion 360 had changed so much since the last time I had done it and I wasn't confident that it worked the same way, as the last time I used it.  So I had to do a little bit of research to refresh my memory. 

During my research, I found two important pieces of information.  First, a reminder for where the command was to export stock from a setup.  Secondly, there was a feature preview that allows a user to use the previous setup's remaining stock as the stock for a setup.  However, I tried this a few times and I was never able to get it to work.  It is only a preview feature and that typically means that Autodesk is not quite done with it.  So I wasn't too disappointed.

The first part of what this user was trying to do was easy.  Fusion 360 allows for multiple setups with different coordinate systems, fixture identification, and stock definitions.  The coordinate system is the critical part because the tool for milling operations always comes from the Z-axis.


The vise portion of the workflow isn't difficult either, it is possible to have multiple instances of the same vise in the model.  Then it is just a matter of using the necessary Joint definition to orient each vise appropriately.  Then the user can toggle the visibility of the vises as needed.  

When it comes to the initial CAM setup, if you are going to place and constrain your part in a  workholding, you will also need to model the stock for Setup 1 as a body or component.  This is because you will need selectable geometry for the Joint between the stock and vise.  The stock generated by the software for the setup will only be seen while you are in the Manufacture workspace, where you will be unable to make the joint.  I will admit it is possible to create offsets in the joint to get the jaws to the necessary positions.  However, that creates a disconnect between the defined stock and the jaw placements.

Setup 1
Setup 2

The process of getting the result of one setup to be the stock for another setup is not that complicated.  However, if you plan on including your workholding, there are some intricacies that you will need to account for.  The process of exporting the solid is just a matter of simulating the setup, then playing the complete simulation or jumping to the end.  Then the command to save the stock is in the right-click menu.


The remaining stock will be saved as an STL file on your local machine.  At this point, it could be brought back into the same design file.  The one exception to this is if you want to place it in a vise.  This is because the STL is a mesh file and in my testing, I was unable to select the mesh faces and edges while defining the joint to place the stock in the vise.  

It is possible to convert the mesh into a solid, but that is best done in a separate file.  For the Mesh to Brep command to be available, you have to disable the setting for Capture Design History.  So my process in this case is:

  1. Start a new design file
  2. Insert mesh file, scaling if necessary
  3. Disable setting for Capture Design History
  4. Use Mesh to BRep to convert the mesh to a solid model
  5. Save the design
  6. Return to original design
  7. Place and ground the stock for the next setup
Because the origin of the original design and the imported mesh are the same, it worked out that the new stock landed on the original model.  This may not be the case for you so you might want to check this and move bodies as needed.

The last step in the process above is to ground the stock.  The reason for that is when you create the joints to hold the stock in the vise, the stock is likely to move away from the original design.  This is not ideal and the easiest fix is to just ground the newly imported stock.

At this point, the new stock should be located over the original model, and you may or may not have it placed in a vise.  Now you can return to the Manufacture workspace and begin creating your new setup.  This time, when picking stock, you will use the From Solid option and pick the imported stock model.  I like to do this by picking it from the browser, that way I don't get the wrong body, especially because the model and the stock are overlapping.  



Then you should return to the Setup tab to define a coordinate system that matches the part origin and orientation for this setup.



I do want to remind you that this is an export and import process.  So if the operations in Setup 1 change enough that the remaining stock will change, you will need to perform the export and import processes again.

Here is a YouTube video that demonstrates the process.



I don't CNC program for a living, but I feel pretty confident that this would be my process if I did.  I think this process gives you a truer representation of what is happening and will likely lead to more efficient programs.  






Tuesday, March 31, 2020

Inserting Properties into an Inventor Title Block

This is my last post in my series covering Vault Properties and Inventor iProperties.  I have previously explained that there is a difference between Vault Properties and Inventor iProperties.  Then the last two posts have been instructions on how to create the property in Vault and map properties to Inventor custom iProperties.  Once you have those properties created and mapped, what can we do with those properties?  They can be shown on drawings in Parts Lists, Title Blocks, and Borders.  So I wanted to complete the series by explaining how to get these properties onto a drawing.

Placing properties on a title block isn't that difficult, but if you haven't done it before, you may not know where to start.  Also, custom iProperties are a little bit tricky.  For the purpose of explaining how to do this, I am going to say that I want to add Stock Location and Originator to my title block and I want to add Stock Location to my Parts List.  That way someone in the warehouse can look at the drawing and know where to find the parts.

Since this is something that we want on all of our drawings, I am going to edit my drawing template.  I will need to have a model that already has those iProperties.  Then I will need to open my drawing template.  To do this properly, you want to use File> Open to open your template.  You don't want to go to File> New.  Once the template is opened, you need to add a base view of a model that contains those custom iProperties.  It doesn't really matter what the model is because we will delete the view once we have placed its properties in the title block.



So the next step would be to edit the title block.  You can right-click on the title block on the active sheet, in the browser, or on a title block listed under the Drawing Resources.  Then click Edit Definition.


This will open the sketch of the title block.  It can be a little overwhelming because you are going to see dimensions, names of properties that populate the title block and labels for those fields.  Most often these will run together and make it a little hard to read.  However, zooming in on certain sections will help.

In this example, I am using the default Inventor Title Block.  So, I think I will change QA to Originator, then place the Originator property in that block.  Then I will add Stock Location at the bottom of that column.  So first I will double-click on QA to change the text of that label to Originator.  Then, I can use the Text command to add a place holder for this property into the title block sketch.  To get the custom iProperty into the place holder, you will need to use the drop-down boxes above the text window to pick the right iProperty type\source, then the desired property.  Then clicking the "x" symbol will place that property into the text window.


After the text is placed, you can control the position of the text, in relation to the insertion point, through the two sets of justification toggles.


Then at the sketch level, the insertion point can be constrained or dimensioned to locate it properly.


So now, I am going to insert a text label, using the text command to label the last box Stock Location.  Then, I will insert the Stock Location custom iProperty into that box.  The following image is what it should look like when done.


When you are done editing your title block sketch, you can click Finish Sketch to exit sketch mode.  Inventor will ask if you want to save the edits or if you want to do a Save As.  In my example, I will just save it.


Here is a YouTube video that shows how to make these changes to the title block.



Adding Stock Location to the Part List is pretty simple, but there is a wrinkle that makes it more difficult.  The issue is that Parts Lists are style based, which means it pulls definitions from the Style Library.  So I could modify the Parts List Style in the template, but if I don't add it to the Style Library, I could have the change undone by the Style Library.  

Before changing the Parts List style, you will need to make sure that your Inventor Project has Use Style Library set to Read-Write.


I typically tell users that this setting should be set to Read-Only because I don't want users inadvertently making changes to their styles.  To change this from Read-Only to Read-Write, you will have to make sure all of your Inventor files are closed and if you are using Vault, the project will have to be checked out to you.

After you have made that change, you can open the drawing template and navigate to the Style Editor.  

Under Parts Lists, you will see all the Part List definitions in this template and the Style Library.  You are most likely using one customized to your company.  I am using the default template in this case.  So I will just copy one of the default styles because I don't like modifying the default styles.  I am going to select Parts List (ANSI) and click New at the top.  This will copy Parts List (ANSI) and ask me to name the new style.  



To add the custom iProperty, I will have to click on the Column Chooser, then select New Property.  Then I can click where it says <<Click here to add a new property>>.  Then I can type Stock Location, which is the name of the custom iProperty I want to add.  This will be case sensitive, so make sure to type it so it matches the way it was spelled in the other places it was used. 


Then back in the Column Chooser dialog, the columns can be ordered using Move Up or Move Down, which are under the selected properties.



Now the style will need to be saved, by clicking on Save at the top of the Style Editor.

So that added the column to the Parts List, but there is one other issue to consider.  Is this Parts List going to be our main/default Parts List?  If so, you will want to change this style to the default Parts List under the Object Defaults.

Doing this will make sure that Parts List w\Stock Location will be the default style for Parts Lists in the future.

Now we need to save these changes to our Style Library.  That is done by using the Save command from the Styles and Standards panel of the ribbon.


This will compare styles in the drawing to styles in the Style Library and offer to change the Style Library's styles to match the ones in the drawing.  This cannot be undone, so make sure you are ready to do this before clicking OK.


Once the styles are saved to the Style Library, don't forget to save the template and change your Inventor Project back to Use Style Library =  Read-Only.  If you are using Vault, you will want to undo your check out of that file.

Here is a YouTube video I made that demonstrates this process.



The process of adding the custom iProperty to the title block or parts lists are not too difficult.  Making sure the Style Library is updated with the new Parts List style is probably the most difficult part.  However, if you can get all your properties managed in your CAD files and in your Vault, you will have a lot easier time getting the right information to show up in the right places.