Plant description We have an electromechanical system, which is composed of an electric motor, moving a rotational load. The load is a pendulum arm. We call this plant an "actuated pendulum." We have sensors installed on it. Those are: 1) Optical encoder for measuring angular position. 2) Gyroscope (from an inertial measurement unit, IMU) for measuring angular rate. The IMU is installed on the pendulum so that one of the IMU's gyroscopesis used to measure the angular velocity of the arm. We know that the following nonlinear ODE can approximate the dynamics of the system. ( ) ( ( )) ( ) ( ) 2 2 sin d t d t a t b c u t dt dt ? ? = - ? - ? + ? ? The system allows us to modify the amount of friction and change the position of a mass attached to the arm. We can also change the gain of the amplifier which drives the electric motor. Although we can modify those characteristics, the resulting parameters a b c , , (indicated in the plant model) are not accurately known by us. The model is nonlinear; however, because the system operates in a limited region that surrounds the angular position ? = 0 , we can further approximate the plant's dynamics by using an LTI model, as follows ( ) ( ) ( ) ( ) 2 2 d t d t a t b c u t dt dt ? ? = - ? - ? + ? ? Which is an adequate approximation for the pendulum being operated close to ? = 0 . Consequently, inone part ofthis assignment, you will identify the system's parameters by exploiting data provided in this assignment. Based on samples of the angular position ? ( provided by the encoder) and the knowledge of the input being applied, we want to infer the values of the model's parameters. Those parameters are the ODE's coefficients a b c , , . We have samples of the angular position and the applied input, i.e., ? (t u t ), ( ), taken every 1 millisecond (That sampling rate is more than enough for sampling a slow system like this one). For giving a better idea about the plant and variables of interest, a short video showing the platform and the relevant signals can be watched from the file "briefVideoPendulumMMAN3200_2021_T2.mp4". In that video we can appreciate how the plant operates under certain input. We have the intention to infer the parameters a b c , , by exploiting the information provided by those available measurements. However, we have an additional issue, which is related to uncertaintypolluting the measurements MMAN3200/2021.T2 - Assignment provided by the encoder. The encoder has a resolution of 360 degrees /2048 (~0.1758 degrees), introducing a quantization error of (360/4096) degrees. (The angular rate measurements are also polluted by noise; however, we do not use those measurements in this assignment.) The quantization error can be appreciated as "small steps" in the plots of the angular measurements. Figure 1. Measurements from the encoder(top subfigure) and measurements from the gyroscope (lower subfigure). The bottom one (angular velocity) shows the presence of noise. 0 5 10 15 0 10 20 30 time (s) angle (deg) file [MMAN3200. Dataset B[000]] 0 5 10 15 -40 -20 0 20 40 60 time (s) ang. rate (deg/sec) MMAN3200/2021.T2 - Assignment Figure 2. If we zoom in for details, we can appreciate the quantization error in the encoder'sreadings. In the lower figure, we can appreciate the noise that affects the angular velocity measurements. Students are provided with the data produced through experiments performed using the plant. We provide three experiments to students. Details about those individual experiments are described in the document "DatasetsAssignment.pdf" Test A: Corresponds to the system starting at a given initial condition (angle =~35 degrees, angular velocity =0). The arm is released and allowed to oscillate for a certain time (15 seconds). No inputs are applied (u=0). Test B: The initial conditions are [0;0]. The applied input is a step function of known amplitude. Note that the step function is delayed so that the transition from 0 to the top of the step does not occur at t=0 but at a time a fraction of a second later (details about the input signal can be inferred for the data. Test C: The initial conditions are [0;0]. In this case, a more complicated input was applied. This data can be used to validate your results, which have been based on data from tests A and B. There are 8 set of experiments, numbered 0 to 7. Each student must choose one, according to her / his student ID number. Each set correspond to a different configuration of the plant (i.e., having different friction and different amplifier gain, however the position of the mass is the same of all of them. 0.9 1 1.1 1.2 1.3 1.4 26 27 28 29 time (s) angle (deg) file [MMAN3200. Dataset B[000]] 0.4 0.45 0.5 0.55 0.6 0.65 0.7 0.75 0.8 0.85 30 35 40 time (s) ang. rate (deg/sec) MMAN3200/2021.T2 - Assignment Assignment Part 1: 1.1) You are required to estimate the parameters a,b,c from the data For estimating those parameters, you will try two approaches Approach 1: you are required to propose anapproach based on the concepts seen in the first part of MMAN3200 (there is a tutorial problem related to this matter). Approach 2: Using a system identification tool, such as the system identification toolbox in MATLAB. This method allows us to estimate the model's parameters, for cases even in which the system's input is anarbitrary signal, not necessarily a step function. How to use this tool will be explained in class. 1.2) Simulation for verifying results Once you have estimated the parameters, you will perform a simulation (using the model with your parameters) for verifying if the estimated model is satisfactory by comparing the measured signals with the simulated ones (we do not expect a perfect match due to many factors, which the lecturer will explain in class) Assignment, part 2 Based on the parameter that you estimated in Part 1 of the assignment, you are asked to solve the following steps, related to designing a controller: 1. Obtain a valid state-space model of the system. 2. Obtain the Transfer Function, which models the system input-output relationship of the plant. 3. Based on the model of the plant, design an PID controller, for achieving the following closed loop specifications: {Specifications: you propose adequate specifications for rise time and settling time. However, the % Overshoot <= 10%,="" and="" sse="">=><= 1%}. based on those specifications, configure the pid controller. you may use the autotuning tool in simulink, or you may try to tune it yourself by iterating, applying the heuristic rules seen in class). note: you may reuse the small simulink program which had been provided for the tutorial about pid controllers. 4. design a controller based on pole placement. the closed loop poles are required tobe ? p p 1 2 , ? , where p d p d 1 2 = - - = - - 1 / 100, 2 / 100 , in which d is a number composed by the last two digits of your student id number. mman3200/2021.t2 - assignment how to use the data the data is offered in matlab files (mat files). to understandhow to use it, you should read the example matlab program file "showdata.m". in that program, the data, which is related to one particular experiment, is loaded, scaled to proper engineering units and then plotted. you should read and prepare the data in a similar way, before being used it in your processing. report you will submit your report in a pdf file. the report must include: 1) a brief introduction describing this part of the assignment; then a brief explanation about the approach you have used for estimating (a,b,c). if you used a toolbox or any third-party software solution for that purpose, you must cite that source and briefly explain it. 2) you will indicate in a small table the estimated parameters (a,b,c), mentioning the number of the dataset you have used (which must be the one assigned according to your zid). 3) you will simulate your estimated model using the same inputs applied in the experiments, and you will include those plots in your report, comparing the simulated one and the real ones. in part 1, we only have an interest in the angular position. 4) include a section for describing the steps you have followed to tune the pid controller. also comment on the transient response and steady-state error achieved by the proposed pid controller. 5) include a section, describing the steps you have followed for designing the controller which is based on pole placement. useful details will be given during the lecture on wednesday, week 8 (the lecture will be recorded, as usual). any questions, you may contact the lecturer,
[email protected] marks assigned to the different parts of this assignment. part a: 52% part b: 48% (12% each of the 4 items) submission of report: via moodle (there will be a section for submission of your assignment). deadline: 03/08/2021, 11:50 pm. note: this assignment is a last moment replacement to the originally intended one. that assignment has been cancelled due to strictrestrictions in accessing equipment in the laboratory 1%}.="" based="" on="" those="" specifications,="" configure="" the="" pid="" controller.="" you="" may="" use="" the="" autotuning="" tool="" in="" simulink,="" or="" you="" may="" try="" to="" tune="" it="" yourself="" by="" iterating,="" applying="" the="" heuristic="" rules="" seen="" in="" class).="" note:="" you="" may="" reuse="" the="" small="" simulink="" program="" which="" had="" been="" provided="" for="" the="" tutorial="" about="" pid="" controllers.="" 4.="" design="" a="" controller="" based="" on="" pole="" placement.="" the="" closed="" loop="" poles="" are="" required="" tobe="" p="" p="" 1="" 2="" ,="" ,="" where="" p="" d="" p="" d="" 1="" 2="-" -="-" -="" 1="" 100,="" 2="" 100="" ,="" in="" which="" d="" is="" a="" number="" composed="" by="" the="" last="" two="" digits="" of="" your="" student="" id="" number.="" mman3200/2021.t2="" -="" assignment="" how="" to="" use="" the="" data="" the="" data="" is="" offered="" in="" matlab="" files="" (mat="" files).="" to="" understandhow="" to="" use="" it,="" you="" should="" read="" the="" example="" matlab="" program="" file="" "showdata.m".="" in="" that="" program,="" the="" data,="" which="" is="" related="" to="" one="" particular="" experiment,="" is="" loaded,="" scaled="" to="" proper="" engineering="" units="" and="" then="" plotted.="" you="" should="" read="" and="" prepare="" the="" data="" in="" a="" similar="" way,="" before="" being="" used="" it="" in="" your="" processing.="" report="" you="" will="" submit="" your="" report="" in="" a="" pdf="" file.="" the="" report="" must="" include:="" 1)="" a="" brief="" introduction="" describing="" this="" part="" of="" the="" assignment;="" then="" a="" brief="" explanation="" about="" the="" approach="" you="" have="" used="" for="" estimating="" (a,b,c).="" if="" you="" used="" a="" toolbox="" or="" any="" third-party="" software="" solution="" for="" that="" purpose,="" you="" must="" cite="" that="" source="" and="" briefly="" explain="" it.="" 2)="" you="" will="" indicate="" in="" a="" small="" table="" the="" estimated="" parameters="" (a,b,c),="" mentioning="" the="" number="" of="" the="" dataset="" you="" have="" used="" (which="" must="" be="" the="" one="" assigned="" according="" to="" your="" zid).="" 3)="" you="" will="" simulate="" your="" estimated="" model="" using="" the="" same="" inputs="" applied="" in="" the="" experiments,="" and="" you="" will="" include="" those="" plots="" in="" your="" report,="" comparing="" the="" simulated="" one="" and="" the="" real="" ones.="" in="" part="" 1,="" we="" only="" have="" an="" interest="" in="" the="" angular="" position.="" 4)="" include="" a="" section="" for="" describing="" the="" steps="" you="" have="" followed="" to="" tune="" the="" pid="" controller.="" also="" comment="" on="" the="" transient="" response="" and="" steady-state="" error="" achieved="" by="" the="" proposed="" pid="" controller.="" 5)="" include="" a="" section,="" describing="" the="" steps="" you="" have="" followed="" for="" designing="" the="" controller="" which="" is="" based="" on="" pole="" placement.="" useful="" details="" will="" be="" given="" during="" the="" lecture="" on="" wednesday,="" week="" 8="" (the="" lecture="" will="" be="" recorded,="" as="" usual).="" any="" questions,="" you="" may="" contact="" the="" lecturer,=""
[email protected]="" marks="" assigned="" to="" the="" different="" parts="" of="" this="" assignment.="" part="" a:="" 52%="" part="" b:="" 48%="" (12%="" each="" of="" the="" 4="" items)="" submission="" of="" report:="" via="" moodle="" (there="" will="" be="" a="" section="" for="" submission="" of="" your="" assignment).="" deadline:="" 03/08/2021,="" 11:50="" pm.="" note:="" this="" assignment="" is="" a="" last="" moment="" replacement="" to="" the="" originally="" intended="" one.="" that="" assignment="" has="" been="" cancelled="" due="" to="" strictrestrictions="" in="" accessing="" equipment="" in="" the="">= 1%}. based on those specifications, configure the pid controller. you may use the autotuning tool in simulink, or you may try to tune it yourself by iterating, applying the heuristic rules seen in class). note: you may reuse the small simulink program which had been provided for the tutorial about pid controllers. 4. design a controller based on pole placement. the closed loop poles are required tobe ? p p 1 2 , ? , where p d p d 1 2 = - - = - - 1 / 100, 2 / 100 , in which d is a number composed by the last two digits of your student id number. mman3200/2021.t2 - assignment how to use the data the data is offered in matlab files (mat files). to understandhow to use it, you should read the example matlab program file "showdata.m". in that program, the data, which is related to one particular experiment, is loaded, scaled to proper engineering units and then plotted. you should read and prepare the data in a similar way, before being used it in your processing. report you will submit your report in a pdf file. the report must include: 1) a brief introduction describing this part of the assignment; then a brief explanation about the approach you have used for estimating (a,b,c). if you used a toolbox or any third-party software solution for that purpose, you must cite that source and briefly explain it. 2) you will indicate in a small table the estimated parameters (a,b,c), mentioning the number of the dataset you have used (which must be the one assigned according to your zid). 3) you will simulate your estimated model using the same inputs applied in the experiments, and you will include those plots in your report, comparing the simulated one and the real ones. in part 1, we only have an interest in the angular position. 4) include a section for describing the steps you have followed to tune the pid controller. also comment on the transient response and steady-state error achieved by the proposed pid controller. 5) include a section, describing the steps you have followed for designing the controller which is based on pole placement. useful details will be given during the lecture on wednesday, week 8 (the lecture will be recorded, as usual). any questions, you may contact the lecturer, j.guivant@unsw.edu.au marks assigned to the different parts of this assignment. part a: 52% part b: 48% (12% each of the 4 items) submission of report: via moodle (there will be a section for submission of your assignment). deadline: 03/08/2021, 11:50 pm. note: this assignment is a last moment replacement to the originally intended one. that assignment has been cancelled due to strictrestrictions in accessing equipment in the laboratory>