آموزش مدلسازی و شبیه سازی سیستم کوادروتور

اگر میخواهید به صورت اصولی کوادروتور را یاد بگیرید اینجا کلیک کنید:

مقدمه:
امروزه در بسیاری از کشورهای جهان دانشمندان وکارشناسان در پی ساخت رباتهای پرنده ی پیشرفته ای هستند که این پرنده های هدایت پذیر می توانند در کاربردهای بسیاری که انجام ان برای ربات های زمینی امکان پذیر نیست مورد استفاده قرار گیرند.در این میان کوادروتور به دلیل ساختار ساده ، قدرت مانور و فضای کاری بالا و کاربردهای متنوع جایگاه ویژه ای یافته اند. این پست مربوط به جلسات اموزشی مدلسازی و شبیه سازی سیستم کوادروتور می باشد. جهت بررسی جامعی از روابط حاکم بر این سیستم، سخت افزار و انواع روش های مدلسازی این سیستم پرنده به تفصیل در چند جلسه اموزشی شرح داده شده است. با استفاده از روابط استخراج شده از مدل ریاضی این سیستم مباحث مربوط به ایرودینامیک پرواز برای این ربات پرنده و نحوه محاسبه نیروهای ایرودینامیکی حاکم بر این سیستم نیز به طور کامل ارایه شده است.در ادامه ساختار و بلوک دیاگرام کنترلی این سیستم بدون سرنشین و ارتباط بین لایه های کنترلی ان با جزییات کامل مورد بررسی قرار گرفته است. همچنین نحوه به کارگیری فیلتر کالمن پیوسته توسعه یافته برای تخمین متغیرهای حالت این سیستم پرنده به عنوان یکی از پرکاربردترین مشاهده گرهای موجود نیز به صورت کامل عنوان شده است.

جلسه اول:

جلسه دوم:

جلسه سوم:


جلسه چهارم:


جلسه پنجم:

جلسه ششم:


جلسه هفتم:


جلسه هشتم:

جلسه نهم:

جلسه دهم:

جلسه یازدهم:

جلسه دوازدهم:

جلسه سیزدهم (مبحث ویژه ):

جلسه چهاردهم:

 

 

 

 

۱۸۹ comments

  1. با سلام
    در بخش طراحی مدلغزشی شما شش S را حساب کردین و سپس از آنها مشتق گرفته و برابر (Ksgn(s مربوط به آن سطح لغزشی قرار دادین و U ها بدست آمد. دو سوال برایم پیش آمده است:
    ۱٫چرا؟ مگر نباید Sdot را مساوی صفر قرار میدادید؟
    ۲٫برای مدلغزشی مرتبه دو (فراپیچشی) با u=ueq-a|s|^p.sgn(s)-b.ant(sgn(s))dt آیا باید Sdot را مساوی a|s|^p.sgn(s)+b.ant(sgn(s))dt قرار دهیم یا (Ksgn(s ؟؟؟

    1. سلام بر شما
      در رابطه با سوال اول شما : دقیقا Sdot ها برابر صفر قرار داده شده اند. در واقع (Ksgn(s معادل مشتق سطوح اسلایدها می باشد. لطفا اسلاید شماره ۸-۱۱ مربوط به پاورپوینت جلسه نهم و فیلم اموزشی ان را مجددا ملاحظه بفرمایید.
      در رابطه با سوال دوم: این موضوع در این جلسات اموزشی تدریس نشده است. برای اطلاعات بیشتر می توانید به مقاله موجود از اینجانب و همچنین درس اموزش مد لغزشی مرتبه دوم که توسط همکاران ارایه شده است مراجعه بفرمایید.

      موفق باشید.

  2. با سلام
    در بخش طراحی مدلغزشی شما شش S را حساب کردین و سپس از آنها مشتق گرفته و برابر (Ksgn(s مربوط به آن سطح لغزشی قرار دادین و U ها بدست آمد. دو سوال
    ۱٫چرا؟ مگر نباید Sdot را مساوی صفر قرار میدادید؟
    ۲٫برای مدلغزشی مرتبه دو (فراپیچشی) با u=ueq-a|s|^p.sgn(s)-b.ant(sgn(s))dt آیا باید Sdot را مساوی a|s|^p.sgn(s)+b.ant(sgn(s))dt قرار دهیم یا (Ksgn(s ؟؟؟

  3. اگر این امکان وجود داشته باشه که شبیه سازی در محیط سیمولینک متلب با بلاک دیاگرام به طور مثال برای نمونه SMC انجام بشه ممنون میشم.

  4. سلام
    همانطوری که در جلساتتون فرمودید که بلاک دیاگرام مهم هستش پس چرا شما در هیچ یک از مقاله های که بیان کردید برای رفرنسدهی بلاک دیاگرام کنترلی قرار ندادید؟

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

  5. سلام
    در جلسه نهم در سیگنال های کنترلر اثر از اغتشاش خارجی نیست ممنون میشم توضیح بفرمایید. در مورد اغتشاش در جلسه ششم اشاره شده اما به نظر میرسه در جلسه نهم که طراحی SMC هستش درنظر گرفته نشده. لطف میفرمایید اگر راهنمایی کنید.

    1. سلام بر شما
      بله توضیح دادم که خود دوستان اگر تمایل داشتند بدانند که چگونه باید ان را به سیستم اعمال کنند. اما برای یاداوری باز هم تکرار میکنم :
      از همان قسمتی که ورودی به سیستم اعمال می شود می تونید یک اغتشاش خارجی که فرمت های متفاوتی هم می تونه داشته باشه به سیستم اعمال کنید. توصیه می کنم ابتدا دامنه اغتشاش رو پایین در نظر بگیرید و کم کم تا جایی که کنترل کننده توانایی حذف اون رو داره، دامنه و فرکانس رو افزایش بدید.
      موفق باشید.

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

    1. سلام بر شما
      می تونید به مقالات من که در زیر لینکشون رو براتون قرار دادم رجوع بفرمایید و به همون ها هم رفرنس دهی کنید.
      در ادامه نیز من لینک برخی از مقالاتم رو براتون قرار میدم:

      https://journals.sagepub.com/doi/full/10.1177/0142331216640600

      https://ieeexplore.ieee.org/document/7985155

      http://ijeee.iust.ac.ir/article-1-1258-en.html

      https://miscj.aut.ac.ir/article_3113.html

      http://psc-ir.com/cd/2016/papers/1421.pdf

      پایدار باشید.

  7. و همچنین ببخشید سر کار خانم دکتر طبق توضیحات خوبتون برا محاسبه ueq که از طریق sdot=0 به دست می اید چرا از ماتریس(G(x مشتق نگرفتین در رابطه و فقط از (x(t در رابطه مشتق گرفتین ممنون میشم این قسمت رو توضیح بدین خانم دکتر من مقالات متوعی رو مطالعه کردم هیچ کدوم سطح لغزش که شما طراحی کرده بودین رو به این صورت در نظر نگرفتن ممنون میشم اگه امکان داره این قسمترو برام رفع اشکال کنید و زحمت بکشین اثبات این روش رو در اختیار بنده بگزارید با تشکر از اموزش های بسیار عالیتون

    1. دوست عزیز ، تا این مرحله اگر دقت کرده باشید پاسخ سوالات بسیاری از دوستان شما که احتمال می رفت سوال خیلی از دانشجویان باشد به صورت عمومی پاسخ داده شد تا همه دوستان استفاده کنند. اما اشکالات فردی دوستان فقط و فقط در جلسات اموزشی فردی هر شخص به صورت جداگانه پاسخ داده خواهند شد.
      موفق باشید.

  8. سلام و روز بخیر خانم دکتر ببخشید ی سوال ممنون میشم اثبات مرتبط با جلسه ۱۳ برای به دست آوردن usliding که از طریق تابع شبه لیاپانف برای به دست اوردن u dis در پاور پوینت زحمت ارائه کشیدین بدین اخه اثباتش رو طبق مراحل شما پیش میرم نتایجم با نتیاج شما فرق می کنه با تشکر

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

      1. خانم دکتر منظورم انتخاب تابع لیاپانف نیست بلکه با جایگداری sopt در مشتق تابع لیاپانف و ساده سازی رابطه من با رابطه ای که شما زحمت نوشتن اون رو کردین متفاوته البته از همون سطح لغزشی که شما زحمت توضیح دادنش کشیدین استفاده کردم ممنون میشم لطف کنید اگه مقاله ای در این موورد خودتون خوندید و زحمت توضیح دادن اون رو برا ما کشیدین ویا اینکه شما مقاله ای در این زمینه دارید ممنون میشم در اختیار من بزارید بتونم مشکلک حل کنم

        1. اگر با دقت جایگذاری ها رو انجام بدید قطعا به همون رابطه ای که من نوشتم خواهید رسید.در ادامه نیز من لینک برخی از مقالاتم رو براتون قرار میدم:

          https://journals.sagepub.com/doi/full/10.1177/0142331216640600

          https://ieeexplore.ieee.org/document/7985155

          http://ijeee.iust.ac.ir/article-1-1258-en.html

          https://miscj.aut.ac.ir/article_3113.html

          http://psc-ir.com/cd/2016/papers/1421.pdf

          پایدار باشید.

  9. ۱) روش محاسبه u_x و همچنین u_y در مقاله خودتون با عنوان (Robust Backstepping Control of a Quadrotor UAV Using Extended Kalman Bucy Filter) رو میشه توضیح بدهید. چگونه از x_d و y_d متغیرهای phi_d و thete_d محاسبه می‌شود؟

    1. سلام
      این موضوع به طور کامل در جلسات اموزشی مربوط به روش پسگام بازگشتی توضیح داده شده است. لطفا به جلسات مربوطه مراجعه فرمایید. موفق باشید.

  10. سلام خانم مهندس
    وقتتون بخیر
    بنده مقاله زیر از شما را خوندم. بسیار مقاله خوبی بود.
    Robust Backstepping Control of a Quadrotor UAV Using Extended Kalman Bucy Filter
    یک سوال دارم از این مقاله.
    اگر در بخش شبیه‌سازی فرض بر این باشد که کوادروتور متغیرهای موقعیت و زاویه را میتوان اندازه‌گیری کرد. آیا این فرض در عمل امکان‌پذیر هستش؟ با استفاده از کدام سنسور امکان اندازه‌گیری موقعیت و زاویه وجود دارد؟

    1. سلام بر شما
      نظر لطف شماست.
      من شخصا تاکنون کار ساخت عملی این ربات پرنده را انجام نداده ام. اما بله در عمل امکان پذیر است و مقالات بسیار زیادی در این زمینه ساخت کوادروتور و سنسورهای تخمین ان موجود می باشد. از مخازن دیجیتالی دانشگاه های مطرح در زمینه ساخت کوادروتور می تونید اطلاعات خوبی به دست بیارید، مانند دانشگاه پنسیلوانیا امریکا، دانشگاه کرنل امریکا، بریتیش کلمبیا کانادا و …
      اما به عنوان مثال مثلا برای تخمین شتاب، سنسور شتاب سنج ADXL330 ساخت کمپانی Analog Devices کاربرد زیادی در ساخت کوادروتورها جهت تخمین شتاب بدنه دارد و همچنین سنسور ژیروسکوپ سرعت زاویه ای LISY300AL ساخت کمپانی ICT Electronics هم همینطور
      .این سنسورها دارای خروجی انالوگ هستند که داده های انها از طریق یک میکروکنترلر دریافت می شود و در نهایت با استفاده از یک مبدل انالوگ به دیجیتال ADC،خروجی سنسورها اعدادی ده بیتی بین ۰ تا ۱۰۲۳ را نمایش می دهند. و سنسورهای دیگر نیز به همین طریق موجود هستند.
      امادقت کنید که روز به روز انواع گوناگون و جدیدی از ین سنسورها روانه بازار می شوند که نسبت به مدل پیشین خود بسیار مفیدتر هستند.

      موفق باشید.

  11. منظور بنده این هست که این g با توجه به حذف متغیر x7 همچنان یک بایاس برای نقطه ی تعادل است، اگر هم بنا را بر حذف نشدن x7 در اثر ضرب در متغیرهای حالت بگذاریم که در مخرج صفر ایجاد میشود اگر مبدا نقطه ی تعادل باشد…

Leave a Reply

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