An algorithms for planning S-curve motion profile considering arbitrary short path length
Bạn đang xem tài liệu "An algorithms for planning S-curve motion profile considering arbitrary short path length", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Tài liệu đính kèm:
- an_algorithms_for_planning_s_curve_motion_profile_considerin.pdf
Nội dung text: An algorithms for planning S-curve motion profile considering arbitrary short path length
- Science & Technology Development Journal, 24(3):2019-2030 Open Access Full Text Article Research Article An algorithms for planning S-curve motion profile considering arbitrary short path length Thanh Luan Bui1, Truong Giang Le2, Phuc Thinh Doan2,* ABSTRACT Motion control is a key technology in controlling machine tools, manipulator robots, automation machines, etc. In motion controllers, velocity and position are controlled by closed-loop feedback Use your smartphone to scan this to create desired motions. The main target in motion control is fast, accurate, small oscillations, no QR code and download this article overshoot in both position and velocity. However, the traditional velocity planning methods cannot satisfy the requirements. One of the most popular control methods is using S-curve motion profile. Many papers and researchers have reported on this method. If the path length is long enough, the S-curve motion profile is easy to achieve through therd 3 order polynomial model consisting of seven stages. The challenge becomes hard when the path length is small. It should be noted that the path length is arbitrary in the usual numerical control (NC) program. This paper proposes a new algorithm for planning S-curve motion profile in considering arbitrary short path length. There are two steps to perform a S-curve motion profile algorithm: type judgment and parameter calculation. Base on condition constraints, a categorization of 8 types using 3rd order polynomial S-curve model, is introduced. The proposed algorithm ensures that the system always has the solution. The simulation results demonstrate the effectiveness of the proposed algorithm. Key words: Motion Control, S-Curve, Motion Profile, Short Path Length, Point-to-Point Motion Control INTRODUCTION Nguyen et al. investigate a generalization of the poly- Nowadays, the demand for robots and automation nomials S-curve model and make the comparison rd th th 7 machines is increasing rapidly. Motion control is a of 3 , 4 , and 5 order S-curve motions . He 1 Industrial Maintenance Training key technology in controlling machine tools, manip- also introduces a new trigonometric jerk model and Center, HCMUT, VNU-HCM th ulator robots, and automation machines in the man- comparison it with the 5 order polynomial model. 2 Nguyen Tat Thanh University, Ho Chi ufacturing industry. The main target in motion con- Though the trigonometric model is as simple as the Minh City, Vietnam trol is fast, accurate, small oscillations, no overshoot 3rd order polynomial, it produces as good perfor- Correspondence in both position and velocity. Unfortunately, the tra- mance as the 5th order polynomial model. However, Phuc Thinh Doan, Nguyen Tat Thanh ditional motion control methods cannot satisfy the re- Nguyen’s method is too complex and time-consuming University, Ho Chi Minh City, Vietnam quirements of high-accuracy machining 1–3. to be used in practice. In general, the computation Email: dpthinh@ntt.edu.vn The common motor drivers on the market only load increases with the increase in the polynomial or- support the simple trapezoidal velocity profiles. History der. Therefore, higher-degree polynomial profiles de- • Received: 2021-06-12 The trapezoidal Acc/Dec velocity profiles have non- mand more computational efforts. • Accepted: 2021-07-15 smooth transition, discontinuous acceleration, and Chen et al. proposed an algorithm that considering a • Published: 2021-08-10 jumping phenomenon. These properties induce the short path length that can be applied to NC program. vibration of machine tools during the movement 4,5. DOI : 10.32508/stdj.v24i3.2588 According to the travel length, the motion is divided As a result, trapezoidal velocity profiles tend to cause into seven types 8. However, the method did not pro- overshoots and excite residual vibrations that require vide a clear solution after type classification. time for the machine to reach the final position with desired precision. This could be a potential problem Huang et al. provided a categorization of 12 types us- Copyright rd 9 for the precision system. Therefore, to improve pro- ing the 3 order polynomial S-curve model . How- © VNU-HCM Press. This is an open- ever, this research did not consider a short path access article distributed under the ductivity and reduce cost and execution time, it is nec- terms of the Creative Commons essary to develop a new motion planning method. As length. Therefore, when applying Huang’s algorithm, Attribution 4.0 International license. a result, S-curve motion profile has been proposed to the system becomes non-solution in some situations. reduce the tendency to excite the vibration of the sys- This paper proposes a new algorithm for planning S- tem 6. curve motion profile in considering arbitrary short Cite this article : Bui T L, Le T G, Doan P T. An algorithms for planning S-curve motion profile consid- ering arbitrary short path length. Sci. Tech. Dev. J.; 24(3):2019-2030. 2019
- Science & Technology Development Journal, 24(3):2019-2030 path length to overcome the above-mentioned short- Second stage: Constant acceleration comings. The algorithm is required to generate a mo- ∀ ∈ t [t1,t2] tion profile with a confined jerk, acceleration, and ji (t) = 0 speed. However, in the case of path length is very ai (t) = amax = jmaxT1 (2) small, it is impossible for all system parameter inputs τ vi (t) = vi (t1) + amax 2 for motion control to be satisfied. The most impor- 1 s (t) = s (t ) + v (t )τ + a τ2 tant is moving path length must be satisfied. There- i i 1 i 1 2 6 max 2 fore, the proposed algorithm consists of a feed rate Third stage: Decrease acceleration modification and an end velocity modification. There ∀ ∈ are two steps to perform a S-curve motion profile al- t [t2,t3] j (t) = − j gorithm: S-curve type judgment and parameters cal- i max a (t) = a (t ) − j τ culation. Base on condition constrains, a categoriza- i i 2 max 3 v (t) = v (t ) + a (t )τ − 1 j τ2 (3) tion of 8 types using the 3rd order polynomial S-curve i i 2 i 2 3 2 max 3 s (t) = s (t ) + v (t )τ + 1 a (t )τ2 − 1 j τ3 model is introduced. After type judgment, time pa- i i 2 i 2 3 2 i 2 3 6 max 3 rameters for each segment of the S-curve are calcu- Fourth stage: Constant velocity lated. ∀ ∈ t [t3,t4] Furthermore, if S-curve belongs to the type that has a ji (t) = 0 small path length, feed rate modification and end ve- ai (t) = 0 (4) locity modification are also processed. Thus, the pro- vi (t) = vi (t3) posed algorithm ensures that the system always has a si (t) = si (t3) + vi (t3)τ4 solution even considering arbitrary short path length. The simulation results demonstrate the effectiveness Fifth stage: Increase deceleration of the proposed algorithm. ∀ ∈ t [t4,t5] The outline of this paper is organized as follows: j (t) = − j i max Firstly, a brief introduction on the motion profiles ai (t) = ai (t4) − jmaxτ5 rd 1 2 and math expression for 3 order polynomial S-curve v (t) = v (t ) + a (t )τ − jmaxτ (5) i i 4 i 4 5 2 5 τ 1 τ2 − 1 τ3 are given. Secondly, the proposed algorithm for S- si (t) = si (t4) + vi (t4) 5 + 2 ai (t4) 5 6 jmax 5 curve classification and parameter calculation is in- Sixth stage: Constant deceleration troduced. Thirdly, the algorithm simulation results ∀ ∈ and discussion are described. Finally, the conclusions t [t5,t6] are summarized. ji (t) = 0 − ai (t) = amax (6) rd − τ 3 ORDER POLYNOMIAL S-CURVE vi (t) = vi (t5) amax 6 1 MATH EXPRESSION s (t) = s (t ) + v (t )τ − a τ2 i i 5 i 5 6 2 max 6 In this section, the profiles and math expression of Seventh stage: Decrease deceleration 3rd order polynomial S-curve are presented9. The S- ∀ ∈ curve profiles consist of seven stages: increase accel- t [t6,t7] eration, constant acceleration, decrease acceleration, ji (t) = jmax τ constant velocity, increase deceleration, constant de- ai (t) = ai (t6) + jmax 7 rd v (t) = v (t ) + a (t )τ − 1 j τ2 (7) celeration, and decrease deceleration. The 3 order i i 6 i 6 7 2 max 7 τ 1 τ2 − 1 τ3 polynomial S-curve profile is shown in Figure 1. si (t) = si (t6) + vi (t6) 7 + 2 ai (t6) 7 6 jmax 7 The math expression is expressed as follows: First stage: Increase acceleration BUILDING AN ALGORITHM FOR PLANNING S-CURVE MOTION ∀ ∈ t [t0,t1] PROFILE CONSIDERING SHORT ji (t) = jmax PATH LENGTH ai (t) = a0 + jmaxτ1 (1) The S-curve motion profile classification τ 1 τ2 vi (t) = v0 + a0 1 + jmax 1 2 The system parameters cover maximum acceleration 1 1 s (t) = s + v τ + a τ2 + j τ3 i 0 0 1 2 0 1 6 max 1 amax; maximum jerk jmax. The trajectory parameters 2020
- Science & Technology Development Journal, 24(3):2019-2030 Figure 1: The 3rd order polynomial S-curve motion profile. include path length Si; start velocity vs; end velocity • In Type 6, amax is reachable and −amax is un- ve; and feed rate vc f . reachable. According to different trajectory parameters, the S- • In Type 7, amax is unreachable and −amax is curve motion profile can be classified as 8 types, in- reachable. cluding 4 basic types and 4 extended types, as shown • In Type 8, amax is unreachable and −amax is un- in Figure 2. reachable. Four basic types have acceleration speed zone, constant-speed zone, and deceleration-speed zone. Four extended types do not have a constant-speed Path length calculation zone. According to the path length, the S-curve mo- This section presents the convenient formulas to cal- tion profile is divided into 8 types. culate the path length, as the acceleration profile is 9 In four basic types, vc f is reachable. Type 1~ Type 4 ladder or triangle shape, are presented . The path is as follows: length is only calculated when the system accelera- tion or deceleration. Therefore, it does not include the • In Type 1, a is reachable and −a is reach- max max path length in the constant velocity section. able. When the acceleration profiles are ladder shape on • In Type 2, a is reachable and −a is un- max max both the acceleration and deceleration stages, the path reachable. length is Slald calculated as follows: • In Type 3, amax is unreachable and −amax is ( ) S V = reachable. lald ( c f ) ( ) − 2 − 2 2 • In Type 4, amax is unreachable and amax is un- jmax Vc f Vs + amax Vc f +Vs reachable. (8) ( 2amax)jmax ( ) 2 − 2 2 In four extended types, vc f is unreachable. Type 5~ jmax Vc f Ve + amax Vc f +Ve + Type 8 is as follows: 2amax jmax • In Type 5, amax is reachable and −amax is reach- When the acceleration profile is ladder shape on the able. acceleration stage, but triangle shape on the deceler- 2021
- Science & Technology Development Journal, 24(3):2019-2030 Figure 2: Eight types of S-curve are used in planning S-curve motion profile. ation stage, the path length is Slald calculated as fol- • amax is reachable, then condition (C1) vc f − 2 lows: vs ≥ a / jmax satisfied. ( ) max • amax is unreachable, then condition (C2) v − Slald Vc f = c f ( ) ( ) 2 2 2 2 vs 2 − 2 2 (10) then( the) condition is as follows: i jmax Vc f Ve + amax Vc f +Ve + slald vc f . 2amax jmax • Type 2, the acceleration profile is ladder shape When the acceleration profiles are triangle shape on on the acceleration stage, but triangle shape on both the acceleration and deceleration stages, the path the deceleration stage( then) condition is as fol- length is Slald calculated as follows: lows: (C6) si > slald vc f . √ ( ) ( ) • Type 3, the acceleration profile is triangle shape Vc f −Vs Stald Vc f = Vc f +Vs on the acceleration stage, but ladder shape on √ jmax ( ) (11) Vc f −Ve the deceleration stage( then) condition is as fol- + Vc f +Ve jmax lows: (C7) si > stald vc f . • Type 4, the acceleration profiles are triangle The Acc/Dec algorithm in considering of shape on both the acceleration and deceleration stages then condition is as follows: (C8) s > short path length ( ) i stald vc f . There are two steps to perform a S-curve motion pro- file algorithm: type judgment and parameters calcu- From the above consideration, 4 basic types are clas- lation. sified as follows: Step 1: Type judgment If conditions (C1),(C3) and (C5) are satisfied, it be- Considering the velocity in type 1 ~ type 4: longs to type 1. 2022
- Science & Technology Development Journal, 24(3):2019-2030 If conditions (C1),(C4) and (C6) are satisfied, it be- If conditions (C2), (C4) are satisfied, and (C8) is un- longs to type 2. satisfied, it belongs to type 8 If conditions (C2),(C3) and (C7) are satisfied, it be- From Figure 3, all cases of system parameters and longs to type 3. trajectory parameters can be classified by proposed 8 If conditions (C2),(C4) and (C8) are satisfied, it be- types that is easy to recognize with note that (C1) is longs to type 4. negative of (C2) and (C3) is negative of (C4). In type However, if the path length is short, and conditions judgment all conditions are checked and its negative (C5), (C6), (C7), (C8) in type 1~ type 4 respectively also are checked. Therefore, the system always has so- are not satisfied, then 4 basic types cannot be imple- lution. However, the system parameters and trajec- mented. In this case, the feed rate vc f is adjusted to a tory parameter will be selected with some conditions new value vmax, and the path length is achieved. For as follows: that case, 4 proposed extended types consist of type 5~ type 8 can be used. • amax, jmax,ve,vs,vc f ,si ≥ 0 all parameter is pos- To classify the type of S-curve, there are 4 proposed itive. groups in which group 1 is the group that satisfies con- | − | ≤ 2 • vs ve amax/ jmax if system belongs to type ditions (C1) and (C3), group 2 is the group that sat- 6, type7, type 8. isfies conditions (C1) and (C4), group 3 is the group | − | ≤ 2 that satisfies conditions (C2) and (C3) and group 4is In the case condition vs ve amax/ jmax is not sat- the group that satisfies conditions (C2) and (C4). isfied, the end velocity should be modified to accept- ′ 2 Table 1 shows the conditions for S-curve type classifi- able value ve = vs + amax/ jmax cation. Step 2: parameters calculation Figure 3 is the condition constraints for S-curve type After type judgment, time parameters for each seg- classification for 4 groups. Blue color indicates a satis- ment of S-curve are calculated. Furthermore, if S- fied condition, and red color indicates the unsatisfied curve belongs to type 5 ~ type 8, feed rate modifica- condition. tion and end velocity modification also are processed. In group 1: Type 1:vc f reachable, amax reachable, −amax reach- If conditions (C1), (C3), and (C5) are satisfied, it be- able longs to type 1 When conditions (C1), (C3), and (C5) are satisfied, it If conditions (C1), (C3), (C9) are satisfied, and (C5) is belonged to type 1 are unsatisfied, it belongs to type 5 The time parameters are calculated by If conditions (C1), (C3), (C10), (C13) are satisfied, and (C5), (C9) are unsatisfied, it belongs to type 6 amax T1 = T3 = T5 = T7 = If conditions (C1), (C3), (C10) are satisfied, and (C5), jmax v − v v − v c f s − c f e − (C9), (C13) are unsatisfied, it belongs to type 7 T2 = T1, T6 = T5 (12) amax ( a)max If conditions (C1), (C3) are satisfied, and (C5), (C9), − si slald vc f (C10) are unsatisfied, it belongs to type 8 T4 = vc f In group 2 If conditions (C1), (C4), and (C6) are satisfied, it be- Type 2:vc f reachable, amax reachable, and −amax un- longs to type 2 reachable. If conditions (C1), (C4), (C11) are satisfied, and (C6) When conditions (C1), (C4), and (C6) are satisfied, it is unsatisfied, it belongs to type 6 is belonged to type 2 If conditions (C1), (C4) are satisfied, and (C6), (C11) The time parameters are calculated by are unsatisfied, it belongs to type 8 a vc f − vs In group 3 T = T = max ,T = − T 1 3 j 2 a 1 If conditions (C2), (C3), and (C7) are satisfied, it be- max√ max vc f − vs longs to type 3 T5 = T7 = , T6 = 0 a (13) max( ) If conditions (C2), (C3), (C11) are satisfied, and (C7) s − s v i lald c f is unsatisfied, it belongs to type 7 T4 = vc f If conditions (C2), (C3) are satisfied, and (C7), (C11) are unsatisfied, it belongs to type 8 Type 3:vc f reachable, amax unreachable, and −amax In group 4 reachable. If conditions (C2), (C4), and (C8) are satisfied, it be- When conditions (C2), (C3), and (C7) are satisfied, it longs to type 4 is belonged to type 3 2023
- Science & Technology Development Journal, 24(3):2019-2030 Table 1: List of condition constraints for type classification ( ) ( ) − ≥ 2 { } 2 (C1) vc f vs amax/ jmax (C5) si > slald vc f . (C9) si > slald max vs,ve + amax/ jmax ( ) ( ) − 2 ≥ { } 2 (C2) vc f vs slald vc f . (C10) si slald min vs,ve + amax/ jmax ( ) ( ) − ≥ 2 ≥ { } 2 (C3) vc f ve amax/ jmax (C7) si > stald vc f (C11) si stald min vs,ve + amax/ jmax ( ) − 2 { } (C4) vc f ve stald vc f . (C12) si > stald (max vs,ve ) (C13)Vs ≤ Ve Figure 3: Summarizing condition constraints for S-curve type judgment. The time parameters are calculated by When conditions (C1), (C3), (C9) are satisfied, and √ v − v (C5) are unsatisfied, it is belonged to type 5 c f s T1 = T3 = ,T2 = 0 The reachable maximum velocity is calculated as fol- amax amax vc f − vs lows: T5 = T7 = , T6 = − T5 (14) jmax ( amax) si = slald (vmax) where vmax ∈ − [ ] si stald vc f max{v ,v } + a2 / j ,v T4 = s e max max c f vc f The time parameters are calculated by Type 4:vc f reachable, amax unreachable, and −amax a T = T = T = T = max unreachable. 1 3 5 7 j − max− When conditions (C2), (C4), and (C8) are satisfied, it vmax vs − vmax ve − (16) T2 = T1, T6 = T5 is belonged to type 4 amax amax T = 0 The time parameters are calculated by 4 √ − v − vs Type 6:vc f unreachable, amax reachable, and amax T = T = c f ,T = 0 1 3 2 unreachable. √ amax vc f − vs (C6A): (C1), (C3), (C10), (C13) are satisfied, and T5 = T7 = , T6 = 0 (15) amax( ) (C5), (C9) are unsatisfied − si stald vc f (C6B): (C1), (C4), (C11) are satisfied, and (C6) is un- T4 = vc f satisfied Type 5:vc f unreachable, amax reachable, and −amax Either condition (C6A) or (C6B) is satisfied; it is be- reachable. longed to type 6 2024
- Science & Technology Development Journal, 24(3):2019-2030 The reachable maximum velocity is calculated as fol- The time parameters are calculated by √ lows: − vmax vs s = s (v ) where v ∈ T1 = T3 = ,T2 = 0 [i lald max ] max j { } 2 √ max min vs,ve + amax/ jmax,vc f v − v T = T = max e , T = 0 (19) 5 6 6 The time parameters are calculated by jmax T = 0 − 4 amax vmax vs − T1 = T3 = ,T2 = T1 jmax√ amax vmax − ve RESULTS T = T = , T = 0 (17) 5 7 j 6 max In this section, simulation has been done for 4 groups T = 0 4 with various different path lengths using Matlab. Table 2 shows trajectory parameters and simulation Type 7:vc f unreachable, amax unreachable, and −amax reachable. results for four groups to verify the proposed algo- rithm. (C7A): (C1), (C3), (C10) are satisfied, and (C5), (C9), 2 The maximum acceleration amax is 2m/s , the maxi- (C13) are unsatisfied 3 mum jerk jmax is 100m/s . (C7B): (C2), (C3), (C11) are satisfied, and (C7) is un- In the simulation for group 1, vc f = 0.008, vs = satisfied 0.01 and ve = 0.022 therefore conditions (C1) and Either condition (C7A) or (C7B) is satisfied; it is be- (C3) are satisfied. longed to type 7 In type 7, start velocity and end velocity is converted The reachable maximum velocity is calculated as fol- to each other. lows: with trajectory parameters are selected as group 1, the s = s (v ) where v ∈ [i tald max ] max convenient( ) path length is( calculated as follows: ) min{v ,v } + a2 / j ,v { } 2 s e max max c f slald vc f = 0.005; slald max vs,ve + amax/ jmax = The time parameters are calculated by 0.0033;( ) √ s min{v ,v } + a2 / j = − lald s e max max vmax vs { } T1 = T3 = ,T2 = 0 0.0024; statd (max vs,ve ) = 0.00035 jmax v v − v The path length is selected in different values si = T = T = max , T = max e − T (18) 5 7 6 5 {0.0082;0.0042;0.0028;0.0028;0.0018;0.0003} to jmax jmax T4 = 0 verify the proposed algorithm in type 1, type 5, type 6, type 7, type 8A, type 8B, respectively. − Type 8:vc f unreachable, amax unreachable, and amax Figure 4 shows the simulation results for group 1. unreachable. First of all, the final position is the same as the given (C8A): (C1), (C3) are satisfied, and (C5), (C9), (C10) position for all types and for all groups that are the are unsatisfied most important key point. Second, except for type 1, (C8B): (C1), (C4) are satisfied, and (C6), (C11) are un- the maximum velocity is always smaller than the feed satisfied rate velocity that is suitable. Third, except for type 8b, (C8C): (C2), (C3) are satisfied, and (C7), (C11) are the start velocity and end velocity are satisfied. In type unsatisfied 8B, because the path length is too small, the end ve- (C8D): (C2), (C4) are satisfied, and (C8) locity is not satisfied, and it is converted to the same start velocity that is also acceptable. When any condition of (C8A), (C8B), (C8C), and In the simulation for group 2, v = 0.008, v = (C8D) is satisfied, it is belonged to type 8 c f s 0.02 and ve = 0.005 therefore conditions (C1) and if the condition (C12) is not satisfied, then the equa- (C4) are satisfied. tion si = statd (vmax) is no solution. To solve this case, ′ with trajectory parameters are selected as group 2, the adjust the value of end velocity as follows ve = vs. convenient( ) path length is calculated( as follows: ) The reachable maximum velocity is calculated as fol- { } 2 slatd vc f = 0.0048; statd min vs,ve + amax/ jmax = lows: 0.0027;statd = (max{vs,ve}) = 0.0012 If condition (C12) is satisfied (type 8A) [ ] The path length is selected in different values si = ∈ si = stald (vmax) where vmax max(vs,ve),vc f {0.0082;0.0047;0.0026;0.0011} to verify the pro- If condition (C12) unsatisfied (type 8B) [ ] posed algorithm in type 2, type 6, type 8A, type 8B, ′ ′ ∈ ve = vs and si = statd (vmax) where vmax vs,vc f respectively. 2025
- Science & Technology Development Journal, 24(3):2019-2030 Table 2: Trajectory parameter and simulation results for the proposed algorithms. Group Type Start End Feedrate Given Final Maximum Total Velocity Velocity (m/s) Path Path velocity time (s) (m/s) (m/s) Length Length (m/s) (m) (m) 1 1 0.01 0.022 0.08 0.0082 0.0082 0.08 0.1443 5 0.01 0.022 0.08 0.0042 0.0042 0.0719 0.0959 6 0.01 0.022 0.08 0.0028 0.0028 0.0553 0.0791 7 0.022 0.01 0.08 0.0028 0.0028 0.0553 0.0791 8A 0.01 0.022 0.08 0.0018 0.0018 0.0415 0.0634 8B 0.01 0.022 0.08 0.0003 0.0003 0.0139 0.0251 2 2 0.02 0.005 0.08 0.0082 0.0082 0.08 0.1277 6 0.02 0.005 0.08 0.0047 0.0047 0.0795 0.0841 8A 0.02 0.005 0.08 0.0026 0.0026 0.0591 0.0586 8B 0.02 0.005 0.08 0.0011 0.0011 0.0314 0.0428 3 3 0.005 0.02 0.08 0.0082 0.0082 0.08 0.1277 7 0.005 0.02 0.08 0.0047 0.0047 0.0795 0.0841 8A 0.005 0.02 0.08 0.0026 0.0026 0.0591 0.0586 8B 0.005 0.02 0.08 0.0011 0.0011 0.0529 0.0214 4 4 0.05 0.065 0.08 0.0082 0.0082 0.08 0.1113 8A 0.05 0.065 0.08 0.0029 0.0029 0.0716 0.0457 8B 0.05 0.065 0.08 0.0013 0.0013 0.0539 0.025 8B 0.05 0.065 0.08 0.00001 0.00001 0.05 0.0002 Figure 5 shows the simulation results for group 2. Figure 6 shows the simulation results for group 3. First of all, the final position is the same as the given First of all, the final position is the same as the given position for all types and for all groups; that is the position for all types and for all groups. That is the most important key point. Second, except for type 2, most important key point. Second, except for type 3, the maximum velocity is always smaller than the feed the maximum velocity is always smaller than the feed rate velocity that is suitable. Third, except for type 8B, rate velocity that is suitable. Third, except for type 8b, the start velocity and end velocity are satisfied. In type the start velocity and end velocity are satisfied. In type 8B, because the path length is too small, the end ve- 8B, because the path length is too small, the end ve- locity is not satisfied, and it is converted to the same locity is not satisfied, and it is converted to the same start velocity that is also acceptable. start velocity that is also acceptable. In the simulation for group 4, vc f = 0.008, vs = In the simulation for group 3, vc f = 0.008, vs = 0.05 and ve = 0.065 therefore conditions (C2) and 0.005 and v = 0.02 therefore conditions (C2) and e (C4) are satisfied. (C3) are satisfied. with trajectory parameters are selected as group 4, the with trajectory parameters are selected as group 3, the convenient( ) path length is calculated as follows: convenient path length is calculated as follows: ( ) ( ) statd vc f = 0.004; statd (max{vs,ve}) = 0.0014 s v = 0.0048; s min{v ,v } + a2 / j = lald c f tatd s e max max The path length is selected in different values si = { } 0.0027;statd = (max vs,ve ) = 0.0012 {0.0082;0.0029;0.0013;0.0001} to verify the pro- The path length is selected in different values si = posed algorithm in type 4, type 8A, type 8B, respec- {0.0082;0.0047;0.0026;0.0011} to verify the pro- tively. posed algorithm in type 3, type 7, type 8A, type 8B, Type 8B is performed twice with a path length of nor- respectively. mal value and a very small value. 2026
- Science & Technology Development Journal, 24(3):2019-2030 Figure 4: Simulation results for group 1 in planning S-curve motion profile. Figure 7 shows the simulation results for group 4. The simulation results are also shown in Table 2. It can First of all, the final position is the same as the given be seen that the final position is the same as the given position for all types and for all groups. That is the position for all types and for all groups that prove the most important key point. Second, except for type 4, effectiveness of the proposed algorithm. the maximum velocity is always smaller than the feed The simulation results in group 1, group 2, group 3, rate velocity that is suitable. Third, except for type 8B, and group 4, shows that the proposed algorithm can the start velocity and end velocity are satisfied. In type be applied to any value of the given path length, even 8B, because the path length is too small, the end ve- very small path length. locity is not satisfied, and it is converted to the same Type 1 ~ type 4, the maximum velocity is the same as start velocity that is also acceptable. feed rate velocity. Type 5 ~ type 8, the maximum velocity is always DISCUSSION smaller than feed rate velocity. It is obvious that the results in Fig.4 ~ Fig. 7 are con- In type 8B, because the path length is too small, the sistent with trajectories shown in Fig. 2. end velocity is not satisfied and it is converted to the 2027
- Science & Technology Development Journal, 24(3):2019-2030 Figure 5: Simulation results for group 2 in planning S-curve motion profile. Figure 6: Simulation results for group 3 in planning S-curve motion profile. 2028
- Science & Technology Development Journal, 24(3):2019-2030 Figure 7: Simulation results for group 4 in planning S-curve motion profile. same start velocity. But this situation is acceptable. ACKNOWLEDGMENTS In types 6 ~ type 8, vs and ve should be selected so This research is funded by Nguyen Tat Thanh Univer- | − | ≤ 2 that vs ve amax/ jmax must be satisfied otherwise sity. We acknowledge the support of time and facili- ve will be converted to the same as vs. ties from Nguyen Tat Thanh University for this study. CONCLUSIONS NOMENCLATURE The proposed algorithm has the ability to generate S- Pos: Position curve trajectory even very small path lengths. The Vel: Velocity algorithm also ensures that the actuator effort limit Acc: Acceleration is not exceeded and the motion is fast, accurate, Dec: Deceleration with small oscillations, no overshoot in both position amax: maximum acceleration and velocity. It is strongly believed that this works jmax: maximum jerk can be widely applied in the manufacturing industry, vs: start velocity ve: end velocity robotics, tool machines. Motion controllers can effec- ′ v : end velocity after modification tively implement them. The simulation result demon- e vc f : feed rate strates the efficiency and smoothness of the proposed vmax: feed rate after modification algorithm. si: path length However, there is still plenty of room for further re- t0 ∼ t7: point of time, ti−1 is start point time and ti is search on this work. We have planned to implement end point time of section ith. τ ∼ τ the algorithms into the interpolation technique to op- 0 7: internal time of each section. It starts from th timize the transition velocity. zero until Ti for section i . T0 ∼ T7: time period of each section 2029
- Science & Technology Development Journal, 24(3):2019-2030 CONFLICTS OF INTEREST ahead. Int J Adv Manuf Technol. 2007;35:505–518. Available from: The author declares that there are no conflicts of in- 4. Der-Min Tsay and Cheng-Feng Lin: Asymmetrical inputs for terest. minimizing residual response. IEEE International Conference on Mechatronics. 2005;p. 235–240. Available from: AUTHORS CONTRIBUTIONS org/10.1109/ICMECH.2005.1529259. 5. Wang L, Cao J. A look-ahead and adaptive speed control al- All authors conceived the study, participated in its gorithm for high-speed CNC equipment. Int J Adv Manuf Tech- design and coordination and helped to draft the nol . 2012;63:705–717. Available from: s00170-012-3924-7. manuscript. The authors read and approved the final- 6. Fang Y, et al. Smooth and time-optimal S-curve trajectory plan- manuscript. ning for automated robots and machines. Mechanism and Ma- chine Theory. 2019;137:127–153. Available from: REFERENCES org/10.1016/j.mechmachtheory.2019.03.019. 7. Kim DN. On Algorithms for Planning S-Curve Motion Profiles. 1. Li D, et al. The implementation and experimental research Int. Journal of Advanced Robotic Systems. 2008;5(1):99–106. on an S-curve acceleration and deceleration control algorithm Available from: with the characteristics of end-point and target speed modifi- 8. Youdong C. Look-Ahead Algorithm with Whole S-Curve Accel- cation on the fly. Int J Adv Manuf Technol . 2017;91:1145–1169. eration and Deceleration. Advances in Mechanical Engineer- Available from: ing. 2013;5:974152. Available from: 2. Yang Q, et al. Characteristics of serrated chip formation in high- 2013/974152. speed machining of metallic materials. Int J Adv Manuf Technol. 9. Huang H. An adjustable look-ahead acceleration/deceleration 2016;86:1201–1206. Available from: hybrid interpolation technique with variable maximum fee- . s00170-015-8265-x drate. Int J Adv Manuf Technol. 2018;95:1521–1538. Available 3. Luo FY, et al. A universal velocity profile generation approach from: for high-speed machining of small line segments with look- 2030