Needing more than a spark test?

I find that 10 bucks gets a set of 1000 lines/mm diffraction gratings (eBay - and I bought it). One free iPhone app later, some plastic tape to make a slit, and you are good to go. (Now looking for Android version).

Maybe not quite what we want. The gadget is excellent at chemical concentration photometry. Qualitatively OK at demonstrating the spectra of fluorescent lights at Home Depot. Maybe it can ultimately make excellent spectrograms (not seen yet), but the one weak point is that for our needs is it requires an incoming light with either absorption spectrum lines or ionization lines from the test material.

I don't know how that is contrived, other than by something expensive and complicated and involves vacuums. Maybe a carbon arc against the material will have either direct plasma excitation lines, or absorption lines, or both, where one blinds the other.

XRF is at least point & shoot non-destructive!
 
I made a visible-light spectrometer using one of the ebay diffraction gratings and a webcam. I initially bought one of the Public Lab kits but needed a more stable optical setup, so I re-used the webcam and slit, added a "real" diffraction grating (the kit includes a blank DVD that you split apart to make your own grating--pretty funky). I used wood blocks to mount the grating and webcam and milled out pockets on the bottoms and glued super-magnets in so I could move them around to optimize the optics. The base of the spectrometer is a steel faceplate from a defunct rack-mount power supply, and the case was made from black poster board (the kind with the foam core). Here's a photo of it:

Interior.JPG

I didn't like the Public Lab S/W approach so I wrote my own data-acquisition and plotting package using SciPi and a computer vision module (also written for Python). Below is a spectrum of a CFL lamp obtained with my home-brew H/W and S/W:

CFL_spectrum.png
The vertical scale is in arbitrary units, basically the pixel brightness averaged over multiple video frames to reduce noise. I'm currently working on a UV fluorescence attachment for the spectrometer, using an array of 3 watt 360nm UV LEDs I picked up from ebay. BTW making this thing eye-safe is a big part of the design! I also got a webcam better suited for spectrometry use -- it has higher resolution and no IR filter (it is sold as a "night vision" webcam). It came as a PCB so I had to make a mount for it, used my mill and lathe for that. The base of the mount also has a magnet attached to it so I can easily move it around as needed.
 
To give credit where credit is due, I used code I found here as a starting point for my spectrometer S/W. It had some significant data management limitations because it acquired entire images from the webcam before performing the averaging on just a few lines from each image -- so it used lots of memory. My variation supports averaging over an arbitrarily-large number of video frames. 2 frames? 50 frames? 1000 frames? No problem, other than the time needed to acquire them. However, the original code was key to finding the computer vision package that made it pretty straightforward to grab images from a webcam. Figuring out the vectorized array processing part of SciPy was interesting but definitely worth it -- using that capability reduces execution time quite a bit.

If anyone here is interested in the program code just let me know. I view it as a (mostly) derivative work so can't see keeping it to myself if someone else might find it useful.
 
Looking through the postings, I can see we have all been working through this thing, and some of us learning this stuff from scratch. Heavyweight contributions are from @RJSakowski in post #27, and @hman in post #59. We know that @pontiac428 knows a whole lot about it, but is not saying much just yet, which I take to be an indication we are still all making sense. @GrayTech is lurking, and of course all the major content from @rwm and @homebrewed . Software skills and the exploitation of the same from others seems to be something he just has.

I am clearer about what I want to try. There will be some bench messing about with ..

1) A PMT with one or more scintillators. Powers supplies, Signals measure, noise, etc.

2) A Si(PM) with at least one bought-in scintillator. Similar measures.

3) A side experiment to find out if an acrylic "light pipe" can be made to deliver down onto a Si(PM). Can somebody please turn up an acryllic taper, cut off and polish the ends? It needs one end about 3 mm diameter, and the other end something to cover the size of a scintillator crystal - say about 15mm to 19mm diameter, with a taper half-angle about 10°. Can such be 3D printed? shine a laser or something up it. I don't have the best recipe yet, but the 10° is small enough for most entry angles to exceed the 42° total internal reflection, and make the whole thing about 40mm or around 1.5" long.

4) A possible offshoot where somebody tries mixing up something into a hot melt blob of acrylic, to find out if it scintillates.

5) If (4) works, then how on earth to cast a bit of that into a light pipe - or should we just make a disk melted onto the end of the pipe, or don't bother, and push it together with coupling oil and tape it up. Maybe use a drop of model airplane glue, whatever.

6) Follow the route suggested @RJSakowski using a computer-controlled gated pulse peak grabber. This is in essence the same as the monoflop timeout method, using the compute to control the grab, the duration, the reset and wait for another, and the comparator to exclude sillies. (Duh - why is "comparator" not acceptable to the spell-check) ?

7) Plunder and use as much of the PyMCA software as we can. That goes for Thermino, and all other XRF-related code.

8) I had thought that Python, being an interpreted language, would be a significant overhead. I understand it has "semi compiled" speed-up features in that after the first pass, it need not re-interpret every line.
I thought that Java, with the latest version of Pi4J back end, which gives fast access to the GPIO connections, SPI, I2C, and similar stuff related to working external ICs might be needed.

Of course, getting at GPIO directly has been done with C and C++ programs, but by far the majority of projects out there, large or small, have used Python. So for now, I roll with Python. I have to get used to the darn indent being significant.

In all of the above, I am looking to figure out the lowest cost, yet functional gadget. I might end up with a first try that is significantly more expensive, but it has to be capable of showing us how we can lower costs.

e.g. One smoke detector instead of 6 or 8. More if needed
One photodiode, helped by an acrylic light-pipe. More/bigger area only if needed.
One scintillator, non-hygroscopic, thin, with sufficient area to make best use of the Am241 radiation.
One small computer - a £35 Raspberry Pi - perhaps with link to a regular laptop (notebook?) computer.
One external circuit, possibly mounted on to of the P-4 in the way most school project interfaces do.

Have we got this sort of right - so far? I am happy to have any suggestions at all, and even go after it very differently if it is explained why that would be better
 
In reading the Elettronica Open Source page for "Signal conditioning techniques for Gamma Spectrometry", the one which explains all about pulse stretching, recognition, etc. we notice that LTSpiceIV was used for simulation.

The circuit partly models a PMT, and has differences to the MCA pulse conditioner we simulated.

Pulse ringing is blamed on the anti-aliasing filter of the sound card. Hmm..
It is a great article.

I cannot help thinking that it applies a very sophisticated, knowledgeable, clever application of software to recover information from a pulse that was needlessly messed up in the analogue circuits taking the pulse from the PMT in the first place. We shall see when I get to measure real pulses, hopefully soon. Still no PMT arrived yet.
 
I found a publication that uses an analog peak-hold circuit here. There also is some useful discussion regarding the pulse shaping, filtering etc that might be a starting point for a home-brew XRF. The A/D is 8 bits -- but that choice probably was dictated by the specific job they wanted their device to perform (looking for high energy gammas to monitor radioactives).
 
Looking forward to this. Any update?
Robert
Hi Rob
I am waiting on the PMT tube ordered. I have yet to figure out which Si(PM) will suit, and how we do "light pipe".
Along with both comes the question of scintillator material/assemblies. My first scintillator purchase attempt stumbled on temporary COVID-19 related delays.

A whole lot of this attempt is hijacked (by me) from the work of others, but the final "down at the nuts" practical work is a learning thing that has to fit in with humdrum stuff - like doing the accounts and taxes. Also less humdrum stuff like setting out the stakes and profiles for the outhouse/shop/man-cave to be. When I have actual hardware - I will not be able to resist getting up something to have a play with it.

I sometimes wonder if it is safe to have the eight Am241 sources in the same bag as the thorium mantles. I think I will separate them. I read that this sort of stuff is capable of "breeding". [Ref: David Hahn - Radioactive Boy-Scout]

In tipping out the contents of an old filing cabinet in the garage, all adding to my pile of stuff to be dumped when the household recycle/disposal facility reopens, I find THESE..

PMT-Books2.jpg PMT-Books1.jpg

At least 20 years old, the information inside is the kind of stuff that made these probably quite expensive technical texts. The books belonged to one R.Harris, from the days of making covert night-vision cameras (in my previous life)! The stuff inside seems not very different to the modern tubes. I guess the pinnacle of electron tube technology was about then.

So it reveals all about dark current, shot noise, thermionic noise, signal-to-noise ratio.
All kinds of amplifier and processing circuits are there.
We discover what is scintillator "afterpulse", and "gated scintillator" circuits.
They even deal with detecting positrons!

I was looking at some build options. I used a couple of Raspberry Pi(s) to hold the book open before I resorted to the 1-2-3 block. the one with the honking great fan heatsink and GPIO development breakout is a Pi-4B that I experiment with. That is where the A/D conversions etc. will be interfaced to the computer

It amounts to a 2GHz ARM computer with twin HDMI graphics, audio, WiFi, Bluetooth, 4GB DRAM, USB-3 and USB-2 and Gigabit Ethernet. Overkill it is.

The other Pi is a Model3 B+ Running RiscOS. In that OS, even as 1.4GHz thing, it is blindingly fast!
The same software can run on a ten buck$ little Raspberry Pi Zero..

Raspberry-Pi-Zero-FL.jpg

If we can figure how to get the USB link to a smartphone, Theremino perhaps, we may end up with something useful and affordable for the guys who want it for the materials analysis, and are not getting distracted into the rest of the science.

So not much that most folk would be interested in for the present. I am plodding my way through understanding the most basic software making stuff happen on a Raspberry Pi, and picking through PyMCA, and DIYspectro.
I now also have a couple of new old books to trawl through.

[Said filing cabinet is also going to the tip Err.. "recycle centre" :). I was thinking a nice tools drawers chest on wheels could go right in it's place!]
 
I've been working a lot on expanding our vegetable garden and subsequent planting so of late I haven't spent a lot of time on this project. I have acquired a couple of LYSO scintillators but no SiPM yet, and I still need to track down those old dead smoke detectors I meant to recycle ( :big grin: ). Still mulling over whether to try the Theremino pulse-stretching scheme or shoot for a fast 10 bit A/D approach.

It might be advantageous to perform the pulse processing in the frequency domain because (it is claimed) this assists in improving the SNR. If the noise is uncorrelated to the pulse (and why wouldn't it be) then the FFT sort of acts like a filter all on its own (because it samples different parts of the input signal to calculate the magnitude of each frequency component). A number of ARM processors support the FFT in hardware so the transform step will be very fast.
 
Back
Top