Mathematical Problems in Engineering

Volume 2015 (2015), Article ID 931048, 10 pages

http://dx.doi.org/10.1155/2015/931048

## Assembly Line Productivity Assessment by Comparing Optimization-Simulation Algorithms of Trajectory Planning for Industrial Robots

Centro de Investigación en Ingeniería Mecánica (CIIM), Universitat Politècnica de València-Camino de Vera s/n, 46022 Valencia, Spain

Received 25 July 2014; Revised 20 September 2014; Accepted 22 September 2014

Academic Editor: Shaofan Li

Copyright © 2015 Francisco Rubio et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

#### Abstract

In this paper an analysis of productivity will be carried out from the resolution of the problem of trajectory planning of industrial robots. The analysis entails economic considerations, thus overcoming some limitations of the existing literature. Two methodologies based on optimization-simulation procedures are compared to calculate the time needed to perform an industrial robot task. The simulation methodology relies on the use of robotics and automation software called GRASP. The optimization methodology developed in this work is based on the kinematics and the dynamics of industrial robots. It allows us to pose a multiobjective optimization problem to assess the trade-offs between the economic variables by means of the Pareto fronts. The comparison is carried out for different examples and from a multidisciplinary point of view, thus, to determine the impact of using each method. Results have shown the opportunity costs of non using the methodology with optimized time trajectories. Furthermore, it allows companies to stay competitive because of the quick adaptation to rapidly changing markets.

#### 1. Introduction

Time needed to perform a trajectory for industrial robots is a very important issue in order to improve productivity in many economic activities. Specifically, most algorithms seek to find the minimum time trajectory in order to increase the working time and subsequently to reduce the unproductive time. The existing literature shows a lack of studies that consider both the economic issues and the motion of industrial robots.

In this paper, the working times of industrial robots are compared between two different approaches while taking into account the corresponding economic impacts. The comparison is applied to several examples, which covers a wide range of parameters that govern the kinematics and dynamics of the industrial robots. The first methodology is based on a robotic simulation program called GRASP (BYG System Ltd) and the second on optimization techniques.

When the working times have been calculated, the assembly line productivity is estimated by means of the time difference, so that we can quantify the impact of each method. Productivity is quantified by conducting an economic study based on the working times of robotic tasks and, more specifically, the time needed to manufacture and assemble a certain product.

A multiobjective optimization problem is posed to assess the trade-offs between the economic variables by means of the Pareto fronts (see Section 6). These fronts will serve to determine those variables that mostly influence the increase of productivity of the assembly line. We will prove that working times (not working cycles) are critical from an economic point of view and so are the methods to obtain them.

Those times will enable us to set conclusions about which method is more useful in order to increase the productivity of the robotic system.

The paper is organized as follows. Initially, we will explain in detail the main characteristics of the trajectory planning methodology and how the time is obtained. Consequently, the economic analysis will provide insight on the productivity of assembly lines. Finally, the conclusions will be discussed in the last section.

#### 2. Background of the Trajectory Planning Problem

Currently there are a great number of methodologies to solve the trajectory planning problem for industrial robots which give the time needed to perform a task. But few papers tackle the analysis of productivity related to the working times obtained.

Over the years, the algorithms have been polished and the working assumptions of the robotic systems have been increasingly adjusted to real conditions. This fact has been achieved by analysing the complete behaviour of the robotic system, particularly the characteristics of the actuators and the mechanical structure of the robot. To tackle this problem other important working parameters and variables have been taken into account, such as the input torques, the energy consumed, and the power transmitted. Furthermore, the kinematic properties of the robot’s links, such as the velocities, accelerations, and jerks, must be also considered. The aforementioned algorithms provide a smooth robot motion for the robotic system.

To obtain the best trajectories in terms of minimum times, some of the working parameters have been included in the appropriate objective function of the optimization procedure (input torques, the energy consumed, and the power transmitted). The optimization criteria most widely used can be sorted as follows.(1)Minimum time required, which is directly bounded to productivity.(2)Minimum jerk, which is bounded to the quality of work, accuracy, and equipment maintenance.(3)Minimum energy consumed or minimum actuator effort, both linked to savings.(4)Hybrid criteria, for example, minimum time and energy.

In the past, the early algorithms that solved the trajectory planning problem tried to minimize the time needed for performing the task (see [1–3]). One disadvantage of those minimum-time algorithms was that the trajectories had discontinuous values of acceleration and torques which led to dynamic problems during the trajectory performance. Those problems were avoided by imposing smooth trajectories to be followed, such as spline functions which have been used in both path and trajectory planning.

The early algorithms in trajectory planning sought to minimize the time needed for performing the task. The dynamics properties of actuators were neglected. A recent example of this type of algorithm can be found in [4], which determines smooth and near time-optimal path-constrained trajectories. It considers not only velocity and acceleration but also jerk.

Later, the trajectory planning problem was tackled by searching for jerk-optimal trajectories. Jerks are highly important for working with precision and without vibration. They also have an effect on the control system and the wearing of mobile parts such as joints and bars. These methods allow a reduction in errors during trajectory tracking, the stresses in the actuators and also in the mechanical structure of the robot, and the excitement of resonance frequencies. Jerk restriction is introduced by other authors [5, 6].

In [7] a method is introduced for determining smooth and time-optimal path-constrained trajectories for robotic manipulators by imposing limits on the actuator jerks.

In [8] a global minimum-jerk trajectory planning algorithm of a space manipulator is presented.

Another different approach to solving the trajectory planning problem is based on minimizing the torque and the energy consumed instead of the trajectory time or the jerk. This approach leads to smoother trajectories. An early example is seen in [9].

Similarly, in [10], the authors searched for the minimum energy consumed. They proposed a method for solving the trajectory generation problem in redundant degree of freedom manipulators. They used a variational approach and the B-Spline curve was introduced to minimize the electrical energy consumed in a robot manipulator system.

The work in [11] also takes into account energy minimization for the trajectory planning problem.

In [12] the authors proposed a technique of iterative dynamic programming to plan minimum energy consumption trajectories for robotic manipulators. The dynamic programming method was modified to perform a series of dynamic programming passes over a small reconfigurable grid covering only a portion of the solution space at any one pass. Although strictly no longer a global optimization process, this iterative approach retained the ability to avoid certain poor local minima while avoiding the dimensional issue associated with a pure dynamic programming approach. The modified dynamic programming approach was verified experimentally by planning and executing a minimum energy consumed path for a Reis V15 industrial manipulator.

Afterwards, new perspectives appear for solving the trajectory planning problem. The main point was to use a weighted objective function to optimize the working parameters [13]. There, the cost function is a weighted balance of transfer time, the mean average of the torques, and power.

In this paper we will introduce two methods to solve the trajectory planning problem for industrial robots working in complex environments. The time will be used in the economical study.

In the first method, the procedure calculates the optimal trajectory by neglecting initially the potential presence of obstacles in the workspace. By removing the obstacles (real or potential) from the optimization problem, the algorithm will calculate a minimum time trajectory as a starting point. Then the procedure must take into account the real obstacles presented in the workspace. When obstacles are considered, the initial trajectory will not be feasible and will have to evolve so that it can become a solution. The way this initial trajectory evolves until a new feasible collision-free trajectory is obtained is presented in this paper. It is a direct algorithm that works in a discrete space of trajectories, approaching the first solution to the global solution as the discretization is refined. The solutions obtained are efficient trajectories (i.e., the minimum time trajectories). All the trajectories obtained meet the physical limitations of the robot. The solution also avoids collisions and takes into account the constraint of energy consumed.

The second method calculates the times using the kinematic properties of the robotic system by means of a simulation program called GRASP.

#### 3. Time Obtained Using the Proposed Optimization Trajectory Planner

Our objective is to calculate the minimum time trajectory between the initial and final configurations. Any robot configuration can be expressed unequivocally by means of the Cartesian coordinates of significant points of the robot .

We calculate the time needed to go from to . This process is based on an optimization problem to obtain the minimum time between these two configurations. The problem is transformed into obtaining the minimum time over an interpolated trajectory between both configurations, subjected to physical constraints in the actuators.

This optimization problem can be stated as in [7] as follows:between each of the two configurations (see Section 3.3),where is the vector of the actuator torques and is the space state in which the vector of the actuator torques is feasible.

The optimization problem is subject to:(1)the robot dynamics(2)unknown boundary conditions (position, velocity, and acceleration) for intermediate configurations a priori (3)boundary conditions for initial and final configurations (4)collision avoidance within the robot workspace being the distance from any obstacle (sphere, cylinder, or prism) to robot arm ; is the characteristic radius of the obstacle and is the radius of the smallest cylinder that contains the arm ;(5)actuator torque rate limits(6)maximum power in the actuators(7)maximum jerk on the actuators(8)energy consumedwhere is the energy consumed by the actuator between the configurations and .

Here, the main definitions and processes used to obtain the free-collision trajectories of the robot (and subsequently the time needed to perform the trajectory) are detailed.

##### 3.1. Robot Configuration

It is expressed in joint coordinates with a view to define kinematics and dynamics of the robot. When dealing with collisions, Cartesian coordinates will be used, being ; ; : robot degrees of freedom; : number of Cartesian points used for the wired model of the robot in collision detection; and is the configuration itself; see [14–16].

##### 3.2. Adjacent Configuration

Given a feasible configuration of the robot , it is said that is adjacent to it if it is feasible and meets the following two conditions.(i)The robot end-effector occupies a position corresponding to a node of the discretized workspace in Cartesian coordinates and its distance to the end-effector position in the configuration is less than a given value.(ii) is such that it minimizes the function

##### 3.3. Trajectory

Given a sequence of robot configurations , the trajectory is defined by means of cubic interpolation functions between adjacent configurations so that the resulting time to perform the trajectory is minimum. We have thatwhere , .

To ensure continuity, the following conditions associated with the given configurations are considered. (a) Position: for each interval the initial and final positions must match and ; this gives a total of equations: (b) Velocity: the initial and final velocities of the trajectory must be zero, obtaining equations When passing through each intermediate configuration, the final velocity of previous interval must be equal to the initial velocity of the next interval; that gives equations (c) Acceleration: for each intermediate configuration, the final actuator acceleration of the previous interval must be equal to the initial acceleration of the next, resulting in equations Knowing the time required to perform the trajectory between the different configurations, using the above equations, the coefficients of the cubic polynomials can be obtained efficiently by means of the calculation of the normal time [15]. In addition, the minimum time trajectory s must meet the following four types of constraints: (d) maximum torque in the actuators, (e) (f) maximum power in the actuators, (g) (h) maximum jerk on the actuators, (i) (j) energy consumed where is the energy consumed by the actuator between the configurations and .

To obtain the minimum time, an optimization problem is solved using variables defined in time increment at each interval (see [17]) so that in the interval between and , the variable is and the objective function is

##### 3.4. Offspring Trajectory

Let be a minimum time trajectory associated to the sequence of configurations under the conditions described in Section 3.5. It is said that the trajectory is an offspring of when the following conditions are met:(a);(b);(c).

So the trajectories of a certain generation will have one passing configuration more than the previous generation, but they will keep the same initial and final configurations.

##### 3.5. Obtaining of the Collision-Free Trajectory

The problem of obtaining a feasible and efficient trajectory for a robot in an environment with static obstacles allowing the motion between two given configurations ( and ) is posed. An efficient trajectory is that performed in a minimum time, with a reasonable computational cost, and subject to the limitations of the robot dynamics, the jerk constraints, and power consumption. Clearly the feasibility of the trajectory means that there are no collisions.

The proposed process for solving the problem involves the following steps which are implemented in the algorithm.(a)Obtaining the minimum time trajectory: using the procedure described in Section 3.3, the trajectory is obtained corresponding to the sequence of configurations .(b)Search for collisions: the first configuration from which has collision is determined, and a previous configuration is searched for whose distance is less than (so that the smallest patterned obstacle used to represent the work environment can never be between y .(c)Obtaining adjacent configurations: up to six new adjacent configurations to can be achieved as defined in Section 3.2 .(d)Obtaining offspring trajectories: for each one of the adjacent configurations obtained in the previous section that have no collision with obstacles, the offspring trajectory is obtained from , such that .(e)Trajectory selection: the generated trajectories are introduced in previous section (d) on the set of trajectories ordered by time , taking the minimum time trajectory and checking for no collisions as it was done in previous section (b). If has no collision, the algorithm goes to the next section; otherwise it returns to section (c) and the process is repeated.(f)Refining the trajectory: in case that the collision-free trajectory does not belong to the first generation (direct offspring of , with a sequence of three configurations), we have such that ( being the number of configurations that define the trajectory).

sets of configurations are taken such that for , obtaining the corresponding set of collision-free trajectories . If it is empty then it is said that cannot be reduced; otherwise the process is repeated for the new trajectories and the results are included in . The process finishes when the algorithm cannot obtain new trajectories.

Finally the trajectory is included in and the reduced trajectory is defined as the trajectory belonging to with minimum time.

The proposed solution to the problem is , which will be a minimum time offspring trajectory and with a small number of passing configurations.

#### 4. Time Obtained Using a Robotic Environment Simulation Program Called GRASP

The simulation program GRASP10 for robotic environments is used to obtain the time needed to perform the motion between two given configurations. Among other tasks, GRASP10 can model and simulate the robot kinematic behavior. In this paper we have used the original model of PUMA 560 robot that comes with the program as a comparator. It is assumed that the point to point trajectory calculation procedures of GRASP10 correspond to the real robot. The robot kinematic characteristics are shown in Table 1.