کنترل فیدبک حالت بهینه LQR

کنترل فیدبک حالت بهینه LQR

کنترل بهینه (Optimal Control) به عنوان یکی از روشهای مدرن کنترلی، جایگاه ویژه‌ای در بحث سیستمهای کنترل دارد. یکی از روشهای کنترلی بهینه رگولاتور درجه دوم خطی (Linear Quadratic Regulator) است که به اختصار LQR خوانده می‌شود. این روش برای سیستمهای خطی بهینه بوده و با توجه به روند سرراست طراحی و سادگی ساختار آن در کاربردهای فراوانی با موفقیت مورد استفاده قرار گرفته است. با اینکه روش LQR تنها برای سیستمهای خطی بهینه بوده و پایداری سیستم را تضمین می‌کند، با استفاده از خطی‌سازی ژاکوپی، می‌توان آنرا به سیستمهای غیرخطی نیز اعمال کرد؛ هرچند در اینصورت کنترل‌کننده دیگر بهینه نیست اما در بسیاری از کاربردها عملکرد خوبی از خود نشان می‌دهد. در این مجموعه آموزشی نحوه طراحی و پیاده‌سازی کنترل‌کننده LQR برای سیستمهای خطی و غیرخطی در محیط نرم‌افزار متلب آموزش داده می‌شود.

پیشنیاز: آشنایی اولیه با نرم افزار متلب – تئوری سیستمهای خطی


جلسه اول:

معرفی سیستمهای کنترل بهینه LQR و دستورات متلب

 

جلسه دوم:

طراحی و شبیه‌سازی کنترل‌کننده بهینه LQR برای سیستم گوی و میله

 

جلسه سوم:

طراحی کنترل‌کننده بهینه LQR برای سیستمهای غیرخطی و پیاده‌سازی بر روی سیستم شناور مغناطیسی

 

برای خرید کل جلسات با ۱۰ درصد تخفیف گزینه آخر را انتخاب کنید

برای خرید کلیک فرمایید

۲۲ نظر

  1. سلام وقت بخیر. ببخشید من میخوام برای پایان نامه م از روش کنترلی LQR استفاده کنم. برای همین میشه لطف کنید بفرمایید این فایلها برای شروع و آشنایی با این روش خوب هست یا خیر و کدوم فایل مناسبتر هست که خریداری کنم؟ با توجه به اینکه هنوز هیچ آشنایی با این روش ندارم.
    ممنون

    1. سلام.
      من سعی کردم طوری مطالب رو ارائه کنم که کاملا کاربردی باشه و با اینکه کدنویسی و مثال داره، همه چیز خلاصه توضیح داده بشه.
      به نظرم بهتره کل مجموعه رو تهیه کنید تا سوالی براتون باقی نمونه

    1. سلام
      من ندیدم با دستورات متلب بشه محدودیت هم در نظر گرفت.
      لطفا نظرات رو فارسی بنویسید تا بشه راحتتر خوند.
      متشکرم

  2. با سلام و احترام
    بنده سه جلسه را خریداری کرده ام ولی متاسفانه فیلم های آموزشی جلسات ۲ و۳ پس از دانلود در فایل زیپ مورد نظر موجود نمی باشد!!! لطفا پیگیری فرمائید که چطور می توانم به فیلم ها دسترسی پیدا کنم.
    با تشکر

  3. اقای دکتر ببخشید ی سوال دیگه داشتم خدمتتون اقای دکتر می خوام pid فازی طراحی کنم براسیستم شناور ابتدا فازی زدم رو سیستم خطی که بتونم رو سیستم غیرخطی پیاده سازی کنم که نشد حالا اومدم بزنم رو سیستم غیر خطی که ناپایدار میشه با ۲ کنترل کننده ولی رو سیستم خطی هر دوتاش به خوبی ج میدن dt=.001 گزاشتم حقیقتش موندم کسی نزدیکمن یست بتونه کمکم کنه اقای دکتر ممنون میشم راهنماییم کنید بتونم تشخیص بدم جوابم اشتباهه یا نیست

  4. با سلام خدمت شما جناب اقای دکتر ببخشید ی سوال دارم خدمتتون ببخشید طبق گفته هاتون سیستم خطی شده شناور مغناطیسی حول نقطه کار .۰۰۴ بعد از خطی سازی حول نقطه تابع تبدیل به دست اوردم بعد ضرایب کنترل pid از روی دستور pidtune به دست اوردم اقای دکتر ببخشید حالاکه می خوام روی سیستم غیر خطی کنترلpid بزنم طبق فرمایشاتتون تغییرمتغیردادم حالا که میرم برا سیستم غیرخطی اعمال کنم سیستم ناپایدار میشه ممنون میشم راهنماییم کنید نقطه شروع هم .۰۰۶گرفتم ولی همین کنترلر برروی سیستم خطی شده به راحتی ج میده ممنون میشم راهنماییم کنید

    1. @محمد عبداله زاده,
      سلام
      دلایل زیادی میتونه داشته باشه
      مثلا اگر داخل محیط m-file کد نویسی کردید، شاید dt به اندازه کافی کوچیک نیست. یا شاید داخل کدها اشتباهی وجود داره.
      تازه اگه طراحی هم درست باشه، تضمینی وجود نداره که کنترل کننده طراحی شده برای مدل خطی شده برای سیستم غیرخطی اصلی هم جوابگو باشه هرچند اگه خوب طراحی شده باشه و درست پیاده سازی بشه، معمولا جواب میده

    1. @فرزاد,
      تو روش استاتیک یک ترکیب خطی از خروجیها فیدبک میشه ولی در حالت دینامیک از رویتگر (یا تخمینگر) استفاده میشه تا از خروجی تمام حالتها تخمین زده بشه و در فیدبک استفاده بشه. حالا تو LQG رویتگر مورد استفاده فیلتر کالمن هستش که بهینه هم هست

  5. اوکی مرسی ممنون، فقط یه سوال فصل هشت کتاب کنترل بهینه لوئیس(optimal control by lewis) رو استادم به بنده گفته بخونم و واسه سیستم خودم استفاده کنم سوال این جاست که این فصل به lQR پرداخته یا lQG اگه جواب بدین ممنون میشم من کدومو باید پیاده سازی کنم

    1. @فرزاد,
      فصل هشتم کتاب به فیدبک خروجی استاتیک اختصاص داره که جزو هیچکدوم از روشهای LQR و LQG نمیشه. در واقع یک حالت خاص از فیدبک خروجی رو گفته که عملکردش از LQG بهتر نیست اما ساختارش ساده تره. اگر حتما باید این روش استفاده بشه که باید طبق کتاب عمل کنید اما اگر بخواهید همون مساله رو با فیدبک خروجی دینامیک حل کنید به فیلمهای LQG مراجعه کنید

  6. سلام، من میخواستم با LQR کنترل کننده بهینه طراحی کنم واسه سیستمم به همین خاطر فایل های شما رو خریداری کردم ، ولی وقتی فایلاتونو دیدم با سیمولینک انجام دادین و از عملگر LQR خوده متلب استفاده کردیم ولی من میخوام کدنویسی کنم و نرم افزارمم متمتیکا هستش، حالا دیدم فیلماتون نه کدنویسی کردین که بدنم چجوری باید تویه نرم افزاری دیگه بشه پیاده سازی کردین و توضیحی هم راجب کدنویسیش ندادین ، میتونید کمکم کنید کارم راه بیافته؟

    1. @فرزاد,
      سلام
      اولا باید بگم که داخل سایت هم نوشته بودم که نرم افزار مورد استفاده متلب بوده و از دستورات متلب برای طراحی استفاده میشه. من در مورد طراحی LQR در متمتیکا اطلاعی ندارم. حتی نمیدونم معادله ریکاتی در متمتیکا وجود داره یا نه.
      در مورد شبیه‌سازی هم که داخل سیمولینک انجام شده باید بگم که این مشکل همیشگی ما بوده. وقتی کدنویسی میشه بعضی ها انتقاد میکنند که چرا شبیه سازی در سیمولینک انجام نشده و وقتی در سیمولینک انجام میشه برای کسایی مثل شما مشکل پیش میاد. حتی اگر من هر دو تارو انجام بدم، باز ممکنه بعضیها بگن که چرا بیخود تعداد جلسات رو بالا می برید و قیمت محصولات رو زیاد می کنید! واقعا نمیدونم باید چطور همه رو راضی کنم
      در هر صورت ازتون خواهش میکنم اگر امکان داره داخل متلب کار کنید تا بتونید از این فیلمها (و تمام فیلمهای دیگه سایت) استفاده کنید. شرمنده که نمیتونم کمکی بکنم

    1. @امیر,
      سلام
      اولا که من یادم نمیاد تا حالا قولی داده باشم و بهش عمل نکرده باشم و امیدوارم همین روند رو ادامه بدم
      ثانیا آموزشهای سخت افزاری مثل ARM در تخصص من نیست. در این مورد به جناب مهندس حامد حقیقی که آموزشهای XPC target رو تهیه می‌کنند، مراجعه کنید

یک پاسخ بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *