Skip to content

Measuring the Mass Properties

TheElectricDream edited this page Sep 19, 2021 · 26 revisions

Introduction

To ensure any simulations of the platforms is representative of the experiment, it is important that the mass properties be correct. Generally, this step only needs to be completed when there is a significant weight change to the platform (for example, adding the robotic manipulator with a heavy gripper attachment). The mass properties that are required for an accurate simulation are:

  • Spacecraft mass
  • Spacecraft center of mass
  • Phasespace LED positions relative to the center of mass
  • Thruster locations relative to center of mass
  • Spacecraft inertia

Center of Mass, LED Locations, and Thruster Locations

The measurement of mass and the center of mass can be performed using the three point method. This technique requires three scales in the following configuration:

Configuration for COM Measurement

A free-body diagram (FBD) for this configuration would take the form:

FBD for COM Measurement

From this FBD, the following equations can be derived by taking the moments about A:

Where A, B, and C are the force readings at each corner (or in this case, the scale measurement multiplied by gravity), W is the total of all three force measurements, and D/E are distance measurements between the various scales, as shown in the free-body diagram. A visual representation of the measurements made in 2017 is shown below:

FBD for COM Measurement

From the center of mass, it is also necessary to calculate the relative distance of the thrusters to the center of mass, as well as the positions of the LEDs relative to the center of mass. A script has been prepared and it will output all required information given the measurements from each scale:

COG Script

It will also create the following variables in the workspace:

  • thruster_dist2CG_BLACK
  • thruster_dist2CG_RED

The LED positions, mass, and thruster locations must be correctly modified in your working code. This can be done as follows:

  • Navigate to your working folder and open Run_Initializer.m.
  • Scroll to approximately line 156 (labelled *Load any required required data).
  • Change the parameter model_param so that mass is equal to what was measured.
  • Change the parameter thruster_dist2CG_XXX to match the output of the script.
  • Navigate to \SPOT\Custom_Library\PhaseSpase_Cameras\PHASESPACE\src\ and open phasespace_functions.cpp.
  • Native to line 40, which contains the strings defining the positions of each LED relative to the COM.
  • Change the values to match the output of the script (unless significant weight was added, these should not change much, and the signs should not flip).

Tracker ID Code

It is important to note that the script contains certain constant assumptions about the locations of the LEDs and the thrusters. If the LED or thruster positions have been significantly changed, then these constants will not longer apply and the script will print out slightly incorrect information. Ensure you have read through the script and understand it's assumptions. DO NOT USE CODE BLINDLY.

Inertia Measurement

Measurement of the moment of inertia can be performed using a few different techniques. One simple method is to use the reaction wheel, with known inertia, torque, and RPM, to apply a torque to the spacecraft. The angular acceleration of the spacecraft and the known applied torque can then be used to calculate the inertia via the simple equation:

Another way of measuring the inertia is the bifilar pendulum (BP) technique. This method involves suspending the rigid body at two points approximately equidistant from the center of mass, applying a torque to induce oscillations, and then measuring the frequency of said oscillations:

BP Technique

A video demonstration of the technique is also available here. Once the frequency of the oscillations has been measured, the mass moment of inertia can be approximated as:

Once this value has been obtained, the relevant parameter in Run_Initializer.m must be changed:

  • Navigate to your working folder and open Run_Initializer.m.
  • Scroll to approximately line 156 (labelled *Load any required required data).
  • Change the parameter model_param so that inertia is equal to what was measured.
Clone this wiki locally