Control system design Dual-rotor helicopter model
Budget: $30 – $250 USD
This homework will introduce you to the process of system identification and give you hands-on experience with control system design. The model to be identified and controlled is a desktop hardware model that simulates the rotor dynamics of a helicopter.
You will be given step response data obtained through experimentation with the model. Your assignment is to first identify the model, i.e., determine its transfer function and estimate all model parameters, and then design a set of controllers to improve its dynamic performance.
Problem 1: System Identification
Review the description of the Quanser Aero in the Appendix to this document. State the transfer function between pitch motor voltage V_p and pitch angle θ, assuming the yaw motor is OFF. What parameters do you need to identify this system?
Load the step response data in file aero_pitch_step_rsp.mat, and use the Matlab script plot_pitch_response.m to plot it. (Review the script to understand the data file contents.) Based on the step response, would you model the pitch dynamics as a first or second-order system? Why?
Apply appropriate analysis to the step response data, and determine the values of all unknown parameters. Describe all steps in your analysis of the data, e.g., what features were measured, and what calculations were performed to isolate the value of each parameter.
Validate your estimated model by uncommenting the second part of the plotting script and assigning your estimated parameter values. Use Matlab to provide (1) a pole-zero diagram of your plant model and (2) your time-series plots, showing the degree of agreement between measured data and your model.
Problem 2: Pole Placement Design
Assume the control law u=k_p (r-y)-k_d y ̇, where u is the commanded motor voltage, r is the reference pitch angle in radians, and y is the actual pitch angle in radians. Given this form, what is the closed-loop transfer function from reference r to output y?
Given the closed-loop transfer function, what are the equations for the controller gains k_p and k_d as a function of natural frequency ω_n and damping ratio ζ ?
Design controller gains k_p and k_dto achieve the fastest rise time (highest bandwidth controller) possible while satisfying the following performance requirements:
Steady-state error ≤ 2 deg
Percent overshoot ≤ 7.5%
No actuator saturation |V_p |≤24 volts
Provide a pole-zero plot showing final closed-loop pole and zero locations.
Demonstrate your design using the provided Simulink model sim_aero_pitch_pid_control.slx and capture plots showing the response performance and motor voltage behavior.
Problem 3: Dynamic Compensator Design Using Root Locus
Using root-locus techniques, design a dynamic compensator D_c (s)=K (s+b)/(s+a) … meeting the requirements listed in Problem 2. Using Matlab, provide a root-locus plot illustrating your design. (Be sure to turn the grid display on, and use the mouse to indicate the final pole positions.)
Use the provided Simulink model sim_aero_pitch_leadlag_control.slx to validate and tune your design (esp. with regard to the motor voltage requirement). Note that you will need to enter the form of your compensator transfer function D_c (s) before running the simulation. Provide plots showing the final response performance and motor voltage behavior.
Problem 4: Lead-Lag Design Using Frequency Response Techniques
Using frequency response techniques, design a lead-lag compensator D_c (jω) meeting the requirements listed in Problem 2. Using Matlab, provide a Bode plot illustrating the loop frequency response with and without compensation. (Plot both on the same axes.)
As before, use the provided Simulink model sim_aero_pitch_leadlag_control.slx to validate and tune your design (esp. with regard to the motor voltage requirement). Note that you will need to enter the form of your compensator transfer function D_c (s) before running the simulation.
You will be given step response data obtained through experimentation with the model. Your assignment is to first identify the model, i.e., determine its transfer function and estimate all model parameters, and then design a set of controllers to improve its dynamic performance.
Problem 1: System Identification
Review the description of the Quanser Aero in the Appendix to this document. State the transfer function between pitch motor voltage V_p and pitch angle θ, assuming the yaw motor is OFF. What parameters do you need to identify this system?
Load the step response data in file aero_pitch_step_rsp.mat, and use the Matlab script plot_pitch_response.m to plot it. (Review the script to understand the data file contents.) Based on the step response, would you model the pitch dynamics as a first or second-order system? Why?
Apply appropriate analysis to the step response data, and determine the values of all unknown parameters. Describe all steps in your analysis of the data, e.g., what features were measured, and what calculations were performed to isolate the value of each parameter.
Validate your estimated model by uncommenting the second part of the plotting script and assigning your estimated parameter values. Use Matlab to provide (1) a pole-zero diagram of your plant model and (2) your time-series plots, showing the degree of agreement between measured data and your model.
Problem 2: Pole Placement Design
Assume the control law u=k_p (r-y)-k_d y ̇, where u is the commanded motor voltage, r is the reference pitch angle in radians, and y is the actual pitch angle in radians. Given this form, what is the closed-loop transfer function from reference r to output y?
Given the closed-loop transfer function, what are the equations for the controller gains k_p and k_d as a function of natural frequency ω_n and damping ratio ζ ?
Design controller gains k_p and k_dto achieve the fastest rise time (highest bandwidth controller) possible while satisfying the following performance requirements:
Steady-state error ≤ 2 deg
Percent overshoot ≤ 7.5%
No actuator saturation |V_p |≤24 volts
Provide a pole-zero plot showing final closed-loop pole and zero locations.
Demonstrate your design using the provided Simulink model sim_aero_pitch_pid_control.slx and capture plots showing the response performance and motor voltage behavior.
Problem 3: Dynamic Compensator Design Using Root Locus
Using root-locus techniques, design a dynamic compensator D_c (s)=K (s+b)/(s+a) … meeting the requirements listed in Problem 2. Using Matlab, provide a root-locus plot illustrating your design. (Be sure to turn the grid display on, and use the mouse to indicate the final pole positions.)
Use the provided Simulink model sim_aero_pitch_leadlag_control.slx to validate and tune your design (esp. with regard to the motor voltage requirement). Note that you will need to enter the form of your compensator transfer function D_c (s) before running the simulation. Provide plots showing the final response performance and motor voltage behavior.
Problem 4: Lead-Lag Design Using Frequency Response Techniques
Using frequency response techniques, design a lead-lag compensator D_c (jω) meeting the requirements listed in Problem 2. Using Matlab, provide a Bode plot illustrating the loop frequency response with and without compensation. (Plot both on the same axes.)
As before, use the provided Simulink model sim_aero_pitch_leadlag_control.slx to validate and tune your design (esp. with regard to the motor voltage requirement). Note that you will need to enter the form of your compensator transfer function D_c (s) before running the simulation.