This Twin Gerwalks design was inspired from Boston Dynamics's Big Dog and our goal was to use this platform to explore motion synchronization issues when there are 2 controllers (CM-5s) for 1 physical robot (see pictures). We are also including 3 WMV files showing synchronized (via ZigBee) walking, turning and going upstairs.
The basic approach for synchronized walking and turning was as follows:
a) Master Gerwalk receives commands from RC-100 and determines what movement both the Master and Slave Gerwalk should take, respectively. When it transmits the next motion to the slave, it then executes its own motion. When it finishes, it expects a confirmation of movement from the Slave as they should have both completed motion simultaneously. If the packet is not received, it will try to reconfirm the motion (but no other corrective action is taken).
b) Slave Gerwalk receives its commands only from the Master Gerwalk. After completing a commanded motion, it transmits a confirmation packet to ensure that it performed the correct motion.
During the going-upstairs project, we realized that RoboPlus only allows 1 instance of the Motion Editor tool in Windows, thus the Motion Editor tool was used on the Master Gerwalk, while a custom bare-bone motion capture tool was developed for the Slave Gerwalk, consisted of 2 components:
a) On the CM-5 side, a TSK program was created and used the various U-D-L-R buttons to do the following tasks:
- Press the UP button to lock the current pose (present position and speed) and transmit it to the PC logger.
- Press the DOWN button to unlock all servos and allow for manual repositioning.
- Press the LEFT button to run Motion Page 1 – “INIT”.
- Press the RIGHT button to receive a pose from the PC logger.
b) On the PC side, a motion logger tool was created using the Robotis ZigBee library as a Windows Console Application.
Just a slight clarification, the PC side data logger used the Windows Zigbee SDK not Embedded C. The newest version of the modified Windows Zigbee SDK (enable a single program to access multiple COM ports/Zig2Serial dongles) was uploaded to http://www.robotis.com/xe/qna_en/22078. I have to say it: "Use at your own risk."