Distributed Smart Solar Charge Controller for UVA Solar Car; SeeBoard: A Virtual Keyboard for the Motor-Impaired; AI’s Effects on Software Engineering Jobs

Author: ORCID icon orcid.org/0009-0005-2549-3926
Ermovick, Ethan, School of Engineering and Applied Science, University of Virginia
Advisors:
Earle, Joshua, EN-Engineering and Society, University of Virginia
Tao, Gang, EN-Elec & Comp Engr Dept, University of Virginia
Zhang, Miaomiao, EN-Elec & Comp Engr Dept, University of Virginia
Abstract:

My Computer Engineering technical project was a Distributed Smart Solar Charge Controller (D.S.S.C.C.). The controller optimizes the power output of the UVA Solar Car Team’s solar panels during a race under variable light exposure conditions. It does so by adjusting the voltage and current outputs of each solar panel depending on those variable conditions. Our project was a scaled down version of what the Solar Car team needs. We used three solar panels and a smaller battery than those used in the Solar Car, so this project was a proof of concept that will be easy to replicate and scale up for the Solar Car Team’s needs. The overall goal of our project was to prove that our smart distributed MPPT system is more efficient and cost-effective than Solar Car’s current model and to write thorough documentation so that our design can be replicated.
My Computer Science technical project was SeeBoard, a program to help those with motor impairments use computers. People with motor impairments that cause tremors may have difficulty operating standard computer inputs (e.g., mice and keyboards). I created a different method for these individuals to interact with a computer. SeeBoard is an application that allows users to control a computer with hand gestures. SeeBoard uses a webcam to detect the user’s hand movements and translate them into virtual key presses and mouse movements. SeeBoard can not only be used to interact with a computer effectively but may also help with extraneous motion caused by tremors. Future work includes further improvements to the motion damping algorithm to further reduce tremors, as well as elimination of small glitches during application use.
My STS project was on the effects of AI on software engineering jobs. AI is a relatively recent technology that is reshaping the lives of many people in the US and across the world. One field that AI has the potential to change is Software Engineering. In this paper, I explore AI and software engineering to answer the question, “How is AI affecting jobs in software engineering?”. More specifically, we will examine whether AI is replacing or supplementing human software engineers, and how the trends today might answer this question tomorrow.
Both of my technical projects involved significant software engineering work. For the solar charge controller, we had to program the microcontroller we used in the system. For SeeBoard, we had to write code to detect the user’s hand motions, and to make the computer respond to them. My STS paper explores how software tasks like this can and are currently being assisted by AI, and how AI might be used to do similar tasks in the future. AI is already capable of writing code, and it may even be capable of programming a solar charge controller or designing a hand gesture recognition system.

Degree:
BS (Bachelor of Science)
Keywords:
AI, Software Engineering, Solar Charge Controller, MPPT, Virtual Keyboard, Computer Vision
Notes:

School of Engineering and Applied Science

Bachelor of Science in Computer Engineering

Technical Advisor: Adam Barnes

STS Advisor: Joshua Earle

Technical Team Members: Gabriel Gladstone, Kate Renner, Kyle Clemente, Eizaku Asai

Language:
English
Issued Date:
2025/05/06