دینامیک موشک کنترلر LQR وPID

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

ارسال پست
نمایه کاربر
rohamavation

نام: roham hesami radرهام حسامی راد

محل اقامت: 100 مایلی شمال لندن جاده آیلستون، لستر، لسترشر. LE2

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


پست: 3226

سپاس: 5492

جنسیت:

تماس:

دینامیک موشک کنترلر LQR وPID

پست توسط rohamavation »

از اون سوالات سخت که استاد دینامیک کنترل گذاشته براتون میزارم
من سعی می کنم یک مدل ساده از موشک برای پیاده سازی یک تنظیم کننده LQ تعریف کنم. آنچه من نیاز دارم دینامیک انتقالی در قاب اینرسی زمین و دینامیک چرخشی در قاب بدنه است. پس از بدست آوردن مدل غیر خطی، باید آن را خطی سازی کنم تا معادلات فضای حالت را بدست آوریم:13 کنترل کننده PID محبوب است ببینPID از سه قسمت مجزا به نام‌های Proportional (تناسبی)،Integral (انتگرال‌گیر) و Derivative (مشتق‌گیر) تشکیل شده که هر کدام از آن‌ها سیگنال خطا را به عنوان ورودی گرفته و عملیاتی را روی ان انجام می‌دهند و در نهایت خروجی شان با هم جمع می‌شود. خروجی این مجموعه که همان خروجی کنترل‌کننده PID است برای اصلاح خطا (error) به سیستم فرستاده می‌شود. زیرا ساختار ساده آن می تواند به راحتی با عملکرد کافی اعمال شود. با این حال، در تجزیه و تحلیل حرکت طولی پهپادها، عملکرد کنترلر تنظیم کننده درجه دوم خطی تناسبی (P-LQR) بهتر از هر دو کنترل کننده PID و LQR تنظیم کننده خطی- درجه دوم است.تئوری کنترل بهینه به راه اندازی یک سیستم پویا با حداقل مقادیرمربوط می شود. موردی که دینامیک سیستم توسط مجموعه ای از معادلات دیفرانسیل خطی ومقدار با یک تابع درجه دوم توصیف می شود، مسئله LQ نامیده می شود. یکی از نتایج اصلی در این تئوری این است که راه حل توسط تنظیم کننده خطی- درجه دوم (LQR) ارائه می شود
کنترلر PID ابزاری است که در کاربردهای کنترل صنعتی برای تنظیم دما، جریان، فشار، سرعت و سایر متغیرهای فرآیند استفاده می شود. کنترل کننده های PID (مشتق انتگرال متناسب) از مکانیزم بازخورد حلقه کنترل برای کنترل متغیرهای فرآیند استفاده می کنند و دقیق ترین و پایدارترین کنترل کننده هستند.فرم ریاضی اون ${\displaystyle u(t)=K_{\text{p}}e(t)+K_{\text{i}}\int _{0}^{t}e(\tau )\,\mathrm {d} \tau +K_{\text{d}}{\frac {\mathrm {d} e(t)}{\mathrm {d} t}},}
$ سادشو بگم تنظیم کننده های LQR یا PPR هر دو تنظیم کننده های فضای حالت هستند که از حالت های سیستم برای رساندن قطب های سیستم حلقه بسته به برخی مکان های مورد نظر استفاده می کنند. آن‌ها این کار را با ضرب حالت‌ها با یک ماتریس ثابت از سودها و بازگرداندن نتیجه به عنوان یک مقدار محرک، یعنی u = -Kx انجام می‌دهند. از نظر فنی، رگولاتور LQR و PPR یک رگولاتور است، اما روش‌های مختلفی برای محاسبه ماتریس بهره K استفاده شده است. تا زمانی که سیستم قابل مشاهده و کنترل باشد، امکان قرار دادن تمام قطب‌های حلقه بسته در یک مکان خاص وجود دارد.
با این حال، کنترل‌کننده‌های PID از اندازه‌گیری خروجی نیروگاه (به‌جای حالت‌ها) استفاده می‌کنند و از آنجایی که ساختار کنترل‌کننده ثابت است، فقط می‌تواند دینامیک محدودی را ارائه دهد، یعنی عموماً امکان قرار دادن مستقیم قطب‌های سیستم حلقه بسته در مکان‌های مورد نظر وجود ندارد. ببینید چگونه می توان LQR را در صورت تنظیم خروجی ها به جای حالت ها حل کرد؟
سیستم فضایی حالت داده شده توسط را در نظر بگیرید$\dot{x} = Ax(t) + Bu(t)$
$y = Cx(t) + Du(t)$
مقدار استاندارد LQR توسط$J = \int \big( x(t)^T Q x(t) + u(t)^T R u(t) \big)dt$
در عوض، مقدار ارائه شده توسط را در نظر بگیرید
$J = \int \big( y(t)^T Q y(t) + u(t)^T R u(t) \big)dt$
به طور معمول، مکانهاا با طراحی یک ناظر تنظیم می شوند، اما در اینجا، مقدار فقط بر اساس خروجی است نه وضعیت ها. من نمی توانم هیچ مرجعی در مورد این سناریو پیدا کنم و مطمئن نیستم که چگونه این مشکل را حل کنم.
بهینه سازی کنترل - تئوری بهینه - کنترل خطی - کنترل
من این پاسخ را بر اساس پاسخ یوهان لوفبرگ به یک سوال مرتبط می‌دانم، جایی که پرسیدم چگونه مقادیر را بر روی مشتقات x˙ لحاظ کنیم.. اگر خروجی y را می خواهید پاسخ عملاً یکسان است
بجای.شما معادلات فضای حالت را دارید$\begin{align}
\dot{x} &= A x + B u \\
y &= C x + D u
\end{align}$
تابع هزینه کلی برای تنظیم کننده درجه دوم خطی (LQR) است
$J_1 = \int_0^\infty (x^T Q x + u^T R u + 2 x^T N u) \, dt$
اگر می خواهید مقداری را مستقیماً روی خروجی y قرار دهید
تو می توانی آن را انجام دهی:
$\begin{align}
y^T L y &= (C x + D u)^T L (C x + D u) \\
&= x^T (C^T L \,C)x + x^T(C^T L \, D)u + u^T(D^T L \, C)x + u^T(D^T L \, D)u \\
&= x^T (C^T L \,C)x + u^T(D^T L \, D)u + 2 x^T (C^T L \, D) u
\end{align}$
بنابراین اگر می خواهید یک تابع هزینه عمومی را جایگزین کنید که مقداری برای y دارد
با تابع هزینه استاندارد:تابع ضرر: یک تابع ضرر یا ریسک، $\mathcal{L}(\hat{y}^i, y^i)$، میزان خوب (به طور دقیق تر، چقدر بد) y^ را کمی می کند y را تقریبی می کند. مقادیر کوچکتر$\mathcal{L}(\hat{y}^i, y^i)$
نشان می دهد که y^ تقریب خوبی از y است
ریسک تجربی: ریسک تجربی میانگین ضرر در نقاط داده است.
$\mathcal{L} = \frac{1}{n}\sum_{i=1}^n \mathcal{L}(\hat{y}^i, y^i)$
$\begin{align}
J_2 &= \int_0^\infty (x^T Q x + u^T R u + 2 x^T N u + y^T L y) \, dt \\
&= \int_0^\infty ( x^T \bar{Q} x + u^T \bar{R} u + 2 x^T \bar{N}u ) \, dt
\end{align}$
و ماتریس های جدید
$\begin{align}
\bar{Q} &= Q + C^T L \, C \\
\bar{R} &= R + D^T L \, D \\
\bar{N} &= N + C^T L \, D
\end{align}$
سپس می توانید مشکل LQR را با J2 حل کنید
به جای J1
با روش های استاندارد البته باید Q,R,N,L را مصرف کنید
به طوری که $\bar{Q}, \bar{R}, \bar{N}$
الزامات LQR را برآورده می کند.
نکته خوب این است که اگر D=0
و N=0 را تنظیم کردید
که شما مشکل LQR را بدون ترم مختلط دارید زیرا N¯=0
. این برای استحکام خوب است (به نظرات کوین ون در وین به این پاسخ آراستاس مراجعه کنید).
با این حال، شما همچنان به همه حالت ها برای کنترلر نیاز خواهید داشت زیرا هنوز به شکل$u=-K x$ است
.این بدان معنی است که، به طور کلی، هیچ راهی برای خارج کردن PID از یک کنترل کننده فضای حالت یا برعکس وجود ندارد. برای تثبیت سیستم خود باید از سایر تکنیک های طراحی PID استفاده کنید.برای مثال، سیستم انتگرال‌گیر دوگانه
$x
=
u$در این بخش، کلی‌ترین حالت کنترل بهینه را در نظر می‌گیریم که در آن، هیچ محدودیت یا قیدی برای مسیر، سیگنال کنترل یا زمان رسیدن به هدف وجود ندارد. سیستم زیر را در نظر بگیرید:
را در نظر بگیرید. فرض کنید دو کنترل‌کننده با ماتریس‌های بهره بزرگ و کوچک طراحی کرده‌ایم. شکل‌های زیر پاسخ سیستم را برای این دو کنترل‌کننده نشان می‌دهند. همان‌طور که در این شکل‌ها مشخص است، هرچه بهره بزرگ‌تر باشد، خطا زودتر به صفر میل می‌کند و البته سیگنال کنترل نیز بزرگتر خواهد بود. بنابراین، با انتخاب یک ماتریس بهره مناسب، طراح کنترل می‌تواند بین مقادیر بالا و پایین، نقطه بهینه‌ای را انتخاب کند که در آن، خطا با سرعت مناسب و سیگنال کنترلی معقولی به صفر میل کند. برنامه متلب زیر، مربوط به رسم دو نمودار است. می‌توانید مقادیر بهره را تغییر دهید و نتایج را با هم مقایسه کنید.
، یک کنترل کننده بازخورد که معادلات آن در زیر آورده شده است.
LQR می تواند بارها و بارها با یک افق عقب نشینی اجرا شود. این یک شکل از کنترل پیش بینی مدل است.
LQR همچنین بخش مهمی از راه حل مسئله LQG (خطی-مربع-گاوسی) است. مانند خود مشکل LQR، مشکل LQG یکی از اساسی ترین مشکلات در تئوری کنترل است.
$\begin{cases}
\dot{x}=Ax+Bu \\
y = Cx+Du
\end{cases}$
فرضیه ساده شده عبارتند از:
جرم موشک ثابت است
چرخش موشک $\theta\in [-5 \quad 5]deg$ درجه
پرواز زیر صوت است
مرکز فشار CP
پایین تر از مرکز جرم CA است
گرانش ثابت است
موشک انعطاف پذیر نیست
در اینجا یک نمایش شماتیک از سیستم است
مدل موشک 3dof
جایی که:xb و zb محور قاب بدنه هستندX و z محور قاب زمین هستند
θ چرخش نسبت به قاب زمین است$\alpha$ زاویه حمله ناشی از سرعت نسبی جسم - هوا است
$\gamma$ زاویه گیمبال رانش استFg
نیروی گرانش [N]
FA بردار حاصل از نیروهای آیرودینامیکی (کشش و بلند کردن) است [N]Fp دریچه گاز رانش [N]$r_{CP}$ فاصله مرکز فشار از مرکز جرم$r_T$ فاصله رانشگر مرکز جرم را تشکیل می دهد
با فرض اینکه زاویه باد ϕw باشد
و جهت حرکت موشک ϕm است
می توان گفت $\alpha=\phi_w + \phi_m$
. $F_A = L-D$
با$L$ نیروی بالابر و D
نیروی کشش بنابراین من به این نتیجه رسیدم:
$\begin{cases}
m\ddot{x_b}=-D\cos{\alpha}+L\sin{\alpha}-F_g\cos{\theta}+F_p\cos{\gamma}\\
m\ddot{z_b}=-D\sin{\alpha}+L\cos{\alpha}-F_g\sin{\theta}+F_p\sin{\gamma}\\
I\ddot{\theta}=(L\cos{\alpha}-D\sin{\alpha})r_{CP}-F_p\sin{\gamma}r_T
\end{cases}$
بنابراین اکنون من به مشکل خوردم من به مدل در سیستم مختصات زمین نیاز دارم بنابراین (x,z)
، من ماتریس چرخش را بدون موفقیت امتحان کردم.
آیا کسی می تواند به من راهنمایی، کمک یا راه حلی بدهد؟
تصویر

ارسال پست