OpenRRI is an open-source software project designed to assist scientific researchers in acquiring and operating a cost-effective interferometer based on the RRI technique [1]. An RRI-based interferometer offers flexible, wide measurement capabilities [2, 3, 4, 5, 6] while maintaining a low cost relative to commercially available interferometer products.
The mentioned interferometer operates using a laser diode, whose optical frequency is sinusoidally modulated through a laser injection current; the demodulation process is based on the RRI technique. This interferometer enables the measurement of relative displacement with sub-nanometer precision [5] and allows to resolve multiple interference sources within a single optical signal, thereby opening up possibilities for new interferometer configurations. Additionally, the RRI technique offers absolute distance measurement with precision up to 10µm over a wide range [6], which can be utilized for measuring interferometer dead paths and characterizing optical configurations.
Below is a list of the basic hardware required to operate the interferometer:
- – A laser diode that allows for mod-hop-free frequency modulation within a range of at least 6 GHz (~50 pm for 1550nm central wavelength).
- – A corresponding laser driver.
- – A photodetector corresponding to the wavelength in use.
- – A data acquisition board (with at least 1 DAC and 1 ADC) that meets the requirement of having the ADC and DAC share the same trigger or clock. In this project, Red Pitaya STEMlab 125-14 is used, and the prepared hardware image is made available by us.
You can find a list of hardware units that we have tested and utilized here.
The OpenRRI project consists of the following parts:
- – A hardware image containing the FPGA bitfile and Linux drivers for the Red Pitaya STEMlab 125-14 board.
- –
rri_libPython library, which contains all RRI signal processing functions. - –
daqPython library, which provides an easy-to-use API for communicating with the Red Pitaya STEMlab 125-14 Board. - – A cross-platform GUI application that utilizes the
rri_libanddaqlibraries to provide user-friendly operation of the interferometer.
Please note: The OpenRRI code provided is not a real-time implementation of the RRI algorithms and can only aquire data over a limited recording period, depending on the chosen sample rate.