0% found this document useful (0 votes)
24 views69 pages

Control Final

final exam

Uploaded by

mohammad kaveh
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
24 views69 pages

Control Final

final exam

Uploaded by

mohammad kaveh
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

‫دانشگاه تهران‬

‫دانشكده مهندسی مکانیک‬

‫امتحان خانه بر پایان ترم‬

‫نام درس‪ :‬کنترل پیشرفته‬

‫عنوان امتحان‪ :‬سیستم آونگ معکوس دوبل دوار‬

‫استاد درس‪ :‬دکتر فرزاد آیت اله شیرازی‬

‫دانشجو‪ :‬محمد کاوه بخشایش‬

‫خرداد ‪1403‬‬
‫چكيده‬

‫چكيده‬
‫این پروژه به طراحی و کنترل یک سیستم پاندول دوت ایی معک وس چرخش ی‬
‫می‌پردازد‪ .‬ابتدا معادالت غیرخطی سیستم با روش اویلر‪-‬الگران ژ اس تخراج و‬
‫سپس سیستم مدار ب از غ یرخطی در س یمولینک شبیه‌س ازی ش د‪ .‬مع ادالت‬
‫سیستم ح ول نقط ه تع ادل ص فر خطی‌س ازی و ماتریس‌ه ای فض ای ح الت‬
‫خطی به دست آمدند‪.‬‬
‫پای داری سیس تم خطی م دار ب از از جنبه‌ه ای ‪ ،BIBO‬لیاپ انوف و حاش یه‌ای‬
‫بررسی شد‪ .‬کنترل‌پذیری و رویت‌پذیری سیستم ارزیابی و بهره فیدبک ح الت‬
‫جهت پایداری محاسبه گردی د‪ .‬فی دبک ح الت ب ر سیس تم غ یرخطی اعم ال و‬
‫محدوده پایداری بررسی شد‪.‬‬
‫یک کنترل‌کننده ردیاب ح الت ب ه روش انتگرال‌گ یر ط راحی و عملک رد آن در‬
‫برابر تغییر پارامترها و اغتشاش ات ارزی ابی ش د‪ .‬رویتگره ای مرتب ه کام ل و‬
‫کاهش مرتبه‌یافته طراحی و شبیه‌سازی ش دند‪ .‬نت ایج شبیه‌س ازی‌ها عملک رد‬
‫مطلوب کنترل‌کننده‌ها در پایداری و ردیابی سیگنال‌های مرجع را نشان دادند‪.‬‬

‫واژه‌های کلیدی‪:‬‬
‫پاندول دوتایی معکوس چرخشی‪ ،‬کن ترلر‪ ،‬رویتگ ر‪،‬ش بیه س ازی س یمولینک ‪،‬‬
‫فیدبک حالت‪ ،‬فیدبک حالت‬

‫ا‬
‫فهرست مطالب‬

‫صف‬
‫حه‬ ‫فهرست مطالب‬

‫چكيده‪‌.........................................................................‬أ‬
‫فصل اول مقدمه ‪1..........................................................‬‬
‫‪ -1-1‬پاندول معکوس ‪2.........................................................................‬‬
‫‪ -2-1‬پاندول دوتایی معکوس دوار ‪3........................................................‬‬
‫‪ -3-1‬ضرورت و اهمیت موضوع‪4.....................................................................‬‬
‫‪ -4-1‬استخراج معادالت دینامیکی ‪5..........................................................‬‬
‫‪ -5-1‬شبیه‌سازی مدار باز ‪5....................................................................‬‬
‫‪ -6-1‬طراحی کنترل‌کننده‌ها ‪5.................................................................‬‬
‫‪ -7-1‬طراحی کنترل‌کننده ردیاب‪5....................................................................‬‬
‫‪ -8-1‬طراحی رویتگرها ‪6.......................................................................‬‬
‫‪ -9-1‬نتایج و کاربردها ‪6.........................................................................‬‬
‫فصل دوم خواسته های پروژه و نتایج‪7.................................‬‬
‫‪ 1-2‬معادالت دینامیکی غیر خطی ‪9..........................................................‬‬
‫‪ -2-2‬شبیه سازی سیستم مدار باز غیرخطی ‪12..........................................‬‬
‫‪ -3-2‬خطی سازی معادالت دینامیکی ‪15...................................................‬‬
‫‪ -4-2‬پایداری ‪17.................................................................................‬‬
‫‪ -5-2‬کنترل پذیری‪ ،‬مشاهده پذیری و طراحی کنترلر ب ر اس اس جانش انی قطب‬
‫‪17‬‬ ‫ها‬
‫‪ -6-2‬کنترلر جانشین قطب ها روی سیستم غیر خطی‪20..............................‬‬
‫‪ -7-2‬طراحی سیستم کنترل سروو – انتگرال گیر‪22...................................‬‬
‫‪ -8-2‬تحلیل سیستم با معیار های متفاوت ‪25..............................................‬‬
‫‪ -9-2‬رویتگر مرتبه کامل ‪31...................................................................‬‬
‫‪-10-2‬رویت گر کاهش مرتبه ‪35.............................................................‬‬
‫‪ -11-2‬فیدبک حالت و رویت گر کاهش مرتبه یافته‪39..................................‬‬
‫فصل سوم جمع‌بندی و نتیجه‌گیری‪43...................................‬‬
‫جمع‌بندی ‪44...............................................................................‬‬ ‫‪-1-3‬‬
‫مفاهیم اصلی ‪44.........................................................................‬‬ ‫‪-2-3‬‬
‫چالش‌های موجود ‪44....................................................................‬‬ ‫‪-3-3‬‬
‫دستاوردهای پژوهشی ‪45...............................................................‬‬ ‫‪-4-3‬‬
‫کاربردهای عملی ‪45.....................................................................‬‬ ‫‪-5-3‬‬
‫فرصت‌های پژوهشی آینده ‪46.........................................................‬‬ ‫‪-6-3‬‬
‫نتیجه‌گیری نهایی ‪46......................................................................‬‬ ‫‪-7-3‬‬
‫منابع و مراجع‪47............................................................‬‬
‫‪48.....................................................................Abstract‬‬
‫پیوست‪50.....................................................................‬‬

‫ب‬
‫فهرست مطالب‬

‫ج‬
‫فهرست اشكال‬

‫صف‬
‫حه‬ ‫فهرست اشكال‬
‫شکل ‪ :1-1‬نمایی از پاندول معکوس ‪2.........................................................‬‬
‫شکل‪ :2-1‬نمایی از یک پاندول معکوس ‪4.....................................................‬‬
‫شکل‪:1-2‬دیاگرام آزاد یک پاندول معکوس ‪8..................................................‬‬
‫شکل‪ :2-2‬سیمولینک شبیه سازی سیستم غیر خطی‪13...................................‬‬
‫شکل ‪ :3-2‬پاسخ پله سیستم در زاویه بازو دوار ‪14.........................................‬‬
‫شکل ‪ :4-2‬پاسخ پله سیستم در زاویه لینک اول‪14..............................‬‬
‫شکل ‪ :5-2‬پاسخ پله سیستم در زاویه لینک دوم ‪15..............................‬‬
‫شکل ‪ :6-2‬سیمولینک شبیه سازی سیستم کنترلی با تئ‪RR‬وری جانش‪RR‬انی‬
‫قطب ها با پلنت خطی شده ‪19...........................................................‬‬
‫شکل ‪ :7-2‬نمودار رگوالس‪RR‬یون درج‪RR‬ات آزادی سیس‪RR‬تم خطی ش‪RR‬ده ب‪RR‬ر‬
‫حسب رادیان با استفاده از قطب های سریع ‪20..................................‬‬
‫شکل ‪ :8-2‬نمودار رگوالس‪RR‬یون درج‪RR‬ات آزادی سیس‪RR‬تم خطی ش‪RR‬ده ب‪RR‬ر‬
‫حسب رادیان با استفاده از قطب های کند‪20......................................‬‬
‫شکل ‪ :9-2‬سیمولینک شبیه سازی سیستم کنترلی با تئ‪RR‬وری جانش‪RR‬انی‬
‫قطب ها با پلنت غیر خطی ‪21............................................................‬‬
‫شکل ‪ :10-2‬نمودار رگوالسیون درج‪RR‬ات آزادی سیس‪RR‬تم غ‪RR‬یر خطی ب‪RR‬ر‬
‫حسب رادیان با استفاده از قطب های کند‪21......................................‬‬
‫شکل ‪ :11-2‬سیگنال ورودی مسیر مطلوب زاویه ب‪RR‬ازو دوار ب‪RR‬ر حس‪RR‬ب‬
‫درجه در مدت ‪ 10‬ثانیه ‪22...................................................................‬‬
‫شکل ‪ :12-2‬سیمولینک سیستم دارای کنترلر سروو‪-‬انتگرالگیر‪23........‬‬
‫شکل ‪ :13-2‬تغییرات زاویه بازو دوار در جهت ردی‪RR‬ابی س‪RR‬یگنال ورودی‬
‫زاویه بازو دوار بر حسب رادیان با استفاده از کنترلر سروو‪24............‬‬
‫ش‪RR‬کل ‪ :14-2‬تغی‪RR‬یرات زوای‪RR‬ای لین‪RR‬ک ه‪RR‬ای اول و دوم در جهت ردی‪RR‬ابی‬
‫سیگنال ورودی زاویه بازو دوار بر حسب رادیان با اس‪RR‬تفاده از کن‪RR‬ترلر‬
‫سروو ‪24............................................................................................‬‬
‫شکل ‪ :15-2‬تغییرات زاویه بازو دوار در جهت ردی‪RR‬ابی س‪RR‬یگنال ورودی‬
‫زاویه بازو دوار بر حسب رادیان با اس‪RR‬تفاده از کن‪RR‬ترلر س‪RR‬روو و وج‪RR‬ود‬
‫عدم قطعیت در مقادیر سیستم ‪26......................................................‬‬
‫ش‪RR‬کل ‪ :16-2‬تغی‪RR‬یرات زوای‪RR‬ای لین‪RR‬ک ه‪RR‬ای اول و دوم در جهت ردی‪RR‬ابی‬
‫سیگنال ورودی زاویه بازو دوار بر حسب رادیان با اس‪RR‬تفاده از کن‪RR‬ترلر‬
‫سروو وجود عدم قطعیت در مقادیر سیستم ‪26...................................‬‬
‫شکل ‪ :17-2‬بلوک دیاگرام ورودی اغتشاش به سیستم آون‪RR‬گ معک‪RR‬وس‬
‫دوبل دوار ‪27......................................................................................‬‬
‫ش‪RR‬کل ‪ :18-2‬س‪RR‬یمولینک ش‪RR‬بیه س‪RR‬ازی سیس‪RR‬تم غ‪RR‬یر خطی در حض‪RR‬ور‬
‫اغتشاش ‪28.......................................................................................‬‬
‫شکل ‪ :19-2‬تغییرات زاویه بازو دوار در جهت ردی‪RR‬ابی س‪RR‬یگنال ورودی‬
‫زاویه بازو دوار بر حسب رادیان با اس‪RR‬تفاده از کن‪RR‬ترلر س‪RR‬روو و وج‪RR‬ود‬
‫اغتشاش از نوع نیروی ثابت ‪ 0.1‬نیوتن ‪29...........................................‬‬

‫د‬
‫فهرست اشكال‬

‫شکل ‪ :20-2‬تغییرات زاویه بازو دوار در جهت ردی‪RR‬ابی س‪RR‬یگنال ورودی‬


‫زاویه بازو دوار بر حسب رادیان با اس‪RR‬تفاده از کن‪RR‬ترلر س‪RR‬روو و وج‪RR‬ود‬
‫اغتشاش از نوع نیروی سینوسی ‪29....................................................‬‬
‫ش‪RR‬کل ‪ :21-2‬تغی‪RR‬یرات زوای‪RR‬ای لین‪RR‬ک ‪ 1‬و ‪ 2‬در جهت ردی‪RR‬ابی س‪RR‬یگنال‬
‫ورودی زاویه بازو دوار بر حسب رادیان با استفاده از کن‪RR‬ترلر س‪RR‬روو و‬
‫وجود اغتشاش از نوع نیروی ثابت ‪ 0.1‬نیوتن ‪30..................................‬‬
‫ش‪RR‬کل ‪ :22-2‬تغی‪RR‬یرات زوای‪RR‬ای لین‪RR‬ک ‪ 1‬و ‪ 2‬در جهت ردی‪RR‬ابی س‪RR‬یگنال‬
‫ورودی زاویه بازو دوار بر حسب رادیان با استفاده از کن‪RR‬ترلر س‪RR‬روو و‬
‫وجود اغتشاش از نوع نیروی سینوسی ‪30...........................................‬‬
‫شکل ‪ :23-2‬سیمولینک مشاهده گر کامل‪32.......................................‬‬
‫شکل ‪ :24-2‬سیمولینک سیستم کنترلی سروو برای پلنت غیر خطی با‬
‫استفاده از مشاهده گر کامل ‪32.........................................................‬‬
‫شکل ‪ :25-2‬تغییرات زاویه بازو دوار خروجی پلنت و تخمین زده ش‪RR‬ده‬
‫در جهت ردیابی سیگنال ورودی زاویه ب‪RR‬ازو دوار ب‪RR‬ر حس‪RR‬ب رادی‪RR‬ان ب‪RR‬ا‬
‫استفاده از کنترلر سروو و مشاهده گر کامل ‪33..................................‬‬
‫ش‪RR‬کل ‪ :26-2‬تغی‪RR‬یرات س‪RR‬رعت زاوی‪RR‬ه ای ب‪RR‬ازو دوار خ‪RR‬روجی پلنت و‬
‫تخمین زده شده در جهت ردیابی س‪RR‬یگنال ورودی زاوی‪RR‬ه ب‪RR‬ازو دوار ب‪RR‬ر‬
‫حسب رادیان با استفاده از کنترلر سروو و مشاهده گر کامل‪33..........‬‬
‫شکل ‪ :27-2‬تغییرات زوایای لین‪RR‬ک ه‪RR‬ای ‪ 1‬و ‪ 2‬خ‪RR‬روجی پلنت و تخمین‬
‫زده شده در جهت ردیابی س‪RR‬یگنال ورودی زاوی‪RR‬ه ب‪RR‬ازو دوار ب‪RR‬ر حس‪RR‬ب‬
‫رادیان با استفاده از کنترلر سروو و مشاهده گر کامل‪34....................‬‬
‫شکل ‪ :28-2‬تغییرات سرعت زاویه ای لینک های ‪ 1‬و ‪ 2‬خروجی پلنت و‬
‫تخمین زده شده در جهت ردیابی س‪RR‬یگنال ورودی زاوی‪RR‬ه ب‪RR‬ازو دوار ب‪RR‬ر‬
‫حسب رادیان با استفاده از کنترلر سروو و مشاهده گر کامل‪34..........‬‬
‫شکل ‪ :29-2‬سیمولینک مشاهده گر کاهش مرتبه‪37............................‬‬
‫شکل ‪ :30-2‬تغییرات زاویه بازو دوار خروجی پلنت و تخمین زده ش‪RR‬ده‬
‫در جهت ردیابی سیگنال ورودی زاویه ب‪RR‬ازو دوار ب‪RR‬ر حس‪RR‬ب رادی‪RR‬ان ب‪RR‬ا‬
‫استفاده از کنترلر سروو و مشاهده گر کمینه‪37.................................‬‬
‫ش‪RR‬کل ‪ :31-2‬تغی‪RR‬یرات س‪RR‬رعت زاوی‪RR‬ه ای ب‪RR‬ازو دوار خ‪RR‬روجی پلنت و‬
‫تخمین زده شده در جهت ردیابی س‪RR‬یگنال ورودی زاوی‪RR‬ه ب‪RR‬ازو دوار ب‪RR‬ر‬
‫حسب رادیان با استفاده از کنترلر سروو و مشاهده گر کمینه‪38.........‬‬
‫شکل ‪ :32-2‬تغییرات زوایای لین‪RR‬ک ه‪RR‬ای ‪ 1‬و ‪ 2‬خ‪RR‬روجی پلنت و تخمین‬
‫زده شده در جهت ردیابی س‪RR‬یگنال ورودی زاوی‪RR‬ه ب‪RR‬ازو دوار ب‪RR‬ر حس‪RR‬ب‬
‫رادیان با استفاده از کنترلر سروو و مشاهده گر کمینه‪38...................‬‬
‫شکل ‪ :33-2‬تغییرات سرعت زاویه ای لینک های ‪ 1‬و ‪ 2‬خروجی پلنت و‬
‫تخمین زده شده در جهت ردیابی س‪RR‬یگنال ورودی زاوی‪RR‬ه ب‪RR‬ازو دوار ب‪RR‬ر‬
‫حسب رادیان با استفاده از کنترلر سروو و مشاهده گر کمینه‪39.........‬‬
‫شکل ‪ :34-2‬سیمولینک سیستم غ‪RR‬یر خطی ب‪RR‬ا کن‪RR‬ترلر فی‪RR‬دبک ح‪RR‬الت و‬
‫مشاهده گر کمینه ‪40..........................................................................‬‬
‫ش‪RR‬کل ‪ :35-2‬تغی‪RR‬یرات زاوی‪RR‬ه ب‪RR‬ازو دوار در جهت ردی‪RR‬ابی ورودی ه‪RR‬ای‬
‫مطلوب بر حسب رادی‪RR‬ان ب‪RR‬ا اس‪RR‬تفاده از کن‪RR‬ترلر فی‪RR‬دبک ح‪RR‬الت هم‪RR‬راه‬
‫انتگرالگیر و مشاهده گر کمینه ‪41.......................................................‬‬

‫ه‬
‫فهرست اشكال‬

‫ش‪RR‬کل ‪ :36-2‬تغی‪RR‬یرات زاوی‪RR‬ه لین‪RR‬ک اول در جهت ردی‪RR‬ابی ورودی ه‪RR‬ای‬


‫مطلوب بر حسب رادی‪RR‬ان ب‪RR‬ا اس‪RR‬تفاده از کن‪RR‬ترلر فی‪RR‬دبک ح‪RR‬الت هم‪RR‬راه‬
‫انتگرالگیر و مشاهده گر کمینه ‪41.......................................................‬‬
‫ش‪RR‬کل ‪ :37-2‬تغی‪RR‬یرات زاوی‪RR‬ه لین‪RR‬ک دوم در جهت ردی‪RR‬ابی ورودی ه‪RR‬ای‬
‫مطلوب بر حسب رادی‪RR‬ان ب‪RR‬ا اس‪RR‬تفاده از کن‪RR‬ترلر فی‪RR‬دبک ح‪RR‬الت هم‪RR‬راه‬
‫انتگرالگیر و مشاهده گر کمینه ‪42.......................................................‬‬

‫و‬
‫فهرست جداول‬

‫صف‬
‫حه‬ ‫فهرست جداول‬

‫جدول‪ :1-2‬مقادیر سیستم پاندول دوتایی معکوس چرخشی‪9.....‬‬

‫ز‬
‫فهرست عالئم‬

‫فهرست عالئم‬
‫عالئم التين‬
‫معیار الگرانژ‬ ‫‪L‬‬

‫اتالف انرژی‬ ‫‪w‬‬

‫درجات آزادی‬ ‫‪qi‬‬

‫نیرو‬ ‫‪F‬‬

‫ورودی سیستم‬ ‫‪Qi‬‬

‫انرژی جنبشی‬ ‫‪K‬‬


‫ممان اینرسی‬ ‫‪J‬‬
‫گشتاور‬ ‫‪M‬‬
‫شتاب گرانش زمین‬ ‫‪g‬‬
‫انرژی پتانسیل‬ ‫‪P‬‬

‫زاویه ‪rotary arm‬‬ ‫‪q‬‬

‫طول میله لینک ‪1‬‬ ‫‪L1‬‬

‫زاویه لینک ‪1‬‬ ‫‪α‬‬


‫زاویه بین لینک ‪ 1‬و‪2‬‬ ‫‪γ‬‬
‫نیرو ورودی‬ ‫‪τ‬‬
‫طول لینک ‪2‬‬ ‫‪L2‬‬

‫طول ‪rotary arm‬‬ ‫‪r‬‬

‫جرم پاندول کوتاه‬ ‫‪m1‬‬

‫جرم پاندول متوسط‬ ‫‪m2‬‬

‫سرعت زاویه ای‬ ‫̇‪q̇ , α̇ , γ‬‬

‫شتاب زاویه ای‬ ‫̈‪γ̈ , α̈ , q‬‬

‫ح‬
‫فصل اول‪ :‬مقدمه‬

‫فصل اول‬
‫مقدمه‬

‫‪1‬‬
‫پاندول معکوس‬ ‫‪-1-1‬‬
‫پاندول وارون یکی از مسائل مهم در دینامیک سیستم‌ها و ریاضیات مهندس ی‬
‫است که در آن یک سیستم پاندول به شکلی خاص ط راحی می‌ش ود و رفت ار‬
‫آن بررسی می‌شود‪ .‬این مسئله به عن وان ی ک مث ال کالس یک از سیس تم‌های‬

‫‪1‬‬
‫‪Inverted Pendulum‬‬

‫‪1‬‬
‫فصل اول‪ :‬مقدمه‬

‫پویا و غیرخطی شناخته می‌شود و در حوزه‌های علمی مختل ف مانن د فیزی ک‪،‬‬
‫مهندسی‪ ،‬ریاضیات‪ ،‬و رباتیک مورد استفاده ق رار می‌گ یرد‪ .‬پان دول معک وس‬
‫یک اختراع مک انیکی اس ت ک ه از پان دول س اده اله ام گرفت ه ش ده اس ت و‬
‫می‌تواند جلوه‌های ج البی از پویاشناس ی و مکانی ک را نش ان ده د‪ .‬در واق ع‪،‬‬
‫پاندول معکوس یک پاندول ساده است که به جای نقطه معلق ش دن در ب اال‪،‬‬
‫از پایین آویزان می‌شود‪.‬‬
‫پاندول ساده‪ ،‬یک سیم بلند با یک گوی سنگین در انتها دارد که از نقطه معل ق‬
‫شدن در باال آویزان می‌شود‪ .‬اگر گوی ب ه ج انبی تک ان داده ش ود‪ ،‬ب ه جل و و‬
‫عقب حرکت کرده و این حرکت به عنوان "جابجایی" نمایش داده می‌شود‪.‬‬

‫شکل ‪ :1-1‬نمایی از پاندول معکوس‬

‫‪ -2-1‬پاندول دوتایی معکوس دوار‬


‫پاندول دوتایی معکوس چرخشی یکی از سیستم‌های کالسیک در زمینه کن ترل‬
‫غ یرخطی و دینامی ک اس ت ک ه ب ه دلی ل پیچی دگی و چالش‌ه ای کن ترلی آن‪،‬‬
‫همواره مورد توجه محققان و مهندسان قرار گرفته است‪ .‬این سیستم شامل‬
‫یک بازوی چرخشی است که به دو پاندول متصل شده و حرک ات غ یرخطی و‬
‫چنددرجه آزادی دارد‪ .‬هدف اصلی این پروژه‪ ،‬طراحی و پیاده‌سازی روش‌ه ای‬
‫کنترلی پیشرفته برای پایدارسازی و ردیابی حرکت این سیستم پیچیده است‪.‬‬
‫در این پروژه‪ ،‬ابتدا معادالت دینامیکی غیرخطی سیس تم ب ا اس تفاده از روش‬
‫اویلر‪-‬الگران ژ اس تخراج می‌ش ود‪ .‬این مع ادالت نش ان‌دهنده رفت ار دین امیکی‬
‫سیستم و تأثیر گشتاورهای اعمالی بر زوایای مختلف هستند‪ .‬س پس سیس تم‬

‫‪2‬‬
‫فصل اول‪ :‬مقدمه‬

‫م دار ب از غ یرخطی در محی ط س یمولینک شبیه‌س ازی ش ده و ب ا اعم ال‬


‫ورودی‌های پله‪ ،‬رفتار آن بررسی می‌شود‪.‬‬
‫در ادام ه‪ ،‬ب ا خطی‌س ازی مع ادالت غ یرخطی ح ول نقط ه تع ادل ص فر‪،‬‬
‫ماتریس‌های فضای حالت سیستم به دست می‌آین د و پای داری سیس تم خطی‬
‫م دار ب از از جنبه‌ه ای مختل ف بررس ی می‌ش ود‪ .‬بررس ی کنترل‌پ ذیری و‬
‫رویت‌پذیری سیستم‪ ،‬گ امی دیگ ر در جهت ط راحی کنترل‌کنن ده‌های مناس ب‬
‫است‪ .‬برای پایداری سیستم‪ ،‬بهره فیدبک حالت محاسبه ش ده و پاس خ حلق ه‬
‫بسته سیستم در شرایط مختلف شبیه‌سازی می‌شود‪.‬‬
‫همچنین‪ ،‬یک کنترل‌کننده ردیاب حالت با استفاده از روش انتگرال‌گیر طراحی‬
‫شده که توانایی تنظیم زاویه بازوی چرخشی براساس س یگنال مرج ع را دارد‬
‫و پاندول‌ها را حول نقطه تعادل صفر پایدار می‌سازد‪ .‬عملکرد این کنترل‌کننده‬
‫در برابر تغییر پارامترهای سیستم و اغتشاشات مختلف ارزیابی می‌شود‪.‬‬
‫در نهایت‪ ،‬رویتگرهای مرتبه کامل و کاهش مرتبه‌یافته ط راحی و شبیه‌س ازی‬
‫می‌شوند تا تخمین‌های دقیقی از متغیرهای حالت ارائه دهند‪ .‬این رویتگره ا در‬
‫سیستم مداربسته به ک ار گرفت ه ش ده و عملک رد سیس تم در ش رایط اولی ه‬
‫مختلف بررسی می‌شود‪.‬‬
‫نتایج این پژوهش می‌توان د در بهب ود ط راحی سیس تم‌های کن ترلی پیچی ده و‬
‫پایدارسازی ربات‌های مشابه مورد استفاده قرار گیرد‪.‬‬
‫در شکل زیر نمایی از این پاندول را مشاهده می کنید‪.‬‬

‫‪3‬‬
‫فصل اول‪ :‬مقدمه‬

‫شکل‪ :2-1‬نمایی از یک پاندول معکوس‬

‫‪ -3-1‬ضرورت و اهمیت موضوع‬


‫پاندول دوتایی معکوس چرخشی ب ه دلی ل س اختار پیچی ده و غ یرخطی خ ود‪،‬‬
‫برای مطالعه و آزمایش روش‌های کنترل غیرخطی و پیشرفته مناسب اس ت‪.‬‬
‫توانایی کنترل این سیستم می‌تواند به بهب ود ط راحی و عملک رد سیس تم‌های‬
‫پیچیده‌تر در ص نایع مختل ف کم ک کن د‪ .‬ب ه عن وان مث ال‪ ،‬در ص نایع هوافض ا‪،‬‬
‫رباتیک و خودروسازی‪ ،‬کنترل دقیق سیستم‌های مکانیکی ب ا چن د درج ه آزادی‬
‫از اهمیت ویژه‌ای برخوردار است‪.‬‬

‫‪4‬‬
‫فصل اول‪ :‬مقدمه‬

‫‪ -4-1‬استخراج معادالت دینامیکی‬


‫ب رای درک دقی ق رفت ار سیس تم‪ ،‬ابت دا مع ادالت دین امیکی غ یرخطی آن ب ا‬
‫استفاده از روش اویلر‪-‬الگرانژ استخراج می‌شود‪ .‬این روش ب ر اس اس اص ل‬
‫کمترین کنش عمل می‌کند و به ما امکان می‌دهد تا مع ادالت ح رکت را ب رای‬
‫سیستم‌های مکانیکی پیچیده به دست آوریم‪ .‬زوای ای ‪ q , γ , α‬ک ه درج ات آزادی‬
‫سیستم را تشکیل می‌دهند‪ ،‬در این معادالت به کار می‌روند‪.‬‬

‫‪ -5-1‬شبیه‌سازی مدار باز‬


‫پس از استخراج مع ادالت دین امیکی‪ ،‬سیس تم م دار ب از غ یرخطی در محی ط‬
‫سیمولینک شبیه‌سازی می‌ش ود‪ .‬در این مرحل ه‪ ،‬ورودی‌ه ای پل ه ب ه سیس تم‬
‫اعمال شده و رفتار آن بررسی می‌گردد‪ .‬این شبیه‌سازی به ما امکان می‌دهد‬
‫تا رفتار دینامیکی سیستم را در شرایط مختلف مشاهده کرده و نق اط ض عف‬
‫و قوت آن را شناسایی کنیم‪.‬‬

‫‪ -6-1‬طراحی کنترل‌کننده‌ها‬
‫کنترل‌پ ذیری و رویت‌پ ذیری سیس تم از دیگ ر گام‌ه ای مهم در ط راحی‬
‫کنترل‌کننده‌ها است‪ .‬بهره فیدبک حالت جهت پایدارسازی سیستم حول نقط ه‬
‫تعادل صفر محاسبه و بر سیستم غیرخطی اعمال می‌شود‪ .‬پاسخ حلقه بس ته‬
‫سیستم در شرایط مختلف شبیه‌س ازی ش ده و مح دوده پای داری آن بررس ی‬
‫می‌گردد‪.‬‬

‫‪ -7-1‬طراحی کنترل‌کننده ردیاب‬

‫یک کنترل‌کننده ردیاب حالت با استفاده از روش انتگرال‌گیر طراحی می‌ش ود‬
‫ک ه ه دف آن تنظیم زاوی ه ب ازوی چرخش ی ب ر اس اس س یگنال مرج ع و‬
‫پایدارسازی پاندول‌ها حول نقطه تعادل صفر اس ت‪ .‬عملک رد این کنترل‌کنن ده‬
‫در برابر تغییر پارامترهای سیستم و اغتشاشات مختلف ارزیابی می‌شود‪.‬‬

‫‪5‬‬
‫فصل اول‪ :‬مقدمه‬

‫‪ -8-1‬طراحی رویتگرها‬
‫برای بهبود دقت و کارایی سیستم کنترل‪ ،‬رویتگره ای مرتب ه کام ل و ک اهش‬
‫مرتبه‌یافته طراحی می‌شوند‪ .‬این رویتگرها قادر به ارائه تخمین‌ه ای دقیقی از‬
‫متغیره ای ح الت سیس تم هس تند و در سیس تم مداربس ته ب ه ک ار گرفت ه‬
‫می‌شوند‪ .‬شبیه‌سازی‌های انجام شده نشان می‌دهد که این رویتگرها می‌توانند‬
‫در کمتر از زمان مشخصی به متغیرهای حالت واقعی همگرا شوند و عملک رد‬
‫سیستم را بهبود بخشند‪.‬‬

‫‪ -9-1‬نتایج و کاربردها‬
‫نتایج این پژوهش نشان‌دهنده عملکرد مطلوب کنترل‌کننده‌های ط راحی ش ده‬
‫در پایداری و ردیابی س یگنال‌های مرج ع اس ت‪ .‬این نت ایج می‌توانن د در بهب ود‬
‫ط راحی سیس تم‌های کن ترلی پیچی ده و پایدارس ازی ربات‌ه ای مش ابه م ورد‬
‫اس تفاده ق رار گیرن د‪ .‬همچ نین‪ ،‬این پ روژه می‌توان د ب ه عن وان ی ک مرج ع‬
‫ارزشمند ب رای تحقیق ات آتی در زمین ه کن ترل سیس تم‌های غ یرخطی و چن د‬
‫درجه آزادی باشد‪.‬‬
‫در مجموع‪ ،‬این پروژه با هدف ارائ ه ی ک رویک رد ج امع ب رای کن ترل پان دول‬
‫دوت ایی معک وس چرخش ی‪ ،‬تالش می‌کن د ت ا از طری ق مدل‌س ازی دقی ق‪،‬‬
‫شبیه‌سازی‌های کاربردی و طراحی کنترل‌کننده‌های پیشرفته‪ ،‬به بهبود عملکرد‬
‫و پایداری این سیستم پیچیده دست یابد‪.‬‬

‫‪6‬‬
‫فصل دوم‪ :‬خواسته های پروژه و نتایج‬

‫فصل دوم‬
‫خواسته های پروژه و نتایج‬

‫در اینجا ابتدا به برسی دی اگرام رب ات و س پس مع ادالت ح رکت ب رای ه ر دو‬


‫پاندول و بازوی چرخشی استخراج می‌شود و پارامترها‪ ،‬نیروها و شرایط اولی ه‬
‫مدل مورد بررسی قرار می‌گیرند‪.‬‬

‫‪7‬‬
‫فصل دوم‪ :‬خواسته های پروژه و نتایج‬

‫شکل‪:1-2‬دیاگرام آزاد یک پاندول معکوس‬

‫‪8‬‬
‫فصل دوم‪ :‬خواسته های پروژه و نتایج‬

‫جدول‪ :1-2‬مقادیر سیستم پاندول دوتایی معکوس چرخشی‬

‫‪1‬‬
‫‪ 1-2‬معادالت دینامیکی غیر خطی‬
‫در این قسمت‪ ،‬هدف این است که با استفاده از روش اویلر‪-‬الگران ژ‪ ،‬مع ادالت‬
‫کلی غیر خطی سیستم به دست آیند‪ .‬معادالت الگرانژ ب ا توج ه ب ه معادل ه (‪)1‬‬
‫نوشته میشوند‪.‬‬

‫) (‬
‫‪d ∂L‬‬
‫‪−‬‬
‫‪∂L ∂w‬‬
‫‪+‬‬
‫‪dt ∂ q̇ i ∂ qi ∂ q̇i‬‬
‫‪=Qi‬‬
‫(‪1‬‬
‫)‬
‫که در آن ‪ L‬معیار الگرانژ‪ w ،‬اتالف انرژی‪ q i ،‬درجات آزادی و ‪ Qi‬ورودی سیستم‬
‫برای ‪ i=1 , … , n‬که ‪ n‬هم ان درج ه آزادی سیس تم اس ت‪ ،‬تعری ف میش ود‪ .‬اتالف‬
‫‪∂w‬‬
‫انرژی از مدل ویسکوز در نظر گرفته شده است و ̇‪ ∂ q‬براب ر ‪ b i q̇ i‬اس ت‪ .‬ابت دا‬
‫‪i‬‬

‫نیاز است تا انرژی جنبشی هر یک از لینکهای ربات را بدس ت آی د‪ .‬ب رای لین ک‬

‫‪1‬‬
‫‪Nonlinear dynamic equation‬‬

‫‪9‬‬
‫فصل دوم‪ :‬خواسته های پروژه و نتایج‬

‫دوار‪ ،‬انرژی جنبشی تنها از چ رخش لین ک ب ا س رعت زاوی ه ای ̇‪ q‬و ارتب اط ب ا‬
‫ممان اینرسی این لینک‪ ،‬به دست میآید‪.‬‬
‫‪1‬‬ ‫‪2‬‬ ‫(‪2‬‬
‫̇‪K rot = J rot q‬‬
‫‪2‬‬ ‫)‬
‫لین ک ‪ 1‬رب ات‪ ،‬هم ح رکت زاوی ه ای خ ودش و هم لین ک دوار را دارا اس ت‪.‬‬
‫بنابراین‪ ،‬این بار به جای به دست آوردن انرژی جنبشی فقط از طری ق ح رکت‬
‫زاویه ای‪ ،‬از معیار کارتزین نیز استفاده میشود‪ .‬حرکت مرک ز ج رم لین ک ‪ 1‬ب ا‬
‫توجه به قرار دادن روند حرکتی ربات در جهت های ‪ x‬و ‪ y‬فرضی‪ ،‬به شکل زی ر‬
‫است‪:‬‬
‫‪X 1 =rq+l 1 sin α‬‬ ‫(‪3‬‬
‫‪Y 1=l 1 cos α‬‬ ‫)‬

‫پس برای انرژی جنبشی به دست میآید که‬


‫‪1‬‬ ‫‪1‬‬
‫̇‪K 1= m 1 ( Ẋ 1 + Ẏ 1 ) + J 1 α‬‬
‫‪2‬‬ ‫‪2‬‬ ‫‪2‬‬
‫‪2‬‬ ‫‪2‬‬
‫(‪4‬‬
‫‪1‬‬ ‫‪1‬‬
‫̇‪→ K 1= m 1 ( ( r q̇+l 1 cos α α̇ ) + (−l 1 sin α α̇ ) )+ J 1 α‬‬
‫‪2‬‬ ‫‪2‬‬ ‫‪2‬‬
‫‪2‬‬ ‫‪2‬‬ ‫)‬

‫برای لینک ‪ 2‬و نهایی ربات‪ ،‬روند یکسانی به مانند لینک ‪ 1‬پی گرفته میشود‪ .‬ب ر‬
‫این اساس‪:‬‬
‫‪X 2 =rq+ L1 sin α +l 2 sin γ‬‬ ‫(‪5‬‬
‫‪Y 2=L1 cos α +l 2 cos γ‬‬ ‫)‬

‫و انرژی جنبشی برابر معادله ‪ 6‬میشود‪.‬‬


‫‪1‬‬ ‫‪1‬‬
‫̇‪K 2= m2 ( Ẋ 1 + Ẏ 1 ) + J 2 γ‬‬
‫‪2‬‬ ‫‪2‬‬ ‫‪2‬‬
‫‪2‬‬ ‫‪2‬‬
‫(‪6‬‬
‫‪1‬‬ ‫‪1‬‬
‫̇‪→ K 2= m2 ( ( r q̇+ L1 cos α α̇ +l 2 cos γ γ̇ ) + ( −L1 sin α α̇ −l 2 sin γ γ̇ ) ) + J 2 γ‬‬
‫‪2‬‬ ‫‪2‬‬ ‫‪2‬‬
‫‪2‬‬ ‫‪2‬‬ ‫)‬

‫پس بنابراین‪ ،‬کل انرژی جنبشی سیستم در مجموع به شکل زیر در میآید‪:‬‬
‫‪K=K rot + K 1 + K 2‬‬ ‫(‪7‬‬
‫)‬

‫‪10‬‬
‫فصل دوم‪ :‬خواسته های پروژه و نتایج‬

‫‪1‬‬ ‫‪2 1‬‬ ‫‪1‬‬


‫] ) ̇‪J 2 γ̇ + m1 [ ( r q̇+l 1 cos α α̇ ) + (−l1 sin α α̇ ) ] + m 2 [ ( r q̇+ L1 cos α α̇ +l 2 cos γ γ̇ ) + (−L1 sin α α̇ −l 2 sin γ γ‬‬
‫‪2‬‬ ‫‪2‬‬ ‫‪2‬‬ ‫‪2‬‬
‫‪2‬‬ ‫‪2‬‬ ‫‪2‬‬

‫برای انرژی پتانسیل‪ ،‬تنها گ رانش ت اثیر گ ذار اس ت و ب رای ه ر س ه لین ک در‬
‫مجموع از رابطه زیر بدست میآید‪.‬‬
‫‪P=P rot + P1 + P2‬‬ ‫(‪8‬‬
‫) ‪P=g m1 l 1 cos α + g m2 ( L1 cos α + L2 cos γ‬‬ ‫)‬

‫حال‪ ،‬معادله اویلر‪-‬الگرانژ به شکل زیر ایجاد میشود‪.‬‬


‫(‪9‬‬
‫‪L=K −P‬‬
‫)‬
‫که‬
‫(‬
‫‪1‬‬
‫) ‪α̇ ) ] + m2 [ ( r q̇+ L1 cos α α̇ +l 2 cos γ γ̇ ) + ( −L1 sin α α̇−l 2 sin γ γ̇ ) ]−g m1 l 1 cos α −g m 2 ( L1 cos α + L2 cos γ‬‬
‫‪2‬‬ ‫‪2‬‬ ‫‪2‬‬
‫‪2‬‬
‫‪10‬‬
‫)‬
‫حال با استفاده از ‪ L‬و ‪ w‬که در ابتدای بخش بدست آمد‪ ،‬ب ا توج ه ب ه رابط ه ‪1‬‬
‫برای هر درجه آزادی ‪ α ،q‬و ‪ γ‬معادالت غیر خطی بدست آورده میشوند‪ .‬در نظر‬
‫گرفته شود که تنها ورودی نیرو با توجه به مس ئله‪ τ ،‬اس ت ک ه ب ه مفص ل اول‬
‫دوار وارد شده است‪.‬‬
‫(‬
‫‪t‬‬ ‫‪+r ( m1+ m2 ) ] q̈ +r ( m1 l 1 +m2 L1 ) cos α α̈ + m2 l 2 r γ̈ cos γ +brot q̇−r ( m1 l 1+ m2 L1 ) sin α α̇ −m2 l 2 r sin γ γ̇ =τ‬‬
‫‪2‬‬ ‫‪2‬‬ ‫‪2‬‬
‫‪11‬‬
‫)‬
‫‪L1 ) cos α q̈+ ( J 1+ m1 l 21+ m2 L21 ) α̈ + m2 L1 l 2 cos ( α −γ ) γ̈ −b 1 α̇ +m2 L1 l 2 sin ( α −γ ) γ̇ 2 −g ( m1 l 1+ m2 L1 ) sin α =0‬‬ ‫(‬
‫‪12‬‬
‫)‬
‫‪m2 l 2 r cos γ q̈+m2 L1 l 2 cos ( α −γ ) α̈ + ( J 2+ m2 l 22) γ̈ + b2 γ̇ −m2 L1 l 2 sin ( α −γ ) α̇ 2−g m2 l 2 sin γ =0‬‬ ‫(‬
‫‪13‬‬
‫)‬
‫که به شکل کامل‪ ،‬معادالت غیر خطی را نشان میدهند‪ .‬گش تاور موت ور ورودی‬
‫به مفصل ‪ 1‬با توجه به نوع موتور‪ ،‬به شکل زیر به مفصل داده میشود‪ .‬در نظر‬
‫گرفته شود که ‪ v‬در اینجا همان ورودی سیستم از کنترلر میباشد‪.‬‬
‫̇‪τ =0.117238 v−0.053 θ‬‬

‫‪11‬‬
‫فصل دوم‪ :‬خواسته های پروژه و نتایج‬

‫‪ -2-2‬شبیه سازی سیستم مدار باز غیرخطی‬


‫برای شبیه سازی‪ ،‬از سیمولینک استفاده شده است‪ .‬برای داش تن نظم بیش تر‬
‫داخل فایل‪ ،‬ابتدا ضرایب ثابت یا همان پارامتر های داخل فایل های مربوط ب ه‬
‫ربات‪ ،‬در داخل معادالت ‪ 11‬تا ‪ 13‬قرار داده میشوند تا دیگر پارامتر اض افه ای‬
‫جز ورودی و درجات آزادی وجود نداشته باشد‪.‬‬
‫(‬
‫‪2‬‬
‫̇‪q̈=0.8085 v−0.6138 cos α α̈ −0.2966 cos γ γ̈ −4.5103 q̇+0.6138 sin α α̇ +0.2966 sin γ γ‬‬
‫‪2‬‬
‫‪14‬‬
‫)‬
‫‪2‬‬
‫‪α̈ =−1.1266 cos α q̈−0.4937 cos ( α −γ ) γ̈ −0.3038 α̇−0.4937 sin ( α −γ ) γ̇ +51.2405 sin α‬‬ ‫(‬
‫‪15‬‬
‫)‬
‫‪2‬‬
‫‪γ̈ =−cos γ q̈−0.9096 cos ( α −γ ) α̈ −0.5581 γ̇ + 0.9096 sin ( α −γ ¿ ¿ α̇ + 45.2093 sin γ‬‬ ‫(‬
‫‪16‬‬
‫)‬
‫شکل ‪ ،2‬بلوک دیاگرام شبیه سازی سیس تم در داخ ل فای ل ‪[Link]‬‬
‫را نشان می دهد‪ .‬در این شکل پارامتر ها از قبل حساب شده و در قسمت ه ای‬
‫مختلف قرار گرفته اند‪ .‬درادامه و شکل های ‪ 4 ،3‬و ‪ 5‬به ترتیب تغی یرات ‪α ،q‬‬
‫و ‪ γ‬در مقابل سیگنال پله به مفصل اول‪ ،‬قابل مشاهده اند‪ .‬برای این ک ار‪ ،‬پس‬
‫از اج رای فای ل س یمولینک‪ ،‬از فای ل ‪ OpenLoopTestPlots.m‬ب رای نم ودار ه ا‬
‫استفاده شده است‪.‬‬

‫‪12‬‬
‫فصل دوم‪ :‬خواسته های پروژه و نتایج‬

‫شکل‪ :2-2‬سیمولینک شبیه سازی سیستم غیر خطی‬

‫شکل ‪ :3-2‬پاسخ پله سیستم در زاویه بازو دوار‬

‫‪13‬‬
‫فصل دوم‪ :‬خواسته های پروژه و نتایج‬

‫شکل ‪ :4-2‬پاسخ پله سیستم در زاویه لینک اول‬

‫شکل ‪ :5-2‬پاسخ پله سیستم در زاویه لینک دوم‬

‫همانطور که در شکل ‪ 3‬مشاهده میشود‪ ،‬مفصل اول پس از دریافت پاسخ پل ه‬


‫پس از اندکی نوسان‪ ،‬با شیب ثابت زاویه میگیرد و در نتیجه آن و ن یروی ث ابت‬
‫در آن مفاصل‪ ،‬دو درج ه آزادی دیگ ر در ش کل ه ای ‪ 4‬و ‪ ،5‬در محلی خ ارج از‬
‫نقطه تعادل ثابت میمانند‪.‬‬

‫‪14‬‬
‫فصل دوم‪ :‬خواسته های پروژه و نتایج‬

‫‪1‬‬
‫‪ -3-2‬خطی سازی معادالت دینامیکی‬
‫خطی سازی سیستم حول نقطه تعادل صفر برای هر ‪ 3‬درجه آزادی انج ام می‪-‬‬
‫شود‪ .‬پارامتر های ع ددی در قس مت قب ل جایگ ذاری ش ده ان د و ب رای خطی‬
‫س ازی مرتب ه اول بس ط تیل ور‪،sin γ ≈ γ ،sin α ≈ α ،sin q ≈ q ،q̇ 2=α̇ 2=γ̇ 2 ≈ 0 ،‬‬
‫‪ cos q=cos α =cos γ ≈ 1‬قرار داده میشوند‪ .‬بنابراین معادالت ‪ 14‬تا ‪ 16‬به شکل زیر‬
‫در میآیند‪.‬‬
‫(‬
‫̇‪q̈=0.8085 v−0.6138 α̈ −0.2966 γ̈ −4.5103 q‬‬ ‫‪14‬‬
‫)‬
‫‪α̈ =−1.1266 q̈−0.4937 γ̈ −0.3038 α̇ + 51.2405 α‬‬ ‫(‬
‫‪15‬‬
‫)‬
‫‪γ̈ =−cos γ q̈−0.9096 α̈ −0.5581 γ̇ + 45.2093 γ‬‬ ‫(‬
‫‪16‬‬
‫)‬
‫ب رای فض ای ح الت‪ [ x 1 , x 2 , x 3 , x 4 , x 5 , x 6 ]= [ q , α , γ , q̇ , α̇ , γ̇ ] ،‬ق رار داده میش وند‪ .‬پس‬
‫بنابراین‬
‫(‬
‫‪ẋ 4 =0.8085 v−0.6138 ẋ 5−0.2966 ẋ6 −4.5103 x 4‬‬ ‫‪17‬‬
‫)‬
‫‪ẋ 5=−1.1266 ẋ 4 −0.4937 ẋ 6−0.3038 x 5 +51.2405 x 2‬‬ ‫(‬
‫‪18‬‬
‫)‬
‫‪ẋ 6=− ẋ 4 −0.9096 ẋ 5−0.5581 x 6+ 45.2093 x 3‬‬ ‫(‬
‫‪19‬‬
‫)‬
‫با جابجایی این معادالت‪ ،‬در نهایت فرم فضای حالت به شکل زیر بدست میآید‪.‬‬

‫][‬
‫‪v‬‬ ‫(‬
‫‪ẋ= A x +B 0‬‬
‫‪20‬‬
‫‪0‬‬

‫‪1‬‬
‫‪Linearization of dynamic equations‬‬

‫‪15‬‬
‫فصل دوم‪ :‬خواسته های پروژه و نتایج‬

‫[ ][‬ ‫]‬
‫‪x1‬‬ ‫‪1 0 0 0 0 0‬‬
‫‪y= x 2 =C x= 0 1 0 0 0 0 x‬‬ ‫)‬
‫‪x3‬‬ ‫‪0 0 1 0 0 0‬‬

‫[‬ ‫]‬
‫‪0‬‬ ‫‪0‬‬ ‫‪0‬‬ ‫‪1‬‬ ‫‪0‬‬ ‫‪0‬‬
‫‪0‬‬ ‫‪0‬‬ ‫‪0‬‬ ‫‪0‬‬ ‫‪1‬‬ ‫‪0‬‬ ‫(‬
‫‪0‬‬ ‫‪0‬‬ ‫‪0‬‬ ‫‪0‬‬ ‫‪0‬‬ ‫‪1‬‬
‫=‪A‬‬
‫‪0 −103.8‬‬ ‫‪1.7‬‬ ‫‪−14.63 0.61 −0.02‬‬
‫‪21‬‬
‫‪0 212.25 −42.46 16.81 −1.26 0.52‬‬ ‫)‬
‫‪0 −89.26 82.14‬‬ ‫‪−0.66‬‬ ‫‪0.53 −1.01‬‬

‫][‬
‫‪0‬‬

‫[‬ ‫]‬
‫‪0‬‬ ‫(‬
‫‪1 0 0 0 0 0‬‬
‫‪B= 0 ,C= 0 1 0 0 0 0 , D=0‬‬ ‫‪22‬‬
‫‪2.62‬‬
‫‪0 0 1 0 0 0‬‬ ‫)‬
‫‪−3.01‬‬
‫‪0.12‬‬

‫‪1‬‬
‫‪ -4-2‬پایداری‬
‫برای تحلیل پایداری ب ا اس تفاده از روش اول لیاپ انوف‪ ،‬ابت دا بای د قطب ه ای‬
‫سیس تم ب ه دس ت آین د‪ .‬ب رای این ک ار پس از خطی س ازی سیس تم‪ ،‬معادل ه‬
‫مشخصه سیستم ایجاد میشود‪.‬‬
‫(‬
‫)‪P=det ⁡(λI − A‬‬ ‫‪23‬‬
‫)‬
‫و ریشه های این معادله‪ ،‬قطب های سیس تم هس تند‪ .‬در اینج ا‪ ،‬ب ا اس تفاده از‬
‫متلب و فایل ‪ ،Stability.m‬قطب ه ای سیس تم پس از وارد ک ردن سیس تم ب ه‬
‫متلب با استفاده از دستور ‪ pole‬به دست آمده اند و دیگر نیازی به محاسبه ب اال‬
‫نیست‪ .‬قطب های سیستم برابرند با‬
‫‪λ 1=0 , λ2=−22.5 , λ 3=12.87 , λ 4=6.23 , λ5 =−10.15 , λ6=−3.35‬‬ ‫(‬

‫‪1‬‬
‫‪Stability‬‬

‫‪16‬‬
‫فصل دوم‪ :‬خواسته های پروژه و نتایج‬

‫‪24‬‬
‫)‬
‫از جایی که سیستم دارای قطب سمت راست مح ور موه ومی اس ت‪ ،‬پس در‬
‫نتیجه میتوان گفت که نقطه تعادل ناپایدار است و بنابراین کل سیس تم ناپای دار‬
‫می شود‪ .‬از جایی که سیستم یک قطب روی صفر دارد‪ ،‬اگر حتی هم ه قطب ه ا‬
‫سمت چپ محور بودند‪ ،‬سیستم نهایتا ‪ marginally stable‬ب ود و نمیش د ح دس‬
‫درستی در مورد پایداری آن زد‪.‬‬

‫‪ -5-2‬کنترل پذیری‪ ،‬مشاهده پ‪RR‬ذیری و ط‪RR‬راحی کن‪RR‬ترلر ب‪RR‬ر‬


‫اساس جانشانی قطب ها‬
‫ابتدا کنترل پذیری سیستم بررسی میشود‪ .‬برای اینکار‪ ،‬اول م اتریس‬
‫کنترل پذیری ایجاد میشود‪.‬‬
‫(‬
‫] ‪C c =[ B AB A B A B A B A B‬‬ ‫‪25‬‬
‫‪2‬‬ ‫‪3‬‬ ‫‪4‬‬ ‫‪5‬‬

‫)‬
‫این ماتریس به راحتی در نرم افزار متلب با اس تفاده از دس تور ‪ctrb‬‬
‫ایجاد میشود و در فایل ‪ controllability.m‬قرار گرفتهاست‪ .‬با استفاده‬
‫از دستور ‪ rank‬که ک ار چ ک ک ردن مس تقل ب ودن ه ر س تون از آن‬
‫ماتریس را انجام میدهد‪ ،‬رنک سیستم برابر ‪ 6‬است و سیستم کن ترل‬
‫پذیر است‪.‬‬
‫برای مشاهده پذیری سیستم‪ ،‬ماتریس مشاهده پذیری ایجاد میشود‪.‬‬

‫][‬
‫‪C‬‬
‫‪CA‬‬
‫‪2‬‬
‫‪CA‬‬ ‫(‬
‫=‪O‬‬ ‫‪3‬‬
‫‪CA‬‬
‫‪4‬‬
‫‪26‬‬
‫‪CA‬‬
‫‪C A5‬‬
‫)‬

‫‪17‬‬
‫فصل دوم‪ :‬خواسته های پروژه و نتایج‬

‫اینبار از دستور ‪ obsv‬متلب استفاده میشود و رنک این سیستم براب ر‬


‫‪ 6‬میش ود و سیس تم مش اهده پ ذیر اس ت‪ .‬این محاس به در‬
‫‪ observability.m‬انجام شده اس ت‪ .‬ح ال میت وان ب رای سیس تم ی ک‬
‫کنترلر خطی جانشین قطب ها طراحی کرد‪.‬‬
‫‪ts‬‬‫برای اینکه سیستم با قطب سریع طراحی شود‪ ،‬ابتدا زمان نشست‬
‫را براب ر ‪ 0.5‬ق رار داده ت ا از رس یدن سیس تم در ‪ 1‬ثانی ه اطمین ان‬
‫حاصل شود‪ .‬به دلخواه‪ ،‬ماکزیموم اورش وت را ح دود ‪ 3‬درص د ق رار‬
‫میدهیم‪ .‬برای ب ه دس ت آوردن ‪ ω n‬و ‪ ،ζ‬رواب ط زی ر ب رای اورش وت و‬
‫زمان نشست وجود دارند‪.‬‬
‫(‬
‫‪−ζπ‬‬

‫‪M O=e‬‬ ‫‪√ 1−ζ 2‬‬ ‫‪27‬‬


‫)‬
‫‪4‬‬ ‫(‬
‫=‪t s‬‬
‫‪ωn ζ‬‬
‫‪28‬‬
‫)‬

‫با استفاده از این روابط‪ ،‬برای قطب ه ای س ریع ‪ ω n=10 rad / s‬و‬
‫‪ζ =0.74‬‬
‫میباشند‪ .‬قطب ه ای غ الب را ب ا اس تفاده از رابط ه زی ر بدس ت می‪-‬‬
‫آوریم‪.‬‬
‫(‬
‫) ‪p1 ,2=ωn (−ζ ± √ 1−ζ i‬‬ ‫‪29‬‬
‫‪2‬‬

‫)‬
‫بنابراین‪ ،‬قطب های غالب ‪ −8 ± 7.17 i‬قرار میگیرند و س ایر قطب ه ا را‬
‫از ‪ −9‬تا ‪ −12‬قرار میدهیم تا تاثیر کمیبگذارن د‪ .‬بن ابراین ب ا اس تفاده از‬
‫دستور ‪ place‬متلب‪ ،‬ضریب کنترلر برابر است با‪:‬‬
‫(‬
‫]‪k fast =[124.64 −435.92 1356.19 63.65 48.35 165.85‬‬ ‫‪30‬‬
‫)‬

‫‪18‬‬
‫فصل دوم‪ :‬خواسته های پروژه و نتایج‬

‫به همین شکل‪ ،‬برای قطب های کند‪ ،‬زمان نشست را ‪ 2.5‬ثانیه ق رار داده و از‬
‫روابط باال به دست می آید که‪ ω n=2.14 rad /s ،‬و ‪ ζ =0.74‬میباشند‪ .‬و ب ه همین‬
‫شکل‪ ،‬قطب های غالب برابر ‪ −1.6 ± 1.43i‬قرار میگیرند و داریم‪:‬‬
‫(‬
‫‪k slow=[4.98 −343.39 428.6 0.38 −7.24‬‬ ‫]‪45.89‬‬ ‫‪31‬‬
‫)‬
‫تمامی این محاسبات در ‪ PolePlacementController.m‬انجام شده است‪ .‬پس از‬
‫اجرای این فایل‪ ،‬ش بیه س ازی سیس تم ب ا پلنت خطی ش ده‪ ،‬در س یمولینک ب ا‬
‫عنوان ‪ [Link]‬انجام شده است که در ش کل ‪ 6‬قاب ل مش اهده‬
‫است‪ .‬با قرار دادن هر کدام از ضرایب کن ترلر‪ ،‬مق ادیر دلخ واه بدس ت میآی د‪.‬‬
‫شکل ‪ 7‬سیستم سریع و شکل ‪ 8‬سیستم کند را نشان میدهد ک ه هم ه درج ات‬
‫آزادی‪ ،‬از مقادیر اولیه کمی شروع به حرکت به سمت نقطه تع ادل میکنن د‪ .‬ب ا‬
‫توجه به این نمودار ها‪ ،‬به خوبی مشاهده میشود که سیستم‪ ،‬پاسخ مطل وبی از‬
‫خود به نمایش گذاشته است‪.‬‬

‫شکل ‪ :6-2‬سیمولینک شبیه سازی سیستم کنترلی با تئوری جانشانی قطب ها با‬

‫پلنت خطی شده‬

‫‪19‬‬
‫فصل دوم‪ :‬خواسته های پروژه و نتایج‬

‫شکل ‪ :7-2‬نمودار رگوالسیون درجات آزادی سیستم خطی شده بر حسب رادیان با‬

‫استفاده از قطب های سریع‬

‫شکل ‪ :8-2‬نمودار رگوالسیون درجات آزادی سیستم خطی شده بر حسب رادیان با‬

‫استفاده از قطب های کند‬

‫‪ -6-2‬کنترلر جانشین قطب ها روی سیستم غیر خطی‬


‫این بخش ب ه ن وعی تلفی ق بخش ‪ 5‬و ‪ 2‬میباش د‪ .‬فای ل س یمولینک‬
‫‪ [Link]‬را پس از اجرای فایل کنترلر در قسمت ‪ 5‬اج را می‪-‬‬
‫کنیم که به شکل زیر است‪.‬‬

‫‪20‬‬
‫فصل دوم‪ :‬خواسته های پروژه و نتایج‬

‫شکل ‪ :9-2‬سیمولینک شبیه سازی سیستم کنترلی با تئوری جانشانی قطب ها با‬

‫پلنت غیر خطی‬

‫سیستم غیر خطی را در یک ساب سیستم ذخیره کرده ایم و برای مثال‪ ،‬کنترلر‬
‫کند را برای کنترل سیستم لحاظ کرده ایم‪ .‬در ش کل ‪ 10‬مش اهده میش ود ک ه‬
‫برای شرایط اولیه تا ‪ 0.3‬رادیان‪ ،‬سیستم پایدار است‪.‬‬

‫شکل ‪ :10-2‬نمودار رگوالسیون درجات آزادی سیستم غیر خطی بر حسب رادیان با‬

‫استفاده از قطب های کند‬

‫با افزایش مقادیر اولیه‪ ،‬برای ‪ q‬تا ح دود ‪ α ،1‬ت ا ح دود ‪ 0.5‬و ‪ γ‬ت ا ح دود ‪0.3‬‬
‫رادیان‪ ،‬سیستم به نقطه تعادل باز میگردد‬

‫‪21‬‬
‫فصل دوم‪ :‬خواسته های پروژه و نتایج‬

‫‪ -7-2‬طراحی سیستم کنترل سروو – انتگرال گیر‬


‫در این مدل کنترلر ها‪ ،‬برای یک سری ورودی ها سروو کنترل انجام میش ود و‬
‫برای بقیه از همان رگوالتور معمولی پایدار ساز حول نقطه تع ادل اس تفاده می‪-‬‬
‫کنیم‪ .‬بنابراین نیاز داریم تا بازو دوار سیگنال به مانند سیگنال موج ود در ش کل‬
‫‪ 11‬حرکت کند و سایر درجات آزادی حول ص فر‪ ،‬ب ه مانن د رگوالت ور ب ه نقط ه‬
‫تعادل بازگردند‪ .‬برای اینک ار‪ ،‬ابت دا خ روجی م ورد نظ ر ‪ w‬ب رای تعقیب مس یر‬
‫دلخواه را از سیستم اصلی جدا میکنیم‪.‬‬

‫شکل ‪ :11-2‬سیگنال ورودی مسیر مطلوب زاویه بازو دوار بر حسب درجه در مدت‬

‫‪ 10‬ثانیه‬

‫(‬
‫=‪y=C x‬‬
‫‪E‬‬
‫‪F‬‬ ‫][‬
‫‪x → w=E x‬‬ ‫‪32‬‬
‫)‬
‫در این روش‪ ،‬خطای تعقیب را به صورت زیر تعریف میک نیم و انتگ رال خط ای‬
‫تعقیب را به عنوان متغیر حالت جدید انتخاب میکنیم‪.‬‬
‫(‬
‫‪ż=r −w=r−E x‬‬ ‫‪33‬‬
‫)‬
‫بنابراین فضای حالت جدید به شکل زیر در میآید‪.‬‬

‫‪22‬‬
‫فصل دوم‪ :‬خواسته های پروژه و نتایج‬

‫'‬
‫= ̇‪x‬‬
‫‪[ ẋż ]=[−EA 00][ xz ]+[ B0 ] u+[ 01] r= A x + B u+ B r‬‬
‫'‬ ‫'‬
‫(‬
‫‪34‬‬
‫] ‪[ xz‬‬
‫' ‪y= [ C 0 ] =C x‬‬ ‫)‬

‫قانون کنترلی به صورت زیر بیان میشود‪:‬‬


‫(‬
‫] ‪v=−k 1 x+ k 2 z=−[ k 1 −k 2‬‬
‫][‬
‫‪x‬‬
‫‪z‬‬
‫' ‪=−k x‬‬ ‫‪35‬‬
‫)‬
‫بنابراین‪ ،‬با استفاده از دستور ‪ ،place‬اینبار برای ‪ A‬و ‪ B‬کنترلر جانشین قطب ها‬
‫طراحی میکنیم‪ .‬محاسبات در فایل ‪ IntegralController.m‬انجام شده است‪ .‬ی ک‬
‫قطب به قطب های غالب س ریع در بخش ه ای قب ل اض افه میک نیم‪ .‬بن ابراین‬
‫داریم‪:‬‬
‫(‬
‫]‪k =[1003.4 159.1 3729.9 340.4 298.4 504.6 −1620.4‬‬ ‫‪36‬‬
‫)‬
‫بنابراین با توج ه ب ه س تون آخ ر‪ ،‬ض ریب انتگرالگ یر ‪ 1620.4‬میباش د و س ایر‬
‫ستون ها به فیدبک وارد میشوند‪ .‬فایل سیمولینک ‪ [Link]‬ک ه در‬
‫شکل ‪ 12‬نم ایش داده ش ده اس ت‪ ،‬کن ترلر را روی سیس تم غ یر خطی پی اده‬
‫میکنیم‪.‬‬

‫شکل ‪ :12-2‬سیمولینک سیستم دارای کنترلر سروو‪-‬انتگرالگیر‬

‫‪23‬‬
‫فصل دوم‪ :‬خواسته های پروژه و نتایج‬

‫شکل ‪ 13‬و ‪ ،14‬به ترتیب رفتار بازو دوار و دو درجه آزادی دیگر را نم ایش می‪-‬‬
‫دهد‪ .‬مشاهده میشود که سیستم به خوبی مسیر را حرکت میکند ولی ب ا توج ه‬
‫به موتور و کنترل زوایای دیگر‪ ،‬کمی جهش وارون نش ان میده د ولی مس یر را‬
‫ردیابی میکند‪.‬‬

‫شکل ‪ :13-2‬تغییرات زاویه بازو دوار در جهت ردیابی سیگنال ورودی زاویه بازو دوار بر‬

‫حسب رادیان با استفاده از کنترلر سروو‬

‫شکل ‪ : 14-2‬تغییرات زوایای لینک های اول و دوم در جهت ردیابی سیگنال ورودی زاویه بازو‬

‫دوار بر حسب رادیان با استفاده از کنترلر سروو‬

‫‪24‬‬
‫فصل دوم‪ :‬خواسته های پروژه و نتایج‬

‫‪ -8-2‬تحلیل سیستم با معیار های متفاوت‬


‫الف) مقاوم بودن سیستم‬
‫برای آزمایش‪ ،‬پارامتر های سیستم را کمی تغییر میدهیم و ب ه ص ورت دلخ واه‬
‫برخی از آن ه ا را ح دود ‪ 10‬درص د کم ی ا زی اد ک نیم‪ .‬ب رای همین ب ه ص ورت‬
‫مستقیم‪ ،‬ضرایب موجود در معادالت ‪ 14‬ت ا ‪ 16‬را کمی تغی یر میدهیم‪( .‬این ب ه‬
‫مانند این است که برای مثال جرم بازو را ‪ 10‬درصد بیشتر کنیم‪).‬‬
‫(‬
‫‪2‬‬
‫̇‪q̈=0.8085 v−0.67 cos α α̈ −0.26 cos γ γ̈−4.5103 q̇+ 0.67 sin α α̇ + 0.26 sin γ γ‬‬
‫‪2‬‬
‫‪37‬‬
‫)‬
‫‪2‬‬
‫‪α̈ =−1.1266 cos α q̈−0.45 cos ( α −γ ) γ̈−0.35 α̇ −0.45 sin ( α −γ ) γ̇ +56 sin α‬‬ ‫(‬
‫‪38‬‬
‫)‬
‫‪2‬‬
‫‪γ̈ =−cos γ q̈−0.9096 cos ( α −γ ) α̈ −0.5 γ̇ +0.9096 sin ( α−γ ¿ ¿ α̇ + 49 sin γ‬‬ ‫(‬
‫‪39‬‬
‫)‬
‫در این مقادیر‪ ،‬تالش شد تا تنوع به طور کامل حف ظ ش ود و سیس تم تغی یرات‬
‫کاملی در خود ببیند‪ .‬با این حال‪ ،‬با استفاده از فایل ‪ [Link]‬که به مانن د‬
‫شکل ‪ 12‬است ولی مقادیر تغییر داشته‪ ،‬شبیه سازی را انجام داده و در ش کل‬
‫‪15‬و ‪ 16‬قابل رویت است‪ .‬در این شکل نمایان است که با توجه ب ه ح دود ‪10‬‬
‫درصد کاهش و افزایش‪ ،‬سیستم کنترلی رفتار مقاومی از خ ود ب ه نم ایش می‪-‬‬
‫گذارد‪.‬‬

‫‪25‬‬
‫فصل دوم‪ :‬خواسته های پروژه و نتایج‬

‫شکل ‪ :15-2‬تغییرات زاویه بازو دوار در جهت ردیابی سیگنال ورودی زاویه بازو دوار بر‬
‫حسب رادیان با استفاده از کنترلر سروو و وجود عدم قطعیت در مقادیر سیستم‬

‫شکل ‪ : 16-2‬تغییرات زوایای لینک های اول و دوم در جهت ردیابی سیگنال ورودی زاویه بازو‬
‫دوار بر حسب رادیان با استفاده از کنترلر سروو وجود عدم قطعیت در مقادیر سیستم‬

‫ب) وجود اغتشاش‬

‫‪26‬‬
‫فصل دوم‪ :‬خواسته های پروژه و نتایج‬

‫فرض میشود یک نیرو به انته ای لین ک دوم ک ه ‪ 0.3365‬م تر ط ول دارد‪ ،‬وارد‬


‫شود‪ .‬فرض میشود این نیرو‪ ،‬در جهت نیروی مماسی به حرکت زاویه ای لین ک‬
‫‪ 2‬وارد شود و در شکل ‪ 17‬نمایش داده شده است‪.‬‬

‫شکل ‪ :17-2‬بلوک دیاگرام ورودی اغتشاش به سیستم آونگ معکوس دوبل دوار‬

‫این اتفاق‪ ،‬باعث میشود به سمت راست معادالت ‪ 11‬تا ‪ ،13‬ی ک گش تاور ن یز‪،‬‬
‫اعمال شود‪.‬‬

‫(‬
‫‪1‬‬ ‫) ‪+ m2 ) ] q̈ +r ( m1 l 1 +m2 L1 ) cos α α̈ + m2 l 2 r γ̈ cos γ +brot q̇−r ( m1 l 1+ m2 L1 ) sin α α̇ −m2 l 2 r sin γ γ̇ =τ+ Fr cos ( γ + α‬‬
‫‪2‬‬ ‫‪2‬‬
‫‪40‬‬
‫)‬

‫‪q̈+ ( J 1+ m1 l 21+ m2 L21 ) α̈ + m2 L1 l 2 cos ( α −γ ) γ̈ −b 1 α̇ +m2 L1 l 2 sin ( α −γ ) γ̇ 2 −g ( m1 l 1+ m2 L1 ) sin α =F L2+ F L1 cos γ‬‬ ‫(‬
‫‪41‬‬
‫)‬

‫‪m2 l 2 r cos γ q̈+m2 L1 l 2 cos ( α −γ ) α̈ + ( J 2+ m2 l 22) γ̈ + b2 γ̇ −m2 L1 l 2 sin ( α −γ ) α̇ 2−g m2 l 2 sin γ =F L2‬‬ ‫(‬
‫‪42‬‬
‫)‬
‫بنابراین‪ ،‬معادالت ‪ 14‬تا ‪ 16‬به شکل زیر میشوند‪.‬‬
‫‪2‬‬
‫) ‪85 v−0.6138 cos α α̈ −0.2966 cos γ γ̈ −4.5103 q̇+0.6138 sin α α̇ +0.2966 sin γ γ̇ ± 14.8474 F cos ( γ +α‬‬
‫‪2‬‬
‫(‬
‫‪43‬‬

‫‪27‬‬
‫فصل دوم‪ :‬خواسته های پروژه و نتایج‬

‫)‬
‫‪2‬‬
‫) ‪os α q̈−0.4937 cos ( α −γ ) γ̈ −0.3038 α̇ −0.4937 sin ( α −γ ) γ̇ +51.2405 sin α ± ( 1.5586 F +0.9264 Fcosγ‬‬ ‫(‬
‫‪44‬‬
‫)‬
‫‪2‬‬
‫‪γ̈ =−cos γ q̈−0.9096 cos ( α −γ ) α̈ −0.5581 γ̇ + 0.9096 sin ( α −γ ¿ ¿ α̇ + 45.2093 sin γ ± 1.5586 F‬‬ ‫(‬
‫‪45‬‬
‫)‬
‫شبیه سازی این سیستم داخل فایل ‪ [Link]‬انجام ش ده اس ت‪ .‬ش کل‬
‫‪ 18‬سیستم تغییر یافته پلنت غیر خطی را نمایش میدهد و ‪ F‬ب ه عن وان ورودی‬
‫جدید به آن داده شده است‪.‬‬

‫شکل ‪ :18-2‬سیمولینک شبیه سازی سیستم غیر خطی در حضور اغتشاش‬

‫برای شبیه سازی‪ ،‬شکل ‪ 19‬پاسخ به نیروی ثابت ‪ 0.1‬نی وتن‪ ،‬ش کل ‪ 20‬پاس خ‬
‫به نیروی سینوسی دامنه ‪ 0.1‬نیوتن و فرک انس ‪ 0.1‬را ب رای ب ازو دوار نش ان‬
‫میدهد‪ .‬شکل های ‪ 21‬تا ‪ 22‬نیز به ت رتیب و ب ه همین ش کل‪ ،‬درج ات آزادی را‬
‫نمایش میدهند‪ .‬مشخص اس ت ک ه سیس تم ت ا این مق دار ن یرو ه ا‪ ،‬ب ه ش کل‬
‫مناسبی اغتشاش را از بین میبرد‪.‬‬

‫‪28‬‬
‫فصل دوم‪ :‬خواسته های پروژه و نتایج‬

‫شکل ‪ :19-2‬تغییرات زاویه بازو دوار در جهت ردیابی سیگنال ورودی زاویه بازو دوار بر‬
‫حسب رادیان با استفاده از کنترلر سروو و وجود اغتشاش از نوع نیروی ثابت ‪ 0.1‬نیوتن‬

‫نکته ای که در مورد نمودار درجات آزادی وجود دارد‪ ،‬این است که سیستم پس‬
‫از مدتی با فرکانس همسو شده و در اطراف نقطه تعادل ب ا فرک انس ح رکت‬
‫میکند‪.‬‬

‫شکل ‪ :20-2‬تغییرات زاویه بازو دوار در جهت ردیابی سیگنال ورودی زاویه بازو دوار بر‬
‫حسب رادیان با استفاده از کنترلر سروو و وجود اغتشاش از نوع نیروی سینوسی‬

‫‪29‬‬
‫فصل دوم‪ :‬خواسته های پروژه و نتایج‬

‫شکل ‪ :21-2‬تغییرات زوایای لینک ‪ 1‬و ‪ 2‬در جهت ردیابی سیگنال ورودی زاویه بازو دوار بر‬
‫حسب رادیان با استفاده از کنترلر سروو و وجود اغتشاش از نوع نیروی ثابت ‪ 0.1‬نیوتن‬

‫شکل ‪ :22-2‬تغییرات زوایای لینک ‪ 1‬و ‪ 2‬در جهت ردیابی سیگنال ورودی زاویه بازو دوار بر‬
‫حسب رادیان با استفاده از کنترلر سروو و وجود اغتشاش از نوع نیروی سینوسی‬

‫‪30‬‬
‫فصل دوم‪ :‬خواسته های پروژه و نتایج‬

‫‪ -9-2‬رویتگر مرتبه کامل‬


‫برای طراحی مشاهده گر کامل‪ ،‬با توجه ب ه اص ل ق رینگی‪ ،‬میش ود از ‪ AT‬ب ه‬
‫عنوان ماتریس حالت و ‪ C T‬به عنوان ماتریس ورودی استفاده کرد‪ .‬با توجه ب ه‬
‫نیاز به تخمین ‪ 0.5‬ثانیه و استفاده از روابط ‪ 27‬تا ‪ ω n=10.74 rad /s ،29‬و ‪ζ =0.74‬‬
‫بدست میآیند که از نتیجه آن‪ p1 ,2=−8 ±7.16 i ،‬قطب های غالب سیس تم هس تند‪.‬‬
‫قطب های دیگر را به مانند بخش طراحی کنترل با جانشانی قطب ها قرار می ‪-‬‬
‫دهیم‪ .‬تمامی این محاسبات در فای ل ‪ ObserverFull.m‬انج ام ش ده ان د‪ .‬ب ر این‬
‫اساس‪ ،‬مشاهده گر کامل ‪ k e‬از ترانهاده خروجی دستور ‪ place‬بدست میآید‪.‬‬

‫[‬ ‫]‬
‫‪8.74‬‬ ‫‪2.03‬‬ ‫‪0.65‬‬
‫‪1.75‬‬ ‫‪14.54‬‬ ‫‪−5.69‬‬ ‫(‬
‫‪ke= 0.43‬‬ ‫‪6.5‬‬ ‫‪17.81‬‬
‫‪46‬‬
‫‪7‬‬ ‫‪−110.08 −4.13‬‬
‫‪−9.64‬‬ ‫‪294.1 −81.64‬‬ ‫)‬
‫‪3.53 −27.33 145.38‬‬

‫حال که ضریب مشاهده گر ط راحی ش د‪ ،‬نی از اس ت ت ا خ ود مش اهده گ ر را‬


‫طراحی کنیم که خروجی ‪ ^x‬تخمین زده شده را به ما بدهد‪ .‬بنابراین‪ ،‬نی از اس ت‬
‫تا با استفاده از رابطه ‪ ،47‬خروجی سیستم را تخمین بزنیم‪.‬‬
‫(‬
‫] ‪x^˙ = A ^x +B u+ k e [ y−C ^x‬‬ ‫‪47‬‬
‫)‬
‫که این رابطه در شکل ‪ 23‬استفاده شده در سیمولینک قابل مشاهده است‪.‬‬

‫‪31‬‬
‫فصل دوم‪ :‬خواسته های پروژه و نتایج‬

‫شکل ‪ :23-2‬سیمولینک مشاهده گر کامل‬

‫شبیه سازی سیمولینک در فایل ‪ [Link]‬موجود است و ش کل ‪24‬‬


‫آن را نمایش میدهد‪.‬‬

‫شکل ‪ : 24-2‬سیمولینک سیستم کنترلی سروو برای پلنت غیر خطی با استفاده از مشاهده‬

‫گر کامل‬

‫نتایج شبیه سازی برای زوایای مختل ف در ادام ه قاب ل مش اهده هس تند‪ .‬ش بیه‬
‫سازی به جای ‪ 60‬ثانیه در ‪ 10‬ثانیه انج ام ش ده ت ا تف اوت ه ا ب ه خ وبی قاب ل‬
‫مشاهده باشند‪ .‬شکل ‪ 25‬تغییرات ‪ ،q‬شکل ‪ 26‬تغییرات ̇‪ ،q‬ش کل ‪ 27‬تغی یرات‬
‫زوایای آونگ ها و شکل ‪ 28‬سرعت آن ها را نمایش میدهد‪ .‬همه این نمودار ه ا‬

‫‪32‬‬
‫فصل دوم‪ :‬خواسته های پروژه و نتایج‬

‫شامل خروجی سیستم و مشاهده گر هس تند و ردی ابی درس تی را نم ایش می‪-‬‬
‫دهند‪.‬‬

‫شکل ‪ :25-2‬تغییرات زاویه بازو دوار خروجی پلنت و تخمین زده شده در جهت ردیابی‬
‫سیگنال ورودی زاویه بازو دوار بر حسب رادیان با استفاده از کنترلر سروو و مشاهده گر‬
‫کامل‬

‫‪33‬‬
‫فصل دوم‪ :‬خواسته های پروژه و نتایج‬

‫شکل ‪ :26-2‬تغییرات سرعت زاویه ای بازو دوار خروجی پلنت و تخمین زده شده در جهت‬
‫ردیابی سیگنال ورودی زاویه بازو دوار بر حسب رادیان با استفاده از کنترلر سروو و‬
‫مشاهده گر کامل‬

‫شکل ‪ :27-2‬تغییرات زوایای لینک های ‪ 1‬و ‪ 2‬خروجی پلنت و تخمین زده شده در جهت‬
‫ردیابی سیگنال ورودی زاویه بازو دوار بر حسب رادیان با استفاده از کنترلر سروو و‬
‫مشاهده گر کامل‬

‫‪34‬‬
‫فصل دوم‪ :‬خواسته های پروژه و نتایج‬

‫شکل ‪ :28-2‬تغییرات سرعت زاویه ای لینک های ‪ 1‬و ‪ 2‬خروجی پلنت و تخمین زده شده در‬
‫جهت ردیابی سیگنال ورودی زاویه بازو دوار بر حسب رادیان با استفاده از کنترلر سروو و‬
‫مشاهده گر کامل‬

‫‪-10-2‬رویت گر کاهش مرتبه‬


‫در این قس مت‪ ،‬ف رض میک نیم ک ه زوای ا یع نی س ه متغ یر ح الت اول قاب ل‬
‫مشاهده هستند و نیازی به تخمین آن ها نیست‪ .‬بنابراین‪ ،‬ما م اتریس ه ای ‪ A‬و‬
‫‪ B‬را باز میکنیم و برای سیستم بر حسب خط ا‪ ،‬مش اهده گ ر درس ت میک نیم‪.‬‬
‫روابط جداسازی به شکل زیر هستند‪:‬‬
‫(‬
‫‪x‬‬
‫[] [ ][‬
‫‪xb‬‬
‫̇‪x‬‬
‫‪ẋ b‬‬
‫‪A‬‬
‫‪x= a → ẋ= a = aa‬‬
‫‪Aba‬‬ ‫] [ ] []‬
‫‪A ab x a Ba‬‬
‫‪+‬‬
‫‪A bb x b Bb‬‬
‫‪v‬‬ ‫‪48‬‬
‫)‬

‫‪y=C‬‬
‫][‬
‫‪xa‬‬
‫‪xb‬‬
‫(‬
‫‪49‬‬
‫)‬
‫بر این اساس از روی ماتریس حالت داریم‪:‬‬

‫] [ ] [‬
‫‪0 0 0‬‬ ‫‪1 0 0‬‬ ‫(‬
‫‪A aa= 0 0 0 , A ab= 0 1 0‬‬
‫‪50‬‬
‫‪0 0 0‬‬ ‫‪0 0 1‬‬
‫)‬

‫‪35‬‬
‫فصل دوم‪ :‬خواسته های پروژه و نتایج‬

‫[‬ ‫[ ]‬ ‫]‬
‫‪0 −103.8‬‬ ‫‪1.7‬‬ ‫‪−14.6‬‬ ‫‪0.6 −0.02‬‬
‫‪Aba= 0 211.7 −42.4 , Abb = 16.8 −1.25 0.52‬‬
‫‪0 −88.2‬‬ ‫‪81.9‬‬ ‫‪−0.58 0.52 −1.01‬‬

‫] [ ][‬
‫‪0‬‬ ‫‪2.62‬‬ ‫(‬
‫‪Ba= 0 , B b= −3.01‬‬
‫‪51‬‬
‫‪0‬‬ ‫‪0.12‬‬
‫)‬

‫ماتریس های حالت خطا نیز از روابط زیر بدست میآیند‪.‬‬


‫(‬
‫‪Bζ =Bb −k e Ba‬‬ ‫‪52‬‬
‫)‬
‫‪Aζ =A bb−k e A ab‬‬ ‫(‬
‫‪53‬‬
‫)‬
‫‪k zeta = Aba−k e A aa‬‬ ‫(‬
‫‪54‬‬
‫)‬
‫برای بدست آوردن این ماتریس ها‪ ،‬نیاز است ابتدا ضریب مش اهده گ ر کمین ه‬
‫را ط راحی ک نیم‪ .‬ب ه مانن د بخش قب ل ولی اینب ار ب رای ‪ ATbb‬و ‪ ATab‬ب ه عن وان‬
‫ماتریس های حالت و ورودی‪ ،‬مشاهده گر را طراحی میکنیم‪ .‬قطب های غ الب‬
‫سیس تم را ب رای تخمین ‪ 1‬ثانی ه‪ ،‬ب ه مانن د بخش قب ل بدس ت میآوریم‪ .‬اینب ار‬
‫‪ ω n=5.37 rad / s‬و ‪ ζ =0.74‬بدست میآیند‪ .‬پس قطب های غالب ‪ −4 ±3.58 i‬هس تند و‬
‫قطب آخ ر را ‪ -9‬ق رار میدهیم‪ .‬ب ر این اس اس‪ ،‬ب ا اس تفاده از دس تور ‪،place‬‬
‫مقدار ضریب ' ‪ k e‬بدست میآید و ترانهاده آن ض ریب مش اهده گ ر می نیموم می‪-‬‬
‫باشد‪.‬‬

‫[‬ ‫]‬
‫‪−10.6 −2.97 −0.02‬‬ ‫(‪55‬‬
‫‪k e= 20.35 2.74‬‬ ‫‪0.52‬‬
‫‪−0.58 0.52‬‬ ‫‪8‬‬ ‫)‬

‫بدین ترتیب برای ماتیس های حالت خطا داریم‪:‬‬

‫[‬ ‫] [ ]‬
‫‪−4‬‬ ‫‪3.58 0‬‬ ‫‪2.62‬‬ ‫(‬
‫‪Aζ = −3.58 −4‬‬ ‫‪0 , B ζ = −3.01‬‬ ‫‪56‬‬
‫‪0‬‬ ‫‪0 −9‬‬ ‫‪0.12‬‬
‫)‬
‫‪36‬‬
‫فصل دوم‪ :‬خواسته های پروژه و نتایج‬

‫[‬ ‫]‬
‫‪0 3.58‬‬ ‫‪1.71‬‬
‫‪k ζ = 0 211.7 −42.4‬‬
‫‪0 −88.2 81.9‬‬

‫تم امی این محاس بات‪ ،‬در فای ل متلب ‪ ObserverMin.m‬ذخ یره ش ده ان د و این‬
‫فایل قبل از شبیه سازی بای د اج را ش ود‪ .‬ش کل ‪ ،29‬مش اهده گ ر را نم ایش‬
‫میدهد که داخل فایل ‪ ،[Link]‬ب رای ش بیه س ازی ط راحی ش ده‬
‫است‪ .‬شکل کلی مدار به مانند ش کل بخش قبلی اس ت‪ .‬در ادام ه‪ ،‬ش کل ‪30‬‬
‫تغییرات ‪ ،q‬شکل ‪ 31‬تغییرات ̇‪ ،q‬شکل ‪ 32‬تغییرات زوایای آونگ ها و شکل ‪33‬‬
‫سرعت آن ها را نمایش میدهد‪ .‬همه این نمودار ه ا ش امل خ روجی سیس تم و‬
‫مشاهده گر هستند و ردیابی درستی را نمایش میدهند‪ .‬یک نکت ه این اس ت ک ه‬
‫در تمام این ش بیه س ازی ه ا‪ ،‬از قطب ه ای س ریع اس تفاده ک ردیم و کن ترلر‬
‫طوری است که به خوبی مسیر را در هر شرایطی دنب ال میکن د‪ .‬اگ ر از قطب‬
‫های کند استفاده شود که در همه فایل ها قابل تغییر هستند‪ ،‬به وض وح تف اوت‬
‫رفتاری نمایان میشود‪.‬‬

‫شکل ‪ :29-2‬سیمولینک مشاهده گر کاهش مرتبه‬

‫‪37‬‬
‫فصل دوم‪ :‬خواسته های پروژه و نتایج‬

‫شکل ‪ :30-2‬تغییرات زاویه بازو دوار خروجی پلنت و تخمین زده شده در جهت ردیابی‬
‫سیگنال ورودی زاویه بازو دوار بر حسب رادیان با استفاده از کنترلر سروو و مشاهده گر‬
‫کمینه‬

‫شکل ‪ :31-2‬تغییرات سرعت زاویه ای بازو دوار خروجی پلنت و تخمین زده شده در جهت‬
‫ردیابی سیگنال ورودی زاویه بازو دوار بر حسب رادیان با استفاده از کنترلر سروو و‬
‫مشاهده گر کمینه‬

‫‪38‬‬
‫فصل دوم‪ :‬خواسته های پروژه و نتایج‬

‫شکل ‪ :32-2‬تغییرات زوایای لینک های ‪ 1‬و ‪ 2‬خروجی پلنت و تخمین زده شده در جهت‬

‫ردیابی سیگنال ورودی زاویه بازو دوار بر حسب رادیان با استفاده از کنترلر سروو و‬

‫مشاهده گر کمینه‬

‫‪39‬‬
‫فصل دوم‪ :‬خواسته های پروژه و نتایج‬

‫شکل ‪ :33-2‬تغییرات سرعت زاویه ای لینک های ‪ 1‬و ‪ 2‬خروجی پلنت و تخمین زده شده در‬

‫جهت ردیابی سیگنال ورودی زاویه بازو دوار بر حسب رادیان با استفاده از کنترلر سروو و‬

‫مشاهده گر کمینه‬

‫‪ -11-2‬فیدبک حالت و رویت گر کاهش مرتبه یافته‬


‫هر دو خواسته این بند‪ ،‬چه طراحی فیدبک حالت و چه رویت گ ر ک اهش مرتب ه‬
‫یافته‪ ،‬در قسمت های قبل ارائه شده اند‪ .‬تفاوت ه ایی ک ه وج ود دارن د زم ان‬
‫نشس ت متف اوت و ورودی ه ای گون اگون ب رای ه ر ‪ 3‬درج ه آزادی سیس تم‬
‫هستند‪ .‬ابتدا به سراغ فیدبک حالت میرویم‪ .‬زمان نشست ‪ 1.5‬ثانی ه ق رار داده‬
‫شده است‪ .‬از روابط قسمت های قبل بدست میآید که ‪ ω n=3.58 rad / s‬و ض ریب‬
‫میرایی به مانند قسمت ه ای قب ل اس ت‪ .‬بن ابراین قطب ه ای غ الب سیس تم‬
‫‪ −2.67 ± 2.39 i‬قرار میگیرند‪ .‬با استفاده از دستور ‪ ،place‬کنترلر سیستم به ش کل‬
‫زیر بدست میآید‪.‬‬
‫(‬
‫]‪k =[13.85 −366.25 537.36 6.4 −2.17 59.58‬‬ ‫‪57‬‬
‫)‬
‫رویت گر کاهش مرتبه یافته همان رویتگر قسمت قبل‪ ،‬یع نی رواب ط ‪ 55‬و ‪56‬‬
‫قرار داده شده است‪ .‬تم ام محاس بات در ‪ FinalFile.m‬قاب ل مش اهده و اج را‬
‫‪40‬‬
‫فصل دوم‪ :‬خواسته های پروژه و نتایج‬

‫هستند‪ .‬قرار است در این قسمت زوایای ورودی‪ ،‬مق ادیر مطل وب ‪،q d=45 sin πt‬‬
‫)‪ α d =5u (t‬و ‪ γ d =0‬درج ه را دنب ال کنن د‪ .‬ب ر این اس اس‪ ،‬ش کل س یمولینک این‬
‫قسمت (فایل ‪ )[Link]‬به مانند زیر میشود‪.‬‬

‫شکل ‪ :34-2‬سیمولینک سیستم غیر خطی با کنترلر فیدبک حالت و مشاهده گر کمینه‬

‫در این شکل‪ ،‬نشان داده میشود که برای ردیابی بهتر‪ ،‬از یک انتگرال گیر ب رای‬
‫دو متغیر اول با حدس و خطا استفاده کرده ایم و متغ یر س وم چ ون ب ه مانن د‬
‫رگوالتور نیاز داریم‪ ،‬ورودی نگذاشته ایم‪ .‬شکل ‪ 35 ،34‬و ‪ 36‬رفتار متغیر های‬
‫اول تا سوم را به ما نشان میدهند‪.‬‬

‫شکل ‪ : 35-2‬تغییرات زاویه بازو دوار در جهت ردیابی ورودی های مطلوب بر حسب رادیان با‬
‫استفاده از کنترلر فیدبک حالت همراه انتگرالگیر و مشاهده گر کمینه‬

‫‪41‬‬
‫فصل دوم‪ :‬خواسته های پروژه و نتایج‬

‫شکل ‪ :36-2‬تغییرات زاویه لینک اول در جهت ردیابی ورودی های مطلوب بر حسب رادیان با‬
‫استفاده از کنترلر فیدبک حالت همراه انتگرالگیر و مشاهده گر کمینه‬

‫شکل ‪ : 37-2‬تغییرات زاویه لینک دوم در جهت ردیابی ورودی های مطلوب بر حسب رادیان با‬
‫استفاده از کنترلر فیدبک حالت همراه انتگرالگیر و مشاهده گر کمینه‬

‫مشاهده میشود که بازو دوار‪ ،‬خطای قاب ل مالحظ ه ای دارد‪ .‬از ط رفی متغ یر‬
‫دوم نمیتواند در حدود ‪ 5‬درج ه ث ابت بمان د و متغ یر س وم ح ول نقط ه تع ادل‬
‫نوسان میکند‪ .‬از جایی که سیستم دارای ی ک ورودی اس ت‪ ،‬انتظ ار نمیرود ک ه‬

‫‪42‬‬
‫فصل دوم‪ :‬خواسته های پروژه و نتایج‬

‫بشود هر ‪ 3‬متغیر را در مسیر دلخواه کنترل کرد‪ .‬این نکته زمانی مش خص می‪-‬‬
‫شود که اگر بخواهیم برای سیستم سروو طراحی کنیم‪ ،‬سیس تم نه ایی کن ترل‬
‫پذیر نخواهد بود و در نهایت‪ ،‬نمیشود برای آن کن ترلری درس ت ک رد‪ .‬بن ابراین‪،‬‬
‫برای اینکه بتوان سیستم را ب ه خ وبی کن ترل ک رد‪ ،‬دو راه قاب ل انج ام اس ت‪.‬‬
‫روش اول افزودن ورودی روی مفصل دوم و روش دیگر کنترل ورودی اول ب ه‬
‫مانند قسمت های قبل و در نظر گرفتن رگوالت ور ب رای پان دول ه ای معک وس‬
‫می باشد‪.‬‬

‫‪43‬‬
‫فصل چهارم‪ :‬جمع‌بندی و نتیجه‌گیری‬

‫فصل سوم‬
‫جمع‌بندی و نتیجه‌گیری‬

‫‪44‬‬
‫فصل چهارم‪ :‬جمع‌بندی و نتیجه‌گیری‬

‫‪ -1-3‬جمع‌بندی‬
‫پاندول دوتایی معکوس چرخشی به عنوان یکی از سیستم‌های مکانیکی پیچی ده‬
‫و جذاب‪ ،‬نقشی کلیدی در پژوهش‌ها و کاربردهای مهندس ی ایف ا ک رده اس ت‪.‬‬
‫این سیستم‪ ،‬به دلیل ساختار چند درجه آزادی و رفتارهای غیرخطی آن‪ ،‬ب ه ی ک‬
‫بستر مناسب ب رای آزم ایش و توس عه تئوری‌ه ای کن ترل پیش رفته و دینامی ک‬
‫تب دیل ش ده اس ت‪ .‬در این جمع‌بن دی‪ ،‬نگ اهی ج امع ب ه مف اهیم‪ ،‬چالش‌ه ا‪،‬‬
‫دستاوردها و کاربردهای این سیس تم خ واهیم داش ت ت ا اهمیت و پتانس یل‌های‬
‫پژوهشی و کاربردی آن را بهتر درک کنیم‪.‬‬

‫‪ -2-3‬مفاهیم اصلی‬
‫پاندول دوتایی معکوس چرخشی از دو پان دول و ی ک ب ازوی چرخش ی تش کیل‬
‫شده است که هر یک از این اجزا می‌توان د ب ه ط ور مس تقل ح رکت کن د‪ .‬این‬
‫سیستم دارای چندین درجه آزادی است که منجر به رفتارهای دینامیکی پیچی ده‬
‫و غیرخطی می‌شود‪ .‬معادالت حرکت این سیستم از طریق روش اویلر‪-‬الگران ژ‬
‫استخراج می‌شوند که شامل انرژی‌های جنبشی و پتانسیل اجزا مختلف سیستم‬
‫است‪ .‬این معادالت دیفرانسیل غیرخطی‪ ،‬پایه و اساس تحلیل‌ه ای دین امیکی و‬
‫طراحی کنترل‌کننده‌ها را تشکیل می‌دهند‪.‬‬

‫‪ -3-3‬چالش‌های موجود‬
‫پاندول دوتایی معکوس چرخشی به دلیل ناپایداری ذاتی و رفتاره ای غ یرخطی‬
‫خود‪ ،‬با چالش‌های متعددی در حوزه کنترل و پایدارسازی مواجه است‪ .‬از جمله‬
‫این چالش‌ها می‌توان به موارد زیر اشاره کرد‪:‬‬
‫ناپایداری ذاتی‪ :‬این سیس تم ب ه ط ور ط بیعی ناپای دار اس ت و حف ظ‬ ‫‪.1‬‬
‫تعادل آن نیازمند طراحی کنترل‌کننده‌های دقیق و پیچیده است‪.‬‬
‫رفتار غیرخطی‪ :‬معادالت حرکت سیستم غیرخطی هس تند و این ام ر‬ ‫‪.2‬‬
‫تحلیل و طراحی کنترل‌کننده‌ها را دشوار می‌سازد‪.‬‬
‫اغتشاشات و ع‪RR‬دم قطعیت‌ه‪RR‬ا‪ :‬وج ود اغتشاش ات محیطی و ع دم‬ ‫‪.3‬‬
‫قطعیت در پارامترهای سیستم‪ ،‬عملکرد کنترل‌کننده‌ها را تحت تأثیر قرار‬
‫می‌دهد و نیازمند روش‌های مقاوم و تطبیقی است‪.‬‬

‫‪45‬‬
‫فصل چهارم‪ :‬جمع‌بندی و نتیجه‌گیری‬

‫‪ -4-3‬دستاوردهای پژوهشی‬
‫پژوهش‌های انجام شده بر روی پاندول دوتایی معکوس چرخش ی ب ه توس عه و‬
‫بهبود روش‌های مختلف کنترل کم ک کرده‌ان د‪ .‬ب رخی از دس تاوردهای مهم این‬
‫پژوهش‌ها عبارتند از‪:‬‬
‫توس‪RRR‬عه روش‌ه‪RRR‬ای کن‪RRR‬ترل خطی و غ‪RRR‬یرخطی‪ :‬اس تفاده از‬ ‫‪.1‬‬
‫تئوری‌های کنترل پیشرفته مانن د کن ترل فی دبک ح الت‪ ،‬کن ترل لغزش ی‪،‬‬
‫کنترل تطبیقی و کنترل فازی برای پایدارسازی و بهبود عملکرد سیستم‪.‬‬
‫شبیه‌سازی‌های عددی‪ :‬انجام شبیه‌سازی‌های دقی ق و گس ترده ب رای‬ ‫‪.2‬‬
‫بررس ی رفت ار دین امیکی سیس تم و ارزی ابی عملک رد کنترل‌کنن ده‌ها در‬
‫شرایط مختلف‪.‬‬
‫طراحی رویتگرها‪ :‬توس عه رویتگره ای مرتب ه کام ل و ک اهش مرتب ه‬ ‫‪.3‬‬
‫یافت ه ب رای تخمین دقی ق متغیره ای ح الت سیس تم و بهب ود عملک رد‬
‫کنترل‌کننده‌ها‪.‬‬

‫‪ -5-3‬کاربردهای عملی‬
‫پاندول دوت ایی معک وس چرخش ی دارای کاربرده ای گس ترده‌ای در زمینه‌ه ای‬
‫مختلف مهندسی است‪ .‬برخی از مهم‌ترین کاربردهای این سیستم عبارتند از‪:‬‬
‫آم‪RR‬وزش و پ‪RR‬ژوهش‪ :‬این سیس تم ب ه عن وان ی ک اب زار آموزش ی و‬ ‫‪.1‬‬
‫پژوهشی مهم در دوره‌های مهندسی کنترل و دینامیک استفاده می‌شود و‬
‫به دانشجویان و پژوهش گران کم ک می‌کن د ت ا مف اهیم اساس ی کن ترل‬
‫غیرخطی و پایداری را به خوبی درک کنند‪.‬‬
‫رباتیک‪ :‬پاندول دوتایی معکوس چرخشی به عنوان یک م دل پای ه ب رای‬ ‫‪.2‬‬
‫طراحی و کنترل ربات‌هایی که دارای بازوهای چن د درج ه آزادی هس تند‪،‬‬
‫استفاده می‌شود‪ .‬این سیستم می‌تواند به بهبود عملکرد ربات‌ها در انجام‬
‫وظایف پیچیده کمک کند‪.‬‬
‫هوافضا‪ :‬در صنایع هوافضا‪ ،‬کنترل و پایدارسازی سیستم‌هایی که دارای‬ ‫‪.3‬‬
‫بخش‌های متحرک و چند درجه آزادی هستند‪ ،‬از اهمیت ویژه‌ای برخوردار‬
‫است‪ .‬پاندول دوتایی معکوس چرخشی می‌تواند به عنوان یک م دل پای ه‬
‫برای توس عه و آزم ایش روش‌ه ای کن ترل این ن وع سیس تم‌ها اس تفاده‬
‫شود‪.‬‬

‫‪46‬‬
‫فصل چهارم‪ :‬جمع‌بندی و نتیجه‌گیری‬

‫خودروس‪RR‬ازی‪ :‬در ص نعت خودروس ازی‪ ،‬سیس تم‌های تعلی ق و کن ترل‬ ‫‪.4‬‬
‫پایداری خودروها نیازمند روش‌های کنترل پیشرفته هستند‪ .‬پاندول دوتایی‬
‫معکوس چرخشی می‌تواند به عنوان یک مدل آزمایشی برای توس عه این‬
‫سیستم‌ها استفاده شود‪.‬‬

‫‪ -6-3‬فرصت‌های پژوهشی آینده‬


‫با وجود پیشرفت‌های قاب ل توج ه در کن ترل و تحلی ل پان دول دوت ایی معک وس‬
‫چرخشی‪ ،‬هنوز فرصت‌های بس یاری ب رای پ ژوهش و توس عه روش‌ه ای جدی د‬
‫وجود دارد‪ .‬برخی از این فرصت‌ها عبارتند از‪:‬‬
‫توسعه کنترل‌کننده‌های مقاوم‪ :‬طراحی کنترل‌کننده‌هایی که بتوانند‬ ‫‪.1‬‬
‫در برابر اغتشاشات و عدم قطعیت‌های مختلف مقاوم باش ند و عملک رد‬
‫سیستم را در شرایط واقعی بهبود بخشند‪.‬‬
‫استفاده از روش‌های یادگیری ماشین‪ :‬به ک ارگیری الگوریتم‌ه ای‬ ‫‪.2‬‬
‫یادگیری ماشین و شبکه‌های عصبی برای بهبود عملک رد کنترل‌کنن ده‌ها و‬
‫تطبیق با تغییرات دینامیکی سیستم‪.‬‬
‫بهینه‌سازی چندهدفه‪ :‬توسعه روش‌ه ای بهینه‌س ازی چندهدف ه ب رای‬ ‫‪.3‬‬
‫دستیابی ب ه کنترل‌کنن ده‌هایی ک ه بتوانن د تع ادلی بین معیاره ای مختل ف‬
‫عملکردی برقرار کنند‪.‬‬
‫مطالعه اثرات مقیاس‪ :‬بررسی اثرات مقیاس و اندازه اج زا مختل ف‬ ‫‪.4‬‬
‫سیستم بر رفتار دینامیکی و عملکرد کنترل‌کننده‌ها‪.‬‬

‫‪ -7-3‬نتیجه‌گیری نهایی‬
‫پاندول دوت ایی معک وس چرخش ی ب ه عن وان ی ک سیس تم مک انیکی پیچی ده و‬
‫چالش‌برانگیز‪ ،‬نقش مهمی در توسعه و آزم ایش روش‌ه ای کن ترل پیش رفته و‬
‫تئوری‌های پایداری ایفا کرده است‪ .‬این سیستم‪ ،‬با ارائ ه مس ائل و چالش‌ه ای‬
‫متنوع‪ ،‬به پژوهشگران و مهندسان کمک می‌کند تا راه‌حل‌های ن وآورانه‌ای ب رای‬
‫کنترل و پایدارسازی سیستم‌های غیرخطی و ناپای دار ارائ ه دهن د‪ .‬پژوهش‌ه ا و‬
‫دستاوردهای انجام شده در این زمینه نش ان‌دهنده پتانس یل ب االی این سیس تم‬
‫برای توسعه روش‌های کنترل مقاوم‪ ،‬تطبیقی و پیشرفته است‪.‬‬

‫‪47‬‬
‫منابع و مراجع‬
Quanser Inc. Rotary Pendulum User Manual, 2012. [1]
Quanser Inc. SRV02 User Manual, 2012. [2]
Hany F. Mokbel Amr A. Roshdy Yu zheng Lin & Tongyu Wang. (2012). [3]
Stabilization of real inverted pendulum using pole separation factor.
Narinder Singh & Sandeep Kumar Yadav. (2012). Comparison of LQR and [4]
PD controller for stabilizing double inverted pendulum system.
Dimple J. Vora & Ms. Nabanita Basu. (2016). Modelling and simulation of [5]
inverted pendulum using internal model control.
F. Faizan, F. Farid, M. Rehan, and et al., “Implementation of discrete PID on [6]
inverted pendulum” Second international conference on education
technology and computer (ICETC), vol.1(1), pp. 48- 51,2010.
Baili Zhang and Jiang Guo Wang, “The analysis and simulation of first order [7]
inverted pendulum control system based on LQR” Third int. symposium on
information processing (ISIP), pp. 447-449, 2010.
Hu Lingyan, Liu Guoping, Liu Xiaoping, and et al., “The computer [8]
simulation and real time stabilization control for the inverted pendulum
system based on LQR” Fifth Int. conference on natural computation ICNC,
vol. 6, pp. 438-442, 2009.
Yanmei Liu, Zhen Chen, Dingyu Xue, and et al., “Real-time controlling of [9]
inverted pendulum by fuzzy logic” IEEE int. conference on automation and
logistics (ICAL), pp. 1180-1183, 2009
Chih Hui Chiu and Chun Chieh Chang “Wheeled inverted pendulum control [10]
based on model-free fuzzy control strategy” Proceeding of SICE annual
conference, pp. 1604-1609, 2010.
Abstract
Dynamic Model Analysis of the Rotary Double Inverted Pendulum

This section analyzes the dynamic model of the rotary double inverted
pendulum. The equations of motion for the system are derived using the
Euler-Lagrange method, and the dynamic behavior of the rotary arm and the
two attached pendulums is examined. System parameters, forces, and initial
conditions are meticulously analyzed to provide an accurate model of the
system's behavior. This modeling forms the basis for designing advanced
controllers and improving system stability.

Keywords: Rotary Double Inverted Pendulum, controller, viewer, Simulink simulation,


state feedback.
Tehran university

Department of Mechanical Engineering

Course Name: Advanced Control

Exam title: Double rotating inverted pendulum system

Lecturer: Dr. Farzad Ayatollah Shirazi

Student: Mohammad Kaveh Bakshaish

June 2024

‫پیوست‬
.‫در این بخش کدهای متلب هر قسمت به ترتیب آورده شده است‬
)2‫بخش‬
%% Run the Simulink File First!

Q = out.Q;
ALPHA = [Link];
GAMMA = [Link];
V = out.V;

figure
plot(Q,'linewidth',2)
grid on
hold on
plot(V,'-.','linewidth',2)
xlabel('time (s)','Interpreter','latex','FontSize',15)
ylabel('q (rad)','Interpreter','latex','FontSize',15)

figure
plot(ALPHA,'linewidth',2)
grid on
hold on
plot(V,'-.','linewidth',2)
xlabel('time (s)','Interpreter','latex','FontSize',15)
ylabel('$\alpha$ (rad)','Interpreter','latex','FontSize',15)

figure
plot(GAMMA,'linewidth',2)
grid on
hold on
plot(V,'-.','linewidth',2)
xlabel('time (s)','Interpreter','latex','FontSize',15)
ylabel('$\gamma$ (rad)','Interpreter','latex','FontSize',15)

3‫)بخش‬
clc
clear

A = [0 0 0 1 0 0;
0 0 0 0 1 0;
0 0 0 0 0 1;
0 -103.7924 1.7156 -14.6318 0.6154 -0.0212;
0 211.7365 -42.3798 16.7688 -1.2554 0.5232;
0 -88.2477 81.9312 -0.5772 0.5232 -1.0115];
B = [0;0;0;26.2209;-30.0506;1.0343];
C = [1 0 0 0 0 0;0 1 0 0 0 0;0 0 1 0 0 0];
D = 0;
sys = ss(A,B,C,D);
pole(sys)

5 ‫)بخش‬
‫کنترل پذیری‬
clc
clear

A = [0 0 0 1 0 0;
0 0 0 0 1 0;
0 0 0 0 0 1;
0 -103.7924 1.7156 -14.6318 0.6154 -0.0212;
0 211.7365 -42.3798 16.7688 -1.2554 0.5232;
0 -88.2477 81.9312 -0.5772 0.5232 -1.0115];
B = [0;0;0;26.2209;-30.0506;1.0343];
C = [1 0 0 0 0 0;0 1 0 0 0 0;0 0 1 0 0 0];
D = 0;

Cc = ctrb(A,B)
rank(Cc)

‫رویت پذیری‬
clc
clear

A = [0 0 0 1 0 0;
0 0 0 0 1 0;
0 0 0 0 0 1;
0 -103.7924 1.7156 -14.6318 0.6154 -0.0212;
0 211.7365 -42.3798 16.7688 -1.2554 0.5232;
0 -88.2477 81.9312 -0.5772 0.5232 -1.0115];
B = [0;0;0;26.2209;-30.0506;1.0343];
C = [1 0 0 0 0 0;0 1 0 0 0 0;0 0 1 0 0 0];
D = 0;

O = obsv(A,C)
rank(O)
‫محل قرار گیری قطب ها‬
clc
clear

%% State Space
A = [0 0 0 1 0 0;
0 0 0 0 1 0;
0 0 0 0 0 1;
0 -103.7924 1.7156 -14.6318 0.6154 -0.0212;
0 211.7365 -42.3798 16.7688 -1.2554 0.5232;
0 -88.2477 81.9312 -0.5772 0.5232 -1.0115];
B = [0;0;0;2.62;-3.01;0.12];
C = [1 0 0 0 0 0;0 1 0 0 0 0;0 0 1 0 0 0];

%% Slow and Fast Response related Poles

ts_slow = 2.5;
ts_fast = 0.5;

% 3% Maximum Overshoot:
M_o = 0.03;
syms zeta
eqn = M_o == exp(-zeta*pi/sqrt(1-zeta^2));
zeta = double(solve(eqn,zeta));
zeta = zeta(zeta>0);

% Slow Mode:
ts = ts_slow;
wn = 4/(ts*zeta);
d_poles_slow = wn*[-zeta+sqrt(1-zeta^2)*1i -zeta-sqrt(1-zeta^2)*1i];
poles_slow = [d_poles_slow -9 -10 -11 -12];

% Fast Mode:
ts = ts_fast;
wn = 4/(ts*zeta);
d_poles_fast = wn*[-zeta+sqrt(1-zeta^2)*1i -zeta-sqrt(1-zeta^2)*1i];
poles_fast = [d_poles_fast -9 -10 -11 -12];

%% Feedback Controller Gain

k_slow = place(A,B,poles_slow);
k_fast = place(A,B,poles_fast);

7 ‫)بخش‬
clc
clear
%% State Space

A = [0 0 0 1 0 0;
0 0 0 0 1 0;
0 0 0 0 0 1;
0 -103.7924 1.7156 -14.6318 0.6154 -0.0212;
0 211.7365 -42.3798 16.7688 -1.2554 0.5232;
0 -88.2477 81.9312 -0.5772 0.5232 -1.0115];
B = [0;0;0;2.62;-3.01;0.12];
C = [1 0 0 0 0 0;0 1 0 0 0 0;0 0 1 0 0 0];

%% Slow and Fast Response related Poles

ts_slow = 2.5;
ts_fast = 0.5;

% 3% Maximum Overshoot:
M_o = 0.03;
syms zeta
eqn = M_o == exp(-zeta*pi/sqrt(1-zeta^2));
zeta = double(solve(eqn,zeta));
zeta = zeta(zeta>0);

% Slow Mode:
ts = ts_slow;
wn = 4/(ts*zeta);
d_poles_slow = wn*[-zeta+sqrt(1-zeta^2)*1i -zeta-sqrt(1-zeta^2)*1i];
poles_slow = [d_poles_slow -9 -10 -11 -12];

% Fast Mode:
ts = ts_fast;
wn = 4/(ts*zeta);
d_poles_fast = wn*[-zeta+sqrt(1-zeta^2)*1i -zeta-sqrt(1-zeta^2)*1i];
poles_fast = [d_poles_fast -9 -10 -11 -12];

%% StateSpace Change

E = C(1,:);
Abar = [A zeros(6,1);-E 0];
Bbar = [B;0];
kbar = place(Abar,Bbar,[poles_fast -13]);
k2 = -kbar(end);
k1 = kbar(1:end-1);
9‫)بخش‬
clc
clear

%% State Space

A = [0 0 0 1 0 0;
0 0 0 0 1 0;
0 0 0 0 0 1;
0 -103.7924 1.7156 -14.6318 0.6154 -0.0212;
0 211.7365 -42.3798 16.7688 -1.2554 0.5232;
0 -88.2477 81.9312 -0.5772 0.5232 -1.0115];
B = [0;0;0;2.62;-3.01;0.12];
C = [1 0 0 0 0 0;0 1 0 0 0 0;0 0 1 0 0 0];

%% Observer states
Ao = A';
Bo = C';

%% Desired Poles

ts_est = 0.5;

M_o = 0.03;
syms zeta
eqn = M_o == exp(-zeta*pi/sqrt(1-zeta^2));
zeta = double(solve(eqn,zeta));
zeta = zeta(zeta>0);

ts = ts_est;
wn = 4/(ts*zeta);
d_poles_est = wn*[-zeta+sqrt(1-zeta^2)*1i -zeta-sqrt(1-zeta^2)*1i];
poles_est = [d_poles_est -9 -10 -11 -12];

%% Observer Gain
ke = place(Ao,Bo,poles_est);
ke = ke';

%% Slow and Fast Response related Poles

ts_slow = 2.5;
ts_fast = 0.5;
% 3% Maximum Overshoot:
M_o = 0.03;
syms zeta
eqn = M_o == exp(-zeta*pi/sqrt(1-zeta^2));
zeta = double(solve(eqn,zeta));
zeta = zeta(zeta>0);

% Slow Mode:
ts = ts_slow;
wn = 4/(ts*zeta);
d_poles_slow = wn*[-zeta+sqrt(1-zeta^2)*1i -zeta-sqrt(1-zeta^2)*1i];
poles_slow = [d_poles_slow -9 -10 -11 -12];

% Fast Mode:
ts = ts_fast;
wn = 4/(ts*zeta);
d_poles_fast = wn*[-zeta+sqrt(1-zeta^2)*1i -zeta-sqrt(1-zeta^2)*1i];
poles_fast = [d_poles_fast -9 -10 -11 -12];

%% StateSpace Change

E = C(1,:);
Abar = [A zeros(6,1);-E 0];
Bbar = [B;0];
kbar = place(Abar,Bbar,[poles_fast -13]);
k2 = -kbar(end);
k1 = kbar(1:end-1);

10 ‫)بخش‬
clc
clear

%% State Space

A = [0 0 0 1 0 0;
0 0 0 0 1 0;
0 0 0 0 0 1;
0 -103.7924 1.7156 -14.6318 0.6154 -0.0212;
0 211.7365 -42.3798 16.7688 -1.2554 0.5232;
0 -88.2477 81.9312 -0.5772 0.5232 -1.0115];
B = [0;0;0;2.62;-3.01;0.12];
C = [1 0 0 0 0 0;0 1 0 0 0 0;0 0 1 0 0 0];

%% Minimum-Observer states
A_aa = A(1:3,1:3);
A_ab = A(1:3,4:6);
A_ba = A(4:6,1:3);
A_bb = A(4:6,4:6);
B_a = B(1:3,1);
B_b = B(4:6,1);

Ao = A_bb';
Bo = A_ab';
%% Desired Poles

ts_est = 1;

M_o = 0.03;
syms zeta
eqn = M_o == exp(-zeta*pi/sqrt(1-zeta^2));
zeta = double(solve(eqn,zeta));
zeta = zeta(zeta>0);

ts = ts_est;
wn = 4/(ts*zeta);
d_poles_est = wn*[-zeta+sqrt(1-zeta^2)*1i -zeta-sqrt(1-zeta^2)*1i];
poles_est = [d_poles_est -9];

%% Observer Gain
ke = place(Ao,Bo,poles_est);
ke = ke';

%% Error States
Azeta = A_bb-ke*A_ab;
Bzeta = B_b-ke*B_a;
Kzeta = A_ba-ke*A_aa;

%% Slow and Fast Response related Poles

ts_slow = 2.5;
ts_fast = 0.5;

% 3% Maximum Overshoot:
M_o = 0.03;
syms zeta
eqn = M_o == exp(-zeta*pi/sqrt(1-zeta^2));
zeta = double(solve(eqn,zeta));
zeta = zeta(zeta>0);

% Slow Mode:
ts = ts_slow;
wn = 4/(ts*zeta);
d_poles_slow = wn*[-zeta+sqrt(1-zeta^2)*1i -zeta-sqrt(1-zeta^2)*1i];
poles_slow = [d_poles_slow -9 -10 -11 -12];

% Fast Mode:
ts = ts_fast;
wn = 4/(ts*zeta);
d_poles_fast = wn*[-zeta+sqrt(1-zeta^2)*1i -zeta-sqrt(1-zeta^2)*1i];
poles_fast = [d_poles_fast -9 -10 -11 -12];

%% StateSpace Change

E = C(1,:);
Abar = [A zeros(6,1);-E 0];
Bbar = [B;0];
kbar = place(Abar,Bbar,[poles_slow -13]);
k2 = -kbar(end);
k1 = kbar(1:end-1);

11‫)بخش‬
clc
clear

%% State Space

A = [0 0 0 1 0 0;
0 0 0 0 1 0;
0 0 0 0 0 1;
0 -103.7924 1.7156 -14.6318 0.6154 -0.0212;
0 211.7365 -42.3798 16.7688 -1.2554 0.5232;
0 -88.2477 81.9312 -0.5772 0.5232 -1.0115];
B = [0;0;0;2.62;-3.01;0.12];
C = [1 0 0 0 0 0;0 1 0 0 0 0;0 0 1 0 0 0];

%% Minimum-Observer states
A_aa = A(1:3,1:3);
A_ab = A(1:3,4:6);
A_ba = A(4:6,1:3);
A_bb = A(4:6,4:6);
B_a = B(1:3,1);
B_b = B(4:6,1);

Ao = A_bb';
Bo = A_ab';
%% Desired Poles

ts_est = 1;

M_o = 0.03;
syms zeta
eqn = M_o == exp(-zeta*pi/sqrt(1-zeta^2));
zeta = double(solve(eqn,zeta));
zeta = zeta(zeta>0);

ts = ts_est;
wn = 4/(ts*zeta);
d_poles_est = wn*[-zeta+sqrt(1-zeta^2)*1i -zeta-sqrt(1-zeta^2)*1i];
poles_est = [d_poles_est -9];

%% Observer Gain
ke = place(Ao,Bo,poles_est);
ke = ke';

%% Error States
Azeta = A_bb-ke*A_ab;
Bzeta = B_b-ke*B_a;
Kzeta = A_ba-ke*A_aa;

%% Slow and Fast Response related Poles and Feedback Controller

ts = 1.5;

M_o = 0.03;
syms zeta
eqn = M_o == exp(-zeta*pi/sqrt(1-zeta^2));
zeta = double(solve(eqn,zeta));
zeta = zeta(zeta>0);

wn = 4/(ts*zeta);
d_poles = wn*[-zeta+sqrt(1-zeta^2)*1i -zeta-sqrt(1-zeta^2)*1i];
poles = [d_poles -9 -10 -11 -12];

k = place(A,B,poles)

%% StateSpace Change

E = C(1,:);
Abar = [A zeros(6,1);-E 0];
Bbar = [B;0];
kbar = place(Abar,Bbar,[poles_slow -13]);
k2 = -kbar(end);
k1 = kbar(1:end-1);

You might also like