فریمورک متنباز رباتیک و بینایی ماشین دبیرستان علامه حلی
معرفی مخزن
این پروژه توسط تیم رباتیک و اینترنت اشیا دبیرستان استعدادهای درخشان علامه حلی ملارد جهت شرکت در مسابقات رباتهای خودمختار امدادگر و فوتبالیست توسعه یافته است.
اجزای اصلی معماری سیستم:
- ماژول بینایی ماشین: بخش فیلتر رنگی در فضای رنگی HSV و تشخیص کانتورها با کتابخانه OpenCV
- فیلتر کالمن گسسته: برای پیشبینی دقیق مسیر و تخمین سرعت و مکان در حضور نویز سنسورها
- حلقه کنترل PID: الگوریتم پایدارسازی زاویه و سرعت موتورهای DC با بازخورد انکودرهای نوری
جدول پارامترهای ضرایب کنترلکننده PID
| پارامتر |
نماد |
مقدار کالیبره شده |
اثر بر سیستم |
| بهره تناسبی |
$K_p$ |
2.45 |
کاهش زمان خیز و پاسخ سریع به خطای زاویه |
| بهره انتگرالی |
$K_i$ |
0.08 |
حذف خطای حالت ماندگار در زمین ناهموار |
| بهره مشتقی |
$K_d$ |
0.35 |
کاهش فرارفت (Overshoot) و افزایش پایداری |
پیادهسازی حلقه کنترلکننده PID در پایتون
class PIDController:
def __init__(self, kp, ki, kd):
self.kp = kp
self.ki = ki
self.kd = kd
self.prev_error = 0.0
self.integral = 0.0
def compute(self, target, current, dt):
error = target - current
self.integral += error * dt
derivative = (error - self.prev_error) / dt if dt > 0 else 0.0
self.prev_error = error
output = (self.kp * error) + (self.ki * self.integral) + (self.kd * derivative)
return max(-100.0, min(100.0, output))
مستندات کالیبراسیون و شماتیک برد در قالب فایل PDF ضمیمه این مخزن است.
دیدگاهها، پرسشها و نظرات دانشآموزان (1)