Decal applied.

Ground station packed in. Battery sensor calibrated.

This design did not achieve horizontal control. The pitch oscillation
from not having enough balance beam inertia offset any horizontal force.

This redesign did achieve 2 horizontal changes of direction using only
throttle modulation. Unfortunately she threw a propeller &
disintegrated upon crashing.

Marcy-1 was already very prone to throwing propellers, her 5300kV motor
seemingly at the limit of Chinese plastic. We have a 4' monocopter
planned for extremely long duration hovers with normal RPM.

There it is. XYZ positioning using only throttle on the Marcy 1 vehicle.
Unfortunately not enough authority to move upwind, so we only got
crosswind translations & a slower downwind drift than if cyclic was

As Mike Bakula recommended, used raw magnetometer output & detected when
the halfway point in the waveform was crossed. Much better than using
derivatives like MIT since the derivatives are very noisy.

Very important to have the balance beam loaded as much as humanly
possible to prevent pitch oscillation. Having the motor & battery on
the balance beam is the easiest way to load it. She did indeed bank in
the direction of the translation from throttle alone.

An aileron servo would do better against the wind but it would be heavy,
expensive, & wear out fast. No way a servo would cycle 6x a second for
very long. If you're gonna use 2 PWM, there's no point in a monocopter
anyways but it's probably unavoidable for any long duration, outdoor


Finally got a flight in no wind & drizzle & she was easily controllable
using only 1 PWM. She was very sensitive to breezes.

1 problem was power level changes when applying cyclic which we actually
learned to handle. Greatest horizontal thrust comes from gliding her
when applying cyclic. You can stall the motor this way so she just
applies thrust in 1 direction yet stays in the air. Greatest vertical
thrust comes from releasing cyclic. Power management on a monocopter is
a new artform.

The mane problem was broken propellers after 6 minutes. That's right.
The GWS 3x2's are just not strong enough to provide hovering power.
Marcy 1 is perfect in every way but dead without a stronger propeller.
Ideas range from griding them down to 2.5x2 & using 3x3 if the weather
ever improves.

3x2 ground into a 2.5x2


Getting sonar working on a new flight computer & new radio is never
easy. The mane problem is actually the microcontrollers & tools. Every
new microcontroller has a different register set. If you want SPI,
magnetometer, & 3k of RAM that means capture compare & analog need to be

Also, the MRF49XA takes so much more CPU time to service than the XBee,
sonar had to go on a dedicated USB device, making it more expensive to
use 8 bit PICs than 32 bit ARMs.

3 years ago ARMs were $10 & really tough to solder. Now they're $2 &
easily soldered. PICs are only still around because of code reuse
though ARMs need a lot more pins for programming.

Building a 100Mhz computer from scratch using an ARM has always been
alluring, but the only motivation now would be going back to embedded
autopilots or a huge price advantage with ARMs.


The trick with sonar is to synchronize the clocks on the ground station
& aircraft. Vika 2 did it by sending 1 beacon to the ground station &
aircraft simultaneously. Marcy 1 doesn't have sonar on the same USB
port so there's a significant rewrite already.

The complete Marcy 1 sonar guided kit, applying all the sonar knowledge
gained from Vika 2.

The standalone sonar board is the simplest possible.

Now more views of the machine with 3x2's & loaded balance beam.

Sonar installed, magnetometer in the stock & this thing which tells
time. Wow that sounds neat.

Making the sonar crash resistant is going to require a new fuselage.

Aren't you glad you didn't need to solder this. This is standard for
Chinese toys though not Air Force grade except for the name.

Balancing act.

Final look before crashing.

Views: 1187

Comment by Gary Mortimer on January 22, 2010 at 4:17am
Now weight and balance stickers applied, its a DOD project! Where can one apply for the offical sticker.

Comment by Mark Colwell on January 22, 2010 at 9:41am
No rocket motors yet ?? I cut down a black EP4040 prop for my Pocket Combat wing. I use a GWS prop adaptor with rubber insert to clamp shaft. I land hard all the time and have only broke 2 props so far, see nicks in blades

Comment by Alex on January 22, 2010 at 11:06am
Relay amassing stuff, I bet if you took that to anyone they would not believe you if you said it could fly :P

Comment by Mark Colwell on January 22, 2010 at 11:32am
I like your data link system elegant design minimal components high speed, you could add a decent antenna to get longer range. I want to add magnetic compass to ArduPilot based on same sensor your have on Marcy1, can you recommend a good calibration algorithm, do you re-cal during flight?
Comment by Jack Crossfire on January 22, 2010 at 5:10pm
Nowadays the HMC5843 is the one to get. That degausses itself. Calibrating magnetic heading on VicaCopter was a long & hard process. This is what the README has.

The IMU must be calibrated and giving the proper roll & pitch before the
magnetometer is calibrated.

In settings.conf, set X_MAG, Y_MAG, Z_MAG to 0, 1, 2. Set DUMP_MAG to

Run the autopilot on the airframe with the magnetometer & everything
mounted in its final position. Rotate the airframe on the X, Y, & Z
axes and note which axis corresponds to which column of mag output.
Change the X_MAG, Y_MAG, & Z_MAG indices to match the dumped columns.
Now the X, Y, & Z axes will be dumped in order & it's time to calibrate
the ranges.

Rotate on the X, Y, & Z axes and note which direction North is from the
printout. If you're on the northern hemisphere, north points into the
ground. On the southern hemisphere north points into the sky. Set the
_MAG_SIGN variables all to 1. Point the nose at North. If Y_MAG is
negative, set Y_MAG_SIGN to -1. Point the starboard side at North. If
X_MAG is negative, set X_MAG_SIGN to -1. Point the skids at North. If
Z_MAG is POSITIVE, set Z_MAG_SIGN to -1.

Restart arm_copter.

Point each axis of the magnetometer towards & away from North and copy
the max & min values from each column to the MAG_MIN and MAG_MAX values
in settings.conf. When the nose points toward north, Y mag is
positive. When starboard points toward north, X mag is positive. When
the rotor head points toward north, Z mag is positive.

Next, set DUMP_MAG to 0 and DUMP_THETA to 1. Restart arm_copter.

Rotate the airframe on the yaw axis. The printed heading should be
North: 0, East: 90, South -179/179, West: -90. If the heading increases
when it should decrease, reverse COMPASS_SIGN in settings.conf. If the
heading is always offset by a certain amount, change COMPASS_OFFSET in
settings.conf to correct the offset.

Finally, you need to set DECLINATION to the magnetic declination for
your area. If magnetic north is 14' East of true north, set DECLINATION
to 14. Also, use DECLINATION to correct any rotation error in the
hardware mounting.

With the autopilot running, rotate on the yaw & pitch axes to verify the
compass reading is mostly independant of the tilt.

Set RAD_TO_GYRO_Z so the integrated heading matches the magnetic


You must now correct for the effect of current running through power
lines to the motors. Set DUMP_THETA to 0 & DUMP_MAG to 1. Strap the
airframe down to run the motors at full power.

Run the "script" command to capture the debugging output. Run the
motors at full throttle & at 0 throttle to capture the full range. Type
"exit" to save the output. Plot it in OpenOffice & note the change
between full power & 0 power in the levels. Enter this change in the

Set DUMP_THETA to 1 & DUMP_MAG to 0. Do another full power test to see
if the heading at full power is the proper heading. Currently the
offset is added for all power levels.

Comment by Mark Colwell on January 24, 2010 at 10:48pm
I ordered Jordi's Mag board with HMC 5843, self degauss is good, thank you for calibration procedure, did you get +1, -1 degree accuracy?


You need to be a member of DIY Drones to add comments!

Join DIY Drones

© 2020   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service