Like a small child admonished by grownups to be gentle with small animals, a robot in Germany has undergone conditioned programming to ensure that it will not accidentally injure humans.
High-speed industrial robots at factories are still too dumb to know whether they may have injured a human co-worker who inadvertently gets in its way.
"Accidents happen," said robot engineer Sami Haddadin from the German Aerospace Centre Space Agency in Oberpfaffenhofen.
"We have to accept that when people start to work more closely with robots, they will sometimes hit people," he told New Scientist magazine.
Haddadin placed sensors in the six joints of a robot arm, which was programmed to stop moving if it felt unexpected changes.
Fitted with a large pad - the robot version of a boxing glove - the arm was then put to the test.
Haddadin actually allowed it to punch him in the stomach, chest, head and arm, forehead and arm at speeds of up to 2.5 metres per second.
It performed as expected, stopping at soon as contact was made. However, Haddadin admits he was "definitely concerned" when the blows began.
Once the arm pulls a punch, its motors and torque sensors allow it to "freeze", supporting its own weight. The arm can then simply be pushed aside.
"You give it a push and it just floats away," Haddadin said. "It feels like it weighs only a few grams."
More sophisticated responses are also possible. The robot arm can, for instance, tell the difference between a big hit and a soft collision. It responds to the latter with a gentle nudge that signals "get out of my way" to its human co-worker.
Robot manufacturer Kuka of Augsburg, Germany, will launch a commercial version of the arm next year.
The project conjures the primary rule of science-fiction author Isaac Asimov's famed novel I, Robot which states that no robot may ever harm a human being.