Public Lab Research note


ramanPi - The 3D Printable Raspberry Pi Raman Spectrometer

by flatCat | August 29, 2014 18:35 29 Aug 18:35 | #11087 | #11087

flatCat was awarded the Basic Barnstar by warren for their work in this research note.


flatCat was awarded the Excessive Enthusiasm Barnstar by 31gane for their work in this research note.


ramanPi is looking for developers!!!

****If you have Python, pyQt4, matplotlib, signal processing, optics, raman spectroscopy or FPGA experience contact dev @ ramapi .org! Or go to dev . ramanPi . org and sign up to the developer forums!

What I want to do:

Build a Raman Spectrometer based on a Raspberry Pi, make it 3D Printable and customizable..

An open source 3D Printable Raman Spectrometer that uses a raspberryPi, a couple of arduino compatible ARM boards, a really bright laser and some parts you can grab from eBay, adafruit, sparkFun, Mouser, or wherever...!

BASIC DESIGN GOALS:
1. Make it Open.. Everything.. All of it..
2. Make it 3D Printable.
3. Make it modular and easy to upgrade.
4. Make it as easy to build as possible.
5. Make it easy to customize and open to improvement.
6. Use only commonly available off the shelf components whenever possible.
7. Have a remote interface that will allow it to be controlled and viewed from anywhere.
8. Compare the spectra to the online internet spectral databases.
9. Provide the capability to log data to remote databases, share with friends and colleagues..
10. Not be just another open source spectrometer..
11. Make it easy to use and intuitive.
12. Make it attractive with an elegant design..
13. Make it useful and just cool to have!

My attempt and results

For the most current information, please visit http://hackaday.io/project/1279 I keep pretty detailed logs of my progress on that site.. Please let me know if you like it! I am a semi-finalist in the hackadayPrize!

Questions and next steps

Finish it and go to space!

Why I'm interested

Because Science!!!

Here's the new 'Semifinalist' video...

There are some pictures below.. just a couple.. But there are a TON more and a LOT more information over at hackaday.io... http://hackaday.io/project/1279

Hackaday.com did a bio on me!! http://hackaday.com/2014/06/05/thp-hacker-bio-flc/
ST Micro gave me a shoutout on their Facebook page! https://www.facebook.com/STM32/posts/814806288559756
I'll be tweeting on gitHub updates as well as from here! http://twitter.com/flatCat_
The gitHub for this project http://github.com/flatcat1597 Email me at flatCat1597 at gmail......

And a quick youtube video overview... https://www.youtube.com/watch?v=zogGheok3Eg

Index of Instructions and Informational project logs: Information: controlBoard Schematic and Firmware http://hackaday.io/project/1279/log/9998
Information: powerControlBoard Schematic http://hackaday.io/project/1279/log/10112
Information: imagingBoard Schematic and Firmware http://hackaday.io/project/1279/log/9757
Information: interfaceBoard Schematic and Firmware http://hackaday.io/project/1279/log/10114
Build Instruction: Objective Lens Mount http://hackaday.io/project/1279/log/9909-build-instructions-objective-lens-assembly
Build Instruction: Beam Splitter Assembly http://hackaday.io/project/1279/log/9966
Build Instruction: Laser Shutter Assembly http://hackaday.io/project/1279/log/9975
Build Instruction: Mirror Mount Assembly http://hackaday.io/project/1279/log/9976
Build Instruction: Laser Emitter Assembly http://hackaday.io/project/1279/log/9978
Build Instruction: Filter Selector Assembly http://hackaday.io/project/1279/log/9982
Build Instruction: Spectrometer http://hackaday.io/project/1279/log/9583-how-to-build-a-spectrometer
Alignment Instruction: Spectrometer http://hackaday.io/project/1279/log/9812-spectrometer-alignment
Build Instruction: Optical Assembly http://hackaday.io/project/1279/log/9990
Build Instruction: TFT LCD and Touch Panel http://hackaday.io/project/1279/log/6413



The entire unit.. TFT LCD, Touchscreen display... Neopixel 'working' indicator...Cuvette tray is on the right under the keypad...
20140802_021325.jpg

Some pictures of the optical assembly...

full_01.png parts_04.png parts_05.png parts_06.png parts_03.png parts_01.png parts_02.png
The filter selector assembly....
filter_01.png filter_02.png
The system from the side with covers removed...
system_01.jpg
System overview..
hardware.png

-------- older stuff... I need to clean up here.. =)

Here are some recent (now a little older) shots of the spectrometer portion...The spectrometer can be used independently from the raman portion, if someone wishes to build just the sepctrometer... It will perform similarly to an ocean optics, etc.. I will be designing adapters for fiber, etc...and it plugs into a PC via USB...
20140910_122821_RichtoneHDR.jpg 20140910_123044_RichtoneHDR.jpg 20140910_123626_RichtoneHDR.jpg 20140910_123727_RichtoneHDR.jpg 20140910_123742_RichtoneHDR.jpg 20140910_123752_RichtoneHDR.jpg 20140910_131240_RichtoneHDR.jpg 20140910_131338_RichtoneHDR.jpg 20140910_131408_RichtoneHDR.jpg 20140910_125940_RichtoneHDR.jpg 20140910_125947_RichtoneHDR.jpg spectrometer.png spectrometer2.png veryNice_nameBrandCanolaOil_532nm_2.png veryNice_sunflowerOil_532nm.png


These are some test stands I whipped up for testing my geometry for the spectrometer...
20140815_194143.jpg

This is the raman portion of the system...From the laser emitter on the right to the objective lens, beam splitter, etc...
20140813_195913.jpg

A closer look, albeit incomplete view of the raman portion.. this is missing the filter selection assembly...and of course, there's no spectrometer attached either....
20140721_222040.jpg

This is the interface controller board with the display and touch keypad...and the neopixel indicator ring..
20140807_014214.jpg

A system overview of how things are connected..
hardwareOverview.png

Another more detailed, but probably a little outdated by now...
systemOverview.png

The casing for the filter selector wheel...
20140803_160402.jpg

The raspberryPi, and the controller boards in their slots...
6445781406097477928.jpg

A test setup I used for testing the CCD and optics for the spectrometer..
20140815_201128.jpg

The CCD Detector Array... Toshiba TCD1304 attached to an ST Nucleo F401RE which transmits the data to the raspberryPi via serial.
20140813_234312.jpg

Inside the box, from the side..
20140831_101410.jpg

From the top...
20140831_101433.jpg

And a couple .gifs that show some stuff.. :)
20140815_204333.gif

20140815_204441.gif

[6D2-yONR2ocL7o6hQuPxXzfQgiOUOjyC1wHK7VEd17ge_s144-p-no.gif]

20140801_114159.gif

I would love to hear any feedback or field any questions anyone has! Like I said, there is a TON more information over on my project page at http://hackaday.io/project/1279


35 Comments

Wow! So awesome!!!

Reply to this comment...


Thanks Warren! I'm finishing up the spectrometer parts today! I'll post some pics when I finish printing them...

Reply to this comment...


waaaaaaaaaaaaaaaaaat

Reply to this comment...


Is there any way we can put this data into Spectral workbench?

Is this a question? Click here to post it to the Questions page.

Reply to this comment...


Hi Matthew.. I don't see why not... It might take a slight adaptation, one that I had already considered doing anyway... using the raspiCam instead of the CCD Array... The only problem I can think of would be using Spectral Workbench on a raspberryPi.. I haven't tried very hard, but I wasn't successful last time I tried.
I plan on releasing several (about 3 or 4) versions of the spectrometer that are graduating levels of complexity... Such as the first using a raspiCam or webcam, the second using something like a photo-diode array and the third, which you see here using a CCD array.. One might also use a PC instead of a raspberryPi.. There's really no reason the spectrometer portion cannot be plugged via usb into a host PC..
In addition to that, I am taking requests... :) I want this to be as open and easy for people as possible, if anyone has suggestions, I am all ears!!

Reply to this comment...


And as promised, here are a couple shots of the spectrometer progress...

spectrometer_1.png

spectrometer_2.png

spectrometer_3.png

spectrometer_4.png

20140901_221943.jpg

20140831_101433.jpg

20140831_101410.jpg

Reply to this comment...


I can't stop being flabbergasted at the intricacy of your creation.

Currently, CSV data can be imported into spectral workbench, so there should be some way to make it work. I wonder if the new Pi browser will fix some of the issues?

Is this a question? Click here to post it to the Questions page.

Reply to this comment...


Thank you Matthew! I'm glad you appreciate it! I'm having a great time creating this thing..

If CSV data can be imported, then that should be a slam dunk. I can create an option to export to CSV no problem.. I will have to give the new browser a try.. I've been a little busy with other parts.. :)

I'd like to make a note too, I'm working on making the spectrometer portion of this work standalone too. So someone could just build that part and use it without the rest of the raman portion..

Reply to this comment...


I looked around a bit but couldn't see a total price to build and maybe hours spent? Quite an amazing project.

Is this a question? Click here to post it to the Questions page.

Reply to this comment...


@Kentells - I haven't quite finished yet... But I started in late June...I would hate to even think how many hours I've spent on this so far.. Let's just say, a LOT.. And probably double that by the time I'll be done. Price, since it's not totally done.......I'd have to guess about $1000 so far... but that's been my investment.. If someone else were to build one, not having to do all the research and make the same mistakes... it'd be closer to $600.. Most of that is optics, so if you can source cheaper optics than what I bought from edmund..it'd be cheaper..and for a raman system - $600 is pretty cheap.. I'm also going to guess that with all the parts in front of you...including the printed ones...one could put this together in around a week of casual work..not including calibration and alignment.. ;) The spectrometer portion alone takes my daVinci 3D printer about 15 hours, set to print in high quality set on the fast speed... Thanks, I hope it gets even better with time!

Reply to this comment...


Hello Real nice work,I built auto samplers for Alcott Chromatragraphy several years ago and I think you also have access to Mr Strongs of Sci America work published in articles called"The Amature Scientist",If not please check them out you will find alot of usefull info....Anyway you have built a real nice updated unit....Walter C. Hynson

Reply to this comment...


Thank you! I will have to take a look at that article.. It sounds interesting..Thank you for sharing that..!
I just looked at http://www.alcottchromatography.com/ ... Looks like they have a nice product lineup.. :) Thanks for the compliments!

Reply to this comment...


Hi, this is awesome! :) I'm an atomic physicist and co-founder of the Taipei Hackerspace. We have a bunch of 3D printers here that people learned to use really well recently, and I'd like to build a little physics lab into the space - this would be a great addition, or even kickstarting piece, for that. :) I'm also working on open-hardware for research, and you guys really show that I have to step up my game. Congrats, and I'll be sure to follow this project. :)

Reply to this comment...


@imrehg Hi, thanks! This is actually my first project using a 3D printer... Looks like you guys are doing some pretty cool things there! I like the synthetic aperture radar :) Sounds like we have pretty common goals.. I'm not a member of any hackerspaces, I've thought about it... but I want to develop a number of devices like this for people to use and adapt.. Unfortunately, at least for now.. there's no 'you guys' here.. lol.. It's just me working on this.. I started it for a need I had for another project..and then the hackaday prize, and the folks at hackaday inspired me to share it with the world.. =) There's a lot more detailed information at http://hackaday.io/project/1279 .. Thanks for the good word! I'll be sure to keep an eye on your open-hardware projects!

Reply to this comment...


Hey @imrehg , great to hear from you! Did we meet back in April when i was in Taipei at OSDC? Also, do you know Muyueh and CLKao?

Is this a question? Click here to post it to the Questions page.

Reply to this comment...


@flatCat that sounds like a good evolution of a project, and glad you were inspired to share it ("Do things and tell people!" is one of our motto here). So far I got great response sharing your design, people are actually really excited about scientific research even when / despite that they don't know where to start! :)

@liz it's quite possible, though can make sure next time you are in town! :) The two guys I heard of, and looks like we have a lot of common friends, but probably not yet!

Reply to this comment...


Hi can you share information about raspberryPi Interconnections

Reply to this comment...


Hi Peter... All of the information and documentation is located on the Hackaday.io website... http://hackaday.io/project/1279 You can also find the board layouts, schematics, software, firmware and the 3d parts related files on the github repository.... https://github.com/flatCat1597/ramanSpectrometer

Reply to this comment...


Hi I could not find the information or documentation on the Interconnections between the Main raspberryPi board and with three Nucleo Board.

Can you please let me know how the three Nucleo Board is connected to the main raspberryPi board(wiring details)

Reply to this comment...


Hi Peter... The main block diagram, shows it.. and some of the project logs indicate it.. and I suppose I could have indicated it better... but the nucleo boards only connect to the raspberry pi through usb (they do not draw power from the raspi, just a usb-serial link).. the only other interconnect is the reset line from the raspi to the nulceo which isn't really important yet and not necessary or implemented yet...but allows the raspi to reset each nucleo if needed...

I will make sure to update the documentation to make sure this is more clear... Thanks :)

Reply to this comment...


Hi I hope the the below photo is how the nucleo boards is connected to the raspberry pi through usb

Connection.png

Reply to this comment...


Hi Peter... Perhaps try emailing me directly... Your diagram above depicts the Nucleo's USB plugged into the HDMI of the raspberryPi B+...
I'll go with the raspi B+ since that what you show (not what I used in the ramanPi but should still work)...
Below is a diagram showing the nucleo plugged into the raspberryPi B+ via USB... raspberry-pi-B__stm32.jpg

Here is a diagram showing the connectors and their functions for the raspberryPi B+...

raspberry-pi-b-plus3info.jpg

Reply to this comment...


Hi

Sorry about the wrong connection anyway thanks for the information and regarding the Raspberry Pi as per your BOM it is Raspberry Pi Model B+ 512MB RAM

Reply to this comment...


No need to be sorry! I hope I helped... Also, if you are building the ramanPi using the schematics/boards I designed....don't forget to swap the jumper on the nucleo to use external power!
Page 17/56 through 20/56 of the user manual.... http://www.st.com/st-web-ui/static/active/en/resource/technical/document/user_manual/DM00105823.pdf

http://www.st.com/web/catalog/tools/FM116/SC959/SS1532/LN1847/PF260000?icmp=nucleo-ipf_pron_pr-nucleo_feb2014&sc=nucleoF401RE-pr

Is this a question? Click here to post it to the Questions page.

Reply to this comment...


Hi, Can you please let me know in Github which file has to used for 3d printing,

Thanks Peter

Reply to this comment...


Hi, Can you please let me know in Github which file has to used for 3d printing as their are two folder one is 3d printable and another is 3d printble retired

Thanks Peter

Reply to this comment...


Hi Peter... The 'retired' directory contains the older version that I started with.. The 3d printable folder is the current version that you see above and on the hackaday page..

Reply to this comment...


This is awesome. Could anyone give me an estimate of the cost of this assuming that I have a commercial 3D printer? I see an earlier post states ~$600-$1000. Is that accurate?

Is this a question? Click here to post it to the Questions page.

Reply to this comment...


@HoshiChemist Hi, thanks..! If you're building according to the current design without any mods, it'll probably cost you around that.. Depending on where you source everything and how much your filament costs, etc.. I am gearing up to make kits too, no word on prices just yet...but I'm trying to make this as convenient for people as I can..! Kits will include a new version of the boards, optics, a choice between plastic and aluminum parts for the optical paths, and a few other enhancements.. I'd love to hear feedback from anyone, or suggestions as well!

Reply to this comment...


Hi

Can 3D printable component can be made from sheet metal .

Please let me know

Peter

Reply to this comment...


@peter2975 - I would imagine sheet metal would be exceedingly difficult to work in these dimensions and retain the accuracy required.. Having said that, I am hoping in a couple months to be able to start offering aluminum parts and kits for ramanPi.. The aluminum parts will be cast and machined, then anodized based on the 3d models created for the printed plastic parts.. I may also later be able to offer nylon printed parts.. Check out https://hackaday.io/project/1279-ramanpi-raman-spectrometer for more details...

Reply to this comment...


Hi

I am using pursa i3 printer with cura software.After printing the parts i am not getting good finish as your. I am using PLA filament

can you please share your printing settings or method to get good finish.

Regards Peter

Reply to this comment...


@peter2975 I would not recommend using PLA filament... You can refer to the '3D Printed Part Guidlines' on the hackaday page at https://hackaday.io/project/1279-ramanpi-raman-spectrometer listed in the instructions for reference...
But they basically come down to the following:

3D Printed Part Guidelines: Printing the 3D Printable parts will take you probably about a week. The spectrometer portion alone took about 15 hours on my XYZ daVinci 1.0 printer.. The 5.25" Drive tray takes about 10, and most of the other parts are about 6 or 8 hours.. Print in high enough quality to make sure the parts end up solid enough that they won't crumble in your hands..use 30-50% density... Supports are a good idea and the spectrometer really should be printed with the inside facing the floor. I managed well with .2mm height, you might want to try .1 or whichever is best for your printer. All the parts have been designed for use with ABS plastic and I would recommend using black ABS filament. For parts with beam paths, I am investigating different ways to coat the interior for reduction in reflections, etc. For now, if you like you can coat them with a flat black paint..this will help keep the noise floor down.

Hope that helps!

Reply to this comment...


The links to the hackaday website are no longer functional. Does anyone know of a working website still hosting the Build Instructions?

Is this a question? Click here to post it to the Questions page.

Reply to this comment...


Hello,

Like Garret said a few days ago, we can't access the hackaday website anymore. Does anyone has informations about it ?

Is this a question? Click here to post it to the Questions page.

Reply to this comment...


Login to comment.