Professional Documents
Culture Documents
A. Srikaew, M. E. Cambron, S. Northrup, R. A. Peters II, D. M. Wilkes, and K. Kawamura Center For Intelligent Systems Vanderbilt University Nashville, TN 37235
srikaewa@vuse.vanderbilt.edu
This paper discusses a drawing robot. ISAC, a Dual Armed Humanoid Robot, explores the relationship between technology and creativity. The problem of tracking and mimicking an artist is analyzed. Control of the end-e ector with force sensors is described. Some initial results are given.
Keyword:
Abstract
1 Introduction
Entertainment is an interesting application for humanoid robots. ISAC, a Dual Armed Humanoid Robot 1, 2], explores the relationship between man's creativity and automation in the eld of visual art. ISAC has the ability to observe an artist in the process of drawing, and to mimic the motions of the artist. The robot can record the motions and then reproduce it's own \robotic" interpretation of the drawing. Because of the nature of it's soft arms, ISAC is unlikely to reproduce the drawing exactly. Each time it reproduces the artist's actions the robot will add its own subtle variations. Through experimentation with the robot, the artist can learn how to manipulate the robot so that the added variations occur within the artist's plans for his work. Moreover, since the robot reproduces the artist's physical motions in creating the drawing, the robot's motions are a performance in themselves. A humanoid service robot designed for entertainment di ers signi cantly from an industrial robot. Such a robot must physically interact with a human being. Therefore, it must be safe; its design must minimize the possibility of injuring a person. A humanoid robot will not be of much use if programmed to perform a xed set of relatively simple, repetitive tasks. It must take commands from a person { in fact it must work
with a person { to perform a wide variety of complex tasks, each of which could be unique to the moment.
Not only must it be purposive to accomplish speci c tasks, but also it must be exible and reactive to cope
submitted to IASTED International Conference on Robotics and Manufacturing, July 26-31, 1998.
with a highly dynamic environment. Such reactive exibility requires the use of complex sensing such as 3D vision, force feedback, and touch. Sensing, at this level, involves much more than the gathering of sensory information. It involves the understanding of sensory information within the context of the problem at hand. In those ways, a human service robot must be able to sense and act much like a human being. There are many examples of robots being used for entertainment. The movie industry uses animatronics to bring to life the fantasies of writers in movies such as Jurassic Park. There are several examples of robots playing musical instruments 3, 4], however, drawing robots are rare. An example of a drawing robot is ARRON 5]. ARRON is the creation of Dr. Cohen at the University of California at San Diego. It is a highly developed drawing machine capable of creating impressive drawings. ARRON consists of 2 parts. First, an arti cial intelligence program creates a drawing in software. This drawing could be printed or displayed on a monitor. The second part of the system is a Cartesian robot that draws the picture. The Cartesian robot is basically a plotter. However, the interaction between the artist and ARRON only occurs at the source code level. Another example of a drawing robot is Drawbot 6] which uses a small industrial robot to draw pre-programmed shapes such as a simple star. In this paper we will discuss many of the parts needed to make ISAC mimic an artist. We examine how we track the artist's hand and translate that data to a drawing plane. We also examine the force control needed for drawing.
2 ISAC
2.1 Softarms
Conventional robot arms, actuated by electric motors, are usually massive and rigid, and therefore dangerous for use in close proximity to people. Impedance control can provide the manipulator with some compliance, but a software error can result in a dangerous machine. An alternative is to use manipulators with exible links or joints. The McKibben arti cial muscle is an excellent actuator for the arms of a human service robot. The arti cial muscle is pneumatic. When depressurized it is a exible cylinder, but an increase in air pressure causes the actuator to expand radially, contract axially, and become sti er. A pair of these actuators attached to either side of a robot arm (in the plane of motion) work in opposition to move the joint, as do the muscles in a human arm. A robot arm that uses McKibben arti cial muscles can be made to be
submitted to IASTED International Conference on Robotics and Manufacturing, July 26-31, 1998.
Figure 1: Humanoid Robot lightweight, strong, and naturally compliant. These attributes make the arms safe for human contact. In fact, they are often called \softarms" for those reasons. Softarms 7] have some disadvantages. They exhibit signi cant hysteresis and other non-linearities. They are neither as fast nor as precise as arms actuated by electric motors. However, human-service work typically requires neither great speed nor great accuracy. Thus, the advantages signi cantly outweigh the disadvantages.
submitted to IASTED International Conference on Robotics and Manufacturing, July 26-31, 1998.
Figure 2: ISAC's 4 DOF camera head. board and two Pentium PCs for color image processing, hand tracking, and camera control. Figure 2 shows two color CCD cameras mounted on a pan/tilt/verge system. The hand tracker utilizes the 2-D position of the hands in the image planes and subsequently controls the camera head to center the hand in the camera views. After the target is xated, the 3-D position can be computed and used by the robot system to nd the position of the hand relative to the robot coordinate system. Details of each module are discussed in the following sections.
submitted to IASTED International Conference on Robotics and Manufacturing, July 26-31, 1998.
(a)
(b)
Figure 3: (a) Distribution of skin-tone pixels in RGB space (reprinted from 2]) (b) Example parametric slices for skin-tone model (reprinted from 2]). The outline of the segmentation process can be seen in Figure 4. When an image is captured, it is segmented and produces a binary mask image. Pre-processing such as low-pass ltering may be applied before the image is segmented to reduce noise introduced by the CCD camera. Pixels in the resulting image are then examined to see if they are in the color model. The corresponding pixel location in the binary mask image is set to 1 if it falls within the color model, otherwise, it is set to 0. After all pixels have been examined, further image processing techniques such as erosion and dilation are then performed on the output image to remove isolated spurious pixels that belong to the background.
Figure 4: Color segmentation process. From the mask image, the location of the hand must be determined. In our system, this is approximately computed by nding the centroid of the skin-tone pixels under an L1 norm criterion. This criterion uses the median value instead of the mean value of the coordinates from the segmented pixels, i.e., median of all xand y-coordinates. This approach yields the following bene ts: (i) it is less sensitive to noise compared to
submitted to IASTED International Conference on Robotics and Manufacturing, July 26-31, 1998.
the rst moment centroid method, and (ii) it is not computationally expensive which allows the system to run in real-time. Because the system do not perform any \blob" detection, restrictions, however, have to be made, for example, it is currently assumed that there is only hand in the image.
submitted to IASTED International Conference on Robotics and Manufacturing, July 26-31, 1998.
Figure 7: Camera geometry. camera head. This behavior-based method allows the system to focus the robot's attention using the active vision. The camera control scheme is shown in Figure 6. Once the left and right cameras have xated the target, the 3-D position of the hand can be determined geometrically. The world coordinates of the hand in the camera frames can be determined as follows (see Figure 7) for L R ; for R L ; B B = tan 1 depth tan L ] A = tan 1 depth tan R ] A x = p cos( P + j A j) x = p cos( P j A j) y = p sin( P + j A j) y = p sin( P j A j) z = depth sin( T ) z = depth sin( T ) depth where B = BaseLine and p = cos A 2 * (x; y; z)Camera translation (x; y; z)Robot )
The 3-D position of the hand can be estimated using the camera xation point. The camera angles being controlled, however, can produce errors which lead to inaccuracy in the 3-D position estimator. These errors are introduced by the verge cameras which were altered in-house to reduce cost by using inexpensive hobby servo motors. In order to compensate these errors, the neural-network-based camera-robot calibration are then used. The o -line training process is done by xating cameras at the robot's end-e ector (using the color tracker described above). Next, the inverse kinematics of the camera angles is calculated from the position of the end e ector to estimate the true angles of the cameras. This new angle set is then trained as the output of a neural network using back-propagation with the actual camera angles read from the motors as the input. This provides a simple, robust, and inexpensive camera-robot calibration system. The calibration can be done automatically by moving the robot arm, and using the camera to track the robot's end-e ector,
submitted to IASTED International Conference on Robotics and Manufacturing, July 26-31, 1998.
(a)
(b)
Figure 8: (a) ISAC Humanoid Drawing Robot (b) Gripper with a pen. recording corresponding points and training. The result of the calibration is fairly accurate within the robot workspace. The system simply mimics the user's hand movement and utilizes the knowledge from tracking, i.e., trajectory of the hand, to generate 2-D points used for drawing. This can be done by mapping the 3-D hand trajectory to the 2-D robot drawing plane. The robot arm, which its gripper is holding a pen above the drawing plane, then moves corresponding to this 2-D trajectory to perform drawing. The robot hand is kept moving at the same level above the drawing paper. This allows the robot to draw a simple sketch, for example, a square or a triangle. Figure 8 shows the setup for the drawing robot.
4 Force Control
To make a successful drawing, the marker must stay in contact with the drawing surface while ISAC draws. Force sensors at attached to the gripper are used to sense the force applied by the marker on the drawing surface. Force control must be used to ensure that the marker neither presses too hard nor leaves the surface when a line is being drawn. This section will detail the force control used by ISAC to ensure proper drawing surface contact. The free space trajectory control of robots has been performed successfully with industrial and research robots for many years. The rubbertuator-based robots designed by Bridgestone were intended to perform industrial painting tasks where the robot would follow a trajectory in free space 13]. Force control presents a much more challenging task. The challenge is to achieve both a desired force and a desired trajectory while
submitted to IASTED International Conference on Robotics and Manufacturing, July 26-31, 1998.
the end-e ector is contacting a rigid surface. Recently, much research has been dedicated to the problem of achieving a desired force and trajectory simultaneously. There are two main techniques implemented to solve the force/position problem. The rst approach is hybrid force/position control. In this technique, only position or force is controlled at any instance of time. The second approach is impedance control, in which both force and position are controlled simultaneously. The force control used for ISAC utilizes the second approach. Impedance control is used because of the nature of the task. The drawing task requires ISAC to keep the marker in contact with the writing surface while following a 2D trajectory across the drawing surface. The impedance controller implemented in ISAC is derived from the position-based impedance control work of Heinrich, Sepehri, and Thorton-Trump at the University of Manitoba 11].
Figure 9: Block Diagram of the Position-Based Impedance Controller The basic premise of position-based impedance control is to make corrections to the desired position based upon the output of a second order mass, damper, spring impedance model (refer to Figure 9). If the actual force is less than the desired force, the output of the impedance controller, should move the desired position in the direction which increases the actual force. If the force is too high, the impedance controller, should move the desired position in a direction that will decrease the force. The desired position is input to a PID controller that attempts to achieve the new desired position. The PID servo-loop operates at a period of approximately 20 msec. The impedance control loop operates at a period of about 100 msec. The impedance model was programmed to follow the second order mass, damper, spring system 11]: mxd + b(xd xa ) + k(xd xa ) = fd fa _ _ where m, b, and k are the mass, damping, and spring constants and the subscripts a and d denote actual and desired values. Although ISAC was programmed to use a second order model, testing showed that a rst order model worked well. The reduced order was implemented by simply using a mass of zero in the implementation. Figure 9 shows a block diagram of the force and position controller.
submitted to IASTED International Conference on Robotics and Manufacturing, July 26-31, 1998.
10
An additional aspect of the force control implementation for ISAC is that a force threshold is to be met before ISAC will invoke the position-based impedance control. This allows ISAC to switch automatically from traditional control techniques while following a free space trajectory to the position-based impedance control when the drawing surface is contacted.
600 x 400
Object Position
200
400
5 Results
ISAC's goal was to observe an artist and attempt to reproduce the artist's motion as a drawing. This required three major tasks: i) Tracking the artist's hand ii) Transform motion from 3D image coordinates to 2D drawing coordinates iii) Control the end-e ector's position and force to draw the picture. ISAC, successfully mimicked the artists by reproducing drawings of simple shapes. The tracking results relied upon accurately estimating the 3D position of the artist's hand. Figure 10 shows the results of estimation of 3D points. In this graph the actual location versus the estimated position is shown in the X,Y , and Z directions. The maximum error in each direction are X = 59:3mm, Y = 84:9mm, and Z = 61:7mm. The 3-D tracking was su ciently accurate to generate the 2-D points for drawing a square, or a triangle. However, due to the non-linear behavior of the softarm, the resulting drawing, as we expected, was not a perfect square or triangle. The softarm was controlled by a PID controller which did not attempt to correct for nonlinear actuator response. Future, implementations will include a nonlinear controller to achieve better control. The goal of keeping the marker on the drawing surface was, however, quite successful. The drawing performance showed that the position-based impedance controller worked very well. The majority of the
submitted to IASTED International Conference on Robotics and Manufacturing, July 26-31, 1998.
11
time, the marker stayed in contact with the writing surface. The points at which the marker lost contact with the drawing surface were due primarily to the error in the PID position controller. During ISAC'S drawing, the force data showed only a slight oscillatory behavior. Some oscillation is expected due to both the spring like behavior of the McKibben actuators and the spring/damper behavior of the impedance model. The degree of oscillation was small. It did not cause the marker to lose contact with the drawing surface.
6 Conclusion
We successfully mimicked an artist drawing simple shapes. The artist hand was tracked as she drew a simple drawing. The hand was tracked using skin-color segmentation. ISAC was able to estimate the position of the artist hand and translate these positions in order to reproduce an interpretation of the drawing. Force sensors were used to keep a constant pressure as ISAC drew an image. Entertainment robots are an interesting application. As technology continues to improve, robots will become more exible.
References
1] K. Kawamura, D. Wilkes, T. Pack, M. Bishay, and J. Barile, \Future robots for home and factory," in Proceedings of the First International Symposium on Humanoid Robots, (Tokyo, Japan), pp. 53{62, Oct. 1996. 2] D. Wilkes, W. Alford, R. Pack, T. Rogers, R. Peters II, and K. Kawamura, \Toward socially intelligent service robots," to appear in Applied Intelligence, 1998. 3] L. Lange, \The theremin strikes a chord with engineers," EE Times, pp. 1,156, July 1997. Issue 964. 4] http://www.kajitani.mce.uec.ac.jp/mubot/. 5] P. Monaghan, \An art professor uses arti cial intelligence to create a computer that draws and paints," The Chronicle of Higher Education, pp. 27{28, May 1997. 6] http://robix.com/drawbot.htm. 7] M. Iskarous and K. Kawamura, \Intelligent control using a neuro-fuzzy network," IEEE Transactions on Rehabilitation Engineering, 1995. 8] D. Ballard, \Animate vision," Arti cial Intelligence, vol. 48, pp. 1{27, Feb. 1991. 9] S. Asaad, M. Bishay, D. Wilkes, and K. Kawamura, \A low-cost, dsp-based, intelligent vision system for robotic application," in Proceedings of 1996 IEEE International Conference on Robotics and Automation, (Minneapolis, Minnesota), Apr. 1996. 10] J. Barile, M. Bishay, M. Cambron, R. Watson, R. Peters II, and K. Kawamura, \Color-based initialization for human tracking with a trinocular camera system," in Proceedings of 1997 IASTED International Conference on Robotics and Manufacturing, vol. 1, (Cancun, Mexico), May 1997. 11] B. Heinrich, N. Sepehri, and A. Thornton-Trump, \Position-based inmpedance control of an industrial hydraulic manipulator," IEEE Control Systems, vol. 17, pp. 46{52, Feb. 1997. 12] N. Hogan, \Stabel execution of contact tasks using impedance control," in Proceedings of the IEEE International Conference on Robotics and Automation, pp. 1047{1054, 1987. 13] Bridgestone Corporation, Japan, Rubbertuators and Applications for Robots, 1986. Technical Guide No. 1.