fuzzy controller for cooperative object pushing with variable line contact

6
Proceedings of the 2009 IEEE International Conference on Mechatronics. Malaga, Spain, April 2009. Fuzzy Controller for Cooperative Object Pushing with Variable Line Contact Mahsa Aliakbar Golkar, Sarah Taghavi Namin, Hossein Aminaiee Control and Intelligent Processing Center of Excelience,Robotics and AI Lab., Department of Electrical and Computer Engineering, University of Tehran Email: [email protected]@[email protected] Abstract-Designing an appropriate cooperation protocol in multi-robot systems such as multi-robot object manipulation systems is a challenging task. In this paper designing and im- plementing a cooperation protocol between two robots pushing an object toward an arbitrary goal configuration is investigated. The proposed method benefits from task decoupling which simplifies the cooperation protocol design. Each robot gets its proper action from a particular Fuzzy Inference System independently. The fuzzy controllers' outputs are low-level robot commands by which the need to a robot path planning algorithm is eliminated. Simulation results show that robots could push the object to the goal configuration cooperatively. Experiments have been conducted to approve the proposed system. I. INTRODUCTION In the last two decades, object manipulation has attracted robotic communities. Many researches have been interested in using multiple mobile robots to manipulate an object [1], [2], [3], [4], [5]. In these kinds of systems, cooperation and close coordination between robots are needed for the task to be performed. Therefore, a need for a proper cooperation protocol is evident and a challenging task. One of the most basic tasks for a robotic manipulator is to move an object from one place to another. A common solution is to equip the manipulator with a gripper and adopt the pick-and-place approach [6]. However, this approach fails if the object is too large to be grasped or too heavy to be carried i.e. the manipulated objects have comparable size and dynamic complexity to the robots. Vibrating the surface that object is located on, is another method of object manipulation. This will result in movement of object on the relevant surface [1], [7], [8]. Mason and Lynch developed a method for transporting the object by throwing it [9]. In [2] using two arms with three degree of freedom, a disk shape object is thrown. The thrown object would rotate in two dimension space. Several researches have been done on manipulating the object by means of pushing. In [3] pushing with line contact and in [4] open loop motion control using point contact is discussed. Different types of object manipulation especially point contact and line contact object pushing were discussed in [10]. It is not always possible to push an object with just one robot. In this case, using a team of robots is suggested. A constrain-move method is introduced in [11]. A group of robots in this strategy has the task to keep the object on its path and the others exert the motive force. In the Pusher/Steerer system in [12] one robot steers, and the other pushes the object lied between them. The steerer is the only 978-1-4244-4195-2/09/$25.00 (c) 2009 IEEE Fig. I. Object Manipulation System using Variable Line Contact. agent that has information about the path, while the pusher exerts the necessary motive force, and rotates to follow changes in the objects orientation. In this paper, object manipulation by pushing technique using variable line contact has been introduced. To do so, two mobile robots have been assigned to one edge of the object (Fig. 1). Each robot gets its proper action from a particular Fuzzy Inference System independently. The fuzzy controllers' out- puts are low-level robot commands by which the need to a robot path planning algorithm is eliminated. The proposed method benefits from task decoupling which made the co- operation protocol design simple. Simulation results show that robots could push the object to the goal configuration cooperatively. A couple of experiments have been conducted to support the proposed system. The paper is organized as follows. Sec. 2 will deal with different kinds of cooper- ation methods in object manipulation systems. In Sec. 3 our proposed multi-robot system for object manipulation is described and formulated. Robot and object model used for our problem is introduced afterward. In section 4 the pro- posed variable line contact object manipulation is introduced, followed by simulation results in section 5. Section 6 briefly illustrates an experiment done for our method. The paper is concluded in section 7. II. COOPERATION METHODS Cooperative Object manipulation techniques depend on several factors. Limitation in number of robots used and system nature (static, quasi-static and dynamic) are some of these limitations. Leader-Follower system which has been introduced in [4], is a decentralized method in object

Upload: independent

Post on 13-Nov-2023

0 views

Category:

Documents


0 download

TRANSCRIPT

Proceedings of the 2009 IEEE International Conference on Mechatronics. Malaga, Spain, April 2009.

Fuzzy Controller for Cooperative Object Pushing with Variable Line Contact

Mahsa Aliakbar Golkar, Sarah Taghavi Namin, Hossein Aminaiee Control and Intelligent Processing Center of Excelience,Robotics and AI Lab.,

Department of Electrical and Computer Engineering, University of Tehran Email: [email protected]@[email protected]

Abstract-Designing an appropriate cooperation protocol in multi-robot systems such as multi-robot object manipulation systems is a challenging task. In this paper designing and im­plementing a cooperation protocol between two robots pushing an object toward an arbitrary goal configuration is investigated.

The proposed method benefits from task decoupling which simplifies the cooperation protocol design. Each robot gets its proper action from a particular Fuzzy Inference System independently. The fuzzy controllers' outputs are low-level robot commands by which the need to a robot path planning algorithm is eliminated. Simulation results show that robots could push the object to the goal configuration cooperatively. Experiments have been conducted to approve the proposed system.

I. INTRODUCTION

In the last two decades, object manipulation has attracted robotic communities. Many researches have been interested in using multiple mobile robots to manipulate an object [1], [2], [3], [4], [5]. In these kinds of systems, cooperation and close coordination between robots are needed for the task to be performed. Therefore, a need for a proper cooperation protocol is evident and a challenging task. One of the most basic tasks for a robotic manipulator is to move an object from one place to another. A common solution is to equip the manipulator with a gripper and adopt the pick-and-place approach [6]. However, this approach fails if the object is too large to be grasped or too heavy to be carried i.e. the manipulated objects have comparable size and dynamic complexity to the robots. Vibrating the surface that object is located on, is another method of object manipulation. This will result in movement of object on the relevant surface [1], [7], [8]. Mason and Lynch developed a method for transporting the object by throwing it [9]. In [2] using two arms with three degree of freedom, a disk shape object is thrown. The thrown object would rotate in two dimension space. Several researches have been done on manipulating the object by means of pushing. In [3] pushing with line contact and in [4] open loop motion control using point contact is discussed. Different types of object manipulation especially point contact and line contact object pushing were discussed in [10].

It is not always possible to push an object with just one robot. In this case, using a team of robots is suggested. A constrain-move method is introduced in [11]. A group of robots in this strategy has the task to keep the object on its path and the others exert the motive force. In the Pusher/Steerer system in [12] one robot steers, and the other pushes the object lied between them. The steerer is the only

978-1-4244-4195-2/09/$25.00 (c) 2009 IEEE

Fig. I. Object Manipulation System using Variable Line Contact.

agent that has information about the path, while the pusher exerts the necessary motive force, and rotates to follow changes in the objects orientation.

In this paper, object manipulation by pushing technique using variable line contact has been introduced. To do so, two mobile robots have been assigned to one edge of the object (Fig. 1).

Each robot gets its proper action from a particular Fuzzy Inference System independently. The fuzzy controllers' out­puts are low-level robot commands by which the need to a robot path planning algorithm is eliminated. The proposed method benefits from task decoupling which made the co­operation protocol design simple. Simulation results show that robots could push the object to the goal configuration cooperatively. A couple of experiments have been conducted to support the proposed system. The paper is organized as follows. Sec. 2 will deal with different kinds of cooper­ation methods in object manipulation systems. In Sec. 3 our proposed multi-robot system for object manipulation is described and formulated. Robot and object model used for our problem is introduced afterward. In section 4 the pro­posed variable line contact object manipulation is introduced, followed by simulation results in section 5. Section 6 briefly illustrates an experiment done for our method. The paper is concluded in section 7.

II. COOPERATION METHODS

Cooperative Object manipulation techniques depend on several factors. Limitation in number of robots used and system nature (static, quasi-static and dynamic) are some of these limitations. Leader-Follower system which has been introduced in [4], is a decentralized method in object

manipulation using mobile robots. The main difficulty in object manipulation via pushing is that the leader robot cannot pull the object directly when it needs to slow down or move back the object, and cannot inform follower robots these requirements through the object, which is used in the original leader-follower control algorithm. The caging based handling strategy is another introduced method in [5]. This method by trapping the object with robots and introducing an object closure form during manipulation makes objects transporting with desired conditions to any point possible. In this method trapping the object properly during manipulation and transporting the object with required conditions is of great importance [5], [13].

Another introduced method for object transportation is Pusher/Steerer system. In this system, one robot steers, and the other pushes the object lied between them. The steerer is the only agent that has information about the path, while the pusher exerts the necessary motive force, and rotates to follow changes in the objects orientation. There are two limitations to this protocol. One is that the steerer can slide off the front face of the box, thereby losing control of the object. The other is that a combination of box-steerer friction and relative alignment of pusher and steerer wheels can cause the pusher to be unable to force the steerer to roll, rendering the system liable to move [12].

In centralized systems all calculations regarding each individual robot behavior such as velocity, force and torque is done by one of the robots and is send to other robots; as a result a communication system with a wide band width is required. Dependency of such systems to a central robot is their main disadvantage so that any problem occurred for central robot will result in the whole system failure [14], [15].

III. SYSTEM MODEL

The proposed system consists of two mobile robots push­ing an object cooperatively. The object model and the robot model are discussed here.

The object used in this paper is assumed to have M units of mass and I units of moment of inertia and is pushed by robots on a frictional surface. Assuming that there is no external perpendicular force and the contact surface between the object and the ground is uniform, the Center of Gravity (e.G.) of the object coincides with the center of friction. The amount of ground friction force acting on the moving object is assumed constant with the direction opposite to the velocity direction of the objects center of gravity. Moreover, the amount of frictional torque is also assumed constant and opposite the direction of the instant rotational velocity of the object.

Disk-shape robots are assumed so they can have any relative angle with object and this simplifies the robot-object interaction during contact (Fig. 2). This configuration results in having a point robot-object contact.

Robots have two parallel wheels located on a diameter of the disc with equal distance to the robot center. Robot wheels are inside the robot surface; in other words the following inequality holds:

Fig. 2. Robot model.

(~r +r2 < R2 (1)

Linear and rotational velocity of point 0 of the robot (Fig. 2) is expressed by equation 2 and 3 respectively.

(2)

Vi - Vr W=

I (3)

Where Vi is the left wheel and Vr is the right wheel velocity and I is the distance between two wheels of the robot.

IV. PUSHING BY VARIABLE LINE CONTACT

In order to transport an object to a desired goal, having some information regarding the relative robot position to the object and the relative object position to the goal is necessary. Dealing with a quasi-static object pushing system, the linear and rotational velocity of the object is assumed constant and insignificant. Consequently, they are not con­sidered in the proposed state space.

Refering to Fig. 3, the state space of this system is considered as below:

i = (1,2) (4)

Where, di is the relative distance from robot center to the object's left edge (Bd in the object coordinate system (0). Ii and Cti are the relative distance and angle of each robot to object edge, respectively. Yi and Xi are virtual vertical and horizontal goal distances to the left and right point of the object edge, respectively. Robots behaviors are so that to minimize Yi and Xi values.

As we have a continuous state and action space, fuzzy controllers are used by which smooth object movement is obtained. Fig. 4 illustrates the designed fuzzy sets for each state space dimension.

The fuzzy controllers outputs determine the velocity set­points for each of the left and right wheels of the robots. Make use of low level control commands directly in this system has the advantage of not being involved in robot path planning problem resulting in a simplification in the system design.

Fig. 3. Robot and object position comparing to desired goal position.

d1 d2

0.25 0.5 0.75 0.25 0.5 0.75

(a) First robot relative position (b) Second robot relative position (dd (d2)

alfa

PI ·PI 0.25 0.5

(c) Robot relative angle to the ob- (d) Position of robot to the object ject edge(a) edge (l)

x1 , x2 y1 , y2

·0.5 0.5 -0.5 0.5

(e) Horizontal goal distance (Xi) (f) Vertical goal distance (Yi)

Fig. 4. Fuzzy sets

V. SIMULATION RESULTS

The model used for simulation is shown in Fig. 5. In this model, a 2m x 1 m shape object of 5 units of mass and 1 unit of moment of inertia has been chosen. The static and dynamic friction coefficient between the object and ground are assumed to be 0.8 and 0.3 respectively. The friction coefficient between robot and object is assumed 0.3. The object center of gravity is located at (1, 0.5) in the objects coordinate frame. Robots have a diameter of 30cm and the distance between robots wheels is 20cm. This system has the ability to move the object to any desired position. A number of simulations have been performed to test the system performance. In all the simulations, the object initial position in configuration space is (0,0,0) and the goal position is in the global coordination system. During the moving of the object from one position to another, the

·C.G.

o o " Robot I Robot 2

Fig. 5. A geometrical model of the simulated system.

-10~------~------~~------~------~ o -5 0 5 10

X(m)

(a) Object Track

2 4 2 4 Time (ms) X 104 Time (ms) X 104

(b) Position Error (c) Orientation Error

Fig. 6. Robots move the object cooperatively on the desired trajectory.

robots act as wheels of the object but not connected. The first conducted simulation is for moving the object

in the horizontal direction. For doing this, as the robots are not connected to the object, each robot starts pushing the object in the best possible path to reach the goal regardless of how the other robot acts. Fig. 6(a) illustrates the track of the object motion in the object coordination system. The goal position in this simulation is chosen to be at (7,0, -90) . Position error and Orientation errors are presented in the Fig. 6(b) and 6(c), respectively. Referring to the graphs, robots can push the object to any desired configuration with a relatively acceptable error in position and orientation of the object. Robots could move the object to the goal with O.lm position error. Whereas orientation error is almost zero. It should be noted that robots can compensate the object error more accurately but this requires more time, therefore a specific error has been accepted for the object position.

The second simulation is to move the object in vertical direction. This is known to be the simplest path to move the object as the desired goal position is chosen to be at (0,4,0). Each robot see the object and the goal position independent of the other robot and try to push the object with the least error in position and orientation. Fig. 7(a) shows the track

I >-

-10~0-------_5~------0~------5~----~10

X (m)

(a) Object Track

o h'--_____ --1 r\ -1

-, -30);--------,:------0,:------0:------'.'

Time (ms) X 104

(b) Position Error

W2

I ~1

'-------------1 2

Time (ms)

(c) Orientation Error

Fig. 7. Robots move the object cooperatively on the desired trajectory.

of the object motion whereas position error and orientation error are illustrated in Fig, 7(b) and 7(c), respectively,

Next simulation is performed with the purpose of position­ing the object at (3,5,0) by pushing, Fig. 8(a) is the track of object motion during moving an object in first quarter of the coordinate system comparing to the object position. In this motion the robot located in the left side of the object requires to move more where the right located robot needs to move less in order to reach the goal position. Fig 8(b) and 8( c) are the related position and orientation errors of this simulation.

Robots are able to move the object to the second quarter of coordinate system, as well. Fig. 9(a) illustrates the track of the motion and the goal position of this simulation. As can be realized from the graph of object track, goal is to move the object to (-6,5, -90) position. In this experiment considering the orientation of goal and the object dimension, robots attempt to compensate the error by turning the object 90 degree and reached the goal with minimum position and orientation error. Fig 9(b) and 9( c) are the position and orientation errors of this simulation.

Fig. 10(a) is the motion track of the object moving to the goal located in the third quarter system with axis coordination (-5, -6, 180). In this experiment, robot located in the right hand side of the object is the one who needs to push the object more than the left positioned robot. The position and orientation errors drawn in Fig. lO(b) and 10(c) proves the ability of robots in moving the object to a desired goal with an acceptable error in position and orientation.

Last conducted simulation is to move the object to a relatively far position comparing to the initial position of the object. As can be seen from motion track, presented

I >-

-10~------~------~------L-----~ - 0 -5 0 5 10

X(m)

(a) Object Track

10,--------------,

, Time (ms)

(b) Position Error

, Time (ms)

4 x 10'

(c) Orientation Error

Fig. 8. Robots move the object cooperatively on the desired trajectory.

I >-

-1_0'0'-------_ ...... 5--------'-0-------5'------~1 0

X (m)

(a) Object Track

200,--________ ----,

$150

g ~'oo ~ ~ 50

%~---e:---~2~~~~4 OO~---,:---~2;===;=~4 Time (ms) x 10' Time(ms) x 104

(b) Position Error (c) Orientation Error

Fig. 9. Robots move the object cooperatively on the desired trajectory.

I >-

-1°L...-----'------'-°---~5-----:10

x (m)

(a) Object Track

101,-------__ --__ -,

.2000!c----:~----,2;------,;--~4 2 Time (ms) Time (ms) X 104

(b) Position Error (c) Orientation Error

Fig. 10. Robots move the object cooperatively on the desired trajectory.

I >-

-1_0L..O-----5'-----O"------5 ....... ----::'10

X (m)

(a) Object Track

. 1"',------______ ------, 101~-------------,

2 Time (ms)

(b) Position Error

2 Time (ms)

(c) Orientation Error

Fig. II. Robots move the object cooperatively on the desired trajectory.

in Fig. l1(a), both robots will need to push the object with relatively high speed in order to reach the goal configuration in acceptable period of time. Fig. l1(b) and 11(c) are the position and orientation errors.

(a) T=Os (b) T=20s

(c) T=40s (d) T=60s

(e) T=80s (t) T=90s

Fig. 12. Track of the object and robots in experiments.

VI. EXPERIMENTS

To proof our method, a number of experiments are con­ducted. In this section, we study and analyze the experimen­tal results. e-puck robots are used to push an object of size 21cm x 50cm. These robots have 7cm width and have wheels of 4cm in diameter. Robot wheels are 5.3cm apart. Friction coefficient between the object and the ground is 0.3. The required state space information is determined by a vision feed-back system.

Fig.12 shows the snapshots of the object and the robot team while pushing the object toward the goal. Position and orientation errors are given in Fig. 13(a) and 13(b), accordingly. In general, as it can be concluded from the results, the object can be pushed to the goal with an acceptable error. In the carried out experiments, robots have pushed the object to a distant goal in a point-to-point manner . To do so, firstly robots come across the object and then start rotating the object toward the goal. Afterwards, they start pushing the object to reach to the desired goal.

VII. CONCLUSION

Fuzzy controllers were used to design the object pushing behavior for each robot. Each robot could push the object independently regardless of the other robot. Hence, the fuzzy inference system design for any of the robot was made simple by the use of task decoupling. The output of fuzzy controller was designed to be low-level control commands. Therefore, hardly a path planning module was needed in the system. This made the robot behavior and cooperation protocol design simple. A number of simulations were performed. The results showed that the two-robot team could push the object toward the goal configuration with a

(a) Position Error

100 ., 50 ~

0 '" ., 0

-50 ';:'

e W -100 § -150

~ -200 .91 0-250

-3000 80 100

(b) Orientation Error

Fig. 13. Position and orientation error of the object being pushed on a desired trajectory.

relatively acceptable error in object position and orientation. Experiments had been conducted to approve the proposed system. The robots state space information was gained by a vision feedback system from a top-view camera.

REFERENCES

[I] K. F. Bohringer, V. Bhatt, and K. Y. Goldberg, "Sensorless ma­nipulation using transverse vibrations of a plate;' in Robotics and Automation, 1995. Proceedings., 1995 IEEE International Conference on, vol. 2, Nagoya, Japan, May 1995, pp. 1989-1996.

[2] B. Beigzadeh, M. N. Ahmadabadi, and A. Meghdari, "Two dimen­sional dynamic manipulation of a disc using two manipulators," in Mechatronics and Automation, Proceedings of the 2006 IEEE International Conference on, Luoyang, Henan" Jun. 2006, pp. 1191-1196.

[3] K. Lynch, "The mechanics of fine manipulation by pushing;' in IEEE International Conference on Robotics and Automation, 1992, pp. 2269-2276.

[4] Z.-D. Wang, Y. Takano, Y. Hirata, and K. Kosuge, "A pushing leader based decentralized control method for cooperative object transporta­tion," in in Proc. of the 2004 IEEElRSJ Int. Corif. on Intelligent Robots and Systems, 2004, pp. 1035-1040.

[5] Z. Wang, Y. Hirata, and K. Kosuge, "Deformable caging forma­tion control for cooperative object transporation by multiple mobile robots," in Advanced Intelligent Mechatronics. Proceedings, 2005 IEEEIASME International Conference on, Monterey, CA" Jul. 24-28,

[6]

[7]

[8]

[9]

[10]

[11]

2005, pp. 1158-1163. K. Lynch and M. Mason, "Stable pushing: Mechanics, controllability, and planning," International Journal of Robotics Research, vol. 15, no. 6, pp. 533-556, December 1996. N. C. Singer and W. P. Seering, "Utilizing dynamic stability to orient parts;' Journal of Applied Mechanics, no. 54, 1987. P. 1. Swanson, R. R. Burridge, and D. E. Koditschek, "Global asymptotic stability of a passive juggler: A parts feeding strategy;' in In IEEE International Conference on Robotics and Automation, 1983, p. pages. M. Mason and K. Lynch, "Throwing a club: Early results, presented at the," in International Symposium of Robotics Research, Hidden, 1993, pp. 2-5. K. M. Lynch, "Nonprehensile robotic manipulation: controllability and planning," Ph.D. dissertation, Pittsburgh, PA, USA, 1996. M. N. Ahmadabadi and E. Nakano, "A constrain and move approach to distributed objectmanipulation;' IEEE Transactions on Robotics and Automation, vol. 17, no. 2, pp. 157-172, Apr. 2001.

[12] R. G. Brown and 1. S. Jennings, "A pusher/steerer model for strongly cooperative mobile robot manipulation," in In IEEEIRSJ IROS, 1995, pp. 562-568.

[13] Z. D. Wang, V. Kumar, Y. Hirata, and K. Kosuge, "A strategy and a fast testing algorithm for object caging by multiple cooperative robots;' in ICRA. IEEE, 2003, pp. 2275-2280.

[14] M. Koga, K. Kosuge, K. Furuta, and K. Nosaki, "Coordinated motion control of robot arms based on the virtualintemal model," IEEE Transactions on Robotics and Automation, vol. 8, no. I, pp. 77-85, Feb. 1992.

[15] T. Yoshikawa and X.-Z. Zheng, "Coordinated Dynamic Hybrid PositionIForce Control for Multiple Robot Manipulators Handling One Constrained Object," The International Journal of Robotics Research, vol. 12, no. 3, pp. 219-230, 1993. [Online]. Available: http://ijr.sagepub.com/ cgi/ contentlabstractlI2/3/219