Keywords

1 Introduction

SCARA is a well known manipulator for electronic assemblies. SCARA manipulator with 4-DOF i.e. 3 revolute and 1 prismatic joint is presented in Fig. 1. As SCARA is a well established manipulator kinematic and dynamic equations are used in MATALAB analyses. Robotic deburring is being carried out presently on large gears, castings and forgings. However no detailed investigations appears to have been carried out and reported in open literature regarding deburring of components, which are small and used widely in many assembly situations like I.C engines and also in small machinery.

Fig. 1
figure 1figure 1

Anatomy of SCARA manipulator

In the area of SCARA robot kinematics and dynamics, some of the investigations carried out earlier are given below.

Rehiara (2011) formulated and solved the kinematics problem for an Adept Three robot arm. Graphical solution in a virtual instrumentation (VI) of Lab view is implemented for simulating and calculating the robot kinematics and inverse kinematics.

Fang et al. (2013) proposed SCARA robot kinematics and inverse kinematics in MATLAB environment using Robotics tool box.

Das et al. (2005) presented a complete mathematical model including servo actuator dynamics. The Equations of motions are derived using Lagrangian mechanics. Robot is instructed to achieve pick and place operations of three different size cylindrical objects through assigned holes. Both simulation and experimental responses of robot match reasonably good by considering highly nonlinear characteristics of the robot arm.

Alshamasin et al. (2009) developed a complete mathematical model of SCARA robot including servomotor dynamics and also presented dynamic simulation. Kinematic equations for DC servomotor which drives each robot joint also presented. A SCARA robot was modelled to achieve drilling operation using solid dynamic software. The performance of robot-actuator system was analyzed with solid dynamic simulation and checked with MATLAB/Simulink.

Padhy (1992) presented kinematics and dynamics of a SCARA robot and also discussed the changes on torques of different links using a computer code. It is observed that the torque is independent of the angular position, which makes the robot highly compliant.

Elaikh et al. (2013) presented a procedure for assessing the vibration analysis of SCARA robots. The simulation studies were performed by the MATLAB software. Modal and dynamic analysis was performed and proposed that in design of the SCARA robot the resonant and excitation frequencies are not close to each other.

Tao et al. (2006) investigated on residual vibrations of SCARA robots used in wafer handling applications. Developed a mathematical model suitable for residual vibration and verified it with experimental results and also presented the trajectories of the robot arm developed by the model.

In the present work optimization of the link lengths for a specific circular deburring path on a component with a specified placement position from the robot base is carried out so as to obtain the minimum power needed for the deburring operation among all the link length sets. This methodology can then be extended to other sizes of the path and placement positions.

The rest of the paper is organized as (i) Summary of mathematical equations used in the analyses (ii) Problem formulation (iii) Results and discussions and (iv) Conclusions.

2 Summary of Mathematical Equations Used in the Analyses

SCARA is a special robotic manipulator with developed kinematic and dynamic equations. The following are the kinematic and dynamic equations available in literature used for the analysis in MATLAB.

$$ \theta_{2 } = \cos^{- 1} \left(\frac{{p_{x}^{2} + p_{y}^{2} - l_{1}^{2} - l_{2}^{2} }}{{2l_{1}^{2} l_{2}^{2} }}\right) $$
(1)
$$ \theta_{1} = \tan^{- 1} \left(\frac{{(l_{1} + l_{2} c_{2} )p_{y} - l_{2} s_{2} p_{x} }}{{(l_{1} + l_{2} c_{2} )p_{x} - l_{2} s_{2} p_{y} }}\right) $$
(2)
$$ \dot{\theta }_{1} = \left[{\frac{{(v_{x} c_{12} ) + (v_{y} s_{12} )}}{{l_{1} s_{2} }}} \right] $$
(3)
$$ \dot{\theta }_{2} = \left[{\frac{{(- v_{y} (l_{1} s_{1} + l_{2} s_{12} )) - (v_{x} (l_{1} c_{1} + l_{2} c_{12} ))}}{{l_{1} l_{2} s_{2} }}} \right] $$
(4)
$$ \ddot{\theta}_{1} = \frac{{\left[{a_{x} + \left({a_{y} *\frac{{s_{12} }}{{c_{12} }}} \right)} \right] - \left[{\dot{\theta }_{1}^{2} (l_{1} c_{1} + l_{2} c_{12} )} \right] - \left[{2l_{2} \dot{\theta }_{2}^{2} c_{12} } \right] - \left[{l_{2} c_{12} \dot{\theta }_{2}^{2} } \right] - \left[{(\dot{\theta }_{1}^{2} (- l_{1} s_{1} - l_{2} s_{12} )) + (2l_{2} s_{12} \dot{\theta }_{1} \dot{\theta }_{2} ) - (l_{2} s_{12} \dot{\theta }_{2}^{2} }) \right]*\frac{{s_{12} }}{{c_{12} }}}}{{- l_{1} s_{12} - l_{2} s_{12} + (l_{1} c_{1} + l_{2} c_{12} )\left(\frac{{s_{12} }}{{c_{12} }}\right)}} $$
(5)
$$ \ddot{\theta}_{2} = \frac{\left[\left[\ddot{\theta}_1\left(-l_1 s_1 -l_2 s_{12}\right)\right]-a_x\right]+ \left[\dot{\theta}_{1}^{2}(-l_1 c_1-l_2 c_{12})\right]-\left(2l_2 c_{12}\dot{\theta}_1 \dot{\theta}_2\right) - \left(l_2c_{12}\dot{\theta}_1 \dot{\theta}_2\right)}{l_2 s_{12}} $$
(6)
$$ T_{1} = \left\{{\left[{\left({\frac{{m_{1} }}{3} + m_{2} + m_{3} } \right)l_{1}^{2} } \right] + \left[{(\ddot{\textit{m}}_{2} + 2m_{3} )l_{1} l_{2} c_{2} } \right] + \left[{\frac{{m_{2} }}{3} + m_{3} } \right]l_{2}^{2} } \right\}\ddot{\theta }_{1} - \left\{{\left[{\left({\frac{{m_{2} }}{2} + m_{3} } \right)l_{1} l_{2} c_{2} } \right] + \left[{\left({\frac{{m_{2} }}{3} + m_{3} } \right)l_{2}^{2} \ddot{\theta }_{2}^{2} } \right]} \right\} + b_{1} \dot{\theta }_{1} - l_{1} l_{2} s_{2} \left[{(m_{2} + 2m_{3} )\left({\dot{\theta }_{1} \dot{\theta }_{2} } \right) - \left({\frac{{m_{2} }}{2} + m_{3} } \right)\dot{\theta }_{2}^{2} } \right] $$
(7)
$$ T_{2} = - \left\{{\left[{\left({\frac{{m_{2} }}{2} + m_{3} } \right)\left({l_{1} l_{2} c_{2} } \right)} \right] + \left[{\left({\frac{{m_{2} }}{3} + m_{2} } \right)\left({l_{2}^{2} } \right)} \right]} \right\}\ddot{\theta }_{1} + \left[{\left({\frac{{m_{2} }}{3} + m_{3} } \right)l_{2}^{2} \ddot{\theta }_{2} } \right] + \left[{\left({\frac{{m_{2} }}{2} + m_{3} } \right)l_{1} l_{2} s_{2} \dot{\theta }_{1}^{2} } \right] + b_{2} \dot{\theta }_{2} $$
(8)
$$ {\text{P}}_{ 1} = T_{1} *\dot{\theta }_{1} $$
(9)
$$ {\text{P}}_{ 2} = T_{2} *\dot{\theta }_{2} $$
(10)

3 Problem Formulation

The following assumptions are used for optimizing the link lengths for minimizing power at two joints of SCARA robot. As the burrs are very minor on the component it is assumed that the forces acting on the end-effector are negligible.

3.1 Data Used in the Analyses Is as Follows

  • The diameter of the circular path is 0.06 m,

  • Position of the deburring component is 0.35 m from centre of SCARA robot base.

  • Time required to complete one cycle is 10 s,

  • Steps taken to complete one cycle is 12 steps,

The Objective function to minimize power subjected to constraints

$$ \begin{aligned} & 0.350 \le l1 \le 0.400 \\ & 0.100 \le l2 \le 0.150 \\ & l1 + l2 = 0.500 \\ \end{aligned} $$

3.2 The Steps Adopted in the Analyses Are as Follows

For the completion of one cycle of circular path, the path is divided into 12 steps as shown in Fig. 2 which represents the top view of SCARA robot. The path is divided into 12 steps are shown as points P0, P1 so on to P12. Each step represents 30°. Power is computed at each and every step i.e. for 12 steps and also for the link lengths ranging as mentioned in constraints.

Fig. 2
figure 2figure 2

Top view of a SCARA robot

From the given constraints of \( l1 + l2 = 0.500 \) at each and every point of Po, P1, so on up to P12, 51 set of data will be generated as shown in Table 2 for every 0.001 m increase in link length.

In order to decide the motor torque required, it is necessary to find the maximum power generated among the 12 points and also minimum power for each of these 51 variants required among the given constraints of increase of 0.001 m in link length.

$$ m_{1} = 1.{499 \,\text{kg}}\quad m_{2} = 1.00 1 {\text{ kg}}\quad m_{ 3} = 0. 4 6 2 {\text{ kg}}\quad b_{1} = 0.0 2 2 {\text{ m}}\quad b_{2} = 0.0 2 2 {\text{ m}} $$

Table 1 presents the input data used for computing power data at two joints.

Table 1 Input data used for analyses

As there are 12 steps in the circular path and 51 variants at every step the power equations generated are 12 in number. Power equation (objective function) generated from MATLAB is too large (around 8 pages of MS-word), and therefore only part of data is presented in Fig. 3 for joint1 and joint2 respectively (Table 2).

Fig. 3
figure 3figure 3

a Generation of equations in MATLAB for joint1. b Generation of equations in MATLAB for joint2

Table 2 Data for link length combination

4 Results and Discussions

For the given constraint \( l1 + l2 = 0.50 \) in the work space, the number of combinations obtained for the given constraints are 51. Every combination of link lengths has to complete one cycle which consists of 12 steps. So in order to decide the torque of a motor of joint1 or joint2 it is necessary to choose maximum power from the 12 steps. From the 51 combinations it is necessary to choose minimum power in order to get the best combination of link1 and link2.

Figure 4 represents the power of joint1 with respect different combinations of link lengths. Here it is observed that for l1 = 0.35 m and l2 = 0.15 m is the best configuration for minimum power. Similarly Fig. 5 represents the power of joint2 with respect different combinations of link lengths and this is also yielding the same combination.

Fig. 4
figure 4figure 4

Joint1 power at 12 steps

Fig. 5
figure 5figure 5

Joint2 power at 12 steps

5 Conclusions

In the present work it is assumed that the deburring path of circular shaped is positioned at 0.35 m from the base of the SCARA robot, and the diameter of the component is 0.06 m. The Power needed at joint1 and joint2 are computed for different combinations of link lengths for the given constraints. The best configurations of link lengths for minimizing power are obtained for this configuration is 0.35 m for link1 and 0.15 m for link2. It is observed that the link lengths (i.e. Joint1 and Joint2) of a SCARA robot are optimized for minimizing power. The paper presented a method for best configuration of SCARA robot for minimizing power within the workspace constraints. Similar analyses can be repeated for other sizes of robotic circular paths and placement of the component to optimize the power. If a range of products with different diameters are to be deburred, such analyses are carried out for each and every component and minimum power needed to deburr all components in the range. The procedure will enable robotic designers to choose link lengths where customization is needed.