Charybdis (2014-2015)

Payload – Project CHARYBDIS

The IREC competition is about getting a 10lb payload as close to 10,000ft as possible. The payload receives additional points for achieving a scientific feat.

It was difficult to narrow down the payload project because the constraints were not very tight. It needs to be minimum 10lbs, fit inside of a rocket, and do something interesting. The team chose a project that would provide relevant and useful knowledge for future years.

The goal of the payload project is to demonstrate roll control of the nose cone while in descent. The project aims for members to gain skills in aerodynamics, structures, controls, simulations, coding, and systems integration. Future applications for the team include controlling the roll of a rocket during ascent, using the skills gained to complete other control projects, and simulating other physical systems.

Here is the mission profile for the entire rocket Odyssey. The booster “Sylla” is followed by the blue line and the payload “Charybdis” is followed by the orange line.


1- Launch

3- Apogee

4b- Payload is ejected with a black powder charge from the booster and deploys its drogue chute

5b- Payload deploys fins

6b- The fins are actuated to control the roll position of the payload. In the final design, servos actuate flaps on the fins to achieve this.

7b- Payload main chute is deployed at 500ft

8b- Payload lands gently on the ground. Recovery team uses GPS data and RF beacon to find it.

Full list of Requirements

  1. The main rocket will deploy the payload at 10,000ft (3048m)
  2. The payload must be minimum 10lbs (4.5kg)
  3. Max weight set by structures- 14lbs (6.35kg)
  4. The payload must fit within the nosecone and an additional 24 inches of rocket tube. The rocket tube is 8in in diameter.
  5. Descent rate until main max – 161km/h (recommended)
  6. Descent rate until landing – 22km/h

Mission Explained

The goal of the payload is to demonstrate full roll control capabilities. Given a coordinate system where z is vertical (apogee is at z = 10,000ft), roll is defined as rotation about the z-axis. To demonstrate roll control, its roll position must be able to follow a series of commands. The commands will consist of rotating to different roll positions at specific roll rates. For example, it may be commanded to roll from 0 to 180 degrees at 1 Hertz.


In order to control its roll, the payload has two fins, each of which have flaps. The flaps are actuated by servos which are embedded in the fins. The setup is very similar to control surfaces on rc-airplanes.

Fin Deployment

Unfortunately, the fins cannot be exposed (outside of the tube) during the launch. Since the payload is on the upper half of the rocket, exposed fins would be similar to having canards. This would drive the center of pressure up, and cause the rocket to be unstable. Therefore, the fins must be deployed from within the tube.

The deployment mechanism is very simple. Both fins are attached on the ends of an aluminum bed. The bed is allowed to rotate on a shaft. When it is time to deploy, a torsion spring forces the bed to rotate, and the fins to exit the tube. There are slots in the tube which are sized to allow the fins to exit. A piece of tape covers the slots during ascent, and the fins simply push the tape out of the way when they deploy.

Before flight, the fins are locked into place by a plastic screw. A nichrome  wire is wrapped around the plastic screw and attached to a power source and a microcontroller. When it is time to deploy the fins, the microcontroller allows power to flow from the power source through the nichrome wire. The wire heats up and melts the screw. With nothing to hold it back, the torsion spring rotates the fins into their deployed position.

The system the determines when to heat the wire up must be very reliable. The fins must deploy after the payload has successfully separated from the booster. To sense when separation occurs, the microcontroller will tap into the altimeter. When the altimeter detects apogee, it sends a current through a wire that is attached to an e-match and a black powder charge causing a blast which separates the payload from the booster. The microcontroller is hooked up to the wires from the altimeter- when it senses a current passing through, it knows that separation must have occurred. It subsequently sends a current through a relay, which then allows current to flow from a power source through the nichrome wire.

Here it is in action:

Here is the concept of using the altimeter signal to detect separation in action:


In order to control the roll of the payload, a sensor is needed to check and log the rotation data. We are using an Inertial Measurement Unit (IMU). It has a 3-axis accelerometer, 3-axis gyroscope, and 3-axis magnetometer. By doing sensor fusion, accurate roll angles may be obtained.

A PID controller will be used for controlling the roll rate and position of the payload. The transfer function of the system can be used in MATLAB to tune for optimal gains. We can make the desired input a ramp in order to control roll rate. This is what the control loop looks like with an arbitrary transfer function and desired set point.


The microcontroller being used is an Arduino Mega. We are using an existing PID library to implement the controller.

Prototype and testing

In order to test the idea before implementing the full version, we built a prototype. The goal of the prototype was to test the controls implementation. Therefore, the prototype did not need the fins to deploy, and could be smaller than the final version.


In the picture you see the prototype on a shaft. The shaft is attached on a ball bearing to rotate as freely as possible. The square hole is the exit of a small 1ft X 1ft windtunnel in MIT’s Newman hangar.


Above you see the prototype being held by the payload team lead, Eric R. A servo in the middle actuates the flaps on the fins by pulling/pushing control rods.The microcontroller, IMU, and battery are located in the nosecone.

Here is a successful test where the payload is commanded to hold a vertical position. Notice that when the payload is disturbed (by forcefully rotating it away from where it is commanded), it returns to the vertical position. The speed at which it returns can be optimized by tuning the PID gains.

Something apparent from testing came from observing the data from the IMU. Even when the IMU was kept still, the data was noisy.


We implemented a low pass filter to smooth out the data.


Much better!

We are currently building the payload for launch on May 9th.

Leave a Reply

Your email address will not be published. Required fields are marked *

+ fifty four = 61