Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 25 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
25
Dung lượng
1,05 MB
Nội dung
ME 452 Course Project II Rotary Inverted Pendulum (Full Version) Project Instructor: Xiumin Diao Advisor: Dr Ou Ma Department of Mechanical Engineering New Mexico State University July 2006 Objectives Control of an inverted pendulum is one of the most interesting and classical problems for control engineering The objective of this project is to design a controller which is capable of driving the pendulum from its “hanging-down” position to upright position and then holding it there The experiment system, as shown in Fig 1, consists of a vertical pendulum, a horizontal arm, a gear chain, and a servomotor which drives the pendulum through the gear transmission system The rotating arm is mounted on the output gear of the gear chain An encoder is attached to the arm shaft to measure the rotating angle of the arm At the end of the rotating arm there is a hinge instrumented with an encoder The pendulum is attached to the hinge Fig Rotary inverted pendulum system On the project, you are asked to the following: Derive a nonlinear model of the rotary inverted pendulum system Derive a linearized model of the same system in the neighborhood of the upright position Verify the linear and non-linear models to see if they are indeed true models of the physical system over a specific operating range Design, implement, and simulate a stabilizing controller which maintains the pendulum in the upright position with some robustness for small disturbance to the pendulum Design and implement a mode controller which activates the stabilizing controller when the pendulum is placed in a small neighborhood of the upright position Design and implement a destabilizing controller which swings up the pendulum to near upright position, so that the stabilizing controller can be activated to stabilize the pendulum System requirements To complete this project, the following hardware and software are required: 1) A Quanser UPM 1503 universal power module 2) A Quanser Q4 data acquisition card 3) A Quanser terminal card 3) A Quanser SRV02-ET servomotor and the geared driving unit 4) A Quanser rotary inverted pendulum 5) A PC 6) Quanser’s WinCon 5.0 software 7) Matlab/Simulink and control system toolbox All of the above-mentioned hardware and software are provided in the Robotics lab (JH608) Modeling of the inverted pendulum system The inverted pendulum (mechanical part only) is sketched in Fig 2, α and θ are employed as the generalized coordinates to describe the inverted pendulum system The pendulum is displaced with a given α while the arm rotates an angle of θ In this project, we assume that θ ≡ θ l where the latter has been used in Project I We assume the pendulum to be a lump mass at point B which is located at the geometric center of the pendulum The xyz frame is fixed to the arm at point A For a complete listing of the symbols used in the math formulation, please refer to Appendix A B Pendulum L α y α& arm z θ O x A r θ& Fig Simplified model of the rotary inverted pendulum system 3.1 Using Free Body Diagram method The Free Body Diagram of the inverted pendulum (mechanical part only) system is shown in Fig Note that the arm rotates in the horizontal plane (xz plane) only and the pendulum rotates in the vertical plane (xy plane) only, we can draw the forces in these two planes only to simplify the drawing Referring back to Fig 2, we notice that the velocity of point B on the pendulum relative to that of point A on the arm is x& BA = − L cos(α )α& y& BA = − L sin(α )α& (1) We also know that the pendulum is also moving with the rotating arm at a rate of rθ& Thus, the absolute velocity of the point B on the pendulum can be expressed as x& B = rθ& − L cos(α )α& (2) y& B = − L sin(α )α& Ax x A θ z B Arm Tl O y mg θ& Beqθ& Pendulum α Ox α& Oz (a) F.B.D of Arm Ax A x Ay (b) F.B.D of Pendulum Fig Free Body Diagram of the rotary inverted pendulum system Differentiating (2) with respect to time, we will get the acceleration of the point B &x&B = rθ&& + L sin(α )α& − L cos(α )α&& &y&B = − L cos(α )α& − L sin(α )α&& (3) Applying Newton’s 2nd Law to the pendulum in x direction, we obtain m&x&B = ∑ Fx ⇒ mrθ&& + mL sin(α )α& − mL cos(α )α&& = Ax (4) Applying Newton’s 2nd Law to the pendulum in y direction, we obtain m&y&B = ∑ Fy ⇒ −mL cos(α )α& − mL sin(α )α&& = Ay − mg ⇒ mg − mL cos(α )α& − mL sin(α )α&& = Ay (5) Applying Euler’s Equation to the rotational motion of the pendulum about point B , we obtain m(2 L) α&& = Ax L cos(α ) + Ay L sin(α ) 12 ⇒ mL2α&& = Ax L cos(α ) + Ay L sin(α ) J Bα&& = ∑ M B ⇒ (6) Applying the Euler’s Equation to the rotational motion of the arm about point O , we obtain J Oθ&& = ∑ M O ⇒ J eqθ&& = Tl − Beqθ& − Ax r (7) Substituting (4) and (5) into (6), we are left mL α&& = (mrθ&& + mL sin(α )α& − mL cos(α )α&&) L cos(α ) + (mg − mL cos(α )α& − mL sin(α )α&&) L sin(α ) ⇒ mL2α&& = (mLr cos(α )θ&& + mL2 sin(α ) cos(α )α& − mL2 cos (α )α&&) + (mgL sin(α ) − mL2 sin(α ) cos(α )α& − mL2 sin (α )α&&) ⇒ −mLr cos(α )θ&& + mL2α&& − mgL sin(α ) = (8) Substituting (4) into (7), we are left J eqθ&& = Tl − Beqθ& − (mrθ&& + mL sin(α )α& − mL cos(α )α&&)r ⇒ J eqθ&& = Tl − Beqθ& − (mr 2θ&& + mLr sin(α )α& − mLr cos(α )α&&) (9) ⇒ ( J eq + mr )θ&& − mLr cos(α )α&& + mLr sin(α )α& = Tl − Beqθ& Combining (8) and (9), we obtain the motion of equation of the system ( J eq + mr )θ&& − mLr cos(α )α&& + mLr sin(α )α& = Tl − Beqθ& − mLr cos(α )θ&& + mL2α&& − mgL sin(α ) = (10) 3.2 Using Lagranian Formulation The kinetic energy of the mechanical system arising from the rotating arm and pendulum is 1 2 J eqθ& + m( x& B + y& B ) + J Bα& 2 2 1 = J eqθ& + m[(rθ& − L cos(α )α& ) + (− L sin(α )α& ) ] + J Bα& 2 2 = ( J eq + mr )θ& + mL2α& − mLr cos(α )θ&α& T= where J B = (11) 1 m(2 L) = mL2 is the moment of inertia of the pendulum about its center of mass Taking 12 the horizontal plane where the arm lies as the datum plane, the only potential energy in the mechanical system is gravity, i.e., V = mgL cos(α ) (12) Since we have two generalized coordinates, θ and α , we therefore have two equations according to Lagrangian Formulation d ∂T ∂T ∂V + = Tl − Beqθ& ( )− dt ∂θ& ∂θ ∂θ d ∂T ∂T ∂V + ( )− =0 & dt ∂α ∂α ∂α (13) Substituting (11) and (12) into (13), we obtain the motion of equation of the system (10) as expected From Project I, we have known that the output torque of the driving unit on the load shaft is Tl = η g K g (Tm − J mθ&&m ) = η g K g (η m K t I m − J m K g θ&&) = η mη g K t K g = η mη g K t K g Rm Vm − K m K g θ& Rm Vm − − η g K g2 J mθ&& (14) η mη g K t K g2 K m & θ − η g K g2 J mθ&& Rm Substituting (14) into (10), we obtain the nonlinear model of the system as follows: aθ&& − b cos(α )α&& + b sin(α )α& + eθ& = fVm − b cos(α )θ&& + cα&& − d sin(α ) = (15) where a = J eq + mr + η g K g2 J m b = mLr mL d = mgL c= e = Beq + f = (16) g η mη g K t K K m Rm η mη g K t K g Rm Linearizing (15) under the assumption that α ≈ and α& ≈ , we get the linearized model as follows: aθ&& − bα&& + eθ& = fVm (17) − bθ&& + cα&& − dα = Solving (15) for the two accelerations α&& and θ&& , we obtain the solution from the nonlinear model below: − b sin(α )α& − eθ& + fVm − b cos(α ) θ&& = 2 ac − b cos (α ) d sin(α ) c = α&& = (−bc sin(α )α& + bd sin(α ) cos(α ) − ceθ& + cfVm ) ac − b cos2 (α ) a − b sin(α )α& − eθ& + fV (18) m ac − b cos2 (α ) − b cos(α ) d sin(α ) (ad sin(α ) − b sin(α ) cos(α )α& − be cos(α )θ& + bf cos(α )Vm ) ac − b cos2 (α ) Solving (17) for the two accelerations α&& and θ&& , we find the solution from the linearized model as follows: = θ&& = − eθ& + fVm ac − b dα −b (bdα − ceθ& + cfVm ) = ac − b c a − eθ& + fVm 1 = (adα − beθ& + bfVm ) α&& = ac − b − b ac − b dα (19) To obtain the transfer function of the linearized system equations (17) analytically, we need to take the Laplace transformation of it, namely, aΘ( s) s − bΑ(s) s + eΘ(s )s = fVm ( s) − bΘ( s)s + cΑ( s)s − dΑ(s) = (20) In the above the initial conditions have been assumed zero The transfer function relates the variation from the desired position of the pendulum to the input voltage of the motor Since we are interested in the angle α , we want to eliminate Θ( s ) from (20) bfs Α( s) = Vm (s) (ac − b )s + ces − ads − des (21) From the above transfer function, it can be seen that there is a pole and a zero at the origin They can be canceled from each other and the resulting transfer function becomes Α( s ) bfs = Vm ( s) (ac − b ) s + ces − ads − de (22) This is our final model of the inverted pendulum system for designing the controller Note that this transfer function represents the linearized model only Verification of the mathematical model 4.1 Verification of the linear model against the nonlinear model In order to get some sense about how well the linearized model represents the original nonlinear system, we are going to simulate the dynamics of the system using both the linear and non-linear models and then compare their simulation outputs The simulation will not only verify the linear model, but also establish a threshold for us to know the threshold (on α ) of the linear model The main Simulink diagram of comparing the linear model with the nonlinear model is shown in Fig The nonlinear and linear models are shown in Figs and 6, respectively α is given an initial condition ( 0.00001 (rad ) ) and thus the pendulum is allowed to fall As one can see from the simulation results shown in Fig 7, the linear model correctly depicts the motion of the pendulum for the first 1.4 seconds and then begin to break down Zooming in the plots around 1.4 seconds, we saw that the linear model quite accurately described the system for the first 15 degrees and then began to diverge from the actual motion Fig Main diagram of verifying the linear model Fig Diagram of the nonlinear model Fig Diagram of the linear model 60 Linear Nonlinear θ (deg) 40 20 -20 0.2 0.4 0.6 0.8 Time (s) 1.2 1.4 1.6 1.8 0.6 0.8 Time (s) 1.2 1.4 1.6 1.8 250 Linear Nonlinear α (deg) 200 150 100 50 0 0.2 0.4 Fig Overlapped plots of the simulation outputs from the linear and nonlinear models 4.2 Verification of both linear and nonlinear models against hardware In order to get some sense about how well the dynamics models represent the real hardware system, we are going to compare the outputs of both the linear model and the nonlinear model with hardware data To simplify the verification, we the experiment near the “hanging-down” position Replacing α with α + π in (18), we obtain the nonlinear model of the pendulum system at the “hanging-down” position: (bc sin(α )α& + bd sin(α ) cos(α ) − ceθ& + cfVm ) ac − b cos2 (α ) α&& = (−ad sin(α ) − b sin(α ) cos(α )α& + be cos(α )θ& − bf cos(α )Vm ) ac − b cos2 (α ) θ&& = (23) Linearizing (23) under the assumption that α ≈ and α& ≈ , we get the corresponding linearized model (bdα − ceθ& + cfVm ) ac − b α&& = (−adα + beθ& − bfVm ) ac − b θ&& = (24) The main Simulink diagram of comparing both the linear and nonlinear models with the data measured from the physical system is shown in Fig The interface to the inverted pendulum system is shown in Fig The linear model and the nonlinear model, as shown in Figs 10 and 11, are created according to (23) and (24) respectively Fig Main diagram of verifying both the linear model and the nonlinear model Fig Interface to the inverted pendulum system Fig 10 Liner model of the inverted pendulum system Fig 11 Nonliner model of the inverted pendulum system In the experiment, a ramp signal with a slope of 2, as shown in Fig 12, is used as the input voltage of the system From the plots of θ and α , as shown in Fig 13, we can see that the responses of the models are similar to these of the physical system They have almost the same shape The responses of the physical system have some delay due to the friction in the physical system as explained in project I 10 2.5 Input Voltage (V) 1.5 0.5 0 0.2 0.4 0.6 Time (s) 0.8 1.2 Fig 12 Input voltage of the experiment 80 Linear model Nonlinear model Physical system θ (deg) 60 40 20 0 0.1 0.2 0.3 0.4 0.5 Time (s) 0.6 0.7 0.8 0.9 Linear model Nonlinear model Physical system α (deg) -2 -4 -6 -8 0.1 0.2 0.3 0.4 0.5 Time (s) 0.6 0.7 0.8 0.9 Fig 13 Plots of the verifying both the linear model and the nonlinear model with the physical system Destabilizing controller The controller of the whole system consists of three parts: destabilizing controller, stabilizing controller, and mode controller The destabilizing controller, as the name implies, oscillates the arm until it has built up enough energy to break the initial stable (hanging-down) state and get the pendulum into an almost upright but unstable state Then the stabilizing controller is turned on to stabilize the pendulum in its 11 upright sate The mode controller determines when to switch between the destabilizing controller and stabilizing controller We will discuss the design and implementation of the destabilizing controller in this section The mode controller and the stabilizing controller will be discussed in the next two sections Destabilizing controller will essentially drive the position of the arm in order to get away from the stable “hanging-down” position of the pendulum It simply makes sense that, by moving the arm back and forth strongly enough, it can eventually swing up the pendulum Hence, the first thing we need to is to design a position controller which can swing the arm to achieve the destabilizing goal 5.1 Position controller 5.1.1 Design of the position controller The pendulum in the system has a length of L = 0.335 (m) and its center of mass is located at its geometric center Thus the natural frequency for small oscillations of the pendulum is given by ωp = mgL = IA 3g = 6.628 (rad/s ) 4L (25) where I A is the mass moment of inertia of the pendulum about point A We want the arm to react to these movements Therefore the closed-loop response of the arm should be considerably faster than the natural frequency of the pendulum It would then be reasonable to design a closed-loop controller for the arm position which has the following specifications ω n = 4ω p , %OS = 2% or ω n = 26.512 (rad/s), ζ = 0.780 (26) where %OS is the maximum overshoot of the response for a step input For the arm to track the desired position, we design a PD control law Vm = K p (θ d − θ ) − K vθ& (27) This is a position control loop that controls the voltage applied to the motor so that θ tracks θ d with zero desired velocity Now we need to determine K p and K v according the above defined specifications (26) The closed-loop transfer function of the input and output is η gη m K g K t K p θ = θ d J eq R m s + ( Beq R m + η g η m K m K t K g2 + η gη m K g K t K v ) s + η g η m K g K t K p (28) Comparing it with the standard transfer function of a second order system (see Section 5-3 of the textbook) we have Beq Rm + η gη m K m K t K g2 + η gη m K g K t K v J eq Rm η gη m K g K t K p J eq Rm =ω = 2ω n ζ (29) n Solving (29), we obtain 12 Kv = 2ω n ζJ eq Rm − Beq Rm − η gη m K m K t K g2 η gη m K g K t = 0.585 (30) ω n2 J eq Rm Kp = = 19.612 η gη m K g K t With these values of the control grains, we expect the arm tracks the desired position and velocity with the required specifications 5.1.2 Simulation of the position controller The main Simulink diagram of the simulation of the position controller is shown in Fig 14 and the Simulink diagram of the servomotor and gear transmission system is shown in Fig 15 Given the required specifications ω n = 26.512 (rad/s), %OS = 2% , the step response of the closed-loop system is shown in Fig 17 We can see that the response has a maximum overshoot of 2% and the first peak at 0.189 second So the position controller meets the required specifications Fig 14 Main diagram for simulation of the position controller Fig 15 Model of the servomotor and gear transmission system Control signal (V) -2 0.1 0.2 0.3 0.4 0.5 Time (s) 0.6 0.7 0.8 0.9 Fig 16 Control signal of the system 13 Load shaft position (deg) 25 System reponse Input command 20 15 10 0 0.1 0.2 0.3 0.4 0.5 Time (s) 0.6 0.7 0.8 0.9 Fig 17 System response due to a step input 5.1.3 Implementation of the position controller The main Simulink diagram of the implementation of the position controller is shown in Fig 18 and the interface to the servomotor and gear transmission system is shown in Fig 19 The model of the servomotor and gear transmission system is shown in Fig 15 An example step response of the system is shown in Fig 21 In this example, the desired angular position of the arm is set to 20 degrees Fig 18 Main diagram for implementation of the position controller Fig 19 Interface to the servomotor and gear transmission system 14 Simulated control signal Measured control signal Control signal (V) -2 0.5 1.5 2.5 Time (s) 3.5 4.5 Fig 20 Simulated and real control signals for the position control experiment Load shaft position (deg) 25 20 15 10 Input command Simulated position Measured position 0 0.5 1.5 2.5 Time (s) 3.5 4.5 Fig 21 Simulated and real dynamic responses of the system to a step input 5.2 Destabilizing controller Many schemes can be devised to gradually swing up the pendulum In this project we will design a positive feedback controller to destabilize the pendulum and eventually swing up it Notice that we have a useful application of positive feedback here Assume the arm position can be commanded via θ d Then the feedback θ d = Pα + Dα& (31) can be made to destabilize the system with the proper choice of the gains P and D This means that we want to command the arm based on the position and velocity of the pendulum Moreover, by limiting θ d , we can ensure that the arm does not reach a position that will cause a collision with the nearby hardware (e.g., the table) The gains P and D are crucial in bring up the pendulum smoothly Based on the experiment, we choose P = 0.5 (deg/deg) and D = 0.00001 deg/(deg/s) One can tune the value of D to adjust the “damping” in the system The main Simulink diagram of the destabilizing controller using positive feedback is shown in Fig 22 The diagram of the rotary inverted pendulum is shown in Fig 23 From the plot of alpha in Fig 24, we can see that the pendulum is brought up (the curve passing through the α = line) in about 1.25 seconds 15 Fig 22 Main diagram of the Destabilizing controller using positive feedback Fig 23 Interface to the rotary inverted pendulum system 200 α (deg) 100 -100 -200 0.5 1.5 2.5 Time (s) Fig 24 Plot of alpha during the pendulum swing-up motion under the destabilizing control 30 20 θ (deg) 10 -10 -20 -30 0.5 1.5 2.5 Time (s) Fig 25 Plot of theta during the pendulum swing-up motion under the destabilizing control 16 Mode controller The purpose of the mode controller is to track the pendulum angle α and facilitate switching between the destabilizing controller and stabilizing controller This controller is to be enabled when α is in the neighborhood of zero, within the threshold of α (currently set to 10 degrees) The Simulink diagram of the simulation of the mode controller is shown in Fig 26 From the simulation results shown in Fig 27 we can see that the mode controller works very well It output when α ≤ 10 degrees and when α > 10 degrees Fig 26 Simulink diagram of the mode controller 15 Mode signal Input signal 10 -5 -10 -15 0.5 1.5 2.5 Time (s) 3.5 4.5 Fig 27 Plots of the input signal and the mode signal Stabilizing controller by feeding back both θ and α If we can feed back both θ and α angles, we can calculate the control signal using both of them Assuming the pendulum is almost upright, two PD controllers can be implemented to maintain it at the upright position (capable of rejecting disturbances up to a certain extent) The PD controller for θ theta _ u = theta _ K p (θ d − θ ) + theta _ K d θ& is (32) where θ d is the desired position of the rotating arm after balancing The PD controller for α is alpha _ u = alpha _ K p (α d − α ) + alpha _ K d α& (33) where α d ≡ The control signal (i.e., the input voltage of the motor) is then given by u = alpha _ u − theta _ u (34) Based on the experiment, we choose 17 theta _ K p = 2.2; theta _ K d = 2.0; alpha _ K p = 21.1; alpha _ K d = 2.9 (35) One can adjust these four parameters to obtain a better stabilizing controller To simulate the stabilizing controller, the Simulink diagram shown in Fig 28 is created The rotary inverted pendulum model is shown in Fig An impulse disturbance with amplitude of degrees and period of seconds is added to the measured alpha in Fig 29 We can see that the stabilizing controller is good enough to maintain the pendulum in the upright position and keep it there stably The same impulse disturbance is added to the measured theta in Fig 30 The stabilizing controller can also maintain the pendulum in the upright position and keep it stable Fig 28 Diagram of the simulation of the stabilizing controller 18 Control signal (V) 50 -50 -100 10 12 14 16 18 20 10 12 14 16 18 20 10 Time (s) 12 14 16 18 20 40 θ (deg) 20 -20 -40 10 α (deg) -10 -20 -30 Fig 29 Plots of control signal, theta, and alpha when alpha has an impulse disturbance Control signal (V) 20 -20 -40 -60 10 Time (s) 12 14 16 18 20 10 Time (s) 12 14 16 18 20 10 Time (s) 12 14 16 18 20 θ (deg) 50 -50 10 α (deg) -10 -20 -30 Fig 30 Plots of control signal, theta, and alpha when theta has an impulse disturbance 19 Implementation of the whole system by feeding back both θ and α The main Simulink diagram of the implementation of the rotary inverted pendulum system is shown in Fig 31 The diagrams of the three sub-controllers, namely, the destabilizing controller, the mode controller and the stabilizing controller are shown in Figs 32-34, respectively The implementation of the sevomotor and gear transmission system is shown in Fig 23 From the experiment, we can see that the pendulum is destabilized in the “hanging-down” position, brought upright and maintained in the inverted position Note that the pendulum has some small oscillations (see Fig 35) in the inverted position due to the errors in the mathematical model and the controller, the friction in the hardware, the vibration of the experiment table, etc Fig 31 Main diagram of the rotary inverted pendulum system Fig 32 Diagram of the destabilizing controller Fig 33 Diagram of the mode controller 20 Fig 34 Diagram of the stabilizing controller α (deg) 0.5 -0.5 -1 Time (s) 10 10 Fig 35 Plot of the alpha angle after balancing in the upright position θ (deg) -2 -4 -6 Time (s) Fig 36 Plot of the theta angle after balancing in the upright position Stabilizing controller by feeding back α only The rotary inverted pendulum system has two degrees of freedom In general, we cannot maintain the pendulum in the upright position if we feed back α only Using the SISO Design Tool in the Control System Toolbox, we can design a stabilizing (PID) controller for the system described by the transfer function in (22) As shown in Fig 37, the controller can be C (s) = × ( s + 20)(s + 10) s + 30s + 200 = 2× s s (36) Comparing to the standard PID controller 21 C (s) = K c × Kd s2 + K p s + Ki s (37) we get K c = 2, K p = 30, K i = 200, K d = (38) To simulate the stabilizing controller by feeding back α only, the main Simulink diagram shown in Fig 38 was created The rotary inverted pendulum model is shown in Fig From the simulation results shown in Figs 39 and 40, we can see that the pendulum can reject a pulse disturbance, but the rotating arm will rotate crazily if we feed back α only Fig 37 Design of the PID controller using SISO Design Tool 22 Fig 38 Simulink diagram for simulating the stabilizing controller α (deg) -5 Feedback α only Feedback α and θ -10 Time (s) 10 10 Fig 39 Plot of alpha when there is a pulse disturbance in alpha 200 Feedback α only θ (deg) 150 Feedback α and θ 100 50 -50 Time (s) Fig 40 Plot of theta when there is a pulse disturbance in alpha 23 Appendix A: Nomenclature of the System Symbol Ax Ay Description X component of the action force exerted on the pendulum at point A by the arm Y component of the action force exerted on the pendulum at point A by the arm MATLAB Variable Nominal Value (SI Units) - - - - α Pendulum position - - α& Pendulum velocity - - α&& Pendulum acceleration - - Beq Equivalent viscous damping coefficient Beq 0.004 g 9.81 g Gravity acceleration Im Current in the armature circuit - - JB Moment of inertia of the pendulum about its center of mass - - J eq Moment of inertia of the arm and pendulum about the axis of θ Jeq 0.0035842 Jl Moment of inertia of the arm and pendulum about the axis of θ l - - Jm Moment of inertia of the rotor of the motor Jm 3.87e-7 Kg SRV02 system gear ratio (motor -> load) Kg 70 ( 14 × ) Km Back-emf constant Km 0.00767 Kt Motor-torque constant Kt 0.00767 L 0.1675 Half length of the pendlum L Lm Armature inductance - - m Mass of pendulum m 0.125 - - - - Ox Oz X component of the action force exerted on the arm at point O by the base of the motor Z component of the action force exerted on the arm at point O by the base of the motor r Rotating arm length r 0.215 Rm Armature resistance Rm 2.6 Tl Torque applied to the load - - Tm Torque generated by the motor - - θ Load shaft position - - θ& Load shaft velocity - - θ&& θl Load shaft acceleration - - Angular position of the arm - - θ&l Load shaft velocity - - 24 θ&&l Load shaft acceleration - - θm Motor shaft position - - θ&m Motor shaft velocity - - θ&&m Motor shaft acceleration - - V emf Motor back-emf voltage - - Input voltage of the armature circuit - - - - - - Vm x& BA y& BA X component of the velocity of point B on the pendulum relative to point A on the arm Y component of the velocity of point B on the pendulum relative to point A on the arm x& B Velocity of pendulum center of mass in X direction - - y& B Velocity of pendulum center of mass in Y direction - - &x&B Acceleration of pendulum center of mass in X direction - - &y&B Acceleration of pendulum center of mass in Y direction - - ηg Gearbox efficiency Eff_G 0.9 ηm Motor efficiency Eff_M 0.69 25 [...]... positive feedback is shown in Fig 22 The diagram of the rotary inverted pendulum is shown in Fig 23 From the plot of alpha in Fig 24, we can see that the pendulum is brought up (the curve passing through the α = 0 line) in about 1.25 seconds 15 Fig 22 Main diagram of the Destabilizing controller using positive feedback Fig 23 Interface to the rotary inverted pendulum system 200 α (deg) 100 0 -100 -200 0 0.5... “hanging-down” position, brought upright and maintained in the inverted position Note that the pendulum has some small oscillations (see Fig 35) in the inverted position due to the errors in the mathematical model and the controller, the friction in the hardware, the vibration of the experiment table, etc Fig 31 Main diagram of the rotary inverted pendulum system Fig 32 Diagram of the destabilizing controller... the pendulum at point A by the arm Y component of the action force exerted on the pendulum at point A by the arm MATLAB Variable Nominal Value (SI Units) - - - - α Pendulum position - - α& Pendulum velocity - - α&& Pendulum acceleration - - Beq Equivalent viscous damping coefficient Beq 0.004 g 9.81 g Gravity acceleration Im Current in the armature circuit - - JB Moment of inertia of the pendulum. .. of the velocity of point B on the pendulum relative to point A on the arm Y component of the velocity of point B on the pendulum relative to point A on the arm x& B Velocity of pendulum center of mass in X direction - - y& B Velocity of pendulum center of mass in Y direction - - &x&B Acceleration of pendulum center of mass in X direction - - &y&B Acceleration of pendulum center of mass in Y direction... -6 0 1 2 3 4 5 Time (s) 6 7 8 Fig 36 Plot of the theta angle after balancing in the upright position 9 Stabilizing controller by feeding back α only The rotary inverted pendulum system has two degrees of freedom In general, we cannot maintain the pendulum in the upright position if we feed back α only Using the SISO Design Tool in the Control System Toolbox, we can design a stabilizing (PID) controller... 200, K d = 1 (38) To simulate the stabilizing controller by feeding back α only, the main Simulink diagram shown in Fig 38 was created The rotary inverted pendulum model is shown in Fig 6 From the simulation results shown in Figs 39 and 40, we can see that the pendulum can reject a pulse disturbance, but the rotating arm will rotate crazily if we feed back α only Fig 37 Design of the PID controller... of the implementation of the rotary inverted pendulum system is shown in Fig 31 The diagrams of the three sub-controllers, namely, the destabilizing controller, the mode controller and the stabilizing controller are shown in Figs 32-34, respectively The implementation of the sevomotor and gear transmission system is shown in Fig 23 From the experiment, we can see that the pendulum is destabilized in... simulate the stabilizing controller, the Simulink diagram shown in Fig 28 is created The rotary inverted pendulum model is shown in Fig 6 An impulse disturbance with amplitude of 5 degrees and period of 5 seconds is added to the measured alpha in Fig 29 We can see that the stabilizing controller is good enough to maintain the pendulum in the upright position and keep it there stably The same impulse disturbance... stable “hanging-down” position of the pendulum It simply makes sense that, by moving the arm back and forth strongly enough, it can eventually swing up the pendulum Hence, the first thing we need to do is to design a position controller which can swing the arm to achieve the destabilizing goal 5.1 Position controller 5.1.1 Design of the position controller The pendulum in the system has a length of... -200 0 0.5 1 1.5 2 2.5 Time (s) Fig 24 Plot of alpha during the pendulum swing-up motion under the destabilizing control 30 20 θ (deg) 10 0 -10 -20 -30 0 0.5 1 1.5 2 2.5 Time (s) Fig 25 Plot of theta during the pendulum swing-up motion under the destabilizing control 16 6 Mode controller The purpose of the mode controller is to track the pendulum angle α and facilitate switching between the destabilizing