It's been over 2 years since the last project update, but recently I've revisited the design and decided to work on version 2, which should have significant improvements over the first iteration. Again, the purpose of this project is more of an exercise in old-school electrical engineering rather than trying to optimize for the usual metrics such as cost, performance, or simplicity.
I was happily surprised with the performance of version 1 given that it worked on my first attempt. However there are still a few things I wanted to improve upon:
- The power source. CR2032 cells are easy enough to come by but the battery life was sub-optimal, and I ended up using a 9V battery for higher efficiency. AA batteries are much more common and store significantly more energy then the latter two, so I needed to re-design the circuit to work from a low voltage source.
- Click volume was very quiet, I'd like the new design to make clicks that are more pronounced.
- Version 1 relies on Vbe of the bipolar transistor as the reference, and this causes wild fluctuations in output voltage based on temperature. In extremely cold environments this could cause arcing in the tube, so the new design should have tighter regulation.
Design Overview
Powering the circuit from a AA battery makes the design a little more challenging than the previous one. I decided to go with the same oscillator architecture from the previous design, since it worked well, and is able to operate down to 0.7 volts. After getting into the LTspice simulations for only a short time, I realized that a system supply would be necessary in order to achieve the efficiency range I was looking for, especially since the HV boost FET necessitates a minimum drive voltage of around 3.5V. A low voltage FET is used for the boost section of the circuit, so ensure startup from sub-volt supplies. The main oscillator is supplied from this system rail, forming a positive feedback loop. This enables the circuit to run on supplies down to 250mV once bootstrapped. While this feature wasn't part of the design requirements, it's a real plus when operating batteries below their recommended temperature range. The system voltage is regulated via a feedback loop which sends a pulse of current through the boost inductor whenever the supply voltage drops too low. There was a strong tendency for my first attempts of this circuit to soft-drive the boost FET, which resulted in increased switching losses. Eventually I converged on a configuration that's able to make sharp and consistent pulses, and this concept worked well enough to use in the HV feedback loop also.
The high voltage supply is driven by the same oscillator as the system voltage regulator, and uses the same 1:100 coupled inductor as the previous design. After re-evaluating diode options, I was able to find an ultrafast diode with a reverse recovery time under 25nS. Finding a fast rectifier is crucial for this stage, since this accounts for a large portion of the switching losses on the high voltage side. I found that additional voltage doubler stages had only a minute effect on overall efficiency, so I stuck with one stage.
For pulse detection, I'm sticking with cathode-side sensing because it avoids the high voltage capacitors and resistors necessary for anode side sensing. Noise didn't seem to be an issue with the previous version, likely because the connections were fairly short. Pulses from the Geiger tube are fed into 3 bipolar transistors, one of which triggers a one-shot timer for flashing an LED. The other two trigger the piezo driver for audible clicks. I spent several days stuck at dead ends until I arrived at the current piezo driver iteration due to the numerous design constraints I had. All my first ideas revolved around feeding the pulse from the geiger tube to a FET-inductor flyback generator that would create the click. The main problem with this approach is with the volume control. I couldn't find a feasible way of achieving significant click volume range that also worked reliably within typical component tolerances. More specifically, small changes in the FET gate switchoff slew rate created huge variations in output volume. This would only be exacerbated by temperature variations and battery voltage. Eventually, I came up with a modified joule-thief booster that ramps up the voltage across the piezo element over several switching cycles, then rapidly discharges. This way, volume level is acheived by adjusting the voltage trip level that resets the monostable latch. If the piezo driver isn't able to boost the voltage to the required level within ~600uS, there is a timeout circuit that terminates the voltage booster. The booster is suprisingly efficient when a high current bipolar transistor is used, and this topology may be viable for generating the high voltage or bootstrap supplies in future revisions.
A significant portion of the losses in the previous design came from FET switching losses. Version 2 improves this via implementation of proper push-pull gate drivers that are optimized for near zero shootthru, bringing switchoff to ~25nS. The major difficulty with push-pull drivers is in the minimization of shootthru current. This is when both the high and low side transistors are simultaneously conducting, which produces a significant increase in power consumption. I overcame this via addition of two base bias diodes, which only activate the high or low side transistors when either is within ~0.6V of the positive rail, ensuring the opposing transistor is fully off at this point.
Three 220uF tantalum capacitor are needed for the circuit to bootstrap when powered from a high impedance source. Without these, the input voltage rail will sag below the circuit's minimum starting voltage. Simulations indicate that it should be able to start from a 0.8V source with an internal resistance of 1 ohm. Electrolytic capacitors would have been much cheaper, but have electrolyte drying issues in the long term. Tantalum polymer capacitors are the ideal choice because of their small size, and have superior ESR when compared to solid tantalum variants.
By far the most time consuming part of the design process was temperature compensation. Luckily LTspice is able to model the circuit's behavior at different temperatures, which made this process much easier. The P-N junctions of diodes and transistors typically have a forward voltage temp coefficient of -2mV per degree. Both the system and high voltage supplies rely on the base-emitter voltage drop of a transistor as a voltage reference. Without compensation, the regulated output will drift by +/- 18% over a -40-65 degree temperature swing, which is too loose for this application. The most common method of temperature compensation is via a matched transistor pair arranged as a current mirror. While this should result in nearly perfect compensation, I found that only one compensation stage was insufficient. Monitoring the change in the high voltage supply over temperature, I measured the temperature coefficient to be closer to 3mV per degree. I believe this is due to the fact that the regulation loop is comprised of multiple cascaded PN junctions, but I'm not entirely sure. Properly compensating each cascaded PN junction would double the number of transistors, and I didn't want to increase the design complexity this much. I decided to accomplish this by use of NTC thermistors, but there are a few caveats. NTC thermistors change resistance exponentially with temperature, versus the (almost) linear response of PN junctions. This can be linearized to a certain extent with a carefully chosen resistor network, so I wrote some quick and dirty C++ that finds the optimal resistor values for this network. You can try it for yourself here. To use it, you will have to experimentally determine the effective lower resistance necessary at 3 temperature points. I managed to find a network combination that kept the output voltage deviation within a few percent. While not absolutely necessary, I also included compensation for the piezo driver circuit, and the main oscillator. Compensating the oscillator means I can get away with less peak current headroom for the voltage boosters so they don't saturate. The piezo boost driver is less of a concern, since it begins to switches current off when the inductor starts to enter saturation.
Optimizing the current consumption of the entire design was an exhaustive task, but I was able to get it down to ~10mA at 1.2V. This should equate to >200 hours of operation from a AA alkaline cell, and is much better than I was initially going for.
If you're interested in making your own modifications, you can download the LTspice simulation, or a PDF of the schematic. I will probably have to tweak the values of a few passives after testing, but the current values should be pretty close.
Component Selection
Nearly all the specific parts in this design are rated for automotive use. It's definitely overkill for a portable device, but I wanted to design something that would still work in 20 years. Automotive components also have longer lifecycles, and most have several non-automotive alternates that are drop-in replacements.
I'm going with some 1414 size LEDs from Osram which will be massively underdriven for efficiency reasons. I like the VJLPL1 series because of the unique color options available and size.
Most passives are 0603 size because they're easier to place than 0402s. For complex designs like this, it also makes routing easier since traces can be routed underneath on the same layer. Since long term reliability is a factor I went with all sulfur-resistant resistors, except for the high voltage resistors which I was unable to find. All capacitors are C0G/NP0 dielectric which don't have DC bias or temperature coefficients, and don't suffer from aging like other dielectrics. The bulk capacitance for the system supply is a 22uF X7R capacitor, since a C0G/NP0 with this capacitance is massively impractical. Tantalum are also not the best choice due to their higher ESR. I'm not too worried about aging in this case because the exact value of 22uF isn't critical.
All bipolars are the ubuquitous 2N3904/2N3906, although others would work just fine. Substituting alternatves would likely merit a recalculation of temperature compensation networks though. The main switching transistor for the piezo boost circuit is a ZXTN4240 can handle more current.
The system supply boost FET was chosen to have a particularly low Vgs so that the circuit is able to boostrap from low voltages. For the high voltage boost, I went with a 100V FET which I believe is the sweet spot for on resistance and Vds for optimal efficiency. The threshold voltage is less critical for this one, but should be as low as possible so the system voltage booster doesn't have to work too hard.
Construction
Since I still want this geiger counter to be portable, it will be housed in a custom 3D printed enclosure. This model has some pretty fine details so I will be going with the MJF process for the durability and resolution. From what I've read it's also water resistant, but I will have to do some testing once I get the models.
Despite the schematic being so chaotic, PCB layout ended up not being too difficult. Most of my time was spent grouping related components together. With the exception of the gate driver FETs, I don't think component placement will matter all that much. To keep the overall dimensions small, I went with a 4 layer PCB, with the inner layers being the system supply and ground. The battery negative terminal is aligned with the volume potentiometer/power switch to make the best use of space. I left several mm of space on either side of the PCB so it can slide into slots in the internal cavity of the main housing. The geiger tube itself will be inserted into a hollowed out recess in the main housing, and the terminals will be connected via soldered jumper wires.
In the next project entry I'll go into more detail about the 3D printed parts. The models are about 75% complete, I just have to verify the fitment and make some minor adjustments.
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.