Humerus Labor

Printer-friendly versionPrinter-friendly version

 Humerus Labor, a motion controlled robot arm for art

 

 

 

 


Motion Control and Art

Humerus Labor, HL (from Latin humerus, meaning upper arm, and Czech robota, meaning forced work or drudgery, whence English robot, and interpreted as labor in Latin) is a robot arm with motorized waist, shoulder, and elbow joints, and a padded gripper for holding objects. HL is about six feet tall with its arm extended vertically. It weighs about two hundred pounds. It is built to be an example of a device that uses motion control as an element of its design.

From an art perspective, sculpture or installation works may make use of motion control to impart deliberate, expressive, or gestural qualities to physical movement. Artworks that use movement are called kinetic art, mechatronic art, or robtic art. The source of the motion pathways can be scripted, that is to say choreographed, or the motion may be responsive to some sort of external stimulus, that is to say interactively controlled. The quality of movement can range in temperament from delicate to brutish. Also, an object might move in an “organic” fashion, yet in its form have no resemblance to a living organism. Movement that has the quality of being organic (biological motion) is perceived that way because of how the eye and brain categorize types of movement. The neurological mechanisms are active in humans by the age of three months, and in baby chicks as soon as they hatch. Because the the human perception of organic motion is so deeply hardwired in our brains, machines that exhibit this quality of motion will always capture peoples' attention. The phenomenon of motion control is visually seductive, and is therefore a useful tool for visual artists and designers.

The purpose of Humerus Labor is to expose the systems and processes common to any motion control context. Motion control in robotic art, Kinetics, and related fields of art and design is gradually becoming more accessible to non-specialists. A growing base of experimenters is making software and hardware devices which are increasingly capable of gestural and expressive movement which appeals to the eye and the perceptual processes of the brain. The field of motion control is big enough that no single example of practice could express all its possibilities, but this single worked-out case can anchor a number of conversations. To start with, robotic art isn't necessesarily about building traditional robots.

HL was displayed in a performance installation in the Art and Technology Studies department elevator lobby beginning Mar 13, 03 and ran daily for three weeks. Each performance ran about six minutes, during which time HL repeated a number of small tasks. The performance was a whimsical, amusing, and thought provoking exhibit of one direction in which motion control hardware could be applied to art making.

 

An outline of Humerus Labor's display performance as shown in the video:

0:05 gets the whiteboard marker from its holder

0:40 Robot writes its name on the whiteboard

1:30 puts the marker back in the holder

2:15 turns on the blower (blower revs up slowly over a couple of minutes)

2:50 rings the bicycle bell

3:15 gets the eraser from its stand

3:20 erases the whiteboard

4:10 puts the eraser back on its stand

4:35 picks up the whistle

4:40 presses the whistle against the blower exhaust port

4:50 returns the whistle

5:15 rings the chimes (soft)

5:45 turns off the blower

6:15 rings the chimes (loud)

6:20 returns to the rest postion

 

Technical Issues

Motion control is the art and science of accurately and reproducibly controlling the position and velocity of moving objects. Those objects can be discreet, or part of a larger structure or mechanism. Some conventional applications of motion control would include robot arms, airplane autopilots, car cruise controls, building elevators, and rapid prototyping machines. A motion control system receives instructions from a decision-making (high level control) computer. The behavior of the whole system originates in the decision-making computer's software. The motion control system provides dexterity, coordination, and strength, but not intent. HL's control computer has  a high-level piece of software that allows a user to move the robot, operate the gripper located at the end of the arm, and record the points in space. This is referred to as "teaching" a motion path. The path can then be edited and played back at will. We call this whole process of creating expressive gestures and movements "scripting".

The PID Loop

The major novelty of HL and its most challenging set of technical issues is the area of motion control. It comes in two parts. In the first part, an inner control loop operates the servo motors to precisely control their speed, and to report their rotational position to a high degree of resolution. This is the job of the PID motor control system. PID stands for Proportioning, Integrating and Derivating. The term refers to three mathematical operations used in the motor speed control algorithm. Each motor has a control circuit that measures the speed and position of an encoder attached to the motor shaft. The PID controller compares the actual speed of the motor to the command value from the main control computer and alters the motor's input power to cancel out the difference.

Coordinate Systems

The second part of the control problem has to do with making a spatial coordinate system that the robot hardware and the motion controller agree on. Humerus Labor is a three degree of freedom manipulator. At a high programming level, HL defines its world as a 3-D cartesian space with X, Y, and Z coordinates. The X coordinate axis runs the direction of the hallway, the Y direction is toward the elevators, and Z is up and down. This robot has three degrees of freedom: base rotation, shoulder rotation, and elbow flexion. It's tip moves in cartesian three-space. So Humerus labor has three axes and three degrees of freedom. Although this is the simplest case for a robot arm, the joint-space coordinate system of the robot joint motors, and the cartesian coordinate system of the main high level control system are different. Tying together the two representaitons of space is not a trivial exercise.

The problem is a mathematical one which is solved routinely for industrial robot arms. Measurements of the robot components are used to make a table of all the joint rotations and segment lengths using the Denavit-Hartenburg convention. Trigonometric equations are written that describe how much and in what direction the tip of the arm moves for motion at each joint. This is the forward kinematics. Those equations are converted into a form called "rotation matrixes" (or matricies). Starting at the base, the rotation matrix for each joint is multiplied by its next neighbor. This gives one matrix which relates all the joint positions to the x, y, and z coordinates of the tip of the arm. Taking the forward kinematic matrix and differentiating it with respect to time results in what is called the Jacobian matrix. It relates the speed of the joint movements to the speed and direction of the tip of the arm. The Jacobian matrix changes our view of the forward kinematics from one of position to one of speed.

Inverse Kinematics

Inverse kinematics gives the value of the joint positions as a result of moving the tip of the arm. IK comes from inverting the Jacobian matrix, then multiplying that by a vector representing how fast you want to be going in the x, y, and z directions. From that multiplication you get another vector that contains the speed for the base, shoulder, and elbow motors.

The IK allows looking at where the tip it is now versus where you want the tip of the arm to go. A command position is an x,y,z point that is compared to the current position, also an x,y,z point. The distance between the two positions is called "error". In this controller configuration, the motors drive the arm to the the command positon faster if the error is larger. The further the tip is from its destinstion, the faster it moves. When the current position and the command position are the same, the motor speeds are all zero. Motion paths are a series of x,y,z command positions.  The system continually and simultaneously adjusts all three motor speeds to drive the gripper to its next destination point in space. In other words, the motion controller deals with tip position as a matter of speed. The motion of the gripper is resolved into the three component speeds of the base, shoulder, and elbow motors. The term used to describe this method of controlling a robot arm's end-effector position, speed, and direction is called Resolved Motion Rate Control, or RMRC. To write the controller software for HL, we derived all of the RMRC mathematics from scratch.

Construction

 The Robot arm Humerus Labor was built in the Kinetics and Electronics lab of the Art and Technology Studies department in the School of the Art Institute of Chicago.  Some images of the construction process are on the Humerus Labor construction page.

Acknowledgements and Thanks

Humerus Labor was designed by Ed Bennett (edSYMBOLkineticsandelectronics.com). Control and performance software are by Jon Fisher (jonSYMBOLkudodesign.com). Fabrication by David Juros. Thanks to Jim Christopher (jchristoSYMBOLartic.edu) and Michael Deutscher (mikeSYMBOLsneaky-pete.net) for help with the linear algebra and calculus. Most importantly, for their generous support and patience, many thanks to Prof. Peter Gena, chair of ATS (2002), Prof. Eduardo Kac, chair of ATS (2003),  and Prof. Steven Waldeck, area head of Kinetics and Electronics.