Home / News

News Archive

May 12, 2001 Meeting Notes

May 12, 2001 Meeting Notes


In attendance:


John Carmack

Russ Blink

Phil Eaton



Russ made an aluminum handle grip that could be added to our new stainless steel quick disconnect so it could be popped off at 400 psi. The original quick connects we used had a nice little lever for disconnecting, but the seals in them weren’t peroxide compatible, and they deteriorated. When I bought new stainless/Viton quick connects, we found that we couldn’t get them off when they were pressurized more than 200 psi. It still takes a pretty firm tug, but we didn’t have any problems with the new grip.


We finished up the assembly of lander 2.0.




The complete lander 2.0 weighs 39 pounds dry. The heavy metal of the outrigger bars has added a bit to the mass over the first version. For larger loads of peroxide, we are going to need to raise the initial tank pressure above 440 psi, and/or drill out the nozzles a bit to get more thrust, or the blow down pressure will be too low to lift it as the tank empties. A half-full tank will hold about 10 pounds of peroxide (a whopping 1.25 mass ratio…), which should give us about 20 seconds of flight.


This is also the basic design we are looking at for the manned craft. You can stand on the demonstrator and bounce on the foam pads right now, so basically we will be building an upscaled version with a joystick on it and the main tank slightly offset. We will be designing it for a standing pilot, since we won’t be pulling any Gs, and the legs make pretty good shock absorbers. I was watching From The Earth To The Moon a couple weeks ago, and the arguments for standing LEM pilots seemed quite sensible.


We trued up the engines by using a level across each nozzle face, shimming the engines away from the mounts with washers.


The electronics box is held between two sheets of foam instead of being rigidly mounted to the frame. We have big hose clamps between the side bars to prevent it from sliding out if it came down sideways, but we will eventually want to build a small sheet metal box lined with foam that the electronics box will exactly slide into. The gyros are much happier with the foam mounting. Kicking the platform hard will still mess them up, but it can now lift off reliably without triggering a spurious rate cutoff limit.


We water tested it to check all the new plumbing and the new quick disconnect.


It was getting dark, so the video didn’t turn out all that great, but we got everything captured.


The first test had accidentally only pressurized the tank to 360 psi, instead of our normal 430 or so. The lander barely lifted off the ground, and bobbled around a little.





We decided that this was actually good behavior, making sure that it wasn’t going to fly up 20 feet before I could catch it, so we did the next two tests with 380 psi tank pressure.





Since the lander was tending to move away and to the left after lifting off, I tried pulling back on the joystick a bit after liftoff, but it overshot the desired angle by a bit.


We leveled the lander by setting two of it’s pads on some extra foam for the next liftoffs. The angle integrators are assumed to be zero at the beginning of each liftoff, and this isn’t correct if it is on an incline. We can automatically figure this out in the future based on the accelerometer orientation when on the ground, but it is still a good idea to avoid an immediate attitude correction.


Now that I had a reasonable feel for it, I lifted it a little farther in the air:





This was our first credible vertical takeoff and (not crash) landing with attitude control. We are very happy with this performance. We got good data from everything, and the vehicle performed well. We will be expanding the flight test program over the following weeks.




I will make some graphs of the telemetry later, but I spent some time going over the raw numbers.


It looks like it takes nearly 200 msec for all the effects of an attitude correction pulse to wind up visible to the rate sensors. This causes the back and forth bobbing, because after waiting 100 msec, the computer thinks that its last correction didn’t do enough, and issues another one.


There are a few tiny remaining bits of latency in the sensing system:


The current microcontroller code is reading a gyro axis 120 times a second and building a sensor string 60 times a second from the current values. The gyros axis are reading pitch/yaw first, then roll (redundant on both gyros) second. A full 16 msec of latency can be saved by reordering and doing things with minimal busy waits instead of periodic interrupts: have the microcontroller read the roll axis first, pausing just the required amount of time for A/D, then read the pitch/yaw axis in the minimum time, then sending the serial string immediately. Russ: lets plan on doing this on Tuesday, it shouldn’t take long.

The gyration ASIC takes nearly 3 msec to perform the A/D, and sending the sensor message over 115kbaud serial takes about 5 msec. We could remove those latencies by directly reading the amplified gyro outputs with the PC104 A/D board, but it probably isn’t worth the trouble.


The bulk of the latency is in the analog filtering going on inside the gyros. The right thing to do is just get a sensor that has more bandwidth. I have requested information on another silicon gyro that lists an 85hz bandwidth (the gyration units list 10hz), and we have found a couple fiber optic gyros (FOG) with 100hz bandwidth.


There is also some degree of latency in the actuation that we should measure. The solenoids operate within a couple msec, but the engine chamber conditions following a correction may influence one or more following frames.


The joystick based correction on the second run overshot due to the sensor latency, but I am going to lower the max desired rate some more to crutch up the latency issue. A slow turn is better than an overshoot.


Instead of checking for and possibly performing an attitude correction every third pulse frame, I am going to change to checking every frame, but only performing one if the last attitude correction on that frame was at least four or five (we will experiment) frames ago. That will allow more time for the sensor latency, but still allow an initial action to be taken without waiting for an even period.



Future Work


Experiment with attitude adjustment latency measures

240 hz load cell logging of the thrust changes during an attitude correction to see the total actuation latency.

Log the tank pressure blow down curve and see how closely it matches theory.

Add pressure blow down to the 3D simulator.

Get the accelerometer logging again.

Use the accelerometer as an inclinometer to initialize the angle integrators so we can take off without being level.

Experiment with slower solenoid pulsing (currently at 30hz), because the bigger solenoids will probably need it.

Translational maneuvers.

Roll control.

Landing range finder.

Try a water launch.




© 2001-2011 Armadillo Aerospace, LLC. All rights reserved.