It was a frenzied typing session yesterday, as I thanked all of my experience for preparing me to write thoughtful reports. The Image Processing program that I had been working on for the past three days was finally complete, and after the previous night’s roundtable discussion, everything was set in order. We had tested out some of the simpler ideas, hypothesized further conditions, and worked on increasing the accuracy of the current system. All we needed now were some additional test images, and we would be done!
I set out to make a composite document of everything that I had learned over the past three days, from the mathematics of the system, to the logic behind why this image processing algorithm worked, to the direct details of what this project could be used for in the future. The final result was a lengthy and complete 18-page report, with pictures, appendices and references. It was furious typing in a mostly empty office, clattering away to get all my thoughts on paper. With notes, textbooks, and code documents spread out around me, I was simply having a blast. As the day went on, we even had a chance to test the algorithm against some truly horrible images, and the results were astounding. Where there were nasty streaks all across the image, we were finally able to see a clear shape near the atom cloud.
But after finishing my project, everything suddenly started slowing down. The main thing that I’ve built up my knowledge around, the image processing algorithm, was complete! Essentially, I had programmed myself out of a job – or so I thought at first. But Yaxiong helped me find other people in the lab who I could speak with, namely another student who was working on Control Theory with a specific feedback loop that the lab was testing. So, just like the first day of my internship, I cleared off the junk on my desk, got the reference documents out along with a fresh page of notebook paper, and got cracking.
Control theory is a whole lot more difficult than image processing or even understanding the experiment, because instead of big picture ideas, you really need to become an expert in the mathematical models of how individual electrical components worked. For instance, I started off trying to figure out what an IGBT was, and then figuring out what a BT was, and then learning about how a transformer works (not the robot, although equally interesting) and then understanding the PID algorithm, and then … and then…
In specialized fields like Control Theory, everything seems like a rabbit hole – it is incredibly difficult to find a place to get started. Especially without a specialized teacher around, it was hard to just “dive in” to a textbook and really understand things. I did the best I could, and reminded myself repeatedly that I was primarily here at USTC to learn what life as a researcher is like. Being a programmer is rather exciting because you get to immediately test out the things you are working with. Being a theoretical researcher is harder because there isn’t an immediate feedback loop (hehe) for figuring out your own mistakes. It means having an iron will of discipline and a strong motivation to always be moving forwards.
I persisted, and around 9pm, I went over to the grad student and asked him a couple of the specific questions that I had about the PID system. I was confused because the textbook I was reading stated that the PID system had built in tuning software that could be used to minimize disturbances; couldn’t we just use those? His response helped reaffirm some of the knowledge I already knew – yes, the K_D could be very small because we had very small disturbances – but also gave me quite a surprise. The specific problem that he was working on did not really need any configuration of the PID variables at all – they were all already as precise as possible. He was instead working on another electrical component that could help raise the bandwidth of the system to reach higher precisions, which involved much more complicated arrangements of capacitors that neither he nor anyone else in the lab understood.
Again, I was a bit crushed. I spent so much time learning, and it looks like I wouldn’t be able to apply it! But reflecting now, I’m very glad that I was assigned to this project. It taught me something new within physics that I had never thought about, the feedback control for autonomous systems, and gave me an opportunity to explore electrical components on a level that I had never previously done before. Even though it was not immediate like with the programming project, it was an opportunity to discover something new. And I am happy for that.
Today, I believe that I will speak to Professor Zhao about learning something else – currently, the PID route seems dry as I don’t have the background to continue learning more. But in any case, the new day awaits – and regardless of what happens, it will be great :)