Focusing on the universe, one spectrum at a time.
Focusing on the universe, one spectrum at a time.
As I already stated in my previous post, my goal is to observe and analyse the spectra of earth near celestial bodies. To successfully perform this task a high-resolution spectrometer is an absolute necessity. Usually, scientific measurements of such complexity are not something one can do without proper funding and the necessary knowledge. While some garage scientists have already constructed their own CCD-Spectrometers, there are no publications of them being used for stellar spectroscopy.
When tackling a problem of this complexity it is crucial to be quite knowledgeable and well organized. Luckily there already are a few documentations about DIY-spectrometers available on the internet like “Curious Scientist’s TCD1304 Spectrometer” or the “Otter Vis Spectrometer” by Esben Rossel. (More examples can be found here.)
In my project, I aim to combine elements from various projects to achieve the best possible result while staying within a relatively low budget. After all, commercial spectroscopes can easily cost several thousand euros. After many failed attempts to construct a transmission- spectrometer based on “Theremino’s” Software and an Arduino Nano, I decided to switch to a better suited microcontroller and different software.
At this point I need to mention the two different types of monochromators. Them being the Czerny-Turner Setup and Transmission grating based configurations.
A transmission grating–based monochromator separates light into its component wavelengths through diffraction as it passes a transparent grating. The grating consists of a finely ruled or holographically produced pattern of parallel lines on a glass or quartz plate. When broadband light enters, each wavelength is diffracted at a different angle according to the relationship m λ = d(sin i + sin θ) with I being the angle of incidence, and θ the diffraction angle. Transmission-grating spectrometers are compact and fast but typically produce more stray light and have lower spectral resolution than reflective systems.
In a Czerny–Turner monochromator, the same diffraction principle is applied using a reflective grating instead of a transmission one. Light entering through a narrow slit is collimated by a concave mirror and directed onto the reflection grating, which disperses the light. The dispersed wavelengths are then focused by a second parabolic mirror onto a detector. The reflective geometry minimizes chromatic aberration, provides higher efficiency across a wider spectral range, and reduces stray light, making the Czerny–Turner setup one of the most widely used configurations for high-resolution spectroscopy.
While there are monochromators that work by reducing the number of analysed wavelengths in trade for higher resolution, the complexity of added moving parts outweighs the benefits for at-home-spectroscopy. To analyse the light of celestial objects, an efficient optical coupling system is necessary to bundle the light into a transportation medium to ultimately study its component wavelengths.
The most obvious solution is to choose a fibre optic cable to bridge the gap between the Telescope eyepiece and the spectrometer. When selecting a cable there are a few parameters one need to account for. These being the Connectors, the range of wavelengths, the core diameter/structure and the collimating setup to bundle the light into the cable.
In spectroscopy, both the SMA905 and the FC connector are used frequently due to their secure screw-in connection. The range of usable wavelengths depends mostly on the core material of the fibre, with silica fibres typically offering the widest range of wavelengths, being the standard for VIS spectroscopy.
While it is possible to layout fairly accurate optical systems at home, the precision of a top-notch laboratory is way out of reach. Therefore, it is best to choose a fibre optic cable with the widest available core diameter. This automatically results in using multi-mode (MM) over single-mode (SM) cables due to their typically larger core (≈50-1000µm).
To focus the light onto the silica core at the centre, the rays must be concentrated using a focusing lens. Since the rays emerging from the eyepiece are already collimated (parallel), they can be focused to a precise point using a plano-convex lens. While a bi-convex lens would also work, it introduces greater spherical aberration and refracts the light twice. Therefore, a simple fibre collimator suited for the observed wavelengths can be mounted to the eyepiece and the fibre, respectively. It is important to orient the flat side of the lens towards the collimated beam to minimise spherical aberration. An example simulation can be found here.
Since I want to achieve the highest possible resolution while observing the entire spectrum simultaneously, it is natural to choose the Czerny–Turner configuration as the monochromator. Aligning and positioning each optical component can be tedious, so I will use the body and optics of an old B&W Tek BTC100-2S spectroscope. It consists of an SMA905 female connector, a 50 µm entrance slit, a collimating mirror, a 1800 lines/mm diffraction grating with a blaze wavelength of 500 nm, which is most efficient at 500 nm and therefore well suited for visible spectroscopy, and a focusing mirror. The original Sony ILX511 linear CCD is not included, but this is not a problem because my replacement TCD1304DG sensor has 1600 more pixels.
To drive the CCD, a precise clock setup is needed. To drive the TCD1304DG three driving pulses, them being the Master clock (fM), the shift gate (SH) and the integration clear gate (ICG). While Toshiba provides a Datasheet that specifies the exact timing requirements it is a a bit cryptic at its best. Therefore I suggest reading Esben Rossel’s article on the clock setup that can be found here.
I chose to combine it with an STM32F401 “black pill” microcontroller and Esben’s USB software which can be found here. This allows for flashing the code without a ST-Link but directly via the USB connection. A precompiled binary version of the firmware can be found in the Debug-directory of the .zip file. To flash it I suggest using the STM32CubeProgrammer software which worked well in my case.
To get a useful graphical readout I used the pyCCDGUI also provided by Esben but modified it to suit the purpose of spectroscopy. Since each pixel’s value corresponds to a particular wavelength, the graph needs to be stretched or compressed by calibrating it through known points. This however is not a linear process but better described by a third-degree polynomial function. The wavelength alignment is done by switching to spectroscopy mode in the control panel on the right side which automatically opens the calibration window. Since the standard form for a third-degree polynomial is ax3+bx2+cx+d it is necessary to have four known points for proper calibration. I suggest using a Compact fluorescent lamp (CFL) since it has a very distinct spectrum with well-known wavelengths as seen in the Image below.
Each peak corresponds to a specific element and wavelength, making it ideal for calibration:
My next challenge will be the implementation of the sensor driving circuit into the body of the spectroscope.