אוקיי
אז ככה מקבלים נסיעה מקבילה לקיר אבל לא בהכרח במרחק מסויים מהקיר
אנונימי כתב:אוקיי
אז ככה מקבלים נסיעה מקבילה לקיר אבל לא בהכרח במרחק מסויים מהקיר
אנונימי כתב:אם ככה אז אני בטוח צריך גם I
אפשר לקבל הסבר איך אני עושה בקרה אינטגרצית עם חיישנים ?
ALIGN_LEFT:
JSR CONVERT_AD
MOVB #$06,PWEN
LDAA ADR7H ;A:=LEFT FRONT IR
SUBA ADR0H ;A:=A-LEFT BACK IR
ASRA ;DIVISION OF ERROR A:=A/2
; ======
LDAB ADR7H B:= LEFT FRONT IR
SUBB #$4F ;TAKE DISTANCE FROM WALL B:=B-$4F
ASRB ;DIVISION OF ERROR B:=B/2
ABA ;ADD I ERROR TO GLOBAL ERROR A:=A+B
; ======
TAB ;B:=A
NEGA ;A:=-A
; SET FINAL DUTY
ADDA STDSPEED
STAA PWDTY1
ADDB STDSPEED
STAB PWDTY0
RTS
השחר העולה כתב:I עם חיישנים באופן יעיל וגם ההסבר שלי יעיל כי הוא לא ארוך ולא מובן (בניגוד ל...אהם אהם)
תחבר את כל התוצאות של החיישן תחלק בקבוע תוסיף למנוע אחד תוריד משני. תמיד אותה רוטינה לא משנה מה הכיוון. זהו. למה זה I? כי זה אינטגרל=I = סכימה דיגיטלית= חיבור של תוצאות החיישן מזמן אפס עד עכשיו.
וזהו..
במפי
השחר העולה כתב:דניאל - קח באקמולטור A את החיישן תוסיף אותו להרבה קריאות חיישנים שכבר לקחת מקודם תחלק בקבוע
לחלק בקבוע אומר לקחת מספר כלשהו ולחלק , לחלק זה הסימן הזה עם הקו והשני נקודות במחשבון.
להוסיף למנוע - להוסיף את מה שקבלת אחרי חלוקה למנוע ימין , נגיד, ולהוסיף למנוע שמאל.
אם זה חיובי - רוב הזמן הרובוט סטה ימינה ולכן תוסיף גודל חיובי למנוע ימין ותוריד גודל חיובי ממנוע שמאל.
אם השגיאה שלילית - אז הרובוט סטה רוב הזמן לשמאל ואז אתה מוסיף גודל שלילי למנוע ימין ותוריד גודל שלילי ממנוע שמאל (כלומר - תגדיל - כפול -)
במפי
השחר העולה כתב:דניאל... אני , אני לא יודע איך לבשר לך את זה...
אבל כל עוד אתה משאיר את מספר החלוקה שלך... 2 ... אז גם הוא, גם הוא קבוע מדוייק...
משתמשים הגולשים בפורום זה: אין משתמשים רשומים ו 3 אורחים