Papers › An asynchronous object-oriented approach to the automation of the 0.8-meter George...

An asynchronous object-oriented approach to the automation of the 0.8-meter George Mason University campus telescope in Python

3 Jun 2022arXiv:2206.01780links table onlyarchive 2025-07-28

Michael Reefe, Owen Alfaro, Shawn Foster, Peter Plavchan, Nick Pepin, Vedhas Banaji, Monica Vidaurri, Scott Webster, Shreyas Banaji, John Berberian, Michael Bowen, Sudhish Chimaladinne, Kevin Collins, Deven Combs, Kevin Eastridge, Taylor Ellingsen, Mohammed El Mufti, Ian Helm, Mary Jimenez, Kingsley Kim, Natasha Latouf, Patrick Newman, Caitlin Stibbards, David Vermilion, Justin Wittrock

The archive published only this paper's code-link row. Authors, date and abstract are from arXiv's metadata (CC0), read from the Kaggle arXiv metadata snapshot of 2026-09-12 where its title matched the archive's; the title is the archive's.

We present a unique implementation of Python coding in an asynchronous object-oriented programming (OOP) framework to fully automate the process of collecting data with the George Mason University (GMU) Observatory's 0.8-meter telescope. The goal of this project is to perform automated follow-up observations for the Transiting Exoplanet Survey Satellite (TESS) mission, while still allowing for human control, monitoring, and adjustments. Prior to our implementation, the facility was computer-controlled by a human observer through a combination of webcams, TheSkyX, ASCOM Dome, MaxIm DL, and a weather station. We have automated slews and dome movements, CCD exposures, saving FITS images and metadata, initial focusing, guiding on the target, using the ambient temperature to adjust the focus as the telescope cools through the rest of the night, taking calibration images (darks and flats), and monitoring local weather data. The automated weather monitor periodically checks various weather data from multiple sources to automate the decision to close the observatory during adverse conditions. We have organized the OOP code structure in such a way that each hardware device or important higher-level process is categorized as its own object class or "module" with associated attributes and methods, with inherited common methods across modules for code reusability. To allow actions to be performed simultaneously across different modules, we implemented a multithreaded approach where each module is given its own CPU thread on which to operate concurrently with all other threads. After the initial few modules (camera, telescope, dome, data I/O) were developed, further development of the code was carried out in tandem with testing on sky on clear nights. The code, in its current state, has been tested and used for observations on 171 nights, with more planned usage and feature additions.

PaperPDFCode

Code

kakon24/omegalambda officialmentioned in paper report

Repository list and official/mentioned flags are the archive's, frozen 2025-07-28. Reachability, where shown, is from one Syntology probe window (2026-09-16 to 2026-09-18); repositories not probed show nothing. GitHub stars are not tracked.

Code Syntology ran Syntology

Not run by Syntology. Nothing on this page verifies that the listed code works.

Results from the paper archive 2025-07-28

No leaderboard rows for this paper in the archive.

Report a problem or propose a change · a person checks every report against the paper or source before anything changes; decisions are listed on /corrections