It can be used with 1-3 GM signals and a coincidence signal simultaneously. It's written in python (object oriented, so easily reusable) and produces a csv file for each GM tube and one for the cosmic rays. It also performs statistical calculations of the timely distributions of GM hits and produces a separate file output with that.
Then you can manipulate your data the way you want in your favourite spreadsheet application. CSV is compatible with most major softwares on the market MS Excel, OpenOffice, Google Spreadsheet, LibreOffice, iWork, Matlab, Mathematica and Maple. The datalogging can be viewed "real time", too. It runs three threads and has event handling. This means you can run it in the background, too, while your Pi is busy doing other tasks. It will easily run on an Raspberry A/A+, too.
For more information, screenshots and download, visit this link.
Since it's console you can easily run it over SSH from your phone/tablet/laptop. Even if you're logging radiation in Eritrea after Bruno Rossi, of course, over the local mobile internet when sitting somewhere else in the world.
The manual for the first prototype can be downloaded here.
High voltage power supply
Arrangement of the tubes
There's an impressive lead array design I found on the internet, that uses a different HV power supply and it has a 5V logic output. You might want to check out that too, that has an USB output to a laptop and a separate mains 9-14V power supply. That is a more concealed design, but I needed more flexibility.
I wanted mobility (as much as this is possible with lead), a demonstration tool and a 3V logic circuit and battery operation, therefore I made a different design. I had 74125 line drivers, those can be used, too, to make the coincidence circuit, not only the ICs mentioned in the CERN article. I prefer the Raspberry Pi for datalogging, mainly because of the affordability, the continuous, low power operation and because it runs Linux, but of course, you can connect your Arduino or laptop, too. This 3V logic will work in all cases.
Oh, just in case you wonder, our drill gave up at that depth in the lead block, so that's why I have the GM tubes sticking out. However, it really is a feature for demonstration. It just lowers our count rate, unfortunately.
Here is a photo of our beauty.
The GM pulse is shortened to reduce the number of false positives. I included the resistors and the 220 pF high voltage capacitor connected to the anode of the SBM20 to achieve this.
I had the SN74LVC125AC line driver in stock. That's suitable to make the coincidence detector from. It can act as a logic gate for the pulse shortening and the nor gate can be constructed from it, too. I wanted separate outputs from the GM tubes as well as the cosmic ray detection, since there is interesting statistics in those pulses.
You can download and install the program from here.
When does the next GM hit happen?
You will find the schematic below for the main board which has the datalogging output. The board which has the LEDs and the buzzer only has 3 555 monostables, to lengthen the impulses so it's viewable by the human eye.
Calculating the dose on the SBM 20
The problem initially is that the datasheet of the SBM20 gives the number which can be used for dose calculations in a legacy unit mR.
Roengten is the measure of ionization in AIR and not in tissue or other material for x rays and gamma rays in the few MeV range. It is the charge produced by ionization divided by the mass of air. In SI units this would be expressed as Coulombs/kg. According to the international conventions 1 Roengten = 2.58 x 10^-4 C/kg (this is the calculation used by the NIST and the EU).
This is an entirely different unit to the dose units (joules/kg) of today. Which are absorbed energy/mass in the first order of approximation so to speak.
So how do you convert? Well, you can not convert in the mathematical sense, contrary to the popular belief.
What can you do?
Now this is the sort of thing people do, but usually without realizing the limitations of this.
Since the Roengten is defined as the ionization produced in air by x rays and gamma rays in the few MeV range (that is luckily our range)international organisations have said that this is equal to 8.77 mGy (1Gy = 1 J/kg) absorbed dose in AIR (1 Sv = 1 J/kg, too, but it's different see below). Now we have a sort of "conversion" from Roengten to Gy for a certain material for a certain type of radiation. This number is 9.6 for human tissue for X-Rays and gamma rays in the few MeV range, but this is in Gy not in Sv!!!
This is the number you can change in the settings.py.
Do you wonder why my display does not say Sievert? Although 1 Sv = 1 J/kg = 1Gy, but Gy does not take into account the biological effect, whereas Sv does. We simply usually don't know what sort of radiation we measure with the GM tube and what the radiation weighing factor of that is. You'll have to know this if you wanted to convert to Sieverts.
However there's another complication if you wanted ANY dose measurements with a Geiger Müller tube. Here it comes.
Sensitivity of the GM tube or THE FLUX TO DOSE "CONVERSION"
This is the feature of the GM tube, this is found in the datasheet and it is not to be confused with the Roengten - Gray conversion. This tells you what the ionizing effect of a certain count rate measured by the GM tube is for a certain type of radiation. This has nothing to do with the R - Gy or Sv business.
The estimation for my detector. The datasheet says that for Ra-226 the ionization measured by the SBM20 is 1 mR/h for 29 counts per second for gamma. For Co-60 the same number is 22 CPS. I used 24 cps/mR/h as an overall estimate based on the fact that only higher energy particles will enter the lead block, and the Co-60 gammas (1.17 MeV and 1.33 MeV) are typically the double of the energy of the Ra-226 gammas (typically 609 keV, but there's a large range of them). However, some lower energies will hit the tubes on the top, too. This is strictly an estimate at this point, it would require further research to estimate this more accurately. To get the full picture of Ra-226 gammas look at the table on p78 in this article. That is 1440 cpm/mR/h.
Anyway, knowing your source and equipment you can change this in settings.py for each tube / signal source therefore achieving a much more accurate dose measurement using this program on the Raspberry Pi.
What are the limitations here? Why does this program display uGy and not uSv?
The limitations are quite substantial, actually. There are two non mathematical conversions involved in here. The one is the R to Gy and the other one is from CPM to R.
The conversion factor you used to convert from Roengten to Gray (or even worse Sievert), ideally has to be for the same type of radiation and the same material as the conversion rate you used for CPM to R. This R to Gy is an experimental conversion for certain radiations and materials, not a conversion similar to from m to mm for instance. So in other words it's not a mathematical conversion.
To sum it up, here are calculations to enlighten the difference between mR/h, uGy/h and uSv/h.
sensitivity is expressed in CPS/mR/h - this is what you get from the GM datasheet
for 30 CPM and for SBM20 with Co-60 gamma = 22 CPS/mR/h (you can't just use this you'll have think what factor you use, you can't just take the average of the sensitivites if more given, either)
Ionization effect only in air (mR/h) = ( CPM/60 ) / sensitivity
Ionization effect = ( 30 / 60 ) / 22 = 0.0227 mR/h
Dose (uGy/h) = ("conversion" factor from mR to uGy) * ionization effect in air
This dose is called the absorbed dose and this does not take any biological effects into account.
for air it would be using the example above
Dose (uGy / h) = 8.77 * 0.0227 = 0.199 uGy/h
Dose (uGy / h) = 9.6 * 0.0227 = 0.218 uGy/h
in Sieverts for gamma for human tissue
Dose (uSv/h) = (radiation weighing factor) * ("conversion" factor from mR to uGy) * ionization effect in air
This is called the equivalent dose and it does take the biological effect of different types of radiation into account.
This is derived from the ionization effect in air not in human tissue... That's why people don't like these conversions from Roengten to Sv, and this is why it was changed on an international level.
Anyway, if you really want to proceed... The radiation weighing factor for gamma is 1.
Dose (uSv / h) = 1 * 9.6 * 0.0227 = 0.218 uSv/h
You got lucky, huh? The uSv/h is the same as the uGy/h for gamma. So what's the fuss about. Part of it is that Roengten is only in air, this is an inherent weakness, but here comes the big bang.
Let's assume we have alpha (of course the GM tube's sensitivity is given in Co-60 gamma equivalent, so using this for alpha is not a wise thing to do, however just for the sake of the example, I carry on.) The radiation weighing factor is 20 not 1, whoooops.
Dose (uSv/h) = 20 * 9.6 * 0.0227 = 4.358 uSv/h and your counter which doesn't know this happily displays 0.218 uSv/h.
Another example with LND 712
Dose (uSv/h) = (radiation weighing factor) * (conversion factor from mR to uGy) * ( (CPM/60) / sensitivity )
Eg. Dose for an alpha source for LND 712 for 30 CPM using Co-60 gamma = 18 CPS/mR/h :
Dose (uSv / h) = 20 * 8.77 * ( ( 30 / 60 ) / 18 )
Whereas dose in uGy / h is only 8.77 * ( ( 30 / 60 ) / 18 ) note there's a 20 TIMES DIFFERENCE!!!!
To calculate the effective dose, or committed dose you'd have to take the tissue weighing factor, the absorption factor of the certain tissue or location into account. See here.
To measure the dose properly you'd have to use a calorimeter which measures the energy of radiation. In contrast to the flux of the particles what the GM tube measures. The capability of GM tubes in measuring dose are very limited.
Tests and limitations
Theoretically the delay time in the EM cascade in the lead block is around 100 ps (10^-10 s), although it can vary based on the locations and the extent of the cascade. This is the time frame in which the GM tubes are triggered one after the other according to my calculations based on the signal propagating times in the lead block. However, this sort of time is well beyond our signal detection electronics response time (10^-6 s), so we can assume that the signals appear at the same time on the us timescale.
The number of coincidences = false detections (assuming a 30 CPM background for both tubes) is:
Symptom: there's no or very little GM signal.
Solution: The usual problem is that the voltage is too low on the GM tubes. Increase the voltage by turning the white screw in the potentiometer anti-clockwise towards the 1 mark. If this doesn't help, change the batteries.
Symptom: there is too many cosmic ray detections and the detection happens simultaneously with the detection on one of the GM tubes. This phenomena has been extensively tested, under normal operation this should not happen at all.
However, if it still happens with this current design, the cause is usually too high voltage on the GM tubes. Decrease the voltage by turning the white screw in the potentiometer clockwise towards the 3 mark.
Symptom: One of the GM tubes is firing constantly or in close succession without any source present.
Usually this is a connection problem on the HV terminal or on the GND terminal, so check the connections.
If not then the cause is usually too high voltage on the GM tube. Decrease the voltage by turning the white screw in the potentiometer clockwise towards the 3 mark.