Journal:OptiGUI DataCollector: A graphical user interface for automating the data collecting process in optical and photonics labs
Full article title | OptiGUI DataCollector: A graphical user interface for automating the data collecting process in optical and photonics labs |
---|---|
Journal | SoftwareX |
Author(s) | Soto-Perdomo, Juan; Morales-Guerra, Juan; Arango, Juan D.; Villada, Sebastian M.; Torres, Pedro; Reyes-Vera, Erick |
Author affiliation(s) | Instituto Tecnológico Metropolitano, Universidad Nacional de Colombia |
Primary contact | Email: juansoto319998 at correo dot itm dot edu dot co |
Year published | 2023 |
Volume and issue | 24 |
Article # | 101521 |
DOI | 10.1016/j.softx.2023.101521 |
ISSN | 2352-7110 |
Distribution license | Creative Commons Attribution 4.0 International |
Website | https://www.sciencedirect.com/science/article/pii/S2352711023002170 |
Download | https://www.sciencedirect.com/science/article/pii/S2352711023002170/pdfft (PDF) |
This article should be considered a work in progress and incomplete. Consider this article incomplete until this notice is removed. |
Abstract
OptiGUI DataCollector is a Python 3.8-based graphical user interface (GUI) that facilitates automated data collection in optics and photonics research and development equipment. It provides an intuitive and easy-to-use platform for controlling a wide range of optical instruments, including spectrometers and lasers. OptiGUI DataCollector is a flexible and modular framework that enables simple integration with different types of devices. It simplifies experimental workflow and reduces human error by automating parameter control, data acquisition, and analysis. OptiGUI DataCollector is currently focused on optical mode conversion utilizing fiber optic technologies but can be expanded to other research and development (R&D) processes.
Keywords: laboratory automation, device integration, software framework, graphical user interface, optical fiber, optical mode conversion
Motivation and significance
Experiments in today's scientific research are becoming increasingly complicated and involve several hardware devices that work together in a coordinated manner. These experiments can contain a variety of instruments such as sensors, analyzers, detectors, and actuators, each of which has a specific purpose in the experiment. [1–9] Efficiently controlling these experiments demands software that can effectively coordinate the functioning of these devices, not only by delivering orders but also by ensuring accurate data collection and control of experimental conditions. [10–13] The software must be able to handle the communication protocols and data formats of many devices, as well as manage potential conflicts or dependencies between them.
In addition to accurate management, fast data processing and visualization are critical for effective data interpretation. Because experiments create significant amounts of real-time data, the software must be able to process the data rapidly and efficiently. This may include data filtering, standardization, analysis, and visualization to obtain useful insights from the experiment. Real-time data visualization can also provide researchers with quick feedback, allowing them to make informed decisions and modify experimental conditions as needed.
Each experiment requires a unique combination of hardware devices depending on the specific needs of the research. [10–15] Two studies discussed in this passage highlight the development of software interfaces for fiber optic devices. In the first study, Labat [14] created a graphical user interface (GUI) in Matlab that allows for remote control, data acquisition, and data visualization from optical spectrum analyzers. The GUI was implemented to analyze the transmission spectrum of long-period fiber gratings (LPFGs), with various parameters such as operating wavelength and center settings. In the second study, Harun et al. [15] developed an automated system in LabVIEW for self-calibration and measurement of fiber optic devices such as sensors and Erbium Doped Fiber Amplifiers (EDFAs). Their system allows for up to an 80% reduction in data acquisition time while providing precise and consistent measurements with a low uncertainty value of ±0.012 dB.
Based on the above, this work has developed a computerized instrumentation system that allows constant monitoring, processing, and data collection of research and development (R&D) equipment; therefore, we propose an object-oriented GUI capable of executing the tasks dynamically without having to incur system modifications that may disturb the measurements. The purpose of executing various tasks requires employing reliable models to optimize the functions of each of the instruments, allowing the efficient use of the R&D personnel is working time, as well as providing a user-friendly interface to facilitate the manipulation of the instruments. With object-oriented programming, the problem to be solved is modeled through a series of interactions between the optical equipment, reusing lines of code through inheritance, and the implementation of polymorphism.
Software description
Code metadata
- Current code version: v1.0
- Permanent link to code/repository used for this code version: https://github.com/ElsevierSoftwareX/SOFTX-D-23-00293
- Code Ocean compute capsule: none
- Legal Code License: GNU (GPL)
- Code versioning system used: Git
- Software code languages, tools, and services used: Python 3.8, LabView
- Compilation requirements, operating environments & dependencies: See User Manual in GitHub repository
- If available Link to developer documentation/manual: See User Manual in GitHub repository
- Support email for questions: juansoto319998 at correo dot itm dot edu dot co
References
Notes
This presentation is faithful to the original, with only a few minor changes to presentation. In some cases important information was missing from the references, and that information was added.