Best practice for top-down assembly design

Best practice for top-down assembly design

Anonymous
Not applicable
2,245 Views
17 Replies
Message 1 of 18

Best practice for top-down assembly design

Anonymous
Not applicable

Hi folks

 

Long time SolidWorks user/instructor here trying to get my head around Fusion 360. So far I like what I see but I'm clearly still missing something with regard to top-down design of assemblies, and F360's use of "joints" as opposed to "mates".

 

Typically when I start designing a large assembly in SW, I'll start with a master guide sketch and/or reference geometry that define things like the overall envelope, critical locations of key elements, etc. A lot of this stuff won't have been worked out yet, so it's important for these guide elements to be parametrically defined. The components of the assembly will then be designed using references to these guide elements, so that when I change the guides, the components change as well (in typically both form and position).

 

Quick example: say I'm designing a simple 2-axis CNC machine. My initial guide sketch/geometry would probably define the overall size of the machine, designate the front left corner as my origin, define positions for the Y shafts, a height for the X carriage, etc. Then I'd start fleshing out components using these guides. For example the Y shafts would be modeled as cylinders whose initial length is parametrically tied to the front-back dimensions of the machine, height (Z position) based on the X carriage height, and diameter tied to a global variable. At this point nothing about that component would be arbitrariy determined without some external reference to the enclosing assembly.

 

So, as one might suspect I am having trouble figuring out how to do this in F360. I appreciate that this software has been re-engineered from the ground up to take a more progressive/accessible look at what we've traditionally thought of as mates, which I think is great -- I'm just having trouble seeing how the workflow needs to change accordingly.

 

Here's what I've tried:

 

2-axis layout.PNG

 

  • Define reference planes and axes in the main assembly using reference geometry. This covers things like where the front/back/left/right sides are, how high the bed is, how high the X carriage is, etc.
  • Create a new component representing the tooling bed (basically Z=0). It's a plane extruded down a few mm, set to "grounded" in the parent assy. Could not figure out how to define the tooling bed profile based on the machine extents (with the left and back sides at the corresponding reference planes). 
  • Given this, I decided to work the other way around, and let the faces of my tooling bed component define the edges of the machine instead. Re-defined the planes which specify the locations of the Y shafts (which are inset a certain distance from the left and right edges) with respect to the tooling bed geometry instead of my guide geometry
  • Now I try to add a Y axis component. Clearly, what my SW brain is looking for is a way to tie the X position of the Y shaft component to the reference plane that I've set up to do that. I'm able to create a cylinder and position it where I want with respect to the tooling bed, then freeze this with a rigid joint. However, the location of the shaft is no longer tied to the reference geometry, and if I change one of those guide planes the shaft doesn't move accordingly.
  • At this point I'm derailed 🙂

So... given that I understand that the way I'm approaching this is not in line with the underlying design philosophy of F360's joint system, what is the best practice for how to set up an assembly like this? Do I need to let go of the idea of driving my components' form an position with parametric elements of the parent assembly (I hope not)? If not, how do I establish these relationships?

 

TL;DR: How do I best codify my design intent at this early stage of the assembly, before I actually have geometry modeled?

 

I will totally make a F360 Assemblies for SW Veterans video series to explain all this, once I can get my head around it myself. 

 

Thanks

 

- rdo

 

Accepted solutions (1)
2,246 Views
17 Replies
Replies (17)
Message 2 of 18

schneik-adsk
Community Manager
Community Manager
I'd like to do a quick gotomeeting to show a few tricks. Could you email me at kevin.schneider@autodesk dot com?
We can post our learnings back here once we chat.
Kevin Schneider
Message 3 of 18

Anonymous
Not applicable
Will do, thanks

- rdo
0 Likes
Message 4 of 18

Anonymous
Not applicable

I will be extremely interested to see the model/method you guys use. 🙂

Jesse

0 Likes
Message 5 of 18

Anonymous
Not applicable
Accepted solution

Just wanted to post a quick update on this. Thanks to Kevin at Autodesk for setting up a productive and informative meeting, during which we were able to discuss these issues. I'm in the progress of documenting a lot of this in the form of some videos/screencasts, which will take me a few days. In a nutshell however

 

  • For the most part, it is indeed possible to work in the way I described in F360 -- it's just done a bit differently
  • Whereas SW mates generally let you lock down one or two degrees of freedom at a time, F360 joints take a different approach, by locking down all 6 DOF initially and then opening up one or two to allow for specific motion
  • Joints require a point on both components to establish a positional relationship. There are lots of ways to make this happen, but the most straightforward is to use the a Joint Origin on one or both sides of the joint
  • To mate a component to the parent assembly in general (ie not another component explicitly), make a joint between the component and a guide sketch in the parent assembly. This will provide the reference point (joint origin) that the joint needs. (I'd been trying to mate a component to a plane, which is insufficient for a joint).
  • The "as built" joint in F360 is analogous to the InPlace mate in SW, in the sense that it's meant to be used for a component that's been defined in context. I'm used to shying away from these in SW due to things breaking with design changes, but the way it works in F360 seems more robust, as well as a deliberate part of the fundamental design of the software. The fact that Snapshots are saved in the timeline is key to how this works. Clearly I need to experiment with this a lot more going forward.
  • The "joints" metaphor is indeed a different take on "mates", and does depend more on physical geometry being present (or sketches at least). While it's not super straightforward to mate together two components that don't physically make contact, there are ways to achieve the same result -- one of these is with Rigid Groups.

 

As I said, now that I'm getting my head around this stuff I'll be posting some videos explaining the process in detail using a design exercise (2-axis CNC machine, probably). Will post here when I've made progress on that.

 

Thanks

 

- rdo

 

Message 6 of 18

Anonymous
Not applicable

Rdo, really glad to hear you're liking Fusion 360, sounds like you will put it through its paces, and can't wait to see what you come up with.  For example, I'm curious why you would make a joint of a component to not explicitly another component. 

Jesse

0 Likes
Message 7 of 18

Anonymous
Not applicable

Jesse

 

I think I've become accustomed to mating components to base reference geometry instead of to each other after years of experience in SolidWorks seeing the latter method break when changes are made or components are replaced. If and when I do mate components to one another, those mates are usually between reference geometry within those components instead of physical geometry (faces etc.), again to minimize the chance of something breaking when the components are inevitably revised or swapped out.

 

In many cases I also feel like mating to reference geometry is a better way to express/encapsulate design intent (sometimes, not always).

 

At any rate, whereas I was somewhat paralyzed at first when trying to figure out how to approach assemblies in F360, I'm making progress now and will document what I find.

 

- rdo

 

Message 8 of 18

Anonymous
Not applicable

One drawback I believe you're going to find with defining joints to component reference geometry as apposed to object faces and what not, is that when an object is parametrically modified via its driving sketch, the joint interface will not automatically update to adapt to that new object geometry or positioning. 

 

I look forward to learning from each other!

 

Jesse

Message 9 of 18

Anonymous
Not applicable

Also, besides using rigid joints, you can define a new sketch to an existing face (or construction plane that was defined to some existing object geometry), and a body/component created from that sketch will also be defined to the existing object, and will maintain the interface with parametric sketch changes as well.  The only real disadvantage of a joint is that the positions of the jointed objects can jump when editing features in the timeline, due to the nature of "going back in time" with the timeline.  The "build in place" method I outlined just now, avoids that issue, and is what I generally do, except for certain circumstances such as when have multiple duplicate "linked" objects that are needed.  Let me know if you have questions about anything.

Jesse

0 Likes
Message 10 of 18

Anonymous
Not applicable

Just to follow up on this, I finally finished the first video in the series that I'm doing on F360 modeling coming from a Solidworks background. This one covers assembly setup, how basic F360 joints work and how they differ from mates, and modeling in place.

 

https://youtu.be/6tmAG7Hw1g4

 

- rdo

 

Message 11 of 18

Anonymous
Not applicable

Thank you so much for doing this Rdo!  I'm going to carefully watch it later today and will give my thoughts.

Jesse

0 Likes
Message 12 of 18

fredsi
Collaborator
Collaborator

Ryan,

 

Thank you....excellent. As someone coming from a 14+ year background with Solidworks, I wish this type of presentation had been available last yearSmiley Happy Your efforts and the recent material published by Adsk with the last update will definitely ease the way for those coming from popular history based modelers. I know these videos are not trivial exercises with respect to time and preparation, so greatly appreciate your investment in doing them.

 

Looking forward to the next episode!

 

Fred

 

Message 13 of 18

schneik-adsk
Community Manager
Community Manager

GREAT! Nice to see this and thanks for taking the time to document it.

Kevin Schneider
0 Likes
Message 14 of 18

Anonymous
Not applicable

That was a really well thought out and produced video, and it's cool to see how familiar you already are with the program!  I'm not really coming from SW, but interesting none the less to see the workflow you use, with the layout sketch(s) and then jointing components to that main coordinate system.  I'll have to let my mind wrap around the pros and cons of that kind of top down approach as you say, as apposed to defining one component to another more or less. 

Again, thanks for this, will need to somehow be well remembered in the collective consciousness for others that would benefit from it.
Jesse

Message 15 of 18

jeff_strater
Community Manager
Community Manager

Nice video, indeed, @Anonymous!

 

I can clear up one point of confusion here:  The placement of the Joint Origins on the sketch lines:  Depending on where on the line you select, you can get different orientations of the joint origin.

 

I've added a rectangle to my sketch just to help visualize the sketch plane, because I am not looking at it straight on.

 

If you select on the line near the endpoint, the joint origin will be oriented along the sketch line (that is, its z axis will align with the sketch line):

joint origin 1.png

 

But, if you select the line end point directly, Fusion will orient the joint origin so that its z axis will match the sketch normal:

joint origin 2.png

 

Here is a little screencast showing how to this works with joint origins.  Also, I show how you could have avoided creating the joint origins completely - the same method works even in the Joint command - depending on where you select on the line, you can get the orientation you want without creating joint origins at all

 

 

Thanks,

 

Jeff Strater (Fusion development)


Jeff Strater
Engineering Director
Message 16 of 18

Anonymous
Not applicable
Thanks Jeff, good info. I figured there were nuances to the way joint origins are selected and manipulated, but I hadn't found anything in a quick search through the docs.

- rdo
0 Likes
Message 17 of 18

Anonymous
Not applicable

Thanks for your post. Experienced in Solidworks, fighting with F360 and looking to get insight on others' best practices.

 

 

0 Likes
Message 18 of 18

Anonymous
Not applicable

I'm having the same problem this guy was having.

Can I please set up a go to meeting with you also?

Thx!

0 Likes