<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Publishing DTD v1.4 20241031//EN"
        "https://jats.nlm.nih.gov/publishing/1.4/JATS-journalpublishing1-4.dtd">
<article  article-type="research-article"        dtd-version="1.4">
            <front>

                <journal-meta>
                                    <journal-id></journal-id>
            <journal-title-group>
                                                                                    <journal-title>Physics and Astronomy Reports</journal-title>
            </journal-title-group>
                                        <issn pub-type="epub">2980-3012</issn>
                                                                                            <publisher>
                    <publisher-name>Istanbul University</publisher-name>
                </publisher>
                    </journal-meta>
                <article-meta>
                                        <article-id pub-id-type="doi">10.26650/PAR.2025.00010</article-id>
                                                                <article-categories>
                                            <subj-group  xml:lang="en">
                                                            <subject>Classical Physics (Other)</subject>
                                                    </subj-group>
                                            <subj-group  xml:lang="tr">
                                                            <subject>Klasik Fizik (Diğer)</subject>
                                                    </subj-group>
                                    </article-categories>
                                                                                                                                                        <title-group>
                                                                                                                        <article-title>Automation of Measurements of A Stepper Motor-driven Optical Monochromator Using Python</article-title>
                                                                                                                                        </title-group>
            
                                                    <contrib-group content-type="authors">
                                                                        <contrib contrib-type="author">
                                                                    <contrib-id contrib-id-type="orcid">
                                        https://orcid.org/0000-0003-4991-9176</contrib-id>
                                                                <name>
                                    <surname>Kröger</surname>
                                    <given-names>Sophie</given-names>
                                </name>
                                                                    <aff>Hochschule für Technik und Wirtschaft Berlin</aff>
                                                            </contrib>
                                                    <contrib contrib-type="author">
                                                                    <contrib-id contrib-id-type="orcid">
                                        https://orcid.org/0009-0008-1274-2382</contrib-id>
                                                                <name>
                                    <surname>Weidner</surname>
                                    <given-names>Christian</given-names>
                                </name>
                                                                    <aff>Hochschule für Technik und Wirtschaft Berlin</aff>
                                                            </contrib>
                                                    <contrib contrib-type="author">
                                                                    <contrib-id contrib-id-type="orcid">
                                        https://orcid.org/0009-0007-6652-2302</contrib-id>
                                                                <name>
                                    <surname>Schwarz</surname>
                                    <given-names>Paul</given-names>
                                </name>
                                                                    <aff>Paul Schwarz</aff>
                                                            </contrib>
                                                    <contrib contrib-type="author">
                                                                    <contrib-id contrib-id-type="orcid">
                                        https://orcid.org/0009-0008-5981-4419</contrib-id>
                                                                <name>
                                    <surname>Şeker</surname>
                                    <given-names>Şimal</given-names>
                                </name>
                                                                    <aff>MIDDLE EAST TECHNICAL UNIVERSITY</aff>
                                                            </contrib>
                                                                                </contrib-group>
                        
                                        <pub-date pub-type="pub" iso-8601-date="20251231">
                    <day>12</day>
                    <month>31</month>
                    <year>2025</year>
                </pub-date>
                                        <volume>3</volume>
                                        <issue>2</issue>
                                        <fpage>94</fpage>
                                        <lpage>99</lpage>
                        
                        <history>
                                    <date date-type="received" iso-8601-date="20251116">
                        <day>11</day>
                        <month>16</month>
                        <year>2025</year>
                    </date>
                                                    <date date-type="accepted" iso-8601-date="20251209">
                        <day>12</day>
                        <month>09</month>
                        <year>2025</year>
                    </date>
                            </history>
                                        <permissions>
                    <copyright-statement>Copyright © 2023, Physics and Astronomy Reports</copyright-statement>
                    <copyright-year>2023</copyright-year>
                    <copyright-holder>Physics and Astronomy Reports</copyright-holder>
                </permissions>
            
                                                                                                <abstract><p>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.</p></abstract>
                                                                                    
            
                                                            <kwd-group>
                                                    <kwd>Spectroscopy</kwd>
                                                    <kwd>  monochromator</kwd>
                                                    <kwd>  python</kwd>
                                                    <kwd>  GUI</kwd>
                                            </kwd-group>
                                                        
                                                                                                                                                    </article-meta>
    </front>
    <back>
                            <ref-list>
                                    <ref id="ref1">
                        <label>1</label>
                        <mixed-citation publication-type="journal">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</mixed-citation>
                    </ref>
                                    <ref id="ref2">
                        <label>2</label>
                        <mixed-citation publication-type="journal">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</mixed-citation>
                    </ref>
                                    <ref id="ref3">
                        <label>3</label>
                        <mixed-citation publication-type="journal">Kronberger H., 1971, Physics Today, 24, 89, https://doi.org/10.1063/1.3022542 google scholar</mixed-citation>
                    </ref>
                                    <ref id="ref4">
                        <label>4</label>
                        <mixed-citation publication-type="journal">Matplotlib Development Team, Matplotlib – Python plotting, 2025, retrieved from https://matplotlib.org/ on 07.07.2025 google scholar</mixed-citation>
                    </ref>
                                    <ref id="ref5">
                        <label>5</label>
                        <mixed-citation publication-type="journal">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</mixed-citation>
                    </ref>
                                    <ref id="ref6">
                        <label>6</label>
                        <mixed-citation publication-type="journal">6wDwuixtaIH2A5un0Yg-Oh1rmqjSa73BiztwD on 07.07.2025 google scholar</mixed-citation>
                    </ref>
                                    <ref id="ref7">
                        <label>7</label>
                        <mixed-citation publication-type="journal">National Instruments, 2025b, NI-DAQTM mx Python Documentation. retrieved from https://nidaqmx-python.readthedocs.io/ on 07.07.2025 google scholar</mixed-citation>
                    </ref>
                                    <ref id="ref8">
                        <label>8</label>
                        <mixed-citation publication-type="journal">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</mixed-citation>
                    </ref>
                                    <ref id="ref9">
                        <label>9</label>
                        <mixed-citation publication-type="journal">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</mixed-citation>
                    </ref>
                                    <ref id="ref10">
                        <label>10</label>
                        <mixed-citation publication-type="journal">Python Software Foundation, 2025e, pyserial — Python Serial Port Extension retrieved from https://pypi.org/project/ pyserial/ on 07.07.2025 google scholar</mixed-citation>
                    </ref>
                                    <ref id="ref11">
                        <label>11</label>
                        <mixed-citation publication-type="journal">Python Software Foundation., 2025a, The Python Language Reference. retrieved from https://docs.python.org/3/ reference/ on 07.07.2025 google scholar</mixed-citation>
                    </ref>
                                    <ref id="ref12">
                        <label>12</label>
                        <mixed-citation publication-type="journal">Python Software Foundation, 2025b, concurrent.futures — Launching parallel tasks. retrieved from https://docs. google scholar</mixed-citation>
                    </ref>
                                    <ref id="ref13">
                        <label>13</label>
                        <mixed-citation publication-type="journal">python.org/3/library/concurrent.futures.html on 07.07.2025 google scholar</mixed-citation>
                    </ref>
                                    <ref id="ref14">
                        <label>14</label>
                        <mixed-citation publication-type="journal">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</mixed-citation>
                    </ref>
                                    <ref id="ref15">
                        <label>15</label>
                        <mixed-citation publication-type="journal">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</mixed-citation>
                    </ref>
                                    <ref id="ref16">
                        <label>16</label>
                        <mixed-citation publication-type="journal">Python Software Foundation, 2025e, pyserial — Python Serial Port Extension retrieved from https://pypi.org/project/ pyserial/ on 07.07.2025 google scholar</mixed-citation>
                    </ref>
                                    <ref id="ref17">
                        <label>17</label>
                        <mixed-citation publication-type="journal">Şeker, Ş., Kröger, S., Schwarz, P., Weidner, C., 2025, GitHub-Repository-Name [Software] https://github.com/sk-HTW/ monochromator_python_code google scholar</mixed-citation>
                    </ref>
                            </ref-list>
                    </back>
    </article>
