Posts Tagged ‘Circular Refernces’

Circular References – The Cure

Monday, May 11th, 2009

As my Great Aunt Eleanor always says: “An ounce of prevention is worth a pound of cure, stop bothering me while I am trying to sell my WoW gold on eBay!”

While I am not entirely sure what all of that means, she certainly is correct if she is talking about circular references. Preventing circular references from being created is much easier than trying to find them.

Going back to last Monday’s quiz, the first puzzle’s problem could be avoided if you remember this quote: “Always mate before you relate”. [I'll wait until the sophomore class stop giggling.] What this means is if you always fully mate the part in your assembly before you add any external relationships, a circular reference of this type will never happen. If you think about it, this is your design intent anyway. The position of the part is what you care about, the mounting fastener holes need to follow the part, not vice versa.

I don’t have a cute saying to prevent the second puzzle’s problem. The trick is to always ensure you mate your parts with design intent. Adding your parts to your assembly one at a time in a logical fashion will make this task easier. “PartA” is a fixed part. “PartB” bolts to “PartA” so fully add mates between those two. Next add “PartC”. “PartC” is located via “PartB” so only add mates between those two parts, don’t add any mates between “PartC” & “PartA”. Try to define the location of a part with only one other part. Though it is not always possible, this method reduces accidental circular references and makes an assembly easier to work with if your design intent ever changes.

Bottom up design and horizontal modeling techniques are also methods that reduce the likelihood of accidentally creating a circular reference.

Jeff Sweeney

Jeff Sweeney
Engineering Data Specialist
3DVision Technologies

Circular References = Termites

Thursday, May 7th, 2009

Circular references are the termites of the CAD world. You might not know they are there, they might not cause any real damage, or your house could fall on your head.

Your first clue that you have a circular reference is that change you make don’t affect your models as you think they should or you see terrible performance in some assemblies but other assemblies seem to be just fine. The AssemblyXpert is supposed to help you find them, but it didn’t find issue with either of the two assemblies in the quiz -so apparently it has some weaknesses. (I do have an SPR for these two, so there is hope for the future.)

assemblyxpertWithout the AssemblyXpert, you are pretty much left to manually find the problem. I typically suppress every part but the first fixed part, then unsupress each part one at a time keeping track of every mate and external reference as I go. Move the parts (sometimes temporarily suppressing mates) check your design intent…is everything working as it should? Then, if you are lucky, when you get to the part that contains/or is causing the circular references you’ll notice things aren’t quite right -fix the issue and then hope you are done. Else start the process over again!

Debugging circular references is a skill, and you will get better at finding them with practice.

Not a very rosy picture is it? Nope. That is why an ounce of prevention goes a long way which brings me to my favorite topic “Best Practices”!  …

Jeff Sweeney

Jeff Sweeney
Engineering Data Specialist
3DVision Technologies

Circular References – Answers

Tuesday, May 5th, 2009

What did you think of Monday’s quiz? I was surprised by the responses I received, only about 1/2 the people found both circular references.

CircularRefs.SLDASM is a typical problem I often find when a user attaches a purchase part to his assembly. (i.e. mounting plate) Think of the yellow block as the mounting plate and the red block as the purchased part. The red block has the hole and the yellow block has its hole positioned via an external reference back to the red part. (The logic being you always want the hole to line up with the purchased part.) However, notice the red block is positioned by the Concentric1 mate! Thus the position of the red block is defined by the position of the hole, yet the position of the hole is defined by the red block.

Image for second puzzle

Image for CircularRefs2.sldasm

CircularRefs2.SLDASM demonstrates a mating issue. Through mates, the yellow block defines the position of the red block. Through mates again, the red block defines the position of the blue block, and lastly through more mates the position of the blue block defines the position of the original yellow block!

Both of these examples aren’t terribly bad, yet there are very few parts here. Imagine (and I have seen examples of this) where there could be many parts involved in creating the circular reference. It works like a big chain reaction.

There is a third common circular reference type that I did not show in either of these examples. Equations (in both part and assembly files) can be an issue. One dimension defines the value of a second which in turn defines the value of the first. If you are an equation fan, you have to watch out for these too.

Lastly, you can have combination of these three scenarios: The mate defines the reference that defines the equation…oh the problems can go on and on!

Are circular references bad? Yeah, typically. Assemblies that contain them are difficult to change, and parts don’t update as you expect them to –sometimes they don’t update at all or they change for no apparent reason! Not to mention that it can bring your PDM package to its knees and kill your SolidWorks performance. Bad, bad, bad and bad.

Have I frightened ya? I hear you cry:  “Is there an easy way to find circular references??” Fine, I’ll tell you…..after the break….

Jeff Sweeney

Jeff Sweeney
Engineering Data Specialist
3DVision Technologies

Circular References Quiz

Tuesday, May 5th, 2009

You think you are hot stuff eh? You’ve gone through all the training classes -been studying for the CSWP, think you got SolidWorks licked? I have two words can make even the most seasoned SolidWorks user cringe…”circular references”.

I’ll give you a minute for your breathing to recover. <Sorry> You come to the 3DVision blog to be entertained and maybe learn something, and I spring that on you.

Circular references are a rather advanced topic because they are difficult to find and fix, yet sadly it is beginner users who get them the most often.

The Engineering Data Specialist’s handbook describes circular references as: When one thing defines another and that second thing in turn defines the first thing. [Hey, we work with data all day, we don't need to speak English very goodly.]

This zip file <CLICK HERE> contains two assemblies. Each assembly contains a different type of circular references. Here is the quiz. Open the two assemblies and see how long it takes you to find each problem. We’ll discuss these in future posts.

Jeff Sweeney

Jeff Sweeney
Engineering Data Specialist
3DVision Technologies

WordPress SEO fine-tune by Meta SEO Pack from Poradnik Webmastera