Archive for October, 2009


The Mystery of the Golden Gnat

Oct 25, 2009 in Project Build Reports, Reference Posts, Stuff

A few months ago, intrepid MITERers discovered that a number of Honeywell GG480 “Golden Gnat” rate gyroscopes had been released to the surplus market. Taking the opportunity of a sale at Electronic Goldmine, we snagged a box of 10 just in case we ever decide to make cruise missiles…uhh, animatronic teddy bears.


That’s it.

The box proceeded to sit in the same spot for the entire summer because nobody could figure out what wires to connect to where. Like all the cool electronic components I have had the luck to deal with, datasheets are nowhere to be found, and I don’t possess the course 6 testicular fortitude to find out.

Recently, information has been slowly surfacing regarding how these gyros function. The most active discussion is on the RCGroups DIY Cruise Missile Unmanned Aerial Vehicle forum. Using this as a springboard, and armed with everything that the Intergoogles could supply me, I decided to attempt an extraction of useful data from the units so I can finish my cruise missile DIY balancing vehicle by IAP.

Here’s a picture of the little buggers. Each gyro is a gold-plated cylinder about an inch across and two inches long.  They are single-axis gyros.

I used the free circuit that Electronic Goldmine supplied to drive the gyro rotor. I made one change to the frequency of oscillation, to bring it to about 750Hz, because faster is better…to a degree. Interestingly enough, if the input frequency is too high, the gyroscope takes forever to spool up. It turns out that the 500 to 700Hz range brought the spinup time to around 5 seconds. I’m fairly certain higher rotation speeds improve the sensitivity.

These things are neat. You can actually hear the rotor spinning internally – it sounds like a tiny, gold-plated cylindrical  hard drive.

I had an adventure getting the halfbridge output to work because it turns I was inserting the PNP output transistor backwards. And here I thought that PNP BJTs and P-channel MOSFETs just worked with opposite input signals. Nope, it turns out they conduct backwards too. This is going to fuck with my mind so much, because I’m emotionally traumatized by plugging things in backwards.

The two outputs of the circuit create a square wave at the half bridge output and a what-the-fuck wave behind the capacitor which looks like wants to be a sine wave badly but just can’t manage it.

The nature of a capacitative circuit, in which voltage lags behind current by 90 degrees, says to me that the gyro rotor is like a single phase, capacitor start/run induction motor. It wants a sinusoid voltage input at one terminal, and a delayed voltage input of the same frequency at the other. Alternatively, it resembles a bipolar stepper motor drive.

Either way, it wants two inputs – everything seemed to operate fine with square-what-the-fuck-wave drive.

And here is an output signal.

According to RCGroups sleuths,  the gyro is built around a variable differential transformer. Essentially this means it will return you a scaled and phase-shifted version of your input signal depending on movement of the transformer core, which is connected to (usually) a measuring tool. They are known for being obsessively sensitive. In this case, the variation comes from what I presume is the displacement of the rotor when the case is rotated.

The input (channel 1) sine wave is 10 volts p2p at 5000 Hz, and the output (channel 2, really fuzzy) is roughly 0.4 volts p2p.

So this is how the signal varies.

At maximum positive angular velocity (Ω), the sine wave increases in magnitude to a point of saturation. The ch2 phase, relative to ch1, remains the same.

At  maximum negative Ω, the magnitude decreases to another point of saturation, but the phase flips. Notice that the peak of the output is now on the other side of the peak of the input.

At a certain negative Ω, the output is flat. The output wave does not time-shift at all, it just flips across the X-axis after going to complete zero.

A video is worth (one thousand * frames per second * number of seconds of video length) words, so here’s a video of me wiggling the gyro. Watch the fuzzy output.

Well, this is certainly troublesome. To use the gyro properly, I would have to monitor both the phase AND the magnitude, because certain output magnitudes correspond to the same Ωs in opposite directions. Worse yet, it’s not like the signal is centered around zero or anything – zero is actually some negative Ω.

Not very useful, so I started playing around with frequencies and what not. Here’s where I discovered that the gyro won’t do anything with a 24,000Hz input on the rotor. I’d need a VFD or something to get it that fast.

But an interesting phenomenon occured at a VDT input frequency of about10,000Hz (with the rotor back at the usual 700hz frequency). I noticed that the -Ω saturation magnitude began decreasing with increasing input frequency. At around 10Khz, maximum -Ω resulted in a totally flat response. The maximum +Ω voltage increased corresponingly.

Hey, this is something useful. A nominal magnitude at zero Ω, a high magnitude at maximum +Ω, and zero at maximum -Ω. If you rectified the sine wave, you’d get a constant Ω=0, +Ωmax, and -Ωmax voltage with linear variations with Ω in between.

Unfortunately, the intervals seemed to be unequal. That is,  the voltage difference from  Ω=0 to +Ωmax was higher than Ω=0 to -Ωmax. Further observation of the frequency response showed that these intervals changed as the frequency was increased. So I tried to find the frequency where the voltage swing would be approximately equal.

The magical frequency was around 18Khz. At this point, the voltage deviations from Ω=0 were (to my eyes and MITERs’ ancient oscilloscope) essentially equal in both directions. The output sine wave no longer flipped, nor did it reach zero, but it only deviated from the rest amplitude slightly.

Here’s a video where channel 1 is initially suppressed so the full range of the voltage swing is variable.

I threw an op-amp at the roughly .5 volt p2p output signal so it was in a more useful range.

So now I know that at about 18Khz sine wave input, the output of the gyro is a sine wave of a certain magnitude at rest. Moving the gyro about its sensitive axis changes the magnitude positively or negatively to relatively equal voltage limits above and below the rest voltage, but the output is still a sine wave.

This is now alot more useful to me, because the signal can be rectified into a positive DC voltage, then the “zero voltage” subtracted from that. Then, a positive angular velocity will yield a positive DC voltage, and a negative one vice versa. And zero volts should be zero movement. There’s probably a less Byzantine way of reading the signal, but that’s a first-order guess using my limited EE knowledge.

So, the bottom line is, so far…

A +/- 15 volt power supply and something that generates and accepts sine waves is needed.

Black wire: Ground. Legit ground.

Red wire: One rotor input. According to the Interwebs, this should be a 400 to 700hz square(sine?) wave.

Green wire: Other rotor input. One of the two should be capacitatively coupled to the other. Here I assume that depending on which lead gets the capacitor, the rotor spins in opposite directions.

Blue: Signal ground. I tied it to Legit Ground™

Yellow wire: VDT input, referenced to Blue.Takes a sine wave.

White wire: VDT output. A chopped and screwed version of your input appears here. Intepretation is an exercise left to the EE-gifted.

First person to build a cruise missile cool gyroscopically-guided thing wins!

Also, comments, corrections, and additional information is welcome and encouraged. I don’t doubt at all that I misinterpreted or abused something, so please point it out!

Swapfest Revisited

Oct 20, 2009 in MIT & Boston, Project Build Reports, Stuff

SWAPFEST!! (capitalization and emphasis added) is the monthly flea market that MIT hosts for area radio enthusiasts, electronics tinkerers, cruftseekers, and frightened but daring onlookers. It’s more or less a hybridized radio hamfest. Because it occurs in the equivalent of my back yard, I try to attend every month.

Occasionally I fail because it involves waking up during the daytime, but historically speaking, Swapfest has been a boon for my cruft-hoarding tendencies. It has turned up stuff as weird as the alleged gyroscope gymbal out of a B-52, to mutant semiconductors to literal dozens of old 5.25″ full-height hard drives.

The season runs from April to October, because nobody wants to push their cruft while it’s snowing outside. The first and last Swapfests always seem to produce a more eclectic selection. I figure this is because nobody, in addition, wants to drag all their crap back home and store it all winter, so they dispose of it in October. Likewise, April is the time when everybody brings all the crap they collected all winter.

Following this pattern, I abandoned all inhibitions for this past Swapfest and actually… you know, brought some money. Apparently, the incremental gain in awesome parts when you go from “free” to “cheap” is nontrivial. This resulted in the best Swapfest hual in recent memory. And it even includes stuff I can actually use. Imagine that.

Naturally, I sprung for more mutant semiconductors first.

I buy the guy out of these every time I see him. They are the same ginormoFET modules I use on LOLrioKart. I wish they were higher voltage, but regardless, you just can’t beat 200-300 solid amps, 2 milliohms, and 100 volts for $7.

The downside is the incredible 0.1uF gate capacitance, and the lack of a real datasheet. The part number apparently only exists in the archives of shady Far Eastern electronic component dealers.

I decided to invest in some dial meters for Segfault. The variety of things measured ranged from the relatively tame “PERCENT OF RATED CURRENT” to … leak rate. How do you measure leak rate? Dribbles per minute?

Ultimately, no matter how weird the scale, these things tend to be voltmeters in disguise. Finding a straight up ammeter (voltmeter with a scaled reading) was actually pretty difficult considering most of the meters read kilovolts or milliamps (or milliRems per hour). I finally wound up with a 0-50 amp scale meter. There was also an oddball that showed both positive and negative amps. The weird thing, however, was that it required a voltage just to read zero. I thought it was a dial zeroing issue, but nope… the little adjustment screw doesn’t crank that far. Maybe it will be handy some day to read regenerative braking current.

You’d figure an easier way to do this is to center the scale at zero, like the +/- degrees meter. I liked the degree-o-meter  because the scale is very similar to the numbers I want to pursue for Segfault. 15 degrees forward tilt gives a comfortable torque margin for the motors to recover if it becomes necessary (The calculated maximum steady state tilt angle is about 30 degrees, which is substantial). If I ever get to 45 degrees, I’m probably on the way to a face/ass/extremity-plant already.

Speaking of meters, here’s a 750 amps DC meter. With the associated shunt, a very precise 3 and a half pound block of brass. Ammeter for LOLrioKart to go along the amp-volt-microns meter?

While on the topic of mutant components, here’s the functional component inside a variac. To me, this looks like a meaty inductor to use for a high-power boost converter. It weighs about 10 pounds and is 8 inches across.

Using an LCR meter, I found that the inductance of this toroid changes significantly with frequency. At 1kHz, the inductance was around 170 milliHenries. This fell to 60 at 10kHz, but was pretty damn close to 1 full H at 100Hz.

Considering the thing was designed to operate at 60hz, I’m not too surprised. If nothing else, I now have yet another door decoration.

Enough EE shenanigans. This is what happens when you let Charles near a bin of unsorted endmills.

He takes 20 minutes and multiple rusty-tool lacerations to the hand to mine out all the carbide cutters.

You can easily distinguish a carbide endmill from a steel one just by weight. The final tally is one 0.5″, one 5/8″, one 3/4″, and a huge 7/8″… carbide tipped cutter? I didn’t know carbide tipped endmills existed,  but… well, now I know. This looks like it dates from before people figured out how to make whole cutters from carbide.

A carbide spotting drill also falls into the mix. The whole load cost me a few Mountain Dews Equivalent (MDe, a new unit of currency used only in my universe).

The most exciting and highly valued find of the day was this Tapmatic self-reversing tapping attachment for your choice of spindle machinery. They drive a tap through a clutch and automatically pop into reverse, backing the tap out, if you start lifting the spindle up. The reaction arm stays stationary and hopefully braced against something to allow for the reversal.

I investigated these things a long time ago to use the underlying mechanism in a stored-energy flipper ‘bot design, but could not understand what went on in them at all, because smart people designed it.

I still don’t know, but now I have an excuse to powertap things smaller than 1/4″-20.

Now my goal is to find a use for everything before April!

The Fall 2009 Roundup: Überclocker Updates, RazEr Redux, Analog Antics, and the End of the Tragedy of the LOLrioKart

Oct 05, 2009 in Bots, LOLrio Kart, Project Build Reports, Project RazEr, SEGFAULT, Überclocker Remix

…wins for the longest post title EVER on this site. That’s because it addresses quite a few topics. I can finally characterize the academic term so far as having entered a steady state, which just means I know which nights I can bumble away safely, so it’s time to step up work on the projects. I’ve devised a list of theoretically attainable goals for the next few months, stretching into the coming winter months.

Überclocker Remix

Let’s start with some pictures of epic motor ownage. I cracked open the toasted HTI gumball machine motors out of curiosity after removing them from the bot. What awaited me inside was a scene of utter devastation.

That doesn’t look very healthy. It appears the commutator decided to just melt off the backing material. This motor actually still ran, just throwing blazing white sparks everywhere. The discoloration of the copper next to the crater attests to the extreme heating that occured.

The brush cap from the left side, which simply failed open circuit at the event. Well, now the reason is clear why it failed open. Half of the brush conductor spring just sort of flew off and melted itself into the other side of the plastic brush holder.

The carbon brush itself was bouncing around inside the motor.

Another view. That bit of spring must have been pretty hot to instantly melt itself into the plastic.

And another view of the copper droplet that is the commutator. Oddly enough, the windings themselves seemed for the most part to be just fine.

Here’s Überclocker looking decrepit on a table. Since a robot with no motors is akin to a dog with no legs, or a fish with no fins, I began the quest to search for a… well, more legitimate motor. That’s when I remember that I found these, from Way Back.

DeWalt drills are classic musclebot motors. Sadly enough, these were of different voltages (!?), which not only surprised me as to how on earth their previous user expected their creation to move in a straight line, but saddened me because I… well, want mine to.

It was enough to perform a fit test and draw up plans to modify the gearbox to accept these motors while UPS channels their Brownian Motion to get a matched set of motors to me. They are the “new” DeWalt motors, where “new” is relative to 2003 or so. These drills have 3 speeds and are infinitely more of a bitch to mount. So I will only be using the motors in my custom frakenb0xen.

Fit test. The good news is that these motors are roughly the same length as the 700-size HTI motors, but a little fatter. No issue, considering the gearboxes have plenty of wiggle room.

The gearbox modified to accept a DeWalt motor, with its Alien Technology Motor Pinion of neither metric nor Imperial tooth pitch. Needless to say, this will be removed and the HF motor pinion crammed on in place.

So am I over-motoring the HF drill gearbox parts by putting a real motor on them? Perhaps. However, I think it’s a legitimate move in a 30 pound robot, because the laws of physics dictate that I can only put so much power to the ground. I’m mostly after the “real motor” bit, not so much increased drivetrain power, because the robot doesn’t have the traction to use it.

With motors now on the way, this conversion ought to go quickly since I’ve already drilled the new mounting holes to accommodate them. Überclocker should then be able to attend more events.

The (Possibly?) Final Chapter in the Tragedy of the LOLrioKart

So by now all ya’ll have probably heard of this.

While the details surrounding the citation were totally illegitimate and imply a degree of recklessness that was not present at all, the bottom line is that the kart is not going on any more open road adventures until it’s legit. And by legit, I mean registered and insured and fully street legal.

Whatever measure this takes, it will happen. It will simultaneously the most confusing and most glorious thing on the planet.

But the good news is that through two weeks of intense demos and driving during Orientation, the kart didn’t explode. The motor controller, version 6, is more or less stable. That’s huge. That’s like, me doing something right in electronics for once.

Of course, if I actually run the numbers on the electrical characteristics of the power converter, it would probably make real EEs run away to vomit. But the kart has survived more than twenty power cycles without misbehaving, save for the flakey DC-DC converter that caused the initial failure of version 6. A replacement module with better-designed (read: existent) filtering solved the problem.

So I’m satisfied. There will be little active work on LOLrioKart this term, with most of the fleeting effort concentrating on the battery system. After said weeks of operation, two cells in the battery pack are now just resistors. I regularly saw the voltage dipping under 45 volts on acceleration, which is concerning to say the least. Battery management solutions are condensing around me, so I may make the jump to lithium iron phosphate cells.

Now let’s move onto the new shiat.

This is a Xootr Street push scooter.

Gee, that looks kind of like every other push scooter on the planet. You know, like a Razor scooter. I thought you already had one of those? With like… a motor on it, right? That you built? I heard you built a motor. Can you show me how that works? Can you build me one?

… </average_miters_visitor>

Oh, that’s the difference.

As much as I love RazEr when it works, it’s time for me to realize that it’s too freakin’ small. I’ve managed to hit the tiny-but-functional goal, and at the same time the maximum recommended rider weight a few times. With some more scrupulous design, I could probably fit more batteries in there, but otherwise all the useful space is essentially occupied. And while 5 inch wheels are great for shoving your average copier motor core into, they are not great for shoving into your average pothole.

I need something bigger. More legit™. So thanks to MITERS for coming up with an engineering sample of the Xootr Street. I won’t actually be making any mods to this one, since it’s … not mine, and stuff.

This thing measures a bit over 3 feet long when fully deployed. The wheels are 7 inches in diameter and cast aluminum. It’s the smoothest thing ever on the ground because of the large wheel-to-bearing diameter, which minimized rolling friction. And the deck is absolutely enormous….

… and HOLY MAGNESIUM JESUS ON A STICK. It is in fact CNC machined from billet aluminum. These guys are just like me, except with infinitely more style. A scooter? Made from real metal?

And the 10 center-side pockets are just big enough to comfortable seat two A123 26650 cells apiece! How about that. 20 cells yields almost 150 watthours of battery pack energy.

Ground clearance check. The deck height, oddly enough, is almost the same height of the Razor A3 frame. The wheel line is just an inch and a half or so higher to fit the 7″ wheels. Overall, as can be seen, there is about 1.25″ of “fiddle space” from the bottom of the deck (not including the pockets) to the top of the 1.5″ parallel.

This is good, because hiding all the goodies under the vehicle frame contributes to vehicle aesthetics and the illusion that something which is not supposed to be motorized is moving under the directive of an unknown force.

There are no motor drawings or plans for this yet, but the profile of the wheels and their spacious internal diameter make them amenable to stuffing axial flux coreless motors inside, maybe even one per wheel. I’ve been itching to build a real surface-wound (no iron core) pancake motor for a while, but have been put off by their complexity in manufacturing.

As more details condense from the bot-aether, I’ll give this project its own page, category, and possibly a snappy and witty name. This is not a high priority project, as I don’t even have the vehicle yet, and it might spill over into Spring term.

Spring is a better time to blaze around anyway.

Now Announcing Project SEGFAULT


A bad pun on the word segue. A fundamentally unstable faceplant-waiting-to-happen of an inverted pendulum. A cool exercise and great demonstration of basic control theory.

DIY balancing personal transporters have been attempted and perfected many times before. It’s almost passè. There’s even instructions on how to do it and code for your choice of microprocessor. All you need is two fat motors, a rate gyroscope, an accelerometer, and determination.

The whole thing about “microprocessors” is what has been putting me off. I like to think I’m familiar with mechanical engineering principles. I’m shake on electronics and EE. But I’m the last person you want to ask about anything software related. I hate software. With a passion. Even though I use it ALL day, I shudder to see what goes on under the glitzy Web 2.0 interface, or under the ultrasonically-welded sealed cap of an Atmel chip.

…so that’s why I want to do it all in ANALOG ELECTRONICS.

That’s correct. Op amps, comparators, linear components, passives… it’s a 6.002 (or 6.101) paradise. I stochastically arrived upon this idea near the beginning of the term, but it took a few weeks before I took it upon myself to do some research on gyros and accelerometers, and sketch out a rudimentary control network composed primarily of rail-to-rail op amps.

Then I remembered that Dale had built an analog balancing robot, so naturally I read the site and discovered I was doing it totally wrong.

I have a sneaking suspicion that a relatively non-chaotic differential equation like the one that governs inverted pendulums can be pretty easily translated to a continuous time control system (analog, as opposed to a discrete time digital control system). The idea as a whole is to have a purely analog, continuous-time front end controlling a Class D amplifier, also known as a switching amplifier or if the output is bidirectional a locked antiphase amplifier. Basically this just means your transducer wiggles back and forth really quickly… but some times more in one direction than another, so the summation of the movements is a velocity.

But Charles, isn’t a switching amplifier a digital thing?!

Yeah, if I implemented a real linear motor driver, I would have a battery life of 30 seconds and require heat sinks the size of Hannah Montana. Sssshh…. don’t tell anybody.

With the plan now more grounded (HURRRRRRRRRR PUN) than before, I’m moving forward with the mechanical details, as I always tend to do first. Once I have a rolling frame, I could conceivably roll analog or digital, or mixed-signal. As always, this entails a trip to MITERS and a few hours of mining for parts.

Yeah, so it’s nothing much yet. I grunged these 9″ pneumatic tires for the project as they were the only two matching wheels in MITERS that weren’t already on something.

9 inches? Isn’t that a bit small (&thats_what_she_said;) ? It is, but there’s nothing fundamentally wrong with having smaller wheels on such a machine. It just makes obstacle negoatiation tougher. If anything, I can get away with having less torquey motors because of the increased mechanical advantage.

The design work continues! After I get my control theory a bit more in line, I’ll sketch up a schematic of what I think should work. There are endless supplies of linear circuit components at MITERS and kicking around the EE labs for experimentation. I have accelerometers and gyros on the way from Sparkfun for experimentation.

…Oh, that’s the other cheat here. Real, modern MEMS sensors. I’m going for the analogginess here, not period-realism.

SEGFAULT will get its own page and category as it develops. This is my number one goal for the end of the term, and I’m actually going to try to get the controller graded. Here goes… something!