Reaction Wheels

From Team SFU Satellite Wikipedia
Revision as of 22:39, 5 November 2019 by Cgimpel (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Reaction wheels, or momentum wheels, function by utilizing torque reactions resulting from changes in the rotational velocity of each reaction wheel and are often utilized in satellite attitude control systems. Figure 3 illustrates a standard off-the-shelf attitude control system, which integrates reaction wheels oriented along three orthogonal axes.

Reaction wheels work on the premise of the conservation of angular momentum. Through exerting torques, the wheels will work to create rotation about the center of mass of the cubic satellite. Some assumptions have been made in these calculations to simplify preliminary calculations. The density of the CubeSat is considered to be uniform, and the center of mass is located at the geometric center of the CubeSat. As has been specified in CSDC regulations, 3U CubeSats have a maximum weight restriction of 4kg. Therefore, the reaction wheels are to be designed assuming the mass of the satellite is at this upper limit. The size of the CubeSat used for these inertial moment calculations is 3U. That is, its dimensions are 0.1m x 0.1m x 0.3m. The mass moment of inertia is calculated separately.


For optimizing our design and limiting the amount of space our reaction wheel will occupy, we set the following constraints for the reaction wheel:

  • For design simplicity, the reaction wheel will be viewed as a "cube" that occupies some space on the PCB
  • All three reaction wheels will fit in a single line on a PCB; therefore, the entire reaction wheel "cube" must be <3.3cm in length and width
  • The fly wheel will be designed in such a way that it can be mounted around the motor to conserve space
  • Typical fly wheels are made of a dense but inexpensive material, such as steel. Until further material sourcing has been conducted, the assumption for calculations is that steel will be used for machining the flywheel and the material density will be selected as [math]8050 \frac{kg}{m^3}[/math].

Angular Momentum

The angular momentum of the CubeSat, based on its geometry is based from the formula given below, where the angular momentum is a 3-space vector, the moment of inertia is a 3x3 tensor, and the angular velocity is a vector.

[math]L = I\omega[/math]

The inertial tensor matrix in generalized form is shown below. The CubeSat geometry is approximated, to take the form of a uniform density rectangular prism. The tensor matrix is given first in general form, and then based on the geometry of the shape rotating about its center of mass. Note that, with terms only along the diagonal, this implies that the center of mass is at the geometric center of the cubesat, and mass balanced with respect to the axes of rotation.

\[ I_{sat} = \begin{bmatrix} I_{xx} & 0 & 0 \\ 0 & I_{yy} & 0 \\ 0 & 0 & I_{zz} \end{bmatrix} = \frac{m}{12} \begin{bmatrix} z^2+y^2 & 0 & 0 \\ 0 & z^2+x^2 & 0 \\ 0 & 0 & x^2+y^2 \end{bmatrix} \]

The results of the inertias have been calculated and are given in the mass moment of inertia calculation and summarized as:

[math]I_{xx} = 0.03333, I_{yy} = 0.03333, I_{zz} = 0.006666[/math]

Fly Wheel

Due to space limitations, keeping the reaction wheels small is an important consideration. Generally, the material choice for reaction wheels would be steel, or iron, which has a higher material density. The wheels are also designed to displace the mass toward their outer perimeter, thus maximizing their inertias for a given diameter. The following is the process we followed for designing the reaction wheel given our constraints.

Angular Momentum

A typical CubeSat reaction wheel will have a disk feature and a ring feature. The formula for calculating the mass, and in turn inertia, is based on the following formula, where [math]m[/math] is the mass, [math]\rho[/math] is the material density and [math]r[/math] & [math]h[/math] are radius and height based on the drawing attached:

[math]m_{total} = m_{disk} + m_{ring} = \rho\pi r^2_{disk}h_{disk} + \rho\pi(r_{ring}^2 - r_{disk}^2)h_{ring}[/math]

20190514 183353.jpg

By breaking the flywheel down into a disk and ring component, we can simplify the moment of inertia calculations as such:

[math]J_{disk} = \frac{m_{disk}r_{disk}^2}{2}[/math]

[math]J_{ring} = \frac{m_{ring}(r_{ring}^2 + r_{disk}^2)}{2}[/math]

[math]J_{total} = J_{disk} + J_{ring}[/math]

Motor Model

We would like to model the motor output as a function of an input we control, which can be done by using the state-space equations.

If we treat the electronics of the motor as a simple RL circuit and the shaft of the motor as a rotating body, then we may model the DC motor as follows:


From Newton's 2nd Law and Kirchoff's Voltage Law, we know the following:




  • J is the total angular momentum
  • [math]\theta[/math] is the angular displacement
  • b is the viscous friction of the motor
  • [math]K_a[/math] is the torque constant of the motor
  • L is the terminal inductance of the motor
  • R is the terminal resistance of the motor
  • [math]K_{emf}[/math] is the back electromotive force constant
  • V(t) is the voltage input

When we put these into state-space form, we get the following:

[math] \frac{d}{dt} \begin{bmatrix} \dot{\theta}\\ i \end{bmatrix} = \begin{bmatrix} -\frac{b}{J} & \frac{K_a}{J}\\ -\frac{K_{emf}}{L} & -\frac{R}{L} \end{bmatrix} \begin{bmatrix} \dot{\theta}\\ i \end{bmatrix} + \begin{bmatrix} 0\\ \frac{1}{L} \end{bmatrix}V(t) [/math]

[math] y= \begin{bmatrix} 1 & 0 \end{bmatrix} \begin{bmatrix} \dot{\theta}\\ i \end{bmatrix} [/math]

This puts the equations of the DC motor into the format of [math]\dot{x}=Ax+Bu(t)[/math] and [math]y=Cx+Du(t)[/math]

By taking the constants from the motor datasheet, we can then simulate the response of the motor using the Matlab function lsim. When we use the data for the Faulhaber 1509-006B with a constant input voltage of 6V, we get the following response:


We can see from the graph the motor saturates at about 15k rpm after ~5 seconds.


Control tutorial

Modeling analysis and design of a dc motor based on state space approach