نحوه ساخت یک هلیکوپتر یا کوادکوپتر و محاسبات آن

مدیران انجمن: javad123javad, parse

ارسال پست
ali asadzade

عضویت : یک‌شنبه ۱۳۹۴/۴/۲۱ - ۲۳:۳۹


پست: 15



نحوه ساخت یک هلیکوپتر یا کوادکوپتر و محاسبات آن

پست توسط ali asadzade »

لطفا نحوه ساخت یک هلیکوپتر یا کوادکوپتر و محاسبات آن را توضیح دهید

نمایه کاربر
rohamjpl

نام: roham hesami

محل اقامت: Tehran -Qeytariyeh, Ketabi Street, 8 meters from Saba

عضویت : سه‌شنبه ۱۳۹۹/۸/۲۰ - ۰۸:۳۴


پست: 609

سپاس: 311

جنسیت:

تماس:

Re: نحوه ساخت یک هلیکوپتر یا کوادکوپتر و محاسبات آن

پست توسط rohamjpl »

قطعات قاب فرستنده گیرنده کنترل کننده پرواز باتری PDB (صفحه توزیع برق) ESCs (کنترل کننده الکترونیکی سرعت) پروانه ها موتورها شارژر
کوادروتورها از انواع مختلفی از موتورهای بدون برس برای تولید رانش و گشتاورهای مورد نیاز برای کنترل سکو استفاده می کنند. هر موتور با باتری های الکتریکی تغذیه می شود و روی سیستم عامل کوادروتور قرار دارد. کنترل کننده های سرعت الکترونیکی (ESC) خروجی دور موتور دلخواه را توسط کنترل کننده پرواز دریافت می کنند و این دستورات را برای هر موتور جداگانه ارسال می کنند. یک نمودار اولیه بدنه آزاد نشان داده شده است که رانش ها و نیروهای هر موتور را روی کوادروتور نشان می دهد. توجه داشته باشید که محور z در جهت جاذبه و جهت مخالف بردارهای نیروی موتور منفی تعریف شده است.ساختار کوادروتور صلب و متقارن با یک مرکز جرم تراز شده با مرکز قاب بدنه پرنده است.رانش و درگ هر موتور متناسب با مربع سرعت موتور است.
پروانه ها سفت و محکم در نظر گرفته می شوند و بنابراین پره زدن تیغه ناچیز است (تغییر شکل پره های پروانه به دلیل سرعت زیاد و مواد انعطاف پذیر).
لیست کامل متغیرهای حالت که،. موقعیت کوادروتور در فریم جهانی داده می شود در حالی که سرعت و سرعت زاویه ای در قاب بدنه کوادروتور تعریف شده است. توجه به این نکته مهم است که سنسورهای مختلف متداول در هر دو سیستم مختصات اندازه گیری می کنند. به عنوان مثال GPS ، موقعیت کوادروتور و سرعت زمین را در فریم جهانی اندازه گیری می کند در حالی که شتاب سنج ها و ژیروس های سرعت ، اندازه گیری هایی را در قاب بدنه تولید می کنند. برای ناوبری پیشرفته تر از جمله مسیر حرکت به دنبال مسیر ، نقاط راه در سیستم مختصات جهانی آورده شده است.تصویر
پرنده کوادروتور بر اساس مفهوم گشتاور و رانش متغیر عمل می کند. هر روتور از یک موتور DC بدون برس و روتور با یک گام ثابت تشکیل شده است. موتورها به صورت جفت در امتداد محورهای افقی و عمودی قرار می گیرند و جفت جلو در جهت عقربه های ساعت و زوج افقی در خلاف جهت عقربه های ساعت می چرخند. این طراحی منجر به این می شود که گشتاورهای واکنش از جفت موتورها دقیقاً در مقابل یکدیگر قرار بگیرند اگر همه آنها با یک سرعت بچرخند. حذف گشتاور چرخشی به خودرو اجازه می دهد تا در حالی که معلق است ، ثابت حرکت کند. Yaw با تغییر سرعت جفت موتور کنترل می شود تا یک گشتاور خالص خالص غیر صفر ایجاد کند. ارتفاع با تغییر رانش از هر موتور به مقدار مساوی برای تهیه بردار محوری خالص و بدون گشتاور چرخشی کنترل می شود. برای حرکت در جهت های جانبی ،سرعت نسبی هر موتور در جفت جانبی متنوع است تا یک جابجایی رانش جانبی مورد نظر ایجاد شود. طراحی ساده منجر به سیستم عامل های کوچکی می شود که از طریق باتری کار می کنند ، قادر به شناور پایدار هستند و برای استفاده در محیط های داخلی ایمن هستند. کوادروتور به عنوان یک سیستم تحت عمل طبقه بندی می شود. در حالی که کوادروتور می تواند در 6 درجه آزادی حرکت کند (چرخشی) ، فقط 4 ورودی وجود دارد که می تواند کنترل شود (سرعت 4 موتور). ، پویایی چرخشی بهم پیوسته است که یک مسئله کنترل جالب ارائه می دهد.، پویایی چرخشی و ترجمه ای بهم پیوسته است که یک مسئله کنترل جالب ارائه می دهد.کوادروتور به عنوان یک سیستم تحت عمل طبقه بندی می شود. .برای کوادکوپتر ، چه رابطه ای بین رول ، پیچ و خمیازه در قاب زمین و شتاب در ابعاد x ، y و z در قاب زمین وجود دارد؟ برای بتن بیشتر ، فرض کنید رول (θ) یک چرخش در مورد محور x قاب زمین است ، گام (ϕ) یک چرخش در مورد محور y قاب زمین است و yaw (ψ) یک چرخش در مورد محور z است. بعلاوه ، فرض کنید a شتاب تولید شده توسط هر چهار روتور را نشان می دهد ، یعنی شتاب طبیعی با صفحه کوادکوپتر. سپس f ، g ، h در چیست؟$a_x = f(a,\theta,\phi,\psi)$و$a_y = g(a,\theta,\phi,\psi)$و$a_y = g(a,\theta,\phi,\psi)$که در آن ax ، ay و az شتابهایی در ابعاد x ، y و z هستند.زاویه های جهت دهی در قاب زمین ارائه می شود (قاب جهانی یا جهانی مناسب تر است). تقریباً تهیه جهت کادر با زاویه با توجه به همان قاب تقریباً غیرممکن است.
سپس با توجه به مقداری شتاب $a_b$ در قاب بدنه ، می توانید شتاب را در فریم جهان $a_w $با ضرب قبل از ضرب با ماتریس چرخش R پیدا کنم.$a_w = R a_b$که$\begin{bmatrix} a_{w,x} \\ a_{w,y} \\ a_{w,z} \end{bmatrix} = \begin{bmatrix} c_\psi c_\theta & -s_\psi c_\phi + c_\psi s_\theta s_\phi & s_\psi s_\phi + c_\psi s_\theta c_\phi \\ s_\psi c_\theta & c_\psi c_\phi + s_\theta s_\psi s_\phi & -c_\psi s_\phi + s_\theta s_\psi c_\phi \\ -s_\theta & c_\theta s_\phi & c_\theta c_\phi \end{bmatrix} \begin{bmatrix} a_{b,x} \\ a_{b,y} \\ a_{b,z} \end{bmatrix}$
سیستم مختصات مدل کوادروتور
ساختار اصلی کوادروتور مورد استفاده برای توسعه مدل که زوایای رول ، پیچ و خمیازه اویلر ، یک چهارچوب مختصات پرنده {b} و کادر مختصات جهانی {G} را نشان می دهد. این مدل به چندین فرض متکی است:متغیرهای سیستم مدل کوادروتور
متغیرهای حالت برای سرعت در چارچوب پرنده هستند اما متغیرهای حالت برای موقعیت در چارچوب جهانی هستند. بنابراین ، لازم است یک ماتریس چرخش برای تبدیل متغیرها بین سیستم های مختصات تعریف شود. تحول بین کادرهای مختصات جهانی و بدنه در زیر شرح داده شده است.
ماتریس چرخش مدل کوادروتور
سینماتیک چرخشی$\begin{aligned} R_{z}(\psi ) = \begin{pmatrix} \cos (\psi ) &{}\quad -\sin (\psi ) &{}\quad 0 \\ \sin (\psi ) &{}\quad \cos (\psi ) &{}\quad 0 \\ 0 &{}\quad 0 &{}\quad 1 \end{pmatrix} \end{aligned}$و$\begin{aligned} R_{y}(\theta ) = \begin{pmatrix} \cos (\theta ) &{}\quad 0 &{}\quad \sin (\theta ) \\ 0 &{}\quad 1 &{}\quad 0 \\ -\sin (\theta ) &{}\quad 0 &{}\quad \cos (\theta ) \end{pmatrix} \end{aligned}$و$\begin{aligned} R_{x}(\phi ) = \begin{pmatrix} 1 &{}\quad 0 &{}\quad 0 \\ 0 &{}\quad \cos (\phi ) &{}\quad -\sin (\phi ) \\ 0 &{}\quad \sin (\phi ) &{}\quad \cos (\phi ) \end{pmatrix} \end{aligned}$
از آنجا که نرخ های زاویه ای در قاب بدنه و زوایای اویلر در قاب مختصات میانی تعریف شده اند ، می توانیم از ماتریس چرخش مشتق شده در بالا برای تعیین رابطه بین نرخ های زاویه ای و مشتقات زمانی زاویه های اویلر استفاده کنیم . سرعت های زاویه ای بردارهایی هستند که در امتداد هر محور چرخش قرار دارند و برابر با مشتق زمانی زاویه های اویلر نیستند. مشتق زیر فرض می کند که مشتق زمانی هر نرخ اویلر کم است. سینماتیک چرخشی مدل کوادروتور
اگر زاویه های اویلر کوچک (نزدیک 0) فرض شود ، در این صورت ماتریس S به ماتریس هویت تبدیل می شود و نرخ های زاویه ای تقریباً برابر با مشتق زمان زاویه های اویلر است.
معادلات حرکتی بدون برس
کوادروتورها از انواع مختلفی از موتورهای بدون برس برای تولید رانش و گشتاورهای مورد نیاز برای کنترل سکو استفاده می کنند. هر موتور با باتری های الکتریکی تغذیه می شود و روی سیستم عامل کوادروتور قرار دارد. کنترل کننده های سرعت الکترونیکی (ESC) خروجی دور موتور دلخواه را توسط کنترل کننده پرواز دریافت می کنند و این دستورات را برای هر موتور جداگانه ارسال می کنند. یک نمودار اولیه بدنه آزاد نشان داده شده است که رانش ها و نیروهای هر موتور را روی کوادروتور نشان می دهد. توجه داشته باشید که محور z در جهت جاذبه و جهت مخالف بردارهای نیروی موتور منفی تعریف شده است.
متغیرهای سیستم مدل کوادروتور
متغیرهای حالت برای سرعت در چارچوب بدن هستند اما متغیرهای حالت برای موقعیت در چارچوب جهانی هستند. بنابراین ، لازم است یک ماتریس چرخش برای تبدیل متغیرها بین سیستم های مختصات تعریف شود.$R_I^{v1}(\psi) = \begin{pmatrix} \cos(\psi) & \sin(\psi) & 0 \\ -\sin(\psi) & \cos(\psi) & 0 \\ 0 & 0 & 1 \end{pmatrix}.$سنسورهای Attitude and Heading از CH Robotics می توانند با استفاده از زوایای اویلر و کواترنسیون ، اطلاعات جهت گیری را ارائه دهند. در مقایسه با کواترنشن ها ، زوایای اویلر ساده و شهودی هستند و به خوبی به تحلیل و کنترل ساده می پردازند. از طرف دیگر ، زاویه های اویلر توسط پدیده ای به نام "قفل گیمبال" محدود می شوند که بعداً جزئیات بیشتری در مورد آن بررسی خواهیم کرد. در برنامه هایی که سنسور هرگز در نزدیکی زاویه های +/- 90 درجه کار نخواهد کرد ، زاویه های اویلر گزینه خوبی است.
سنسورهای CH Robotics که می توانند خروجی های زاویه اویلر را فراهم کنند شامل GPH-AHRS با کمک GPS و حسگر جهت گیری UM7 هستند.زوایای اویلر راهی را برای نشان دادن جهت گیری سه بعدی یک شی با استفاده از ترکیبی از سه چرخش در مورد محورهای مختلف ارائه می دهد. برای سهولت ، از چند قاب مختصات برای توصیف جهت گیری سنسور استفاده می کنیم ، از جمله "قاب اینرسی" ، "قاب وسیله نقلیه -1" ، "قاب وسیله نقلیه -2" و "قاب بدنه". محورهای قاب اینرسی ثابت زمین هستند و محورهای قاب بدنه با سنسور همسو می شوند. وسیله نقلیه -1 و وسیله نقلیه -2 فریم های واسطه ای هستند که هنگام سهولت نشان دادن توالی عملیاتی که ما را از قاب اینرسی به سمت بدنه حسگر می برند ، برای راحتی استفاده می شوند.
ممکن است استفاده از چهار فریم مختصات مختلف برای توصیف جهت گیری سنسور غیرضروری به نظر برسد ، اما انگیزه این کار با ادامه کار روشن خواهد شد.
برای شفافیت ، این یادداشت برنامه فرض می کند که سنسور روی هواپیما سوار شده است. تمام مثالها و ارقام نشان دهنده تغییر جهت هواپیما است.
"قاب اینرسی" مجموعه ای از محورهای ثابت در زمین است که به عنوان یک مرجع تکان دهنده استفاده می شود. سنسورهای CH Robotics از یک قاب اینرسی مشترک هوانوردی استفاده می کنند که در آن محور x به سمت شمال ، محور y به سمت شرق و محور Z به سمت پایین نشان داده می شود. ما این را یک مرجع North-East-Down (NED) می نامیم. توجه داشته باشید که از آنجا که محور z به سمت پایین است ، ارتفاع از سطح زمین در واقع یک مقدار منفی است.
توالی چرخش هایی که برای نشان دادن یک جهت معین استفاده می شود ، ابتدا خمیازه ، سپس بلند کردن و در آخر غلتیدن است.yaw چرخش حول محور z قاب قاب اینرسی را با یک زاویه ψ نشان می دهد. چرخش yaw یک قاب مختصات جدید تولید می کند که در آن محور z با قاب اینرسی تراز می شود و محورهای x و y با زاویه yaw ψ چرخ می شوند. ما این قاب مختصات جدید را قاب خودرو-1 می نامیم. جهت چرخش وسیله نقلیه -1 پس از چرخش خمیازه در شکل 2 نشان داده شده است. محورهای قاب خودرو -1 قرمز رنگ هستند ، در حالی که محورهای قاب اینرسی خاکستری هستند.تصویر
محاسبه تراست موتورهای کوادکوپتر موتورهای من رانش ایجاد نمی کنند ، آنها چرخش هایی دارند که رانش ایجاد می کنند. به صورت عملی ، احتمالاً بهتر است یک مدل تجربی بر اساس اندازه گیری های رانش در برابر ولتاژ موتور ایجاد شود -
با این حال ، اگر واقعاً می خواهید رانش را پیش بینی کنید ، به یک مدل از روتور خود احتیاج دارید. سپس می توانید از تئوری تکانه عنصر تیغه (BEMT) برای محاسبه رانش بر اساس ویژگی های روتور - توزیع آکورد ، توزیع پیچش ، پروفیل های کشیدن و کشیدن ایرفویل و ...$T = \frac{1}{4 \pi^2} K_T \rho D^4 \omega^2$ جایی که T رانش است ، ρ چگالی هوا است ، D قطر روتور شما است ، ω سرعت زاویه ای روتور است و $K_T$ ضریب رانش است که به عنوان تابعی از نسبت پیشروی ، ζ تعریف می شود.$K_T = C_{T1} \zeta + C_{T2}$و$\zeta = \frac{2 \pi \left( v - v_{\infty} \right)}{\omega D}$
ضرایب $C_{T1}$و $C_{T2}$مخصوص تیغه روتور است و ζ تابعی از سرعت نسبی خودرو در امتداد جهت رانش با توجه به هوای اطراف است $v - v_{\infty}$
هلی کوپتر وسیله نقلیه پرنده ای است که با استفاده از روتورهایی که به سرعت در حال چرخش هستند هوا را به سمت پایین سوق می دهد و در نتیجه نیروی رانشی ایجاد می کند که هلی کوپتر را در بالا نگه می دارد. هلی کوپترهای معمولی دارای دو روتور هستند. این دو را می توان به صورت دو روتور همسطح تنظیم کرد که هر دو نیروی رانش رو به بالا را دارند ، اما در جهت مخالف می چرخند (به منظور متعادل سازی گشتاورهای اعمال شده بر روی بدنه هلیکوپتر). همچنین می توان این دو روتور را با یك روتور اصلی كه رانش جانبی و یك روتور كناری كوچكتر به صورت جانبی جهت دهی می كند و گشتاور تولید شده توسط روتور اصلی را خنثی می كند ، تنظیم كرد. با این حال ، این تنظیمات برای کنترل جهت حرکت به ماشین آلات پیچیده ای نیاز دارند. از swashplate برای تغییر زاویه حمله به روتورهای اصلی استفاده می شود. به منظور تولید گشتاور ، زاویه حمله با قرارگیری هر روتور در هر زمان تنظیم می شود ،به گونه ای که در یک طرف صفحه روتور بیش از طرف دیگر رانش تولید می شود. طراحی پیچیده روتور و مکانیزم swash برخی از مشکلات ، افزایش هزینه های ساخت و پیچیدگی طراحی است.تصویر
هلی کوپتر کوادروتور (کواد کوپتر) هلی کوپتری است که دارای چهار روتور با فاصله مساوی است و معمولاً در گوشه های یک بدنه مربع مرتب شده است. با چهار روتور مستقل ، نیاز به مکانیزم swashplate کاهش می یابد. مکانیسم swashplate برای استفاده از درجه آزادی بیشتری به هلی کوپتر مورد نیاز بود ، اما با افزودن دو روتور دیگر می توان کنترل یکسانی را بدست آورد.برای مدل سازی صحیح پویایی سیستم ، ما نیاز به درک خصوصیات فیزیکی حاکم بر آن داریم. ما با توصیف موتورهای مورد استفاده برای کوادکوپتر خود شروع خواهیم کرد ، و سپس با استفاده از ملاحظات انرژی نیروها و رانش هایی را که این موتورها در کل کوادکوپتر تولید می کنند ، استخراج می کنیم. تمام موتورهای کوادکوپتر یکسان هستند ، بنابراین می توانیم یک موتور را بدون از دست دادن کلیت تجزیه و تحلیل کنیم. توجه داشته باشید که پروانه های مجاور در روبروی یکدیگر قرار دارند. اگر یک پروانه در حال چرخش "در جهت عقربه های ساعت" باشد ، دو پیشرفته مجاور "در خلاف جهت عقربه های ساعت" می چرخند ، بنابراین اگر همه پروانه ها با همان سرعت در حال چرخش باشند ، گشتاورها متعادل هستند.$ \tau = K_t (I - I_0)$
جایی که $\tau $ گشتاور موتور است ، I جریان ورودی است ، $ I_0$ جریان است که هیچ باری روی موتور وجود ندارد و $K_t $ ثابت تناسب گشتاور است. ولتاژ روی موتور مجموع EMF برگشتی و مقداری افت مقاومت است$ V = I R_m + K_v \omega$در اینجا V افت ولتاژ روی موتور ، Rm مقاومت موتور ، ω سرعت زاویه ای موتور است و Kv یک ثابت تناسب است (نشانگر EMF برگشتی تولید شده در هر دور در دقیقه). ما می توانیم از این توصیف موتور خود برای محاسبه توان مصرفی آن استفاده کنیم. قدرت است$P = IV = \frac{(\tau + K_t I_0) (K_t I_0 R_m + \tau R_m + K_t K_v \omega)}{ {K_t}^2} $
و توان $ P \approx \frac{(\tau + K_t I_0) K_v \omega}{ {K_t}}$و ساده شده ان $ P \approx \frac{K_v}{K_t} \tau \omega.$از نیروی او برای بالا نگه داشتن کوادکوپتر استفاده می شود. با صرفه جویی در مصرف انرژی ، می دانیم که انرژی موتور در یک بازه زمانی معین ، برابر با نیروی تولید شده بر پروانه برابر با فاصله هوای جابجا شده است $P\cdot {\text{d}\;}t = F \cdot {\text{d}\;}x $. به طور معادل ، قدرت برابر است با رانش برابر با سرعت هوا $P = F\frac{{\text{d}\;}x}{{\text{d}\;}t} $لذا $P = Tv_h $ما تصور می کنیم سرعت وسیله نقلیه کم است ، بنابراین vh سرعت هوا هنگام معلق شدن است. ما همچنین فرض می کنیم که سرعت جریان آزاد ،$v_\infty $، صفر است (هوای محیط اطراف نسبت به کوادکوپتر ثابت است). تئوری حرکت به ما معادله سرعت شناور به عنوان تابعی از رانش را می دهد ،
$v_h = \sqrt\frac{T}{2\rho A} $
جایی که ρ تراکم هوای اطراف است و A ناحیه ای است که توسط روتور خارج می شود. با استفاده از معادله ساده ما برای قدرت ، می توانیم بنویسیم$P = \frac{K_v}{K_t} \tau \omega = \frac{K_vK_\tau}{K_t} T \omega = \frac{T^\frac{3}{2}}{\sqrt{2\rho A}}. $توجه داشته باشید که در حالت کلی $\tau = \vec r \times \vec F $؛ در این حالت ، گشتاور متناسب با رانش T با برخی از نسبت های ثابت $ K_\tau$ است که با تنظیمات و پارامترهای تیغه تعیین می شود. با حل بزرگی رانش T ، به دست می آوریم که رانش متناسب با مربع سرعت زاویه ای موتور است:
$T = \left(\frac{K_vK_\tau\sqrt{2 \rho A}}{K_t} \omega\right)^2 = k\omega^2 $
که در آن k برخی از ثابت های مناسب است. با جمع آوری تمام موتورها ، متوجه می شویم که کل رانش روی کوادکوپتر (در قاب بدنه) توسط
$ T_B = \sum_{i=1}^4 T_i = k{\begin{bmatrix} 0 \\ 0 \\ \sum {\omega_i}^2 \end{bmatrix}}.$
علاوه بر نیروی رانش ، اصطکاک را به عنوان نیرویی متناسب با سرعت خطی در هر جهت مدل خواهیم کرد. این یک دید بسیار ساده از اصطکاک سیال است ، اما برای مدل سازی و شبیه سازی ما کافی است. نیروهای کششی جهانی ما با یک اصطلاح نیروی اضافی مدل می شوند
$ F_D = {\begin{bmatrix}
-k_d\dot x \\
-k_d\dot y \\
-k_d\dot z \\
\end{bmatrix}}$اگر دقت اضافی مورد نظر باشد ، $k_d $ ثابت را می توان به سه ثابت اصطکاک جداگانه ، برای هر جهت حرکت ، جدا کرد. اگر بخواهیم این کار را انجام دهیم ، می خواهیم اصطکاک را در قاب بدن به جای قاب اینرسی مدل کنیم.گشتاورهااکنون که نیروها را در کوادکوپتر محاسبه کردیم ، مایلیم گشتاورها را نیز محاسبه کنیم. هر روتور درمورد محور بدنه بدن مقداری گشتاور دارد. این گشتاور گشتاور مورد نیاز برای چرخاندن پروانه و تأمین نیروی رانش است. شتاب زاویه ای آنی را ایجاد می کند و بر نیروهای کشش اصطکاک غلبه می کند. معادله درگ از پویایی سیال ، نیروی اصطکاک را به ما می دهد:$F_D = \frac{1}{2}\rho C_D A v^2. $جایی که ρ تراکم سیال اطراف است ، A منطقه مرجع است (سطح مقطع پروانه ، نه منطقه ای که توسط پروانه خارج شده است) ، و $ C_D$ یک ثابت بدون بعد است. این ، اگرچه در بعضی موارد فقط در برخی موارد دقیق است ، اما برای اهداف ما کافی است. این نشان می دهد که گشتاور ناشی از کشیدن توسط داده می شود
$\tau_D = \frac{1}{2}R \rho C_D A v^2 = \frac{1}{2}R \rho C_D A (\omega R)^2 = b\omega^2 $
جایی که ω سرعت زاویه ای ملخ است ، R شعاع پروانه است و b یک ثابت ثابت با اندازه مناسب است. توجه داشته باشید که فرض کرده ایم که تمام نیروها در نوک پروانه اعمال می شود که مطمئناً نادرست است. با این حال ، تنها نتیجه ای که برای اهداف ما مهم است این است که گشتاور کشیدن با مربع سرعت زاویه ای متناسب است. سپس می توانیم گشتاور کامل را در مورد محور z برای موتور ith بنویسیم:
جایی که ω سرعت زاویه ای ملخ است ، R شعاع پروانه است و b یک ثابت ثابت با اندازه مناسب است. توجه داشته باشید که فرض کرده ایم که تمام نیروها در نوک پروانه اعمال می شود که مطمئناً نادرست است. با این حال ، تنها نتیجه ای که برای اهداف ما مهم است این است که گشتاور کشیدن با مربع سرعت زاویه ای متناسب است. سپس می توانیم گشتاور کامل را در مورد محور z برای موتور ith بنویسیم:
$\tau_z = b\omega^2 + I_M \dot\omega $
جایی که $ I_M$ لحظه اینرسی در مورد محور z موتور است ، ω˙ شتاب زاویه ای پروانه است و b ضریب درگ ما است. توجه داشته باشید که در پرواز حالت پایدار (یعنی برخاستن یا فرود آمدن) ، ω˙≈0 ، زیرا بیشتر اوقات پروانه ها یک رانش ثابت (یا تقریباً ثابت) را حفظ می کنند و تسریع نمی شوند. بنابراین ، ما این اصطلاح را نادیده می گیریم و کل عبارت را به ساده می کنیم
$ \tau_z = (-1)^{i+1} b{\omega_i}^2.$
اگر پروانه در حال چرخش در جهت عقربه های ساعت باشد و در صورت چرخاندن در خلاف جهت عقربه ساعت ، اصطلاح $(-1)^{i+1} $ برای پروانه ith مثبت است. گشتاور کلی در مورد محور z با جمع کل گشتاورهای هر پروانه آورده می شود:
$ \tau_\psi = b\left( {\omega_1}^2 - {\omega_2}^2 + {\omega_3}^2 - {\omega_4}^2\right)$
گشتاورهای رول و پیچ از مکانیک استاندارد گرفته شده اند. ما می توانیم به دلخواه موتورهای i = 1 و i = 3 را در محور رول انتخاب کنیم ، بنابراین$\tau_\phi = \sum r\times T = L(k{\omega_1}^2 - k{\omega_3}^2) = Lk({\omega_1}^2 - {\omega_3}^2) $و $ \tau_\theta = Lk({\omega_2}^2 - {\omega_4}^2)$جایی که L فاصله مرکز کوادکوپتر تا هر یک از ملخ ها است. همه با هم ، متوجه می شویم که گشتاورهای قاب بدنه هستند$ \tau_B = {\begin{bmatrix}
Lk({\omega_1}^2 - {\omega_3}^2) \\
Lk({\omega_2}^2 - {\omega_4}^2) \\
b\left( {\omega_1}^2 - {\omega_2}^2 + {\omega_3}^2 - {\omega_4}^2\right)
\end{bmatrix}}$مدلی که ما تاکنون بدست آورده ایم بسیار ساده است. ما بسیاری از جلوه های پیشرفته را که به پویایی بسیار غیرخطی کوادکوپتر کمک می کند ، نادیده می گیریم. ما نیروهای کشش چرخشی را نادیده می گیریم (سرعت چرخش ما نسبتاً کم است) ، فلپ تیغه (تغییر شکل تیغه های پروانه به دلیل سرعت زیاد و مواد انعطاف پذیر) ، سرعت سیال اطراف (باد) و غیره را نادیده می گیریم. برای نوشتن پویایی کوادکوپتر ما

معادلات حرکتدر قاب اینرسی شتاب کوادکوپتر به دلیل رانش ، گرانش و اصطکاک خطی است. ما می توانیم بردار رانش را در قاب اینرسی با استفاده از ماتریس چرخش R خود بدست آوریم تا بردار رانش را از قاب بدنه به قاب اینرسی ترسیم کنیم. بنابراین ، حرکت خطی می تواند به صورت خلاصه باشد
$m\ddot{x} = {\begin{bmatrix} 0 \\ 0 \\ -mg\end{bmatrix}} + RT_B + F_D $
که در آن $\vec x $ موقعیت کوادکوپتر است ، g شتاب ناشی از نیروی جاذبه است ،$F_D $ نیروی کشش است و $T_B $ بردار رانش در قاب جسم است. در حالی که داشتن معادلات حرکت خطی در قاب اینرسی مناسب است ، معادلات حرکتی چرخشی برای ما در قاب جسم مفید است ، به طوری که می توانیم چرخش ها را در مورد مرکز کوادکوپتر به جای مرکز اینرسی خود بیان کنیم. ما معادلات چرخشی حرکت را از معادلات اویلر برای پویایی جسم صلب بدست می آوریم. معادلات اویلر که به صورت بردار بیان شده اند ، به صورت زیر نوشته می شوند$ I\dot\omega + \omega\times (I\omega) = \tau$
جایی که ω بردار سرعت زاویه ای است ، من ماتریس اینرسی است و$\tau $ بردار گشتاورهای خارجی است. می توانیم این را دوباره بنویسیم
$ \dot\omega = {\begin{bmatrix} \dot \omega_x \\ \dot \omega_y \\ \dot \omega_z\end{bmatrix}} = I^{-1}\left(\tau - \omega\times (I\omega)\right).$
ما می توانیم کوادکوپتر خود را به عنوان دو میله یکنواخت نازک که از مبدا عبور می کنند و در انتهای آنها جرم نقطه ای (موتور) قرار دارد ، مدل کنیم. با این حساب ، واضح است که تقارن ها منجر به ایجاد ماتریس اینرسی مورب فرم می شوند
$I = {\begin{bmatrix} I_{xx} & 0 & 0 \\ 0 & I_{yy} & 0 \\ 0 & 0 & I_{zz}\end{bmatrix}}. $
بنابراین ، ما نتیجه نهایی خود را برای معادلات چرخشی قاب جسم بدست می آوریم
$\dot\omega = {\begin{bmatrix}
\tau_\phi {I_{xx}}^{-1} \\
\tau_\theta {I_{yy}}^{-1} \\
\tau_\psi {I_{zz}}^{-1}
\end{bmatrix}} - {\begin{bmatrix}
\frac{I_{yy} - I_{zz}}{I_{xx}} \omega_y\omega_z \\
\frac{I_{zz} - I_{xx}}{I_{yy}} \omega_x\omega_z \\
\frac{I_{xx} - I_{yy}}{I_{zz}} \omega_x\omega_y
\end{bmatrix}} $خوب حالا کنترل کنترل
هدف از تولید مدل ریاضی کوادکوپتر کمک به توسعه کنترلرهای کوادکوپتر فیزیکی است. ورودی های سیستم ما از سرعت زاویه ای هر روتور تشکیل شده است ، زیرا تنها چیزی که می توانیم کنترل کنیم ولتاژهای مختلف موتورها است. توجه داشته باشید که در مدل ساده شده ما ، فقط از مربع سرعت های زاویه ای ،$ {\omega_i}^2$ و هرگز از خود سرعت زاویه ای ، ωi استفاده می کنیم. برای سادگی نمره ای ، اجازه دهید ورودی های $ \gamma_i = {\omega_i}^2$ را معرفی کنیم. از آنجا که می توانیم ωi تنظیم کنیم ، می توانیم به وضوح $ \gamma_i$ را نیز تنظیم کنیم. با این کار می توانیم سیستم خود را به عنوان معادله دیفرانسیل مرتبه اول در فضای حالت بنویسیم. بگذارید x1 موقعیتی در فضای کوادکوپتر باشد ، x2 سرعت خطی کوادکوپتر باشد ، x3 زاویه های رول ، گام و زاویه و x4 بردار سرعت زاویه ای باشد. (توجه داشته باشید که همه اینها 3 بردار هستند.) با داشتن این حالت ، ما می توانیم معادلات فضای حالت را برای تکامل حالت خود بنویسیم.
$ \begin{aligned}
\dot{x_1} &= x_2 \\
\dot{x_2} &= {\begin{bmatrix} 0 \\ 0 \\ -g\end{bmatrix}} + \frac{1}{m} RT_B + \frac{1}{m} F_D \\
\dot{x_3} &= {\begin{bmatrix}
1 &0 & -s_\theta \\
0 & c_\phi & c_\theta s_\phi \\
0 & -s_\phi & c_\theta c_\phi
\end{bmatrix}}^{-1} x_4 \\
\dot{x_4} &= {\begin{bmatrix}
\tau_\phi {I_{xx}}^{-1} \\
\tau_\theta {I_{yy}}^{-1} \\
\tau_\psi {I_{zz}}^{-1}
\end{bmatrix}} - {\begin{bmatrix}
\frac{I_{yy} - I_{zz}}{I_{xx}} \omega_y\omega_z \\
\frac{I_{zz} - I_{xx}}{I_{yy}} \omega_x\omega_z \\
\frac{I_{xx} - I_{yy}}{I_{zz}} \omega_x\omega_y
\end{bmatrix}}\end{aligned}$
توجه داشته باشید که ورودی های ما به طور مستقیم در این معادلات استفاده نمی شوند. با این حال ، همانطور که خواهیم دید ، ما می توانیم مقادیر برای $ \tau$ و T را انتخاب کنیم ، و سپس برای مقادیر $\gamma_i $حل کنیم.این به ما یک مجموعه سه معادله ای با چهار ناشناخته می دهد. با اعمال محدودیتی که ورودی های ما باید کوادکوپتر را بالا نگه دارند ، می توانیم این مورد را محدود کنیم:
$ T = mg.$
توجه داشته باشید که این معادله این واقعیت را نادیده می گیرد که رانش مستقیماً به سمت بالا قرار نخواهد گرفت. این امر کاربرد کنترل کننده ما را محدود می کند ، اما برای انحرافات کوچک از ثبات نباید مشکلات عمده ای ایجاد کند. اگر راهی برای تعیین دقیق زاویه جریان داشته باشیم ، می توانیم آن را جبران کنیم. اگر ژیروسکوپ ما از دقت کافی برخوردار باشد ، می توان مقادیر بدست آمده از ژیروسکوپ را برای به دست آوردن زوایای θ و $\phi $ادغام کرد. در این حالت ، ما می توانیم رانش لازم برای نگه داشتن کوادکوپتر را در سطح بالا محاسبه کنیم و مقدار میلی متر رانش را روی محور z اینرسی انجام دهیم. ما متوجه شدیم که
$T_\text{proj} = mg\cos\theta\cos\phi $
بنابراین ، با یک اندازه گیری دقیق زاویه ، می توانیم در عوض این الزام را که برابر رانش است برابر کنیم
$ T = \frac{mg}{\cos\theta\cos\phi}$
در این حالت مولفه رانش در امتداد محور z مثبت برابر با میلی گرم است. ما می دانیم که رانش متناسب با مقدار وزنی ورودی است:$T = \frac{mg}{\cos\theta\cos\phi} = k\sum \gamma_i \implies \sum\gamma_i = \frac{mg}{k\cos\theta\cos\phi} $با این محدودیت اضافی ، مجموعه ای از چهار معادله خطی با چهار مجهول $\gamma_i $ داریم. سپس می توانیم برای هر$\gamma_i $ حل کنیم و مقادیر ورودی زیر را بدست آوریم:
$ \begin{aligned}
\gamma_1 &= \frac{mg}{4k\cos\theta\cos\phi}-\frac{2 b {e_\phi} {I_{xx}}+{e_\psi} {I_{zz}} k L}{4 b k L} \\
\gamma_2 &= \frac{mg}{4k\cos\theta\cos\phi}+\frac{ {e_\psi} {I_{zz}}}{4 b}-\frac{ {e_\theta} {I_{yy}}}{2 k L} \\
\gamma_3 &= \frac{mg}{4k\cos\theta\cos\phi}-\frac{-2 b {e_\phi} {I_{xx}}+{e_\psi} {I_{zz}} k L}{4 b k L} \\
\gamma_4 &= \frac{mg}{4k\cos\theta\cos\phi}+\frac{ {e_\psi} {I_{zz}}}{4 b}+\frac{ {e_\theta} {I_{yy}}}{2 k L}\end{aligned}$
این یک مشخصات کامل برای کنترل کننده PD ماست. با استفاده از محیط شبیه سازی خود می توانیم این کنترل کننده را شبیه سازی کنیم. کنترل کننده سرعت و زاویه های زاویه ای را به صفر می رساند.
تصویروتصویر
تصویر

نمایه کاربر
rohamjpl

نام: roham hesami

محل اقامت: Tehran -Qeytariyeh, Ketabi Street, 8 meters from Saba

عضویت : سه‌شنبه ۱۳۹۹/۸/۲۰ - ۰۸:۳۴


پست: 609

سپاس: 311

جنسیت:

تماس:

Re: نحوه ساخت یک هلیکوپتر یا کوادکوپتر و محاسبات آن

پست توسط rohamjpl »

کوادکوپترها از ایجاد اختلاف فشار در اتمسفر پیرامون خود برای پرواز استفاده میکنند.
کوادکوپترها با دارا بودن 4 موتور و پره ، و چرخش دو به دو معکوس این موتور ها ، نیروهای گشتاور ایجاد شده را خنثا و اختلاف فشار لازم جهت پرواز را ایجاد میکندبدنه یا ایرفریم
به بدنه کواد ایرفریم می گویند بدنه باید سبک و مقاوم باشد. در ربات هایی که تعادل دقیق ، حساس و مهم هست بدنه باید با دقت بیشتری ساخته شود. تا تعادل سیستم را به هم نزند.موتور براشلس
پیشرانه کوادکوپتر 4 عدد موتور براشلس هستن ، موتورهایی با تعداد دور (RPM) بالا هستن.راه اندازی موتورهای براشلس متفاوت تر از موتورهای DC است و قطعه ای است که باعث ایجاد نیروی محرکه در یک وسیله می گردد ، موتورها کاربرد بسیار فراوانی در زندگی روزمره بشر دارند ، تا جاییکه بدون موتور تقریبا زندگی غیر ممکن می گردد.
موتور الکتریکی به دو بخش AC و DC تقسیم بندی می گردد.موتورهای DC که دارای قطب مثبت و منفی بوده و گشتاور بسیار بالایی دارند و امروزه در صنعت کاربردهای فراوانی دارند ، یکی از کاربردهای موتورهای DC استفاده آنها در رادیو کنترل و تولید اسباب بازی می باشد.
موتورهای AC دارای قطب مثبت و منفی نبوده و توسط جریان متناوب کار می کنند که فرکانس کاری آنها بین ۵۰ الی ۶۰ هرتز می باشد ، البته ما در این قسمت قصد نداریم تا به توضیح مفصل در مورد موتورهای AC بپردازیم زیرا این موتورها دارای محاسبات و کارایی خاص خود هستند که در این منوال از حوصله بخش خارج خواهد بود.
رانش یا تراست (Thrust) نیرویی واکنشی است، که جسم را در جهت مخالف به حرکت در می‌آورد، هنگامی که یک سامانه جرمی از یک سو رها ساخته می‌شود یا به بیرون فشرده می‌شود. گاه برای این مفهوم واژه پیشرانش هم بکار می‌رود. پیشرانش، رانش رو به جلو و پسرانش، رانش رو به عقب است. رانش هواپیما را در هوا به جلو می‌برد. رانش برای مقابله با نیروی اصطکاک در هواپیما یا نیروی وزن در راکت استفاده می‌شود. این نیرو در هواپیما توسط موتور هواپیما و در راکت توسط سیستم‌های سوختی ایجاد می‌شود.
نسبت تراست به وزن:
در مولتی روتور ها مهم است که اطمینان داشته باشید موتور های شما میتوانند حدود ۵۰ درصد تراست بیشتر از وزن کل مولتی روتور شما را تولید کنند.به بیان دیگر،مولتی روتور باید بتواند با بیش از نصف تراتل هاور داشته باشد.
به عنوان یک قانون کلی حداقل نسبت تراست به وزن در تمامی مولتی روتورها می بایست ۲ به ۱ باشد تا بتوانید کنترل خوبی را بر روی ربات داشته باشید. به همین دلیل معمولا از بردهای کمکی (ماژول) بنام اسپید کنترلر استفاده می شود. این موتورها دارای 3 سیم هستن و یک موتور براشلس کوچک ممکن است بیست آمپر جریان بکشد.اسپید کنترلرهمانطور که از نام آن پیداست وظیفه کنترلر سرعت موتورها را به عهده دارد. اسپید کنترلر باید متناسب دیگر قطعات و به خصوص موتورها انتخاب شود.فلایت کنترلر یا کنترل کننده پرواز وظیفه کنترل پرواز ، تعادل و پایداری کواد را بر عهده دارد. این برد با دستور به اسپید کنترلرها ، جهت ، سرعت و پایداری کواد را کنترل می کند.رادیو کنترلر
برای کنترل ربات و جهت دهی به حرکت کواد از راه دور به یک رادیو کنترلر نیاز داریم. رادیو کنترلرها در تعداد کانال های متفاوت در بازار هستند و با توجه به کوادکوپتر خود میتوانید نوع مناسبی را انتخاب کنید.برای کوادکوپتر 4 عدد ملخ نیاز است که دوتای آن پوشر یا دمنده و دوتای آن پولر یا مکنده هستن. دوتا ملخ در یک جهت و دوتای دیگر در جهت دیگر می چرخند.ماژول GPS ، فرستنده و گیرنده تصویر ، دوربین ، گیم بال ، استابلایزر، سایبان دوربین ، پایه GPS ، و… را نیز میتوانید نسبت به نیازتان به کواد اضافه کنید.
کوادروتور یا کوادکوپتر از خانواده هواپیماهای بدون سرنشین (UAV) است و از دو جفت چرخنده و پروانه ضد چرخش تشکیل شده است که در راس یک قاب مربع قرار دارد. این هواپیما قادر به انجام برخاست و فرود عمودی (VTOL) ، مشابه هلی کوپترهای معمولی است. با این حال ، سیستم کنترل بین هلی کوپترها و کوادکوپترها به ترتیب به دلیل پویایی پرواز از یک به دیگری متفاوت است
برای ایجاد سیستم کنترل ، جمع آوری داده های خاص مربوط به رفتار پرواز کوادکوپتر ، یعنی موقعیت ، ارتفاع و شتاب سکوی پرواز با استفاده از سنسورهای ویژه برای این کار لازم است. واحد اندازه گیری اینرسی (IMU) استفاده شده سنسور جهت گیری . این IMU دارای ژیروسکوپ و شتاب سنج است که می تواند داده ها را مستقیماً از زاویه های اولر یا کواترنشن ها ارسال کند. Footnote1 برای این پروژه ، خروجی زاویه های اویلر از کواترنیوم ها انتخاب شد ، به دلیل راحتی داده ها بر اساس رویکرد ما ، ساخت مدل ریاضی است. سیستم داده های حاصل از سنسورها توسط میکروکنترلرFootnote2 (μC) دریافت می شود ، سپس برای کنترل رفتار کوادکوپتر پردازش می شود و سیگنال خروجی مستقیماً به درایورهای موتور ارسال می شود.کل تنظیم کوادکوپتر از دو موتور چرخان در جهت عقربه های ساعت و دو موتور چرخان خلاف جهت عقربه های ساعت در راس یک چهارچوب مربع شکل تشکیل شده است ، حرکت در فضا با تغییر نیرو و گشتاور نهایی در هر محور حاصل می شود. ، برای دستیابی به تغییرات مناسب گشتاور و نیرو بر روی سیستم ، موتورها طوری تنظیم می شوند که روی جفت کار کنند. و به ترتیب موتور -4.تصویرحرکت انتقالی کوادکوپتر مستلزم کج شدن سکو به سمت محور مورد نظر است. زاویه مرجع کوادکوپتر با استفاده از رول ϕ ، گام θ ، yaw ψ حرکت از سه بعد (3D) داده می شود ، .بر اساس ترتیب موتورها ، فقط برای تغییر سرعت یکی از جفت موتورها لازم است که باعث حرکت در شش درجه آزادی (DOF) شود. این دلیلی است که به کوادکوپتر اجازه می دهد تا در شش DOF حرکت کند و فقط با چهار ورودی کنترل شود .دینامیک پرواز کوادروتور بر اساس رابطه بین سرعت زاویه ای موتورها ، یعنی نیروی بالابرنده $F_{t}$ و گشتاور نهایی$\tau _{t}$ تولید شده توسط موتورها و اعمال شده بر روی کوادروتور است. چهار حرکت با تغییر$F_{t}$ و $\tau _{t}$ بدست می آیند:Vertical ’z’ با جمع شدن تمام نیروهای روتور در محور z تولید می شود.Pitching ’θ’ این حرکت با دستکاری گشتاور نهایی در اطراف محور y حاصل می شود. این کار با تغییر سرعت روتورهای جلو در برابر روتورهای عقب انجام می شود (افزایش یا کاهش سرعت با توجه به حرکت مورد نظر).Rolling 'The' اصلی که در پشت این حرکت قرار دارد همانند صدای بلند است ، اما محور مرجع جدید x است. روتورهای چپ و راست حرکت غلتک را فراهم می کنند.Yawing ’ψ’ حرکت yaw توسط گشتاور واکنش پذیر روتورها ایجاد می شود. این حرکت با سرعتهای چرخشی مختلفی که به جفت موتورهای ضد چرخش اعمال می شود ، معرفی می شود. باعث ایجاد اختلاف گشتاور بین آنها می شود و گشتاور نهایی را در اطراف محور z اعمال می کند.به طور معمول از دو رویکرد برای توسعه مدل ریاضی اکثر ربات های متحرک استفاده می شود معادلات نیوتن و اولر.معادلات لاگرانژی.
من می خواهم مدل ریاضی خود را بر رویکرد کلاسیک ارائه شده توسط قوانین نیوتن متمرکز کنم. بنابراین ، من مدل خود را بر اساس معادلات نیوتن-اولر توسعه می دهم. بر اساس این تئوری ها ، کوادکوپتر باید به عنوان یک بدن صلب توصیف شود که بر اساس یک سیستم مختصات ثابت از طریق فریم های مختلف مرجع حرکت می کند. اینها به ما کمک می کنند تا موقعیت جهت گیری سکوی پرواز در فضا را توصیف کنیم.ابتدا لازم است که بفهمید کوادکوپتر چگونه در فضا حرکت می کند و اینکه کدام حرکات با هر فریم مرجع مرتبط هستند. این موارد به ما کمک می کنند تا درک کنیم چگونه اجسام در فضا حرکت می کنند و چگونه می توان آنها را به صورت ریاضی نشان داد. در ادامه فریم هایی ارائه می شود که پویایی کوادکوپتر را توصیف می کنند.
قاب اینرسی ابتدا لازم است که بفهمید کوادکوپتر چگونه در فضا حرکت می کند ( و اینکه کدام حرکات با هر فریم مرجع مرتبط هستند. این موارد به ما کمک می کنند تا درک کنیم چگونه اجسام در فضا حرکت می کنند و چگونه می توان آنها را به صورت ریاضی نشان داد. در ادامه فریم هایی ارائه می شود که پویایی کوادکوپتر را توصیف می کنند.
قاب اینرسی سیستم مختصات ثابت زمین.ابتدا لازم است که بفهمید کوادکوپتر چگونه در فضا حرکت می کند و اینکه کدام حرکات با هر فریم مرجع مرتبط هستند. این موارد به ما کمک می کنند تا درک کنیم چگونه اجسام در فضا حرکت می کنند و چگونه می توان آنها را به صورت ریاضی نشان داد. در ادامه فریم هایی ارائه می شود که پویایی کوادکوپتر را توصیف می کنند.
قاب اینرسی Fi: سیستم مختصات ثابت زمین.
قاب پرنده $F^{v}$: مبدا مرکز جرم کوادکوپتر است و با $F^{i}$ همخوانی دارد.
Frame Body Fb: $F^{v}$ روی ϕ + چرخیده است ،
قاب پرنده $F^{v}$ مبدا مرکز جرم کوادکوپتر است و با$F^{i}$ همخوانی دارد.
Frame Body Fb: $F^{v}$ روی ϕ + چرخیده است ، سیستم مختصات ثابت زمین.بردارهای موجود در قاب پرنده Fv توسط ماتریس داده شده در معادله مساوی توصیف می شوند.$\begin{aligned} F^{v}(1) = \begin{pmatrix} 1 &{}\quad 0 &{}\quad 0 \\ 0 &{}\quad 1 &{}\quad 0 \\ 0 &{}\quad 0 &{}\quad 1 \end{pmatrix} \end{aligned}$بردارهای قاب خودرو مربوط به ماتریس 'Fv' پایه ای برای تجزیه و تحلیل فریم های مرجع ما محسوب می شوند. قسمت اولیه این تجزیه و تحلیل شامل چرخش قاب بردار "Fv" با توجه به برخی از محورهای خاص برای ایجاد منابع ریاضی ما برای تجزیه و تحلیل حرکات در فضای 3D است.$\begin{aligned} R_{z}(\psi ) = \begin{pmatrix} \cos (\psi ) &{}\quad -\sin (\psi ) &{}\quad 0 \\ \sin (\psi ) &{}\quad \cos (\psi ) &{}\quad 0 \\ 0 &{}\quad 0 &{}\quad 1 \end{pmatrix} \end{aligned}$و$\begin{aligned} R_{y}(\theta ) = \begin{pmatrix} \cos (\theta ) &{}\quad 0 &{}\quad \sin (\theta ) \\ 0 &{}\quad 1 &{}\quad 0 \\ -\sin (\theta ) &{}\quad 0 &{}\quad \cos (\theta ) \end{pmatrix} \end{aligned}$و$\begin{aligned} R_{x}(\phi ) = \begin{pmatrix} 1 &{}\quad 0 &{}\quad 0 \\ 0 &{}\quad \cos (\phi ) &{}\quad -\sin (\phi ) \\ 0 &{}\quad \sin (\phi ) &{}\quad \cos (\phi ) \end{pmatrix} \end{aligned}$پس از مشخص شدن فریم های مختصات ، می توان با استفاده از دو عمل چرخش و انتقال ، حرکات را از یک قاب به قاب دیگر نشان داد. در این حالت ، ماتریس چرخش برای رفتن از قاب بدنه Fb به فریم وسیله نقلیه Fv با تعریف می شودتصویربارابطه $\begin{aligned} R^{v}_{b}(\psi ,\theta ,\phi )= \quad& {} R^{v}_{v1}(\psi )~R^{v1}_{v2}(\theta )~R^{v2}_{b}(\phi )\nonumber \\ R^{v}_{b}(\psi ,\theta ,\phi )= \quad &\begin{pmatrix} C\psi ~C\theta ;{} &\quad C\psi ~S\theta ~S\phi - S\psi ~C\theta ; &{}\quad C\psi ~S\theta ~C\phi + S\psi ~S\phi \\ S\psi ~C\theta ; &{}\quad S\psi ~S\theta ~S\phi + C\psi ~C\phi ; &{}\quad S\psi ~S\theta ~C\phi - C\psi ~S\phi \\ -S\theta ; &{}\quad C\theta ~S\phi ; &{} \quad C\theta ~C\phi \end{pmatrix} \end{aligned}$
سینماتیک
اولین قدم تعریف سرعت خطی در قاب خودرو است همانطور که در معادله نشان داده شده است.$\begin{aligned} \dfrac{d}{dt} \begin{pmatrix} x^{i}\\ y^{i}\\ z^{i} \end{pmatrix} =~ R^{v}_{b} \begin{pmatrix} v_{x}^{~b}\\ v_{z}^{~b}\\ v_{z}^{~b} \end{pmatrix} = \begin{pmatrix} v_{x}^{~i}\\ v_{z}^{~i}\\ v_{z}^{~i} \end{pmatrix} \end{aligned}$
دوم ، سرعت زاویه ای را مانند $w_{b} = \begin{pmatrix} p&\quad q&\quad r \end{pmatrix}^{T}~$ تعریف می کنیم و در نظر می گیریم که دامنه مشتق زاویه کمتر یا برابر با grades / ، 20 درجه خواهد بود. بنابراین ، می توان از معیارهای تقریب کوچک زاویه استفاده کرد
با ترکیب تعریف سرعت زاویه ای که در بالا توضیح دادم و مفاهیم نشان داده شده ، می توان با دنبال کردن مراحل داده شده توسط معادله ، سرعت زاویه ای را به دست آورد$\begin{aligned} \begin{pmatrix} p \\ q \\ r \end{pmatrix}= & {} R_{v2}^{b}(\dot{\phi }) ~ \begin{pmatrix} \dot{\phi } \\ 0 \\ 0 \end{pmatrix} + R_{v2}^{b}(\dot{\phi }) ~ R_{v1}^{v2}(\dot{\theta }) \begin{pmatrix} 0 \\ \dot{\theta } \\ 0 \end{pmatrix}\nonumber \\&+ R_{v2}^{b}(\dot{\phi }) ~ R_{v1}^{v2}(\dot{\theta }) ~ R_{vv}^{v1}(\dot{\psi }) \begin{pmatrix} 0 \\ 0 \\ \dot{\psi } \end{pmatrix} \end{aligned}$و$\begin{aligned} \begin{pmatrix} p \\ q \\ r \end{pmatrix}= & {} \begin{pmatrix} 1 &{}\quad 0 &{}\quad -\sin (\theta ) \\ 0 &{}\quad \cos (\phi ) &{}\quad \sin (\phi )~\cos (\theta ) \\ 0 &{}\quad -\sin (\phi ) &{}\quad \cos (\phi )~\cos (\theta ) \end{pmatrix} ~ \begin{pmatrix} \dot{\phi } \\ \dot{\theta } \\ \dot{\psi } \end{pmatrix} \end{aligned}$و$\begin{aligned} \begin{pmatrix} \dot{\phi } \\ \dot{\theta } \\ \dot{\psi } \end{pmatrix} = \begin{pmatrix} 1; &{}\quad \sin (\phi )~\tan (\theta ); &{}\quad \cos (\phi )~\tan (\theta ) \\ 0; &{}\quad \cos (\phi ); &{}\quad -\sin (\phi ) \\ 0; &{}\quad \sin (\phi )~\sec (\theta ); &{}\quad \cos (\phi )~\sec (\theta ) \end{pmatrix} \begin{pmatrix} p\\ q \\ r \end{pmatrix} \end{aligned}$قانون دوم نیوتنFootnote7 توسط معادله تعریف شده است. برای حرکت و انتقالی$\begin{aligned} m~\frac{d^{2}x}{dt^{2}} = m\frac{dv}{dt_{i}} = m~a = F \end{aligned}$و$\begin{aligned} m\frac{dv}{dt_{i}} = m\left(\frac{dv}{dt_{b}} + w_{b/i}~\times ~v \right) = F \end{aligned}$برای بدست آوردن شتاب خطی در قاب بدنه ، جدا کردن $\frac{dv}{dt_{b}}$ ضروری است$\begin{aligned} \begin{pmatrix} \dot{v}_{x}^{~b} \\ \dot{v}_{y}^{~b} \\ \dot{v}_{z}^{~b} \\ \end{pmatrix}= & {} \frac{1}{m} \left\{ -m \begin{pmatrix} \hat{i} &{}\quad \hat{j} &{}\quad \hat{k} \\ p &{}\quad q &{}\quad r \\ v_{x}^{b} &{}\quad v_{y}^{b} &{}\quad v_{z}^{b} \end{pmatrix} + \begin{pmatrix} F_{x} \\ F_{y} \\ F_{z} \end{pmatrix} \right\} \end{aligned}$و$\begin{aligned} \begin{pmatrix} \dot{v}_{x}^{~b} \\ \dot{v}_{y}^{~b} \\ \dot{v}_{z}^{~b} \\ \end{pmatrix}= & {} \begin{pmatrix} v_{y}^{~b}~r - v_{z}^{~b}~q \\ v_{z}^{~b}~p - v_{x}^{~b}~r \\ v_{x}^{~b}~q - v_{y}^{~b}~p \end{pmatrix} + \frac{1}{m} \begin{pmatrix} F_{x} \\ F_{y} \\ F_{z} \end{pmatrix} \end{aligned}$برای محاسبه شتاب زاویه ای روی قاب بدنه ، لازم است قانون دوم نیوتن را برای حرکت چرخشی اعمال کنم و شامل اثر کوریولیس باشد.$\begin{aligned} \frac{dH^{b}}{dt_{i}} = \frac{dH^{b}}{dt_{b}} + w_{b/i} \times H^{b} = \sum \tau ^{b} \end{aligned}$شتاب زاویه ای در قاب بدنه با بیان Eq بدست می آید. در مختصات بدن و جدا کردن $\frac{dw^{b}}{dt_{n}}$یعنی$\begin{aligned} \begin{pmatrix} \dot{p} \\ \dot{q} \\ \dot{r} \end{pmatrix} = \begin{pmatrix} \frac{J_{y}-J_{z}}{J_{x}}~qr \\ \frac{J_{z}-J_{x}}{J_{y}}~pr \\ \frac{J_{x}-J_{y}}{J_{z}}~pq \\ \end{pmatrix} + \begin{pmatrix} \frac{1}{J_{x}}\tau _{\phi } \\ \frac{1}{J_{y}}\tau _{\theta } \\ \frac{1}{J_{z}}\tau _{\psi } \\ \end{pmatrix} \end{aligned}$
تصویر تصویر برای حساب اینرسی ها ، در نظر گرفته شده است که یک مدل ایده آل است که در شکل مشاهده میکنید. کوادکوپتر با یک مرکز متراکم کروی با جرم M و شعاع R فرض می شود. موتورها مانند چهار نقطه جرم واقع در یک فاصله l مدل می شوند از مرکز با جرم m. با روشن بودن این پارامترها ، اکنون می توان اینرسی مربوطه کل سیستم را محاسبه کرد$\begin{aligned} J_{x}= & {} J_{y} = \frac{2MR^{2}}{5} + 2ml^{2} \end{aligned}$.و$\begin{aligned} J_{z}= & {} \frac{2MR^{2}}{5} + 4ml^{2} \end{aligned}$هر موتور یک نیروی F به سمت بالا و یک گشتاور τ تولید می کند. بنابراین ، کل نیروی کوادکوپتر با جمع کل نیروها $F_{t}=\sum _{i=1}^{4}F_{i}$ داده می شود. همین اصل برای گشتاور اعمال می شود $\tau _{t}=\sum _{i=1}^{4}\tau _{i}$با توجه به این ، گشتاورهای غلتکی ، پیچشی و خمیازه ای تعریف می شوند.$\begin{aligned} \begin{pmatrix} \tau _{\phi } \\ \tau _{\theta } \\ \tau _{\psi } \end{pmatrix} = \begin{pmatrix} l(F_{d}-F_{b}) \\ l(F_{a}-F_{c}) \\ (\tau _{b}+\tau _{d})-(\tau _{a}+\tau _{c}) \end{pmatrix} \end{aligned}$نیروی جاذبه همچنین در حال اعمال نیرو بر روی فریم وسیله نقلیه Fv کوادکوپتر است و فقط در جهت z تأثیر می گذارد. با این حال ، برای تطبیق این نیرو با مرجع ذکر شده در قاب بدنه Fb ، لازم است در چرخش مربوطه ضرب شود$\begin{aligned} F_{g}^{v} = R_{v}^{b}~F_{g}^{b} \longrightarrow F_{g}^{v} = \begin{pmatrix} -mg~\sin (\theta ) \\ mg~\cos (\theta )~\sin (\phi ) \\ mg~\cos (\theta )~\cos (\phi ) \end{pmatrix} \end{aligned}$
و$\begin{aligned} \begin{pmatrix} \dot{v}_{x}^{~b} \\ \dot{v}_{y}^{~b} \\ \dot{v}_{z}^{~b} \\ \end{pmatrix} = \begin{pmatrix} v_{y}^{~b}~r - v_{z}^{~b}~q \\ v_{z}^{~b}~p - v_{x}^{~b}~r \\ v_{x}^{~b}~q - v_{y}^{~b}~p \end{pmatrix} + \begin{pmatrix} -g\sin \theta \\ g\cos \theta ~\sin \phi \\ g\cos \theta ~\cos \phi \end{pmatrix} + \frac{1}{m} \begin{pmatrix} 0 \\ 0 \\ \sum F \end{pmatrix} \end{aligned}$تصویرتصویر
ایده ای که در پشت این مدل ریاضی وجود دارد امکان ایجاد سیستم کنترل است. با این حال ، اگر مدل بیش از حد پیچیده باشد ، طراحی سیستم کنترل نیز پیچیده خواهد بود. برای مدل قبلی می توان برخی از ساده سازی ها را بدون از دست دادن دقت قابل توجه در رفتار حرکت فرض کرد.
با فرض اینکه ϕ و θ زاویه های کوچکی باشند ، سرعت زاویه ای به صورت Eq توصیف می شود.$\begin{aligned} \begin{pmatrix} \dot{\phi } \\ \dot{\theta } \\ \dot{\psi } \end{pmatrix} = \begin{pmatrix} p \\ q \\ r \end{pmatrix} ~;~ F^{i} \end{aligned}$همچنین ، می توان فرض کرد که اصطلاحات کوریولیس qr ، pr و pq کوچک و قابل اغماض هستند. ساده سازی معادله ، نسخه ساده شده شتاب زاویه ای در بدست آمده است$\begin{aligned} \begin{pmatrix} \dot{p} \\ \dot{q} \\ \dot{r} \end{pmatrix} = \begin{pmatrix} \frac{1}{J_{x}}~\tau _{\phi } \\ \frac{1}{J_{y}}~\tau _{\theta } \\ \frac{1}{J_{z}}~\tau _{\psi } \\ \end{pmatrix} \end{aligned}$و$\begin{aligned} \begin{pmatrix} \ddot{\phi } \\ \ddot{\theta } \\ \ddot{\psi } \end{pmatrix} = \begin{pmatrix} \frac{1}{J_{x}}~\tau _{\phi } \\ \frac{1}{J_{y}}~\tau _{\theta } \\ \frac{1}{J_{z}}~\tau _{\psi } \\ \end{pmatrix} ~;~ F^{v} \end{aligned}$برای شتاب خطی ، در نظر خواهم گرفت که اصطلاحات اثر کوریولیس تأثیر مهمی ندارند. همچنین ، من هر نیرو را بر روی قاب خودرو Fv منعکس خواهم کرد.$\begin{aligned} \begin{pmatrix} \dot{v}_{x}^{v} \\ \dot{v}_{y}^{v} \\ \dot{v}_{z}^{v} \end{pmatrix}= & {} R_{b}^{v}~ \begin{pmatrix} v_{x}^{b} \\ v_{y}^{b} \\ v_{z}^{b} \end{pmatrix} \end{aligned}$و$\begin{aligned} \begin{pmatrix} \dot{v}_{x}^{v} \\ \dot{v}_{y}^{v} \\ \dot{v}_{z}^{v} \end{pmatrix}= & {} \begin{pmatrix} 0 \\ 0 \\ g \end{pmatrix} + \frac{F}{M}~ \begin{pmatrix} -\cos (\psi )~\sin (\theta )~\cos (\phi ) + \sin (\psi )~\sin (\phi ) \\ -\sin (\psi )~\sin (\theta )~\cos (\phi ) - \cos (\psi )~\sin (\phi ) \\ -\cos (\theta )~\cos (\phi ) \end{pmatrix} ;~ F^{v} \end{aligned} $
و
.$\begin{aligned} \begin{pmatrix} m_{1} \\ m_{2} \\ m_{3} \\ m_{4} \end{pmatrix} = \begin{pmatrix} Thro[x] + Pitch[x] + Roll[x] - Yaw[x] \\ Thro[x] + Pitch[x] - Roll[x] - Yaw[x] \\ Thro[x] + Pitch[x] - Roll[x] - Yaw[x] \\ Thro[x] + Pitch[x] + Roll[x] + Yaw[x] \\ \end{pmatrix} \end{aligned}$

میکسرها رانش کل موتور ترکیبی از قدرت اعمال شده توسط دریچه گاز ، پیچ ، رول و خمیازه با هم در یک خروجی واحد در هر سیگنال است. بنابراین ، تمام داده های پردازش شده باید در یک مقدار واحد برای هر یک از چهار موتور مشخص شود. داده ها در ماتریسی 4x4 مانند آنچه در Eq شرح داده شده تنظیم می شوند. ، و مقدار نهایی مستقیماً به بخش "خروجی" داده می شود
تصویر

ارسال پست