An open-source robot called the iCub now has a battery pack that was tested and optimized using a Tektronix oscilloscope and power probes.
The iCub is a humanoid robot developed at Istituto Italiano Di Tecnologia. Available as an open system platform under a GPL license, iCub has been adopted by more than 30 research institutions worldwide. (With a price tag of about €250,000 [≈$273,000], the robot is aimed at serious researchers rather than hobbyists.) It is about the size of a four-year-old child and has 53 motors to move its head, arms and hands, waist and legs. The majority of the motors reside in the upper body and there are nine in each hand. The iCub sensors include cameras, microphones, force/torque sensors, a full body skin, gyros and accelerometers, and encoders in every joint.
The robot can crawl on all fours and sit up and balance. It can see and hear, and has the sense of proprioception (body configuration) and movement (using accelerometers and gyroscopes).
The robot took its first steps in 2007, but has undergone incremental development since then. Only recently, IIT engineers created a battery backpack that provides power to the robot. The design consists of a Li-Ion battery pack, 36 V/9.3 Ah; a battery management system (BMS) board for monitoring charge, protecting against overvoltage/overcurrent and to balance cells; a monitor board (BMON) for checking battery status including voltage, current and charge percentages; a power board to implement the dc/dc conversions from battery voltage to the iCub power supply; and a Hot Swap Manager (HSM). The robot has two dc voltage levels: 12 V/10 A for the dc motors and the PC, and 36 V/8 A for the 26 brushless dc motors. Finally, a master board with a Bluetooth interface (BCB) manages the whole system.
The iCub firmware is open source and allows a 1-msec trajectory generation period, 20-kHz current loop for the brushless motors, 10 K messages/sec over the Ethernet, 1-kHz force/torque sensor readouts, and full bandwidth skin sensor read-out. Images transfer at 30 fps in stereo at 640×480 resolution.
With the basic battery backpack design, IIT designers had to verify power management, set limits to stay within the safe operating ranges of the MOSFETs, determine power consumption, and validate data communications across the CAN and I2C buses used on the control boards. A Tektronix MSO4104B oscilloscope handled these measurements. Tests also used a TDP1000 differential probe, TCP0030 current probe and four TPP1000 probes along with the DPO 4AUTO data decoder module. This equipment measured the analog signals, the power qualities and the bus communications of the electronic boards.
The MSO4104B oscilloscope has a 1-GHz bandwidth with a sample rate of 5 GS/sec. It supports up to four analog channels and 16 digital channels. Because the digital channels are fully integrated into the oscilloscope, users can trigger across all input channels, automatically time-correlating all analog, digital and serial signals.
The TCP0030 probe used by IIT is a high-performance ac/dc current probe that provides greater than 120 MHz bandwidth with selectable 5- and 30-A measurement ranges. It also handles low-current measurements and has an accuracy to levels as low as 1 mA.
Both the voltage and current probes helped measure the outputs of the dc/dc converters and the HSM board. The robot pulls a lot of current, so the IIT team ran numerous tests during start-up and normal operation.
Designers had to analyze the start-up transient to tune the HSM to stay beneath the power limits of the MOSFET transistors. Said iCub development team member Marco Maggiali, “Without actually performing analysis on the board, it’s hard to know how it will perform in the real world. The oscilloscope made it easy for us to adjust parameters correctly to ensure maximum protection for the MOSFETs.”
Another challenge the team faced was operating in the inherently noisy environment of the robot with many different motors starting and stopping constantly. In this case, the TDP1000 differential probe helped measure the voltage drop on shunt resistors of the dc/dc converter and helped evaluate noise levels in the output signal. The resulting info helped direct the placement of choke filters and shielding to minimize noise.
The oscilloscope played a role in evaluating battery life under various conditions. Interestingly, it proved difficult to exercise the robot to its fullest potential with all 53 motors running simultaneously. In fact, the team was unable to produce a truly worst-case scenario. With the robot moving as close to full movement as possible, the MSO4104B’s 20-M-point record length helped characterize battery discharge. Under near worst-case scenarios, the battery lasted about 1.5 hours, but typically much longer under more normal operation.
With three boards and two bus technologies, an important challenge confronting the team was the validation and debugging of data communications—tedious if performed manually. The DPO 4AUTO data decoder module made it easy to read and validate the data communications among the BCB, HSM and the BMON. The HSM communicates with the BCB through a 1-Mb/sec CAN bus while the BMON connects through I2C to the BCB. The BCB includes a Bluetooth interface to communicate battery status to a mobile device or to the robot head.
Development of the iCub platform continues at IIT with iCub 2.0 (including battery backpack) now in the works. While the iCub isn’t quite ready to go outside and play on its own, the robot continues to expand its repertoire of capabilities.
iCub
www.icub.org
Leave a Reply
You must be logged in to post a comment.