HobbyKing.com New Products Flash Sale
Jack Crossfire's blog
Posted by Jack Crossfire | Mar 03, 2008 @ 04:28 AM | 3,616 Views
Had our first software crash in flight. Reached the final waypoint and began oscillating as before. Disengaged autopilot, put her on the ground, and commanded engine cutoff. The engine did not stop & lost the computer. Thrashed for 3 seconds until the PIC detected a fault & killed it.

Could not reproduce the crash on any previous simulation, but moved back to plastic blades anyways. May have been static electricity when touching the ground. The neural network now stores & recalls the weights on shutdown & startup. The idea is to simulate the exact same feedback, which is not possible with random weights.

On the final attempt before the next commute, she did finish the mission after 8m30s but entered another oscillation after finishing.
Posted by Jack Crossfire | Mar 02, 2008 @ 02:37 AM | 2,861 Views
Have found KML extremely limited. U can't construct very complicated objects out of line segments & Place Markers. There's no polygon sorting. It's more intended for annotation than virtual reality despite many a Google fanboy.

The things we miss most R anaglyph support & getting more precise coordinates for markers. Of course, it crashes too much 2 B very useful.

The latest flight program requires position to be in the satisfy radius to perform a turn. If position deviates outside, the turn stops.

Also increased collective P gain back to Corona levels.

Finally got the 180' turn mission to work, after turn rate was reduced & wind briefly calmed down, & the software was fixed. Google doesn't have very accurate elevations. The flights in our plots R fudged to appear above ground.
Posted by Jack Crossfire | Mar 01, 2008 @ 06:36 AM | 2,640 Views
west pi wrote:
> strong winds likely to persist in the north and East Bay
> hills through Monday

3 years & Heroine's power supply finally died. $100 doesn't buy what $25 used to. Fortunately, we still have 2 computers & that ain't bad.

Also, the 30" HP doesn't work on the Quadro FX 4000 until X11 boots. If anything is corrupted on the hard drive, U can't get a display at all.

Altitude hold with the software climb rate was definitely more stable than doppler shift, even in lousier weather. Hovered a battery out with some heading changes in formidable wind. 11m14s under computer control. She touched the ground a few times.

Seeing a slight improvement with world orientation tracking. 90' turns R still the limit but she seems a little more stable. 180' is still a matter of luck. In very unflyable weather, managed to get a 180' turn out of her before wind sent her to the ground.

The problem is IMU alignment contributes a constant offset to copter orientation & it must be added & subtracted from the navigation in bug prone ways.
Posted by Jack Crossfire | Feb 29, 2008 @ 05:09 PM | 4,911 Views
This is the last simulation of orientation feedback in copter frame, because now orientation feedback is in world frame. Have found the feedback in different simulation runs is different every time. The neural network is seeded with random weights before every run & it may actually remember starting information through entire flights.
Posted by Jack Crossfire | Feb 29, 2008 @ 04:17 AM | 4,108 Views
To try to stop rate damping overflows, clamped the raw unsigned gyros to 16384-49152. Now assuming the gyro center & Vref R close to 32768, the PWM feedback can't wrap. Unfortunately, clamping feedback results would require 32 bits for the entire sequence & no-one wants to risk another main shaft on a test.

Happily, she made it to all 3 waypoints on our waypoint program. Altitude hold failed after finishing the program & she could not maintain a hover.

She can turn 90' pretty easily, but forget about 180. Definitely need the target attitude in global frame if we're going to do any turns.

Unfortunately rcgroups images R broken, so you get links instead.

waypoint map

The satisfy radius is 5m, but it's meaningless with a copter. Maximum velocity was 2m/s. The practical limit with such a confined space is probably 1m/s.

altitude plot

Target altitude was 130m & collective was really well trimmed before flight.
Posted by Jack Crossfire | Feb 28, 2008 @ 05:45 AM | 4,292 Views
Had another idea. Increase the integrals in fixed steps & clamp the accumulators. Previously they incremented forever relative to the error & never seemed to catch up or if we increased the gain, overpowered the P term.

Step integrals definitely seemed to improve the attitude test but gains had 2 B much lower. The auto hover was pretty stable, but still does not track long term attitude. Not sure if it's a problem in the simulation.

Did the first waypoint program today. After 2 tries to get the altitude to work & a few minutes of painful creeping, she finally made it to the target & hovered, the first successful waypoint mission.

On one altitude drop, did a full collective, saturated the yaw gyro & got our first software rate overflow. 1 hour of repairs.

FYI, since the flybarless head is rigid, U can't use the foam widget from Align.

Now today's movie.

rocket truck (0 min 44 sec)

Posted by Jack Crossfire | Feb 27, 2008 @ 01:17 PM | 4,295 Views
Well, leaning again towards blowing the $70 + $32 for VicaGlider. Though electronics may still be getting cheaper, rising shipping costs R more than compensating for it. Now suspect a yaw gyro for roll stabilization & a pitch gyro for damping pitch rate may be enough inertial sensing to do the job.
May use our inventory of full size servos for 2 of the control surfaces.
Posted by Jack Crossfire | Feb 27, 2008 @ 03:17 AM | 4,589 Views
Well, flybar loops didn't track attitude very well. The software flybar loop doesn't have enough force to overcome attitude changes. Could swap in bigger constants during autopilot mode, but that road probably includes monster oscillations. All roads lead to a cyclic neural network or less flybar stabilization.

Went back to full autopilot. Came to the conclusion that part of our problem is altitude oscillation. The neural network may also forget its training & relearn every 25 seconds. A few more PID tweeks and she's roughly where the Corona was.

It definitely looks like the Sirf III binary conversion is less precise than the NMEA output.
Posted by Jack Crossfire | Feb 26, 2008 @ 01:22 AM | 4,308 Views
Stepped up the cyclic feedback & got more plots. The dirty secret is attitude hold has always been pretty awful since Corona days & still is. The extra stiffness from software flybar may aggravate the problem.

Next, the RCE-BL35X lost its configuration & went back into throttle mode. 6 hours without a malfunction is pretty good 4 Taiwan. Should program the autopilot to program the ESC.

Attitude hold using straight proportional feedback works for stabilizers like the Copilot & AP2000, but clearly it's not good enough for targeting velocities. Adding integral increases wind resistance to a point, but does not lock it in before it degrades stability. The Gumstix loop isn't fast enough for rate feedback. Its latency is 14ms. The INS latency is 54ms.

That leaves actually going into the PIC & biasing the software flybar to get the desired rotations. Maybe when autopilot is on, cyclic commands become gyro center values & we start over again with gains of 0.001 & plastic blades.

The heading hold algorithm without lowpass filter is bulletproof but now has a definite jitter. Probably need independant bandwidth for yaw & cyclic.
Posted by Jack Crossfire | Feb 25, 2008 @ 02:58 AM | 4,622 Views
If the Futaba S3102 was dog slow on the Corona, it's probably unusable on the T-Rex. The $60 Futaba S9602 looks like the next step.

Moved the tail damping back off the lowpass filter since it didn't stop the wagging. May need another round of bandwidth constants & strap down tests with the filter.

Again leaning towards putting VicaGlider on a dual PIC arrangement or Gumstix. The necessary kind of trig is not possible on the single PIC. Another method is just flying in 8 directions.

Now convinced attitude sensing is required in fixed wings. Now the question is whether GPS can replace accelerometers for drift elimination. The theory is if U need GPS assisted inertial navigation in a fixed wing, it might as well go all the way.

Dreamed someone converted an F-35 to a passenger plane. It was never tested before first passengers boarded. After spitting out some metal fragments, it took off normally vertically. After transitioning to forward flight, it started spitting out more metal fragments. Then it entered a runaway pitch down, looping inverted like a propeller. It managed to stabilize after converting back to hover mode & made a hard landing, crashing through a building.

Another dream was about a Nazi concentration camp which operated until 1972. Apparently they never found out the war ended & kept mining supplies deep underground. Through the bravery of a heroine nurse who looked like Liv Tyler in 1999, several prisoners escaped in the 50's. The rest finally got all the way to a boat in 1972, which the Nazis shortly turned around by remote control & exploded.

Nothing left but more wide angle excitement.
Posted by Jack Crossfire | Feb 24, 2008 @ 04:03 AM | 4,495 Views
The latest heading hold software goes to full manual control when stick is deflected beyond dead band. Integral feedback is always applied but not incremented in manual mode. Proportional feedback is only applied in automatic mode. The current heading is taken as the target heading in manual mode. This algorithm worked better than any other in a high wind.

Tail servo is now on 6V from the RCE-BL35X. Blade tracking from yesterday came out perfect.

A very slight chance of good weather is predicted on Monday morning with the window definitely closing again on Friday.

Storm movie (0 min 30 sec)

Posted by Jack Crossfire | Feb 23, 2008 @ 04:59 AM | 4,357 Views
Waypoint navigation is pretty useless on VicaCopter because:

Flight time is too short to go anywhere.

Open spaces R too small to go very fast.


Don't have to manually set up every hover.

Just swap batteries & go.

Previously we tried setting waypoints in flight. GPS proved too unreliable to pull that off & the user interface was too confusing. One flight's waypoint was another flight's tree. Now hard coding pragmatic waypoints is the key.

Maximum flight time with flybarless is 11m30s so it added 1 more minute. The kit battery is abysmal.

None of the software heading hold strategies worked. They tended to not allow any yaw control at all & rapidly drift, making for very exciting flying.

Now seeing much less vibration without the flybar. IMU drift with flybarless is too good 2 B true. Unfortunately, the last 3 campaigns had significant oscillations in autopilot & manual cyclic was very unstable. Oscillations R in the 2 sec range, hardly what we expected with flybarless.

Autopilot pushes target attitude all the way over with no response from the cyclic. May be more yet to discover about flybarless dynamics unless it's blade tracking.
Posted by Jack Crossfire | Feb 22, 2008 @ 01:16 PM | 4,301 Views
Squeezed in a daylight hover during day job hours. Had a 15 minute window without rain & wind. She did much better at high altitude than low altitude.

Manual heading hold program was pretty awful. It increments the yaw regardless of current state, causing sudden movements & oscillation. Probably need direct stick -> rudder offset. When the stick is outside its dead band, heading hold is turned off & current heading is taken as the target. There's also staying in heading hold mode but taking current angle + fixed offset as the target.
Posted by Jack Crossfire | Feb 22, 2008 @ 03:47 AM | 5,099 Views
Servo headers started feeling a bit loose, so time to resolder all the headers. U know, if we just spent another $10 on a decent proto board back in 2006, would never have had so many broken solder traces. That would be $20 today.

Rain began in the middle of today's test flight. Suspect wind is higher in the flight area than it is in the pilot area because she didn't do very well. Also having great difficulty calibrating the magnetometer after moving it. Min & max flux R not enough. It also needs a rotation & rotation sign correction.

Finally have software heading hold for manual flying implemented, but the next weather window is now Monday.

Now the weather forecast:
> High wind watch in effect from Saturday afternoon through Sunday morning...
> ...big storm that will pound our region with fierce winds and driving rains...
> ...trees toppling more easily...
> ...longer period of strong winds than on Jan 4th...
> ...downed trees and power outages...
> ...periods of heavy rain...
Posted by Jack Crossfire | Feb 21, 2008 @ 02:50 AM | 5,261 Views
Carbon fiber blades went on, then a training gear test, then full autopilot. No problem with the software flybar, but nervewracking oscillations in autopilot. Also significant tail wagging remains despite gain reduction on the ARM.

Definitely more photogenic with carbon fiber blades. Software flybar did feel a bit looser on the carbon fiber, but still stiffer than the mechanical flybar. The benchmark is ground effect hovering & backwards figure 8's. Software flybar is the gold standard in both.

Well, she certainly likes oscillating. After the photo session, stepped up the I gains & oscillation except for tail wag virtually disappeared. May also be weather sensitivity. Tail wag may require gain reduction on the PIC.

Well, flight times in previous blog posts were more like 10 minutes. The 13 minutes was including initialization. Have not taken flybarless to exhaustion, but it's getting at least 10 min.

Need another rate cut & liquidity injection into the blade budget. Bernanke can use our printer until he's fired....Continue Reading
Posted by Jack Crossfire | Feb 20, 2008 @ 09:21 PM | 4,018 Views
Instead of sitting in traffic, got some eclipse shots from the unique view of our day job. Too cloudy to match the monster quality from 8/29/07 of course

Posted by Jack Crossfire | Feb 20, 2008 @ 03:16 AM | 4,065 Views
The answer is yes. She hovers autonomously without a flybar.

The answer is no. Did not get any pictures. The window between storms is too short to get any meaningful flight times & she drifts around significantly in the light gusts. With light drizzle, good chances of a strong gust & very high repair costs, not confident enough to swap controls for camera.

Had another complete tail rotor failure in which the belt drive autonomously built up slack since installation. Need 2 keep on top of the slack & abort if tail rotor begins drifting. 1 main shaft gone.

The T-Sux 450 is sucking money faster than our boss's subprime mortgage. February so far:

$24.96 2 Belts
$25.28 Ball link tool
$18.36 plastic blades & bolts
$40.18 CF blades
$22.87 1 Belt, main shaft & bolts

With such a blood sucking, fragile copter, VicaGlider may be unaffordable.

Put the yaw damping on the lowpass filter and got no difference. Still a bit of a wag. Expanding the flybarless envelope, it's more like attitude hold than full manual. Hovering in ground effect is rock solid. Rapid descents R almost hands off.

Americans think she's a UFO. Indians think she's just a flybarless T-Rex 450 using ADXRS150 gyros & very tight PID loops.

Got the PIC up to 85 IMU updates without radio signal & 90 IMU updates with radio signal. Peculiar loss of clockcycles without radio. No IMU recalibration was necessary.

In the current configuration the PWM duty cycle goes from 4000 - 24000. The maximum rate damping offset is 32767 * 32 / 256 = 4096

If a servo is full over & opposing angular velocity saturates the gyros, she could overflow, but that situation is already lethal. With a human pilot, rate damping always opposes servo deflection instead of adding to it. In a tail rotor failure, overflow could happen, however.

There aren't enough clockcycles to clamp feedback. The tail rotor fails all the time.
Posted by Jack Crossfire | Feb 19, 2008 @ 03:16 AM | 5,348 Views
The software flybar mode started working & it is so stiff, it's like Al Gore. Though using plastic blades, it's far stiffer than the carbon fiber + mechanical flybar ever was. A miracle anyone still sells flybars.

The key was moving cyclic feedback to the lowpass filter. Now we have rudder feedback from raw gyro data & cyclic feedback from lowpassed gyro data. All feedback gains were 32/256. The ideal cyclic ranges ended up the same as a mechanical flybar.

The biggest fear with lowpassed gyros was reappearance of monster exponential oscillation from excessive delays. That didn't happen with cyclic at least.

The 2 causes of oscillation R:

1) alias frequencies from vibration

2) delay in feedback

For the flybar, it was alias frequencies. For the rudder, it was delay.

Software flybar tests (1 min 0 sec)

Current hardware:

3 * ADXRS150 gyros
3 * Hitec HS65MG cyclic servos
1 * Futaba S3102 tail servo
Castle BEC
PIC 40Mhz

Would use the 75 deg/sec gyros if there was a take 2. These servos must have no dead band. Optimized the PIC to hammer software rate damping & reduce attitude sensing cycles. Another round of IMU calibration & attitude hold is now required.

Rain & wind has returned until March....Continue Reading
Posted by Jack Crossfire | Feb 17, 2008 @ 10:41 PM | 3,931 Views
Suspect it'll be as standard as 2.4Ghz in a year.


Trying to avoid fractional multiply operations. On the Taiwannosaurus, rotating the pitch +30 deg requires using only aft & starboard servos. Rotating the roll +30 deg requires making the port servo oppose the other 2 servos.

Back on the test stand, starting to behave like a real copter, but clearly there is too much noise in the cyclic gyros. Probably need to reduce gains to get her to spool up without flipping over. Reduce gains & U can't trim.

Flybarless test 2 with 30 deg phase adjustment (1 min 18 sec)

Posted by Jack Crossfire | Feb 15, 2008 @ 03:03 AM | 5,220 Views
They said flybarless testing was dangerous & flybarless testing didn't dissapoint. 1 cracked blade so far. Carbon fiber is no match for the softest grass in the golf course. May end up spending more on blades than a commercial flybar emulator.

1: blade pitch is 90' offset from swashplate pitch. Swashplate roll causes rotor pitch.

2: if significant oscillation with no cyclic input, shut it down instead of adding cyclic.

3: Even with the CCPM rotated, the swashplate is still about 30 deg off. Software wouldn't compensate for the right angular rates without some serious matrix math.

The next ideas R using the innermost servo holes, getting her to sample the IMU on the ground & hold that orientation in a full throttle test. May also be too much servo jitter. Definitely haven't seen any rate damping.

Low throttle test without flybar (1 min 2 sec)