0% found this document useful (0 votes)
57 views4 pages

Robotic Arm Energy Optimization

This document discusses using particle swarm optimization to minimize the energy consumption and operation time of robotic arms by optimizing movement parameters like type, speed, and acceleration. It describes trapezoidal motion profiles commonly used for industrial robots, which involve acceleration, constant velocity, and deceleration phases. The paper aims to use PSO to find movement parameters that minimize energy usage while satisfying velocity and acceleration constraints, demonstrating improved efficiency for a UR5 robotic arm.

Uploaded by

rajmeet singh
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
57 views4 pages

Robotic Arm Energy Optimization

This document discusses using particle swarm optimization to minimize the energy consumption and operation time of robotic arms by optimizing movement parameters like type, speed, and acceleration. It describes trapezoidal motion profiles commonly used for industrial robots, which involve acceleration, constant velocity, and deceleration phases. The paper aims to use PSO to find movement parameters that minimize energy usage while satisfying velocity and acceleration constraints, demonstrating improved efficiency for a UR5 robotic arm.

Uploaded by

rajmeet singh
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 4

Movement Optimization of Robotic Arms for Energy

and Time Reduction using Evolutionary Algorithms


Abolfazl Akbari1, Saeed Mozaffari2, Rajmeet Singh2,Majid Ahmadi1, Shahpour Alirezaee2
1
Electrical and Computer Engineering Department. University of Windsor, Windsor, Canada
2
Mechanical, Automotive, and Material Engineering Department. University of Windsor, Windsor, Canada
{akbari41, saeed.mozaffari, rsbhourji, m.ahmadi, s.alirezaee } @uwindsor.ca

Abstract— Trajectory optimization of a robot manipulator energy usage in a car manufacturing facility, for example, is
consists of both optimization of the robot movement as well as attributed to industrial robots, which operate using mechanical
optimization of the robot end-effector path. This paper aims to components that move. To address this issue, a lot of industrial
find optimum movement parameters including movement type, companies endeavor to minimize their robot’s energy
speed, and acceleration to minimize robot energy. Trajectory
optimization by minimizing the energy would increase longevity of
consumption. The trajectory optimization for a robotic arm by
robotic manipulators. We utilized particle swarm optimization minimizing the energy has several advantages. By minimizing
method to find the movement parameters leading to minimum the energy required for the movement of the robotic arm, this
energy consumption. The effectiveness of the proposed method is technique ensures that the system operates efficiently and
demonstrated on different trajectories. Experimental results show effectively. Moreover, it reduces the wear and tear of the system
that 49% efficiency was obtained using a UR5 robotic arm. and increases its lifespan. Additionally, it leads to reduced
energy consumption, which is particularly important for
applications where the power supply is limited.
I. INTRODUCTION
In this paper, we are interested in minimum energy trajectory
The field of robotics has been rapidly advancing over the past planning of a robotic arm as well as operation time by using
few decades. The use of robotic arms is becoming increasingly particle swarm optimization (PSO). We assume that the robot
prevalent in various applications, ranging from manufacturing trajectory is completely specified by the task and the end-
and industrial automation to healthcare and space exploration. effector is required to pass through known positions, called
Robotic arms are often used for tasks that require repetitive waypoints. For example, in a pick-and-place task, the pick and
movements or heavy lifting, such as assembly line operations in place locations are determined by the application. Therefore,
manufacturing. Trajectory is defined is defined as the robot unlike previous efforts, we mainly focus on the time scaling
position as a function of time. In other words, it is a rather than path generation. We aim to find robot movement
combination of path and time scaling. While path scaling is parameters with the PSO algorithm to minimize energy
described as geometric description of the end-effector locations, consumption and satisfy the robot velocity and acceleration
time scaling specifies the time required for moving from one constraints.
position to another.
Several approaches have been proposed for optimizing the
trajectory of a robot. Optimization approaches aim to II. TRAPEZOIDAL MOTION PROFILE
minimize/maximize at least one of the following objective We assume point-to-point trajectory which involves starting
functions [1]: minimum time trajectory planning [2]; minimum from a position and coming to a stop in a different position.
energy trajectory planning [2]; minimum jerk trajectory These positions are called waypoints in robotics. Waypoints are
planning [3]. Minimum time trajectory planning was the first set by operators to define the trajectory of a robot's movement
criterion as it directly relates to reducing manufacturing time or to specify a specific path that the robot should follow to
and increasing productivity. Minimizing robot energy leads to complete a task.
mechanical stresses reduction in actuators and energy cost.
Trajectory planning is based on minimizing Jerk, the third A. Movement Types
derivative of the position in time, reduces joint positioning There are two types of movements for point-to-point motion.
errors and robot vibrations. These objectives can be considered The simplest type is move in a straight line from one waypoint
simultaneously to achieve better results. For example, optimal to another in a continuous motion. This movement is called
time–jerk trajectory planning was performed in [4] by improved MoveL (Linear motion), and the robot will follow a straight-line
butterfly optimization algorithm (IBOA) for Delta parallel path between waypoints while maintaining a constant
robot. Minimum time-energy path planning was suggested for orientation. This type of movement is used when the path of
multi-robots to avoid collision in an unknown environment [5]. robot’s end-effector is important, and the robot must work in a
The high energy consumption associated with robotic arms confined space. MoveP (Process motion) is similar to MoveL
remains a significant challenge. The largest proportion of but the robot’s end-effector maintains the same speed through
several waypoints. This type of motion is used in process s (t ) = 0
applications such as welding or gluing in which the quality of v
for 0t  s (t ) = at ()
the process depends on the robot’s speed. While robot works in a
1
free space, it can follow a non-linear path that is defined by its s (t ) = at
joint angles. This type of movement is called MoveJ (Joint 2
motion) and the robot will move its joints in a coordinated
motion to reach the specified position. s (t ) = 0
v v
B. Time Scaling for t T − s (t ) = v ()
a a
Trapezoidal velocity profile is the most common approach for v 2

industrial robot’s trajectory planning [6]. The operator s (t ) = vt −


2a
determines the maximum velocity and acceleration for the
motion, which in turn determines the trapezoidal velocity
profile of the robot. Figure 1 shows the Universal robot s (t ) = −a
v
interface through which the motion parameters are set by an for T −  t  T s (t ) = v ()
operator. a
2avT − 2v − a (t − T )
2 2 2
Trapezoidal time scaling gets its name from their velocity s (t ) =
profiles (Figure 2). It consists of a constant acceleration phase 2a
s (t ) = a of time t a , followed by a constant velocity phase
s (t ) = v of time tv = T − 2ta , followed by a constant III. PROPOSED METHOD
deceleration phase s (t ) = − a of time t a . It is shown that the For designing an energy-efficient trajectory, appropriate
trapezoidal time scaling is the fastest straight-line motion when control actions to all joint actuators (movement type, speed,
there are known constant limits on the joint velocities and acceleration) should be chosen to force the manipulator’s end-
accelerations [7]. effector to follow a time-bounded predefined trajectory. In this
To describe this motion profile only two parameters ( a, v, T ) paper, the optimum movement parameters are selected by an
evolutionary algorithm.
can be selected, because there is a dependency between them,
and they must satisfy S (T ) = 1 and v = a  ta . By substitution A. Optimization constraints
ta = v a , we can describe the motion profile during the three Since only two of v, a, and T can be chosen independently,
we have some constraints.
stages as follows:
(i): If v and a are specified, then v 2 a  1 should be satisfied
to reach the maximum velocity v. Otherwise, the trapezoidal
profile will change to a triangular profile with an acceleration to
velocity v in time ta = v a followed by an immediate
deceleration to rest in time t a . The area of this profile is
2ta  v 2 = v 2 a . To satisfy constraint S (T ) = 1 , v 2 a should
be less than 1. The minimum possible time for the motion can
be obtained from equation (3):
a + v2
T= ()
Figure 1. Movement parameters in Universal robots. va
(ii): If we choose v and T such that 1  vT  2 , ensuring a
trapezoidal profile and that the top speed v is sufficient to reach
s = 1 in time T, and solve S (T ) = 1 we obtain:
v2
a= ()
vT − 1
(iii): If a and T are selected such that aT 2  4 , ensuring that
the motion is completed in time, and solve S (T ) = 1 then:
1
v= (aT − a ( aT 2 − 4)) ()
2
Figure 2. Time scaling and its derivative for a trapezoidal motion profile.
B. Optimization Criterion
In this study, we choose two main objective functions which
are Cycle time and Energy consumption. Energy consumption
optimization and cycle time optimization are two important its personal best solution ( lijt ) and the best solution found by its
objectives in manufacturing processes, and they are often
inversely related in practice. neighbors ( g tj ). The objective of PSO is to find the best solution
It should be noted that reducing cycle time generally involves by updating the position of each particle based on its own
increasing the speed of the manufacturing process, which can experience and the experience of its neighboring particles.
lead to higher energy consumption. On the other hand, reducing vijt +1 = w  vijt + c1r1[lijt − xijt ] + c2 r2 [ g tj − xijt ] ()
energy consumption may require slowing down the
manufacturing process, which can increase cycle time. where vijt is the velocity of particle i in dimension j at time t
We consider the overall energy consumption of all six joints and w is the inertial weights. Parameters c1 and c2 are constant
of the robotic arm as the objective function: values and r1 and r2 are uniform random numbers. Positions are
M
1 Ti
S1 = 
calculated as the addition of the actual velocity to the previous
m =1 Ti
0
(a(t )) 2 dtTi ()
position:
In this equation, Ti is the total operation time, a (t ) is the X i t +1 = X it + Vi t +1 ()
acceleration curve of each joint, and m = 1, 2,..., M is the At the end, we calculate fitness function f f value for each
number of joints. value of v to find the lowest fitness function value.
Cycle time optimization means that when the kinematic and
dynamic constraints are met, the manipulator completes the IV. EXPERIMENTAL RESULTS
specified task in the shortest time to enhance the work This section explains the utilized robotic arm, tested
efficiency of the system. To improve the operation efficiency of movements, and the impact of the proposed method on the
the robot, the operation time of the robot should be minimized robot’s energy reduction.
for the robot to move along the specified trajectory under the
A. Setup
condition of meeting various constraints and it can be defined
as: The proposed method was evaluated on MATLAB with the
n −1 obtained movement parameters by the PSO algorithm. The
S2 =  (ti +1 − ti ) () optimum movement type, speed, and acceleration were
i =1 demonstrated and verified on a real-world robot manipulator.
In this formula, n is the number of waypoints. We used Universal Robot UR5 which is a 6 DoF collaborative
robot with payload of 5 kg and 850 mm reach.
Since there is a trade-off between energy consumption and We have chosen two trajectories for the end-effector
cycle time, the chosen fitness function (optimization criterion) movements to investigate the effectiveness of the proposed
f f places the same weight on both these factors: energy saving method. We performed our experiments by
S1 S2 using the MoveJ command, which produces linear curves in the
ff = + () joint space blended by a set acceleration of nearby endpoints.
2 2
Figure 3 shows the tested movements which include linear
C. Optimization Process segments of different lengths and various direction changes.
The proposed energy minimization method is based on the B. Results
PSO algorithm to calculate the optimum values of v and a for
By applying the constraints that explained in previous
each point-to-point trajectory, considering the constraints
section, we expected that our model produces same velocity
mentioned before. We use dynamic model of a 6 DoF
profile as shown in figure 2. Figure 4 shows the velocity profile
manipulator in MATLAB to perform the movement of a robot
of the robot for moving from one point to another that is similar
manipulator with the obtained movement parameters.
to the theoretical velocity profile described in figure 2. Figure 5
Particle swarm optimization is a metaheuristic optimization
demonstrates normalized values of cycle time and energy
technique that is inspired by the social behavior of swarms [8].
consumption as a function of end-effector velocity.
We selected this optimization algorithm because of its
simplicity and ease of implementation. It also has a fast
convergence rate and can handle large-scale optimization
problems.
The algorithm starts with a swarm of particles that move
around a search space to find the optimal solution. Each particle
represents a potential solution, and its position in the search
space corresponds to a set of values for the variables of the
optimization problem.
At each iteration of the algorithm, each particle evaluates its
current position ( xijt ) according to the objective function
Figure 3. Visualization of the two testing robot end-point paths; the UR robot
(Equation 2) and updates its velocity ( vijt ) and position based on is shown as scale reference here.
Table 1. Values of fitness functions and percentage of improvement

Results of Fitness function & Improvement


f f best f f average f f worst F worst F average
0.0443 0.0869 0.2119 78.22% 49.09%

In which f f i is the value of fitness function at each velocity


and f f B is the lowest value of fitness function.
In this table, the lowest value of fitness function is 0.0443
which corresponds to certain value of velocity of the end-
effector that minimizes both defined objective functions (7)
(8). The percentage of improvement that the best velocity
compared to the worst value of velocity is around 78% which
theoretically represents the greatest possible improvement in
reducing energy consumption and operation cycle time. If we
Figure 4. Joint acceleration at lowest value of the fitness function.
consider a random velocity value versus the best value, the
percentage of average improvement would be 49%.
V. CONCLUSION
The goal of this paper was to present a methodology for
movement optimization of a universal robot to optimize energy
consumption of the robot as well as reducing operation time of
the robot for a given trajectory of movement of the manipulator
endpoint. The optimization algorithm was based on the PSO
algorithm. The results show that if we chose the best value of
velocity of end-effector rather than a random velocity, the
percentage of improvement would be 49%.
REFERENCES
Figure 5. Trapezoidal velocity profile. [1] M. Ratiu, M. A. Prichici. "Industrial robot trajectory optimization-a
review." MATEC web of conferences. Vol. 126. EDP Sciences, 2017.
[2] R. Benotsmane, L. Dudás, G. Kovács. "Trajectory optimization of
industrial robot arms using a newly elaborated “whip-lashing”
method." Applied Sciences 10.23 (2020): 8666.
[3] M. A. Devi, C. P. S. Prakash, P. D. Jadhav, P. S. Hebbar, M. Mohsin, S.
K. Shashank. "Minimum jerk trajectory planning of puma560 with
intelligent computation using ann." In 2021 6th International Conference
on Inventive Computation Technologies (ICICT), pp. 544-550. IEEE,
2021.
[4] P. Wu, Z. Wang, H. Jing, P. Zhao. "Optimal Time–Jerk Trajectory
Planning for Delta Parallel Robot Based on Improved Butterfly
Optimization Algorithm." Applied Sciences 12, no. 16 (2022): 8145.
[5] C. He, Y. Wan, Y. Gu, F. L. Lewis. "Integral reinforcement learning-
based multi-robot minimum time-energy path planning subject to
collision avoidance and unknown environmental disturbances." IEEE
Control Systems Letters 5, no. 3 (2020): 983-988.
Figure 6. Normalized values of Energy consumption and Trajectory time [6] H. J. Yoon, S. Y. Chung, H. S. Kang, M. J. Hwang. "Trapezoidal motion
against velocity of the end-effector. profile to suppress residual vibration of flexible object moved by
robot." Electronics 8, no. 1 (2019): 30.
For each trajectory, the values of f f were calculated based [7] K. M. Lynch, F. C. Park. "Modern robotics. " Cambridge University
Press, 2017.
on the MATLAB simulation for different values of end-effector
[8] T. M. Shami, A. A. El-Saleh, M. Alswaitti, Q. Al-Tashi, M. A.
velocity. Experiments show the optimal end-effector velocity of Summakieh, S. Mirjalili. "Particle swarm optimization: A comprehensive
0.18 mm/s2 which is close to the intersection of objective survey." IEEE Access 10 (2022): 10031-10061.
functions (0.2 mm/s2). The lowest, worst and the average values
of f f are shown in Table 1 which indicate the percentage of the
fitness function:
ffB
F = 100  (1 − ) ()
ffi

You might also like