A long time ago, at the beginning of this story, I was an MS student in Mechanical Engineering. I had gotten a job as a Teaching Assistant for a class called “Mechatronics” (a class focused on the intersection between mechanical and electrical fields). My job as a TA was to lead the lab sessions and help students with their final projects, which involved applying feedback control to some mechatronic system of the students’ own design.
Now, in academia a TA is kind of like a bartender or a barber, in that students will tell things to their TA that they would NEVER admit to the professor. As we were nearing the end of the semester and the final projects were looming, a student approached me sheepishly as if to ask a question and said hesitatingly, “Can I be totally honest with you? I have no idea what 'feedback control' is.” The other students in the class overheard, and expressed some relief in admitting that they had the same difficulty.
This was somewhat surprising, since one of the prerequisites for the mechatronics course was another course titled ‘Feedback Control’. All of the students in Mechatronics had passed this course, and many of them had done very well. However, in another sense this admission was not surprising at all, since I myself had experienced the exact same thing when I took the class. I had taken feedback control and done well, and I also finished the course with basically no idea what feedback control was. What could be going wrong in our education to allow something like this to happen?
Now, by the time I became a TA for mechatronics, I had a decent grasp of feedback control, well enough that I could at least communicate the idea to my own students. What had changed for me in the interim? How had I learned feedback control, if not in Feedback Control class? I realized that I had learned the subject not during class, but during my research activities: I learned the subject only when I used it, when I needed it to solve real problems.
Years passed and I graduated with an MS degree, then more years passed and I graduated with a PhD in Mechanical Engineering, then more years passed and I became an Engineering professor teaching robotics at Arizona State University. I had thoroughly forgotten all I had learned as a TA until I was teaching Inverse Kinematics to a bunch of very sleepy students. At the end of my lecture, I asked if there were any questions, and one student raised a hand. I called on the student, excited that someone had been listening to me. “Can you just show us exactly what one of these problems will look like on the test?” The student asked. Inside, I collapsed with dismay and disillusionment. My class had become Feedback Control class all over again. These students weren’t learning at all, they were just memorizing what they think I want them to say. They will do well in the class, and never be able to apply anything I taught to solve any kind of real problem.
I decided then and there, that I need to change my ways. If these students are going to become successful robotics engineers, they can’t just memorize this stuff, they need to grok* it. I thought back to my experience in Mechatronics so many years ago. How did I finally learn the concept of Feedback Control? I used it to solve real problems. I learned it when I needed it, with my hands on real machines and making things work. I realized that these students will never grok robotics by writing equations on a piece of paper, by watching my PowerPoint slides. They need to be building robots from scratch, taking them apart, making mistakes and fixing them, using the theory to make them work.
And so began my 5-year journey to build RoboGrok. I began bringing parts to class, creating lab experiments, projects, and demonstrations. Some things I tried worked, and some didn’t. I tried, and revised, and tried again. I filtered through student feedback and examined test results. I talked with the students and listened to their questions, constantly revising my methods, and finally created the classes and the parts kit posted here.
Don't be misled: this ain't no Lego robotics. There is math, and motors, and circuits, and programming, and troubleshooting, and blood and sweat and tears (well, maybe two of those three). But, in the end you will stand apart from the rest in the depth of your knowledge, understanding, and ability to design and build actual robots from the ground up. It will be an edventure (yes, I said EDVENTURE), and you will have fun. You will truly grok robotics.
* Grok - From the 1961 Robert Heinlein novel Stranger in a Strange Land. To internalize, to drink deeply, to thoroughly grasp.