مروری بر سیستم های کنترل
سیستم های کنترل بخشی جدایی ناپذیر از هر سیستم کارامد الکتریکی ، مکانیکی و یا الکترومکانیکی می باشد. یک سیستم بدون کنترل کننده ( کنترلر ) به عنوان یک سیستم حلقه باز مطرح می شود که بدون هر گونه فیدبک می باشد. این سیستم ها برای اینکه بتوانند یک ورودی مرجع را در خروجی پلنت ( سیستم ) دنبال کنند نیاز به فیدبک از خروجی سپس تشکیل سیگنال خطا و نهایتا سیستم کنترلی به منظور کاهش این خطا به حوالی صفر می باشند. پس لزوم بکارگیری سیستم کنترل اصولا در ردیابی (Tracking) مطرح می شود اما علاوه بر این سیستم های کنترل در مقوله تنظیم (regulation) نیز نقش دارند.
شکل 1 ) کاربر سیستم های کنترل در ردیابی – سیستم در حضور کنترلر
در شکل 1 ، یک سیستم فرضی در حضور کنترل کننده نمایش داده شده است. در این سیستم به طور مشخص هدف ردیابی می باشد چرا که سیگنال مرجع (ورودی رفرنس) در شکل قابل مشاهده است. بطور مشخص هدف در خروجی ردیابی این ورودی مرجع می باشد. از دیدگاه کنترل کلاسیک سیستم می تواند دارای ناپایداری داخلی باشد در این شرایط وضعیت قدری پیچیده تر خواهد بود و کنترل کننده مورد نظر در ترکیب با سیستم بایستی بتواند شرایط پایدار را برای مدل حلقه بسته فراهم کند.
در حالت کلی و در سیستم های واقعی شرایط به این سادگی نمی باشد و همواره در مسیر سیستم و کنترلر انواع اغتشاشات قابل تصور است. این اغتشاشات می توانند دی سی و یا فرکانس بالا باشند که بستگی به ماهیت سیستم دارد. به همین ترتیب بایستی در طراحی کنترل کننده نیز این موارد را در نظر داشت بعنوان مثال در طراحی کنترلر برای سیستم های با اغتشاشات متعدد روش های مقاوم مناسب تر می باشد حال آنکه برای طراحی کنترل کننده در سیستم های همراه با نامعینی طراحی کنترل کننده های تطبیقی مورد نیاز است.
طراحی سیستم کنترل ( کنترلر )
به طور کلی در طراحی سیستم های کنترل بایستی از ساده ترین روش شروع کرده و بسته به نیاز آن را ارتقا دهیم . می توان روند کلی در ترتیب طراحی را به صورت زیر ارائه کرد :
- کنترلر های خطی : در طراحی سیستم کنترل برای سیستم های خطی مورد استفاده قرار می گیرند، شاید بتوان گفت ساده ترین کنترل کننده ها در این مجموعه که امکان پیاده سازی عملی را نیز دارند کنترلرهای دسته تناسبی ، تناسبی انتگرالی ، تناسبی مشتقی و تناسبی انتگرالی مشتقی می باشند. چالش های عمده در طراحی این کنترل کننده ها بدست آوردن بهره های مناسب کنترلی می باشد که در این گام می توان از روش های کلاسیک همچون لیاپانوف و یا الگوریتم های هوشمند نظیر منطق فازی و شبکه های عصبی بهره برد.
- کنترلر های تطبیقی : سیستم های کنترل تطبیقی به طور کل در سیستم های خطی و غیرخطی کاربرد دارند. این کنترل کننده ها به منظور تطبیق پارامترهایی در سیستم در کنار کار کنترلی ( پایدارسازی ) مورد استفاده قرار می گیرند. کنترل تطبیقی براساس لیاپانوف و یا کنترل تطبیقی به روش گام به عقب از جمله این دسته کنترل کننده ها می باشند.
- کنترلرهای مقاوم : این دسته از کنترل کننده در سیستم های همراه با نامعینی و اغتشاشات متعدد به کار می روند ساده ترین و پرکاربردترین روش در طراحی کنترل کننده های مقاوم روش مدلغزشی می باشد. از دیگر طراحی های در این دسته می توان به روش H2 و یا H بی نهایت اشاره کرد.
اثبات پایداری
یکی از اساسی ترین مراحل در روند طراحی و شبیه سازی سیستم کنترل ، اثبات پایداری می باشد. در اثبات پایداری مهم ترین روش قاعده لیاپانوف می باشد که اغلب دانشجویان مهندسی کنترل با آن آشنایی دارند. در این روش پس از طراحی سیستم و در بعضی روش ها همچون گام به عقب در طی طراحی سیستم کنترل ، پایداری سیستم کنترل حلقه بسته (سیستم + کنترلر) در هر گام بررسی می شود. این روش در اثبات پایداری سیستم های خطی به سادگی مورد استفاده قرار می گیرد. حال آنکه در سیستم های غیرخطی یافتن یک تابع لیاپانوف مناسب چالش برانگیز است.
اثبات پایداری یک روش ریاضی مدون می باشد که با توجه به شرایطی که برای آن تعریف می شود در سیستم های هوشمند کاربرد ندارد . نمونه این سیستم های هوشمند می توان به کنترل کننده های فازی اشاره کرد.
گام های شبیه سازی سیستم کنترل در متلب
در ابتدا بایستی نوع سیستم و کنترل کننده را در نظر گرفت ، برای مدل های خطی کار ساده تر خواهد بود چرا که برای این سیستم ها مدل هایی در سیمولینک متلب تعبیه شده است که می تواند مورد استفاده قرار بگیرد مهمترین این مدل ها تابع تبدیل می باشد. همانطور که می دانیم تمامی سیستم های خطی را می توان توسط تابع تبدیل نمایش داد ، البته در این حالت ممکن است برخی حذف صفر و قطب انجام گیرد که در صورت حذف صفر و قطب ناپایدار این روش مجاز نخواهد بود و در سیستم اصلی ناپایداری داخلی خواهیم داشت. در کنار تابع تبدیل که برای سیستم معرفی شد ، در تولباکس های متلب مهمترین دسته کنترل کننده های خطی PID نیز جایگذاری شده است که می توان استفاده کرد.
اما چالشی ترین نوع شبیه سازی در متلب برای سیستم های کنترل غیرخطی مطرح می باشد. در پیاده سازی این سیستم ها بایستی از m فایل نویسی ( ام فایل نویسی) در متلب استفاده کرد.
شبیه سازی سیستم غیرخطی
ابتدا بایستی یک شماتیک از سیستم و کنترل کننده داشته باشیم این یعنی یک دید کلی نسبت به کلیت سیستم به این شکل در گام های بعدی می توان جزئیات بیشتری را نتیجه گیری کرده و آنها را اعمال کنیم. در نرم افزار متلب بلوکی تحت عنوان subsystem به این منظور قرار داده شده است. این بلوک به شما کمک می کند تا بخش های کلی سیستم نظیر مدل دینامیکی سیستم ، کنترلر ، بخش تطبیقی یا بخش فازی و از این قبیل را در subsystem ها منظور کنید. شکل 2 یک گراف کلی از این فرآیند را نمایش می دهد.
شکل 2 ) جایگذاری subsystem ها در محیط سیمولینک به منظور شبیه سازی مدل غیرخطی
این بلوک را می توان به راحتی در قسمت commonly used blocks یافت.
پس از این مرحله بایستی در داخل هر کدام از subsystem ها عملیات لازم جهت بدست آوردن خروجی های مورد نظر از ورودی های در دسترس انجام داد. به عنوان مثال در بخش Plant تمامی سیستم ها نیاز است کدهای معادلات حالت سیستم نوشته شود که به این منظور می توان از توابع تعریف شده در متلب استفاده کرد. در بخش کنترلر شرایط فرق خواهد کرد و نیاز است تا وضعیت را مورد سنجش قرار داد. در مورد کنترل کننده هایی که بوسیله یک u و از طریق سیگنال های متغیرهای خالت یا خطا بدست می آیند کار ساده است و می توان کد را بیان کرد. اما از طرفی در سیستم های با کنترل کننده ترکیبی نظیر تطبیقی یا فازی نیاز خواهد بود تا زیرسیستم هایی را در بخش کنترلر بیان نمود.
در نهایت اینکه انتگرال گیر پیوسته در زمان از بلوک های متداول به کار رفته در این مدل ها خواهد بود. و همچنین در بخش هایی ممکن است از بلوک های تاخبر ، اشباع یا تایمرها و غیره استفاده کرد. بلوک های source برای افزودن نویز به سیستم از دیگر بلوک های متداول هستند.
منبع : برق تِک