آموزش مد لغزشی طبق کتاب اسلوتین
در این پست فیلم آموزش مد لغزشی طبق کتاب اسلوتین قرار داده میشود. کتاب اسلوتین رو اگه خونده باشید متوجه خواهید شد که بسیاری از مطالب این فصل گنگ هستند و نیاز به توضیحات بیشتر دارن. ضمن اینکه به نظر من بعضی از مطالب این کتاب بعد از اینکه فصل به پایان رسید باید باز هم در موردشون بحث بشه اما توی کتاب این امکان وجود نداره . از طرفی مثال هایی در این کتاب وجود داره که اگه با روند شبیه سازی اون ها هم آشنا بشیم در یادگیری این روش جذاب بسیار موثره. من مد لغزشی رو بارها و بارها بر روی سیستم های مختلف شبیه سازی کردم و مقالات زیادی در این زمینه کار کردم.
چیزی که من تضمین میدم اینه که بعد از این دوره آموزشی، به نتایج زیر خواهید رسید:
مد لغزشی رو به طور کامل و فراتر از مطالب کتاب درک خواهید کرد
با نحوه شبیه سازی مثال ها و بحث روی آنها کاملا آشنا خواهید شد
نحوه تلفیق این روش با روش هایی مثل فازی، ژنتیک و … رو خواهید آموخت (مد لغزشی فازی در همین سایت قرار داده شده است برای دانلود این فیلم آموزشی کلیک بفرمایید)
پیاده سازی این روش بر روی سیستم های غیرخطی پیچیده و شبیه سازی آنها رو یاد خواهید گرفت.
میتونید برای سیستم خودتون این شبیه سازی ها رو انجام بدید
مقالات مختلف رو که در زمینه مد لغزشی هستن میتونید براحتی درک کنید.
تفاوت این آموزش با آموزش دیگری تحت عنوان “آموزش مد لغزشی از طراحی تا شبیه سازی“ که در سایت قرار داده شده در این هست که آموزشی که در این پست قرار داره برای افرادیه که میخوان با عمق بیشتری مد لغزشی رو یاد بگیرن و اون آموزش برای کسیه که اطلاعات بسیار ناچیزی از مد لغزشی داره و فقط میخواد روی یه سیستم ساده یک مد لغزشی ساده رو پیاده کنه. اما در اینجا هم با مباحث بیشتری آشنا خواهید شد و هم مطالب با عمق بیشتری ذکر خواهند شد. همچنین یک “جزوه کاربردی مد لغزشی“ نیز در این سایت قرار داده شده است که همونطور که از اسمش معلومه فقط حالت کاربردی داره.
جلسه اول:
مقدمات و تبدیل مسئله مرتبه n به مسئله مرتبه یک
در این جلسه در مورد صورت مسئله مد لغزشی، انواع نامعینی، سطوح لغزشی و از همه مهمتر تبدیل مسئله مرتبه ان به مسئله مرتبه یک در مد لغزشی پرداخته شده است. در ادامه کلا در ارتباط با اینکه چطور میتوان یک مسئله ردیابی مرتبه ان رو به یک مسئله پایدارسازی از مرتبه یک (سطح سوئیچینگ) تبدیل کرد بحث کرد.
مدت زمان آموزش: 67 دقیقه
محتویات دانلود : فیلم، پاورپوینت درس
جلسه دوم:
شرط لغزشی ، فیلیپف دینامیک معادل
مبحث ناتمام جلسه قبل در این جلسه به اتمام میرسد. سپس در مورد شرط لغزش به طول مفصل بحث میشود همچنین در ادامه پدیده چترینگ توضیح داده شده است و در نهایت به توضیح فیلیپف و دینامیک معادل پرداخته شده است. دقت کنید این مطلب در کتاب اصلا بخوبی تفسیر داده نشده است.
مدت زمان آموزش: 55 دقیقه
محتویات دانلود : فیلم، پاورپوینت درس
جلسه سوم:
نحوه طراحی و شبیه سازی مد لغزشی به صورت گام به گام
در این جلسه ابتدا یک الگوریتم برای طراحی مد لغزشی ارائه شده است. این الگوریتم به صورت واضح بیان شده است و به صورت مفصل در مورد آن بحث شده است. مباحثی از قبیل نحوه انتخاب سطح لغزش، چرا سطح لغزش به فرمی که در کتاب است در نظر گرفته می شود؟ چرا در همه مقالات به این فرم نیست و ….. و در ادامه با یک مثال تک ورودی و تک خروجی ابتدا طراحی به طور کامل و براساس الگوریتمی که در ابتدای جلسه گفته شد انجام میشود و سپس این مثال در نرم افزار MATLAB شبیه سازی شده است. و در پایان، به بحث در مورد پارامتر های طراحی در این نرم افزار پرداخته شده است.
مدت زمان آموزش: 55 دقیقه
محتویات دانلود : فیلم، پاورپوینت درس و ام فایل مربوط به درس
جلسه چهارم:
طراحی و شبه سازی مد لغزشی برای سیستم های مرتبه دو و سه
در این جلسه طراحی کنترل کننده مد لغزشی و شبیه سازی آن در نرم افزار MATLAB برای دو سیستم مرتبه دو و سه انجام شده است. یکی از بحث های مهم طراحی مد لغزشی یعنی تبدیل هر سیستم غیرخطی به سیستم مرتبه دوم استاندارد به طور مفصل بحث شده است. همچنین مباحث تکمیلی در مورد تعریف سطح لغزش در مثال مربوط به سیستم مرتبه سه ذکر شذه است.
مدت زمان آموزش: 66 دقیقه
محتویات دانلود : فیلم، پاورپوینت درس و 2 ام فایل مربوط به درس
جلسه پنجم:
کنترل انتگرالی ، حد بهره
در ابتدای جلسه، کنترل کننده مد لغزشی برای سیستم های مرتبه n طراحی شده است تا اگر سیستم شما مثلا دارای درجه نسبی ده بود دیگه از اول تا آخر طراحی رو انجام ندید و یا اینکه اگه میخواید طراحی رو انجام بدید بدونید میخواید به چه چیزی برسید. در ادامه به بحث در مورد کنترل انتگرالی و حد بهره پرداخته شده است. توی کتاب دلیل استفاده از کنترل انتگرالی و اینکه چرا باید سطح لغزش در ابتدا صفر باشد چیزی نگفته. از طرفی مثال هم حل نشده است. ما در این آموزش هم کاربرد کنترل انتگرالی رو گفتیم و هم یک مثال رو در نرم افزار متلب شبیه سازی کردیم. پس از اون، به نقطه اوج طراحی مد لغزشی یعنی برای سیستم هایی که به فرم x^(n)=f(x)+g(x)u هستند پرداخته شده است. نحوه اثبات در کتاب خیلی گنگه. این اثبات با تمام جزئیات از ابتدا تا انتها ذکر شده است.
مدت زمان آموزش: 66 دقیقه
محتویات دانلود : فیلم، پاورپوینت درس و ام فایل مربوط به درس
جلسه ششم:
چترینگ و راههای حذف آن (1)
در ابتدا به طراحی یک مثال برای سیستمی که بهره داشته باشه پرداخته شده است. سپس وارد موضوع چترینگ شدیم. کاربردهای چترینگ، نحوه حذف چترینگ در حالت کلی، دسته بندی که برای حذف چترینگ برای حالت های مختلف میتوان انجام داد و شبیه سازی یک مثال برای حالتی که لایه مرزی ثابت باشد موضوعاتیست که در این جلسه کار شده است. برای حذف چترینگ دو دسته بندی کلی انجام شده است یکی حذف چترینگ برای سیستم هایی که باید در آنها لایه مرزی ثابت باشد و دیگری حذف چترینگ برای سیستم هایی که در آنها لایه مرزی متغیر بهتر از لایه مرزی ثابت جواب می دهد. در این جلسه به دسته بندی اول پرداخته شده است.ضمنا مثالی که در این جلسه شبیه سازی شده است مثال7-2 کتاب است.
مدت زمان آموزش: 53 دقیقه
محتویات دانلود : فیلم، پاورپوینت درس و ام فایل مربوط به درس
جلسه هفتم:
چترینگ و راههای حذف آن (2)
در این جلسه به راه حل جذف چترینگ با استفاده از لایه مرزی متغیر پرداخته شده است. این روش برای سیستم هایی که ضریب ورودی کنترلی در آنها یک هست و نیست بررسی شده است و با ذکر مثال و شبیه سازی آن در نرم افزار متلب به صورت مفصل بحث شده است. حذف چترینگ با استفاده از لایه مرزی متغیر با زمان برای سیستم های خاصی هست. پیشنهاد می شود در صورتیکه فقط می خواید این جلسه رو خریداری بفرمایید جلسه قبل رو هم تهیه کنید چون ممکنه برای سیستم شما استفاده از این روش موضوعیت نداشته باشد.
مدت زمان آموزش: 55 دقیقه
محتویات دانلود : فیلم، پاورپوینت درس و ام فایل مربوط به درس
جلسه هشتم:
طراحی مد لغزشی برای یک سیستم چند ورودی – چند خروجی
یک مثال جامع که تمامی مباحث قبل رو بتونه پوشش بده رو طراحی کردم. مد لغزشی با در نظر گرفتن تمامی جوانب برای این سیستم طراحی شده است. در این مثال، یک سیستم دو ورودی و دو خروجی که چهار متغیر حالت دارد در نظر گرفته شده است. محدودیت های لامبدا نیز در صورت سوال مطرح شده است و این موضوع در ابتدای جلسه بحث شده است که چطور می توان محدودیت های مختلف را بر روی پارامتر لامبدا اعمال کرد.توجه بفرمایید این جلسه آخرین جلسه از مجموعه آموزش های مد لغزشی بر اساس کتاب اسلوتین بود. در ادامه سعی دارم نحوه تلفیق این روش با روش های دیگر و انواع دیگر مد لغزشی رو برای شما آماده کنم.
مدت زمان آموزش: 54 دقیقه
محتویات دانلود : فیلم، پاورپوینت درس
جلسه نهم:
در اين جلسه، يک واسط گرافيکي در متلب (gui) توليد شده که با استفاده از آن به طور اتوماتیک مي توانید يک کنترل کننده مد لغزشی (Sliding Mode) براي يک سيستم طراحي کنید. در واقع چکیده مباحث تدریس شده به صورت یک پنل تصویری در این جلسه آمده است. مخصوصاً برای دوستانی که فقط خروجی کار برای آنها مهم است، این واسط گرافيکي می تواند بسیار مفید باشد. این جلسه توسط آقای نورمحمدی فارغ التحصیل ارشد شریف تدریس شده است
برای خرید جلسه 9 به صورت جداگانه می توانید با کلیک بر روی دکمه خرید زیر این جلسه را نیز به سبد خریدتان اضافه کنید
جلسه 9 : طراحی مد لغزشی با استفاده از gui
|
۸۰,۰۰۰ تومان Original price was: ۸۰,۰۰۰ تومان.۵۸,۸۰۰ تومانCurrent price is: ۵۸,۸۰۰ تومان.Add to cart
|
مطالعه بیشتر
sanam
سلام. من در سیستمی که دارم میخواهم معادلات سیستم رو دی کوپل کنم و جداگانه هر کدام رو بررسی کنم اما در معادله xdot2 هیچ گونه u وجود ندارد و من باید 3 بار مشتق بگیرم تا u بوجود بیاد و در حالت بعدی هم 2 بار. اما در یک مقاله ای دیدم که سطح لغزش را s1=c1e1+c2e2 و s2=c3e3+c4e4 در نظر گرفته! مگر نباید در حالت اول s از درجه 3 و در حالت دوم از درجه 2محاسبه شود؟
معادلات سیستم :
xdot1=x2
xdot2=(x1x4^2-gsin(x3))1/k1
xdot3=x4
(xdot4=[-cos(x3)(k2x4cos(lx3/d)-0.5lmbg-mBgx1)+k3cos(x3)cos(lx3/d)u-2mBx1x2x4]1/(JB+Jb+mBx1^2
که مقادیر k مشخص هستند.
علاوه بر این beta1=beta3=0 و beta2=1 و beta4=ضریب u در معادله چهارم فرض شده. دلیل اینکه beta2 برابر 1 فرض میشود چیست؟ ما در معادله دوم u نداریم که ضریبش 1 باشد!
و سوال دیگر اینست که نامعینی سیستم که در آموزش fhat گفته شد، چگونه باید از این معادلات بدست آید ؟ در سوالاتی که در آموزش بررسی شد همگی حد نامعینی مشخص بودند ولی در اینجا چگونه مشخص می شود؟ در یک مقاله دیدم که از ماتریسی مانند ژاکوبین بدست آمد:
[rond(f1)/rond(x1) و … بقیه اجزا ماتریس بدین ترتیب…
این سوالات ذهنم را درگیر کرده .خیلی ممنونم پیشاپیش از پاسخ شما.
مدیر سایتادمین سایت ( مالک تایید شده )
سلام
در مورد این قسمت از سوالتون “مگر نباید در حالت اول s از درجه ۳ و در حالت دوم از درجه ۲محاسبه شود؟” . من البته مسئول مقالات دیگران نیستم و نمیدونم در اون مقاله چیکار کرده و فقط پاسخگوی فیلم های آموزشی خودم هستم اما پاسخ سوال شما اینه که بله باید از درجه سه باشه و خب شما میتونید مقاله رو ببینید وقتی که با دو بار نتونسته همچنان به یو برسه پس چطوری ورودی کنترلی رو محاسبه کرده؟! ضمن اینکه سطح لغزشی که من در آموزش ها عرض کردم یک سطح روتین هست که 99 درصد مقالات به همین صورت میگیرند اما ممکنه برای یک سیستم خاص سطح لغزش به گونه های دیگری هم گرفته شود که احتمالا به لحاظ فیزیکی و براساس تجربه به اون صورت در نظر میگیرند.
در مورد این قسمت از سوالتون “دلیل اینکه beta2 برابر ۱ فرض میشود چیست؟ ” من هیچ بتایی در معادلات نمیبینم.
“و سوال دیگر اینست که نامعینی سیستم که در آموزش fhat گفته شد، چگونه باید از این معادلات بدست آید ؟” من نمیدونم در معادلات شما چه پارامترهایی متغیر هستند ولی اینکه fh چطوری بدست میاد شما باید یک مسئله بهینه رو به صورت تحلیلی حل کنید. به این ترتیب که با خودتون بگید که مقادیر نامعینی رو چه مقادیری بگیرم که کران بالای نامعینی بدست بیاد. البته این نکته رو هم عرض کنم که تخمین نامعینی معمولا با قرار دادن مقادیر متوسط پارامترهای نامعین بدست میاد.
سپاس
محمد
سلام اقای دکتر ببخشید در جلسه 2 انتهای جلسه فرمودین با تنظیم ضرایبی میتونیم زمان رسیدن سطح لغزش رو تنظیم کنیم ممنون میشم راهنمایی کنید چه ضرایبی می تونیم این کار رو انجام بدیم با تشکر
مدیر سایتادمین سایت ( مالک تایید شده )
سلام. منظورم همون ضریب تابع علامت هست. زمان رسیدن به سطح لغزش رو مجددا توی فیلم ها ببینید (tr) . این زمان به چه پارامترهایی وابستس؟
سپاس
محمد
نه اقای دکتر در انتهای جلسه 2 شما فرمودین روش هایی در مقالاتی ارائه شده که مدت زمان رسیدن سطح لغزش رو درست تعیین می کنه و درست در همون زمان سطح لغزش به صفر میرسه و فرمودین مقالات اون مطالعه کردین ممنون میشم اگ بتونید یا اون مقالات به ما معرفی کنید و یا اینکه اگه خودتونیادتون هست لطف کنید پارامتر های اون معرفی کنید با تشکر
مدیر سایتادمین سایت ( مالک تایید شده )
سلام
بله مقاله ای بود که قبلا خودم شبیه سازیش کردم ولی متاسفانه الان حضور ذهن ندارم
محمد
اقای دکتر بله شما فرمودین توی مقالاتی که زحمت خوندت کشیدن روش هایی با تنظیم پارامتر ارائه میشه و بر طبق اون میشه زمان دقیق tr مشخص بشه نه زمان تقریبی ممنون میشم اون روش ها به منظور تنظیم پارامتر رو معرفی کنید و یا اینکه رفرنس مقالات رو ارائه کنید با تشکر
محمد
سلام اقای دکتر ببخشید در جلسه 6 فرمودین به منظور حذف چترینگ باید به سیستم خطا تزریق کنیم که اگر لایه مرزی به صورت ثابت در نظر بگیریم در این حالت خطا دارای رابطه ای می باشد ببخشید رابطه خطا رو از کجا به دست آوردین تو کتاب اسلوتین هست
مدیر سایتادمین سایت ( مالک تایید شده )
سلام . بله اگه لایه مرزی بدیم چترینگ حذف میشه اما خطا به سیستممون تحمیل میشه. رابطه خطا و لایه مرزی رو در جلسات ابتدایی عرض کردم. مجددا ملاحظه بفرمایید
مهدی
سلام. یه سیستمی دارم که دو ورودی و چهار خروجی داره که باید با کنترل مدلغزشی حالت نهایی سریع کنترل بشه، ولی فقط یه سیگنال کنترل باید به سیستم اعمال بشه یعنی همون یه سیگنال کنترل باید دو ورودی را طوری تنظیم کنه که چهار خروجی هر کدوم به مقدار مطلوب برسند. آیا چنین چیزی با کنترل مدلغزشی امکانپذیر هست؟
مدیر سایتادمین سایت ( مالک تایید شده )
سلام این غیرممکنه مگر اینکه سیستمون اندراکچویتور باشه
sara
با عرض سلام و تشکر از آموزش های بسیار خوبتون ببخشید یک سوال داشتم در قسمت 8 نوشتید یک سیستم مایمو طراحی کردین ولی در محتویات کد متلبشو ننوشتید میخاستم بدونم داخل این اموزش این مثال در متلب شبیه سازی شده است و کد هاش موجود هست؟
خیلی ممنونم
مدیر سایتادمین سایت ( مالک تایید شده )
سلام. نظر لطفتون هست. اینکه چطور برنامه نوشته بشه رو توضیح دادم ولی به صورت کامل برنامه رو ننوشتم. اگر جلسات قبل رو با دقت ملاحظه کرده باشید با توجه به توضیحات شبیه سازی توی این جلسه، مشکلی نخواهید داشت.
سپاسگزارم
جعفر
سلام من سیستم زیر را دارم
چجوری در سیمولینک پیاده سازی کنم.امکانش هست سیمولینکشو برام بذارین
x¨ = f (x,ẋ) + g (x,ẋ)u,
(Ṡ = −ksign(S,
((u =inv(b) (x¨d−λx −f−ksign(S
s ̇=〖k|s|〗^α/〖β+(1-β)e〗^(〖-γ|s|〗^μ ) sign(s)
مدیر سایتادمین سایت ( مالک تایید شده )
سلام
خیر این امکان وجود ندارد.
مهسا
بسیار جامع و کاربردی بود ای کاش جلسه ای هم برای طراحی کنترل کننده مد لغزشی در سیمولینک هم به این پکیج اضافه میکردید.
محمد
با سلام و خسته نباشيد
اگه يك سيستم مرتبه دو داشته باشيم ولي مرتبه نسبي سيستم براي تعيين s يك باشه چطور بايد اسلايدينگ مد رو براش پياده سازي كنيم در اين زمينه مثالي داريد؟ممنون ميشم راهنمايي كنيد
مدیر سایتادمین سایت ( مالک تایید شده )
@محمد,
سلام فیلم های آموزشی رو ببینید
محمد
@مدیر سایت, من فيلم هاي اموزشي رو ديدم منظورم اينه كه وقتي دوتا معادله حالت داريم و uدر يكي از معادلات قرار داره كه همون متغير خروجي هست معادله دوم چطور بررسي ميشه يعني وقتي معادلات حالت به فرم ديفرانسيلي تبديل نشه بايد چيكار كنيم؟
مدیر سایتادمین سایت ( مالک تایید شده )
سلام
متوجه سوالتون نشدم. لطفا مثال بزنید
مجتبی
با سلام و احترام
طبق جلسات 6 و 7 اموزش مد لغزشی طبق کتاب اسلوتین، برای حذف چترینگ از لایه مرزی ثابت و متغیر استفاده شده است. مشکلی که وجود داره و در شبیه سازی اموزش هم ارائه شده است اینه که در شرایط یکسان و برای یک مسئله که قابلیت پیاده سازی با لایه مرزی متغیر را دارد، میزان خطا وقتی از لایه مرزی ثابت استفاده میکنیم کمتر از زمانی است که از لایه مرزی متغیر با زمان استفاده میکنیم.(به مثالهای جلسه 6 و 7 مراجعه شود).
خب اگه با استفاده از لایه مرزی ثابت به خطای کمتر دست پیدا کنیم ، چرا باید از لایه مرزی متغیر استفاده کنیم ؟
منظورم اینه که استفاده از لایه مرزی متغیر با زمان موضوعیت خودش رو از دست میده ، وقتی که با لایه مرزی ثابت به جواب های بهتری می رسیم.
برای لایه مرزی ثابت :
dt=0.001
fi=0.001
e=2*10^-4
برای لایه مرزی متغیر با زمان واسه همون مثال:
dt=.001
lambda=20
e=2.5*10^-3
lambda رو هم نمیتونیم از 20 بالاتر ببریم چون S از لایه مرزی خارج می شود. و اگر خارج شدن S از لایه مرزی را هم نادیده بگیریم باز جواب بهتری نسبت به لایه مرزی ثابت نمیگیریم.
مدیر سایتادمین سایت ( مالک تایید شده )
سلام
فیلم رو مجدد نگاه کردم. در شبیه سازی ها این چیزی که شما گفتین وجود نداره. یعنی برای لایه مرزی ثابت خطا خیلی بیشتره. این مثال دقیقا مثال کتاب هست. و نتایج هم مثل نتایج کتاب هست. منتها خب من از روش بسط اویلر استفاده کردم ممکنه یکم نتایج ضعیفتر باشن. ولی چیزی که هست اینه که همونطوری هم که توی کتاب اشاره شده در حالت لایه مرزی متغیر خطا چهار برابر کمتر شده. در شکلهایی که من هم شبیه سازی کردم تقریبا این مطلب مشهود هست. منتها من فیلم رو که نگاه کردم یک جمله رو اشتباه گفتم که این اشتباه لپی بود. اما نتایج شبیه سازی نشون میده که پاسخ ها صحیح هستن.
در مورد اعدادی که نوشتید من لایه مرزی رو برای حالت ثابت یک دهم در نظر گرفتم اما شما یک هزارم نوشتید. من با این اعدادی که گفتین شبیه سازی نکردم.
محمد عبداله زاده
پس بتا باید مقدار ثابتی باشه در توضیح جمله زیر
مدیر سایتادمین سایت ( مالک تایید شده )
بتا الزاما ثابت نیست. ممکنه تابعی از ایکس باشه
محمد عبداله زاده
سلام اقای دکتر ببخشید تو جلسه 7 و 8 در توضیح حذف چترینگ حالت بتا مخالف 1 فرمودین که باید 2 شرط بررسی کنید که در شرط ها فرمودین بتادیزایر که برابراست با همان بتا با در نظر گرفتن xd(ایکس دیزایر) حالا سوال من این هست که مگه نه بتا برابر است با رادیکال(b+/-b) که مگر+ bو-b مقادیر ثابتی نمی باشند که حد بالا و پایین نامعینی را مشخص می کنند
اقای دکتر بی زحمت در این زمین بنده رو راخنمایی بفرمایید
با تشکر
مدیر سایتادمین سایت ( مالک تایید شده )
سلام
همونطوری که f+ و f- اعداد ثابتی نیستند پس مقادیر b+ و b- هم میتونن مقادیر غیرثابت باشند.