Us humans take a lot of things for granted. For example, we can consider the size of an object and what it is composed of, and based on previous experience decide the best means for picking it up — or decide that it is too heavy for us to lift. Looking at an empty cardboard box, we might just reach down and grab it with little care. If that same box were full of heavy books, we might bend down, take hold with both hands, and lift with our legs. And if the box were full of iron plates, we would know better than to attempt the lift at all. For a humanoid robot, making this sort of decision is not so easy.
A joint effort between Johns Hopkins University and National University of Singapore have tackled this problem and recently published their results.
Humanoid robots require a valid whole-body motion trajectory in order to lift a box. The motion trajectory is based on the physical properties of the box, and its contents, which in many cases are unknown in advance. This study focused on weight, center of mass, and surface friction (to determine if the object will slip out of the robot’s grippers) as the properties of primary importance.
These properties were estimated by having a robot attempt to physically lift a box slightly off the ground multiple times, and adjusting posture after each lift based on feedback received. Actuator torques are limited during this phase to prevent damage. Next, these estimated parameters are matched up with a precomputed table of trajectories. The table determines the optimal trajectory for the lift; otherwise, if no valid trajectory exists in the table, the robot considers the task infeasible and does not attempt the lift. Trajectories were precomputed due to the heavy computational requirements of the calculations.
The researchers tested their method using a Nao robot H25 V5 and a box with one open side that allowed them to adjust the weight and center of mass. An ArUco marker affixed to the top of the box allowed the robot to determine the position and orientation of the box with its cameras. The robot made multiple lift attempts, and adjusted its posture after each. In the end, the robot was able to pick up the box safely.