DIY Raman Spectrometer
Based on a Raspberry Pi and 3D Printable
Be sure to check out the bio that Hackaday.com did on me!!
WHAT IT DOES:
Imagine the keyboard in front of you... It is made of several elements...it's probably plastic, some metal, some silicon, and so on... Now imagine a glass of water, beer or your favorite soft drink.. So now let's ask what's in that glass...you probably know there's a bit of water, and a lot of other components.. What if you look at that beer, and want to find out what chemical compounds are in it.. So take a sample of it, and put it into a 'cuvette' which is a fancy tiny test tube of sorts.. Then insert that into our Raman Spectrometer.. Then run an analysis on it and bam! You can see that your beer has ethanol, carbon dioxide, water, etc..
There have even been examples of how you can distinguish different brands of beer using a Raman Spectrometer! You can do the same thing for other samples, like gasoline, your blood, tears, or even your cat's hair...
HOW IT WORKS:
Basically, it works by shining a really bright laser through some optics to focus down to a sample...That laser light then hits the sample, and depending on the molecules it hits, and what they're doing...the light can be shifted up or down in color.. Some of that light, and some of the laser light is reflected back into the optics and goes back and is reflected through a couple of filters that removes the laser light completely..leaving only the shifted light from the sample.. That light is bounced off of a 'diffraction grating' which is sorta like a prism.. The light is separated and projected onto a camera(ccd) which takes an 'image' of the spectra. Then the computer analyzes that and compares it to a couple of online databases then comes back and tells you what's in your beer!
Lasers + Beer = Fun....no?
Start off by putting a sample in the cuvette.. Insert the cuvette into the DIY 3D Printable Raman Spectrometer, run the analysis.....the data is retrieved from the internet spectral databases, a match is found...that match is displayed on the users remote terminal... You can store that data in an external database, share it online, or do what you please with it..
1. The laser emits a 532nm (green) beam of light.
2. The 532nm Pass Filter only allows the 532nm (green) light to pass, and filters out anything else.
3. The Cube Beam Splitter passes half of the light on to the Objective Lens, and the other half into the Beam Dump.
4. The Objective Lens focuses the light down to a tiny point in the sample.
5. The light in the sample interacts with the molecules, and depending on vibrations, bond angles, etc. the light is shifted from 532nm (green) to other colors/frequencies.
6. Some of the shifted light and a lot of the original laser light is reflected back into the Objective Lens and is collimated back to the Cube Beam Splitter.
7. The Cube Beam Splitter reflects half of the light to the Filter Assembly and half back into the laser.
8. The Filter Assembly contains two Edge Filters which block the 532nm (green) laser light and allow the other colors to pass. Since this is a low cost system, two lenses are used instead of one Notch Filter...and so two separate exposures are taken and the images are stacked.
9. The remaining light is collimated by the Bi-Convex Collimating Lens to the Vertical Aperture (slit).
10. The Vertical Aperture (slit) controls the amount of light that enters the spectrometer section, and is a determining factor in spectral resolution.
11. The light from the slit is reflected off the Collimating Mirror on its way to the Diffraction Grating.
12. The Diffraction Grating acts like a Prism and divides the light into separate colors. Since the light originated as 532nm (green), and the shift is typically fairly minor, this light may be close to the original color...but also may be red (lower frequency) or even blue (higher frequency).
13. The light reflected from the Diffraction Grating is reflected by the Imaging or Focusing Mirror onto the Detector Array..
14. The spectra derived from the above process is reflected by the Imaging Mirror onto the CCD Array where it is captured by the raspberryPi for processing.. One image is taken with the first Edge Filter, then another exposure with the next Edge Filter and then some software to stack the images is used together along with some signal processing and possibly multiple exposures to gain as much brightness as possible so the computer can correctly analyze the spectra...
Originally I started out with a different configuration for mounting the optics. Since then, I decided to go with a much better solution where the optics are enclosed in a contiguous structure that eliminates stray beams and keeps ambient light out. It is also easier to set up, and should stay aligned longer in addtion to being more shock resistant and will reduce resonance.. The system is comprised of a number of individual modules, most of which are based around the optics listed above.
I have decided to go with the Crossed Czerny-Turner Configuration for the spectrometer portion.. It seems to be the best fit so far..
A view from the outside... The whole thing fits in a Prodigy mini ITX case by BitFenix..
The electronics are centered around a raspberryPi. There are three microcontrollers tied to the raspi through rs-232.. The controlBoard, the interfaceBoard and the imagingBoard.. The controlBoard is also tied to the power control board... and at this time, the imagingBoard and the interfaceBoard may be living on the same PCB..
All three boards are based on the ST Microelectronics Nucleo F401RE STM32F401RE MCU and fit into what used to be hard drive trays that slide into the case..using a 3D printed adapter..
The Nucleo F401RE is just one of many platforms supported by mBed.. The boards shown below are prototypes, I'll be publishing the Eagle files for the new boards when I get the bugs worked out with these..
I am using the mBed online IDE to program them.. Say what you will, it works great.. gitHub to firmware..
Schematic for controlBoard can be found here.
- Power Relay for Laser
- TTL Control for Laser
- Monitor Temperature for Laser using DS18B20 sensor
- Control L298 HBridge for Heating/Cooling of peltiers on CCD Array and Cuvette
- PID Monitor and control Cuvette temperature using DS18B20 and L298 HBridge
- Monitor current draw from peltiers on CCD Array and Cuvette using ACS712 current sensor
- Control Beam Shutter using a standard 9gram hobby servo
- Detect Laser Good (verify beam is reaching destination) using a TEMT6000 ambient light sensor
- Open and close Cuvette Tray using stepper motors driven by ULN2003, with optical end stops
- Rotate Filter Wheel Assembly to change from 522nmSP to 550nmLP filters using ULN2003
- Detect Filter Wheel Assembly position using rotary encoder
- Monitor Cuvette Holder for presence of cuvette in tray using a optical proximity sensor
- Accepts power from main power supply and distributed it to other boards
- Contains the L298 HBridge for the imaging and cuvette peltiers
- Arduino Pro Mini (for Adafruit RGB LED Ring which animates depending on activity)
- ILI9341 2.2" TFT LCD Color Display
- Capacitive Touch Panel with 12 'Buttons' using MPR121 touch controller
- Displays system status and mini control interface
- Accepts user input to open/close cuvette tray, etc..
- LED Ring provides feedback regarding status, etc..
- Controls Toshiba or Sony Linear CCD Array
- Monitors UV index with a
- *Controls diffraction grating angle
- Transmits CCD data to raspberryPi for processing
- Will probably be housed on the interfaceBoard...stay tuned.
Please read more......the description for the process has been updated!Read more »