Assembly Guidance for 3D CAD and the New Auto Mate Repair Tool in SOLIDWORKS 2023

Even experienced CAD people can struggle creating assemblies. You constrain, add relations or mate different components together to build an assembly. Whether you are adding mates, relations or constraints, the basic concepts are the same. Users struggle because they lack a solid understanding of how mates work. Once you understand the basics, mates become easier to manage, and your assembly models are less likely to experience broken or faulty mates.

The basic concepts are valid regardless of what 3D CAD tool is being used. Whether you use SOLIDWORKS, CREO, Onshape, Inventor, etc. doesn’t matter. The same rules will apply.

When you are working in 3D space, you need to think in terms of “six degrees of freedom.” Any object living in three dimensions has six degrees of freedom; this includes you. You can move forward and backwards, side to side, up and down and rotate. Because we live on Earth and are not floating in space, gravity eliminates one of our degrees of freedom and prevents us from drifting off the ground. Of course, we can jump up and down, but humans do not have the ability to levitate or fly.

When you are working with a CAD model, that model is floating in three-dimensional space – with no gravity acting upon it. It has all six degrees of freedom available.

For most people to feel safe, they need to know where they are at all times. People tend to think of their location in terms of where they are relative to their home or their place of employment. If you don’t know where you are, you feel lost. CAD models are the same way. If their location is not defined relative to the origin, then the software spends a lot of time trying to keep track of where the model is. This can affect your system performance. The longer you delay in defining your model’s location, the more you will experience a system slowdown as more and more memory gets dedicated to keeping track of where the model actually is.

So, your first task when creating an assembly is to locate the primary part relative to the origin. Most assemblies have a frame or panel that is the primary part, and all other components are placed relative to that primary part.

A rookie move is to just fix or ground the main component at some random location inside the assembly. While that will satisfy the software to some extent, it means you can’t leverage the default work/reference planes when creating any future mates.

Best practice is to align the origin of the main component with the assembly origin, or to center the main component on the assembly origin.

For example, let’s look at assembling a bicycle. Our primary component would be the bicycle frame. The frame has been modeled so it is centered along the reference planes.

In SOLIDWORKS as well as other 3D CAD software, you have the ability to constrain or mate between the origin of the part and the origin of the assembly. This will automatically line up all the reference planes as well. By centering the main component on the origin, you can leverage the primary reference planes when building out the assembly.

In SOLIDWORKS, I can add a coincident mate between the origins and enable align axes to ensure the primary component—the bicycle frame—aligns to the assembly reference planes.

By using this method, I eliminate all six degrees of freedom.

Many years ago, I worked on a large conveyor system for a medical device firm. The entire assembly took up an area the size of a football field and was housed in a large warehouse. Because the assembly was so large, the design was divided up between several engineers and one project manager. The project manager developed an assembly file made up of a grid of reference planes.

Each engineer was assigned a section of the large assembly and told where to place their design in relation to the grid. For example, my design was to align to the top plane, Grid C and Grid 3.

The project manager would then import our top assembly which included the assembly file with the grids and our designs into a master assembly. This allowed him to review how all the sub-assemblies fit together. It ensured that all the sub-assemblies would mate properly, and also improved system performance because the sub-assemblies could all be loaded as references or links. If the design changed in any way, mates would be easier to maintain.

When adding a constraint/relationship between two components, consider what degrees of freedom will be eliminated. In this example, we are inserting one cylindrical component into another component. In some 3D CAD software, this is considered aligning the axis. In SOLIDWORKS, this is a concentric mate. In Inventor, you would use an Insert mate.

SOLIDWORKS provides the option to Lock rotation when applying a concentric mate. This eliminates an additional degree of freedom. If you apply a concentric mate without locking the rotation, how many degrees of freedom are remaining? What additional mates do you need to fully constrain the part?

When adding a coincident mate between two parts, you normally still have three degrees of freedom remaining – rotation and translation in both the X and Y directions on the plane where the coincident mate is placed.

If you want the wheel to rotate with the handlebars, the easiest way to control that movement is to add a coincident mate between the two right planes. By using reference planes and not features, you ensure that the components will move together and that if the design changes in any way, you won’t need to repair any broken mates.

One of the cool tools inside SOLIDWORKS is the ability to copy with mates. Simply select the component you wish to copy from the browser, right click and select Copy with Mates. This will automatically create a copy of the component and allow you to leverage off the existing mate definitions to place the copy.

Another way to make your assemblies more efficient is to create fastener assemblies. If you have a group of fastening components (bolts, washers, nuts, etc.) that will be used throughout your assembly, create an assembly of just the hardware. You can then copy and place that assembly instead of duplicating the assembly mates between the hardware components. An added bonus is that you can easily create a bill of materials which separates the hardware using this method.

If your fastener group includes a nut, add a distance mate between the inner face of the nut and the inner face of the washer that is equal to the panel thickness where the hardware will be mounted.

To quickly eliminate the rotation in your fastener assembly, simply right click on the mates in the browser and select Lock Rotation.

If you don’t see any (-) symbols in front of any of the components in the browser, you know that all degrees of freedom have been eliminated and your assembly is fully constrained.

You want to eliminate as many degrees of freedom as possible, as this improves system performance. Ideally, you will not see any under-constrained components in your assembly.

If you want to be able to move your assembly to check for interference or check range of motion, create one configuration that is under-constrained and set your default configuration to fully constrained. That way you can use the fully constrained assembly most of the time without slowing your system down.

In this example, I have a printed circuit board assembly. I have a small resistor that is placed multiple times on the board. There are several wrong ways to place copies of the resistor, one of which would be to create a 4 x 1 array of the component. The reason this method is incorrect is that if the number of resistors changes or the spacing or position of the resistor changes, you will have to redo all the mates.

Another common error would be to position resistor #2 in relation to resistor #1, and resistor #3 in relation to resistor #2 and so on. That way lies potential failure. If resistor #1 is deleted or shifted in any way then the other resistors will also shift, creating a domino effect of errors which will all need to be corrected.

The correct method is to place each resistor independently, using the PCB’s reference planes or the PCB artwork sketch to place the resistors. That way if the PCB artwork sketch changes, then the resistor positions will automatically update as well. Additionally, by treating each resistor’s mates as independent items, the system performance is actually better.

The domino method of creating constraints will seriously impact your system. Now imagine you have several of these PCBs in your top assembly; your top assembly will move like molasses.

There are four different reasons assembly mates will fail.

  1. If you replace one component with a different component, any corresponding mates will fail and have to be re-defined.
  2.  If you move or reposition a component, any mates to that component will fail and have to be re-defined.
  3. If you delete a feature, such as a hole or face, that has mate assigned to it, you will need to modify or delete that mate.
  4. If you open an assembly that you receive from an outside source, you will probably have to re-define some or all of the mates depending on how robust the model is.

It can be tedious and frustrating at times to try and figure out why good mates have gone bad. Those red warnings in an assembly browser strike annoyance in most SOLIDWORKS users.

The 2023 release of SOLIDWORKS tries to address this pain point by introducing a new tool: Auto Repair.

Locate the unresolved mate in the browser. Select and right click to access the new Auto Repair tool.

If the tool is unable to automatically solve the issue, click the Edit button and re-define the mate as you normally would.

My assembly had several errors, and the automatic mate repair was unable to fix a single one. I also was not thrilled with the fact that I had to select each and every broken mate one at a time. I had hoped for a tool which would collect all the broken mates, attempt to repair them, and then provide a list of mates which required the user to re-edit, similar to the Sketch Display/Delete Relations dialog.

In most cases, the broken mate was between one of the mounted connectors and the front face of the panel. The front face had not moved, and the Auto Repair feature should have worked as advertised. I have no idea why it did not, other than I am working in the pre-release version of the software. I can only hope it works better in the actual release.

About the Author

Elise Moss has worked for the past thirty years as a mechanical designer in Silicon Valley, primarily creating sheet metal designs. She has written articles for Autodesk’s Toplines magazine,, AUGI’s PaperSpace, and She is President of Moss Designs, creating custom applications and designs for corporate clients.  She has taught CAD classes at Laney College, DeAnza College, San Francisco State University, Evergreen Valley College, Silicon Valley College and for Autodesk resellers. Autodesk has named her as a Faculty of Distinction for the curriculum she has developed for Autodesk products, and she is a Certified Autodesk Instructor. She holds a B.S. in Mechanical Engineering from San Jose State University.

Recent Articles

Related Stories

Enews Subscribe