|
به نظر می رسد که شما عضو سایت نیستید و یا وارد نشده اید, امکان ارسال مطلب و دانلود فایل و همچنین دسترسی به انجمن هایی که فقط اعضا ثبت نام شده امکان دسترسی به آن را دارند از امتیازات ثبت نام در سایت میباشد. لطفا از طریق این لینک برای ثبت نام اقدام نمایید. |
|
| جدیدترین موضوعات انجمنها | |
|
|
||||||||
![]() |
|
|
LinkBack | ابزارهای موضوع | نحوه نمایش |
|
|
#1 | |||||||||
|
كاربر سايت
![]() تاریخ عضویت: Mar 2009 نوشتهها: 57
تشكرها: 16
32 بار تشكر شده در 22 پست
درجه: 6 [ ![]() ![]() ![]() ]سابقه: 0 / 135 ![]() |
سلام
کنترل PID موتور : یک نوع سیستم کنترل انعکاسی است که به کنترل موقعیت یک محور یا بازو توسط موتور است . در این سیستم می توان x و y را مکان فیزیکی بازو یا محور و z را قدرت الکتریکی داده شده به موتور فرض کرد . تابع کنترلی این سیستم به قرار زیر است : Z=Kp.(Y-X به دلیل آنکه این سیستم رابطه اصلی با خطای آن دارد (به Y-X به اصطلاح خطای سیستم گفته می شود .) این سیستم به کنترل تناسبی (Proportional control) معروف است . به Kp نیز بهره کنترل (control gain) می گویند . در سیستم های کنترل تناسبی دقت رفتار سیستم به انتخاب صحیح بهره کنترل بستگی دارد . |
|||||||||
|
|
|
|
|
#2 |
|
مدیر بخش
![]() |
سلام.این مطالب را از سایت ویکی پدیا پذاشتم.
الگوریتم پیآیدی از رایج ترین نمونه های الگوریتم کنترل بازخوردی است که در بسیاری از فرایندهای کنترلی نظیر کنترل سرعت موتور DC ، کنترل فشار، کنترل دما و ... کاربرد دارد. هدف از به کار بردن الگوریتم PID در کنترل حلقه بسته ، کنترل دقیق و سریع خروجی سیستم تحت شرایط متفاوت و بدون دانستن دقیق رفتار سیستم در پاسخ به ورودی است. PID از سه قسمت مجزا به نام های Proportional (تناسب) ،Integral (انتگرال) و Drivative (مشتق) تشکیل شده که هر کدام از انها سیگنال error را به عنوان ورودی گرفته و عملیاتی را روی ان انجام می دهند و در نهایت خروجی شان با هم جمع میشود. خروجی این مجموعه که همان خروجی PID است برای اصلاح خطا (error) به سیستم فرستاده می شود. فرمول استاندارد PID به فرم زیر است: \mathrm{Output(t)}=K_p\left(\,{e(t)} + \frac{1}{T_i}\int_{0}^{t}{e(\tau)}\,{d\tau} + T_d\frac{de}{dt}\right) اگرچه در بسیاری از کنترلرها به علت حساسیت عبارتِ مشتق نسبت به نویز و اجرای دشوار ان، از ان صرف نظر و کنترل را به صورت PI پیاده سازی می کنند. سیگنال (U(t ( خروجی PID ) بر اساس نسبتی از خطای کنونی سیستم (عملکرد حاضر) ، به اضافه مجموع خطاهای سیستم (رفتار گذشته) ، به اضافه مشتق خطای کنونی (تخمین خطی رفتار اینده) محاسبه میشود و برای اصلاح خطا به سیستم اعمال میگردد. ضرایب k ، Ti و Td نیز میتوانند با تکنیک های شناخته شده ای مانند تابع انتقال به صورت بهینه محاسبه شوند، اگرچه در کاربردهای عملی ، بطور رضایت بخش میتوانند با ازمون و خطا و مشاهده رفتار سیستم بطور تقریبی تعیین گردند |
|
|
|
|
|
#3 |
|
مدیر بخش
![]() |
جواب ندادید. من خودم سوالم را جواب می دم :
در کنترل pid یک مکان شاخص وجود دارد. ما با استفاده از آن خطا را می سنجیم یعنی ما می خواهیم به مکانی برسیم به میزان فاصله و انحراف از آن مکان ، خطا می گوییم که در کنترل pid هر چه خطا بیشتر سرعت عکس العمل نیز بیشتر و چون این روش روش حلقه بسته است و مداوم خطا را بررسی می کند و سرعت عکس العمل را تنظیم می کند ما یک حرکت ملایم داریم به طوری که از سرعت زیاد به کم در حال تغییر است و زمانی که به مکان شاخص رسید متوقف می شود. *باتشکر فراوان از آقای امامی در راهنمایی در این زمینه*
__________________
بیا با افق مهربانی کنیم،غم پونه راآسمانی کنیم،بیا توی نقاشی قلبمان،رز عشق را ارغوانی کنیم --------------------- |
|
|
|
| اين کاربران از Amin به خاطر این مطلب مفید تشکر کرده اند |
|
|
#4 |
|
مدیر بخش
![]() |
کنترل کننده های pid دارای سه پارامتر است
1- کنترل کننده ی تناسبیKP 2- کنترل کننده ی انتگرالیKI 3- کنترل کننده ی مشتقگیرKD بعدا در مورد هر کدام توضیح می دهم
__________________
بیا با افق مهربانی کنیم،غم پونه راآسمانی کنیم،بیا توی نقاشی قلبمان،رز عشق را ارغوانی کنیم --------------------- |
|
|
|
|
|
#5 |
|
عضو تیم صائب(2vs2)
![]() |
الکوریتم pid برای کامپس به یاری اقای امامی و کوشان با زبان c در تیم صاءب را اندازی شد
روش کار شبیه همونیه که محمد گفت که بعد از مسابقات سورس کد تو سایت قرار داده می شه در ضمن کامپس در این کد به صورت سخت افزاری خونده شده که خواندن کامپس در یک پالس میکرو انجام میشه ( سورسش از اینترنت )
__________________
zii zii goola aasi pasi derakoola ta be ta ویرایش توسط mehrdad : 10-31-2009 در ساعت 10:32 PM. |
|
|
|
|
|
#6 |
|
مدیر بخش
![]() |
سلام.اولان که اون سری روی ربات فقط از p پی آی دی استفاده شده.جواب هم می دادن اما چون کامپس نویز می گرفت جواب نداد!!
کلا سرعت میکرو برای پیاده سازی pid کمه و نوشتن الگوریتمهای سنگین هم که تایمر ها و... را درگیر کنیم هم کاری مضاعف!من شنیدم که تیمهای دیگه از pi یا pd استفاده کردند و دیدیم که جواب دید و همچنین من سورس یکی از این تیمها را دیدم کلا محسابات kp,kt,... حدودا 10 خظ بود! به نظر من توی خوارزمی وقت نبود که روش کار کنیم انشاءا... برای ایران اپن می تونیم روش کار کنیم.
__________________
We fight through the hurt ... And we live and we learn ...
And we Try and Try And Try saeebrobotic.blogfa.com ________________________ We Are OpenSource |
|
|
|
|
|
#7 |
|
عضو جديد
![]() |
یادش بخیر pid واسه کامپس!! خوب از این بچه بازی ها که بیایم بیرون pid خیلی مطلب بزرگ و خفنیه... که خیلی بخوام ساده بگمش میشه تبدیل pwm به مقدار حقیقی و این یه توضیحیه که هر کی میتونه یه pid راه بندازه...::
در محاسبات PID برای 3 بخش نسبت و مشتق و انتگرال از تقریب های زیر می توان استفاده کرد. نسبت: عملیات ضرب یک ضریب در مقدار خطا مشتق: زمان اندازه گیری / (خطای قبلی - خطای فعلی) انتگرال: 2 / زمان اندازه گیری.(خطای قبلی+خطای فعلی) + مقدار قبلی انتگرال بعد اینا با هم جمع میشن و از مقدار pwm کم میشن همین |
|
|
|
| اين کاربران از mhmmdshirazi به خاطر این مطلب مفید تشکر کرده اند |
|
|
#8 |
|
عضو جديد
![]() |
آهان بعد هر کدام از این 3 بخش یه ضریب هم دارن که باید کالیبره شه !!
|
|
|
|
|
|
#9 |
|
مدير ارشد
![]() |
سلام به دوست تازه وارد جناب mhmmdshirazi
خوب من اول صحبت مهرداد رایه اصلاح بکنم و اونم این که الگوریتم PID بوسیله ی کامپس نوشته شد و نه برای کامپس. و بعد اینکه من هر چی معنی PID را ساده میکنم به این معنی نمی رسم. ((که خیلی بخوام ساده بگمش میشه تبدیل pwm به مقدار حقیقی و این یه توضیحیه که هر کی میتونه یه pid راه بندازه...)) یا من بد جمله را فهمیدم و یا علمم کمه که در هر صورت یه کمکی بکنین. در مورد مواردی هم که فرمودید. این ها به طور کلی PID نیست. در حقیقت اینی که فرمودید مربوط میشه به تبدیل Z ساده شده ی PID در فضایی با زمان های نمونه برداری متفاوت. که البته در این حالت (نمونه برداری با زمان های متفاوت) برای محاسبات توسط میکرو های 8 بیتی بسیار مناسبه. ولی در ربات می توان زمانی که از برنامه نویسی غیر دینامیک استفاده می کنید(یعنی تعداد دستورات وابسته به شرایط محیط نیست) قسمت زمان اندازه گیری را برابر 1 فرض کرد...
__________________
معشوق من چنان لطیف است که خود را به بودن نیالوده است...
|
|
|
|
| اين کاربران از emami به خاطر این مطلب مفید تشکر کرده اند |
|
|
#10 |
|
عضو جديد
![]() |
نوشته اصلی توسط emami
من هرچی فک میکنم به نظرم تو واسم خیلی آشنایی حالا بماند.... این پاراگراف آخرتو یه بار تست کن بعد اگه تونستی روباترو به جز با زند یه چیزه سنگین روش یا خونی شدن دو تا دستت نگه داری (البته اگه موتورت مکسون باشه) بیا همین جا به من فهش بده... عزیز من pid عالمیه و قبول دارم اینی که گفتم pid نیست ولی استفاده اصلی pid الان تو روباتیک صرفا اینه تازه 90% اون مشتق که واقعا تعثیرش عالیه رو حذف میکنن چون نمیدونن معنی مشتق گیری از یه نموداره گسسته چیه!! و خوب pid اسمش رو خودشه proportional–integral–derivative و خوب من اون محور z اینایی که گفتی رو نفهمیدم اگه میشه توضیح بده
__________________
Heh kid... The truth is not true... It say The truth is Written in Ur mind KID.... |
|
|
|
![]() |
| علاقه مندی ها (Bookmarks) |
| برچسب ها |
| کنترل pid موتور |
| ابزارهای موضوع | |
| نحوه نمایش | |
|