Ha Thanh Hai Kinematic Modelling of a Robot in Form-shaping Milling Complex Surfaces

DOI: http://dx.doi.org/10.24018/ejers.2019.4.11.1619 26  Abstract—This paper presents kinematic modelling of a robot in form-shaping milling complex surfaces, illustrated applying in form-shaping milling a molding prototype. The robot has 6 degrees of freedom, with a cutter attaching to the end of the end-effector. The workpiece is fixed on the clamping table. Using robot in form-shaping machining parts enables increasing the flexibility of selecting machining observation area, increasing capability of selecting engineering manipulation, increasing quality and machining efficiency. In machining process, because of the cutter moving along the machining trajectory in multidimensional space, computing and planning trajectory is more complex. In order to planning the trajectory, it need to derive the kinematic equations of the robot, and deal with the kinematic problems. The kinematics problems are solved with the constraints that the position, orientation, velocity of the tool frame must be coincided with the ones of the workpiece frame. After computing, the results are validated by simulation of robot motion.



Abstract-This paper presents kinematic modelling of a robot in form-shaping milling complex surfaces, illustrated applying in form-shaping milling a molding prototype.The robot has 6 degrees of freedom, with a cutter attaching to the end of the end-effector.The workpiece is fixed on the clamping table.Using robot in form-shaping machining parts enables increasing the flexibility of selecting machining observation area, increasing capability of selecting engineering manipulation, increasing quality and machining efficiency.In machining process, because of the cutter moving along the machining trajectory in multidimensional space, computing and planning trajectory is more complex.In order to planning the trajectory, it need to derive the kinematic equations of the robot, and deal with the kinematic problems.The kinematics problems are solved with the constraints that the position, orientation, velocity of the tool frame must be coincided with the ones of the workpiece frame.After computing, the results are validated by simulation of robot motion.

I. INTRODUCTION
Using industrial robots in machining enables exploiting the advantageous capabilities of robot to compare with the machine tools [1,2].Robots have articulated structure, a large number of degrees of freedom, which make robot favorably execute the complex spatial motion to reach to arbitrary position and orientation that matching machining requirements [3][4][5].To carry out the form-shaping by milling, the motion of the cutter must be ensured strictly the constraints of tool position and orientation relative to the ones of the workpiece surface, which is to ensure the machining quality and productivity.On the other hand, due to the tool is attached to the end-effector, the motion of the tool is combined by all of the motion of the other joints and links.Therefore, it is hard to establish the kinematic equations and compute the motional trajectories for robot in machining complex parts.
Commonly, the surface of complex parts is given in term of numerical file, which is often attained by using CAD/CAM software or using reverse reproduction technology.It is need to conduct modelling surfaces of these parts, and generate the tool paths for robot performing machining.
The paper presents the method of modelling the machining surface and trajectory planning for a robot in milling.The robot has a serial structure, 6 degrees of freedom, with the tool attaching to the end-effector.The workpiece is clamped on the clamping-table.With 6 degrees of freedom, the robot is able to ensure spatial positions and orientations of the tool in the workspace that matching the milling engineering requirements, Fig. 1.
To deal with the kinematic problems, it is need to impose the constraint that the workpiece frame must coincide with the tool frame [3][4][5].The geometric shape of the workpiece is characterized by the workpiece frame.The geometric shape of the tool is characterized by the tool frame.

II. KINEMATIC MODELLING
The ABB robot model IRB 7600-500 and the kinematic structure of the robotclamping table is employed to milling the molding prototype, Fig. 1.The robot consists of 6 movable links and a base, with a spindle and a cutter/tool attaching to the end-effector.The links is numbered from 0 to 6, with 0 and 6 are the indices of the base and the endeffector, respectively, the workpiece is clamped on the clamping table D.
Using Denavit-Hartenberg convention to assign the

Ha Thanh Hai
Kinematic Modelling of a Robot in Form-shaping Milling Complex Surfaces frames.O0x0y0z0 is the base frame, Oixiyizi is the frame attaching to the end of the link i (i=1,..,6).The homogeneous matrix i-1 Ai represents position and orientation of the link i relative to the link i-1.The homogeneous matrix 0 Ai is determined by method of transformation matrices, represents position and orientation of the link i relative to the base frame O0x0y0z0.Table I shows the kinematic parameters of the robot Having the matrices i-1 Ai, 0 Ai from the parameters in Table I, obtaining the position and orientation of the endeffector relative to the base frame: Where q is the vector of the joint variables: OExEyEzEthe tool frame is attached to the cutter so that OE is coincided with the cutting point on the cutter, xE is tangent to the cutting tooth, zE is perpendicular to the cutting tooth, yE is defined so as to complete the right-hand frame.The position and orientation of the frame OExEyEzE relative to the frame O6x6y6z6 is determined the homogeneous matrix 6 AE.The matrix 6 AE is composed by the translation matrices with respect to the coordinate 6 xE, 6 yE, 6 zE and the rotation matrices with respect to the Cardan angles 6 E, 6 E, 6 E.Depending on the geometric shapes of the end-effector and the tool, the parameters 6 xE, 6 yE, 6 zE, 6 E, 6 E, 6 E are usually predetermined .These parameters often are constant, so the matrix 6 AE is the constant matrix.
The position and orientation of the tool with respect to the base frame O0x0y0z0 is determined: Utilizing the method of generalized coordinates and transformation matrices to determine the position and orientation of the tool depending on requirements of machining engineering.
Odxdydzdthe frame attaches to the clamping table D, its position and orientation with respect to the frame O0x0y0z0 is represented the matrix 0 Ad.The clamping table and jig is used to locate and fix the workpiece.Therefore, the frame Odxdydzd is called the jig frame.To compute conveniently, the geometric parameters of the workpiece, the tool paths are described in the jig frame.
Depending on the requirements of machining engineering, the position and orientation at every machining instant is expressed in the jig frame Odxdydzd by the positioning coordinates of the cutting point d xE, d yE, d zE and the positioning Cardan angles of the tool d αE, d βE, d ηE.The toolpositioning vector in the jig frame Odxdydzd is called the operational coordinate vector, and denoted by vector p: x , y , z , , , The matrix d AE(p) represents the pose of the tool with respect to the jig frame Odxdydzd The matrix 0 AE(p) represents the tool position and orientation with respect to the base frame O0x0y0z0, matching the requirement of machining engineering.The matrix 0 AE(p) is determined by the method of transformation matrices, and by multiplying consecutively the homogeneous transformation matrices corresponding to the sequential transformations from the frame O0x0y0z0 to the frame OExEyEzE.
The equations ( 3) and ( 6) are also represent the tool position and orientation with respect to the base frame.The kinematic equation of robot in matrix form is derived, as follows: From equation (7), obtained the matrix d AE(p) representing the tool's pose relative to the frame Odxdydzd The matrices d AE(p) in ( 5) and (8) represent the tool position and orientation with respect to the jig frame.We get: The kinematic equation (9) determines the relationship of the robot joint variables and the tool positioning coordinates with respect to the workpiece.The matrix equation (9) enables solving the kinematic problems of robot in machining process.

A. Forward kinematic problems
Determining position, velocity, acceleration of the tool with respect to the workpiece, which are represented by the operational coordinate vector p and its derivatives, is necessary to control machining manipulation of the robot.The relative motion of the links are determined by the joint variable vector q, and its derivatives, which are measured by the sensors mounting at the joints.Therefore, the right side of (9) is determined.Taking the first and second derivatives of vector p with respect to time, obtained p, p .

B. Inverse kinematic problems
From (9), obtaining the nonlinear algebraic equations that consist of 6 independent equations (10), the first three equations are obtained by the position constraints, the last three equations are obtained by the orientation constraints.
The nonlinear equations (10) is rewritten in (11). Where: The vectors q, p are denoted by (2), (4).Every cutting point on the form-shaping surface of the workpiece at an instant is characterized by the frame Ofixfiyfizfi, with the origin Ofj is located at the cutting point i on the tool path, the axis xfi is tangent line of the tool path, zfi is normal line of the tool path, yfi is chosen so as to complete a right-handed frame.The frame Ofixfiyfizfi is called the workpiece frame.The positioning parameters of the frame Ofixfiyfizfi with respect of the jig frame Odxdydzd are xfi, yfi, zfi, fi, fi, fi.To form accurately the required surface, the tool frame must be coincided with the workpiece frame.
Thus, the operational coordinate vector p in ( 4) is determined by the coordinates of the points on the tool path.On the other hand, from the machining engineering, the velocity of the tool on the surface of the workpiece, tangent to the tool path, is determined.Therefore, from (13), obtained the operational coordinate vector p, and its derivatives.

III. TRAJECTORY PLANNING OF ROBOT IN MILLING COMPLEX PARTS
Trajectory planning includes determining and computing geometric and kinematic characteristics of the robot motion.For conveniently, we distinguish geometric trajectory planning and kinematic trajectory planning.
Step1: Geometric trajectory planning for robot in the form-shaping milling In the form-shaping milling, the workpiece surface is formed by the point contact of the tool's surface and the workpiece's surface.The contacting points generate a locus of points or the tool path on the workpiece's surface.The tool moves along the tool path to execute the machining manipulation.
Geometric trajectory planning is to find out the moving path of the tool cutting point and the orientation of the tool at the point.From (13), geometric trajectory planning is to compute the operational coordinates The machining surface can be given as an analytical function: Where x, y, z are the coordinates of the surface with respect to the frame Odxdydzd.
In practice, the workpiece's surface is generally given in term of a numerical table.Table III   Applying the method of interpolation in [5][6][7], the workpiece's surface is expressed in term of polynomials, and the tool path is obtained as follows: The coefficients in (20) are determined depending on Table III and the condition of smooth and continuous splice of the trajectory (spline), t is the dimensionless parameter.
The equation (20) enables to determine the position of an arbitrary point on the tool path of the machining surface, the tangential and normal vectors of the surface at the cutting point.Thus, the operational coordinate vector p ( 14) is determined.
Step 2: Kinematic trajectory planning Kinematic trajectory planning is to find the motion law of robot with respect to time so that ensures the form-shaping motion of the tool on the tool path.
Therefore, combining with geometric trajectory planning, kinematic trajectory planning includes determining the operational coordinates, and its derivatives with respect to time t, computing the joint positions, velocities and accelerations.
The velocity of the tool's cutting point on the workpiece's surface, called the tool feed velocity v, has the direction that is tangential to the tool path, and its value is determined by the machining engineering condition.Although the tool path is a continuous interpolating polynomial, in machining practice, the tool is controlled to move via the points.So it is able to describe approximately the tool feed velocity is the velocity from a point to sequential point on the tool path.Basing on (20) and value of the velocity v, which is given by the machining engineering requirements, the elements of the velocity v are expressed with respect to the workpiece frame Odxdydzd, as follows: Where fi fi fi x , y , z respectively are the partial derivatives of x, y, z, describing the tool path according to (20), at the point i of the tool path.The tangential and normal vectors of the machining surface at the successive cutting points on the tool path, determined as described in the Step 1, allow numerical calculation of the relative angular velocity of the tool with respect to the workpiece.
Obtaining the relative velocity and the relative angular velocity in directions, we are able to computing their numerical derivative to find the relative acceleration and relative angular acceleration.Thus, the operational coordinate vector, velocity, acceleration of the tool denoting by ( 14), (15), (16) are determined.
Therefore, solving the equation ( 11) to obtain the motion laws of the robot links with respect to time, which means getting the kinematic trajectory of the robot.

A. Computational results
The workpiece is a molding prototype which is made of the titanium alloy Ti6Al4V, Fig. 2. The motion law of the tool relative to the workpiece is computed and stored as a tool path data file, Fig. 3a.The ball nose mill in Fig. 3b is employed to perform the down milling process.In order to demonstrate, the paper presents the trajectory planning for the robot in a milling cycle of a tool path C. The tool path C in Fig. 3a is a cycle, with radius r = 50 mm.The geometric, kinematic and process parameters of the robot, clamping table and the cutter are given in Table IV  The tool path C is considered as an intersection line of the plane F and the machining surface, the plane F is normal to the symmetric axis of the workpiece.
Consider the base of the plane B of the workpiece as the positioning plane, choose the jig frame Odxdydzd on the plane B, the origin Od is the intersection of plane B with the symmetric axis of the workpiece.The the symmetric axis of the workpiece is the axis zd, the axes xd, yd are on the plane the plane B. The trihedron of the machining surface at the points on the tool path C is Ofixfiyfizfi whose axis xfi is tangent to the tool path C, the axis zfi normal to the machining surface.
In Table V, ri is the radius of one of the tool paths; hi is the height of plane F in the direction of the axis of the workpiece;  is the inclined angle of the normal zfi to the axis of the workpiece.The workpiece has the symmetric axis and the normal of the surface at a point on the tool path C is in the plane that passes through the symmetric axis.
Assuming that the tool feed velocity v=0.05m/s, using the method presented above we compute the operational coordinate vectors, and its the first and second derivatives, which represent the position, velocity, acceleration of the tool with respect to the jig frame.All the computed data is saved in a file.
The selected cutter is a ball nose mill, with radius rc = 4mm.The most effective cutting point is the point on the intersection of the cutting edge with the plane perpendicular to the tool axis, where the angle  between the radius connecting the center of the ball and the points on the cutting edge and the tool axis is equal to 90 0 .However, at this position, it is difficult to perform driving the tool, we choose the cutting point where the angle  = 60 0 .
With the values of the selected tool, the parameters in Table IV, V, and the form-shaping motion rules of the tool have been calculated and saved as the aforementioned data file, substituting all of the parameters and data into (11), we compute the law of motion of the robot performing milling processes.

B. Simulated results
Fig. 4 shows time history of positions, velocities and accelerations in the operational space trajectory of the robot in milling the molding prototype.Where (x, y, z), (vx, vy, vz), (ax, ay, az) denote positions, velocities and accelerations of the cutting point, respectively.While (rotx, roty, rotz), (drx, dry, drz), (ddrx, ddry, ddrz) denote orientations, angular velocities, angular accelerations of the tool, respectively.Fig. 5 shows time history of positions, velocities and accelerations in the joint space trajectory of the robot in milling the molding prototype.Where (q1,.., q6), (dq1,.., dq6), (ddq1,.., ddq6) denote angles, angular velocities, angular accelerations of the robot joints, respectively.Realizing that the graphs of positions, velocities and accelerations in both the operational space trajectory and the joint space trajectory are smooth.That means the computed and generated trajectories are continuous and ensure the machining requirements.

V. CONCLUSION
The paper presents kinematic modelling of a robot in form-shaping milling complex surfaces, illustrated applying in form-shaping milling a molding prototype.
The kinematic problems of the robot are solved by the constraints that the position, orientation, velocity of the tool frame must coincide with the ones of the workpiece frame.
Depending on the description of the machining surface in term of analytical functions or numerical data files, computing and planning motion trajactory of the robot is carried out in the joint space or the task space.
The computation and simulation results validate the presented method, which is able to apply to machine complex surfaces by robots in practice.
Using robot in form-shaping machining enables increasing the flexibility of selecting machining observation area, increasing capability of selecting engineering manipulation, increasing quality and machining efficiency.

Fig. 1 .
Fig. 1.The ABB Robot IRB 7600-500 and its kinematic structure in milling the molding prototype.

Fig. 4 .
Fig. 4. Time history of positions, velocities and accelerations in the operational space trajectory of the robot in milling the molding prototype.

Fig. 5 .
Fig. 5. Time history of positions, velocities, accelerations of the robot in the joint space trajectory in milling the molding prototype.

TABLE II :
KINEMATIC PARAMETERS DETERMINING THE POSITION AND ORIENTATION OF THE CLAMPING TABLE RELATIVE TO THE BASE FRAME illustrates a numerical table of a surface.

TABLE III :
COORDINATES OF GID POINTS OF THE WORKPIECE SURFACE , V.

TABLE IV :
KINEMATIC