Servo Drive Systems_Chapter 4_part1

March 29, 2018 | Author: To Ba Tho | Category: Acceleration, Trajectory, Speed, Velocity, Applied Mathematics


Comments



Description

Chapter 4Trajectory Control 1 @VLC-2015 4.1 Point-to-Point Control Point to point motion is applied for some kinds of robots such as: point welding, packaging,… In this type of motion, we only take into account the position of the beginning, ending points and time of motion. οƒ˜ Problem: π‘ž We have to determine the rule of change of the angular q between the initial position π‘žπ‘– and the finally position π‘žπ‘“ in the time interval 0, 𝑑𝑓 . π‘žπ‘“ π‘žπ‘– 0 𝑑𝑓 𝑑 Assuming that 𝐽𝑀 : inertial moment of motor 2 @VLC-2015 𝑇𝑀: torque of motor 4.1 Point-to-Point Control Note that the problem has plenty of solutions.2) Then the motion trajectory will be the third order form: π‘ž 𝑑 = π‘Ž3 𝑑 3 + π‘Ž2 𝑑 2 + π‘Ž1 𝑑 + π‘Ž0 3 @VLC-2015 (4. we include an optimal criterion: the least consuming energy οƒ˜ Mathematic description: 𝐽𝑀 πœ” = 𝑇𝑀 where 𝑑𝑓 πœ” 0 subjec to: 𝑑 𝑑𝑑 = π‘žπ‘“ βˆ’ π‘žπ‘– 𝑑𝑓 TM 2𝑑𝑑 0 (4. Therefore.1) β†’ 𝑀𝐼𝑁 The general solution has the following form: πœ” 𝑑 = π‘Žπ‘‘ 2 + 𝑏𝑑 + 𝑐 (4.3) . π‘Ž2 . π‘Ž3 .5) We need to determine 4 coefficients: π‘Ž0 .t.1 Point-to-Point Control The velocity will follow the second order form: π‘ž 𝑑 = 3π‘Ž3 𝑑 2 + 2π‘Ž2 𝑑 + π‘Ž1 (4.4. π‘Ž1 . We have the following equations: π‘Ž0 = π‘žπ‘– π‘Ž1 = π‘žπ‘– π‘Ž3 𝑑𝑓 3 + π‘Ž2 𝑑𝑓 2 + π‘Ž1 𝑑𝑓 + π‘Ž0 = π‘žπ‘“ 3π‘Ž3 𝑑𝑓 2 + 2π‘Ž2 𝑑𝑓 + π‘Ž1 = π‘žπ‘“ 4 @VLC-2015 (4.6) .r.4) And the acceleration changes w. the first order rule π‘ž 𝑑 = 6π‘Ž3 𝑑 + 2π‘Ž2 (4. when 𝑑 = 0 π‘Žπ‘›π‘‘ 𝑑 = 1 5 The disadvantage of this rule is the maximum accelerations at the initial and final point. π‘žπ‘“ = πœ‹. when 𝑑 = 1/2 And the acceleration gets its the maximum value: π‘žπ‘šπ‘Žπ‘₯ = 6πœ‹. the initial and final velocity π‘žπ‘– = π‘žπ‘“ = 0 From the above equations.1 Point-to-Point Control For example: π‘žπ‘– = 0. 𝑑𝑓 = 1 . we find the solutions: π‘Ž0 = π‘Ž1 = 0 π‘Ž2 = 3πœ‹. @VLC-2015 .4. π‘Ž3 = βˆ’2Ο€ The velocity gets the its maximum value: π‘žπ‘šπ‘Žπ‘₯ = 3πœ‹/2. 4.1 Point-to-Point Control π‘Ÿπ‘Žπ‘‘ π‘ž 3πœ‹ π‘žπ‘“ π‘žπ‘š 0 π‘žπ‘– 0 π‘ž π‘Ÿπ‘Žπ‘‘/𝑠 0 1 3πœ‹/2 𝑑𝑐 π‘‘π‘š 𝑑𝑓 3πœ‹/2 π‘žπ‘ π‘Ÿπ‘Žπ‘‘/𝑠 2 6πœ‹ 6 @VLC-2015 βˆ’6πœ‹ 1 π‘ž 𝑑𝑐 𝑑𝑓 π‘žπ‘ 𝑑𝑐 βˆ’π‘žπ‘ 𝑑𝑓 . the time of acceleration and deceleration is equal. That means: π‘žπ‘š βˆ’ π‘žπ‘ π‘žπ‘ 𝑑𝑐 = π‘‘π‘š βˆ’ 𝑑𝑐 (4. π‘žπ‘ is the position at the time 𝑑𝑐 when the motor accelerates at π‘žπ‘ (π‘Ÿπ‘Žπ‘‘/𝑠 2 ) 7 @VLC-2015 . the velocities at the transition points have to be smooth. at π‘‘π‘š = 𝑑𝑓 /2 (4.1 Point-to-Point Control The famous trajectory that is usually used in most industrial controllers is Blended Polynomial with the trapezoidal velocity. We have: π‘žπ‘š = (π‘žπ‘“ βˆ’π‘žπ‘– )/2.8) where.4.7) In order to guarantee the trajectory is continuous. Assuming that π‘žπ‘– = π‘žπ‘“ = 0 . 13) .12) 𝑑𝑓2 4 π‘žπ‘“ βˆ’π‘žπ‘– 𝑑𝑓2 . π‘žπ‘ β‰₯ 4 π‘žπ‘“ βˆ’π‘žπ‘– It is obvious that if π‘žπ‘ = 8 @VLC-2015 (4. finding 𝑑𝑐 ≀ 𝑑𝑓 /2. (4.10) π‘žπ‘ 𝑑𝑐2 βˆ’ π‘žπ‘ 𝑑𝑓 𝑑𝑐 + π‘žπ‘“ βˆ’ π‘žπ‘– = 0 Given π‘žπ‘ . we have: 𝑑𝑓 1 𝑑𝑓2 π‘žπ‘ βˆ’ 4(π‘žπ‘“ βˆ’ π‘žπ‘– ) 𝑑𝑐 = βˆ’ 2 2 π‘žπ‘ where. π‘žπ‘“ .9).9) π‘žπ‘ = π‘žπ‘– + π‘žπ‘ 𝑑𝑐 2 From Eq. 𝑑𝑐 = π‘‘π‘š = 𝑑𝑓 2 (4.8) & (4.11) (4.4. 𝑑𝑓 . we got: (4.1 Point-to-Point Control We have: 1 2 (4. π‘žπ‘– . given π‘žπ‘– .12) we calculate and choose π‘žπ‘ . (4.11). The rated speed is 2000 (RPM).14) 𝑑𝑓 βˆ’ 𝑑𝑐 ≀ 𝑑 ≀ 𝑑𝑓 Example: Determine the Blended Polynomial trajectory in order to control the position of the motor in 20 rounds within 2s.1 Point-to-Point Control Therefore. the trajectory is determined by a piecewise function 1 π‘žπ‘– + π‘žπ‘ 𝑑 2 2 π‘ž 𝑑 = π‘žπ‘– + π‘žπ‘ 𝑑𝑐 0 ≀ 𝑑 ≀ 𝑑𝑐 𝑑𝑐 π‘‘βˆ’ 2 1 π‘žπ‘“ βˆ’ π‘žπ‘ 𝑑𝑓 βˆ’ 𝑑 2 𝑑𝑐 ≀ 𝑑 ≀ 𝑑𝑓 βˆ’ 𝑑𝑐 2 (4. π‘žπ‘“ and 𝑑𝑓 . then calculate 𝑑𝑐 from Eq. 9 @VLC-2015 . from Eq.4. Finally. (4. 4. and speed πœ” are given by 2πœ‹ 𝛼= (π‘Ÿπ‘Žπ‘‘) π‘π‘π‘Ÿ πœƒ = 𝑛𝛼 (π‘Ÿπ‘Žπ‘‘) 𝛼 πœ”= (π‘Ÿπ‘Žπ‘‘) πœπ‘‘ where 𝑛 is the number of pulses (4. pulses must be generated at a steady rate 10 @VLC-2015 .2 Application for Step and DC motors  Step motor The motor step angle: 𝛼. position: πœƒ.15) πœπ‘‘ is the delay time To rotate a stepper motor at a constant speed. control of the acceleration and deceleration is needed. and the resolution of the time delay between these steps is given by the frequency of the timer.4. Discrete steps control the stepper motor motion. The time delay πœπ‘‘ between the stepper motor pulses controls the speed. These time delays must be calculated in order to make the speed of the stepper motor follow the speed ramp as closely as possible. 11 @VLC-2015 .2 Application for Step and DC motors οƒ˜ Linear speed ramp To start and stop the stepper motor in a smooth way. speed and position. Figure in previous section shows the relation between acceleration. πœπ‘‘ = (s) 𝑓𝑑 0 πœπ‘‘0 We have: t1 πœπ‘‘1 t2 𝜏 t3 t4 𝑑2 πœπ‘‘0 = 𝑐0 πœπ‘‘ πœπ‘‘1 = 𝑐1 πœπ‘‘ 12 @VLC-2015 t πœπ‘‘2 = 𝑐2 πœπ‘‘ (4.16) .4.2 Application for Step and DC motors Ο‰ Assuming that the time delay is generated by a timer with a frequency 1 𝑓𝑑 (Hz). 2 Application for Step and DC motors The position at the time 𝑑 is given by equation: 𝑑 1 2 πœƒ 𝑑 = πœ” 𝜏 π‘‘πœ = πœ”π‘‘ 2 0 Assuming that πœƒ 𝑑 is corresponding to the n’th pulse.18) .4.17) And the time delay between two steps is: 13 @VLC-2015 𝑐𝑛 πœπ‘‘ = 𝑑𝑛+1 βˆ’ 𝑑𝑛 = 2𝛼 ( 𝑛 + 1 βˆ’ 𝑛) πœ” (4. then 1 2 πœƒ 𝑑 = πœ”π‘‘π‘› = 𝑛𝛼 2 β‡’ 𝑑𝑛 = 2𝑛𝛼 πœ” (4. 4.2 Application for Step and DC motors Finally the expression for the counter delay is found: 1 2𝛼 𝑐𝑛 = ( 𝑛 + 1 βˆ’ 𝑛) πœπ‘‘ πœ” (4. we use the Taylor series approximation 14 @VLC-2015 .19) When 𝑛 = 0: 1 2𝛼 𝑐0 = πœπ‘‘ πœ” (4.20) β‡’ 𝑐𝑛 = 𝑐0 ( 𝑛 + 1 βˆ’ 𝑛) In order to reduce the burden of calculations. 4.21) This calculation is much faster than the double square root. 2π‘π‘›βˆ’1 β‡’ 𝑐𝑛 = π‘π‘›βˆ’1 βˆ’ 4𝑛 + 1 (4.2 Application for Step and DC motors 𝑐𝑛 π‘π‘›βˆ’1 𝑐0 ( 𝑛 + 1 βˆ’ 𝑛) 4𝑛 βˆ’ 1 = β‰ˆ 𝑐0 ( 𝑛 βˆ’ 𝑛 βˆ’ 1) 4𝑛 + 1 Finally. 15 @VLC-2015 . but introduces an error at n =1.676. A way to compensate for this error is by multiplying 𝑐0 with 0. 4.  The velocity trajectory is therefore trapezoidal for a long move and triangular for a short move where maximum velocity was not reached. @VLC-2015 . A linear piecewise velocity trajectory is implemented in this application.  For a position move. the velocity is incremented by a constant acceleration value until a specified maximum velocity is reached.2 Application for Step and DC motors 16  DC servo motor A trajectory generation algorithm is essential for optimum motion control.  The maximum velocity is maintained for a required amount of time and then decremented by the same acceleration (deceleration) value until zero velocity is attained. 4.2 Application for Step and DC motors velocity velocity limit Slope = Accel. limit short move long move time  The SetMove subroutine is invoked once at the beginning of a move to calculate the trajectory limits. (4.14)) 17 @VLC-2015 .  The DoMove routine is then invoked at every sample time to calculate new β€œdesired” velocity and position values as follows (from Eq. 2 Application for Step and DC motors π‘£π‘˜ = π‘£π‘˜βˆ’1 + π‘Žπ‘π‘π‘’π‘™.4. and the size of the movement. acceleration. 𝑇 2 2 In position mode. the actual shape of the velocity profile depends on the values of velocity. The block diagram of position controller Trajectory Generator Kp PI DC Velocity feedback 18 Position feedback @VLC-2015 1 𝑠 . 𝑇 (4.22) 1 π‘žπ‘˜ = π‘žπ‘˜βˆ’1 + π‘£π‘˜βˆ’1 𝑇 + π‘Žπ‘π‘π‘’π‘™. There are three cases that usually use in trajectory generator: @VLC-2015 .3 Continuous Path Motion In many applications. the servo systems (Robots. π‘ž π‘ž2 Ξ 1 Ξ 2 π‘ž3 Ξ 3 β‹― π‘ž1 = π‘žπ‘– 𝑑1 = 0 19 β‹― π‘žπ‘ = π‘žπ‘“ 𝑑2 𝑑3 𝑑𝑁 = 𝑑𝑓 The problem is to determine the trajectory that goes through N path points with the constraint conditions.4. CNC) have to be controlled in a predefined continuous path. in the case of the velocities are predetermined Assuming that the trajectory has N path points. π‘ž 𝑑 . π‘ž 𝑑 . at the path points are predetermined  The velocities.3 Continuous Path Motion  The velocities. π‘ž 𝑑 . at the path points are calculated by a specific criterion.23) . For example. π‘žπ‘˜+1 ) . then the third order polynomial is adopted to interpolate two adjacent points ( π‘žπ‘˜ .  Guarantee the continuity of acceleration.4. Each polynomial has to satisfy the following conditions: Ξ π‘˜ π‘‘π‘˜ = π‘žπ‘˜ Ξ π‘˜ π‘‘π‘˜+1 = π‘žπ‘˜+1 Ξ π‘˜ π‘‘π‘˜ = π‘žπ‘˜ 20 @VLC-2015 Ξ π‘˜ π‘‘π‘˜+1 = π‘žπ‘˜+1 (4. at the path points.
Copyright Β© 2024 DOKUMEN.SITE Inc.