ربات پرنده عمود پرواز

توضیحات محصول

دانلود پایان نامه طراحی و پیاده سازی ربات پرنده عمود پرواز (Quad copter)

76صفحه WORD

چکيده

در این پروژه ابتدا با معرفی و توضیح حوزه روبات های پرنده با ساختار عمود پرواز چهار ملخه آشنا می شویم . سپس با استفاده از مدل دینامیکی و روابط حاکم ، کنترلر بهینه ایی بر مبنای PID برای آن طراحی می کنیم . پس از شبیه سازی ، آن را پیاده سازی کرده و نتایج را بررسی خواهیم کرد .

کليد واژه: ربات ، پرنده ، Quad rotor ، Quad copter  ، PID  .

فهرست مطالب

فصل 1 –  مقدمه. 3

1-1-…………………………………………………………………………………………………………… پيشگفتار 3

1-2-………………………………………… معرفی و مقایسه روبات های پرنده بدون سرنشین.. 4

1-3- معرفی Quadrotor. 6

1-4-…………………………………………………………………………………………………… مدل ریاضی.. 8

فصل 2-سخت افزار 12

2-1-………………………………………………………………………………………………… اجزای اصلی.. 12

2-1-1-   میکرو کنترلر اصلی.. 13

2-1-2-   نگاهی دقیق تر به میکرو کنترلر و توانمندی های آن.. 15

2-1-3-    معرفی    ESC.. 22

2-1-4-    معرفی موتورهای BLDC.. 23

2-1-5-    معرفی سنسور IMU.. 25

2-1-6-    معرفی سنسور آلتراسونیک… 29

2-1-7-   برد اتصال IOIO.. 30

2-1-8-   مبدل USB به TTL. 32

فصل 3-شبیه سازی.. 34

3-1- معرفی موتور Unity3d. 34

3-2- معرفی کنترلر PID.. 35

3-2-1-   بررسی تاثیر پارامترها بر سیستم.. 36

3-2-2-   طراحی کنترلر  و تنظیم آن ( روش زایگلر – نیکلز ) 38

3-2-3-   مقایسه PID استاندارد و دیجیتالی ( گسسته ) 40

3-3-……………………………………………………………………………………….. مقایسه انواع فیلترها 42

3-3-1-   فیلتر کالمن.. 42

3-3-2-   فیلتر DCM…. 43

3-4-…………………………………………………………………. نتایج شبیه سازی – PID استاندارد. 47

فصل 4-بخش عملی.. 49

4-1-……………………………………………………………………………………………………. ساخت بدنه. 49

فصل 5-نرم افزار 55

ضمیمه ها ………………………………………………………………………………………………………………….65

نتیجه گیری ……………………………………………………………………………………………………………………67

منابع و مراجع …………………………………………………………………………………………………………………….68

خلاصه

فصل 1 –  مقدمه

1-1- پيشگفتار

با توجه به پیشرفت روزافزون علم روباتیک در عرصه های مختلف به خصوص حوزه روبات های پرنده و همچنین فعالیت تحقیقاتی گسترده بر روی روبات های پرنده عمود پروازی چون روبات های  چهار محرکه ایی ) Quad rotor ) در اکثر دانشگاه های معتبر جهان و همچنین ایران بر آن شدیم تا عنوان پروژه خود را پیاده سازی و طراحی سیستم کنترل یک عمود پرواز بر مبنای چهار محرکه انتخاب نماییم ، تا هم ثمره چهار سال مطالعه نظری بی وقفه در مقطع کارشناسی سخت افزار را به یک دستاورد عملی و کاربردی مبدل سازیم و هم در یک کار تیمی مشترک بر دانش خود  در زمینه مبحث کنترل روبات بیافزاییم .

اجزای اصلی این روبات متشکل از چهار موتور BLDC  150 وات همراه با کنترلر سرعت ESC ، یک برد کنترلی اصلی ، یک دستگاه تفلن همراه مجهز به سیستم عامل اندروید برای کاهش هزینه ها و استفاده از امکانات گسترده سخت افزاری آن ، یک باتری لیتیومی مخصوص هواپیما های مدل ، ماژول سنسور شتاب و زاویه سنج IMU و یک مدار واسط برای ارتباط برد کنترلی و تلفن همراه می باشد .

سخت ترین مرحله از پروژه طراحی سیستم کنترل حلقه بسته ایی است که تعادل روبات را در هوا تضمین نماید و همچنین امکان کنترل دقیق را برای کاربر فراهم سازد . برای دست یابی به چنین سیستم کنترلی از یک مدل ریاضی و شبیه سازی آن در محیط هایی0….

تایمرها

در خانواده AVR های معمولی، در شماره های ضعیف تر مانندtiny13 فقط یک تایمرهای ۸ بیتی وجود دارد و در شماره های توانمندتر مانند mega128 هم حداکثر ۲ تایمر ۱۶ بیتی و ۲ تایمر ۸بیتی وجود دارد و حداکثر ظرفیت AVR هم وجود ۴ تایمر ۱۶ بیتی و ۲ تایمر ۸ بیتی در شماره هایی مانند mega2560 است.اما تایمر های XMEGA همگی ۱۶بیتی هستند و تعداد آنها هم از ۴ عدد تا ۸ عدد متغیر است. این درحالی است که با استفاده از ظرفیت Event system که قبلا به آن اشاره شد، می توان به تایمرهایی بزرگتر از ۱۶ بیت هم بدون استفاده از وقفه ها دست پیدا کرد.

نکته دیگر اینکه در AVR، کنترلی روی جهت شمارش تایمر وجود ندارد و تایمر در وضعیتهای Normal و CTC و Fast-PWM بصورت افزایشی و در مدهای Phase correct PWM و Phase-frequency correct PWM هم بصورت افزایشی و کاهشی متوالی عمل می کند. اما جهت شمارش تایمر های XMEGA بصورت دلخواه توسط یک بیت کنترلی قابل تغییر است و این امکان بسیار خوبی محسوب می شود.

نکته بسیار مهم دیگر وجود تعداد قابل توجهی خروجی PWM در خانواده XMEGA است که بین ۱۴ تا ۲۴ خروجی PWM را در شماره های فعلی این خانواده شامل می شود. وجود این خروجی های PWM به علاوه امکان دیگری به نام (AWEX(Advanced Waveform Extension که بعدا توضیح داده می شود، خانواده XMEGA را به ابزار بسیار قدرتمندی برای کاربردهایی مانند کنترل موتور و رباتیک و نظایر آن تبدیل می کند و این در حالی است که تعداد….

شتاب سنج

این سنسور از سه عدد سنسور اصلی شتاب سنج ، زاویه سنج ، قطب نما تشکیل می شود . در این سنسور یک میکروی atmega328 وجود دارد که عملیات فیلترینگ و تبدیل داده های خام به داده های درست کالیبره شده را انجام می دهد . برای فیلتر کردن الگوریتم های متفاوتی مثل DCM یا KF وجود دارد که در ادامه در بخش نرم افزار به آن اشاره خواهیم داشت .

سنسور شتاب سنج، شتاب یا همان تغییرات آنی سرعت هر جسمی را که روی آن نصب شده است را اندازه می گیرد. چطور آن کار می کند؟ درون یک شتاب سنج یک وسیله به نام MEMS است که یک میکروسازه است که بوسیله ممنتوم و گرانش خم می شود. هنگامی که با هرگونه شتابی مواجه می شود. این میکروسازه با یک مقدار متناسبی خم می شود که این مقدار توسط سیگتال الکتریکی شناسایی می شود. امروزه شتاب سنج ها به آسانی و ارزان موجود هستند.

میکروسازه کوچک فقط در یک جهت می تواند نیرو را اندازه بگیرد یا جهت شتاب را. یعنی با اندازه گیری یک جهت ، شما فقط می توانید نیروی

1-1-1-                 فیلتر DCM[1]

یکی از متداول ترین فیلترهای استفاده شده در IMU ها برای بدست آوردن سه زاویه اصلی ( Roll , Pitch , Yaw  ) الگوریتم DCM است . در واقع داده های خام طبق الگوریتمی که با یک ماتریس کار می کند با استفاده از شتاب و زاویه مقدار خطا را تخمین زده و از داده خروجی حذف می کند . این الگوریتم پایه ریاضی دارد و در این جا فقط به آن اشاره می کنیم و کد آن را قرار می دهیم . بسط و بحث بیشتر در مورد این الگوریتم خارج از بحث کنترل روبات می باشد .

معمولا در پایان کار از یک فیلتر پایین گذر هم استفاده می شود . همچنین با توجه به وجود قطب نما ما قادریم خطا محور Yaw را تصحیح کنیم در ادامه کدهای مربوط به هر بخش آورده شده است . لازم به یادآوری است که IMU استفاده شده Arduimu v3 می باشد . و سنسور شتاب و زاویه آن IC MPU6000 می باشد . و IC قطب نمای استفاده…

نظری بدهید