Getting a Running Start
Phase 1: Damn Yankee Usability
Sprint 1, October 11–25
This sprint was the official start of our five-year project. We spent the first few weeks of the semester making sure we had an established plan for this year, and October 11th was the official kickoff. We really wanted to dive into our work to see what we could accomplish in two weeks. Our hope was that this sprint would provide us with a solid foundation off of which to launch the rest of the semester, during which we’ll be refurbishing Damn Yankee so that Software can have a boat to work with when Mechanical begins designing and building the next boat.
The mechanical subteam worked on moving the old boat, Damn Yankee, into as usable a state as possible. This meant first taking stock of the initial state of the boat by finding parts, finding CAD, and generally assessing the boat’s physical condition. Once they did this, they realized there were a few major tasks to tackle. First, the rigging had to be cleaned up significantly. Many lines were severely tangled and/or attached to makeshift attachment points. The mechanical team fixed the lines and made the sheets generally ready to be attached to the servos. Second, they noticed that they couldn’t find one of the hatches, so the boat had a gaping hole in the top. The team chose to laser cut a new acrylic hatch to replace the old one. The mechanical subteam did not accomplish quite as much as they wanted to, and the driving factor behind this was ambiguity in what needed to be done. Some ambiguity was inevitable, given that the team did not know what to expect from the boat assessment. There was also some ambiguity caused by a lack of communication. However, they are now much more prepared to move forward as they have a much better grasp on what tasks need to be done and how they are going to do them.
The software subteam performed double-duty and also worked as the electrical subteam this sprint. The first task for this subteam was to get some old Dynamixel MX-64 motors working. The last time OARS used these motors, we were using TI’s LabView equipment. Since we are now using ROS and Python, our software subteam had to start from scratch to get them to work. Once the motors were working with Robotis’ Dynamixel Wizard software, they discovered that both of the MX-64s only worked in one direction — one clockwise and the other counterclockwise. Through troubleshooting, they discovered some MOSFETs on the motors were blown. Replacing the chips fixed the problem (save a low voltage error), and then all that was left was controlling the motors with a Python program. The software team found a Dynamixel library that worked with the AX-12 rudder motor, and they were able to modify that to support the MX-64S to a degree as well. Software also developed a Python module capable of capturing RC commands received by the Spektrum USB receiver and normalizing the joystick ranges.
In our sprint review, we realized that we did a lot of good work, but were perhaps a little less focused than we could have been. We needed a bit more direction and intentionality, so we spent a good portion of our October 25th meeting on sprint planning. The mechanical subteam is now entirely focused on getting the boat fully operational within this next sprint, ideally with enough time to also do testing. A lot of this work is integration-related as they have to mount electronics and interface them with the physical mechanisms of the boat. Mechanical also plans to continue laying the groundwork for future improvements by cataloguing and updating the existing CAD for the boat so they can use it in the future. Software is in the process of wrapping up the Dynamixel revival and integration with the RC controller. Once that is finished, they will be focusing their efforts on learning ROS in the context of controlling Neato robot vacuums. This will hopefully prove to be a decent platform for early development of sailing algorithms, as the team will be able to easily control motion in simulated wind conditions. This will also require interfacing with an IMU (for heading) and learning how to effectively send sensor reading messages around using ROS. Electrical will be primarily focused on reinstalling the Dynamixels and ODROID computers in Damn Yankee in a waterproof fashion.
~ Diego Alvarez (Mechanical lead), Celina Bekins (Logistics co-lead), Kyle Combes (Software lead), Zack Davenport (Logistics co-lead)