Next Article in Journal
A Challenge: Support of Standing Balance in Assistive Robotic Devices
Previous Article in Journal
The Hemodynamics of Aneurysms Treated with Flow-Diverting Stents Considering both Stent and Aneurysm/Artery Geometries
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

A Workspace Visualization Method for a Multijoint Industrial Robot Based on the 3D-Printing Layering Concept

1
Department of Electromechanical Measuring and Controlling, School of Mechanical Engineering, Southwest Jiaotong University, Chengdu 610031, China
2
School of Mechanical Engineering, Sichuan University, Chengdu 610065, China
3
Engineering Research Center of Advanced Driving Energy-saving Technology, Ministry of Education, Southwest Jiaotong University, Chengdu 610031, China
4
Key Laboratory of Air-driven Equipment Technology of Zhejiang Province, Ningbo University, Quzhou 324000, China
*
Author to whom correspondence should be addressed.
Appl. Sci. 2020, 10(15), 5241; https://doi.org/10.3390/app10155241
Submission received: 27 June 2020 / Revised: 22 July 2020 / Accepted: 24 July 2020 / Published: 29 July 2020
(This article belongs to the Section Mechanical Engineering)

Abstract

:
The workspace of a robot provides the necessary constraint information for path planning and reliable control of the robot. In this paper, a workspace visualization method for a multijoint industrial robot is proposed to obtain a detailed workspace by introducing the 3D-printing layering concept. Firstly, all possible joint-angle groups of one pose in the joints’ ranges are calculated in detail according to the POE (product of exponential) theory-based forward-kinematics expressions of the multijoint industrial robot. Secondly, a multisolution selection method based on the key degree of the joint is proposed to select the appropriate joint-angle groups. The key degrees of all joints and their key order are obtained according to the sensitivity expressions of all joint angles, calculated from the Jacobian matrix of the robot. One principle based on the smallest differences of the nominal angle is established to select the possible solutions for one joint from the possible solutions for the joint with the smaller key order. The possible solutions for the joint with the highest key order are the appropriate joint-angle group. Thirdly, a workspace visualization method based on the layering concept of 3D printing is presented to obtain a detailed workspace for a multijoint industrial robot. The boundary formula of each layer is derived by forward kinematics, which is expressed as a circle or a ring. The maximum and minimum values of the radius are obtained according to the travel range of the joint angles. The height limitations of all layers are obtained with forward kinematics. A workspace boundary-extraction method is presented to obtain the array of path points of the boundary at each layer. The proposed postprocessing method is used to generate the joint-angle code of each layer for direct 3D printing. Finally, the effectiveness of the multisolution selection method and the workspace visualization method were verified by simulation and experiment.

1. Introduction

Industrial robots play an important role in manufacturing as manufacturing automation and intelligence continuously improve. The industrial robot industry is an important indicator of a country′s manufacturing level and technology level. Industrial robots are widely used in different fields, such as automobile manufacturing, electrical and electronics, and aerospace. In addition, industrial robots are core pieces of equipment for the industrial intelligent manufacturing. The workspace of a robot is an important index of the flexibility of the robot. It provides the necessary constraint information for the path planning and control of the robot. It has important significance in the structural design and path planning.
Kinematics represent the relationship between the position and the pose of the end-effector and the joint variables. This lays the basis for the workspace of the multijoint industrial robots. The Denavit–Hartenberg (D-H) parametric method is a standard method of modeling [1,2,3]. Cumulative errors may be increased with the increased degrees of freedom when using this method. POE (product of exponential) theory is another option for kinematics modeling [4,5,6,7]. An et al. gave a generalized solution of a kinematics problem based on POE in order to analyze the kinematics problems of serial robots [8]. Ayiz et al. used POE theory to solve kinematics problems of industrial robots [9]. POE theory allows global description of rigid body motion and greatly simplifies the analysis of mechanisms. For inverse kinematics, the common methods are the algebraic method, geometric method, and numerical method. Yahya et al. proposed a geometric method to find the optimal solution of the inverse kinematics of redundant or hyperredundant robots from infinite solutions [10]. Ananthanarayanan et al. obtained the inverse kinematics solution by using iteration methods with the initial value of the analytical solution [11]. Modern intelligent algorithms are also widely used to solve the inverse kinematics of robots with complex structures. Baheshti et al. used the adaptive fuzzy logic method to determine the inverse kinematics solution of a 3-DOF (degree of freedom) planar robot [12]. Ayyıldız et al. obtained the solution of an inverse kinematics equation by using four different optimization algorithms [13]. These methods can produce accurate inverse kinematics solutions, but they need a lot of training. The inverse kinematics solution of robots is a multisolution problem. The criterion of shortest travel is generally adopted to select the appropriate solution. Wang et al. proposed a criterion of weighted shortest travel, and selected the appropriate solution by finding the minimum value of weighted Euclidean distance [14]. Liu et al. divided the result of inverse solution with the geometric attitude of the robot to facilitate selection [15].
The determination of the workspace boundary is generally an intermediate but critical step in analyzing multijoint industrial robots [16]. Traditionally, the workspace boundaries of multijoint industrial robots are usually expressed as numerical curves on the boundaries or analytical formulas of a certain kind of robot. Abdel-malek et al. used differential geometry and topology methods to obtain general formulas for the workspace recognition and visualization using the manifold layering method [17]. Wang et al. used the surface envelope overlay (SEO) method to identify and visualize the robot workspace [16]. Graphic methods are another way to find workspace boundaries [18]. Gan et al. took advantage of the arm length of a robot and the angle ranges of its joints to obtain section screenshots of the robot’s workspace on the xz plane via the geometric drawing method [19]. Liu et al. discussed the geometric description of a robot’s workspace and presented the design results of a delta robot for a given workspace [20]. This method is more intuitive, but it is not suitable for robots with more than 3 degrees of freedom. Most of the analysis methods try to extract boundary information from singular points of robots by analyzing the characteristics of the singular points. Based on this theorem, several analytical criteria for determining the workspaces boundaries were derived [21]. Kohli et al. analyzed a workspace and subspace by polynomial criterion and Jacobian matrix, respectively [22,23]. Yang et al. described singular behavior with the row rank defect of the Jacobian matrix and presented the boundary subsurface of the envelope of a workspace using the perturbation method by dividing the singular surface into several subsurfaces [24].
Most numerical methods of singularities or bounds are mapped by grids. All grid-based methods produce an approximate boundary, and the accuracy depends on the size of the grid. The Monte Carlo method is commonly used to generate sample points in a grid in order to identify the grid points near the workspace boundary via the statistical method, which bypasses the necessity of tightness. Cao et al. generated random values of the joint vector data by increasing the probability of the joint vector at the workspace boundary with the upper limit and lower limit of the joint angles [25]. Peidro et al. used the classical Monte Carlo method to generate an inaccurate workspace and used a Gaussian distribution to encrypt and extend the workspace until the boundary of the workspace was reached [26]. Liu et al. added random points locally at the boundary points of each layer in order to generate a clear workspace boundary [27]. However, this method cannot exclude the identification of false holes in the workspace. The layering concept in 3D printing can be introduced to obtain expressions of workspace boundaries, which makes the visualization of the workspace feasible.
In addition, interval-analysis-based methods have been used to analyze workspaces. Interval analysis can be used to evaluate the constraints, and branch-and-prune techniques used to characterize the constraint workspace. This is the basis of prescribed bounded velocity and force transmission factors. Merlet et al. proposed an interval-analysis-based approach to determine almost all the geometries of a simplified Gough platform for which the workspace included an arbitrary set of poses [28]. Chablat et al. used interval analysis to compute a dextrous workspace as well as the largest cube enclosed in this workspace [29]. Kaloorazi et al. proposed a systematic algorithm based on the interval-analysis concept in order to find the maximal singularity-free circle or sphere within the workspace of parallel mechanisms [30]. Viegas et al. used interval analysis to evaluate several performance indexes of parallel kinematic machine design [31]. However, interval-analysis-based methods are mostly used to analyze the workspace of parallel mechanisms.
This paper proposes a new workspace visualization method based on a 3D-printing layering concept in order to obtain and visualize the workspace accurately. At first, all possible solutions of joint angles are obtained in detail based on the forward kinematics and inverse kinematics of a multijoint industrial robot. Next, one multisolution selection method is proposed according to the sensitivity-based key degree of the joints to select the appropriate solutions. Next, a 3D-printing layering concept is introduced to establish one workspace visualization method. The forward kinematics can help to establish the boundary formula of each layer and obtain the limitation of the height of the workspace. The multisolution selection method can help to obtain the joint angles of each layer, which also can be used to print the workspace.
The remains of the paper are organized as follows: In Section 2, the kinematics model of a multijoint industrial robot based on POE theory is established, and all possible joint-angle groups of one pose in the joint range are presented in detail. In Section 3, a multisolution selection method based on the key degree of joints is proposed. Section 4 presents a workspace visualization method based on a 3D-printing layering concept. Section 5 describes the validation of the simulation and experiments that were carried out.

2. Kinematic Model of a Multijoint Industrial Robot

2.1. Forward Kinematics Based on POE Theory

Figure 1 shows the structure and structural parameters of a multijoint industrial robot, and Figure 2 shows the kinematic chain. BCS is the base coordinate system, TCS is the tool coordinate system, and WCS is the workpiece coordinate system. The structural parameters VA, VB, VC, VD, and VW represent the positions of the A-joint, B-joint, C-joint, D-joint, and the base relative to the end-effector, respectively. VU represents the position of the workpiece relative to the base. They were represented as
{ V A = [ A x , A y , 0 ] T = [ ( a 1 + a 3 + a 4 ) , 0 , 0 ] T V B = [ B x , 0 , B z ] T = [ ( a 3 + a 4 ) , 0 , a 5 a 2 ] T V C = [ C x , 0 , C z ] T = [ ( a 3 + a 4 ) , 0 , a 5 ] T V D = [ D x , 0 , D z ] T = [ a 4 , 0 , a 5 ] T V W = [ W x , W y , W z ] T = [ ( a 1 + a 3 + a 4 ) , 0 , a 5 a 2 d 1 ] T V U = [ U x , U y , U z ] T
The clear geometric meaning of POE theory makes it an effective tool for kinematic modeling. One twist can represent the motion of one rigid body. The twist coordinates can be written as
ξ = [ ω T , ν T ] T
where ω is the unit vector of the rotational axis; ν is the linear velocity of the rotational motion; vector ν can be obtained as ν = p × ω; p is the position vector in the base for a point fixed on the axis; and the exponential matrix of the twist is represented as
g = e ξ θ = { [ e ω θ ( I e ω θ ) ( ω × ν ) + ω ω T ν θ 0 1 ] i f   ω 0 [ I ν θ 0 1 ] i f   ω = 0
where eωθ can be calculated by following the formula
e ω θ = I + ω sin θ + ω 2 ( 1 cos θ )
Using the POE formula, the forward kinematics of a multijoint industrial robot with n joints can be expressed as
g s t ( θ ) = e ξ 1 θ 1 e ξ 2 θ 2 e ξ n θ n
In order to obtain the position of the print nozzle (the end-effector) relative to the workpiece, and solve the inverse kinematics conveniently, the base coordinate system was set as the global coordinate system. The obtained kinematic POE formula was translated to the workpiece coordinate system in order to obtain the position of the print nozzle relative to the workpiece. A multijoint industrial robot can be seen as one open chain from the base to the printing nozzle. As shown in Figure 2, the order of the open chain is base→A-joint→B-joint→C-joint→D-joint→printing nozzle. Point RA is the intersection point of the rotation axis of the A-joint. The coordinates of RA in BCS are RA = −VW + VA. Point RB is the intersection point of the rotation axis of the B-joint. The coordinates relative to BCS are RB = −VW + VB. Point RC is the intersection point of the rotation axis of the C-joint. The coordinates relative to BCS are RC = −VW + VC. Point RD is the intersection point of the rotation axis of the D-joint. The coordinates relative to BCS are RD = −VW + VD. First, motion twists and exponential matrices of all axes were established according to the kinematic chain and POE theory. Unit twists of the A-joint, B-joint, C-joint, and D-joint were expressed as
{ ξ 1 = [ ω 1 T , ( p 1 × ω 1 ) T ] T = [ 0 , 0 , 1 , W y , ( A x W x ) , 0 ] T ξ 2 = [ ω 2 T , ( p 2 × ω 2 ) T ] T = [ 0 , 1 , 0 , ( B z W z ) , 0 , B x W x ] T ξ 3 = [ ω 3 T , ( p 3 × ω 3 ) T ] T = [ 0 , 1 , 0 , ( C z W z ) , 0 , C x W x ] T ξ 4 = [ ω 4 T , ( p 4 × ω 4 ) T ] T = [ 0 , 1 , 0 , ( C z W z ) , 0 , D x W x ] T
According to the order of the open chain, the transformation matrix of a multijoint industrial robot can be obtained with the exponential matrix of each joint. The movements of all joints relative to their local zero positions are positive relative to the global coordinate system (BCS). The POE formula of the tool relative to the base of the multijoint industrial robot was then expressed as
T t b = e ξ b e ξ 1 α e ξ 2 β e ξ 3 γ e ξ 4 δ e ξ t = [ n x o x a x P x n y o y a y P y n z o z a z P z 0 0 0 1 ] ,
where ξb = ξt = [0,0,0,0,0,0] represents the twist of the base and the printing nozzle, respectively. The pose matrix is R = [n,o,a] and the position matrix is P = [Px’,Py’,Pz’]T. However, it can be seen from Figure 1 that the fourth joint of the multijoint industrial robot modeled in this paper is a false joint. Due to this limitation of the mechanical structure, the end-effector is always parallel to the printing platform, meaning that δ = −β − γ can be obtained from the geometry, namely
[ P x P y P z ] = [ cos α [ a 3 cos ( β + γ ) + a 2 cos β + a 1 + a 4 ] sin α [ a 3 cos ( β + γ ) + a 2 cos β + a 1 + a 4 ] a 3 sin ( β + γ ) + a 2 sin β + d 1 a 5 ]
According to Equation (3), the position and pose of the multijoint industrial robot can be obtained. The last three joints of the common six-joint industrial robots are concentrated on the wrist to indicate pose and the first three joints indicate the position. Due to the limitation of the mechanical structure of the robot modeled in this paper and the existing 3D-printing methods, only three joints were considered. Thus, the forward kinematics equations of the printing nozzle relative to the workpiece were expressed as
{ P x = cos α [ a 3 cos ( β + γ ) + a 2 cos β + a 1 + a 4 ] U x P y = sin α [ a 3 cos ( β + γ ) + a 2 cos β + a 1 + a 4 ] U y P z = a 3 sin ( β + γ ) + a 2 sin β + d 1 a 5 U z

2.2. All Possible Solutions of Joint Angle in Inverse Kinematics

For the kinematic modeling of robots established by POE theory, the Paden–Kahan subproblem is needed to solve the inverse kinematics. It requires the tool coordinate system relative to the base coordinate system. As shown in Figure 2, [Px,Py,Pz]T was converted to the base coordinate system and expressed as [Px’,Py’,Pz’]T in the base coordinate system, where Px’ = Px + Ux, Py’ = Py + Uy, Pz’ = Pz + Uz.
Firstly, ignoring the periodicity of trigonometric functions and the stroke range of the rotation axis, one rotation angle a, b, and c of the A-joint, B-joint, and C-joint was calculated as
{ a = arctan P y P x b = arctan P z d 1 + a 5 r ± a 1 a 4 ± arccos a 2 2 + ( r ± a 1 a 4 ) 2 + ( P z d 1 + a 5 ) 2 a 3 2 2 a 2 ( r ± a 1 a 4 ) 2 + ( P z d 1 + a 5 ) 2 c = ± arccos a 2 2 + a 3 2 ( r ± a 1 a 4 ) 2 ( P z d 1 + a 5 ) 2 2 a 2 a 3 ,
where r = P x 2 + P y 2 .
Secondly, considering the periodicity of trigonometric function and the travel range of rotation axis, according to the structure of the multijoint industrial robot, the stroke range of α was [−π, π], the stroke range of β was [−π/2, 3π/2], and the stroke range of γ was [−π, π]. The range of the inverse trigonometric function and the stroke range of the A-joint, B-joint, and C-joint are shown in Table 1. For the A-joint, when the range of α was [−π, π], the tangent function was as shown in Figure 3. Thus, the stroke range of equations were divided into four regions, and the dual solution of equations is shown in Table 2.
Combining the solutions of joint angles of the A-joint, B-joint, and C-joint, the four solutions of (α, β, γ) were represented as follows. When Px = 0, r = ( P x + U x ) 2 + ( P y + U y ) 2 , the solutions were represented as
{ a = ± π 2 b = arctan P z + U z d 1 + a 5 r ± a 1 a 4 ± arccos a 2 2 + ( r ± a 1 a 4 ) 2 + ( P z + U z d 1 + a 5 ) 2 a 3 2 2 a 2 ( r ± a 1 a 4 ) 2 + ( P z + U z d 1 + a 5 ) 2 c = ± arccos a 2 2 + a 3 2 ( r ± a 1 a 4 ) 2 ( P z + U z d 1 + a 5 ) 2 2 a 2 a 3
when Px ≠ 0, a = arctan [ ( P y + U y ) / ( P x + U x ) ] , r = ( P x + U x ) 2 + ( P y + U y ) 2 . When α, β, and γ are all within the feasible domain, there were four groups of solutions. As an example, when a > 0, the four groups of solutions were as follows.
{ α 1 = a β 1 = arctan P z + U z d 1 + a 5 r a 1 a 4 + arccos a 2 2 + ( r a 1 a 4 ) 2 + ( P z + U z d 1 + a 5 ) 2 a 3 2 2 a 2 ( r a 1 a 4 ) 2 + ( P z + U z d 1 + a 5 ) 2 γ 1 = arccos a 2 2 + a 3 2 ( r a 1 a 4 ) 2 ( P z + U z d 1 + a 5 ) 2 2 a 2 a 3
{ α 1 = a β 2 = arctan P z + U z d 1 + a 5 r a 1 a 4 arccos a 2 2 + ( r a 1 a 4 ) 2 + ( P z + U z d 1 + a 5 ) 2 a 3 2 2 a 2 ( r a 1 a 4 ) 2 + ( P z + U z d 1 + a 5 ) 2 γ 2 = arccos a 2 2 + a 3 2 ( r a 1 a 4 ) 2 ( P z + U z d 1 + a 5 ) 2 2 a 2 a 3
{ α 2 = a π β 1 = arctan P z + U z d 1 + a 5 r a 1 a 4 + arccos a 2 2 + ( r + a 1 a 4 ) 2 + ( P z + U z d 1 + a 5 ) 2 a 3 2 2 a 2 ( r a 1 a 4 ) 2 + ( P z + U z d 1 + a 5 ) 2 γ 1 = arccos a 2 2 + a 3 2 ( r + a 1 a 4 ) 2 ( P z + U z d 1 + a 5 ) 2 2 a 2 a 3
{ α 2 = a π β 2 = arctan P z + U z d 1 + a 5 r + a 1 a 4 arccos a 2 2 + ( r + a 1 a 4 ) 2 + ( P z + U z d 1 + a 5 ) 2 a 3 2 2 a 2 ( r + a 1 a 4 ) 2 + ( P z + U z d 1 + a 5 ) 2 γ 2 = arccos a 2 2 + a 3 2 ( r + a 1 a 4 ) 2 ( P z + U z d 1 + a 5 ) 2 2 a 2 a 3
For the multijoint robot shown in Figure 1, the A-joint is the first joint, B-joint is the second joint, and C-joint is the third joint. All possible groups of joint angles of one pose for this robot can be represented as follows.
{ Q 1 i = [ θ 1 1 , i , θ 1 2 , i , θ 1 3 , i ] T = [ α 1 , β 1 , γ 1 ] T Q 2 i = [ θ 2 1 , i , θ 2 2 , i , θ 2 3 , i ] T = [ α 1 , β 2 , γ 2 ] T Q 3 i = [ θ 3 1 , i , θ 3 2 , i , θ 3 3 , i ] T = [ α 2 , β 1 , γ 1 ] T Q 4 i = [ θ 4 1 , i , θ 4 2 , i , θ 4 3 , i ] T = [ α 2 , β 2 , γ 2 ] T
where qQi represents the qth possible group of solutions of the point Pi.; qθh,i represents the joint angle of the hth joint in the qth possible group of solutions.

3. Multisolution Selection of Joint Angle Based on the Key Order of the Joint

Four groups of possible solutions can be obtained for one path point. The solutions should be compared and analyzed to obtain the appropriate solution for the actual control and the motion of the robot. This section proposes one multisolution selection method to obtain the appropriate group of joint angles from the four groups of possible solutions. The key order of the joints is determined by comparing the sensitivity of all joint angles. The possible solutions are selected by comparing the increment of joint angles one by one, according to the key degree of all joints.

3.1. Key Order of the Joint

When the multijoint industrial robot is running according to the specified path, the rotation or movement of different joints may have different effects on the end position, which may affect the positioning accuracy of the robot. The appropriate solutions can be selected based on the influences of the joints on the robot, which can evaluate the key degree of the joints.
Sensitivity is introduced to evaluate the influence of each joint on the end position. Generally, sensitivity refers to the ratio of independent variable change to dependent variable change in a system. For sensitivity analysis of the joint in this paper, the angles of each joint of the multijoint industrial robot were regarded as independent variables of the system, and the dependent variable was the displacement of the end of the robot in a single direction. The sensitivity component of the hth joint in one direction can be obtained by calculating the partial derivative of the angle of the hth joint with respect to the positon of the robot end-effector in this direction, that is,
S k = P k θ h , h [ 1 , m ] , k = x , y , z
where Pk is the position of the robot end-effector in the k direction; θh is the joint angle of the hth joint, and m is the number of joints of the robot.
Further, in order to understand the effect of rotation or movement of a single joint on the end position of the robot, the sensitivity of a joint to the end position can be expressed by Sθh, that is,
S θ h = S x 2 + S y 2 + S z 2 = ( P x θ h ) 2 + ( P y θ h ) 2 + ( P z θ h ) 2
where P = (Px, Py, Pz) is the path point of the robot. The sensitivity of each joint can be solved by Jacobian matrix. The Jacobian matrix J can be obtained from Equation (15).
J = [ P x θ 1 P x θ 2 P x θ m P y θ 1 P y θ 2 P y θ m P z θ 1 P z θ 2 P z θ m ]
The sensitivity can be used to evaluate the degrees of influence of the joints on the precision of the robot, so the sensitivity can be used to present the key degree of a joint. According to the sensitivity of all joints, joints are sorted from high key degree to low key degree. The sequence of each joint after sorting is the key order of the joint, which is from one to the number of the joints in the robot. For example, if the sequence of the hth joint after sorting is j, then the key order of the hth joint dh is j, and the hth joint also is jth key joint.

3.2. Multisolution Selection

Even though each solution is available for the kinematics in theory, it is necessary to select one appropriate solution of joint angles from the view of a whole tool path and precise machining. The magnitude of joint motion is directly related to the energy consumption and running time of the entire robot system, and it is also important to ensure that continuous changes in joint angles do not mutate. The incremental changes of each joint angle should be small enough that the relative motion amplitude of the joint between the two path points can be considered in path planning. The key joints and joint increments are used to select a suitable solution from all possible solutions in the inverse kinematics of a multijoint industrial robot.
For one point Pi = [xi, yi, zi]T in the trajectory of the end-effector of the robot, all possible groups of joint angles can be obtained based on Section 2. The previous point Pi−1 in the trajectory and its corresponding joint angles of the robot Qi−1 = [θ1, i−1, θ2, i−1, ∙∙∙, θm, i−1]T are used to select the appropriate solutions Qi of the point Pi. The nominal increments of all joint angles from Pi-1 to Pi can be calculated with the Jacobian matrix by substituting in the joint angles Qi−1 of Pi−1 as
Δ Q i = [ Δ θ 1 , i , Δ θ 2 , i , , Δ θ m , i ] T = ( J i 1 T J i 1 ) 1 J i 1 T ( P i P i 1 )
The nominal joint angles of point Pi can be obtained with the joint angles Qi-1 as
Q i n = Q i 1 + Δ Q i = [ θ 1 , i n , θ 2 , i n , , θ m , i n ] T
where ΔQi represents the nominal increments of all joint angles of Pi; Δθk,i represents the nominal increments of the kth joint; Ji−1 represents the Jacobian matrix by substituting into joint angles Qi−1; Q i n represents the nominal joint angles of point Pi; and θ k , i n represents the nominal joint angles of kth joint.
All joints are sorted based on their key degree, and the key order of all joints can be obtained. For example, if the key order of the hth joint dh = j, it means that the hth joint is the jth key joint. The nominal joint angles of the jth key joint for point Pi can then be obtained as
θ j , i d = θ h , i n
where θ j , i d represents the nominal joint angles of the jth key joint.
One principle based on the smallest differences of the nominal angle for one joint is proposed to select the possible solutions for this joint. The possible joint angles of one joint qθh,i in the possible groups of solutions obtained by the inverse kinematics can be compared with the nominal joint angles θ h , i n of this joint obtained by Equations (16) and (17). The differences can be expressed as | q θ h , i θ h , i n | . The selection principle for one joint is to obtain the smallest differences of joint angles. In this way, the possible solutions for one joint are selected from all possible groups of solutions. The key order of one joint reflects the key degree of the influences of this joint. The possible solutions for the joints with low key order should be selected before selecting the solutions for the joints with high key order. Namely, the possible solutions for the jth key joint can be selected from the possible solutions for the (j−1)th key joint, and all possible groups of solutions obtained in Section 2 can be seen as the possible solutions for the 0th key joint.
The flow chart of the multisolution selection method based on the key order of joints for the appropriate solution of joint angles at one point in the trajectory of the robot is presented in Figure 4. First, all possible groups of joint angles of point Pi are obtained based on Section 2 to serve as the possible solutions of the 0th key joint. Secondly, the Jacobian matrix is obtained by substituting in joint angles of point Pi-1. The sensitivities of all joints are calculated with the Jacobian matrix to sort the joints and obtain the key order of all joints. The nominal increments and the nominal joint angles of all joints are calculated based on Equations (16) and (17), with the Jacobian matrix. Thirdly, the possible solutions of all joints are selected according to the key order of all joints, applying the principle based on smallest differences of the nominal angles. When key order is j, the joint with the key order j is found by comparing the key orders of all joints with j in order to obtain its nominal joint angles. The differences between this nominal joint angle and the corresponding joint angles of all possible solutions for the (j−1)th key joint are calculated. The possible solutions for the jth key joint are the solutions with the smallest differences of the joint angles of this joint. When j is larger than the number of joints of the robot, the possible solutions for all joints are obtained. The possible solutions for the joint with largest key order are the appropriate solutions for point Pi of the robot.

4. A Workspace Visualization Method Based on a 3D-Printing Layering Concept

4.1. Existing Boundary Extraction Method

A numerical Monte-Carlo-based method is adopted to obtain the shape and size of the workspace [32], as shown in the point cloud in Figure 5. This is a simple method to describe a workspace boundary from an engineering perspective. The principle of workspace generation is the mapping relationship between joint variables and workspace. The three joint variables are assigned the same number of random values in their respective motion ranges, and then mapped to the workspace through kinematics equations; thus, a three-dimensional workspace point cloud is formed.
Assuming that the point cloud in the XY plane is extracted when Z = 200 mm, as shown in Figure 6, it may be found that the workspace shape described by the point cloud is not accurate enough. Figure 7 shows the boundary curve formed by extracting the boundary contour of the workspace in Figure 6. The boundary curve presents an irregular curve, which is quite different from the actual regular curve. This deviation has a negative impact not only on the shape, but also on the area and volume estimation of the workspace. This section presents a new method to obtain more accurate boundary.

4.2. Extraction of the Workspace Boundary Based on 3D-Layering Concept

In order to simplify the problem, the concept of 3D-printing layering was used to divide the workspace into many slices along the Z direction, so that the three-dimensional space problem can be converted to a two-dimensional plane. The set of point P is defined as the workspace of the robot, and the generalized joint variables are written as parametric equations, namely
W = { P x ( θ i ) P y ( θ i ) P z ( θ i ) θ i min θ i θ i max
where θi = (αi, βi, γi). From the kinematics Equation (5), the contour boundary equation can be derived as
( P x + U x ) 2 + ( P y + U y ) 2 = [ a 3 cos ( β + γ ) + a 2 cos β + a 1 + a 4 ] 2
From the boundary equation, it can be seen that the boundary of the contour should be a circle or annulus in the XY plane, of which the center is
{ r x = U x r y = U y
and the radius is
r = a 3 cos ( β + γ ) + a 2 cos β + a 1 + a 4
In order to solve the minimum and maximum problems of r, γ is expressed as β by the kinematics Equation (8), namely
cos ( β + γ ) = ± 1 ( P z a 2 sin β d 1 + a 5 + U z a 3 ) 2
The above expression is substituted into Equation (22), giving
r = ± a 3 2 ( P z a 2 sin β d 1 + a 5 + U z ) 2 + a 2 cos β + a 1 + a 4
As can be seen from the expression of radius r, the radius is only related to the variable β at a given height. According to the kinematics Formula (5) of the multijoint industrial robot, the relationship between β and γ can be obtained as
β = arcsin a 3 ( P z d 1 + a 5 + U z ) a 2 2 + 2 a 2 a 3 cos γ + a 3 2 arctan a 3 sin γ a 2 + a 3 cos γ
Figure 8 is a contour of the workspace in the XZ plane. The contour is divided into four parts: FG, GM, ME, and EF. The maximum radius of the boundary of each layer of the workspace in the XY plane is on the contour segment EF, and the minimum radius is on the contour segments FG, GM, and ME. According to the structural parameters and the joint-angle stroke range of the multijoint industrial robot, the condition for forming the contour segment EF (i.e., the outer contour of the workspace) is that when the joint angle γ of the robot takes the maximum, that is, γ = γmax.
β = arcsin a 3 ( P z d 1 + a 5 + U z ) a 2 2 + 2 a 2 a 3 cos γ max + a 3 2 arctan a 3 sin γ max a 2 + a 3 cos γ max
Similarly, the condition for forming the contour segment GM is that when the joint angle γ of the robot takes the minimum, that is, γ = γmin.
β = arcsin a 3 ( P z d 1 + a 5 + U z ) a 2 2 + 2 a 2 a 3 cos γ min + a 3 2 arctan a 3 sin γ min a 2 + a 3 cos γ min
The condition for forming the contour segment FG is that when the joint angle β of the robot takes the maximum, that is, β = βmax. Similarly, the condition for forming the contour segment ME is that when the joint angle γ of the robot takes the minimum, that is, β = βmin. Thus, the minimum and maximum of r in the XY plane can be obtained at a given height Z, as shown in Table 3.
The maximum and minimum of the height Z can be solved as the maximum and minimum problems of a function of several variables in a bounded closed domain D. From Equation (5), a multivariate function of β and γ can be obtained, where β ϵ [βmin, βmax] and γ ϵ [γmin, γmax]:
f ( β , γ ) = a 3 sin ( β + γ ) + a 2 sin β + d 1 U z
The partial derivative is calculated:
{ f β = f β = a 3 cos ( β + γ ) + a 2 cos β f γ = f γ = a 3 cos ( β + γ )
Through calculation, it is found that the critical point cannot be found, that is, (β, γ) cannot be found to make the above two equations simultaneously true. So the maximum and minimum of f(β, γ) has to be on the boundary of D, as follows:
{ z max = max { f ( β min , γ min ) , f ( β max , γ min ) , f ( β min , γ max ) , f ( β max , γ max ) } z min = min { f ( β min , γ min ) , f ( β max , γ min ) , f ( β min , γ max ) , f ( β max , γ max ) }
In conclusion, if the height Z of each layer is constant, then the motion of the robot is constrained to a plane, and accordingly, the kinematic expression of the robot degenerates to
{ P x = cos α [ ± a 3 2 ( P z a 2 sin β d 1 + a 5 + U z ) 2 + a 2 cos β + a 1 + a 4 ] U x P y = sin α [ ± a 3 2 ( P z a 2 sin β d 1 + a 5 + U z ) 2 + a 2 cos β + a 1 + a 4 ] U y
where Pz ϵ [Zmin, Zmax].
In fact, the method proposed in this paper is not only applicable to the robot used in this paper, but also applicable to other joint robots. Most of these joint robots have one common feature, that is, the first joint (some robots have other joints) is the joint with the rotation axis vertically upward. This causes the boundary of each layer of workspace to be a circle or arc. When the height Z is fixed, according to the kinematic formula, the maximum and minimum radius of the workspace at this time can be solved, so that the boundary of each layer of the workspace can be obtained.

5. Example and Verification Experiment

5.1. Verification of the Extraction of Workspace Boundary Based on 3D-Layering Concept

Figure 1 is a structural diagram of the modeled multijoint industrial robot for 3D printing. This position is its initial position. At this position, VA = [–292.0, 0] mm, VB = [−230.0, −76] mm, VC = [−230.0, 79] mm, and VW = [−292.0, −179] mm. In the experiment, VU = [225, −70,12] mm. The range of joint angles is α ϵ [−180°, 180°], β ϵ [−40°, 100°], and γ ϵ [−150°, −55°]. According to Equation (30), f(−40°, −150°) = −34.6246 mm, f(−40°, −55°) = −175.9471 mm, f(100°, −150°) = 117.7572 mm, and f(100°, −55°) = 382.9244 mm. Thus, the maximum of Z is 382.9244 mm, and the minimum is −175.9471 mm. The contour boundary in Equation (31) was imported into the modeling software to generate a 3D printing layering model of the entire workspace, as shown in Figure 9. The layer height was then set to 0.2mm and the 3D-printing codes for the entire workspace were exported for physical printing of the workspace. From the 3D-printing layering model, the boundary curves of each layer were obtained in the entire workspace, as shown in Figure 10 and Figure 11.
As in Section 4.1, in order to compare with other methods, especially the Monte Carlo method, the boundary curve of the workspace when Pz = 200 mm was extracted using the method in this paper, as shown in Figure 12. By comparing Figure 12 with Figure 7, it was observed that the boundary curve of the workspace extracted by Monte Carlo method was irregular, which affected the accuracy and efficiency of the solution of the workspace. The boundary curve extracted by the method proposed in this paper was closer to the real boundary and had a better fitting degree and smoothness compared to the actual workspace.

5.2. Verification of Multisolution Selection Method Based on the Key Degrees of the Joints

In order to verify the correctness of the multisolution selection method based on the key degrees of the joints, the workspace stratification model generated in Section 5.1 was used to select a layer boundary for analysis. As shown in Figure 12, two path points P0 = (258.238, 12.483,200) and P1 = (255.829, 37.333, 200) were taken from the printing path, and Q0 = (2.7675, 99.0989, −117.2417) was known. Verification of the multisolution selection method was performed according to the following steps.
(1)
According to the inverse kinematic formula in Section 2.2, four groups of solutions of joint angles at path point P1 were solved, and then all possible groups of joint angles were obtained according to Equation (12), as shown in Table 4. They were seen as the possible solutions for the 0th key joint.
(2)
According to Section 3.1, the Jacobian matrix J0 was obtainedat the path point P0. The sensitivity Sq of each joint was calculated by the Jacobian matrix J0.
J 0 = [ 98.7823 34.0912 108.8027 251.6241 13.3835 42.7137 0 158.3195 136.8850 ]
{ S α = 270.3195 S β = 162.5004 S γ = 180.0000
The key degrees of all joints were obtained and all joints were sorted according to their sensitivity. For Sα > Sγ > Sβ, the A-joint was the first key joint and its key order was one; the C-joint was the second key joint and its key order was two; the B-joint was the third key joint and its key order was three.
The nominal increments and the nominal joint angles of all joints were calculated based on Equations (16) and (17) with the Jacobian matrix. The displacement components of the end position from the path point P0 to P1 were calculated as ΔPx = −2.409 mm, ΔPy = 24.850 mm, and ΔPz = 0 mm. According to the Jacobian matrix J0 and Equation (16), the nominal increments of all joint angles from P0 to P1 were calculated as
Δ Q 1 = [ Δ α 1 , Δ β 1 , Δ γ 1 ] T = ( J 0 T J 0 ) 1 J 0 T ( P 1 P 0 ) = [ 0.0965 , 0.0083 , 0.0071 ] T r a d = [ 5.5264 ° , 0.4766 ° , 0.4083 ° ] T
Based on Equation (17), the nominal joint angles Q 1 n of point P1 were obtained.
Q 1 n = Q 0 + Δ Q 1 = [ Δ α 1 n , Δ β 1 n , Δ γ 1 n ] T = [ 8.2939 ° , 99.5755 ° , 117.6500 ° ] T
  • For j = 1, the joint with the key order of 1 was found to be the A-joint. Its nominal joint angles θ 1 , 1 n were obtained as 8.2939° based on Q 1 n . The differences | q θ 1 , 1 θ 1 , 1 n | between θ 1 , 1 n and qθ1,1 in Table 4 were calculated. The smallest difference of α-joint angles was 8.3025°−8.2939°=0.0086°. The possible solutions for the first key order were 1Q1 and 2Q1, and then, j = j + 1 = 2. The second key order was the C-joint, and its nominal joint angles θ 3 , 1 n were obtained as −117.65°. The differences of θ 3 , 1 n were calculated with the joint angles of the C-joint in 1Q1 and 2Q1. The possible solutions for the second key order were 1Q1, which had the smallest difference of θ 3 , 1 n . For the third key order, the nominal joint angles were θ 2 , 1 n = 99.5755 and the possible solution was also 1Q1. As a result, the appropriate solution of point P1 was Q1 = 1Q1 = [8.3025, 99.0992, −117.2420]T.

5.3. Experiments

The printing code of the workspace was generated with the proposed kinematics model and the multisolution method by setting VU = [0,0,0]T. The multijoint-industrial-robot-based 3D-printing system then printed its own workspace. The simulation are proposed with the printing code by setting the layer height as 10mm and 5mm, respectively as shown in Figure 13. It was found here that it was difficult to print the actual size of the workspace, because the end-effector approached singularities near the boundaries of its workspace, where it lost rigidity and precision. In addition, the layer height setting may make printing time be too long, which will waste time and printing materials.
The entire workspace was scaled by 10 times in equal proportion, so the robot could print its workspace. The origin of the base of the robot was chosen as the origin of the scaling, as shown in Figure 14. After scaling, the height dimensions became Zmax = 38.2924 mm and Zmin = −17.5947 mm. The total height was 55.8871 mm. For printing, the scaled workspace model was translated to the print platform, as shown in Figure 14. First, the model was translated from the origin of the base to the origin of the WCS with vector Va = [225, −70,12]T mm. At this time, the height of a part of the model was negative. The model was then translated with vector Vp = [70, 70, 5.5947]T mm to make the model on the print platform. The printing code with joint angles of the robot was generated based on the model and the proposed multisolution method. Vector VU = Va + Vp was used for the calculation of the all possible joint-angle groups. With the printing code, the scaled workspace was printed with this multijoint robot. The printing material was PLA. The layer height was set to 0.2 mm, and feed velocity was 50 mm/min. The printed model of the scaled workspace is shown in Figure 15. The results showed that the workspace visualization method produced the real workspace, and the proposed kinematics and multisolution method can be used for 3D printing with such a robot.
The proposed method can be used to obtain and visualize a detailed workspace of a multijoint industrial robot by using a 3D-printing layering concept. There are some possible industrial applications. For example, multijoint industrial robots play a great role in automatic production lines, such as in automation welding, automatic material delivery, and automatic assembly. Detailed workspace models of such robots can be a great help for the arrangement of the robots. The trajectory of the welding or the material delivery should be in the workspace of the robot. The workspace also provides a restricted area for path planning and reliable control of the robot in an automatic production line. In addition, multijoint industrial robots can be used for 3D printing to manufacture complex freeform surfaces. The visual workspace can help to determine and optimize the locations of the printed parts. The printing trajectories are also limited by the workspace of the robot.

6. Conclusions

In this paper, a workspace visualization method of multijoint industrial robot based on 3D layering concept is proposed. First, a kinematic model of a multijoint industrial robot is established based on POE theory. According to the periodicity of trigonometric function and the stroke range of joint angles, all possible joint-angle groups of one pose are presented in detail.
Secondly, a multisolution selection method based on the key order of the joint is proposed. According to the Jacobian matrix of the multijoint industrial robot, the sensitivity of each joint is calculated to determine the key degree of each joint. The key order of a joint with a higher key degree is lower. A principle based on the smallest nominal joint-angle difference is then established. The nominal increments and the nominal joint angles of all joints are calculated with the Jacobian matrix. The possible solutions for the joints with high key order are selected from the joints with low key order. The possible solutions for the joint with the highest key order are the appropriate joint-angle groups of the point.
Thirdly, a workspace visualization method based on a 3D-printing layering concept is proposed. The formula of each layer’s contours are derived from the forward kinematics of the robot. It was proven that each layer of the workspace is a circle or ring. According to the structural parameters and the stroke range of joint angle, the minimum and maximum of the radius are obtained. The height limitations of the workspace are obtained based on the forward kinematics. According to the method of boundary extraction, the array of the boundary path points is obtained. Based on the postprocessing method proposed in this paper, the array is coded to obtain the joint-angle code of the workspace, which can be used for direct 3D printing. Finally, in order to verify the effectiveness of the proposed visualization method, an experimental multijoint-industrial-robot 3D-printing platform was used to print the whole workspace.

Author Contributions

Writing (review and editing), G.F.; Investigation and validation, C.T. and C.L.; Writing (original draft), T.G.; Resources, X.D.; Project administration, G.F. and H.G. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by the National Natural Science Foundation of China, grant number 51805457; by Sichuan Science and Technology Program, grant number 2019YJ0249; by China postdoctoral science foundation (2020M673211); by the National Natural Science Foundation of China, grant number 51775452; by the National Natural Science Foundation of China, grant number 51605253; and by the Fundamental Research Funds for the Central Universities, grant number 2682019CX30.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Xu, D.; Calderon, C.A.A.; Gan, J.Q.; Hu, H. An analysis of the inverse kinematics for a 5-dof manipulator. Int. J. Autom. Comput. 2005, 2, 114–124. [Google Scholar] [CrossRef] [Green Version]
  2. Iliukhin, V.N.; Mitkovskii, K.B.; Bizyanova, D.A.; Akopyan, A.A. The modeling of inverse kinematics for 5 dof manipulator. Procedia Eng. 2017, 176, 498–505. [Google Scholar] [CrossRef]
  3. Lee, C.S.G.; Ziegler, M. Geometric approach in solving inverse kinematics of puma robots. IEEE Trans. Aerosp. Electron. Syst. 1984, 20, 695–706. [Google Scholar] [CrossRef]
  4. Fu, G.; Fu, J.; Shen, H.; Xu, Y.; Jin, Y.A. Product-of-exponential formulas for precision enhancement of five-axis machine tools via geometric error modeling and compensation. Int. J. Adv. Manuf. Technol. 2015, 81, 289–305. [Google Scholar] [CrossRef]
  5. Chen, Q.; Zhu, S.; Zhang, X. Improved inverse kinematics algorithm using screw theory for a six-dof robot manipulator. Int. J. Adv. Robot. Syst. 2015, 12, 140–148. [Google Scholar] [CrossRef]
  6. Fu, G.; Gao, H.; Gu, T. A universal postprocessor of general table-tilting type of five-axis machine tools without rotational tool center point function for actual nc code generation. In Proceedings of the ASME 2018 13th International Manufacturing Science and Engineering Conference, College Station, TX, USA, 18–22 June 2018. [Google Scholar]
  7. Fu, G.; Gong, H.; Fu, J.; Gao, H.; Deng, X. Geometric error contribution modeling and sensitivity evaluating for each axis of five-axis machine tools based on poe theory and transforming differential changes between coordinate frames. Int. J. Mach. Tools Manuf. 2019, 147, 103455. [Google Scholar] [CrossRef]
  8. An, H.S.; Seo, T.W.; Lee, J.W. Generalized solution for a sub-problem of inverse kinematics based on product of exponential formula. J. Mech. Sci. Technol. 2018, 32, 2299–2307. [Google Scholar] [CrossRef]
  9. Ayiz, C.; Kucuk, S. The kinematics of industrial robot manipulators based on the exponential rotational matrices. In Proceedings of the IEEE International Symposium on Industrial Electronics, Seoul, Korea, 5–8 July 2009. [Google Scholar]
  10. Yahya, S.; Mohamed, H.A.F.; Moghavvemi, M.; Yang, S.S. A geometrical inverse kinematics method for hyper-redundant manipulators. In Proceedings of the 2008 10th Intl. Conf. on Control, Automation, Robotics and Vision 2008, Hanoi, Vietnam, 17–20 December 2008; pp. 1954–1958. [Google Scholar]
  11. Ananthanarayanan, H.; Ordóñez, R. Real-time inverse kinematics of (2n+1) dof hyper-redundant manipulator arm via a combined numerical and analytical approach. Mech. Mach. Theory 2015, 91, 209–226. [Google Scholar] [CrossRef]
  12. Beheshti, M.T.H.; Tehrani, A.K.; Ghanbari, B. An optimized adaptive fuzzy inverse kinematics solution for redundant manipulators. In Proceedings of the International Symposium on Intelligent Control 2003, Houston, TX, USA, 8 October 2003; pp. 924–929. [Google Scholar]
  13. Ayyıldız, M.; Cetinkaya, K. Comparison of four different heuristic optimization algorithms for the inverse kinematics solution of a real 4-dof serial robot manipulator. Neural Comput. Appl. 2015, 27, 825–836. [Google Scholar] [CrossRef]
  14. Guang, W.-D.; Yin, L.-Z.; Wei, S.-T. Inverse kinematics of robot based on weighted optimization. Modul. Mach. Tool Autom. Manuf. Tech. 2016, 5, 1–8. [Google Scholar]
  15. Xiao, L.-G.; Feng, T.-R. Algorithm for the inverse kinematics calculation of 6-dof serial welding robots based on geometry. Mach. Des. Manuf. 2015, 2, 29–35. [Google Scholar]
  16. Sen, D.; Singh, B.N. A geometric approach for determining inner and exterior boundaries of workspaces of planar manipulators. J. Mech. Des. 2008, 130, 022306. [Google Scholar] [CrossRef]
  17. Abdel, K.-M.; Yang, J. Workspace boundaries of serial manipulators using manifold stratification. Int. J. Adv. Manuf. Technol. 2006, 28, 1211–1229. [Google Scholar] [CrossRef]
  18. Wang, X.-Y.; Ding, Y.-M. Method for workspace calculation of 6r serial manipulator based on surface enveloping and overlaying. J. Shanghai Jiaotong Univ. Sci. 2010, 15, 556–562. [Google Scholar] [CrossRef]
  19. Gan, Y.; Yu, W.; He, W.; Wang, J.; Sun, F. The research about prescribed workspace for optimal design of 6r robot. Mod. Mech. Eng. 2014, 4, 154–163. [Google Scholar] [CrossRef] [Green Version]
  20. Liu, X.-J.; Jinsongwang, W.; Oh, K.-K.; Kim, J. A new approach to the design of a delta robot with a desiredworkspace. J. Intell. Robot. Syst. 2004, 39, 209–225. [Google Scholar] [CrossRef]
  21. Bergamaschi, P.R.; Nogueira, A.C.; de Fátima Pereira Saramago, S. Design and optimization of 3r manipulators using the workspace features. Appl. Math. Comput. 2006, 172, 439–463. [Google Scholar] [CrossRef]
  22. Kohli, D.; Spanos, J. Workspace analysis of mechanical manipulators using polynomial discriminants. J. Mech. Transm. Autom. Des. 1985, 107, 209–215. [Google Scholar] [CrossRef]
  23. Kohli, D.; Hsu, M.-S. The jacobian analysis of workspaces of mechanical manipulators. Mech. Mach. Theory 1987, 22, 265–275. [Google Scholar] [CrossRef]
  24. Yang, J.; Abdel-Malek, K.; Zhang, Y. On the workspace boundary determination of serial manipulators with non-unilateral constraints. Robot. Comput. -Integr. Manuf. 2008, 24, 60–76. [Google Scholar] [CrossRef]
  25. Cao, Y.; Lu, K.; Li, X.; Zang, Y. Accurate numerical methods for computing 2d and 3d robot workspace. Int J. Adv. Robot. Syst. 2011, 8, 1–13. [Google Scholar] [CrossRef] [Green Version]
  26. Peidró, A.; Reinoso, Ó.; Gil, A.; Marín, J.M.; Payá, L. An improved monte carlo method based on gaussian growth to calculate the workspace of robots. Eng. Appl. Artif. Intell. 2017, 64, 197–207. [Google Scholar] [CrossRef]
  27. Liu, Z.; Liu, H.; Luo, Z.; Zhang, X. Improvement on monte carlo method for robot workspace determination. Trans. Chin. Soc. Agric. Mach. 2013, 44, 230–235. [Google Scholar]
  28. Merlet, J.P. An Improved Design Algorithm Based on Interval Analysis for Spatial Parallel Manipulator with Specified Workspace. In Proceedings of the IEEE International Conference on Robotics & Automation, Seoul, Korea, 21–26 May 2001; pp. 1289–1294. [Google Scholar]
  29. Chablat, D.; Wenger, P.; Merlet, J.P. Workspace Analysis of the Orthoglide Using Interval Analysis. In Advances in Robot Kinematics; Lenarcic, J., Thomas, F., Eds.; Springer: Dordrecht, The Netherlands, 2002. [Google Scholar]
  30. Kaloorazi, M.H.F.; Masouleh, M.T.; Caro, S. Determining the Maximal Singularity-free Circle or Sphere of Parallel Mechanisms Using Interval Analysis. Robotica 2014, 34, 1–15. [Google Scholar] [CrossRef]
  31. Viegas, C.; Daney, D.; Tavakoli, M.; de Almeida, T. Performance analysis and design of parallel kinematic machines using interval analysis. Mech. Mach. Theory 2017, 115, 218–236. [Google Scholar] [CrossRef] [Green Version]
  32. Yi, C.; Xiujuan, L.; Yi, N.; Guanying, Y. Computation and geometrical error analysis of a 3d robot’s workspace. Mech. Sci. Technol. 2006, 25, 1458–1461. [Google Scholar]
Figure 1. The structural parameters of one multijoint industrial robot.
Figure 1. The structural parameters of one multijoint industrial robot.
Applsci 10 05241 g001
Figure 2. The kinematic chain of the multijoint industrial robot.
Figure 2. The kinematic chain of the multijoint industrial robot.
Applsci 10 05241 g002
Figure 3. The curve of the tangent function when α is in the range of [−π, π].
Figure 3. The curve of the tangent function when α is in the range of [−π, π].
Applsci 10 05241 g003
Figure 4. The flow chart of the multisolution selection method based on the key order of joints.
Figure 4. The flow chart of the multisolution selection method based on the key order of joints.
Applsci 10 05241 g004
Figure 5. Workspace point cloud.
Figure 5. Workspace point cloud.
Applsci 10 05241 g005
Figure 6. The point cloud in the XY plane.
Figure 6. The point cloud in the XY plane.
Applsci 10 05241 g006
Figure 7. The boundary curve in the XY plane.
Figure 7. The boundary curve in the XY plane.
Applsci 10 05241 g007
Figure 8. Schematic diagram of the contour of the workspace in the XZ plane.
Figure 8. Schematic diagram of the contour of the workspace in the XZ plane.
Applsci 10 05241 g008
Figure 9. The 3D-printing model of the entire workspace.
Figure 9. The 3D-printing model of the entire workspace.
Applsci 10 05241 g009
Figure 10. 3D workspace composed of boundary curves (nine layers).
Figure 10. 3D workspace composed of boundary curves (nine layers).
Applsci 10 05241 g010
Figure 11. 3D workspace composed of boundary curves (281 layers).
Figure 11. 3D workspace composed of boundary curves (281 layers).
Applsci 10 05241 g011
Figure 12. The boundary extracted by the method in this paper.
Figure 12. The boundary extracted by the method in this paper.
Applsci 10 05241 g012
Figure 13. Workspace printing path: (a) setting the height to 10 mm; (b) set the height to 5 mm.
Figure 13. Workspace printing path: (a) setting the height to 10 mm; (b) set the height to 5 mm.
Applsci 10 05241 g013
Figure 14. The scaling and the translating of the workspace model for 3D printing.
Figure 14. The scaling and the translating of the workspace model for 3D printing.
Applsci 10 05241 g014
Figure 15. (a) The 3D-printing system robot; (b) a 3D-printed object of the workspace.
Figure 15. (a) The 3D-printing system robot; (b) a 3D-printed object of the workspace.
Applsci 10 05241 g015
Table 1. The range of inverse trigonometric functions and the stroke of rotation axes.
Table 1. The range of inverse trigonometric functions and the stroke of rotation axes.
Solution of Rotation AnglesRange of Inverse Trigonometric FunctionsStroke of A-Joint, B-Joint, or C-Joint
a = arctan ( P y / P x ) [ π / 2 , π / 2 ] [ π , π ]
b = arctan P z d 1 + a 5 r ± a 1 a 4 ± arccos a 2 2 + ( r ± a 1 a 4 ) 2 + ( P z d 1 + a 5 ) 2 a 3 2 2 a 2 ( r ± a 1 a 4 ) 2 + ( P z d 1 + a 5 ) 2 [ 3 π / 2 , 3 π / 2 ] [ π / 2 , 3 π / 2 ]
c = ± arccos a 2 2 + a 3 2 ( r ± a 1 a 4 ) 2 ( P z d 1 + a 5 ) 2 2 a 2 a 3 [ π , π ] [ π , π ]
Table 2. The solutions of the joint angle of the A-joint.
Table 2. The solutions of the joint angle of the A-joint.
a = arctan ( P y / P x ) Double Solutions of αRegion Belonged to
a > 0 α 1 = a
α 2 = a π

a < 0 α 1 = a
α 2 = a + π

a = 0 α 1 = 0
α 2 = π
-
-
Table 3. The value of β when r takes the minimum and maximum at a given height Z.
Table 3. The value of β when r takes the minimum and maximum at a given height Z.
The Scope of the PzThe Value of β when rminThe Value of β when rmax
P z < P z ( 0 , γ min ) ( L 1 ~ L 2 ) β min arcsin a 3 ( P z d 1 + a 5 + U z ) a 2 2 + 2 a 2 a 3 cos γ max + a 3 2 arctan a 3 sin γ max a 2 + a 3 cos γ max
P z ( 0 , γ min ) P z < P z ( β min , γ min ) ( L 2 ~ L 3 ) β min
arcsin a 3 ( P z d 1 + a 5 + U z ) a 2 2 + 2 a 2 a 3 cos γ min + a 3 2 arctan a 3 sin γ min a 2 + a 3 cos γ min
arcsin a 3 ( P z d 1 + a 5 + U z ) a 2 2 + 2 a 2 a 3 cos γ min + a 3 2 arctan a 3 sin γ min a 2 + a 3 cos γ min
arcsin a 3 ( P z d 1 + a 5 + U z ) a 2 2 + 2 a 2 a 3 cos γ max + a 3 2 arctan a 3 sin γ max a 2 + a 3 cos γ max
P z ( β min , γ min ) P z < P z ( β max , γ min ) ( L 3 ~ L 4 ) arcsin a 3 ( P z d 1 + a 5 + U z ) a 2 2 + 2 a 2 a 3 cos γ min + a 3 2 arctan a 3 sin γ min a 2 + a 3 cos γ min arcsin a 3 ( P z d 1 + a 5 + U z ) a 2 2 + 2 a 2 a 3 cos γ max + a 3 2 arctan a 3 sin γ max a 2 + a 3 cos γ max
P z P z ( β max , γ min ) ( L 4 ~ L 5 ) β max arcsin a 3 ( P z d 1 + a 5 + U z ) a 2 2 + 2 a 2 a 3 cos γ max + a 3 2 arctan a 3 sin γ max a 2 + a 3 cos γ max
Table 4. Four groups of solutions at P1 (unit: degree).
Table 4. Four groups of solutions at P1 (unit: degree).
Num.α (qθ1,1) (°)β (qθ2,1) (°)γ (qθ2,1) (°)
1Q18.302599.0992−117.2420
2Q18.3025−32.0948117.2420
3Q1−171.697599.0992−117.2420
4Q1−171.6975−32.0948117.2420

Share and Cite

MDPI and ACS Style

Fu, G.; Tao, C.; Gu, T.; Lu, C.; Gao, H.; Deng, X. A Workspace Visualization Method for a Multijoint Industrial Robot Based on the 3D-Printing Layering Concept. Appl. Sci. 2020, 10, 5241. https://doi.org/10.3390/app10155241

AMA Style

Fu G, Tao C, Gu T, Lu C, Gao H, Deng X. A Workspace Visualization Method for a Multijoint Industrial Robot Based on the 3D-Printing Layering Concept. Applied Sciences. 2020; 10(15):5241. https://doi.org/10.3390/app10155241

Chicago/Turabian Style

Fu, Guoqiang, Chun Tao, Tengda Gu, Caijiang Lu, Hongli Gao, and Xiaolei Deng. 2020. "A Workspace Visualization Method for a Multijoint Industrial Robot Based on the 3D-Printing Layering Concept" Applied Sciences 10, no. 15: 5241. https://doi.org/10.3390/app10155241

APA Style

Fu, G., Tao, C., Gu, T., Lu, C., Gao, H., & Deng, X. (2020). A Workspace Visualization Method for a Multijoint Industrial Robot Based on the 3D-Printing Layering Concept. Applied Sciences, 10(15), 5241. https://doi.org/10.3390/app10155241

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop