فهرست مطالب:
تصویری: ربات خود متعادل - الگوریتم کنترل PID: 3 مرحله
2024 نویسنده: John Day | [email protected]. آخرین اصلاح شده: 2024-01-30 08:51
این پروژه به این دلیل طراحی شد که من علاقه مند بودم در مورد الگوریتم های کنترل و نحوه اجرای موثر حلقه های PID کاربردی بیشتر بیاموزم. این پروژه هنوز در مرحله توسعه است زیرا هنوز ماژول بلوتوث اضافه نشده است که امکان کنترل روی ربات را از طریق تلفن هوشمند مجهز به بلوتوث فراهم می کند.
موتورهای N20 DC مورد استفاده نسبتاً ارزان بودند و از این رو بازی قابل توجهی در آنها انجام می شود. این امر باعث ایجاد کمی حرکت تند و سریع می شود زیرا موتورها بر گشاد شدن چرخها غلبه می کنند. بنابراین ، دستیابی به حرکت کاملاً صاف تقریباً غیرممکن است. کدی که من نوشتم بسیار ساده است اما به طور م theثر توانایی الگوریتم PID را نشان می دهد.
خلاصه ی پروژه:
شاسی این ربات با استفاده از چاپگر Ender 3 به صورت سه بعدی چاپ می شود و طوری طراحی شده است که با هم فشرده شوند.
این ربات توسط Arduino Uno کنترل می شود که داده های حسگر را از MPU6050 گرفته و موتورهای DC را از طریق درایور موتور خارجی کنترل می کند. باتری آن 7.4 ولت و 1500 میلی آمپر ساعت است. راننده موتور آن را تا 5 ولت تنظیم می کند تا آردوینو را تغذیه کند و 7.4 ولت را به موتورها وصل می کند.
این نرم افزار از ابتدا با کمک کتابخانه های "Arduino-KalmanFilter-master" و "Arduino-MPU6050-master" از gitHub نوشته شده است.
تدارکات:
- قطعات چاپ سه بعدی
- آردوینو UNO
- سنسور MPU6050 6 محوره
- درایور موتور DC
- N20 DC Motors (x2)
- باتری 9 ولت
مرحله 1: ساخت ربات
چاپ و مونتاژ
کل ساختار باید مطبوعاتی باشد ، اما من از چسب فوق العاده برای ایمن سازی قطعات برای اطمینان از سفت و سخت بودن ربات در هنگام تعادل استفاده کرده ام.
من قطعات را در فیوژن 360 طراحی کرده ام و هر قسمت را برای چاپ بدون پشتیبان گیری بهینه کرده ام تا امکان تحمل بیشتر و سطح تمیزتری ایجاد شود.
تنظیمات مورد استفاده در چاپگر Ender 3 عبارت بودند از: 0.16mm Layer Heights @ 40٪ پر کننده برای همه قسمت ها.
مرحله 2: ربات چاپ سه بعدی
شاسی (x1)
چرخ چپ (x2)
مسکن موتور چپ (x2)
قاب آردوینو (x1)
مرحله 3: الگوریتم کنترل PID
من یک الگوریتم کنترل PID را از ابتدا با استفاده از کتابخانه های "Arduino-KalmanFilter-master" و "Arduino-MPU6050-master" از gitHub نوشتم.
فرضیه الگوریتم به شرح زیر است:
- داده های خام MPU6050 را بخوانید
- از فیلتر Kalman برای تجزیه و تحلیل داده های ژیروسکوپ و شتاب سنج استفاده کنید تا نادرستی قرائت ژیروسکوپ را به دلیل شتاب سنسور حذف کنید. این مقدار نسبتاً صاف شده برای سطح سنسور را در درجه به دو رقم اعشار برمی گرداند.
- خطای E را در زاویه محاسبه کنید ، یعنی: زاویه بین سنسور و نقطه تنظیم.
- خطای متناسب را به صورت (ثابت خطای تناسب x) محاسبه کنید.
- محاسبه خطای انتگرال به عنوان مجموع در حال اجرا (خطای Constant of Integration x).
- محاسبه خطای مشتق ثابت به عنوان [(تفاوت تمایز) x (تغییر خطا / تغییر زمان)]
- همه خطاها را جمع کنید تا سرعت خروجی به موتورها ارسال شود.
- بر اساس علامت زاویه خطا ، موتورها را در کدام جهت بچرخانید.
- حلقه به طور نامحدود اجرا می شود و با تغییر ورودی بر خروجی ایجاد می شود. این یک حلقه بازخورد است که از مقادیر خروجی به عنوان مقادیر ورودی جدید برای تکرار بعدی استفاده می کند.
مرحله نهایی تنظیم پارامترهای حلقه PID ، Ki و Kd است.
- نقطه شروع خوب این است که Kp را به آرامی افزایش دهید تا زمانی که ربات در اطراف نقطه تعادل نوسان کند و بتواند سقوط کند.
- در مرحله بعد ، Kd را از حدود 1 the مقدار Kp شروع کرده و به آرامی افزایش دهید تا زمانی که نوسانات ناپدید شوند و وقتی ربات تحت فشار قرار می گیرد ، به آرامی بلغزد.
- سرانجام ، با Ki در حدود 20 K از Kp شروع کنید و متفاوت باشید تا زمانی که ربات "فراتر" از نقطه تعیین شده برای فعالانه گرفتن سقوط و بازگشت به حالت عمودی حرکت کند.
توصیه شده:
ربات خود متعادل از Magicbit: 6 مرحله
ربات خود متعادل کننده از Magicbit: این آموزش نحوه ساخت یک روبات متعادل کننده را با استفاده از برد Magicbit dev نشان می دهد. ما در این پروژه که بر اساس ESP32 طراحی شده است ، از magicbit به عنوان تابلوی توسعه استفاده می کنیم. بنابراین می توان از هر تخته توسعه ESP32 در این پروژه استفاده کرد
HeadBot-یک ربات خود متعادل برای یادگیری و ارتباط STEM: 7 مرحله (همراه با تصاویر)
HeadBot-یک ربات خود متعادل برای یادگیری و آموزش STEM: Headbot-یک ربات دو پا بلند و متعادل کننده-زاییده تیم رباتیک یوجین جنوبی (SERT، FRC 2521) ، یک تیم رباتیک رقابتی دبیرستانی در FIRST است. مسابقه رباتیک ، از یوجین ، اورگان. این ربات تبلیغاتی محبوب باعث می شود دوباره
نحوه ایجاد یک ربات خود متعادل چاپ سه بعدی با کنترل از راه دور: 9 مرحله (همراه با تصاویر)
نحوه ایجاد ربات خود متعادل چاپ سه بعدی با کنترل از راه دور: این تکامل نسخه قبلی ربات B است. منبع 100٪ باز / ربات آردوینو کد ، قطعات سه بعدی و قطعات الکترونیکی باز هستند ، بنابراین می توانید آن را تغییر دهید یا نسخه عظیمی از ربات را ایجاد کنید. اگر شک دارید ، ایده دارید یا به کمک نیاز دارید ،
ربات 2 چرخ خود متعادل کننده: 4 مرحله
2 Wheeled Self Balancing Robot: به نظر محقر من شما یک سازنده واقعی نیستید ، مگر اینکه ربات 2 چرخ خود را با بالانس خود بسازید. :-) بنابراین ، اینجا … و مهمترین چیز ، کار می کند !!! این پروژه بسیار ساده به نظر می رسد. در عوض ، به سطح خوبی از دانش نیاز دارد
ربات متعادل کننده / ربات 3 چرخ / ربات STEM: 8 مرحله
ربات متعادل کننده / ربات 3 چرخ / ربات STEM: ما یک ربات متعادل کننده و 3 چرخ ترکیبی برای استفاده آموزشی در مدارس و برنامه های آموزشی بعد از مدرسه ساخته ایم. این ربات بر اساس Arduino Uno ، یک سپر سفارشی (تمام جزئیات ساخت ارائه شده است) ، یک باتری لیتیوم یون (همه ساخت