DARwInís evolution: Development of a humanoid robot for research and education
The Dynamic Anthropomorphic Robot with Intelligence (DARwIn) series robot is a family of humanoid robots capable of bipedal walking and performing human-like motions. Developed at the Robotics & Mechanisms Laboratory (RoMeLa) at Virginia Tech, DARwIn is a research platform for studying robot locomotion that served as the base platform for Virginia Tech's first entry to the humanoid division of 2007 RoboCup, an international autonomous robot soccer competition.
The 600 mm tall, 4 Kg robot (the latest version of DARwIn) has 21 degrees of freedom with each joint actuated by a coreless DC motor via distributed control with controllable compliance. Using a computer vision system on the head, Inertial Measurement Unit (IMU) in the torso, and multiple force sensors on the foot, DARwIn can implement human-like gaits while navigating obstacles and will be able to traverse uneven terrain while implementing complex behaviors such as playing soccer.
DARwIn family album
Starting with the first version, DARwIn 0 (Figure 1), a feasibility study to investigate the possibility of designing and fabricating a small scale humanoid robot that could walk with two legs, the DARwIn series robots have evolved from a concept to a sophisticated robot research platform through multiple updated versions.
From the success of DARwIn 0, the focus in developing its successor, DARwIn I (Figure 2), was a design study that investigated how to create a humanoid robot with human proportions, range of motion, and kinematic configurations.
The next version, DARwIn IIa (Figure 3), built on the name "humanoid" by adding sensors and intelligence to enable autonomous operation.
DARwIn IIb (Figure 4) improved on its predecessor by adding more powerful actuators and modular computing components.
Finally, DARwIn III is currently being designed to take the best of all the designs and incorporate the robot's most advanced motion control yet. The next step is to develop an affordable, low-cost version with emphasis on ease of manufacturing so that the robotics community can use it as an open humanoid robot platform for education and research.
Static versus dynamic gaits: How DARwIn is a dynamic robot
With a few exceptions, such as Honda ASIMO, Sony QRIO, and KAIST HUBO[2-6], most legged robots today walk using what is called the static stability criterion. The static stability criterion is an approach to prevent the robot from falling down by keeping its center of mass over the support polygon by adjusting the position of its links and pose of its body very slowly to minimize dynamic effects. Thus, at any given instant in the walk, the robot could "pause" and not fall over.
Static stability walking is generally energy inefficient since the robot must constantly adjust its pose in such a way to keep its center of mass over its support polygon, which generally requires large torques at the joint actuators, similar to a human standing still with one foot off the ground and the other supporting leg's knee bent.
Humans naturally walk dynamically with their center of mass almost always outside the support polygon. Thus, human walking can be considered as a cycle of continuously falling and catching the fall: a cycle of exchanging potential energy and kinetic energy of the system, like the motion of a pendulum. We fall forward and catch ourselves with our swinging foot while continuing to walk forward. This falling motion allows for our center of mass to continually move forward, not expending energy to stop the momentum. The lowered potential energy from this forward motion is then increased again by the lifting motion of the supporting leg.
One natural question that arises when examining dynamic walking is how to classify gait stability. Dynamic stability is commonly measured using the Zero Moment Point (ZMP), which is defined as "the point where the influence of all forces acting on the mechanism can be replaced by one single force" without a moment term. If this point remains in the support polygon, then the robot can apply some force or torque to the ground, which in turn means the robot can have some control over its motion (the system). Once the ZMP moves to the edge of the foot, the robot is unstable and cannot recover without extending the support polygon (planting another foot or arm).
Parameterized gaits can be optimized using the ZMP as a stability criterion. Stable hyperbolic gaits can be generated by solving the ZMP equation for a path of the center of mass. Additionally, the ZMP can be measured directly or estimated during walking to give the robot feedback to correct and control walking. DARwIn is developed and being used for research on such dynamic gaits and control strategies for stability[2,9].
The first attempt to develop a humanoid robot, DARwIn 0, was based on a prototype humanoid robot kit made by Korean company Robotis. Rather than using the canned motion controllers and electronics the kit provided, the RoMeLa team created its own motion generation software and controllers for DARwIn 0 to determine if it could make a humanoid robot that could walk with two legs. Although a success in proving feasibility, DARwIn 0 did not meet all the requirements needed as a research platform for studying humanoid walking and motions due to its kinematic configuration, which was quite different from an actual human's.
The development of DARwIn I focused on the design for anthropomorphization. Since the results of testing and experimentation using DARwIn would be compared with actual human data, it was necessary to design the robot to physically mimic a human as closely as possible. Using human proportion data, DARwIn I's links were designed to be proportionate to its height and its joints designed to follow an average male human's range of motion. Many humanoid robots being developed at research labs today or marketed as hobbyist toys are often made just to "look" like a human. However, the RoMeLa team took great care to design DARwIn I's proportions to be nearly identical to that of a human's.
Not only is DARwIn I scaled in dimensions similarly, its primary joints are kinematically equivalent to human joints. Humans have ball and socket joints at the shoulders and hips, allowing three axes of rotation about a single point (Figure 5). Though DARwIn does not have a ball and socket joint, it achieves the identical kinematics with three motors' axes of rotation intersecting at a single point, making it equivalent to a ball and socket joint. Not only does this make the kinematic configuration closer to a human's, it also simplifies the mathematics involved in controlling and creating the robot's motion.
DARwIn I has 21 degrees of freedom (6 in each leg, 4 in each arm, 1 in the waist), 4 force sensors on each feet, a 3-axis rate gyro, a 3-axis accelerometer, and space to house a computer and batteries for powering the motors, sensors, and computing equipment. DARwIn I's links are fabricated out of bent sheet aluminum. The robot uses Robotis' Dynamixel DX-117 motors for the joints and Flexiforce force sensors in the feet. The motors operate on a serial RS-485 network, allowing the motors to be daisy-chained together. Each motor has its own built-in potentiometer and position feedback controller, creating distributed control.
DARwIn IIa builds on its predecessors with improved mechanical design, more sensors, and added intelligence. Control of the robot's motion for stability, especially for bipedal walking, often requires precise knowledge of link locations and movement. By making the robot's links as stiff as possible, there is less error in the system. If a link in the ankle flexed just 1 or 2 degrees, the upper body would sway as much as 30 mm. Analyzing the link design using finite element analysis and a Computer Numerical Control (CNC) machine to mill out the links from solid blocks of aluminum maximized the stiffness of DARwIn's links and minimized weight.
The DARwIn IIb design is based on the DARwIn IIa design, but with slight improvements in all categories. The motors used for articulating DARwIn's joints were replaced with a motor with twice the torque. DARwIn's link design was further refined to create even lighter weight parts. The entire computer, sensors, electronics package, and computer ports were mounted to a custom-designed heat sink as a single module. This module is attached to the robot body using shock mounts, allowing easy access and removal while protecting the equipment from shock when falling.
DARwIn IIa/b's electronics architecture overview
In addition to its improved mechanical design, DARwIn IIa/b also has added intelligence to meet research demands and allow it to perform higher-level tasks, like playing soccer autonomously. DARwIn IIa/b's electronics provide power management, a computing architecture, and a sensing scheme aimed at providing information on salient environmental features.
DARwIn's power is provided by two 8.2 V (nominal) lithium polymer batteries, usually attached to the lower body (legs or feet) to keep the robot's center of gravity below its waist. These batteries provide 2.1 Ah, which gives DARwIn a little more than 15 minutes of runtime. The power circuit provides 3.3 V, 5 V, and 12 V for the various digital electronics within DARwIn. However, the joint actuators, Robotis Dynamixel motors, are run directly off battery power, which drops from 16.4 V to 14.8 V during runtime. In addition to providing power to DARwIn's main systems, the power electronics allow for an external power connection and a seamless switch between power sources. Additionally, this circuit prevents reverse polarity, over-voltage, over-current, and under-voltage conditions from damaging the computing, sensing, and actuation components.
DARwIn's computing architecture is set up to use a centralized control scheme, which is run on a PC/104-Plus computer with a 1.4 GHz Pentium M processor, 1 GB of RAM, CompactFlash drive for storage, IEEE 1394 card, serial communication, USB, Ethernet, and IEEE 802.11 for wireless communication. DARwIn also has two IEEE 1394 (FireWire) cameras and a 6-axis rate gyro/accelerometer (IMU) for vision and localization. The cameras capture 15 frames per second at 640 x 480 resolution and 30 frames per second at 320 x 240 resolution RGB. The cameras are attached to a pan and tilt unit, which allows the robot to look at its surroundings. Two lithium polymer batteries in the feet allow the robot to be powered autonomously.
This sophisticated computing platform programmed using LabVIEW Real-Time combined with an improved mechanical design makes DARwIn IIa stand apart from DARwIn I and helped qualify DARwIn as the first and only U.S. team for the humanoid division of RoboCup 2007.
Inside DARwIn's brain: software architecture
For higher-level behaviors such as playing autonomous soccer, both versions of DARwIn II use a similar software architecture, which is reactive behavior-based control. Reactive-based control has the distinct advantage of being simple and robust. Figure 6 shows the flow diagram for the entire control algorithm used for RoboCup 2007. The sensor data is processed to meaningful information, which gives the robot ball position, goal position, opponent positions, and orientation. The behavior modules use this information to dictate their respective actions. The motion control module uses orientation information to correct and stabilize the bipedal walking gait.
Each behavior module's result is sent to the integrator, which decides the most appropriate behavior to implement in a given situation. For example, three behaviors may be "kick the ball," "reposition," and "avoid obstacles." If there are no obstacles (or opponent robots) nearby, the integrator will more likely choose to reposition the robot for a better kick. However, if an opponent is nearby, the integrator will "skip" repositioning and move straight to kicking the ball.
Once the integrator decides what the robot should do, the result is sent to the motion generator as a team message for other teammates to read in order to coordinate team play. The motion generator creates the necessary motion for the motion control based on the integrator's result.
DARwIn III will use a world model to dictate its behavior. A world model is a completely known virtual model of the environment with the states of the model updated from sensor inputs. A world model allows for planning, which reactive behavior does not, and leads to more efficient behaviors.
The latest version: DARwIn III
DARwIn III looks to further improve on the successful designs of the previous versions. Due to the need for finer control of DARwIn's walking gaits and increased processing power for a robust vision system, a microcontroller will be introduced in DARwIn III's design to handle all aspects of gait generation, leaving the PC/104-Plus computer to run the behavior and vision routines.
The microcontroller uses the ARM9 architecture, picked because of its wide use in consumer products as well as hobbyists' and the educational community's familiarity with the architecture. Thus, in its current implementation, the PC/104-Plus board will only send higher-level gait commands to the microcontroller to command the robot to move in a specific way (direction, speed, gait type, pose, and so on). The PC/104-Plus board and the microcontroller communicate with one another over an RS-232 network, with the microcontroller communicating over an RS-485 network with the Robotis Dynamixel motors.
The current PC/104-Plus 1.4 GHz board will be replaced with a Core 2 Duo PC/104-Plus board running at approximately 2 GHz. This new board will allow the RoMeLa team to finish developing their vision – behavior and walking gate algorithms on a computing platform using LabVIEW Real-Time. The team also will investigate other software architectures such as Microsoft Robotics Studio. Additionally, an online walking gate generator will be implemented on the ARM9 microcontroller.
The final implementation of DARwIn's electronics package calls for a large reduction in weight, power consumption, and size while increasing performance. To this end, the PC/104-Plus Core 2 Duo will be exchanged with the old PC/104-Plus 1.4 GHz Pentium M and FPGAs added for each system, such as behavior and vision. Switching to the original computer provides a lower-power computing platform and enables DARwIn to easily interface with existing computer technology as well as run higher-level code and GUIs an end user may need. The FPGAs will provide the needed performance boost by allowing multiple systems, such as walking, vision, and behaviors, to be more complex and run simultaneously on their own processors without impinging on each other's operation.
More importantly, DARwIn's reaction time to an ever-changing environment will decrease as a result of the parallel architecture. In addition, the specific I/O required by each system will be on the FPGAs, eliminating the need to add I/O boards, which is the reason for DARwIn III's larger computing package. The walking algorithms running on a microcontroller could be instantiated on an FPGA and control custom joint actuators instead of the Robotis Dynamixel motors. The decision to use alternate joint actuators is motivated by the fact that the controller within the motors is company intellectual property, and the ability to design the motors' controller is becoming a necessity.
Finally, all systems will be connected to deterministic buses so that the delay caused by information transfer is known. The current setup in DARwIn III does not use feedback from the Dynamixel motors because the proprietary code shares information in a delayed fashion on a nondeterministic, polling architecture bus. Using the team's own joint actuators can subvert many of these problems and allow a deterministic bus such as EtherCAT to be implemented. Without such a bus, large latencies and indeterminism will make it very difficult to implement active real-time controllers.
Robot evolution by intelligent design
With the success of the DARwIn series humanoid robots, the RoMeLa team is planning to develop an affordable, lower-cost version for the robotics community as an open hardware platform for research and education. This version will be designed so that anyone could manufacture the robot using basic fabrication processes. Made from sheet aluminum, anyone with a band saw and drill press could create their own robot based on the team's design drawings and schematics, which will be made publicly available. Robotics researchers can test their code, sensors, behavior software, or electronics on a solid standard platform without having to design their own robot from scratch. The computing platform will be able to be replaced, removed, or refined with any alternative. Different types of sensors can also be added or removed based on budget constraints or research needs.
 Hong, D. W., "Biologically Inspired Locomotion Strategies: Novel Ground Mobile Robots at RoMeLa," The 3rd International Conference on Ubiquitous Robots and Ambient Intelligence (URAI 2006), Seoul, S. Korea, October 15-17, 2006.
 J. Kim, "On the Stable Dynamic Walking of Biped Humanoid Robots," Korea Advanced Institute of Science and Technology, Daejeon, South Korea, 2006.
 Hirai, K., et al, "The Development of Honda Humanoid Robot," IEEE Int. Conf. on Robotics and Automation, Leuven, Belgium, 1998, pp. 1321-1326.
 Ishida, T., "A Small Biped Entertainment Robot SDR-4X II," Proc. IEEE Symposium on Comp. Intelligence in Robotics and Automation, July 2003, pp. 1046-1051.
 Collins, S. H., et al, "A Three-Dimensional Passive-Dynamic Walking Robot with Two Legs and Knees," Int. Journal of Robotics Research, Vol. 20, No. 2, pp. 607-615, 2001.
 McGeer, T., "Passive dynamic walking," Int. Journal of Robotics Research, Vol. 9, No. 2, pp. 62-82, April 1990.
 Vukobratovic, Miomir, "Zero-moment Point – Thirty Five Years of its Life," Int. Journal of Humanoid Robotics, Vol. 1, No. 1, 2004.
 K. Kim, Y. Son, and P. Kim, "Construction of Small Humanoids with a New Joint Actuator Module," Proc. 2004 IEEE Int. Conf. on Robotics & Automation, New Orleans, April 2004, pp. 4510-4514.
 Q. Huang, K. Yokoi, S. Kajita, et al, "Planning Walking Patterns for a Biped Robot," IEEE Transactions on Robotics and Automation, Vol. 17, No. 3, June 2001, pp. 280-289.
 National Instruments, NI Vision, IMAQ Vision Concepts Manual, January 2005.
Karl Muecke is a PhD candidate at Virginia Tech in Blacksburg, Virginia, and the lead engineer on the DARwIn project.
Dennis Hong is Assistant Professor of Mechanical Engineering and director of RoMeLa at Virginia Tech. He holds a PhD and MS from Purdue University and a BS from the University of Wisconsin-Madison.
Virginia Tech RoMeLa