Mündəricat:
Video: Özünü Balanslaşdıran Robot - PID Nəzarət Alqoritmi: 3 Addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:43
Bu layihə, Nəzarət Alqoritmləri və funksional PID döngələrinin effektiv şəkildə tətbiq edilməsi haqqında daha çox öyrənməklə maraqlandığım üçün hazırlanmışdır. Layihə hələ inkişaf mərhələsindədir, çünki Bluetooth -u dəstəkləyən bir smartfondan robotu idarə etməyə imkan verəcək bir Bluetooth modulu əlavə edilməlidir.
İstifadə olunan N20 DC mühərrikləri nisbətən ucuz idi və buna görə də xeyli miqdarda oyun var. Bu, təkərlərə fırlanma anı tətbiq edərkən mühərriklərin "boşluğu" aşması səbəbindən az miqdarda sarsıntıya səbəb olur. Beləliklə, mükəmməl hamar bir hərəkət əldə etmək mümkün deyil. Yazdığım kod olduqca sadədir, lakin PID alqoritminin imkanlarını effektiv şəkildə nümayiş etdirir.
Layihə Xülasəsi:
Robotun şassisi, Ender 3 printerindən istifadə edərək 3D çap edilib və bir-birinə sıxışdırmaq üçün nəzərdə tutulmuşdur.
Robot, MPU6050 -dən sensor məlumatlarını alan və xarici mühərrik sürücüsü vasitəsi ilə DC mühərriklərini idarə edən bir Arduino Uno tərəfindən idarə olunur. 7.4V, 1500mAh batareya ilə işləyir. Motor sürücüsü, Arduino -nu gücləndirmək üçün bunu 5V -a tənzimləyir və mühərriklərə 7.4V verir.
Proqram, gitHub'dan 'Arduino-KalmanFilter-master' və 'Arduino-MPU6050-master' kitabxanalarının köməyi ilə sıfırdan yazılmışdır.
Təchizat:
- 3D çaplı hissələr
- Arduino UNO
- MPU6050 6 Eksenli Sensor
- D. C Motor Sürücü
- N20 DC Motorlar (x2)
- 9V Batareya
Addım 1: Robot qurma
Çap və montaj
Bütün quruluş presə uyğun olmalıdır, ancaq balans edərkən robotun tamamilə sərt olmasını təmin etmək üçün komponentləri möhkəmləndirmək üçün super yapışqan istifadə etdim.
Parçaları Fusion 360 -da hazırladım və hər bir hissəni daha sərt toleranslara və daha təmiz bir səthə icazə vermək üçün dayaqlar olmadan çap etmək üçün optimallaşdırdım.
Ender 3 Yazıcıda istifadə edilən ayarlar: 0.16mm Layer Heights @ 40% doldurma bütün hissələr üçün.
Addım 2: 3D Çap Robotu
Şassi (x1)
Sol Təkər (x2)
Sol Motor Korpusu (x2)
Arduino Çantası (x1)
Addım 3: PID Nəzarət Alqoritmi
GitHub-dan 'Arduino-KalmanFilter-master' və 'Arduino-MPU6050-master' kitabxanalarını istifadə edərək sıfırdan bir PID İdarəetmə Alqoritmi yazdım.
Alqoritmin əsası belədir:
- MPU6050 -dən xam məlumatları oxuyun
- Sensorun sürətlənməsi səbəbindən giroskop oxunuşundakı qeyri -dəqiqlikləri ləğv etmək üçün həm Gyroscope, həm də Accelerometer -dən məlumatları təhlil etmək üçün Kalman Filterindən istifadə edin. Bu, sensorun dərəcəsi üçün iki ondalık işarəyə nisbətən hamar bir dəyər qaytarır.
- E rrorunu bucaqda hesablayın, yəni: Sensorla təyin olunan nöqtə arasındakı bucaq.
- Oransal xətanı (nisbət sabitliyi x xətası) hesablayın.
- İnteqral Xətanı işləyən cəm olaraq hesablayın (Sabit inteqrasiya x xətası).
- Törəmə Səhvini Sabit [Diferensiya Sabiti) x (Səhv dəyişikliyi / Zaman dəyişikliyi)] kimi hesablayın
- Mühərriklərə göndəriləcək sürəti vermək üçün bütün səhvləri toplayın.
- Səhv bucağının işarəsinə əsaslanaraq mühərrikləri hansı istiqamətə çevirəcəyinizi hesablayın.
- Döngü qeyri -müəyyən müddətə işləyəcək və giriş dəyişdiyindən çıxış üzərində qurulacaq. Növbəti iterasiya üçün yeni giriş dəyərləri olaraq çıxış dəyərlərindən istifadə edərək bir geribildirim döngəsidir.
Son addım, PID loop Kp, Ki & Kd parametrlərini tənzimləməkdir.
- Yaxşı bir başlanğıc nöqtəsi, robot balans nöqtəsi ətrafında salınana və düşə biləcək qədər Kp -ni yavaş -yavaş artırmaqdır.
- Sonra, Kd -ni Kp dəyərinin təxminən 1% -dən başlayın və salınımlar yox olana və robot itələdikdə hamar bir şəkildə sürüşənə qədər yavaş -yavaş artırın.
- Nəhayət, Ki -nin təxminən 20% -i ilə Ki ilə başlayın və robot aktiv şəkildə düşməni tutmaq və şaquli vəziyyətə qayıtmaq üçün təyin olunan nöqtəni "aşana" qədər dəyişin.
Tövsiyə:
Magicbit -dən Özünü Balanslaşdıran Robot: 6 addım
Magicbit -dən Özünü Balanslaşdıran Robot: Bu dərslik, Magicbit dev lövhəsindən istifadə edərək özünü balanslaşdıran robotun necə hazırlanacağını göstərir. ESP32 -ə əsaslanan bu layihədə inkişaf etdirmə lövhəsi olaraq magicbit istifadə edirik. Bu səbəbdən hər hansı bir ESP32 inkişaf lövhəsi bu layihədə istifadə edilə bilər
İki Təkərli Özünü Balanslaşdıran Robot: 7 addım
İki Təkərli Özünü Balanslaşdıran Robot: Bu təlimatlı, özünü balanslaşdıran bir robot üçün dizayn və qurma prosesindən keçəcək. Qeyd olaraq demək istəyirəm ki, özünü balanslaşdıran robotlar yeni bir anlayış deyil və başqaları tərəfindən hazırlanıb və sənədləşdirilmişdir. Bu fürsətdən istifadə etmək istəyirəm
HeadBot-STEM Öyrənmə və Məlumatlandırma üçün Özünü Balanslaşdıran Robot: 7 Addım (Şəkillərlə birlikdə)
HeadBot-STEM Öyrənmə və Yayım üçün Özünü Balanslaşdıran Robot: Headbot-iki ayaq uzunluğunda, özünü balanslaşdıran robot-İLKdə rəqabətli bir lisey robototexnika qrupu olan South Eugene Robotics Team (SERT, FRC 2521) tərəfindən hazırlanmışdır. Eugene, Oregondan Robototexnika Yarışması. Bu populyar köməkçi robot yenidən
Uzaqdan idarə olunan 3D Çaplı Özünü Balanslaşdıran Robot necə yaradılır: 9 addım (şəkillərlə)
Uzaqdan İdarə olunan 3D Çaplı Özünü Balanslaşdıran Robot Necə Yaranır: Bu, B-robotun əvvəlki versiyasının təkamülüdür. 100% OPEN SOURCE / Arduino robotu. KOD, 3D hissələr və elektronika açıqdır, buna görə onu dəyişdirə və ya robotun böyük bir versiyasını yarada bilərsiniz. Şübhələriniz, fikirləriniz və ya yardıma ehtiyacınız varsa
Özünü balanslaşdıran robot: 6 addım (şəkillərlə birlikdə)
Özünü Balanslaşdıran Robot: Bu Təlimatlandırmada, məktəb layihəsi olaraq hazırladığımız özünü balanslaşdıran robotun necə qurulacağını sizə göstərəcəyik. NBot və başqa bir təlimat kimi digər robotlara əsaslanır. Robot bir Android smartfonundan idarə oluna bilər