November 10, 2012
Class : Intelligent Servos and Walking Robots, by Prof. Mason
Martin stated at the beginning that this talk would be about his journey over the last 2 years since his previous walking robot talk at RSSC.
He began with a review of traditional servos that use a comparator, and compared that to "modern" closed loop servos that use a microprocessor, which allows monitoring of torque, current, temperature, position, velocity, and compliance, as well as chaining of servos on an addressed serial bus. Examples are the Robotis AX-12 and Hi-Tec 645.
He then moved on to microcontroller selection. He covered the "previous generation" 8-bit microcontroller vs. the current generation of ARM chips. Things to consider when choosing a microcontroller are library support, IDE, peripherals (USB, CAN, I2C, SPI, Analog, Serial, Ehternet), processing power, package (DIP, QFP, BGA), etc.
Regarding IDE's, 8-bit micros have AVR Studio, which is complex but can do complex behavior, and the Arduino IDE (Arduino, Energia, Maple, ChipKit, Robotis CM900), which is simple but cannot do complex tasks. ARM has a FREE Eclipse based IDE called Yagarto that uses the Gnu C toolchain.
Moving on to the walking portion... on an 8-bit micro, inverse kinematics is too expensive to calculate positions for a 6-DOF leg. Therefore, it is simplified to a 2-link system for the basic leg, and all positions are calculated on a grid and obtained from a lookup table. The hip and twist can be made as adjustments to the position from the lookup table. For a dynamic gait, an elliptical foot trajectory is used for foot position, and the angles are then obtained from the lookup table. He then demonstrated how center of mass can effect the gait. There is tilt, and horizontal / vertical translation for the center of mass, which is mostly used for adjusting forward and reverse gaits. There is also "swing" that shifts the center of mass from one leg to another as the robot walks. To improve the gait, to prevent falling as well as adjust it dynamically for different inclies and surfaces, a gyro can be used to determine stability of the head, and servo torque at the foot can determine when the foot is touching a surface. Using all these parameters, Martin showed some videos after optimizing gait parameters with a machine learning approach.
When looking at all of these options, Martin is now moving to the ARM architecture, and hopes to be able to make much more sophisticated optimizations to the walking given the huge gains in computing power.
Here's a link to Martin's presentation : (1.9MB Zip file)
Business Meeting
Announcements
December Meeting
- In the December meeting we will be having officer elections. Prepare your speeches!
- We will have a group lunch. Walter will buy some pizza out of the current treasury funds.
- Talent contest : It was voted to obtain some trophies for top 3 places out of the current treasury funds.
Upcoming Classes (11:00 – 12:00)
Month | Class | Presenter |
December 8 | EZ Robot | Thomas |
January 12 | Dynamixel ARM Board | Martin / Jinux |
February 9 | ROS Launch Files | Doug |
March 9 | Interfacing Arduino with Hardware | Bill |
Upcoming Competitions:
December - Annual Robot Talent Contest
January 2013 - Sumo robot contest
February 2013 - Fire fighting robot contest
March 2013 - Pick up a can contest
June 2013 - Hallway Contest
Show and Tell
Jinux
Jinux from Bioloid showed some humanoids and a hexapod based on Bioloid kits. We even got our own demo of Robotis Gangnam Style! (I'm linking the video Jinux showed us, since I don't want copyright complaints on my personal YouTube account.)
Sergei
Sergei gave a quick overview of his TrackRoamer robot, which is based on Microsoft Robotics Developer Studio. (http://trackroamer.com)
MRDS consists of a concurrency runtime, software services, and tools, has 3D modeling and simulation capabilities, and is based on C# / Visual Studio. (See http://www.microsoft.com/robotics/)
Similar to ROS there is a publisher / subscriber communication model. There are several layers of logic, such as bricks (sensors and actuators), essential services (such as differential drive system), behaviors (describes interactions, such as approaching a person, or communicating), and helper/subject libraries (SLAM, etc.). Similar to the ROS Turtlebot, the Parallax Eddie is the MRDS Reference Platform.
You can see Sergei's slides here (He reviewed a subset of these slides, mostly P. 12 and P. 56-73) (24MB file) : http://trackroamer.com/Download/Trackroamer%20Presentation.pptx
John
John presented his update to the IWAH. He removed the solar panel (that he had previously added) connected to the battery and reconnected the LED. He also added an SD card with documentation. [IWAH Link - http://rssc.org/iwah]
Ron
Ron talked a little more about the navigation system that he had previously presented. There was some discussion about using an ultrasonic detector for intra-robot communication, or in this case as a beacon to help in the navigation system.