It’s been a while since I got back from NASA, but I’ve finally ran into some time that I’m willing to use to explain what I did over the summer.
At NASA, I worked in the Contact Dynamics Simulation Laboratory. The purpose of this lab was to take mock-ups of objects that will be going into space and simulate the way they interact with some sort of docking mechanism as they come in to contact. To do this, the lab uses a giant Stewart Platform. This is a huge six-legged robot that moves a large platform in six degrees of freedom(up, down, left, right, roll, pitch, yaw).
When we first arrived at Marshall, we didn’t really know what we were going to do. Fortunately for us, we were placed under the care of a great guy name Drew Hall(and subsequently a man named Pat Tobey) who gave us all kinds of information including a list of things they wanted to get done in the next few years. We looked over this work, and decided a good way to both contribute to the lab, and give us a sufficient amount of work to do over the summer would be a closed form solution to the forward kinematics of the platform.
Kinematics for any type of actuator is a fundamental problem. For serial devices, like robotic arms, the forward kinematics is simple(calculating where the end of the arm is based on the input to the joints) and the inverse kinematics is difficult(finding the position of the joins when the end of the arm is at some defined point). For parallel devices, like the steward platform we worked with over the summer, it’s the opposite. So about five weeks into our summer(we have 10 weeks total to finish) we get a preliminary solution working. Over the next few weeks we work out numerous bugs, and I start doing developing a GUI and the groundwork needed to animate the solutions once we find them. I spent about a week researching the viability of converting the MATLAB code to C++, but after running in to some major issues regarding the amount of ram needed to generate some of the polynomials, I abandoned the idea and worked on finishing the code.
At the end of the ninth week, we finished all the code and got a chance to do presentations for the other NASA summer faculty, the Contact Dynamics lab, and the adjacent Flight Robotics lab. Having working code, the presentations were a lot of fun for me to do. For the presentations, Dr. Kumagai would go over the facilities and overview of our project and I got to get up and go over the technical detail of our solutions. For the presentation given to the Flight Robotics lab, we were lucky enough to have a NASA engineer there that had actually tried to develop a closed form solution for a stewart platform several years ago, but was unable to get it working. So it was really interesting to talk about the problems she had with the solution, and how we got around them(plus the computers we were using were significantly better than what she had to work with, which was another reason she was unable to get her solution working).
Overall, it was a fantastic experience. Dr. Kumagai was a great person to work with(and just hang around with) the whole summer, and was not just a teacher, but a friend and peer to me the whole time.