سیستم های کنترل خطی
کنترل خطی شاخه ای از مهندسی برق کنترل می باشد که به مطالعه سیستم های با دینامیک خطی می پردازد. کنترل خطی در متلب دارای توابع و جعبه ابزارهای مفیدی می باشد که به آن خواهیم پرداخت. دینامیک خطی به معادلات حالتی گفته می شود که روابط بین متغیرهای حالت در آن بصورت خطی بیان شده باشد. در این سیستم ها می توان شکل کلی معادلات حالت مشخص کننده را به صورت زیر بیان کرد.
dX = A*X+B*U
Y = C*X+D*U
در این معادلات A،B،C،D ماتریس های متناسب با سیستم می باشند.
بطور کلی سیستم های خطی در چندین زیرمجموعه مورد بررسی قرار می گیرند. اصلی ترین این زیرمجموعه ها به صورت :
- سیستم خطی تک ورودی-تک خروجی – SISO
- سیستم خطی چند متغیره – MIMO
می باشند. مباحث مطرح شده در سیستم های خطی مشابه مطالعات دیگر می باشد. این بررسی ها در حوزه آنالیز و طراحی انجام می پذیرد. هر دو این حوزه ها در رفرنس ها مورد بررسی دقیق قرار گرفته اند. از روش های آنالیز حوزه خطی می توان به :
- آنالیز فرکانسی
- آنالیز حوزه زمان
اشاره کرد. در این راستا از ابزارهای بکار گرفته شده در حوزه فرکانسی می توان به :
- آنالیز بودی
- آنالیز نایکوئیست
- آنالیز نمودار نیکولز
اشاره کرد. همچنین آنالیز در حوزه زمان که از مکان هندسی استفاده می کند، که همگی این ابزارها اصطلاحا به عنوان ابزاری برای آنالیز سیستم های خطی (چند متغیر یا SISO) می باشند.
آنچه در کنترل خطی مشخص است، جا افتاده بودن این مبحث می باشد. دلیل این امر شفاف بودن این سیستم ها می باشد. ساختار ساده سیستم های خطی باعث شده است تا مباحث در حوزه آنالیز و طراحی به سرعت در این زمینه پیشرفت کنند. ابزار طراحی در سیستم های خطی نیز به مانند آنالیز متنوع می باشد. طراحی های :
- کنترل پیش فاز
- کنترل پسفاز
- کنترل پیشفاز-پسفاز
- کنترل کننده های تناسبی
- انتگرالی – تناسبی
- PID
از جمله روش های متنوع برای پایدارسازی سیستم های خطی می باشند. هر کدام از این روش ها می توانند براساس روش های آنالیز مختلفی که بیان شدند، طراحی شوند.
کنترل خطی در متلب – آنالیز
نرم افزار متلب به عنوان یکی از پیشرفته ترین ابزار در آنالیز و طراحی سیستم های کنترل خطی می باشد. کلیه مباحث آنالیز و طراحی کنترل خطی در متلب توسعه داده شده اند. این ابزار هم بواسطه توابع از پیش تعریف شده و هم جعبه ابزار سیستم های خطی در متلب آمده اند. از دستورات اصلی برای سیستم های خطی در حوزه آنالیز می توان به :
- rlocus : که به منظور رسم مکان هندسی سیستم های خطی استفاده می شود.
- bode : که به منظور رسم نمودار بودی سیستم های خطی استفاده می شود.
- nyquist : که به منظور رسم نمودار نایکوئیست سیستم های خطی استفاده می شود.
- nichols : که به منظور رسم نمودار نیکولز سیستم های خطی استفاده می شود.
اشاره کرد. یک مهندس برق کنترل ، با توجه به آموزه های خود از دروس مرتبط با کنترل خطی می تواند از این توابع استفاده کند. این ابزار کمک می کند تا شرایط پایداری در سیستم های خطی را از منظر حوزه زمانی ، صفر و قطب یا زاویه و بهره فاز بررسی نماید.
البته این ابزار به طور کلی برای سیستم های SISO بیان شده اند. برای سیستم های MIMO نیز جعبه ابزارهایی بیان شده اند که در مطالب بعد به آن خواهیم پرداخت.
نمودار مکان هندسی برای یک سیستم
کنترل خطی در متلب – طراحی
اما مسئله مهمتر از آنالیز در کنترل سیستم ها ، طراحی می باشد. طراحی به بررسی و استخراج یک کنترل کننده برای سیستم می پردازد که بتواند سیستم را پایدار کند. شکل زیر نمای معمول در بستن یک کنترل کننده برای سیستم خطی را نمایش می دهد.
شماتیک نحوه اعمال کنترل کننده به سیستم خطی
در طراحی کنترل کننده برای سیستم های خطی هر کدام از اهداف زیر می تواند مد نظر باشد: (این مسئله در بحث کنترل خطی در متلب نیز می باشد.)
- پایدارسازی سیستم : به منظور به صفر رساندن شرایط اولیه غیر صفر سیستم (شرایط غیرصفر در متغیرهای حالت) بیان می شود.
- ردیابی : به منظور ردیابی (Tracking) مسیرهای رفرنس توسط سیستم بیان می شود.
- رد اغتشاش : به منظور رد اثر اغتشاش در سیستم ها بیان می شود.
- بهبود مشخصه های زمانی : به منظور بهبود مشخصه های زمانی نظیر بالازدگی (اُورشوت – فراجهش) ، خطای حالت ماندگار ، زمان نشست سیستم و نوسانات حالت ماندگار بیان می شود.
این اهداف به صورت اولویت بندی شده بیان شده اند. در هر سیستمی ابتدا نیاز به پایدارسازی و سپس سایر موارد عنوان شده می باشد. اما آنچه در اغلب سیستم های خطی مشاهده می شود ، سادگی پایدارسازی سیستم می باشد. از این جهت تکنیک کار اصلی یک طراح به بهبود مشخصه های زمانی سیستم برمی گردد.
هر کدام از این مشخصه های زمانی می توانند توسط نوعی از کنترل با ویژگی مشخص قابل دست یابی باشند. اما آنچه مسلم است نیاز به برقراری یک مصالحه در ویژگی های خواسته شده می باشد. به این معنی که نمی توان از یک سیستم انتظار سرعت بسیار بالا و در عین حال فراجهش پایین داشت. در کنترل خطی مسئله طراحی به تغییر مکان صفر و قطب های سیستم می انجامد.
یکی از بهترین روش های طراحی در سیستم های خطی ، کنترل کننده های خانواده PID می باشد. در این کنترل کننده ها با استفاده از سیگنال خطا (خطا به مفهوم ردیابی و یا پایدارسازی) و اعمال مجموعه ای شامل :
- تناسبی : مضربی از خطا
- انتگرالی : انتگرال خطاهای انباشته شده سیستم
- مشتقی : تغییرات خطای سیستم
نسبت به بدست آوردن سیگنال کنترل اقدام می شود. اما آنچه در این طراحی مهم است نحوه انتخاب و در واقع مقادیر ضرایب هر کدام از این سه مورد Kp ، Ki و Kd می باشد. روش های تئوری مختلفی برای این امر در رفرنس ها معرفی شده اند. از روش راوث-هورویتز تا روش زیگلر – نیکولز برای بدست آوردن مقادیر مناسب اشاره شده اند.
در نرم افزار متلب ابزار مختلفی برای طراحی و بدست آوردن این ضرایب معرفی شده است که در ادامه به بررسی آن ها می پردازیم .
یکی از اصلی ترین این روش ها استفاده از بلوک PID در متلب می باشد . این بلوک برای سیستم های پیوسته در مسیر Simulink>>Continuous و برای سیستم های گسسته در مسیر Simulink<<Discrete قرار گرفته است. در محیط سیمولینک متلب شما قادر به استفاده از این کار خواهید بود. به این شکل که پس از ایجاد مدل در سیمولینک به شکل زیر کنترل کننده PID را به عنوان فیدبک در مدل قرار می دهید.
شماتیک بیان نحوه بستن کنترل کننده PID در سیمولینک
در این مرحله با باز کردن کنترل کننده PID با شکل زیر روبرو خواهید شد.
اینترفیس بلوک PID در متلب
در این شماتیک با موارد زیر روبرو هستید که بایستی انتخاب های لازم را انجام دهید:
- Controller : در این بخش نوع کنترل کننده را مشخص می کنید. مشخصا کنترل کننده نوع PID کاملترین انتخاب خواهد بود.
- Time Domain : در این بخش حالت پیوسته یا گسسته را مشخص می کنید. بطور مشخص این انتخاب با بلوکی که انتخاب کرده اید (PID پیوسته و یا گسسته) ، قابل تعیین است.
- Controller Parameter’s : در این بخش پارامترهای کنترل کننده تعیین می شوند. در این بخش از کار متلب برای شما امکان خاصی را قرار داده است. این امکان به شما اجاز می دهد تا از ابزار Tune استفاده کنید. با فشردن این ابزار اینترفیس شکل زیر را خواهید داشت.
اینترفیس ابزار Tune در PID
این امکان به شما اجازه می دهد تا با تعیین سرعت پاسخ دهی سیستم در ابزاری که به این منظور قرار داده شده نسبت به طراحی پارامترها اقدام کنید. البته نوع پلات و پاسخ نیز در این گام تعیین می شود. که بهتر است در حالت Step و Reference tracking قرار داده شود. پس از اکی کردن این بخش پارامترهای مناسب برای سرعت مطلوب شما در مقادیر پارامترهای کنترل کننده قرار خواهند گرفت.
- Initial Conditions : این بخش مربوط به قرار دادن مقادیر اولیه می باشد. هر سیستم انتگرال گیر نیاز به مقدار اولیه دارد. از طرفی با توجه به استفاده از انتگرال گیر در ساخت مشتق گیر PID یک مقدار نیز به آن اختصاص داده می شود. معمولا این مقادیر به صورت صفر رها می شوند.
اگر چه در Tune کنترل کننده PID مرحله خطی سازی گنجانده شده است، اما این ابزار معمولا نمی تواند کنترل کننده مناسبی برای سیستم های غیرخطی و یا مدل های مرتبط با بلوک های برق قدرت (همچون سیستم های دارای اینورتر) بیان کند.
جعبه ابزار SisoTool
این جعبه ابزار به عنوان بخش نهایی از این آموزش می باشد در این جعبه ابزار مباحث طراحی در حوزه کنترل خطی در متلب بیان می شود. همانطور که در آموزش های قبلی عنوان شد، نرم افزار متلب دارای جعبه ابزارهای مفید می باشد. یکی از این جعبه ابزارها به بررسی طراحی سیستم های خطی می پردازد.
آدرس این جعبه ابزار بصورت Toolboxe’s>>Control Systems>>SISO Design Tool می باشد. با استفاده از این جعبه ابزار می توان به طراحی کنترل کننده با ویژگی های مطلوب برای سیستم پرداخت.
شماتیک جعبه ابزار SisoTool
منبع : برق تِک