Mechanism and Machine Theory 46 (2011) 1784–1795
Contents lists available at ScienceDirect
Mechanism and Machine Theory j o u r n a l h o m e p a g e : w w w. e l s ev i e r. c o m / l o c a t e / m e c h m t
Application of the redundant servomotor approach to design of path generator with dynamic performance improvement Zhihong Sun a, Bing Zhang a, Long Cheng c, W.J. Zhang a, b,⁎ a b c
College of Mechanical Engineering, Donghua University, Shanghai, 201620, China Department of Mechanical Engineering, University of Saskatchewan, Saskatoon, SK, Canada S7N 5A9 State Key Laboratory of Intelligent Control and Management of Complex Systems, Institute of Automation, Chinese Academy of Sciences, Beijing, 100190, China
a r t i c l e
i n f o
Article history: Received 29 September 2010 Received in revised form 22 May 2011 Accepted 3 June 2011 Available online 18 July 2011
Keywords: Path generation Servomotor Redundancy Shaking moment
a b s t r a c t In a companion paper published elsewhere [4], we proposed a design approach based on the general redundancy concept to improving the dynamic performance of a mechanism, especially shaking moment and driving torque attenuation. The approach was based on the redundancy function of the servomotor, so the approach is called redundancy servomotor (RSM). In this paper, we apply the RSM to the path generator problem in mechanism design. We will demonstrate how path generator design and dynamic performance improvement can be performed in an integrated manner with the RSM approach. The proposed RSM design procedure can be applied to any type of path generators (four-bar linkage, five-bar linkage, etc.). The contribution of this paper is the proposed RSM design procedure and technique with which to result in a path generator with a better dynamic performance. The other contribution is the proposed approach to the design of the servomotor's trajectory or plan, which is useful to the joint-level path planning problem in robotics. © 2011 Elsevier Ltd. All rights reserved.
1. Introduction Mechanisms are mechanical units that fulfill motion transfer and/or force transfer. Mechanisms consist of a set of joints and a set of links. There are three types of mechanism design problems in the mechanism design literature, namely (1) path generation, (2) function generation, and (3) rigid body guidance. The problems are mostly geometrical in the sense that (1) displacements of links are unrelated to time and (2) relations among displacements of links are of a main concern. This geometric nature of mechanism design is further attributed to the fact that traditional mechanisms are driven by the constant velocity motor. The time course of the constant velocity motor in this case is simple; namely the displacement is a constant multiplied by time. With the emergency of electronics especially servo drive technology, the constant velocity motor is replaced by the servomotor in many applications. This is seen to give a birth of mechatronic mechanisms [1]. In this paper, we focus on the path generation problem with mechatronic mechanisms. The path generation problem can be stated as: given a set of positions of the end-effector, to determine a type of linkage (type synthesis) and to determine dimensions of links (dimensional synthesis) to make the endeffector “reach” the given or prescribed positions. In this paper, we focus on dimensional synthesis. There are several specialized types of the path generation problem related to the generic statement of the path generation problem upon two perspectives: (a) whether the input displacement is also involved as prescribed and (b) whether the “reach” means the exact reach or approximate reach. In this paper, we consider the path generation problem with the features that (i) the input displacement is not prescribed and (ii) the “reach” means the exact reach. Such a path generation problem is called in the literature the precision-point path generation problem [2]. ⁎ Corresponding author at: Department of Mechanical Engineering, University of Saskatchewan, Saskatoon, SK, Canada S7N 5A9. Tel.: +1 306 966 5478; fax: +1 306 966 5427. E-mail address:
[email protected] (W.J. Zhang). 0094-114X/$ – see front matter © 2011 Elsevier Ltd. All rights reserved. doi:10.1016/j.mechmachtheory.2011.06.003
Z. Sun et al. / Mechanism and Machine Theory 46 (2011) 1784–1795
1785
Take a four-bar linkage as an example (Fig. 1). Given 9 positions at point M (Fig. 1), which is the maximal number of positions for the precision point-to-point synthesis problem with the four-bar linkage, the 9 design variables of the linkage can be determined, along which the 9 motor angles (q1 in Fig. 1) are also determined. This means that when the motor reaches the 9 angles, respectively, the 9 positions of M on the path will be precisely generated (Fig. 1). When the motor is a constant velocity motor, the 9 motor angles in the joint space are in fact along a line (dashed line in Fig. 2). Note that the slope of the dashed line represents the velocity of a constant velocity motor. When the motor is a servomotor, a curve (Fig. 2) which passes through the 9 points represents the variable speed of the servomotor. This curve is also called “plan” in robotics [3]. Naturally, one can ask what a curve (including the straight line) of the servomotor can achieve the best dynamic performance of the linkage. It is noted that the role of this curve or servomotor (in Fig. 2) is redundant to the kinematic parameter of the linkage and constant velocity motor for the precision point-to-point path generation in this case. Therefore, in our previous work, we called the idea of making use of this curve i.e., the servomotor's plan redundant servo motor (RSM) approach [4]. In short, the RSM approach can be stated as: to determine the servomotor's plan to improve the dynamic performance of the mechanism for path generation. In this paper, we propose a technique based on the RSM approach, including the design model for the dynamic performances such as shaking moment and driving torque and the method to determine the servomotor's plan. The design model is a decoupled design procedure, that is, to first determine the dimension of a linkage and then to determine a servomotor's plan with the result of dimensional synthesis as a constraint. In the following, we first discuss related work to further explain the novelty of the RSM approach with its proposed design procedure and technique. 2. Related work Dynamic performances in this paper refer to shaking force, shaking moment and driving torque. The dynamic performances are therefore not functional tasks a mechanism is required to fulfill but side effects inevitably produced with the operation of the mechanism. Mechanism design is to determine various parameters to make a mechanism fulfill its function (e.g., path generation) while eliminating as many side effects as possible. The parameters can be classified into several categories: (1) kinematic parameters (KP) such as the length of a link, (2) dynamic parameters (DP) such as the mass of a link, (3) control parameters such as gains of the PID controller [18,5,6] and gain of the adaptive controller [7]. Recognition of potential roles of servomotor's variable speed to design or mechatronic mechanisms and robotics may date back to the work by Nahon and Angeles [8] in the late 1980s, dynamic performance improvement or reducing of side effects [4]. Yan and Yan [18] considered the servomotor's plan as a variable to be optimized and created an optimization design model for the mechanism path generation problem, which includes both the kinematic and dynamic goals. In their approach, the servomotor does not act as a redundant means but a full active means to satisfy, with other design parameters, all the design goals at once. As a result, the fulfillment of the kinematics goal such as path generation may be compromised. This is because the kinematics parameters that contribute to the kinematics goal are also “required” to fulfill the dynamics goal. In Soong and Yan [19], though it is shown that fulfillment of the kinematic goal is not compromised by concurrently satisfying both the kinematic goal and dynamic goal, the design task they considered is such that the end-point of the rocker passes three positions, which can be actually fulfilled by prescribing the length of the rocker. In other words, only one kinematic parameter, i.e., the length of the rocker, is responsible for meeting the kinematic goal, but all the other kinematic parameters are not responsible for the kinematic goal, and they can be readily utilized for meeting the dynamic goal. Thuemmel employed the servomotor's variable speed functionality for force balancing [9]. He further classified the redundancy approach into two kinds: one which increases the degree of freedom of a mechanism and the other which does not. He focused on the second class of redundancy approach. In particular, in his approach, a servomotor is placed on a joint to produce the counter-
Fig. 1. Path generation problem for four-bar linkage in XOY coordinate.
1786
Z. Sun et al. / Mechanism and Machine Theory 46 (2011) 1784–1795
Fig. 2. Servomotor path planning for path generation.
force to cancel a component of the joint reaction force. With this approach, for balancing one component of the force, there is a need of one servomotor. According to our analysis [4], his approach cannot be called redundancy approach. Indeed, the servomotor in this approach may best be described as an additional physical component or parameter to meet the mechanism design requirement (i.e., joint force balancing). For force balancing, this approach will increase cost dramatically due to the need of “extra” servomotors in the system. Further, this approach will also increase power consumption due to a “flying” motor on the moving joint of a mechanism. Oliver et al. [10] proposed an approach which falls into the first class of the redundancy approach of Thuemmel [9]. They included a servomotor with an additional link to extend a four-bar linkage to a five-bar linkage for reducing the total deflection of a tracer due to the link flexibility shown in Fig. 3. Oliver's approach is not the same as the RSM approach in that in the RSM approach, the degree of freedom is not increased. It is interesting to note that Oliver's redundant servomotor approach is towards the improvement of the kinematic goal (i.e., the tip movement), and the approach does not contribute to the improvement of the dynamic performances such as shaking force, shaking moment and driving torque. Yu and Jiang [11] employed the second class of the redundancy approach of Thuemmel [9] to reduce the vibration of the linkage, and their approach is structurally similar to Thuemmel's (i.e., having extra servomotors on the joints) but is for the same purpose of Oliver's. Therefore, their approach will suffer from the same problem as Thuemmel's, namely extra cost and “flying” motor. Kochev [12] is perhaps the first to propose the use of a servomotor for dynamic balancing. He observed that the variable speed of the servomotor may contribute to the dynamic force balancing but he has not gone to the development of this technique. The redundant robotic concept for dynamic balancing of mechanisms was proposed by Nahon and Angeles [8]. In their approach, the redundancy means that the number of servomotors is more than the degree of freedom of the robot, which falls into the first class of the redundancy approach of Thuemmel [9]. Angeles et al. [13] further proved that use of active control methods (i.e., servomotor's variable speed) cannot completely balance shaking moment. Angeles's approach is not the same as the RSM approach we proposed [4], as Angeles's approach increases degrees of freedom of the mechanism. Moreover, Angeles's concern is of the dynamic goal only and the added servomotor is not for the kinematic goal such as path generation. The RSM approach may be relevant to the motion control technique for interacting forces in a robot system [14]. However, the main concern there is to control interacting forces through controllers. The RSM idea may look close to the path planning problem in robotics [3]. However, there is some significant difference. The general statement of the path planning problem in robotics is: given an initial position A and an end position B of the robot, to determine a path, along which the robot can move from A to B. The requirement for determining the path usually involves some dynamic constraint improvement, e.g., smoothness in motion, which is usually associated with the mathematical continuity of the path only. There is no explicit consideration of the dynamic performance such as shaking moment, driving torque, and so on. Certainly, a path in the context of robotics is not considered as a means of redundancy to improve dynamic performances of the robot.
Fig. 3. Oliver's approach (a): original four-bar linkage with one degree of freedom; (b): extended five-bar linkage with two degree of freedom.
Z. Sun et al. / Mechanism and Machine Theory 46 (2011) 1784–1795
1787
3. The RSM approach to path generator design 3.1. Design strategy and procedure We propose a design strategy called decoupled design according to the axiomatic design theory (ADT) [15], Fig. 4 shows the relation between design parameters (DPs) and design requirements (DRs) (functions and constraints). The decoupled design strategy is first to determine the kinematic DPs to satisfy the kinematic DRs and then to determine the dynamic DPs to satisfy the dynamic DRs. Following such a decoupled design strategy, the design procedure of the RSM for the path generation problem is as follows: Step 1: Given a number of positions of the end-effector (for a four-bar linkage, the maximal number of such positions is 9) to determine the dimension of the linkage. Along with the determination of the kinematic DP, servomotor's angular displacements, corresponding to the position of the end-effector, are also determined. Step 2: To determine the servomotor's plan, subject to the constraints of the prescribed angular displacements from Step 1, to satisfy the dynamic DR. In the following, without the loss of generality, we take a four-bar linkage as an example to illustrate this design procedure. 3.2. Four-bar linkage with six positions Suppose that a four-bar linkage's end-effector M is required to pass six positions exactly (0.103, 0.220), (0.072, 0.242), (−0.004, 0.232), (−0.082, 0.149), (−0.091, 0.100), (0.036, 0.090). Based on the traditional optimization synthesis technique, we can obtain the dimensions of the linkage as well as the inputs as follows: l1 = 0.103 m, l2 = 0.304 m, l3 = 0.241 m, l4 = 0.298m. We round up them to l1 = 0.10 m, l2 = 0.30 m, l3 = 0.24 m, l4 = 0.30 m. Correspondingly, the motor angular displacement is 45.23, 77.85, 119.63, 180.30, 209.04, 331.02°, respectively. We further assume that the mass and mass distribution design has already fully balanced the linkage (see Fig. 5). A complete set of parameters of the linkage is listed in Table 1 (see Fig. 5). Next, we propose a technique to design the servomotor's plan and a design model for dynamic performance improvement with the servomotor's plan. We will then show the results for this example system. 3.3. Design of a servomotor's plan We consider the servomotor's plan over a region consisting of (O, A), (A, B), (B, C), (C, D), (D, E), (E, F), (F, G), where O: start displacement (i.e., qO = 0) and G: end displacement (i.e., qG = 360°). The corresponding angles of the servomotor are qA = 45.23°, qB = 77.85°, qC = 119.63°, qD = 180.30°, qE = 209.04°, qF = 331.02°. In the following, we propose two methods for making a servomotor's plan. Let us define: qi Ii,i + 1 Pd
Inputs which correspond to the required positions of the end-effector; i = 1,2,⋅ ⋅ ⋅, m (m: the total number of the required positions at the end-effecotr). Servomotor's plan for the segment i from to i + 1. Polynomial function of time with the power being d; for example, P3: I = a0 + a1t + a2t2 + a3t 3 (where I: servomotor's plan; t: time).
3.3.1. Method 1 We consider three positions (i − 1, i, i + 1) and two segments (i − 1 to i, i to i + 1) without loss of generality. Let Pdi, i + 1(d ≥ 3) between ti and ti + 1. I is composed of 2 segments, and there are 4 × 2 coefficients associated with I. Suppose that there is a first order continuity at the desired (or control) points, i.e.: 8 Ii−1;i ðti Þ = qi > >
i
i
Ii−1;i ðti−1 Þ = qi−1 > > : Ii;i + 1 ti + 1 = qi + 1
ð1Þ
I˙i−1;i ðti Þ = I˙i;i + 1 ðti Þ:
ð2Þ
Fig. 4. Decoupled design procedure (adapted from Axiomatic Design Theory [16]).
1788
Z. Sun et al. / Mechanism and Machine Theory 46 (2011) 1784–1795
Fig. 5. Four-bar linkage with dimension and mass distribution.
Eqs. (1) and (2) are constraints to a servomotor's plan (i.e., coefficients in I). If P3 is applied to all the segments, there will be 8 coefficients in Ii − 1,i and Ii,i + 1 together, and there are 5 constraints from Eqs. (1) and (2). Therefore, there are 3 coefficients which are independent and taken as optimal variables. The general equation to determine the total number of optimal variables can be expressed by Nopt = Ncoef − Nconst, where Nopt: the total number of independent coefficients or optimal variables; Ncoef: the total number of coefficients; Nconst: the total number of constraints. If there is a second order continuity at ti, we will have one more constraint as follows: :: :: I i−1;i ðti Þ = I i;i +1 ðti Þ:
ð3Þ
If P3 is applied to all the segments, with the 2nd order continuity at ti, there will be 6 constraints. Therefore, there are 2 optimal variables. 3.3.2. Method 2 :: The general idea with method 2 is that at a control point, differential information such as q, ˙ q and so on is taken as an optimal variable. Let us consider three control points i − 1, i, i + 1 again. It is noted that for a precision point-to-point path generation problem qi is known. Let us further consider first order continuity at point ti. The constraint equations are: 8 Ii−1;i ðti−1 Þ = qi−1 > >
i
i
ð4Þ
I ðt Þ = q > > : i;i + 1 i i Ii;i + 1 ti + 1 = qi + 1
Table 1 Parameters of the four-bar mechanism. Parameters l1 (m) l2 (m) l3 (m) l4 (m) r1 (m) r2 (m) r3 (m) m1 (kg) m2 (kg) m3 (kg) I1 (kg·m2) I2 (kg·m2) I3 (kg·m2) φ1(rad) φ2(rad) φ3(rad)
Unbalanced linkage
CW linkage
0.10 0.30 0.24 0.30 0.05 0.15 0.12 0.20 0.50 0.40 0.00017 0.00375 0.00192 0 0 0
0.10 0.30 0.24 0.30 0.10 0.15 0.10 0.25 0.50 0.60 0.00563 0.00375 0.02976 π 0 π
Z. Sun et al. / Mechanism and Machine Theory 46 (2011) 1784–1795
8 > I˙i−1;i ðti−1 Þ =q˙ i−1 > > >
i
i
> I˙i;i +1 ðti Þ =q˙ i > > > :˙ Ii;i +1 ti + 1 =q˙ i + 1
1789
ð5Þ
:
If P3 is applied to all the segments, there are 8 coefficients to be determined. From Eqs. (4) and (5), there are 8 constraints. In this case, the 8 coefficients in I can always be expressed as functions of qj ; q˙ j , where j = i − 1, i, i + 1. It is noted that qj is known and q˙ j ð j = i−1; i; i + 1Þ to be determined, and therefore, q˙ j are taken as optimal variables. Let D be the order of continuity at a control point. One may happen to see that for P3, m = 2, D = 1, the number of optimal variables for both method 1 and method 2 is the same, i.e., 2. Let us consider a second order continuity with method 2. In this case, we will have the following constraints: 8 :: :: > Ii−1;i ðti−1 Þ = qi−1 > > :: > ::
Ii;i + 1 ðti Þ = qi > > :: > :: :I i;i + 1 ti +1 = qi + 1
ð6Þ
If P3 is applied to all the segments and m = 3, we will have 8 coefficients in Ii − 1,i and Ii,i + 1 and 12 constraints. In this case, there would be no guarantee to have solutions for the coefficients in I given the differential terms at the control points; we consider this situation to be that a servomotor plan has no integrity. The notion of integrity or no integrity is also applicable to method 1. On a general note, one can see that imposition of a high order of continuity at control points may not necessarily produce a servomotor plan which is both smooth and optimal; the latter means to achieve the best dynamic performance. Furthermore, if we have P5 to all segments (2 segments in this case) and first order continuity, we have 12 coefficients in I and 8 constraints from Eqs. (4) and (5). The optimal variable will include q˙ i−1 ; q˙ i ; q˙ i + 1 and coefficients that are independent (the number of which is 4 in this case). So the total number of optimal variables in this case is 7. For a most general situation (i.e., Pd, m, D), the total number of optimal variables with method 2 can be expressed by Nopt = Nhd + Ncoef − Nconst, where Nopt: the total number of optimal variables; Ncoef: the total number of coefficients; Nconst: the total number of constraints; and Nhd: the total number of D-order terms at the control points (D ≥ 1). Further, the independent coefficients are selected from the coefficients which are associated with the higher power of time. For example, for a P3(a0, a1t, a2t 2, a3t 3) with two independent coefficients to be chosen as optimal variables, a2 and a3 will be chosen as they are associated with two higher power of time. This strategy of choosing independent coefficients as optimal variables is based on the rationale that the higher power coefficients (e.g., a2 and a3 in this example) contribute to the ability of the servomotor's plan more “adaptive” than the lower power coefficients (e.g., a0 and a1 in this example). Several examples are given. If P = 3, D = 1, and m = 3, we will have 8 coefficients and 8 constraints. In this case, q˙ i−1 ; q˙ i ; q˙ i + 1 are variables to be optimized. If P = 3, D = 2, and m = 3, we will have 8 coefficients and 9 constraints equations. In this case, there is no :: :: :: guarantee to express 8 coefficients in terms of qi−1 ; q˙ i−1 ; qi−1 ; qi ; q˙ i ; qi ; qi + 1 ; q˙ i + 1 ; qi + 1 . That is to say, the plan has an integrity problem, and thus the plan is invalid. Table 2 lists more designs along with their characteristics with the two methods, respectively. From this table, it can be seen that the number of optimal variables with the two methods is the same except that an integrity problem occurs to method 2 (e.g., P = 3, D = 2, m = 3). Finally, we go back to examine our example. With the both methods, we consider a servomotor's plan over a whole period of motion. That is to say, given the six required points (i.e., A, B, C, D, E, F), we will have seven segments: (tO, tA),(tA, tB),⋅ ⋅ ⋅, (tF, tG). Among them, servomotor's plans in the segments of (tO, tA) and (tF, tG) will take the same form as those for the other regions. The constraint at tO is: I(tO) = qO, and the constraint at tG is: I(tG) = qG. Further, due to the periodic property of motion, at positions O and G, we have extra constraints, i.e.: IO, A(tO) = IF, G(tG), İO, A(tO) = İF, G(tG) for a first order continuity at the control points, and so on for a higher order continuity at the control points.
Table 2 Comparison of the two methods (Ncoef: the total number of coefficients; Nconst: the total number of constraints; Nopt: the total number of optimal variables; m: the total number of points; ‘–’: no integrity). Plan
m
P
D
3 3 5 5 7 7
1 2 1 2 2 3
3 3 3 3 3 3
Method 1
Method 2
Ncoef
Nconst
Nopt
Ncoef
Nconst
Nopt
8 8 12 12 16 16
5 6 5 6 6 7
3 2 7 6 10 9
8 8 12 12 16 16
8 9 8 12 12 16
3 – 7 6 10 9
1790
Z. Sun et al. / Mechanism and Machine Theory 46 (2011) 1784–1795
Fig. 6. Servomotor path planning for path generation with 6 precision-positions.
3.4. Design model for dynamic performance improvement In this study, we consider that dynamic performances include ground joint force, shaking moment, and driving torque. Further, we assume that mass design has already been done, which has fully balanced the mechanism. We take the RSM approach only, i.e., we consider designing the servomotor's plan to improve the dynamic performances. It is noted, however, that a combined mass design and servomotor's plan design approach may lead to a further better design than the RSM approach. Nevertheless, examining the RSM approach alone should have its own practical significance and help generate knowledge about the effectiveness of the RSM concept. Further, we consider two general situations: (1) over a whole period of motion and (2) on required or desired motion points only. In practice, (2) can be meaningful in that we may not be interested in the control of dynamic performances over a whole region of motion but on “critical” points, e.g., points where the manipulating tool and target are in contact [16,17]. Mathematical models for the two situations are, however, not much different, as in (1) we will take an approach to discretize the whole period of motion into a set of discrete points, say N numbers of points. Therefore, models for (1) and (2) may only differ in the total number of points; that is to say, for (1) the number of points is N, while for (2) the number of points is the number of the desired positions or the number of positions in interest for a particular application.
Fig. 7. The results of Model 1 in 9th poly. 2nd order.
Z. Sun et al. / Mechanism and Machine Theory 46 (2011) 1784–1795
1791
Fig. 8. The results of Model 2 in 9th poly. 2nd order.
Derivation of the model for the dynamic performance can be formed in Appendix A for completeness. According to Appendix A, forces at joints A and D are represented by FA =
qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi 2 2 2 2 F41x + F41y ; FD = F43x + F43y
ð7Þ
The driving torque is represented by 3
TIN = ∑
i=1
:: mi ai vi + Ii qi qi : q1
ð8Þ
The shaking moment is represented by :: :: 3 2 2 MSH = − ∑ mi ki + ri −li ri cosφi qi −2m2 l2 r2 T1 q1 + T˙ 1q˙ 1 sin φ2 : i=1
Fig. 9. The results of Model 3 in 9th poly. 2nd order.
ð9Þ
1792
Z. Sun et al. / Mechanism and Machine Theory 46 (2011) 1784–1795
Table 3 Optimal variables and the parameters' setting in GA (ith polynomial 2nd/3rd order means that the servomotor's angular function is ith polynomial with 2nd/3rd order continuity at each desired motion point in Fig. 6; ai (j) is the coefficient of the polynomial in the jth segment). Parameters
Plan 5th ploy. 2nd order
Variables
q˙ O ; q˙ A ; ⋯; q˙ F :: :: :: qO ; qA ; ⋯; qF
7th poly. 3rd order q˙ O ; q˙ A ; ⋯; q˙ F :: :: :: qO ; qA ; ⋯; qF ::: ::: ::: qO ; qA ; ⋯; qF
7th ploy. 2nd order
9th poly. 3rd order
9th ploy. 2nd order
q˙ O ; q˙ A ; ⋯; q˙ F :: :: :: qO ; qA ; ⋯; qF
q˙ O ; q˙ A ; ⋯; q˙ F :: :: :: qO ; qA ; ⋯; qF ::: ::: ::: qO ; qA ; ⋯; qF
q˙ O ; q˙ A ; ⋯; q˙ F :: :: :: qO ; qA ; ⋯; qF ::: ::: ::: ; q ; ⋯; qF qO A
ð1Þ
ð1Þ
ð7Þ
ð7Þ
a6 ; a7 ; ⋯; a6 ; a7
ð1Þ
ð1Þ
ð7Þ
ð7Þ
a8 ; a9 ; ⋯; a8 ; a9
ð1Þ
ð1Þ
ð1Þ
a6 ; a7 ; ⋯; a8 ; ð1Þ ð7Þ a9 ; ⋯; a6 ; ð7Þ
ð7Þ
ð7Þ
a7 ; a8 ; a9 The number of optimal variables Para. setting in GA Population size Initial range Elite count Crossover fraction Mutation function Generation Stall generation Function tolerance
14 50
21 40
28 80
36 70
42 90
[0; 2] 2 0.8 Gaussian 200 100 1e-008
[0; 2] 2 0.8 Gaussian 200 100 1e-008
[0; 2] 2 0.8 Gaussian 200 100 1e-008
[0; 2] 2 0.8 Gaussian 200 100 1e-008
[0; 2] 2 0.8 Gaussian 200 100 1e-008
In this paper, we have the following models. Model 1 (Fig. 7) (sffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi) 1 n 2 ∑M OF ð1Þ = min n j = 1 SH
ð10Þ
Model 2 (sffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi) 1 n 2 ∑T OF ð2Þ = min n j = 1 IN
ð11Þ
Model 3 sffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi sffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi) 1 n 1 n 2 2 ∑ M + w2 ∑T OF ð3Þ = min w1 n j = 1 SH n j = 1 IN (
where w1 = w2 = Model 4 OF ð4Þ = min
ð12Þ
1 2
(sffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi) 1 n ∑ M2 n j = 1 SHK
ð13Þ
Table 4 Results of the dynamic performances for the selected servomotor's plans (with method 2). Opt. Obj.
Model 1 (Nm)
Model 2 (Nm)
Model 3 (N)
0.0198250 0.0195471 0.0194212 0.0194001 0.0193547 0.0193121
0.0061396 0.0059491 0.0056214 0.0051465 0.0051146 0.0048971
0.0129824 0.0127845 0.0125213 0.0122652 0.0122257 0.0121563
Plan Constant velocity motor 5th ploy. 2nd order 7th poly. 3rd order 7th ploy. 2nd order 9th poly. 3rd order 9th ploy. 2nd order
Z. Sun et al. / Mechanism and Machine Theory 46 (2011) 1784–1795
1793
Table 5 Results of the shaking moments at the desired points (i.e., A, B, C, D, E, F) with the selected servomotor's plans (MSHK: shaking moment at a point k) (with method 2). Position
MSHA (Nm)
Plan Constant velocity motor 5th ploy. 2nd order 7th poly. 3rd order 7th ploy. 2nd order 9th poly. 3rd order 9th ploy. 2nd order
MSHB (Nm)
MSHC (Nm)
1.0e-004
1.0e-004
1.0e-004
− 336 0.5014 0.0145 − 0.0841 − 0.0324 0.1425
− 140 − 0.8457 − 2.2140 0.0068 − 0.2854 − 0.5475
36 0.1542 − 0.1985 − 0.1214 − 0.0198 0.2147
MSHD (Nm)
MSHE (Nm)
MSHF (Nm)
1.0e-004
1.0e-004
1.0e-004
158 0.0034 0.0471 0.0441 0.0215 − 0.0625
165 − 0.2145 0.4565 0.4647 0.0214 − 0.0611
78 0.4421 − 0.1101 0.6124 1.7221 0.0215
where MSHK is the shaking moment at the required motion positions, (K = A, B, C, D, E, F). These models will be further expressed as the optimization problem model, which is a straightforward formulation. 4. Results and discussion 4.1. Optimal variables for different servomotor's plan and parameters setting in GA Table 3 lists optimal variables for several servomotor's plans with method 2 and the parameter setting in GA in the Matlab environment. These GA parameters are determined with some tuning process for them, respectively. For instance, population size is tuned to reach the highest. 4.2. Dynamic performances over a whole period of motion Table 4 shows the results of the dynamic performances for the selected servomotor's plans (in Table 3). From this table it can be seen that all the servomotor's plans (not constant velocity) are better than the constant velocity motor. This implies the effectiveness of the RSM technique. Further, from Table 4 it can be seen that the servomotor's plan (P = 9, D = 2) is the best among all the four models. This means that there is a sense to design the best servomotor's plan to a particular design problem. Figs. 7–9 show the results of Model 1, Model 2, and Model 3 of the plan with P=9 and D=2. It is usually true that the higher the order of polynomial the better the results; for example, the design of (P = 9, D = 2) is better than the design of (P = 7, D = 2) which is better than that of (P = 5, D = 2). However, the higher the order of continuity at desired points may not lead to a better results than the lower order of continuity; for example, the design of (P = 9, D = 2) is better than that of (P = 9, D = 3). This is because the order of continuity brings constraints to the servomotor's plan or curve, causing the curve to have lesser adaptive ability or to be “stiff”. It is interesting to notice from Table 4 that the higher order polynomial may not lead to a better result with the same order of continuity, e.g., the design of (P = 9, D = 3) is better than (P = 11, D = 3), (see Table 4). As common logic, the design of (P = 11, D = 3) has a greater number of optimal variables and thus, it should be better than that of (P = 9, D = 3). This shows that the nature of determining the servomotor's plan is such that there are many local minima, and this nature significantly challenges the effectiveness of any optimization algorithm. It is noted that one important characteristic of GA is bottom up in the sense that a “new” generation of solution is generated not based on the paradigm of the minimum objective function. Therefore, in practice, the GA algorithm per use may not always reach a global minimum. 4.3. Shaking moments with different servomotor's plans at selected motion points One of the salient advantages with the RSM technique may be a full cancelation of shaking moments at a set of selected points (e.g., desired motion points). Table 5 shows the result of the shaking moments at the desired points (A, B, C, D, E, and F). It can be clearly seen
Table 6 Comparison of two methods. Opt. Obj.
Model 1 (Nm)
Model 2 (Nm)
Model 3 (N)
0.0198250 0.0194789 0.0194001 0.0193854 0.0193121
0.0061396 0.0065321 0.0051465 0.0050214 0.0048971
0.0129824 0.0130047 0.0122652 0.0121847 0.0121563
Plan Constant velocity motor 7th ploy. 2nd order (method 7th ploy. 2nd order (method 9th ploy. 2nd order (method 9th ploy. 2nd order (method
1) 2) 1) 2)
1794
Z. Sun et al. / Mechanism and Machine Theory 46 (2011) 1784–1795
from this table that the shaking moments at all these points are canceled especially with the servomotor's plan (P = 9, D = 2). In fact, theoretically, the total number of desired motion points where shaking moments are canceled is equal to the total number of optimal variables. 4.4. Comparison of the two methods By taking P = 7, D = 2 for our six precision-point synthesis problem, Table 6 shows the result with method 1 and method 2, respectively. From this table, it can be seen that a better result is achieved with method 2. Although this may just be an isolated evidence, method 2 may indeed be better than method 1 in terms of the “adaptive” ability of the servomotor's plan. It is noticed that the relationship between coefficients of a polynomial and D-order derivatives at desired motion points is such that the latter is an emerging state of the former. Since method 2 takes D-order derivatives (i.e., emerging state variables) at desired motion points as part of the optimal variables, it tends to have better direct control of a servomotor's plan toward the best one; in other words, method 2 allows for easier reaching to the best than method 1. Nevertheless, more research is needed to compare the two methods. 5. Conclusions The RSM concept and approach to dynamic balancing of machines or mechanisms was developed [4]. In this paper, the RSM approach was applied in designing a path generator. Dynamic performances considered are shaking moment, driving torque, and ground joint force. In particular, with the RSM concept, we proposed a decoupled design process instead of a coupled design process proposed by Yan and Yan [18]. In conjunction with this decoupled design process, two methods for making a servomotor's plan were proposed. It appears that method 2 along with its concept (i.e., taking emerging state variable as the optimal variable) has never been studied in the literature. Without loss of generality, a four-bar linkage was taken as an example to illustrate the proposed RSM design procedure and path planning methods. The genetic algorithm was employed for computation of the design example. As a result, the following conclusions can be drawn: (1) With the RSM decoupled design procedure, the overall dynamic performances such as shaking moment, driving torque, and ground joint force can all be improved, and the improvement of the dynamic performances will not degrade the fulfillment of the kinematic goal such as precision point to point following as discussed in this paper. (2) The RSM procedure can fully cancel shaking moments at selected points. The number of such points depends on the design of a servomotor's plan; in particular, it is equal to the number of optimal variables for a servomotor's plan. (3) Two methods for making a servomotor's plan are proposed, namely method 1 and method 2. In method 1, the structural parameters of a servomotor plan are directly used as the optimal variables, while in method 2, the emerging parameters of the servomotor at desired motion control points are used as the optimal variables. Method 2 may be better than method 1 in terms of the optimum they each can reach. (4) Method 2 is more sophisticated according to our experience, and it may potentially be useful to the joint-level path planning problem in robotics. In the future, a more comparative study of method 1 and method 2 for the servomotor's plan in a general context is warranted; it is noted that in the present paper, only one case was compared. The proposed future study may have a high potential to enrich the knowledge domain of motion planning for robots and complex mechanisms with multi-servo drivers. Acknowledgments This study has been partially supported by Natural Science and Engineering Research Council of Canada (NSERC) through a discovery grant to the corresponding author (W.J. Zhang). This work has also been partially supported by the National Natural Science Foundation of China (Grant 61004099), and the start-up fund for the recipient of Presidential Award of Chinese Academy of Sciences. Appendix A. Equations for dynamic performances for a four-bar linkage The schematic of a four-bar linkage is shown in Fig. 5. The definition of the notation in Fig. 5 is self-explanatory along with notes listed in Table 2. The full force balancing condition equations are given by
m1 r1 = m2 r2′
l1 l2
φ1 = φ2′
m3 r3 = m2 r2′
l3 l2
φ3 = φ2 + π:
ðA:1Þ
Z. Sun et al. / Mechanism and Machine Theory 46 (2011) 1784–1795
1795
After full shaking force balancing, the shaking moment is the same regardless of any point on the ground. The shaking moment is calculated by the following equations: 8 dHA > > > < MSH = − dt 3 > 2 > > : HA = ∑ mi xi y˙ i −yi x˙ i + ki q˙ i
ðA:2Þ
i=1
where MSH is the shaking moment, HA is the angular momentum of the whole mechanism with respect to A, mi and q˙ i are the mass and angular velocity of link i, respectively. xi and yi, x˙ i and y˙ i are the position and velocity of the center of mass, ki is the radius of the moment of inertia of link i, k2i = mIi i . From Eq. (A.2), we can obtain an explicit expression of the shaking moment as: :: :: 3 2 2 MSH = − ∑ mi ki + ri −li ri cosφi qi −2m2 l2 r2 T1 q1 + T˙ 1q˙ 1 sinφ2 i=1
ðA:3Þ
:: where T1 = sin(q1 − q2), qi, q˙ i and qi (i = 1, 2, 3) are all the functions of q1. Therefore, the shaking moment is a function of q1. By applying the principle of virtual work to the mechanism shown in Fig. 5, the driving torque TIN is obtained as follows: 3
TIN = ∑
i=1
:: mi ai vi + Ii qi qi q1
ðA:4Þ
:: where ai is the acceleration vector of center of gravity of the link i, vi is the velocity vector of center of gravity of the link i, qi is the angular acceleration of link i, and Ii is the moment of the link i about its center of gravity. References [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19]
W.J. Zhang, Letters to editor: double meaning, ASME Mech. Eng. 131 (5) (2009) 8 (April). B.S. Thompson, A survey of analytical path-synthesis techniques for plane mechanisms, Mech. Mach. Theory 10 (1975) 197–205. John J. Craig, Introduction to Robotics, Prentice Hall, New York, 2004. Sun Zhihong, Zhang Bing, Huang Jian, Zhang Wenjun, On a mechatronics approach to balancing of robotic mechanisms: redundant servo motor, Proceedings of International Conference on Advanced Mechatronics (ICAM2010), 2010, Osaka, Japan Oct. 4–6, CD Room, 2010, p. 6. W.J. Zhang, Q. Li, S.L. Guo, Integrated design of mechanical structure and control algorithm for a programmable four-bar linkage, IEEE/ASME Trans. Mechatron. 4 (4) (1999) 354–362 (December). W.J. Zhang, X.B. Chen, Mechatronics design for a programmable four-bar mechanism, Proc. Inst. Mech. Eng. Part C J. Mech. Eng. Sci. 215 (2000) 365–375. L. Cheng, Y. Lin, Z.-G. Hou, M. Tan, J. Huang, W.J. Zhang, Adaptive tracking control of hybrid machines: a closed-chain five-bar mechanism case, IEEE/ASME Trans. on Mechatronics 99 (2011) 1–9. M.A. Nahon, J. Angeles, Force optimization in redundantly-actuated closed kinematic chains, Proc. of the 1989 IEEE Intern. Conf. on Robotics and Automation, Scottsdale, Arizona, 1989, pp. 951–956. Thomas Thuemmel, Dynamic balancing of linkages by active control with redundant drives, 9th World Congress on TMM (IFToMM), Mailand, 1995, pp. 970–974. J.H. Oliver, D.A. Myscock, B.S. Thompson, The synthesis of flexible linkage by balancing tracer point quasi-static deflections using microprocessor and advanced materials technologies, Mech. Mach. Theory 20 (2) (1985) 103–114. Yue-Qing Yu, Bin Jiang, Analytical and experimental study on the dynamic balancing of flexible mechanisms, Mech. Mach. Theory 42 (2007) 626–635. I.S. Kochev, Active balancing of the frame shaking moment in high speed planar machines, Mech. Mach. Theory 27 (1) (1992) 53–58. J. Angeles, M. Nahon, T. Thummel, Active control for the complete dynamic balancing of linkage, 22nd Biennal ASME Mech. Conference, Flexible Mechanisms, Dynamics and Analysis, vol. 47, 1992, pp. 305–310, Scottsdale/Arizona (September) 13–16. S. Ali, A. Moosavian, E. Papadopulos, Free-flying robots in space: an overview of dynamics modeling, planning and control, Robotica 25 (2007) 537–547. N.P. Suh, The Principles of Design, Oxford University Press, New York, 1990. W. Zhao, W.J. Zhang, M.M. Gupta, G.H. Zong, P.R. Ouyang, A micro visual servo system for biological cell manipulation, the Seventh International Conference on Control, Automation, Robotics and Vision, ICARCV, Singapore, 2002, (December). P.R. Ouyang*, W.J. Zhang$, M.M. Gupta, W. Zhao, Overview of the Development of a Visual based Automated Bio-Micromanipulation System, Mechatronics. 17 (December) (2007) 578–588. Hong-Sen Yan, Guo-Jhih Yan, Integrated control and mechanism design for the variable input-speed servo four-bar linkages, Mechatronics 19 (2009) 271–285. R.C. Soong, H.S. Yan, Simultaneous minimization of shaking moment, driving torque, bearing reactions of complete force balanced linkages, J. Chin. Soc. Mech. Eng. 28 (2007) 243–254.