Pages

Monday, January 07, 2008

First PID Control

წინა წლის 31 დეკემბერს პირველად შევძელი PID კონტროლის მეშვეობით მემართა ელერონები, კუდი (პედლები) და ძრავი. პირველად ძრავზე შევძელი ამის გაკეთება და თან ძალიან კარგად. ამ სურათზე მოყვანილია კრენის და ელერონების დიაგრამა PID კონტროლერის ალგორითმით მართვის დროს. მემგონი არც ისე ცუდი შედეგია :)
რაც შეეხება თავად PID კონტროლს, ინტეგრალური კომპონენტი მოითხოვს რომ შეცდომები (სხვაობა მიმდინარე და სასურველ მნიშვნელობას შორის) ვჯამო ყოველ იტერაციაზე. მაგრამ როდემდე უნდა ავჯამო ეს შეცდომები? ძალიან დიდი ციფრ გამოდის. ამიტომ მოვიგონე ასეთი ”სოლიუშენი”: როდესაც შეცდომა ძალიან მცირე ხდება მაშინ ამ ჯამს ვანულებ. როგორც კი შეცდომა ამ მნიშველობაზე დიდი გახდება მაშინ განულება აღარ მოხდება სანამ კონტროლერი ისევ არ მიიყვანს საკონტროლო სისტემის (ვთქვათ კრენის) მიმდინარე მნიშვნელობას სასურველ მნიშვნელობამდე.
რაც შეეხება გაზომვების დროის ფიქსირებას PID კონტროლერის ფორმულებში გამოსაყენებლად, ამისთვის System.currentTimeMillis()-ს ვიყენებ. ცოტა ხანში ნანო წამებსაც ვსინჯავ.
აქ არის დღეს გადაღებული ვიდეობი:
1) აფრენა გარედან.
2) აფრენა კაბინიდან.
3) მოხვევა გარედან.
4) მოხვევა კაბინიდან.

ამჯერად ვიდეო ფოტოაპარატით გადავიღე, თავად პროგრამა ისევ ნოუტბუკზე დავსტარტე, სიმულატორი კი ჩემი ძმის კომპზე. მშვენივრად მუშაობდა.