Created by sebastien.popoff on 21/10/2019

Tutorials Spatial Light Modulators

How to generate macropixel patterns for SLMs/DMDs with the Layout module

In many wavefront shaping experiments, such as for optimization experiments, like the seminal work by I. Vellkoop and A. Mosk, or for measuring the transmission matrix, one needs to control the amplitude and/or the phase of the field on a given number of macropixels (i.e. groups of pixels). Using DMDs, amplitude, and phase modulation can be achieved using the Lee hologram method and then sending the binary images to the device using the for ALP4lib in Python for Vialux DMDs. I released here a module written by M. W. Matthès and myself to easily and efficiently generate such patterns. The code can be found on my Github account here as well as an amplitude and phase modulation example: layout_amplitude_phase_modulation.ipynb.

See full post
Created by sebastien.popoff on 21/09/2018

Tutorials Spatial Light Modulators

How to calibrate linearly aligned nematic liquid crystal based SLMs

 

I previously posted a tutorial presenting a technique to calibrate spatial light modulators (SLMs). The approach was based on measuring the interference between two paths that have been reflected off two different regions of the SLM. This technique is always valid but requires aligning a mask, using a lens, and capturing and processing images of interference patterns. Nowadays, most phase-only SLMs based on liquid crystals use linearly aligned nematic crystals. Unlike twisted nematic liquid crystals, they allow phase-only modulation on one polarization while not affecting the orthogonal polarization. This feature can be used to simplify the calibration setup to characterize the SLM with a common path interferometer, not requiring a precise alignment [1]. Furthermore, it only needs a photo-detector, compared to a digital camera in the previously presented approach. This is convenient to measure the inevitable phase fluctuations of an SLM, usually around a 100 to 400 Hz frequency. In this document, we briefly describe the principle of the characterization scheme as presented in [2] and show typical results of the calibration and phase fluctuations.

Written by Paul Balondrade and Sébastien M. Popoff

See full post
Created by sebastien.popoff on 09/10/2016

Tutorials Spatial Light Modulators

Easy generation of Laguerre Gauss beam with Python and an SLM

I want to share a simple Python written by José Salazar-Serrano. This program aims to generate a Laguerre Gauss beam with a phase-only spatial light modulator (SLM). It uses the slmPy and requires the wxPython and opencv modules to run. The full description of the package and the files are available on the Github repository.

See full post
Created by sebastien.popoff on 09/12/2015

Tutorials Spatial Light Modulators

How to control a liquid crystal SLM with Python

Most liquid crystal Spatial Light Modulators (SLMs) and some digital micromirror devices (DMDs) are controlled via an analog (VGA) or digital (HDMI/DVI) monitor standard communication protocol. In other words, you plug it to your computer and it is recognized as a monitor display. There is usually no useful tool or API provided with the device to dynamically control the SLM. I previously introduced a way to control an SLM using Matlab/Octave, now that I switched to Python, I present here a way to do this using Python.

DOI

See full post