Pentru limba romana, click aici
uRADMonitor is a network connected monitoring station, focused on continuous Environmental Radiation Surveillance. This capability is delivered by a digital dosimeter constructed around the highly sensitive Geiger Muller tube SBM-19. Additional sensors gather real time data on temperature , humidity and sky luminosity. Starting with November, 2013, this device also measures air quality (dust sensor and combustible gases sensor) and detects rain.

Teaser / Demo project video
Device #1, Timisoara, Romania
[RealTime] Radiation data
[RealTime] Temperature data
[RealTime] Relative Humidity data
[RealTime] Pressure data
[RealTime] Sky luminosity data
[RealTime] Rain data
[RealTime] Combustible gases in air
[RealTime] Dust in air
[RealTime] Detector parameters
Device #2, Carei, Romania
[RealTime] Radiation data
[RealTime] Internal Temperature data
[RealTime] Detector parameters
How uRADMonitor works
Radiation dose measurement considerations
2012-10-29, uRADMonitor in local press
2012-11-30, uRADMonitor on TV!
2012-12-07, Featured on Hackaday
2012-12-08, First snow
2013-01-31, Major atypical variations
2013-02-16, Investigating the atypical variations
2013-11-02, A major upgrade: new sensors added

View Larger Map
Location of uRadMonitor #1

Construction details and a few words on Geiger Tube Theory and radiation detection can be found in my Geiger Counter article, V3. I consider it a must read for any Geiger counter enthusiast, willing to start the long road of building this device.

This project requires knowledge of various technical fields: general electronics (basic circuits, soldering), microcontroller hardware (timers, counters, interrupts, firmware development), C programming (for the microcontroller), basic atomic physics and Geiger theory, signal processing (for optimal amplification of pulses and detection on rising edge), Ethernet protocols (ARP, ICMP, TCP/IP), SQL databases (for storing data on server side) and PHP programming (for developing the data post-processing scripts: charts, export, etc). But the tool is well worth the effort since it works as a data gathering/logger tool, allowing research in the field of radiation such as identifying connections between various parameters (radiation in the first minutes of the falling rain, etc). It is also an automated guardian able to identify the slightest changes in normal radiation levels, 24/7.

uRADMonitor demo video in English, "Invisible Enemy - Radiation":

There is also a Romanian version of the film, here.

Graphs built in real time with uRADMonitor data. Time is GMT+3 (Europe):

Location 1: Timisoara, Romania

Atypical data has been logged here Variatiile atipice sunt centralizate aici

Background radiation data

*** Note: The dose in uSv/h is only an estimation extrapolated from the CPM readings, based on geiger tube characteristics (SBM-19).

Air Temperature data

Air Humidity data

Air barometric pressure

Sky luminosity

Rain detection (work in progress)

Air quality: combustible gases (work in progress)

Air quality: dust particles (work in progress)

Detector parameters

Location 2: Carei, Romania

Background radiation data

*** Note: The dose in uSv/h is only an estimation extrapolated from the CPM readings using geiger tube characteristics (SI-29BG).

Internal Temperature data

Detector parameters

How uRADMonitor works

Several sensors, including a Geiger counter, are connected to a microcontroller (Atmega168). A network interface chip (enc28j60) provides an Ethernet interface. Data from sensors is collected on a one minute interval and exported online to the server ( Using PHP and SQL, the data is stored and post processed, so users connecting via a webbrowser can access various charts, in real time.

Data access

Currently I provide a simple interface to access the data collected by uRADMonitor #1, working in Timisoara, Romania. For server-side optimization reasons, the data is cached. Every time you access the data, you will receive charts not older than 2 minutes!
The data can be accessed as pre-generated charts, of variable parameters, via a HTTP-GET:

param: usvh|cpm|temp1|temp2|temp3|humi|lumi|pressure|mmhg|rain|gas|dust|vol|duty identifies the data: usvh for radiation in micro sieverts per hour, cpm for radiation in counts per minute, temp1 for temperature sensor #1 (DS1820), temp2 for temperature sensor #2 (DHT-22), humi for humidity sensor (DHT-22), lumi for luminosity sensor, pressure and mmhg for barometric pressure, rain for rain level, gas for combustible gases detected in air, dust for dust particles counted in air, vol for voltage on geiger tube (technical parameters) or duty for geiger tube inverter duty cycle (technical).
interval: the last number of days data to retrieve. The uRadMonitor #1, started gathering data on October 21, 2012
integration: the average interval in hours. For better observations of the natural background radiation level , you should use a value of 4 (hours).
size: small | medium | large | xlarge
gmt: the gmt for the time coordinates, url encoded (default is Europe/Bucharest)

Try the following examples:
Example 1. The Radiation data on the last 3 days (3x24hours) with an integration average of 4 hours (each point in the chart represents the average of 4 hours of sensors data), with a chart size of 1200x800 pixels, and time displayed with GMT corresponding to London, UK.

Example 2. The temperature data on the last day (1x24hours) with an integration average of 1 hour1 (each point in the chart represents the average of 1 hour of sensors data), with a chart size of 400x250 pixels, and time displayed as US Eastern time.

Raw data access, containing a huge collection of sensor data, with a 1minute time resolution is also available on request.

Radiation dose measurement considerations

1. Short Intro
If you've seen the above video, you know that radiation cannot be detected with our senses. This is why we had to develop tools to see what our eyes cannot.
A Geiger detector is a device that can sense the presence of ionizing radiation . It is composed of a sealed tube with two electrodes to which a potential difference is applied. A particle entering the tube will initiate a conductive channel between the two, by ionizing the medium inside. When this happens, we can count the pulse, with a counter connected to the tube. The conductive flow needs to be quenched, so the tube gets back to the initial status and it is ready to start detecting again. A special gas is added inside the tube, ex. halogens, that combine with the newly formed ions to neutralize them.

2. Counts per minute (CPM)
The number of pulses / time, gives us a new unit for describing the radiation, that we call DOSE. The simplest unit of measure is the CPM , meaning counts per minute. Some tubes are more sensitive than others, so two different tubes will show different CPM readings when placed to the same radioactive source. This means that the CPM value is tube dependent.

3. Non linear answer to energy
The Geiger tube's sensitivity can change relative to the incoming radiation's energy. Most tubes show a linear response only above 150keV. This means that a weak source of radiation, of energy below 150keV, will produce false readings on an uncalibrated tube, showing a bigger dose than there actually is. This type of calibration is called "energy response compensation" and it implies placing a thin metal shield, to reduce the intensity of low energy particles. This shield will not interfere with higher energy particles that will pass unaffected, so we can successfully apply the compensation only to the interval of interest, by choosing the shield's geometry (covering the tube partially or completely) or by choosing its thickness.

4. Radiation Energy related issues
A Geiger tube will register a radiation event as an electric pulse, but will be unable to offer any data on the energy of the radiation that caused the event. This complicates any attempt of providing a general (for all energies) formula for transforming cpm to sieverts/h. This is another reason that induces errors in the uSv/h scale provided by uRadMonitor, but at this level we consider them minor.

5. Geometry
When taking radiation measurements, the geometry of the setup including detector and radiation source positions are important. uRADMonitor assumes the device is placed in an uniform field of radiation, produced by natural sources, which in some cases may not be entirely accurate.

6. Can we compute the Equivalent dose from CPMs?
The CPMs uRADMonitor calculates, are an indication of how much energy is ceded by the radiation to the geiger tube. We call this "the absorbed dose", and it is measured in Gy/h.
Assuming a tube is compensated for energy response, then there is a linear correspondence between CPMs and Gy/h. This function is usually presented in the tube's datasheet in regards to various isotopes such as Co-60 or Cs-137.
If the tube is not compensated, it will express a higher sensibility mostly for energies below 150keV. We say that the tube's answer to energy is non-linear:

The context for what we do here is extremely important: remember that uRADMonitor measures background radiation. This background is composed of cosmic radiation, of very high energy, and three main terrestrial components of background gammas that are K-40 1462 keV, Bi-214 1760 keV from the U decay series, and Tl-206 from the Th decay series. Smaller contributions to total background come from Pb-212 239 keV, Bi-209 609 keV, Tl-208 908 keV and Bi-214 1120 keV. The most serious non-linearity of energy response in uncompensated GM tubes occurs below 150 keV - and most of that below 100 keV - so none of the background emissions listed above will be seriously affected, nor will the majority of cosmic rays.
The most seriously affected - and, in many ways, the most interesting - part of the background gamma spectrum that will fall within the GM tube's most non-linear energy response region is skyshine - the radiation scattered by the air above both natural and man-made sources like particle accelerators, reactors, and high-level waste dumps. Most skyshine falls below 500 keV, and most of that below 100 keV.
So this means that CPM to Gray/hr conversions, using manufacturers data based on either Cs-137 or Co-60 will not be too inaccurate to be of use across the natural background gamma spectrum. An integration period of four hours should be used for reliable gamma background assessment.
Moving from Gy/h to Sv/h is possible due to the Radiation weighting factor, which , for gamma radiation (the main constituent of the background radiation), is 1. 1Sv = 1Gy for gamma.
Bottom line is, that for the restricted case of having the uRADMonitor measure only the small doses involved in the background radiation field, and considering the above mentioned isotopes only, we would computed the dose in Sv/h within a reasonable tolerance. uRADMonitor is not intended as a general purpose Dozimeter.


Skyshine Contribution to Gamma Ray Background
Background as a Residual Radioactivity Criterion for Decommissioning
On the Interpretation of the Diurnal Variation of Cosmic Rays
Centronic Geiger Muller tubes

Indications of commercial dosimeters at the same location


I constantly improve this device by adding new sensors or changing the software. Updates can be tracked on the construction page, here.

October 29, 2012: uRADMonitor in local press

uRADMonitor has been featured in several local publications:
1.Ziua de vest:
ziua_de_vest_timisoara_uradmonitor-1-s ziua_de_vest_timisoara_uradmonitor-2-s
2. Tion article on Tion online.
3. Actualitatea: Un timişorean a inventat un sistem de monitorizare a radiaţiilor din oraşul de pe Bega, accesibil online.

November 30, 2012: uRADMonitor on TV!

With uRadMonitor's impact on the local press, I got an invitation to a TV show, where I had the chance to discuss some of the details behind the project. Here is a recording of the transmission on TVR3 (national TV), from 16.11.2012, in Romanian:

December 07, 2012: Featured on Hackaday

I'm proud to announce this Project is my second work to be featured on HackAday.

December 8, 2012: First snow

Despite the abundant snow we've seen here for the last hours, uRADMonitor is still up and running, delivering 24/7 data.

January 31, 2013: Major atypical variations

uRADMonitor has been functioning continuously for the last 3 months. I have created a page to present all major atypical variations, that are not caused by technical issues or malfunctions. The page is available here.

February 16, 2013: Investigating the atypical variations

The recent atypical measurements raised a few questions on the nature of the events: malfunction of the detector (specifically the Geiger Tube due to age) or a legitimate manifestation of a radiation phenomenon.
Some bits of additional info, even if redundant, should share some light on the Geiger detector, as used in the uRADMonitor system. For a start, here is the current circuit diagram:

The R7 10M anode resistor is a quality component, mounted correctly without fingerprints, dust or humidity. Should this resistor malfunction in any way, one result could be avalanche discharges in the Geiger tube. This resistor has been checked recently and it meets the requirements.
Resistor R5 is used in a voltage divider , by the microcontroller to continuously measure the voltage across the Geiger tube, using one of its ADC (analog to digital) ports. In just a few words, for 400V set on the tube, the voltage divider will return 3.96V ( 400V x 47/(4700+47) ). The micro-controller is set to use a relative voltage of 5V (Vref). The ADC port that measures the tube voltage, has a resolution of 10bits, so for a maximum of 5V on PC3/ADC3, the software would read the max value of 2^10 = 1024. For 4V we would get the proportional value. By doing so, the measurement of the anode voltage is extremely precise.
Should the voltage on tube be lower than the preset threshold (400V), the duty cycle factor of the inverter's PWM is increased, in small steps, until we reach the target voltage (in a given tolerance, initially set to 5V and now changed to 2V). If the voltage on the tube is too high, we do the opposite and decrease the duty factor. In a few words, this is a known regularization mechanism that works well, fact confirmed by the logs, showing several months of constant voltage tube values.
Some time ago, there was an issue with R5: After some use, it "burned" and got interrupted. As a result, the voltage measurement could no longer be done, and the software saw the voltage on tube as being 0. As a result, the duty cycle began to rise, resulting in uncontrolled high voltage generation, way above the tube's safety limits. Luckily, this high voltage also resulted in microcontroller temporarily failure, and so the PWM generation stopped . This in turn, also stopped the dangerous voltage from being applied to the tube (except for the first few miliseconds). R5 has been replaced with a better quality resistor.
I was recommended the following useful resources:
1. An investigation into the causes of short lifetimes of geiger-muller tubes used in aircraft oil gauging systems
2. Test Procedure for Geiger-Mueller Radiation Detectors Mirror: Test Procedure for Geiger-Mueller Radiation Detectors MRNI-501D0
3. Geiger Mueller Counting
This valuable resources are a must-read, proving their utility especially for understanding failure causes that can result in avalanche discharges and erroneous readings . Because of the recent atypical radiation measurements recorded by uRADMonitor, I need to evaluate every possibility including a malfunction of the tube.
Test Procedure for Geiger-Mueller Radiation Detectors (2), proposes a 15% slope as the cut off between good and bad tubes: "In general, the value of the slope must be less than 15 % to consider that the detector is in good conditions." This seems to be a very large figure when you think of really good new GM tubes having plateau slopes of less than 3%.
I ran a few measurements with the current setup. SBM-19's operation interval is 350-475V. For my particular tube, I got unsatisfactory readings for 350V, but good performance in the 375-450V interval, despite its age.
The measurements has been performed during several hours, to acquire sufficient data for computing average values.
Voltage on tube / CPM (with natural background radiation)
349.33 / 65.88 , 375.64 / 78.62 , 399.65 / 79.98 , 424.71 / 80.18 , 449.51 / 79.68
Complete measurement details in attached PDF document: sbm_19
To test the tube's performance indicator as presented in "Test Procedure for Geiger-Mueller Radiation Detectors", I set N1 = 78.62 , V1 = 375.64V , N2 = 79.68 and V2 = 449.51V . For P = 100 * ((N2 - N1)/(V2-V1)) * (100 / ( (N1+N2) / 2)) we get: 1.81060853% a lot lower than the 15% limit proposed in the paper. The device has been set to 375V (in software), as compared to 400V used from October 2012 until now.

November 02, 2013: A major upgrade: new sensors added

After three days of continuous work, I managed to rebuild the entire device. New PCBs, new sensors, and a new software to collect even more data while doing it better. The technical details are available on the construction page, here.
uradmonitor_online_geiger_counter_1 uradmonitor_online_geiger_counter_1 uradmonitor_online_geiger_counter_1
uradmonitor_online_geiger_counter_1 uradmonitor_online_geiger_counter_1 uradmonitor_online_geiger_counter_1
Thanks to these changes, new sensor data is available, for air quality and for detecting rain. The plan for the latter is to use it to correlate the data with the humidity and pressure readings, in a future planned attempt to predict rain. See the real time data charts above.

Pentru limba romana, click aici.

Related Post