spectrometry update; 340nm UV data

30 views
Skip to first unread message

Jeffrey Warren

unread,
Feb 16, 2012, 3:31:34 PM2/16/12
to publicla...@googlegroups.com
Hey spectrometer-interested folks;

Just had some time to test some UV bulbs in my spectrometer, and took this reading:

http://spectralworkbench.org/spectra/show/106

It shows clear signal at 340nm, and a tiny bit below that, actually. This is great, since as I cite in the set I made, that is low enough to overlap with the spectra of anthracene and tetracene:

http://spectralworkbench.org/sets/show/4

I don't want to be over-optimistic, but I am thinking of taking the lens off and trying to get even lower; the CMOS sensor could probably see lower if it weren't for the glass in the lens; maybe a pinhole could work.

Also, I was reading this article today that said that fluorescence spectroscopy is as much as 10,000 more sensitive than UV-Visible spectrometry (see attached):

http://info.ngwa.org/gwol/pdf/922056377.PDF

Interesting. Anyways I ordered a couple of higher-powered UV lamps, and am going to try to get some gasoline and motor oil to glow bright enough to collect spectra.

jeff
Picture 8.png

Jeffrey Warren

unread,
Feb 16, 2012, 3:52:06 PM2/16/12
to publicla...@googlegroups.com
Also - I want to list "spectral resolution" on Spectral Workbench pages, and we should be able to calculate that. Each pixel is a distinct value, but I guess I'm not sure how to separate that nominal resolution with actually seeing very narrow spectral features.

Simply put, this spectrometer nominally detects 800-1200 or so different values between 350-1000 nanometers (so, we'll say 1000 values over 650 nanometers = 0.65 nm/px)

But let's say there's a feature with the shape of a W (like the tetracene spectra linked to in the last email) but a W which was only 1nm wide. Could this spectrometer "see" both dips of the W or would it blur it into a single V?

I guess I'm wondering if there are known spectral features narrow enough so we can use them to establish the "real" resolution of this device.

Jeff

Dave Haffner

unread,
Feb 16, 2012, 4:51:42 PM2/16/12
to publicla...@googlegroups.com
Right on, this is getting interesting.  At 0.65 nm / pixel you should be plenty oversampled.

What you're talking about is determined by two aspects of the spectrometer -- the bandpass defined by the slit width, and the spectral resolution, which is the spectral sampling.  These two together determine what you'll be able to measure spectrally.

The easiest way to approximate a bandpass is to use a triangular function. If you take a solar spectrum measurement with your spectrometer, you should be able to apply a simple triangular bandpass function to a reference solar spectrum to convolve (downgrade the resulution with a bandpass-weighted average) so that the width of some of the peaks match your measured spectrum pretty reasonably. You can start with a wide bandpass and iteratively reduce the width until you see some kind of agreement.

I can send you a reference solar spectrum and if you would like, some code to that will do the convolution. It might be a nice thing to build into your software.

Hopefully it will work just like it's supposed to. I think the RGB bayer filter will interfere with the peak widths if you're on the edge of the transission funtion, so it may be best to focus on one the center of just one of the RGB channels.

Can you remind me again how you construct your slit? is the width standardized somehow?

Dave

Jeffrey Warren

unread,
Feb 16, 2012, 5:22:34 PM2/16/12
to publicla...@googlegroups.com
I can send you a reference solar spectrum and if you would like, some code to that will do the convolution. It might be a nice thing to build into your software.

OK, cool, yes, thanks! Likewise, would it be useful for me to take a spectrum and send it to you? I'm assuming i'd be taking a solar spectrum? I'm a bit intimidated by the convolution as I've never done that sort of thing. What kind of code, MATLAB? Would I be able to port it to something I'm more familiar with, like java/python/php/ruby/javascript?

Hopefully it will work just like it's supposed to. I think the RGB bayer filter will interfere with the peak widths if you're on the edge of the transission funtion, so it may be best to focus on one the center of just one of the RGB channels.

I haven't forgotten our conversation about separating/integrating RGB data, and the server side is storing colors separately as well as averaging them, so as time goes on we'll be able to swap in a better means of combining the colors.
 
Can you remind me again how you construct your slit? is the width standardized somehow?

nope, it's not. Basically it's narrow enough that it's close to the pixel resolution of the webcam. Monty (who has posted on the website under the name xiphmont, i think) has speculated (if I understood him) that basically the light is being collimated between that slit and the very small aperature of the webcam, which is why we need only one slit.

Jeff
 

Dave Haffner

unread,
Feb 17, 2012, 1:51:06 PM2/17/12
to publicla...@googlegroups.com
On Thu, Feb 16, 2012 at 5:22 PM, Jeffrey Warren <je...@publiclaboratory.org> wrote:
I can send you a reference solar spectrum and if you would like, some code to that will do the convolution. It might be a nice thing to build into your software.

OK, cool, yes, thanks! Likewise, would it be useful for me to take a spectrum and send it to you? I'm assuming i'd be taking a solar spectrum? I'm a bit intimidated by the convolution as I've never done that sort of thing. What kind of code, MATLAB? Would I be able to port it to something I'm more familiar with, like java/python/php/ruby/javascript?

Yes, that's a great idea. Send away! It'd be nice to get a solar measurement (solar + atmosphere, actually..) so I can play around a little. But the convolution is much simpler than it sounds, so you can experiment too.

so here's what
- some spectra measured with the line of sight from the sun to the sensor as direct as possible using a white diffuser like a piece of paper (one photon bounce) or a pin-hole (zero photon bounces), if you don't run into saturation.
- some spectra taken with lots of bounces. noon day pointed at the sky well off the sun (45 degrees, 60 degrees?).

My intuition is that a measurement of direct sunlight (perhaps with one "bounce" off a diffuser to lower the intensity) will be of more use for determining the bandpass than would be diffuse sunlight, since diffuse light that has been "through the atmospheric wringer" with multiple molecular scattering  I think reduces the Fraunhoffer features in the solar spectrum which you'd  use to estimate the bandpass.  That said, it'd be cool to do both measurements, direct and diffuse, and compare. The ratio of the direct to diffuse might show something interesting since the properties of the RGB filter and other instrument peculiarities should cancel out in the ratio.


Hopefully it will work just like it's supposed to. I think the RGB bayer filter will interfere with the peak widths if you're on the edge of the transission funtion, so it may be best to focus on one the center of just one of the RGB channels.

I haven't forgotten our conversation about separating/integrating RGB data, and the server side is storing colors separately as well as averaging them, so as time goes on we'll be able to swap in a better means of combining the colors.

Yeah, these RGB color filters... I hear the next generation of CCD (and maybe CMOS) arrays will have one pixel in the mosaic that is left "white" so the signal would be RGBW. With enough light you might be able to just throw out the RGB channels and use the W.  I also looked into the hobbyist  astronomy sensors that don't have color filters so they can get better sensitivity, but they seemed a little pricey for the project. Unfortunately, my friend who knows a good bit about digital imaging told me that the RGB Bayer filters can be pretty variable in their transmission as a function of wavelength/color.  That suggests to me that doing anything quantitative with intensity would best be done among a group if folks could standardize on a single make and model of web cam.

Incidentally, the convolution method is the same one as you might use to get a better sense of the RGB filter functions for the different pixels.  And once you know those, you can reconstruct the total intensity of any experimental measurement from the separate RGB channels by de-convolving the measured spectrum -- essential applying an inverse of the convolution function.

The RGB transmission functions are complex, even after removing the IR filter, so you have to determine those empirically. I'm not sure how you could do that best, but there should be a simple approach.  The slit-function is simpler. To the first order you can just assume it's a triangle function.

w = 1-abs(x-x0)/fwhw  ; abs(x-x0) <= fwhm
w = 0 ;  abs(x-x0) > fwhm

w: bandpass transmission
x : wavelength
x0 : center wavelength of your measurement
fwhm : width of the bandpass at 1/2 the peak height (aka full-width, half-maximum, or FWHM)

I've plotted this in the png attached. If this makes sense, the next step, the convolution, is simple. You just center the bandpass function at all of the solar reference spectrum wavelengths, the x0 in your spectrum, and use the bandpass function to compute weights at the neighboring wavelengths within x0 +/- FWHM. Then use these values as weights in a simple weighted average of the spectrum at each x0, which goes like this,

avg = sum(w*y)/sum(w)

where y is the intensity and w is as above.

If you do this all the way up and down the wavelength grid, you'll have converted (convolved) the high-resolution spectrum to what an instrument with an idealized triangular bandpass would "see".

It's simpler than it sounds. The fact that  it's called "convolution" doesn't help, of course.

I'll find a reference solar spectrum and code an example in python that I'll send out this weekend.

If the solar spectrum idea doesn't work, maybe we could determine the bandpass by looking at how the spectrometer modulates ("sees") an easily available, sharp fluorescence feature. But the solar spectrum would provide better info if we can pull it.

Dave
slit_function.png

Emil Larsen

unread,
Sep 22, 2012, 7:15:33 AM9/22/12
to publicla...@googlegroups.com, je...@publiclaboratory.org
Did you ever take the lens off to see if you could get a response at lower than 340nm? Do you think this then becomes webcam CCD-specific?

I would like to use the DIY spectrometer to test sunglasses for UVA and UVB blocking capabilities.

A few years ago, I removed the lens from a webcam to get better IR sensitivity, but I've never tested for UV.

Jeffrey Warren

unread,
Sep 22, 2012, 11:19:04 AM9/22/12
to publicla...@googlegroups.com, plots-spe...@googlegroups.com
Still haven't -- i'm hoping to do it this weekend at Leaffest (once it starts raining and we can't fly kites anymore). Some new info has been posted on UV here:

thomas.j.fichtner

unread,
Sep 23, 2012, 5:52:04 PM9/23/12
to plots-spe...@googlegroups.com, publicla...@googlegroups.com, je...@publiclaboratory.org
Nice work!

Maybe using a Magnesium Fluoride (MgF2) glass type or MgF2 crystal optical components would improve the UV possibilities? Or maybe a Fused Silica like Suprasil, Spectrasil or Lithosil would be sufficient?

Amirber

unread,
Sep 24, 2012, 7:02:18 AM9/24/12
to publicla...@googlegroups.com, je...@publiclaboratory.org
Jeffry,

Did you notice this is almost exactly the separation of the Sodium D line? 0.6 nm, would be challenging but would give you a good feeling about the capabilities.


Amir
Reply all
Reply to author
Forward
0 new messages