بسم ا ...الرحمن الرحيم سیستمهای کنترل خطی پاییز 1389 دکتر حسین بلندي -دکتر سید مجید اسما عیل زاده Recap. • Solution of State Space Equation. • 2nd Order systems • Design Specifications 2 PERFORMANCE INDICES AND OPTIMAL SYSTEMS مقدمه سیستم کنترل بهینه :سیستمی است که طراحی آن مقدار یک تابع انتخاب شده بعنوان شاخص عملکرد را بهینه سازی می کند. تفاوت سیستم بهینه با یک سیستم ایده آل :سیستم بهینه بهترین سیستم قابل حصول با وجود محدودیت های فیزیکی است و حال آنکه یک سیستم ایده آل ممکن است یک هدف غیر قابل حصول باشد. شاخص های عملکرد :در طراحی یک سیستم کنترل بهینه ،برای تعیین یک تصمیم کنترلي تحت محدودیت های خاص الزم است قانونی پیدا کنیم که معیاری از انحراف از عملکرد ایده آل را به حداقل برساند .آن معیار توسط شاخص عملکرد انتخاب شده فراهم می گردد .لذا شاخص عملکرد تابعی است که مقدار آن بعنوان نشانه ای از میزان تطبیق عملکرد واقعی با عملکرد مطلوب درنظر گرفته می شود. مقدمه • بهينهسازيبهعنوانهنربدستآوردنبهتريننتيجهتحتشرايطموجوداستكه ميتوانددرتمامابعادسيستمهايمهندس ي نظيرطراحي،نگهداريو ...مطرحشود. • متناسببااينمطلبتصميماتمديريتيوتکنولوژيکيدرسطوحمختلفمطرح ميشودکهنتيجهنهاييايننگاهاتخاذتصميماتيبرايکمينهسازييابيشينهسازي پارامترهايمطلوبميباشدکهدروضعيتکاربرديموردنظرمطرحاست. • آرزويانسانبرايرسيدنبهكمالتوضيحفلسفةبهينهسازيوتبيينکنندةتئوري بهينهسازيميباشد مقدمه بدين ترتيب بهينهسازي به عنوان فرآيندي که متغیرهاي مسئله را به منظور برخورداري از شرايط بهينگي مقدار تابع هدف ،پيدا ميکند؛ تعريف ميشود.باید توجه کرد که: بهينهسازي به دنبال بهبود عملكرد در رسيدن به نقطه يا نقاط بهينه است. مقدمه توجه به بهينهسازي ميتواند از منظر مصالحه بین دقت و سرعت در تصميمگیري بهينه مورد توجه قرار گیرد. مي توان هدف از فرآيندهاي جستجو را در سه دسته زير بيان كرد: بهينهسازي يافتن جواب عملي شبه بهينهسازي مقدمه از ديدگاه کنترلي اغلب صنايع داراي پيچيدگي هاي خاص خود هستند: در در آنها بهرهوري مناسبي نداشته و استفاده از كنترلكنندههاي ساده ي موارد ناكارآمد ميباشند. بسيار راهکار: استفادهازساختارهايبهينهبخشهاي مختلف نیز وابستگي از طرفي گستردگي و پيچيدگي اين صنايع و ي كنترلكنندههاي پيشرفته، به هم ،سبب شده است تا براي پيادهساز نياز باشد كه برون رفت بستر سختافزاري و نرمافزاري پيشرفته =======<. History انواع بهینه سازی Off –line On-line بهینه سازی Off-line • مسئله مجزاي از سيستم مطرح ميشود. • ارتباطي بین تغيیرات و شرايط کنوني سيستم با مسئله وجود ندارد ،به دار است. ساختار ايستا و ثابت برخور ديگر مسئله از يک عبارت بهینه سازی On-line • مسئله به علت تعامل با سيستم مورد نظر داراي ماهيت متغیر ميباشد و به شرايط و تغيیرات سيستم وابسته است . • از دادههاي موجود در سيستم براي طرح و تعريف مسئله استفاده ميکند . ي : On-line در بخش بهينهساز در هرلحظه باتوجه به شرايط از سرعت و دقت براي پيداکردن نقاط بهينة فرآيند دار ميباشد. اهميت مضاعفي برخور گیر مورد در عین حال فرا بکارگیري کامپيوترهاي سريع و ارائه مسئلهاي استاندارد و توجه قر ار ميگیرد . براي اجتناب از معادالت پيچيده فعاليت هاي زير را انجام مي دهيم: -1فرضهاي ساده کننده و معقول -2برخي چشم پوش يها و صرفنظر کردنها -3تقريب و خطي سازي مدل زیر بخش های سیستم بهینهسازي on-line سیستم بهینه سازی On-line بخش فرآیند بخش کنترل بخش بهینه سازی مراحل کار گیرند . کار مي در حال مقادير متغیرها را از فرآيند ابتدا سنسورها بعد از حذف اغتشاشات به عنوان پارامترهاي ورودي بهينهگر مورد استفاده قر ار ميگیرند. فرآيند تعيین گر بهترين جواب ممکن را با توجه به شرايط کاري بهينه در آمده در کنتر ل کنندهها مقادير پايا ميکند و اين جواب به عنوان و به فرآيند برميگردد. گامهاي بهینهسازي On-Line گامهاي بهينهسازي On-lineعبارتند از: مرحلة :1شناسايي حالت ماندگار مرحلة :2اعتبار سنجي داده و مصالحه در مسئله مرحلة :3تخمین پارامتر مرحلة :4بهينه سازي مرحلة :5اعمال نتيجه جهت بدست آوردن سيستم بهينه مراحل فرمول بندي و حل مسائل بهینهسازي On-Line مرحله :1شناسايي متغیرهاي فرآيند مرحله :2انتخاب تابع هدف مرحله :3توسعة مدل فرآيند و توصيف قيود. مرحله :4سادهسازي مدل و تابع هدف مرحله :5محاسبة نقطة بهينه مرحله :6انجام بررس يهاي حساسيت Management objectives AUTOMATION AREA Process simulation Model Feedstock selection,Pricing, Purchasing, Logistic Product opportunities, sales, pricing, Logistics Performance Monitoring Planning Accruing Scheduling Data Reconciliation (DR) Historian Interface Central Historian On-line Optimization Historian nterface APC layer Historian Interface DCS DCS layer DCS Physical Processing Unit Physical Plant layer Physical Processing Unit MVC/APC MVC/APC BUSINESS DOMAIN OBJECTIVES SUPPLY CHAIN MANAGEMENT ENTERPRISE RESOURCE PLANNING CONTROL HIERARCHY TYPICAL TIMING Typical Cost/Benefit Relation due to Plant Domain Automation based on Automation Level موارد مورد نیازبرای مسائل کنترل بهينه • معادالت سیستم • بازه بردارهای مجاز کنترل •محدودیت های بر روی مسئله •شاخص عملکرد •پارامترهای سیستم حل مسئله کنترل بهینه ،تعیین بردار کنترل بهینه ) u(kدر میان بازه بردارهای مجاز کنترل است .این بردار به عوامل زیر بستگی دارد : ماهیت شاخص عملکرد ماهیت محدودیت ها حالت اولیه یا خروجی اولیه حالت مطلوب یا خروجی مطلوب هدف در کنترل بهينه بدست آوردن سيگنال کنترل بهينه است. منظور از بهينه كردن ،ممكن است كمينه سازي يا بيشنه سازي باشد. در اتوماسيون صنعتي: کنترل کنندهاي متناسب با نوع فرآيند استفاده می شود که: ي مي کند عملکرد مطلوب را براي فرآيند پيگیر پارامترهاي كنترلكننده بايستي با توجه به تغيیرات سيستم كار با يك عمليات بهينهسازي بر مجددا تنظيم شوند که اين روي كنترلكننده صورت ميپذيرد. ي با توجه به ساختار طو ل بازة تعريف شده براي بهينه ساز On Lineميبايست مورد توجه قر ار گیرد. انواع متعارف مسائل بهینهسازي در اتوماسیون صنعتي -1شرايط عملياتي :دماي راکتور ي سوخت ،انتخاب خوراک موجود -2تخصيص :بکارگیر ي ي :تمیزکار -3طرح ريز جايگاه بهينهسازي بهنگام در اتوماسيون صنعتي باتوجه به تغيیر پارامترهاي پوياي فرآيند در طول زمان و غیرخطي بودن و متغیر با زمان بودن سيستم دستيابي به توليد محصول با خلوص بيشتر و بازدهي باالتر گسترش بهينهسازي On-line در نگاهي فراتر از کنترل فرآيند که بحث در مورد غلبه بر اغتشاش و نوع تغيیر نقطة پاياي فرآيند مورد توجه قرار ميگیرد بهينهسازي بهنگام براي محاسبة مجدد نقطة بهينه در شرايط جاري مطرح ميشود که با توجه به نيازمندي هاي سيستم و مسئله مي تواند از يک ساعت تا يک روز باشد. بنابراين در اين سطح به حل تکراري يک مسئله بهينهسازي حات ماندگار مقيد روي ميآوريم مثال :توابعهدفدرصنايعپتروشيمي • • • • • کمينهسازي مصرف انرژي کمينهسازي حداکثر نياز خنکسازي کمينهسازي فشار بيشينهسازي میزان جداسازي کمينهسازي ضايعات و مواد مضر و ... بررس ي توابع معيار(شاخص عملكرد) • مسئله حداقل زمان • مسئله کنترل وضعيت نهايي • مسئله کنترل حداقل تالش • مسئله تعقيب و رديابي • مسئله تنظيم کننده مسئله حداقل زمان • برای انتقال سیستمی از شرایط اولیه دلخواه به یک مجموعه هدف Sدر حداقل زمان ،تابعی معیاری که باید حداقل شود را به صورت زیر در نظر می گیریم. tf dt t0 t0 tf J مسئله کنترل حداقل تالش در واقع منظور از مسئله کنتر ل حداقل تالش ،انتقال سیستمی از یک • x (t 0 ) x 0به مجموعه هدف مشخص شده با وضعیت اولیه مصرف حداقل نیروی کنتر ل می باشد. معیار برای حداقل کردن مصرف سوخت • به عنوان نمونه ،تابعی tf u (t ) d t t0 J مسئله تعقيب و رديابي نزدیک کردن و نگه داشتن حالت های سیستم ( وضعیت مطلوب در xبازه ی زمانی ) (t d حد( xممکن به ) تا ) t f راt 0 , t مسئله ردیابی(تعقیب) گویند. tf dt 2 ) Q (t )Q(tویژگی های ماتریس : -1ماتریس حقیقی و متقارن است. -2یک ماتریس نیمه معین مثبت است. ) x (t ) x d (t t0 J مسئله کنترل وضعيت نهايي هدف ،حداقل کردن انحراف وضعیت نهایی سیستم از یک مقدار مطلوب باشد(x . می ) t تابع معیار با توجه به این هدف ،به صورت زیر است: f d 2 n ]) ) x di ( t f f [ x (t i i 1 J مسئله تنظيم کننده مسئله تنظیم کننده در واقع حالت خاص مسئله ردیابی(تعقیب کننده) است که تمام حالت های مورد نظر سیستم باید به صفر ختم شوند. )] ( x d ( t ) 0 fo r a ll t [ t 0 , t f نمايش کلي تابعي معيار f t g ( x ( t ), u ( t ), t ) dt ) f ), t f J h ( x (t t0 زماني که مي گوييم سيگنال کنترل بهينه * u معيار J ( x سبب مي شود که تابعي ) حداقل شود ،بدان معني است که نامساوي زير هميشه برقرار باشد. tf g ( x ( t ), u ( t ), t ) dt t0 tf g ( x ( t ), u ( t ), t ) dt h ( x ( t f ), t f ) * * t0 h ( x ( t f ), t f ) * * J مدل رياض ي يك مسئله كنترل بهينه در حالت كلي: or t o t t f x ( t ) a ( x ( t ), u ( t ), t ) t t o tf سيگنال كنترلي كه در تمام مدت t f t oدر محدوديت هاي كنترل صدق نمايد ،به كنترل قابل قبول معروف است. تابعي معيار را با ) J(X نمايش مي دهند ،تابعي معيار در نهايت يک عدد حقيقي نتيجه مي دهد که يک معيار مقايسه است. • The resulting system is termed optimal with respect to the selection criteria. Parameter Adjuster system Performance index 37 Simplified description of a control system 38 Performance Indices Elevator 39 Elevator input and output When the fourth floor button is pressed on the first floor, the elevator rises to the fourth floor with a speed and floor level accuracy designed for passenger comfort. 40 Push of the fourth-floor button is an input that represent a desired output, shown as a step function. 41 Transient response Passenger comfort and passenger patience are dependent upon the transient response. If this response is too fast, passenger comfort is sacrificed; if too slow, passenger patience is sacrificed. 42 Steady-state error Passenger safety and convenience would be sacrificed if the elevator is not properly level. 43 Response of the system 44 ISE - Integral of Square of Error T I1 2 e step ( t )dt 0 45 The Integral Squared Error T I1 e 2 ( t )dt 0 46 Example 1: Mason’s Rule: Error transmittance: Error to step input: Error signal: Error square: Integral square error : Example 2: IAE - Integral of the Absolute Magnitude of the Error T I2 e ( t ) dt 0 52 ITAE - Integral of Time Multiplied by Absolute Error T I3 t e( t ) dt 0 53 ITSE - Integral of Time Multiplied by Squared Error T I4 te 2 (t )dt 0 54 General form of the performance integral T I f [e( t ), r( t ), c (( t ), t ]dt 0 55 In general: T ISE e 2 T ( t ) dt IAE | e ( t ) | dt 0 T T ITAE 0 t | e ( t ) | dt ITSE 0 te ( t ) dt 2 0 T I f ( e ( t ), r ( t ), y ( t ), t ) dt 0 56 T ( s) 1 Performance criteria s 2 s 1 2 57 58 • Steady-state tracking & sys. types Steady-State Error Steady-state error is defined as the difference between the input and output of a system in the limit as time goes to infinity (i.e. when the response has reached the steady state). The steady-state error will depend on the type of input (step, ramp, etc) as well as the system type (0, I, or II). Note: Steady-state error analysis is only useful for stable systems. It is your responsibility to check the system for stability before performing a steady-state error analysis. Many of the techniques that we present will give an answer even if the system is unstable; obviously this answer is meaningless for an unstable system. Calculating steady-state errors Before talking about the relationships between steady-state error and system type, we will show how to calculate error regardless of system type or input. Then, we will start deriving formulas we will apply when we perform a steady state-error analysis. Steady-state error can be calculated from the open or closedloop transfer function for unity feedback systems. The Different Errors Percent Overshoot Settling Time Rise Time Steady-State Error Calculating steady-state errors Steady-state error can be calculated from the open or closedloop transfer function for unity feedback systems. For example, let's say that we have the following system: which is equivalent to the following system: We can calculate the steady state error for this system from either the open or closed-loop transfer function using the final value theorem (remember that this theorem can only be applied if the denominator has no poles in the right-half plane): Now, let's plug in the Laplace transforms for different inputs and find equations to calculate steady-state errors from openloop transfer functions given different inputs: •Step Input (R(s) = 1/s): •Ramp Input (R(s) = 1/s2): •Parabolic Input (R(s) = 1/s3): Lastly, we can calculate steady-state error for non-unity feedback systems: By manipulating the blocks, we can model the system as follows: Now, simply apply the equations we talked about above. In General: • Unity feedback control: + r(s) e C(s) plant y(s) G(s) - r(s) + e - Go.l.(s) y(s) y(s) r (s) y(s) e(s) G ol 1 G ol G o .l . ( s ) is the open loop T.F. from e to y i.e. cut loop open, & get T.F. G o .l . can always be factored into : G o .l . K (T a s 1)( T b s 1) (T m s 1) s (T1 s 1)( T 2 s 1) (T p s 1) N bm s s a n 1 s n N 0 N pn K n 1 m b1 s b 0 a N 1 s N 1 aN s N a1 s a 0 a N 1 a 1 , a 0 0 but a N 0 b0 aN If N 0 , need b 0 0 , otherwise bm 0 can cancel an s. closed - loop : y ( s ) tracking G o .l . ( s ) 1 G o .l . ( s ) R (s) error : e ( s ) R ( s ) y ( s ) steady - state tracking s 0 For step input : R ( s ) sR ( s ) 1 G o .l . ( s ) 1 s 1 1 G o .l . ( s ) 1 G o .l . ( s ) : e ( t ) e ss lim se ( s ) e ss to step 1 s0 1 1 K p s0 R (s) denote K p lim G o .l . ( s ) G o .l . ( 0 ) s 0 called static position error const. Then e ss to step 1 1 K p ( here use small p, not to be confused with proportion al control K P ) If N 0 , the system is called " type 0" with respect to r, K p G o .l . ( 0 ) b0 a0 finite e ss 1 1 K p 1 1 0 b0 a0 type 0 system can track a step input with non - zero e ss . If N 1, or 2, or larger system is called type 1, or type 2, K p G o .l . ( 0 ) b0 a0 a0 0 e ss to step 1 1 K p 0 A system of type 1 or higher can track a step input with zero e ss . For unit step input : e ss 1 1 b0 a0 0 for type 0 for type 1 or higher If step is not unit : r ( s ) R , then s e ss 1 R 1 b0 a0 0 for type 0 for type 1 or higher If r ( s ) is unit ramp : r (s) 1 s 2 e ss to ramp lim sr ( s ) s 0 s 1 G ol ( s ) 1 t 2 1 s lim lim s 0 1 G ( s ) s 0 s sG (s) ol ol lim s 0 1 sG ol ( s ) r(t) 1 Kv denote : K v lim sG ol ( s ) s 0 called static velocity error const For type 0 system, N 0 , a 0 0 , b0 0 b m s b1 s b 0 m K v lim s s 0 lim s s 0 b0 s a1 s a 0 n 0 a0 e ss to ramp 1 Kv type 0 system can not track a ramp input signal. For type 1: N 1, a 0 0 , a 1 0 , b 0 0! K v lim s s 0 lim s 0 bm s s m n 1 bm s m b1 s b 0 s a1 s a 0 n b1 s b 0 a 2 s a1 e ss to ramp 1 b0 finite, 0 a1 0 , finite Kv type 1 system tracks ramp with non - zero steady state error e ss . For type 2 or higher, N 2 , 3 , a 0 a1 0 , b0 0 K v lim s s 0 m bm s b1 s b 0 s a 3 s a 2 s a1 s a 0 n 3 2 cancel ones still has s as a f actor bm s lim s 0 s n 1 m b1 s b 0 a3s a2 s e ss to ramp 2 1 0 0 Kv type 2 or higher system can track a ramp input with no e ss . For unit ramp input : e ss a1 1 b0 Kv 0 if type 0 if type 1 if type 2 If ramp is not unit, r ( s ) R s then : e ss 1 Kv R 2 if type 1 unit accelerati on input : r ( s ) 1 s r (t ) 1 3 t 1( t ) 2 2 e ss to acc r(t) e ss 0 s sr ( s ) 1 3 s lim lim s 0 1 G (s) s 0 1 G ( s ) t lim s 0 1 s s G (s) 2 2 lim s 0 1 2 s G (s) 1 Ka K a lim sG ( s ) is the accelerati on error constant. s 0 For type 0 system, no factor of s in den. a 0 0 K a lim s 2 lim s s 0 b0 m b1 s b 0 s a1 s a 0 n s 0 2 bm s 0 a0 e ss to acc 1 Ka For type 1 system, one factor of 1 in G ( s ). s i.e. one factor of s in den. i.e. a 0 0 , bu a 1 0 K a lim s 2 s 0 lim s s 0 b0 bm s m b1 s b 0 s a n 1 s n n 1 a1 s a 0 0 a1 e ss to acc 1 Ka type 0 or 1 system can' t tract acc. sig. type 2 : N 2 , two factors of 1 in G s or, two factors of s in den. or a 0 0 , a 1 0 , a 2 0 K a lim s 2 s 0 b0 a2 bm s m b1 s b 0 s a n 1 s n n 1 a2s 2 0 ( b 0 0 ) e ss to acc 1 Ka a2 0 b0 type 2 system can tract acc sig. with finite s.s. error. type 3 or higher N 3 a 0 a1 a 2 0 , b0 0 K a lim s s 0 b0 2 bm s m b1 s b 0 s a n 1 s n n 1 a3s 3 0 e ss to acc 1 0 Ka type 3 or higher syst. can tract acc sig. with no s.s. error. summary e ss for acc. input : a2 1 to acc b0 Ka 0 If not unit acc, rather : A if type 0,1 if type 2 if type 3 1 2 t 1( t ) 2 then, e ss needs to be multiplied by A. Caution : seems like larger typer better tracting. but type 2 or higher system are difficult to stabilize. sys. type ref. input type 0 (N=0 a0≠0) r(t)=R·1(t) r(s)=R/s r(t)=R·t·1(t) r(s)=R/s2 r(t)=R·1/2·t2 r(s)=R/s3 Kp=b0/a0 ess=R/(1+Kp) Kv=0 ess=∞ Ka=0 ess=∞ Kv=b0/a1 ess=R/Kv Ka=0 ess=∞ type 1 Kp= ∞ (N=1 a0=0 a1≠0 ess=0 b0≠0 ) type 2, N=2 a0=a1=0 a2≠0,b0≠0 Kp= ∞ ess=0 Kv= ∞ ess=0 Kp=b0/a2 ess=R/Ka type≥3, N ≥ 3 a0=a1=a2=0 b0≠0 Kp= ∞ ess=0 Kv= ∞ ess=0 Ka= ∞ ess=0 Example of tank + K p control : H (s) - R RAs 1 , C (s) K p G o .l . ( s ) C ( s ) H ( s ) K p K pR RAs 1 , N 0 type 0 G (0) K p R , K v K a 0 e ss to step C 1 1 K p e ss to ramp e ss to acc 1 Kv 1 Ka 1 1 K pR H PI control : same H ( s ), KI but C ( s ) K p K ps K I s G (s) C (s)H (s) s (K ps K I )R s ( RAs 1) one factor of s in den, N type 1 K p , K v lim sG ( s ) K I R , K a 0 s 0 e ss to step 1 1 K p e ss to ramp e ss to acc 1 Kv 1 Ka 0 1 KIR Key to steady state tracking is sys. type. sys. type w.r.t. r ( s ) is # 1 in G ( s ) s i.e. # 1 in the open loop T.F. s # 1 r(s) in the path from e following + the loop to the s e.g. + r(s) e - count # 1 s Kps+KI ωn2 1 s s(s+2ξ ωn) Ts+1 in path : 2 type 2 w.r.t. r ( s ) example G (s) K ( s 3 . 15 ) s ( s 1 . 5 )( s 0 . 5 ) find system type, error constants & steady state error to step. ramp. acc. Note : No input or dist. specified. Take default : e(s) r(s) there is one y(s) G(s) 1 s , type 1 K p for type 1 K v lim sG ( s ) s 0 K 3 . 15 1 .5 0 .5 K a 0 for type 1 e ss to step 0 for type 1 e ss to acc for type 1 e ss to ramp 1 Kv 1 4 .2 K 4 .2 K Example # 1 : G (s) 5 ( s 1) s ( s 12 )( s 5 ) 2 2, type 2 s K p , K v type 2 e ss to step 0 type 2 e ss to ramp 0 K a lim s G ( s ) 2 s 0 e ss to acc 1 Ka 5 1 12 5 12 1 12