好文档 - 专业文书写作范文服务资料分享网站

基于MATLAB的PUMA560机器人运动仿真与轨迹规划5.

天下 分享 时间: 加入收藏 我要投稿 点赞

The movement simulation and trajectory planning of

PUMA560 robot

Shibo zhao

Abstract: In this essay, we adopt modeling method to study PUMA560 robot in the use of Robotics Toolbox based on MATLAB. We mainly focus on three problems include: the forward kinematics, inverse kinematics and trajectory planning. At the same time, we simulate each problem above, observe the movement of each joint and explain the reason for the selection of some parameters. Finally, we verify the feasibility of the modeling method.

Key words: PUMA560 robot; kinematics; Robotics Toolbox; The simulation;

I.Introduction

As automation becomes more prevalent in people’s life, robot begins more further to change people’s world. Therefore, we are obliged to study the mechanism of robot. How to move, how to determine the position of target and the robot itself, and how to determine the angles of each point needed to obtain the position. In order to study robot more validly, we adopt robot simulation and object-oriented method to simulate the robot kinematic characteristics. We help researchers understand the configuration and limit of the robot’s working space and reveal the mechanism of reasonable movement and control algorithm. We can let the user to see the effect of the design, and timely find out the shortcomings and the insufficiency, which help us avoid the accident and unnecessary losses on operating entity. This paper establishes a model for Robot PUMA560 by using Robotics Toolbox, and study the forward kinematics and inverse kinematics of the robot and trajectory planning problem.

II.The introduction of the parameters for the PUMA560 robot

PUMA560 robot is produced by Unimation Company and is defined as 6 degrees of freedom robot. It consists 6 degrees of freedom rotary joints (The structure diagram is shown in figure 1). Referring to the human body structure, the first joint(J1) called waist joints. The second joint(J2)called shoulder joint. The third joint (J3)called elbow joints. The joints J4 J5, J6, are called wrist joints. Where, the first three joints determine the position of wrist reference point. The latter three joints determine the orientation of the wrist. The axis of the joint J1 located vertical direction. The axis direction of joint J2, J3 is horizontal and parallel, a3 meters apart. Joint J1, J2 axis are vertical intersection and joint J3, J4 axis are vertical crisscross, distance of a4. The latter three joints’ axes have an intersection point which is also origin point for {4}, {5}, {6} coordinate. (Each link coordinate system is shown in figure 2)

Fig1

【4】

the structure of puma560

Fig2 the links coordinate of puma 560

When PUMA560 Robot is in the initial state, the corresponding link parameters are showed in table 1. a2?0.4381m,a3?0.0203m,d2?0.1491m,d4?0.4331m The expression of parameters:

Let length of the bar ?i-1 represent the distance between zi?1 and zi alongxi?1. Torsion angle ?i?1 denote the angle revolving xi?1from zi?1 tozi. The measuring distance between xi?1 and xi along zi isdi. Joint angle?i is the angle revolving from xi?1 to xi alongzi.

【4】

Table 1【4】 the parameters of puma560

link 1 2 3 4 5 6

?i?1/(?)

0 -90 0 -90 90 -90

ai?1/(?)

0 0 0.4318 -0.0213 0 0

?i/(?)

90 0 -90 0 0 0

di/(m)

0 0.1491 0 0.4331 0 0

Range

-160~160 -225~45 -45~225 -110~170 -100~100 -266~266

III.The movement analysis of Puma560 robot

3.1 Forward kinematic

Definition: Forward kinematics problem is to solve the pose of end-effecter coordinate relative to the base coordinate when given the geometric parameters of link and the translation of joint. Let make things clearly:

What you are given: the length of each link and the angle of each joint

What you can find: the position of any point (i.e. it’s(x,y,z,?,?,?) coordinate)

3.2 The solution of forward kinematics

Method: Algebraic solution

Principal: x?k(q) The kinematic model of a robot can be written like this, where q denotes the vector of joint variable, x denotes the vector of task variable,k()is the direct kinematic function that can be derived for any robot structure .

The origin of k(q)

Each joint is assigned a coordinate frame. Using the Denavit-Hartenberg notation, you need 4 parameters (?,a,?,d) to describe how a frame (i) relates to a previous frame

iT. For two frames positioned in space, the first can be moved into coincidence (i?1)i?1with the second by a sequence of 4 operations:

1. Rotate around the xi?1 axis by an angle?i?1. 2. Translate along the xi?1 axis by a distance?i?1. 3. Rotate around the new z axis by an angle?i. 4. Translate along the new z axis by a distancedi.

i?1iT?Rotx(x,?i?1)Transl(x,?i?1)Rotz(z,?i)Transl(z,di) (1.1)

?s?i0?i?1??c?i?s?c??c?c??s??ds?ii?1ii?1i?1ii?1i?1? (1.2) iT???s?ic?i?1c?ic?i?1c?i?1dis?i?1???0001?? Therefore, according to the theory above the final homogeneous transform

corresponding to the last link of the manipulator:

?nxsxaxpx??nsa?pyyyy012345?? (1.3) 06T?T1T2T3T4T5T6??nzszazpz???0001??

3.3Inverse kinematic

Definition: Robot inverse kinematics problem is that resolve each joint variables of the robot based on given the position and direction of the end-effecter or of the link (It can show as position matrix T). As for PUMA560 Robot, variable ?1??6 need to be resolved.

Let make things clearly:

What you are given: The length of each link and the position of some point on the robot.

What you can find: The angles of each joint needed to obtain that position.

3.4 The solution of inverse kinematics

Method: Algebraic solution

Principal: x?J(q)q

Where J??k/?q is the robot Jacobian. Jacobian can be seen as a mapping from Joint velocity space to Operational velocity space.

??3.5 The trajectory planning of robot kinematics

The trajectory planning of robot kinematics mainly studies the movement of robot. Our goal is to let robot moves along given path. We can divide the trajectory of robots into two kinds. One is point to point while the other is trajectory tracking. The former is only focus on specific location point. The latter cares the whole path.

Trajectory tracking is based on point to point, but the route is not determined. So, trajectory tracking only can ensure the robots arrives the desired pose in the end position, but can not ensure in the whole trajectory. In order to let the end-effecter arriving desired path, we try to let the distance between two paths as small as possible when we plan Cartesian space path. In addition, in order to eliminate pose and position’s uncertainty between two path points, we usually do motivation plan among every joints under gang control. In a word, let each joint has same run duration when we do trajectory planning in joint space.

At same time, in order to make the trajectory planning more smoothly, we need to apply the interpolating method.

Method: polynomial interpolating [1]

Given: boundary condition

??0??(0) ? (1.3)

??f??(tf)

??(0)?0?? ?? (1.4)

?(tf)?0?? Output: joint space trajectory ??t? between two points

??t?=a0?a1t?a2t2?a3t3 (1.5)

Polynomial coefficient can be computed as follows:

a0??0??a1?0??a?3(???) ?2f0 (1.6) 2tf?2?a??(?f??0)2?3tf?

IV. Kinematic simulation based on MATLAB

?How to use link

In Robotics Toolbox, function’ link’ is used to create a bar. There are two methods. One is to adopt standard D-H parameters and the other is to adopt modified D-H parameters, which correspond to two coordinate systems. We adopt modified D-H parameters in our paper. The first 4 elements in Function ‘link’ are α, a, θ, d. The last element is 0 (represent Rotational joint) or 1 (represent translation joint). The final parameter of link is ’mod’, which means standard or modified. The default is standard. Therefore, if you want to build your own robot, you may use function ‘link’. You can call it like this:’ L1=link([0 0 pi 0 0],'modified'); ?The step of simulation is:

Step1: First of all, according to the data from Table 1, we build simulation program of the robot (shown in Appendix rob1.m).

Step2: Present 3D figure of the robot (shown in Fig4). This is a three-dimensional figure when the robot located the initial position (?i?0). We can adjust the position of the slider in control panel to make the joint rotation (in Fig 5), just like controlling real robot.

Step3:Point A located at initial position. It can de described as qA?[0,0,0,0,0,0]. The target point is Point B. The joint rotation angle can be expressed asqB?[0,?0.7854,?0.7854,0,0.392,0]. We can achieve the solution of forward

基于MATLAB的PUMA560机器人运动仿真与轨迹规划5.

ThemovementsimulationandtrajectoryplanningofPUMA560robotShibozhaoAbstract:Inthisessay,weadoptmodelingmethodtostudyPUMA560robotintheuseof
推荐度:
点击下载文档文档为doc格式
03t8z1qgna3sk4u09qt56trx01723y00eux
领取福利

微信扫码领取福利

微信扫码分享