RF cavity cleaning arm
Build summary
Superconducting RF cavities have to be cleaned on the inside, which is very difficult to reach by hand. I spent a summer at Fermilab working on the arm built to do that, writing the C++ motion firmware that drove the stepper axes and co-writing the graphical user interface. The GUI allows the operator to jog the machine in any axis and by any increment, so whoever is running the arm can position it without needing to know how the firmware works. Since we were unable to experiment freely on the real hardware, I needed to write and document the code well enough that it could be changed day-of.