Research Article
BibTex RIS Cite

Automation of Measurements of A Stepper Motor-driven Optical Monochromator Using Python

Year 2025, Volume: 3 Issue: 2 , 94 - 99 , 31.12.2025
https://doi.org/10.26650/PAR.2025.00010
https://izlik.org/JA54MU22US

Abstract

This project presents automatic control of measurements of a stepper motor-driven classic optical grating monochromator that is more than 50 years old. The automation of measurements was realized by the use of a stepper motor and the corresponding Python programming. The Python code, which follows the general outline of an earlier LabVIEW design, also includes a graphical user interface and an additional app for evaluation. The Python software is built in separate parts that work together. A central “state manager” (Finite State Machine, FSM) organizes and follows each step of the process. Other background parts handle specific tasks, such as moving the motor of the monochromator or collecting measurement data, while the main program keeps the user interface active and responsive. Besides allowing the user to manually change the wavelength step by step, the program can also perform automatic scans or carry out several scans in sequence from a list created by the user. This work enables the integration of high-quality historical optical instruments with modern experimental setups– for example, in high-resolution laser-induced f luorescence spectroscopy. The project is explained here, and the program code is shared publicly on GitHub as part of open science (Şeker et al. 2025). Test measurements using various lamps are presented.

References

  • FAULHABER Drive Systems, Communication / Function Manual, 4th edition, 2014, retrieved from https://www.faulhaber. com/fileadmin/Import/Media/EN_7000_05030.pdf on 07.07.2025 google scholar
  • Kramida, A., Ralchenko, Yu., Reader, J. and NIST ASD Team, 2024, NIST Atomic Spectra Database (version 5.12), [Online]. Available: https://physics.nist.gov/asd [on 03.09.2025]. National Institute of Standards and Technology, Gaithersburg, MD. google scholar
  • Kronberger H., 1971, Physics Today, 24, 89, https://doi.org/10.1063/1.3022542 google scholar
  • Matplotlib Development Team, Matplotlib – Python plotting, 2025, retrieved from https://matplotlib.org/ on 07.07.2025 google scholar
  • National Instruments, 2025a, Spezifikationen des USB-6009. retrieved from https://www.ni.com/ docs/en- US/bundle/usb- 6009- specs/page/ specs.html?srsltid=AfmBOoq113GURNgO0I_ google scholar
  • 6wDwuixtaIH2A5un0Yg-Oh1rmqjSa73BiztwD on 07.07.2025 google scholar
  • National Instruments, 2025b, NI-DAQTM mx Python Documentation. retrieved from https://nidaqmx-python.readthedocs.io/ on 07.07.2025 google scholar
  • National Instruments, 2025c, NI-DAQTMmx User Manual. retrieved from https://www.ni.com/docs/en-US/bundle/ ni-daqmx/page/user-manual-welcome.html on 07.07.2025 google scholar
  • National Instruments, 2025d, Queued State Machine (Guide). retrieved from https://learn-cf.ni.com/teach/riodevguide/ code/rt_queued-state-machine.html on 07.07.2025 google scholar
  • Python Software Foundation, 2025e, pyserial — Python Serial Port Extension retrieved from https://pypi.org/project/ pyserial/ on 07.07.2025 google scholar
  • Python Software Foundation., 2025a, The Python Language Reference. retrieved from https://docs.python.org/3/ reference/ on 07.07.2025 google scholar
  • Python Software Foundation, 2025b, concurrent.futures — Launching parallel tasks. retrieved from https://docs. google scholar
  • python.org/3/library/concurrent.futures.html on 07.07.2025 google scholar
  • Python Software Foundation, 2025c, pathlib — Object-oriented filesystem paths. retrieved from https://docs.python.org/ 3/library/pathlib.html on 07.07.2025 google scholar
  • Python Software Foundation, 2025d, tkinter — Python interface to Tcl/Tk. retrieved from https://docs.python.org/3/ library/tkinter.html on 07.07.2025 google scholar
  • Python Software Foundation, 2025e, pyserial — Python Serial Port Extension retrieved from https://pypi.org/project/ pyserial/ on 07.07.2025 google scholar
  • Şeker, Ş., Kröger, S., Schwarz, P., Weidner, C., 2025, GitHub-Repository-Name [Software] https://github.com/sk-HTW/ monochromator_python_code google scholar

Year 2025, Volume: 3 Issue: 2 , 94 - 99 , 31.12.2025
https://doi.org/10.26650/PAR.2025.00010
https://izlik.org/JA54MU22US

Abstract

References

  • FAULHABER Drive Systems, Communication / Function Manual, 4th edition, 2014, retrieved from https://www.faulhaber. com/fileadmin/Import/Media/EN_7000_05030.pdf on 07.07.2025 google scholar
  • Kramida, A., Ralchenko, Yu., Reader, J. and NIST ASD Team, 2024, NIST Atomic Spectra Database (version 5.12), [Online]. Available: https://physics.nist.gov/asd [on 03.09.2025]. National Institute of Standards and Technology, Gaithersburg, MD. google scholar
  • Kronberger H., 1971, Physics Today, 24, 89, https://doi.org/10.1063/1.3022542 google scholar
  • Matplotlib Development Team, Matplotlib – Python plotting, 2025, retrieved from https://matplotlib.org/ on 07.07.2025 google scholar
  • National Instruments, 2025a, Spezifikationen des USB-6009. retrieved from https://www.ni.com/ docs/en- US/bundle/usb- 6009- specs/page/ specs.html?srsltid=AfmBOoq113GURNgO0I_ google scholar
  • 6wDwuixtaIH2A5un0Yg-Oh1rmqjSa73BiztwD on 07.07.2025 google scholar
  • National Instruments, 2025b, NI-DAQTM mx Python Documentation. retrieved from https://nidaqmx-python.readthedocs.io/ on 07.07.2025 google scholar
  • National Instruments, 2025c, NI-DAQTMmx User Manual. retrieved from https://www.ni.com/docs/en-US/bundle/ ni-daqmx/page/user-manual-welcome.html on 07.07.2025 google scholar
  • National Instruments, 2025d, Queued State Machine (Guide). retrieved from https://learn-cf.ni.com/teach/riodevguide/ code/rt_queued-state-machine.html on 07.07.2025 google scholar
  • Python Software Foundation, 2025e, pyserial — Python Serial Port Extension retrieved from https://pypi.org/project/ pyserial/ on 07.07.2025 google scholar
  • Python Software Foundation., 2025a, The Python Language Reference. retrieved from https://docs.python.org/3/ reference/ on 07.07.2025 google scholar
  • Python Software Foundation, 2025b, concurrent.futures — Launching parallel tasks. retrieved from https://docs. google scholar
  • python.org/3/library/concurrent.futures.html on 07.07.2025 google scholar
  • Python Software Foundation, 2025c, pathlib — Object-oriented filesystem paths. retrieved from https://docs.python.org/ 3/library/pathlib.html on 07.07.2025 google scholar
  • Python Software Foundation, 2025d, tkinter — Python interface to Tcl/Tk. retrieved from https://docs.python.org/3/ library/tkinter.html on 07.07.2025 google scholar
  • Python Software Foundation, 2025e, pyserial — Python Serial Port Extension retrieved from https://pypi.org/project/ pyserial/ on 07.07.2025 google scholar
  • Şeker, Ş., Kröger, S., Schwarz, P., Weidner, C., 2025, GitHub-Repository-Name [Software] https://github.com/sk-HTW/ monochromator_python_code google scholar
There are 17 citations in total.

Details

Primary Language English
Subjects Classical Physics (Other)
Journal Section Research Article
Authors

Sophie Kröger This is me 0000-0003-4991-9176

Christian Weidner This is me 0009-0008-1274-2382

Paul Schwarz This is me 0009-0007-6652-2302

Şimal Şeker This is me 0009-0008-5981-4419

Submission Date November 16, 2025
Acceptance Date December 9, 2025
Publication Date December 31, 2025
DOI https://doi.org/10.26650/PAR.2025.00010
IZ https://izlik.org/JA54MU22US
Published in Issue Year 2025 Volume: 3 Issue: 2

Cite

APA Kröger, S., Weidner, C., Schwarz, P., & Şeker, Ş. (2025). Automation of Measurements of A Stepper Motor-driven Optical Monochromator Using Python. Physics and Astronomy Reports, 3(2), 94-99. https://doi.org/10.26650/PAR.2025.00010
AMA 1.Kröger S, Weidner C, Schwarz P, Şeker Ş. Automation of Measurements of A Stepper Motor-driven Optical Monochromator Using Python. Physics and Astronomy Reports. 2025;3(2):94-99. doi:10.26650/PAR.2025.00010
Chicago Kröger, Sophie, Christian Weidner, Paul Schwarz, and Şimal Şeker. 2025. “Automation of Measurements of A Stepper Motor-Driven Optical Monochromator Using Python”. Physics and Astronomy Reports 3 (2): 94-99. https://doi.org/10.26650/PAR.2025.00010.
EndNote Kröger S, Weidner C, Schwarz P, Şeker Ş (December 1, 2025) Automation of Measurements of A Stepper Motor-driven Optical Monochromator Using Python. Physics and Astronomy Reports 3 2 94–99.
IEEE [1]S. Kröger, C. Weidner, P. Schwarz, and Ş. Şeker, “Automation of Measurements of A Stepper Motor-driven Optical Monochromator Using Python”, Physics and Astronomy Reports, vol. 3, no. 2, pp. 94–99, Dec. 2025, doi: 10.26650/PAR.2025.00010.
ISNAD Kröger, Sophie - Weidner, Christian - Schwarz, Paul - Şeker, Şimal. “Automation of Measurements of A Stepper Motor-Driven Optical Monochromator Using Python”. Physics and Astronomy Reports 3/2 (December 1, 2025): 94-99. https://doi.org/10.26650/PAR.2025.00010.
JAMA 1.Kröger S, Weidner C, Schwarz P, Şeker Ş. Automation of Measurements of A Stepper Motor-driven Optical Monochromator Using Python. Physics and Astronomy Reports. 2025;3:94–99.
MLA Kröger, Sophie, et al. “Automation of Measurements of A Stepper Motor-Driven Optical Monochromator Using Python”. Physics and Astronomy Reports, vol. 3, no. 2, Dec. 2025, pp. 94-99, doi:10.26650/PAR.2025.00010.
Vancouver 1.Sophie Kröger, Christian Weidner, Paul Schwarz, Şimal Şeker. Automation of Measurements of A Stepper Motor-driven Optical Monochromator Using Python. Physics and Astronomy Reports. 2025 Dec. 1;3(2):94-9. doi:10.26650/PAR.2025.00010