Katherine grew up on the Big Island and graduated from Hawaii Preparatory Academy in 2016. She is currently going into her senior year at Drew University in New Jersey. She is majoring in Computer Science and minoring in Mathematics. Katherine is a member of both the university’s swimming and golf teams. In her free time, she likes to relax on the beach with friends.

Home Island: Big Island

High School: Hawaii Preparatory Academy

Institution when accepted: Drew University

Akamai Project: Engineering a Low-Level GUI for the Telescope Mount and Coude at DKIST

Project Site: Daniel K. Inouye Solar Telescope – Pukalani, Maui

Mentors: Stephen Guzzo & Keith Cummings

Project Abstract:

The mount system in the solar telescope provides the support and rotation of the mirror assemblies, and the coude helps to de-rotate the light for delivery to the instrument systems. To control the mount and coude, there was already a low-level GUI in existence. However, it ran on a dated version of windows while the rest of the system ran on Linux. In addition, DKIST also did not own the source code and thus could not modify it. Thus it was determined that an entirely new low-level GUI was essential for the continued operation of the telescope. In order to build a new interface, we were able to analyze the existing GUI, and split it into its relevant and extraneous parts. We worked on a centos 7 virtual machine with e(fx)clipse, and started by prototyping the layout of the GUI in javafx. Concurrently, we decided that the best way to connect that javafx interface to the mount and coude systems was to use a socket. This method of connection functions similarly to how a thread connects the two cans in a tin can telephone, enabling one to talk to the other. In order for a client (the GUI) to talk to the server (the mount/coude systems), there needs to be a socket that can plug into the server from the client. Similarly, if the client needs to listen to the server, I need another thread in the opposite direction. A GUI with these traits will allow the system controls engineer at DKIST to receive information from the hardware and actively be able to input commands for the purpose of testing, tuning and maintaining the mount and coude systems.