Design of Controls Systems Teaching Assistant
Skills Used: ROS, Python, PySerial, PID Control, State Space Control, Hardware Maintenance, PyQt, Arduino
I was a Teaching Assistant for Design of Controls Systems for over a year. I was able to dive deeper into the concepts through teaching them to other students. The main areas of control that we focused on were the following:
Modeling dynamic systems
Transfer Functions
PID Control
State Space control (with an integrator)
Observer based control
Loop shaping and frequency characteristics of systems
Hummingbird GUI
One of my favorite projects that I have worked on for this class is to create a GUI that communicates with the Arduino connected to the hardware used for the class, called a "hummingbird." Previously, the class used ROS to send data back and forth from a PC to communicate updates in gains and reference values. In an effort to remove the need for students to learn ROS and control techniques in one class, I developed this GUI that replaced the ROS implementation. This involved digging deep into serial communication and I created a customizable GUI that is easy and intuitive to use for students (see below). This project also included cleaning up a significant amount of legacy code that was no longer necessary and made it more difficult for students to understand what was taking place in the code.
Also, a part of the job was to perform maintenance and trouble shooting on the hardware. It was not uncommon for a hummingbird to stop working without a lot of detail on why or how. I was responsible for debugging and getting the hummingbird back online so students could complete class assignments.