Logomatic Flight Recorder

In October, 2007, I saw a comment by Robert DeHate on a rocketry discussion forum about the Sparkfun Logomatic data recorder. The logomatic will record data from a serial port or analong inputs to an SD card. When using the A/D inputs, the sampling rate is selectable, based on the number of input ports and the data format. I had seen this gadget before, but hadn't thought of using it to record model rocket flights. So I bought one.

Hardware

The Logomatic is based on an ARM chip and has a built-in serial port and many A/D (analog to digital converter) ports. Physicly, it just barely fits inside of a BT-60 tube. The analog inputs are 3.3v, so my old 5v devices won't work without some changes.

I attached three sensor boards to the back of this board:

  1. Sparkfun IMU 5 Degrees of Freedom board.

    This board has two devices: an Analog Devices ADXL 330 3-axis accelerometer and an InvenSense IDG 300 Dual-Axis Gyro.

    These devices are powered from a 3.3v supply.

    The ADXL330 is a +/- 3Gs device, and the gyro is listed as 500 degrees per second rotation. I hope my rockets don't spin that fast!

    David Schultz suggested that I filter the gyroscopes at 1/4 of the sampling rate. I researched filters and found the Sallen-Key Active Butterworth filter. I used an on-line filter calculator to determine component values for a 25 hz filter.

    The op-amp is an LMC6482 which is a rail-to-rail op-amp that I had around, and have used on several other accelerometers and pressure sensors.

    These devices are powered from a 3.3v supply.

  2. Sparkfun ADXL 321 Breakout Board.

    I expect my rocket to experience more than 3Gs of vertical acceleration, so the +/- 3Gs of the ADXL 330 isn't adequate. The ADXL 321 at +/- 18Gs is the highest G range chip currently available from Analog Devices that has a 3.3v output. Other chips are available, but they're +5v output and would require scaling or a voltage divider.

    This device is powered from a 3.3v supply.

  3. Sparkfun ADXRS 401 Breakout Board.

    This board adds the third gyro axis that I've been missing. Since this device is on one of the tilt axes, I figured that 75 degrees per second is adequate, and provides greater resolution.

    This is a 5v device, so I put a simple power divider on the output, using a 5.6k resistor in line and a 10k resistor to ground.

  4. My own board with a Freescale MP3H6115A6T1 3.3v pressure sensor.

    This is the 3.3v version of the MPXA4115 pressure sensor family that I have used on other projects. It is mounted on a board from BatchPCB with an RC filter for 102hz (1/2 of the expected 200hz sample rate), which is a 4.7k ohm resistor and a .33uF capacitor.

  5. My own board with 3.3v and 5v voltage regulators

    The logomatic board has a 100ma voltage regulator, and I was starting to push that limit. I cut a scrap of PCB and made two gashes in the upper copper giving me a 3 contact board on which to mount an LE33 voltage regulator, the .01uF input capacitor and a 4.7uF output capacitor (the LE33 data sheet calls for a 2.2uF cap, but I didn't have one). I later added a LM78L05 (5v) regulator using the same fashion construction. I put a 1N4001 diode on the input to protect the expensive sensors from an inadvertant reverse power connection (the logomatic board has one, too).

A previous configuration, which I flew on my first two flights, has a different pressure sensor documented here.

The new filter board filled up the back of my logomatic, leaving me with nowhere to put the pressure sensor. So, I cut a 1/16" plywood board about the same size as the logomatic, drilled matching mounting holes and mounted it to the top of the logomatic board. The accelerometers now go underneath, between the logomatic and the board it's mounted to.

The Logomatic has a "stop" button, to stop recording and save out all the filesystem data to the SD card, on the front side. Since that's covered up, I put a second stop button on the top board.

Here's the top of the board:

Here's what the back side, with the accelerometers and XY gyro, looks like:


SD Cards

My first flight used a sample rate of 100hz, but after measuring the data collected in a timed bench test, I think it was closer to 88hz. I went searching for faster SD cards. I purchased a SanDisk Ultra2 2GB card that supports 400hz with a few glitches, and 200hz fairly well.

The SD cards are listed as having a transfer speed of many megabytes per second, but I'm clearly not seeing that with the logomatic. Reading the source code, I think there are a number of software reasons for that. For example, even though all writes are an even 512-byte sector size, and are always written at an even 512-byte file offset, the code does a read-modify-write operation and data copies. The code uses two buffers, so if there are other filesystem overhead type operations that have to periodicly happen, there is no buffering to hide that. Given the 32KB of memory on the ARM cpu, I think more buffers could be used.

Enhancing the Logomatic software is another project, for another day.


Bench Test

With the accelerometers and gyros attached, I gave the board a short bench test. My first several attempts used 100hz data from 7 inputs in ASCII mode. This was apparently too much data, too fast for the logomatic to record as I got glitches in the data. I backed the speed down and switched to binary mode, then brought the speed back up. I think I'm safe at 100 samples / second.

Here's a test:

  1. I started with the board tipped slightly up, then I put it down flat on my desk for a few seconds.
  2. I brought the LFR up vertical. The red line shows the 3G Y axis detecting that movement, and the purple line shos the 3G Z axis. The green line is the 18G X axis, which is mounted upside down so it shows this position as a negative, and since the device has a greater range, the scale is much smaller.
  3. I tipped the LFR over (back side up). The purple line shows the 3G Z axis now at +1G.
  4. I tipped the LFR to the left, and the blue 3G X axis now records that motion. Also note the brown X Rate axis detecting some motion.
  5. I tipped th LFR to the right, and the blue 3G X axis now records 1G in the opposite direction.
  6. I brought the board back roughtly parallel to the bench and twisted it back and forth. The light blue line of the Y Rate axis shows that activity.
  7. There's some other junk from trying to push the "stop" button.

Neat, isn't it? A real rocket flight should be a lot more exciting.

Note, this test was with the first version (5v pressure sensor and no filters).

Mounting

I've mounted electronics in rockets several different ways. The easiest is to put it on a board that goes in a payload tube. Well, I've lost electronics this way when it moved around and either knocked the nosecone off, or punched out the bulkhead on the tube coupler (I lost a radio beacon that way! -- they stop transmitting on impact).

I've had more success when mounting electronics on a carrier attached to the payload compartment's tube coupler:

the electronics are mounted to a board, and the board is attached to a wood disk that fits inside the payload bay tube coupler. The electronics carrier is attached to the tube coupler bulkhead with a screw and wingnut. The tube coupler attaches to the payload bay tube with screws (inside are nuts glued to the tube coupler with JB Weld).

On the back side is a lever-arm switch that is turned on by tightening a screw against the lever.

For the third flight, I put the logmatic inside the electronics bay of my 4" IQSY Tomahawk.


Flights!

October 27, 2007

I finally got to fly it! This was the weekend of the Twin Cities, MN NAR chapter, MASA monthly launch. I selected a scratchbuilt D-Region Tomahawk made from BT-70 tube, an F20-4W Econojet motor (the old phenolic econojet) and a tough PML 24" parachute. I expected the delay to be a bit short, but I just didn't have the guts to use a 7 second delay for this flight. By the time I got to this flight it had become somewhat windy, maybe 10mph.

Here's a plot of all the data:

Clearly visible is the long time from powering it up to launch (I watched a couple of other flights) and the long walk over to where the rocket landed (I didn't mind the long walk, as I could see I was walking over to a good, safe landing of my $200+ data logger).

The rest of the details are on the Flight #1 page.

5/31/2008
Rocket: D Region Tomahawk (bt70) with an F52-11 (drilled to about 9.5 seconds). The parachute deployed about one second after apogee. The rocket back-slid down (the nose did not appear to ever point downward). The pressure sensor has a 700hz RC filter.

Flight #2 page.

7/26/2008
Rocket: IQSY Tomahawk flown on a Skyripper Systems I117 Hybrid.

The pressure sensor is a 3.3v sensor with a 100hz RC filter. The rate gyros have a Sallen-Key filter with a cutoff frequency of 25hz. Recording rate was 200hz.

Flight #3 page.

10/25/2008
Rocket: Aerobee 150 on a Skyripper Systems H124 Hybrid.

This was the windyest flight with logomatic yet, approx 10mp-15mph wind with the pat/rail angled into it. The flight recovered in the parking/prep area, so it was a short walk to the rocket. I think the data shows deployment before apogee.

Flight #5 page.



Glen Overby
Last updated: $Id: index.html,v 1.6 2008/10/26 18:44:53 glen Exp glen $