Barebones GE X-Ray Head Driver

From Nucwiki
Revision as of 23:17, 7 July 2022 by TheMuffinMan (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

It is possible to reliably drive most General Electric and Gendex X-Ray heads on the used hardware market via a relatively cheap and simple minimalist driver circuit.

Let us assume you understand safety with x-ray radiation and high voltages(65kv to 110kv), and that safety is your own responsibility.

Why is this useful knowledge?

Most OEM/proprietary controllers for medical/dental x-ray heads available on eBay and other resell marketplaces seem to have been damaged internally by unskilled users attempting repairs. It is much cheaper and less time consuming to build this minimalist circuit than to take the chance buying a used controller box. If you don't have the time and shipping money to try 2-5 orders on potentially broken controller units, building your own simple driver may be the only viable option for your project.

Common Specifications

Please do not assume these specifications apply to your X-Ray head model, they do vary, but the electrical specs and pinout for the GE1000 head are described by SiliconPr0n(Mcmaster). The labeling convention and abbreviations for the 6 terminals on an X-Ray head tend to be universal. What may change are the maximum and minimum acceptable voltage, current, and timing of the power supplied to the correct terminals.

Preparation


Materials

The materials used in my particular build were as follows:

-Scrap Wire

-A handful of 'acorn' wire couplings

-A scrap 10a breaker from a blow dryer cable in my parts boxes

-A 2-5 gallon(a few litres) bucket with a resealable lid.

-Table salt or baking soda (technically safer if you use baking soda, or another basic electrolyte)

-Water (technically better to use distilled. I used tap water, and may eventually have to recalibrate my waterload sooner than with distilled)

-2 wall AC lighting dimmer switches/dials. DO NOT USE DIGITALLY CONTROLLED DIMMERS, as they do not use resistance as the primary means of power drop / time, and do not cause an output that we want

-2 relays. Make sure they are rated at much higher than the target current draw if possible, mostly to account for mistakes calibrating the waterload and potentiometers. I used a few high current solid state relays (a 40a 240v max for the filament rail, and a 400v 120a model for the HV rail), but SSRs often fail to closed circuit. Feel free to try conventional/mechanical relays. If you calibrate the circuit incorrectly, it may chunk a relay or two before you have it dialed in. *You need the HV relay to be reactive enough to time exposure accurately. I expose my GE100 for only 3/100 of a second, and there is more than enough radiation to acquire detailed images through a test grating from any x-ray sensor I have tried

-Aluminum Tubing. I used maybe 3 ft of 3/4 inch x 1/16"(thickness) tubing from my parts boxes. It's just a convenient material for the electrodes in the waterload.

-A few bolts(and a handful of nuts and washers) suitable for making the terminals on the waterload

-A cheap microcontroller and some jumper wires. I used an Arduino Uno clone with the following overly simple script uplooaded from Arduino IDE(exposes on a timer on boot, roughly 12 seconds+ 2.5 seconds to warm the filament):

-Some would want a capacitor and/or varistor somewhere to buffer out any voltage spikes, but I have found that they aren't really an issue with a waterload. Don't blame me if you burn out your head here. Clearly some may see me as a reckless tool abuser. My x-ray head seems to be reliable without these protections.


Tools

- A vice, a 'vice-grips', or a hammer. (You need to flatten the ends of the aluminum tubing electrodes. this will also allow you to forego actually cutting the aluminum, because you can just break it off to length where flattened).

-A decent drill, and a drill bit(use a twist bit) compatible with the diameter of your bolts for the waterload terminals. You'll be drilling plastic and aluminum, so most conventional steel twist bits will work fine.

- A multimeter that can read AC Voltage, AC Current up to 10A, and Resistance. If you aren't careful, you will burn out the high(ish) current rail in your multimeter. I did, because I am not careful, and I use cheap multimeters for stuff like this.

- Screwdrivers

- Spanners(what you imagine when someone says the word, "wrench") to lock down the nuts and bolts you use on your waterload.

- Razor blades

- A wire stripper(optional, since you have razor blades)

- A medium or high temp glue gun(optional, if you have a high viscosity removable adhesive to use instead. wax would likely be fine). Used for locking the dials on the dimmers once they are set/calibrated.

-Insulative gloves. You absolutely need good gloves. Dry them before turning anything on if they get wet. duh.


Making the circuit

Step 0) Adding a cheap resettable breaker:

The very first thing you need to do is provide some protection to the rest of your circuit. I do not have access to my own breaker box, because my landlord breaks fire code. To avoid having to email the landlord to reset the breaker, and have a 1-2 day delay any time that happens, I opted to use the 10 amp breaker from a blow dryer in my parts boxes that had already been gutted for the diodes and nichrome heating element. There is no need to open the casing - it is easy enough to simply cut the cable and it can act as the power cable too. Mine was already destroyed, so you may notice that mine has no housing and is coupled in.

Step 1) Building the Waterload:

You could probably get away with a lot smaller dimensions, maybe even just some parallel wires sealed in a bottle, but I used the dimensions I chose to give myself more room for error when adding electrolyte to calibrate it in. I don't want to burn out an x-ray head just because something minor happens. Shipping costs suck on replacement x-ray heads!

Under most applied conditions, an electrolyte solution acts like a large resistor and can be treated as a resistor in circuit design. The way I will describe my waterload, there will be no significant voltage drop, but it will ballast current when connected in series with a load - not exactly how we would normally expect a big resistor to behave, right? You will likely find that it is not easy to get a waterload with specifications similar to mine to even yield a voltage drop.

Occasionally, I stick weld using a larger and different water load connected to a 240v 50a rail, that waterload DOES act as expected, with a voltage drop - I use a different set of dimensions, materials, and concentration of electrolyte for that.


Let's begin with the bucket. You will want to choose two locations for the terminals, above the future fill line. The electrodes will hang from the location of the terminals, down from the rim of the bucket. The approximate fill line, and the distance between your electrodes will matter, but the length of the electrodes, and the height and overall volume of the solution will be secondary. The surface area of the electrodes matters some, but as long as they aren't an extremity, the water load will likely be possible to calibrate to spec. I'll list my bucket's approximate dimensions below:


<----------------- Bucket, Electrode, and fill line dimensions here --------------------->


To make my terminals, I used cheap zinc coated steel machine screws, with a few nuts and flange/flat washers to lock everything down in the right spot, and act as spacers to hold the electrodes at the flattened tip. You will want to mark and drill the bucket with a hole diameter just large enough to feed the bolts through the hole for each terminal. You can use a small amount of waterproof adhesive on the washers mating to the plastic of the bucket, to seal the terminal, but I chose to simply cinch down the washers.

My terminals won't last forever(due to galvanization), but I might get a few years out of this waterload if lucky.

-Flatten your aluminum tubing to length, and then simply bend off excess until it snaps apart. it also makes an easy way to trim the length down if you make it too long. This is much easier with a pair of "vice-grips' and a vice(or another pair of vice-grips).

-Smack a pointed object, such as a nail or punch tool, into the flattened part of the tubing to mark the hole you will drill. Drill your hole, to the same diameter as the hole you made for the terminals in the bucket.

-Bolt your aluminum tubing into the terminal locations on the bucket, and add some wire. It needs to be tight enough to conduct electricity well, or it will introduce inconsistent variables to your circuit.

-If you used adhesive and it has cured, you can now fill your bucket to a fill line that corresponds to the total length of electrode that approximately matches mine. It does not have to be a precise length match with mine, but within 1/2 inch or less would be prudent.

-At this point, it would be prudent to dissolve several tablespoons/grams of tablesalt or baking soda into a glass of hot water. You want it to be dissolved when you test current spec, and predissolving will save a lot of time. Consistency is key here, because a solution with undissolved electrolyte will be less conductive than when it is further dissolved.

Since your bucket has a large volume in relation to the glass of hot salt/baking soda water, you need not cool it to room temperature before adding.

-Time to clean up your area, make sure nothing outside the bucket has any moisture, especially yourself and the floor, and put on your gloves.

Make sure your bucket is difficult to spill, but breathes if under pressure, as it will produce Hydrogen and Oxygen gas if you use saltwater as the electrolyte. Be safe accordingly. This is mostly only relevant when you are calibrating it in. I simply left the lid off during calibration, and did it in an area with ventilation and no open flame. I suspect that not enough hydrogen or oxygen is produced per time to actually pose a serious danger unless it collects on your ceiling, or the circuit is left running for a long time. Once calibrated, you are only running it for a small fraction of a second at a time, to operate the high voltage rail to the x-ray head. I test a lot of different hardware with it(safely from another area of the building), and might need to vent mine once every month.

*Warning, your breaker likely will not throw if you are electrocuted in series with the waterload. be careful not to touch it while the circuit is closed.

-From here, you will want to thoroughly stir in 1-2 teaspoons of your concentrated solution, wait about 3-5 minutes for it to diffuse into the rest of the dilute(bucket) solution, and then test for current potential. One terminal on the waterload simply goes to the scavenged breaker/cable. I prefer to clip my multimeter in before i switch the circuit on, to minimize risk of touching something wet while the circuit is closed. Once you get a reading, obviously, power off and unplug your danger-bucket. If you get wet at any point, trip the breaker and dry everything not inside the bucket thoroughly before continuing!

*repeat this step, waiting 5 minutes between repeats, until your circuit allows enough current flow for the primary coil of the high voltage transformer in your x-ray head, as per manufacturer specs, but not more than max. Do a bit of simple resistance-voltage-current math for your figuring on the dimmer resistor you will later introduce. It is better to estimate low and add a slight amount of electrolyte later than to over-do it and have to remove solution and redilute.

I calibrated my particular water-load to about 7 1/2 amps, and use my finished driver circuit on a GE-100 head.

Step 2) Calibrate your dials:

This step is fairly simple.

H.V. resistor:

If you wire up one of the two dimmers to the waterload(and remove the actual plastic dial to expose the shaft of the potentiometer), you can wire in your multimeter, power on your circuit, and adjust it until target voltage drop occurs. Then immediately shut off power to the circuit.

Now is a good time to use an adhesive to lock the dial adjustment into place, because you will probably bump it later and screw everything up if you don't. I used a hot glue gun.

FIlament resistor:

It is very very important not to start with this dial too high. There is an artifact of the inner wiring of the x-ray head that will blow relays and even esd nearby computers if you start with the filament transformer being powered with too high of voltage. I would begin with maybe 20 volts to the filament transformer, and leave it there until everything else is completed.

*The filament of the tube is self-ballasting, while the high voltage rail is not. You'll simply tie the filament dial in at the breaker at the same location as the waterload.

Step 3) Relays

Wire your high voltage transformer dial into its corresponding relay

WIre your fIlament dial into its corresponding relay

Step 4) Tie in the X-Ray head

Look at reference schematics of your x-ray head, because polarity matters even though we are dealing with single phase AC current. The reason why is that the high voltage transformer windings and the filament transformer windings are probably connected somewhere inside the head, and for good reason. If you cant find schematics, probe via multimeter set to resistance to extrapolate the ordering. If the head is a GE or Gendex, it'll most likely follow at least the same general internal wiring(but input specs may be different on different models, obviously) as illustrated in schematics on that same GE1000 page on nucwiki mentioned earlier. I have wired up this part wrong and as long as the waterload is there, and I expose for less than 1/30 second, The head tends to be at least forgiving enough not to burn out(secondary hv coils are very easy to short out) if i fix the problem immediately.

Step 5) Program a timer or microcontroller or something to time Exposure

I used a 5$ Arduino Uno clone that wasn't occupied. You could use something cheaper like a 50 cent AT85(with a preloaded usb driver and bootloader will already have a simple clock circuit, and it only takes like 5 minutes to add the corresponding library to Arduino IDE) if you wanted. I really am embarrassed that I still use Arduino IDE for simple projects instead of hard coding in C-based. Sorry. I'm lazy and it's easier this way... It simply waits some seconds, warms up the filament for 2.5 seconds, and then fires the HV transformer at a very short interval - then turns off power to both relays.

Sample code I used for my Arduino script( I really should do like a pushbutton or IR trigger, but instead I just have it expose some 12 seconds after booting. I walk to the other room, shielded, and wait for my lights to flicker, then walk back to my work station):

<---------------------sample arduino script here-------------------------->


Obviously, this is a job for a simpler circuit than an SoC, but I'm lazy, and it is much cheaper and faster to use an Arduino, plus it's easy t adjust warm up and exposure time...

Step 6) Loose ends

Give the Arduino it's own power via a usb charger tied in behind the blow-dryer breaker. add a power switch that you can switch without touching wiring.

Wire in the i/o pins your code addresses to the relays. If your relays arent rated for the output your io pins can provide, youll need to make a simple amplifier via transistors. Most Solid State relays are more than happy with the 5.5v coming from an Arduino Uno i/o pin.

Step 7) Test your head and do final adjustments

I am going to suggest keeping your filament transformer as low power as will work for your needs. if you warm the filament of most heads for 2.5 seconds, that is plenty of time preceding the interval to the h.v. rail. I would set the exposure time (interval of time for the relay to the h.v. transformer) to maybe 1/30th second to start with and go from there.

-Time to put a camera or x-ray sensor, or etc in front of the head and set to record. A Pringles can lid fits most standardized scintillators exactly. I use them to mount test patterns and sensor holders all the time. Plastic mint gum boxes make really good sensor holders if you pad the difference with a paper towel or wadding.

-A regular phone or web camera will pick up x-ray interference with little signature high contrast black and white single pixel image artifacts. Be mindful that if you did your wiring wrong, you can hypothetically brick a camera or phone from esd off the head, though it hasn't happened to me here. I like to dial everything in before i start putting expensive shit I'm fixing near my head


Run your circuit, giving 5 minutes, at least, for cooling the hv transformer for every 3 shots. You could get away with more, but why risk it, unless you got 300 extra dollars for replacing a burnt out head?

If you don't pick up any x-rays, you can disconnect the filament dial, adjust for an extra 5 volts, reconnect, and try again. You'll be saturating almost any image sensor with x-rays before you reach 35-40 volts. Glue down that potentiometer shaft when you have it dialed in.

***60-70 volts and you'll probably be hard resetting your nearby laptop from esd, and blowing the SSR to the high voltage transformer(which may brick your head). In other words, you are doing something wrong if you aren't making lots of X-Ray band radiation with 35 volts to the filament transformer. Most GE/Gendex models were designed for as much as 70-90 volts to the filament transformer, but I don't know what to say - I never exceed maybe 35 volts in regular use, and 60+ volts to the filament transformer causes serious risk to nearby solid state electronics. It's probably the way i have it wired up.


*Now that you have x-rays, controlling dosage/radiation/exposure in most applications is best done by simply changing the timing for the high voltage rail from the Arduino. Be careful not to use too long an exposure if possible. If you do a long (e.g. 3/10 second) exposure, you should let the head cool for a good several minutes before continuing. If an SSR dies, cut power everything FAST, or you might brick a head! You will know if this happens because you will hear the oil in the x-ray head boiling. This is why I use way over-spec'd SSRs, albeit I do use SSRs for relays out of convenience.

Step 8) Put everything in an enclosure.

Safety shiz. Convenience. Plastic and switches.


There are extras and best practices you can do with circuit design to make this circuit better and safer, and less likely to fail, but I use mine the way I describe, and it is reliable for me. No problems so far, and I use it often.