PSAS/ rollcontrol

Roll Control

Purpose: Our last launch was a huge success (May 2009 launch of LV2.3), but our on board video could have been better if the rocket didn't spin about the longitudinal axis.

There are two ways to correct this:

Aligning the fins should be done to minimize drag on the rocket, but an active roll control system can ensure minimal roll, and even point the on board camera in an interesting direction through the launch and recovery.

Further, an experiment with roll control provides a good chance to validate a control system designed based on a dynamic model.

Requirements:

Current Design

This is a screenshot of our current design that we are going to try to fly. Almost ready to begin construction!

CAD drawing of a possible design

Next items needed:

Analysis

At some point, our project will require the full inertia tensor. For now however, we can achieve excellent roll control using a single degree of freedom (1 DOF) model of the rocket dynamics about the longitudinal (roll) axis.

Mass Moment of Inertia

To begin, we measure the mass moment of inertia Izz (see CoordinateSystem) using a basic technique from any ME vibrations or physics class. Skipping the derivation, it is known that a poorly damped mass will oscillate when suspended by a spring at a frequency given by:

f [Hz] = \frac{ \sqrt{ k / m}} { 2 \pi}

where k is the spring stiffness and m is the mass of the suspended object.

An analogue to this equation in the rotational case:

f [Hz] = \frac{ \sqrt{ k_t / I_{zz}}} { 2 \pi}

Here, Izz is the rotational inertia of the rocket about its long (z) axis, and kt is the torsional stiffness of a rod from which our rocket is suspended. The rod is firmly clamped to the rocket at one end, and to a support structure at the other end. It is not possible to rotate the rocket about the long axis without twisting the rod.

Solving the last equation for the inertia:

I_{zz} = \frac{ k_t} { (2 \pi f)^2}

If the rocket is rotated about the long axis (away from its resting position) and released, the inertia and the torsional spring constant will cause it to oscillate. By measuring the time it takes for the rocket to oscillate through ten cycles, the above formula can be used to calculate the rockets mass moment of inertia about the axis of oscillation.

Time Measurements

Vertical measurements:

This is an average oscillation frequency of 0.5501 cycles/second.

And for fun, we took some horizontal measurements:

Torsion Rod

Obviously, it's necessary to select a torsion rod stiff enough to overcome drag during oscillations, yet weak enough to give oscillations that are not too fast to count. A rod that gives around 0.5 oscillations per second is about right for counting by eye and using a stopwatch. In the data above, the horizontal measurements are not useful because the wind on the rocket was easily able to overcome the torsion rod stiffness.

Our torsion rod was a 35 inch length of 1/8th inch hardened steel wire. To offset friction in the torque measuring devise, torque measurements below 3.0 inch-lbs were not used, and the angular measurement was adjusted to 0 degrees at 3.0 inch-lbs. This works well because our torque constant for the torsion rod is given by the slope of a linear regression fit applied to the torque/angle data. When twisted using a torque measuring device, the following torque/angle data was collected:

Angle [°] Torque [inch · lbs]
0 3.0
10 4.8
20 6.0
25 7.0
30 7.5
45 9.0
50 10.5
60 11.75

This is an average kt of 0.1412 [in * lbs / degree], or 0.9141 [N * m / radian].

Measured Inertia

Substituting the measured values of f and kt to the Izz equation, we get:

I_{zz} = \frac{ k_t} { (2 \pi f)^2} = 0.9141 [N \cdot m] / (2 * 3.1415 * 0.550 [Hz])^2 = 0.07654 [m^2 \cdot kg]

This is for the rocket without the motor. Later we'll add the engine casing to get the minimum inertia case, and then add the fuel on the pad to get the maximum inertia case.

More to come: Add the inertia of the motor casing, both with and without the fuel grains.

Canard Forces

(see the CanardAerodynamics page)

Computing canard forces relative to the canard angle-of-attack (AOA) can be a challenging problem. We have located studies, cfd analysis, and wind tunnel tests on a few interesting control fin designs. One possibly interesting step in this design might be to find a way to test the canard forces at various angles of attack near trans-sonic speeds, thereby validating our calculations and research. Short of constructing a wind tunnel, the easiest way to get 1) the speeds we want, 2) fine control of the fin AOA, and 3) accurate measurement of the fin forces produced is to attach the fin to an arm at the end of a rotating fixture, and spin the fixture at a high rotational rate. This could be accomplished by modifying a radio controlled helicopter. In place of the main rotor blades, we attach carbon fiber rods with the fins attached to the ends. Initial calculations show that we can reach fin speeds in excess of 450 MPH using a 1 meter rod spun at 3000 RPM. This is easily attainable using RC helicopter gear.

Photos Coming...

Equations of Motion

First Principles

Equations approximating the motion of the rocket are derived from free-body and kinetic diagrams, as taught in a mid level mechanical engineering dynamics course. Developing equations in this manner is known as developing from first principles because basic Newtonian principles (f=m*a) are used to derive them. These diagrams are shown in the following figure:

Put diagram here...

State-Space

One of the (control) industry standard representations for equations of motion is the state space format. State space representations easily lend themselves to pole placement exercises and simulations. Rather than re-invent the last 100 years of control theory development, we opt to use a state-space representation:

\left [ \begin{matrix}
\overset{\centerdot \centerdot}{\theta} \\
\overset{\centerdot}{\theta}
\end{matrix} \right ] =
\left [ \begin{matrix}
-k_{d}/I_{zz} & 0 \\
1 & 0
\end{matrix} \right ]
\left [ \begin{matrix}
\overset{\centerdot}{\theta} \\
\theta
\end{matrix} \right ] +
\left \lbrace \begin{matrix}
l_{f}/I_{zz} \\
0
\end{matrix} \right \rbrace \cdot u

It is assumed that all fins are acting together at the same angle of attack and in opposing directions such that they only cause rotations about the z axis. In the above equation, the sum force of the fins acting to rotate the rocket is given as u, and that sum force acts at a distance l_{f} from the z axis.

Model Validation

One way to validate the accuracy of our 1DOF model is by adding our torsion spring specs to the model, setting a non-zero initial value to the (angular) position state variable, and then simulating the system in time. If our model is correct, we should observe an oscillation close (in frequency) to the oscillations measured with our rocket hanging from a torsion rod. To do this, we add a K_{t} term to our matrix and assign K_{t} = 0.9141 [N \cdot m] / Radian.

\left [ \begin{matrix}
\overset{\centerdot \centerdot}{\theta} \\
\overset{\centerdot}{\theta}
\end{matrix} \right ] =
\left [ \begin{matrix}
-k_{d}/I_{zz} & -k_{t}/I_{zz} \\
1 & 0
\end{matrix} \right ]
\left [ \begin{matrix}
\overset{\centerdot}{\theta} \\
\theta
\end{matrix} \right ]

We assign:

K_{d} = 0.002 (very light damping)

K_{t} = 0.9141 [N \cdot m] / Radian.

I_{zz} = 0.07654 [m^2 \cdot kg]

Model validation simulation

The result of this simulation gives a period of oscillation of 1.8182 seconds, which is very close to our actual timed measurements which averaged 1.8178 seconds.

To be continued...

References