Arduino Geiger Muller Counter
I've always wanted to have my very own Geiger-Müller counter to test radioactive samples, but the price of profesional grade equipment is too high to justify the cost for a "toy". Instead, I decided to build it myself using readily available consumer parts.
The device only employs four parts: the Geiger-Müller tube driver circuit, the tube itself, the Arduino microcontroller, and a portable 5V USB battery. It features a data logging function.
Geiger-Müller tubes work by applying a high voltage (between 300-600 Volts usually) between to electrodes on opposite ends of a sealed tube filled with an inert gas. When radiation collides with the tube, it briefly ionises the gas, creating a pulse-current between the electrodes.
The driver circuit applies this high voltage and senses these pulses, converting them into signals. The circuit that I used is a readily available kit manufactured by RH Electronics. It can accomodate various types of GM tubes, and is able to output pulses conditioned for microcontrollers like an Arduino. It also features a built in buzzer attached to the output.
The tube employed is an SBM-20, produced in mass in the USSR during the Cold War. They are the quintesencial DIY GM counter tube, and are very robust and reliable, with good beta and gamma detection; Useless for alpha detection however. They are readily available online and are not expensive.
The tests I've carried out have shown an average background of 23 CPM, which seems to correlate with the measurements shared by other users online. I haven't had the chance to test it with a highly source up to this date. The only radioactive sample that I've tried with it is a thoriated tungsten filament used for TIG welding. It has a very low Thorium content of only 2%, and it itself decays via alpha emission, so what the GM tube records is the beta emissions from its decay products, mainly Radon.
The Arduino code records the pulses by using interrupts. These pulses are counted for periods of one minute and then written onto a csv file that allows them to be post processed.