Stack those tolerances!


Currently I have almost completed the finishing touches to the 2nd iteration of my 6p POD and should have  the FEA complete during the week. I have been learning how to carry out tolerance stack analysis and thought it would be good to let the pocketqube teams know about this useful tool.

So why should you learn tolerance stacking? Well it’s quite simple. Everything that is made has tolerances and it’s important to find out how the tolerances of each component stack up. These individual tolerances add up and can result in subsystems not fitting inside your satellite, have inaccurate readings or have moving parts jam. This is especially important when you are using off the shelf components and you want to make sure these will be compatible with your system.

I am using this technique to find further faults in my POD which is why there hasn’t been an update from my 3D printed model. A couple of areas I am looking at is the overall length of the rail so I can make it as short as possible to save mass which will save money on launch costs for myself and other pocketqube teams who would like to use the POD (hint hint) .

Another good thing with tolerance stack analysis is that you can investigate various scenarios. For example you might have a jig holding the motors of a ADCS system and you can determine if you need to add a flatness tolerance to ensure the wheels won’t collide against another subsystem.

There are 4 steps in tolerance stack analysis:

  • Step 1: Determine what you want to investigate
  • Step2: Create tolerance loop
  • Step 3: Add tolerances
  • Step 4: Add dimensions

Tolerance stack analysis example.

You can find the template of the tolerance stack analysis on the link below:

Step 1: Determine what you want to investigate

PQ stack 1

I want to find out what is the gap between the bottom face of the solar panel and the top surface on the rail. I want to know if it will meet the pocketqube mechanical interface standard ( which requires a minimum gap of 1mm between apendages and top surface of the rail. This to avoid the risk of jamming.

All the dimensions apart from the hinges and solar panel are from the pocketqube standard. In this example I just done some rough modelling. In my example the gap is 4.6mm

Step2: Create tolerance loop

PQ stack 2

Start creating a loop of tolerances around the area of interest. To avoid confusion always start and end the loop at the gap. In my example I start from the top surface of the rail (1) which ends at the rail base (DATUM). Then I move from the rail base (2) to the bottom surface of the PQ baseplate. Then I go to the base of the baseplate (3) to the top surface. Then the top surface of the baseplate (4) to the top surface of the solar panel. Then to the top of the solar panel to the bottom surface of the solar panel (5).

Step 3: Add tolerances

PQ stack 3

Start adding the tolerances in the table. Usually you will have bilateral tolerances which you enter in the “upper tolerance” and the spreadsheet will update accordingly. However, you may have fit tolerances for shafts and holes which you will need to input manually in the upper and lower sections.

Make sure you put in reasonable tolerances that are possible with the manufacturing process. The tolerances for 3D printing on 3D Hubs are ±0.2mm so there is no point having 0.1mm as that would be impossible to achieve.

Use the tolerances from the supplier if you are using off the shelf components. Also use reasonable tolerances that meet your budget as well as tighter tolerances will drive up the cost and will increase the difficulty of manufacturing the components. I used 0.1mm as I know CNC machinists who can achieve them, but I could use slacker tolerances for none critical components.

Step 4: Add dimensions

Add the dimensions to the spreadsheet. Make sure you identify what direction is positive or negative as this will screw up your results if you are not careful. In my example up is positive and down is negative.

In my example it states that the gap could be between 4.1mm and 5.1mm.  I decided it’s best to redo the analysis and make the loop shorter so that I can get a more accurate result as ±1mm is too much for a precision assembly.

PQ stack 4

I decided to eliminate step 3 in the last stack and took the measurement from the bottom face of the baseplate to the top of the solar panel. This resulted in the following:

PQ stack 5

I could investigate further to refine this stack like take the measurement from the top of the rail to the bottom surface of the pocketqube baseplate.

The trick to tolerance stackup analysis is you want to keep the loop as small as possible.

Anyway, I will be working on the stackup analysis of my POD for a couple of days. I should have the FEA done next week and have quotes for getting the 2nd iteration machined for more functional tests.

Follow me on twitter (@Spaceca27508118) to keep up to date on the developments of my deployer.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s