You are on page 1of 31

‫הטכניון ‪ -‬מכון טכנולוגי לישראל‬

‫המעבדה לבקרה ורובוטיקה‬

‫בקרה לינארית‬

‫בקרת זרוע רובוטית הנעה במישור אנכי ע"י בקרה לינארית בסיסית‬

‫מטרות הניסוי‪:‬‬
‫בניסוי זה נבצע בקרה של זרוע רובוטית אשר נעה במישור אנכי ע"י מספר בקרים לינאריים בסיסיים‪:‬‬
‫בקר הגבר‪ ,‬משוב טכומטרי‪ ,‬רשת קידום ורשת פיגור )הן בתכנון ‪ root locus‬והן באמצעות תכן‬
‫במישור התדר(‪.‬‬
‫כמו כן נכיר את תכנת הסימולציה ‪ simulink‬ונבנה בעזרתה את המערכת אותה נרצה לבקר‪.‬‬
‫המערכת המבוקרת אינה לינארית ואנו נעזר בתכנת הסימולציה ‪ simulink‬ובתכנת ‪ MATLAB‬לצורך‬
‫ביצוע התכנון ובדיקתו‪ .‬לצורך ביצוע הניסוי נדרשת היכרות בסיסית בלבד עם תכנת ‪ simulink‬וכן‬
‫היכרות עם סוגי הבקרים השונים‪.‬‬

‫‪qr‬‬ ‫)‪H(s‬‬
‫בקר‬
‫הזוית‬
‫הרצויה‬
‫זרוע‬
‫רובוטית‬

‫פוטנציומטר‬

‫תרשים מס' ‪ :1‬תיאור המערכת‬

‫‪1‬‬
‫הטכניון ‪ -‬מכון טכנולוגי לישראל‬
‫המעבדה לבקרה ורובוטיקה‬

‫רקע פיסיקלי של המערכת‬


‫מנועי ‪ DC‬הינם נפוצים ביותר בתעשייה‪ .‬מנועי ה‪ DC -‬הלכו ותפסו את מקומם של מנועי ה‪AC -‬‬
‫מכיוון שמאפייני מנועי ה‪ AC -‬אינם ליניאריים ובכך קשים יותר לבקרה‪ .‬עיקר פעולתו של המנוע היא‬
‫המרת אנרגיה חשמלית לאנרגיה מכאנית‪.‬‬
‫מידול מתמטי של מנוע ה‪:DC -‬‬
‫‪.‬המעגל המתאר את התנהגות המנוע נתון בתרשים ‪2‬‬
‫המודל מורכב משני מעגלים מרכזיים‪ :‬הסטטור והרוטור‪ .‬הסטטור מספק שטף מגנטי ‪ f‬כאשר במקרה‬
‫שלנו הינו קבוע‪ .‬מהירות הרוטור נשלטת ע"י מתח הכניסה וכיוונה נשלט ע"י קוטביות המתח‪.‬‬

‫תרשים מס' ‪ :2‬התנהגות פיסיקלית של המנוע‬


‫‪:‬פרמטרי המערכת‬
‫‪ – R‬התנגדות הכניסה של המנוע ]‪[W‬‬

‫‪ - L‬סליל הרוטור ] ‪ - [ Hy‬לשם פשטות‪ ,‬נניח כי ‪ L‬זניח )קצר(‬


‫‪ - Vin‬מתח הכניסה למנוע ] ‪[Volt‬‬

‫‪ - em‬מתח מושרה ] ‪[Volt‬‬


‫‪ - i‬זרם הרוטור ]‪[ Amp‬‬
‫‪ - f‬שטף מגנטי ]‪[Wb‬‬

‫�‬ ‫�‬ ‫�‪m N‬‬


‫�‬ ‫�‬ ‫‪ - B‬מקדם חיכוך ויסקוזי‬
‫�‬ ‫�‬ ‫‪darces /‬‬
‫� ‪[N‬‬
‫‪ – Tm‬מומנט סיבוב של המנוע ]‪m‬‬

‫] ‪m2‬‬
‫� ‪[kg‬‬ ‫‪ - J m‬אנרציית המנוע והזרוע‬

‫‪2‬‬
‫הטכניון ‪ -‬מכון טכנולוגי לישראל‬
‫המעבדה לבקרה ורובוטיקה‬

‫עבור אנליזה לינארית המומנטים המתפתחים ע"י המנוע פרופורציוניים לשטף המגנטי ‪ f‬ולזרם‬
‫הרוטור ‪: i‬‬
‫� ‪Tm ( t ) = K m‬‬
‫�‪i‬‬‫‪f‬‬

‫כאשר ‪ Km‬הינו קבוע‪.‬‬


‫� ‪�N‬‬
‫�‪m‬‬
‫�‪.‬‬ ‫מכיוון ש‪ f -‬ו‪ K m -‬קבועים נגדיר ‪K m‬‬
‫� ‪ , KT @f‬כאשר ‪ KT‬הוא קבוע המומנט של המנוע �‬
‫� ‪�Amp‬‬
‫נקבל ‪-‬‬
‫� ‪. Tm ( t ) = KT‬‬
‫)‪i( t‬‬ ‫)‪( 1‬‬
‫ומהמעגל החשמלי מתקבל ‪-‬‬
‫‪i ( t ) + em‬‬
‫� ‪. Vin = R‬‬ ‫)‪( 2‬‬

‫כשהרוטור מסתובב‪ ,‬מושרה כא"מ ‪ (back emf) em‬הפרופורציוני לשטף המגנטי ולמהירות‪ ,‬ומתנגד‬
‫למתח הכניסה‪:‬‬
‫‪em = K‬‬ ‫� ‪f w ( t ) = KB‬‬
‫�� ‪{2‬‬ ‫� ‪w ( t ) = KB‬‬
‫) ‪q&(t‬‬ ‫)‪( 3‬‬
‫‪const‬‬

‫� ‪� Volt‬‬
‫�‪.‬‬ ‫כאשר ‪ - K B‬קבוע המתח המושרה הנגדי )‪(back emf constant‬‬
‫� ‪rad / sec‬‬
‫�‬ ‫�‬
‫כידוע מפיסיקה‪ ,‬המומנט של כוח שווה למכפלה של אורך הזרוע בכוח המוענק לו‪ ,‬ולכן המומנט הכולל‬

‫‪TmrA‬הוא הסכום של המומנט הנוצר עקב הזרמת זרם במנוע ‪ Tm‬ושל מומנט הכבידה‬ ‫על ציר המנוע‬

‫‪ , Tgravity‬הנוצר עקב כוח הכבידה המופעל על הזרוע )ראה תרשים ‪:(3‬‬

‫) ‪TArm ( t ) = Tm ( t ) + Tgravity ( t‬‬

‫‪mg sin q‬‬


‫‪l‬‬
‫‪q‬‬ ‫‪2‬‬ ‫‪mg‬‬
‫ציר המנוע‬
‫תרשים מס' ‪ :3‬מאזן כוחות‬

‫‪3‬‬
‫הטכניון ‪ -‬מכון טכנולוגי לישראל‬
‫המעבדה לבקרה ורובוטיקה‬

‫מומנט הכבידה מופעל על מרכז המסה של הזרוע‪ .‬בהנחה כי המשקל מפוזר בצורה זהה בכל הזרוע‪,‬‬
‫המרחק עד מרכז המסה הינו ‪ l / 2‬עבור זרוע באורך ‪) l‬תרשים ‪.(3‬‬

‫) ‪ mg sin q ( t‬הוא הכוח בכיוון האנכי יחסית לזרוע‪.‬‬ ‫(‬ ‫)‬


‫המומנט שווה למכפלת הכוח האנכי במרחק למרכז המסה‪:‬‬
‫‪l‬‬
‫� ‪. Tgravity ( t ) = m‬‬
‫�� ‪g‬‬‫� ‪sin ( q ( t ) ) @Tg‬‬
‫) ) ‪sin ( q ( t‬‬ ‫)‪( 4‬‬
‫‪2‬‬
‫כאשר ‪ m‬מסת הזרוע‪ g ,‬קבוע הכבידה‪ ,‬ו‪ Tg -‬הינו מומנט חוסר האיזון המקסימלי‪.‬‬

‫�‪�N‬‬ ‫� ‪m‬‬
‫� המומנט הנדרש‬ ‫�‬ ‫עבור עומס בעל מומנט אינרציה ‪m 2 ] J m‬‬
‫� ‪ [kg‬ומקדם חיכוך ויסקוזי ‪B‬‬
‫‪rad‬‬
‫�‬ ‫‪/‬‬ ‫‪sec‬‬ ‫�‬

‫� ‪&( t ) + B‬‬
‫&‪q‬‬
‫� ‪. TArm = J m‬‬ ‫הינו ) ‪q&( t‬‬

‫נקבל את משוואת המומנטים‪:‬‬


‫� ‪J‬‬ ‫� ‪&( t ) + B‬‬
‫&‪q‬‬ ‫) ‪q&( t ) = Tm ( t ) + Tgravity (t‬‬ ‫)‪( 5‬‬
‫‪1m4 44 2 4 4 43‬‬
‫‪TArm‬‬

‫נציב למשוואה ) ‪ ( 2‬את משוואה )‪ ( 1‬ואת משוואה )‪: ( 3‬‬


‫‪T‬‬
‫) ‪q&( t‬‬
‫� ‪Vin = R �m + K B‬‬
‫‪KT‬‬
‫�‬
‫‪K‬‬ ‫� ‪K‬‬‫& ‪K‬‬
‫)‪q ( t‬‬
‫� ‪Tm = Vin � T - B T‬‬ ‫)‪( 6‬‬
‫‪R‬‬ ‫‪R‬‬
‫נציב למשוואה )‪ (5‬את משוואה ) ‪ ( 6‬ואת ) ‪: ( 4‬‬

‫‪K‬‬ ‫� ‪K‬‬‫& ‪K‬‬


‫� ‪sin ( q ( t ) ) + J m‬‬
‫� ‪-Tg‬‬ ‫� ‪&( t ) + B‬‬
‫&‪q‬‬ ‫� ‪q&( t ) = Vin � T - B T‬‬
‫)‪q ( t‬‬
‫‪R‬‬ ‫‪R‬‬
‫�‬
‫� ‪�K B‬‬
‫‪KT‬‬ ‫‪B � Tg‬‬ ‫‪K‬‬
‫� ) ‪&( t ) + q&( t‬‬
‫&‪q‬‬ ‫�‬ ‫‪+‬‬ ‫‪�-‬‬ ‫‪sin ( q ( t ) ) = Vin � T‬‬
‫�‬ ‫)‪(7‬‬
‫� ‪�J m‬‬‫‪R Jm � Jm‬‬ ‫� ‪Jm‬‬‫‪R‬‬

‫הערה חשובה ‪ :‬במהלך הניסוי יקבעו נתונים שונים לפי מספרי תעודת הזהות שלכם‪:‬‬
‫‪ - Z 0‬הספרה האחרונה של שותף א' )ספרת ביקורת(‪.‬‬
‫‪ - Z1‬הספרה האחרונה של שותף ב' )או הספרה שלפני האחרונה אם אין שותף(‪.‬‬

‫‪4‬‬
‫הטכניון ‪ -‬מכון טכנולוגי לישראל‬
‫המעבדה לבקרה ורובוטיקה‬

‫חלק א' – מודל המערכת‬

‫להלן מודל המערכת )ה‪ (Plant -‬שנבנה בהתאם למאפייני המנוע הפיסיקליים )מתאר את מד"ר )‪:((7‬‬

‫תרשים מס' ‪ :4‬דיאגרמת בלוקים של המערכת המבוקרת‬


‫כאשר קבועי המערכת מייצגים‪:‬‬
‫] ‪m2‬‬
‫� ‪[kg‬‬ ‫‪ - J m‬אנרציית המנוע והזרוע‬
‫� ‪�N‬‬
‫�‪m‬‬
‫‪ - K T‬קבוע המומנט של המנוע� ‪�Amp‬‬
‫�‬ ‫�‬
‫‪ – R‬התנגדות המנוע ]‪[W‬‬
‫� ‪� Volt‬‬
‫�‬ ‫‪ - K B‬קבוע המתח המושרה הנגדי‬
‫�‬‫� ‪rad / sec‬‬
‫�‬

‫�‬ ‫�‬ ‫�‪m N‬‬


‫�‬ ‫�‬ ‫‪ - B‬מקדם חיכוך ויסקוזי‬
‫�‬ ‫�‬ ‫‪darces /‬‬

‫� ‪[N‬‬
‫‪ - Tg‬מומנט חוסר האיזון המקסימלי ]‪m‬‬

‫‪ - Vin‬מתח הכניסה למנוע ] ‪[Volt‬‬


‫‪ - q‬זווית הזרוע יחסית לאנך ] ‪[rad‬‬

‫�‬‫� ‪rad‬‬
‫�‬ ‫‪ - q&@q _ dot‬המהירות הזוויתית של הזרוע‬
‫� ‪�sec‬‬
‫�‬
‫כאשר הערכים המספריים של הקבועים הם‪K B = KT = 1 ; J m = 0.2 ; R = 10 ; B = 0.02 :‬‬

‫‪5‬‬
‫הטכניון ‪ -‬מכון טכנולוגי לישראל‬
‫המעבדה לבקרה ורובוטיקה‬

‫תרגילי הכנה ‪ -‬חלק א'‪:‬‬


‫‪ 1.1‬כתבו את המשוואה הדיפרנציאלית המלאה המתארת את התנהגות המערכת המקשרת בין ‪Vin‬‬

‫ל‪ q -‬מתוך דיאגרמת הבלוקים הנתונה )מבלי להציב את הערכים המספריים(‪ .‬נא לפרט את כל‬
‫שלבי החישוב! השוו עם )‪ (7‬את התוצאה המתקבלת‪.‬‬

‫‪ 1.2‬בשלב זה נרצה לקרב את המערכת למערכת לינארית לשם ביצוע אנליזה לינארית )שהיא כמובן‬

‫נוחה יותר(‪ ,‬ולכן נניח כי הזווית ‪ q‬קטנה ונחליף את הגורמים המתאימים‪ sin ( q ) @ q :‬ו‪. cos q @ 1 -‬‬

‫)‪q ( s‬‬
‫= ) ‪ G ( s‬עבור הקירוב הלינארי כתלות בפרמטרי המנוע‪.‬‬ ‫כתבו את פונקצית התמסורת‬
‫) ‪Vin ( s‬‬

‫‪KT‬‬ ‫� ‪KT‬‬
‫‪KB B‬‬
‫= ‪.b‬‬ ‫= ‪,a‬‬ ‫‪+‬‬ ‫לצורך נוחות החישוב סמנו‪:‬‬
‫�‪R‬‬‫‪Jm‬‬ ‫�‪R‬‬ ‫‪Jm‬‬ ‫‪Jm‬‬

‫בשלב זה‪ ,‬לפני שאתם עונים על השאלות רצוי לקרוא את נספח א' ונספח ב'‪.‬‬

‫את תפקיד ה‪ , " K " -‬ההגבר‪ ,‬במערכת שלנו ימלא הפרמטר ‪ . Tg‬אם כן נבנה את מסלולי הקטבים של‬

‫) ‪ G ( s‬כפונקציה של ‪ Tg‬בתחומי הערכים ]� ‪ [0,‬ו‪. [-�, 0] -‬‬

‫‪1.3‬‬
‫א( מצאו את הפונקציה עבורה צריך לשרטט ‪ R.L.‬במקרה זה )שימו לב‪ ,‬כי הפרמטר ‪ Tg‬עבורו‬
‫אתם נדרשים לשרטט ‪ R.L.‬אינו בצורתו הסטנדרטית(‪.‬‬
‫עבור הקבועים המספריים הנתונים שרטטו ‪ R.L.‬של קטבי המודל הלינארי כתלות‬
‫בפרמטר ‪ Tg‬בתחומים ] ‪ Tg Υ [0,‬ו‪. Tg �[-�, 0] -‬‬

‫את השרטוט אפשר לצייר בשתי דרכים )נספח א'(‪:‬‬


‫בעזרת הכלי ‪ sisotool‬ב‪.MATLAB-‬‬ ‫‪‬‬
‫בעזרת הפונקציה ‪.rlocus‬‬ ‫‪‬‬
‫ב( חשבו את מיקום הקטבים של פונקצית התמסורת עבור ‪ Tg = 0, �( Z 0 + 1) /10‬וסמנו על ה‪R.L. -‬‬

‫עבור אלו מבין הערכים המערכת יציבה אסימפטוטית‪ .‬תנו בנוסף נימוק פיסיקלי לכל אחד‬

‫‪6‬‬
‫הטכניון ‪ -‬מכון טכנולוגי לישראל‬
‫המעבדה לבקרה ורובוטיקה‬

‫מהמקרים‪.‬‬
‫‪ 1.4‬שרטטו דיאגרמת ‪ Bode‬של התמסורת שהתקבלה עבור הערכים ‪ Tg = 0, �( Z1 + 1) /10‬באותה‬
‫מערכת צירים‪ .‬עבור איזה תחום תדרים מתקבל הבדל משמעותי בין המערכות השונות?‬
‫שימו לב כי בסעיף זה מומלץ ביותר לשרטט את הדיאגרמה‪ ,‬הגבר ופאזה‪ ,‬בעזרת פקודת ‪bode‬‬
‫של ‪) MATLAB‬ראה נספח ג'( ‪.‬‬

‫חלק ב’ – בקר הגבר‬


‫בשלב זה ננסה לבקר את המערכת בחוג סגור‪ .‬נתחיל בבקר הלינארי הפשוט ביותר‪ ,‬בקר ההגבר‪,‬‬
‫כמוראה בשרטוט‪:‬‬

‫‪d‬‬ ‫‪atet‬‬
‫‪r_atet‬‬
‫‪pK‬‬
‫‪niV‬‬
‫‪1muS‬‬ ‫‪tnalP‬‬
‫‪muS‬‬ ‫‪niaG‬‬

‫תרשים מס' ‪ :5‬בקר הגבר‬

‫המשוואה המאפיינת את הבקר היא ) ‪( q r - q‬‬


‫� ‪. Vin = K p‬‬

‫תרגילי הכנה – חלק ב’‪:‬‬


‫‪0.5‬‬
‫= ) ‪ G ( s‬של ה‪ plant -‬המתקבל עבור ‪. Tg = 0‬‬ ‫בחלק זה נבחר במודל הלינארי‬
‫‪s + 0.6 s‬‬
‫‪2‬‬

‫‪2.1‬‬
‫א‪ .‬בטאו את פונקצית התמסורת המלאה המתקבלת עבור החוג הסגור עם בקר ההגבר ‪ K p‬ללא‬

‫)‪q ( s‬‬
‫= )‪.T ( s‬‬ ‫ההפרעה ) ‪:( d (t ) = 0‬‬
‫) ‪qr ( s‬‬

‫ב‪ .‬עבור ה‪ plant -‬הנבחר ציירו ‪ R.L.‬כתלות ב‪ . K p > 0 -‬בדקו באמצעות ‪ SISO design tool‬תוך‬
‫שימוש ב‪) constraints -‬כפי שמוסבר בנספח א'( מהם ההגברים אשר גורמים למקדמי ריסון של‬

‫‪ ( K p1 ) z = 0.3‬ו‪ ?( K p 2 ) z = 0.707 -‬צרפו את השרטוטים המתקבלים‪.‬‬


‫כיצד ניתן להגיע לתוצאות זהות באופן אנליטי? השוו!‬

‫‪7‬‬
‫הטכניון ‪ -‬מכון טכנולוגי לישראל‬
‫המעבדה לבקרה ורובוטיקה‬

‫מהו התדר ‪ wn‬המתקבל לכל אחד מהבקרים? )רמז‪ :‬ניתן לקבלו גם מדיאגרמת הפאזה ב‪.(SISO -‬‬
‫‪5‬‬
‫= ‪:d‬‬ ‫‪ 2.2‬עבור כניסת הפרעה של מדרגה בגודל ‪ 5‬‬
‫‪s‬‬
‫א‪ .‬כתבו את הביטוי ל‪ q ( s ) -‬כפונקציה של ) ‪ d ( s ) , q r ( s‬ו‪. G ( s ) -‬‬

‫ב‪ .‬חשבו מהו ‪ K p3‬שמבטיח שגיאת מצב מתמיד של ] ‪ , e ss = 0.1[ rad‬עבור כניסת ‪. q r ( t ) = 0‬‬

‫שמתקבל עבור הגבר זה? היעזרו בקשר‪:‬‬ ‫השתמשו ב‪ SISO -‬לצורך מציאת מקדם הריסון ‪ z‬ו‪wn -‬‬
‫) ) ‪eSS = lim q r ( t ) - q ( t ) = lim s ( q r ( s ) - q ( s‬‬
‫�� ‪t‬‬ ‫‪s �0‬‬

‫צרפו את השרטוט המתקבל‪.‬‬


‫‪1‬‬
‫= ) ‪ ? q r ( t‬נמקו!‬ ‫ג‪ .‬כיצד תשתנה תשובתכם לסעיף ב'‪ ,‬אם בנוסף ל‪ d(t)-‬קיימת כניסת מדרגה‬
‫‪s‬‬

‫‪ 2.3‬הניחו שאין הפרעה‪ .‬מהם ‪ O.S , t peak , tsettling‬הצפויים עבור שלושת ההגברים‪? K p1 , K p 2 , K p 3 :‬‬

‫תוך שימוש ב‪ z , wn -‬שחישבתם ובקשרים המקורבים הבאים‪:‬‬

‫= ‪t peak‬‬
‫� ‪1-z‬‬
‫‪p‬‬
‫‪wn‬‬ ‫‪2‬‬ ‫(‬
‫� ‪O.S .[%] = exp -pz / 1 - z 2‬‬
‫‪100%‬‬ ‫)‬
‫‪3‬‬
‫= )‪tsettling (5%‬‬
‫‪zwn‬‬
‫רכזו את התוצאות בטבלה הבאה‪:‬‬

‫הגבר‬ ‫]‪O.S.[%‬‬ ‫]‪tsettling ( 5% ) [sec‬‬ ‫]‪t peak [sec‬‬

‫‪K p1‬‬
‫‪K p2‬‬
‫‪K p3‬‬
‫הסבירו את מקור תוצאות ה‪ t settling -‬שהתקבלו? עבור אלו הגברים ישתנו תוצאות אלו?‬

‫חלק ג’ – שימוש במשוב נוסף‪ ,‬משוב טכומטרי‬

‫טכומטר‪) -‬מד‪-‬מהירות‪ ,‬מיוונית‪ ta xometro :‬טאכוס ‪ -‬מהירות‪ ,‬מטריין ‪ -‬מדידה( הוא מכשיר‬
‫המשמש למדידת המהירות של גוף או חומר נע‪ .‬הצורה הנפוצה ביותר של טכומטר היא זו שמודדת‬
‫את המהירות של ציר מסתובב‪ ,‬כמו במנוע או מכונה אחרת‪.‬‬

‫‪8‬‬
‫הטכניון ‪ -‬מכון טכנולוגי לישראל‬
‫המעבדה לבקרה ורובוטיקה‬

‫המשוב הטכומטרי מוסיף פרמטר נוסף ‪ K d -‬כאשר ע"י קביעת ערכיהם של ‪ K p , K d‬ניתן לשלוט‬
‫באופן מלא במיקום קטבי החוג הסגור‪.‬‬

‫‪ateT‬‬
‫‪pK‬‬ ‫‪niV‬‬
‫‪fer_ateT‬‬
‫‪epocS‬‬
‫‪1muS‬‬ ‫‪pK‬‬ ‫‪d_ateT‬‬
‫‪muS‬‬ ‫‪tnalP‬‬

‫‪dK‬‬

‫‪dK‬‬

‫תרשים מס' ‪ :6‬טכומטר ללא הפרעה‬

‫תרגילי הכנה – חלק ג’‪:‬‬


‫בחלק זה נתייחס למודל המתקבל עבור ‪. Tg = 0‬‬
‫‪3.1‬‬
‫)‪q ( s‬‬
‫= )‪ T ( s‬בתלות ב‪ K p , K d -‬ובפרמטרי המערכת‬ ‫א‪ .‬רשמו את פונקצית התמסורת בחוג סגור‬
‫) ‪qr ( s‬‬

‫‪ a‬ו‪ , b -‬עם הקירוב הלינארי‪ ,‬כאשר הבקר הוא‪( q r - q ) - q&�K d :‬‬


‫� ‪. Vin = K p‬‬

‫ב‪ .‬רשמו את הקטבים בחוג סגור בתלות ב‪ a , K p , K d -‬ו‪. b -‬‬


‫‪5‬‬
‫= ‪) d‬עבור‬ ‫כתוצאה מהפרעה שמתווספת ל‪ , Vin -‬בגודל‬ ‫‪e ss‬‬ ‫ג‪ .‬רשמו את שגיאת המצב המתמיד‬
‫‪s‬‬

‫כניסה מאופסת ‪ ,( q r = 0‬בתלות ב‪ a , K p , K d -‬ו‪ . b -‬השווה לשגיאת המצב המתמיד שהתקבלה‬


‫עבור בקר ההגבר בחלק ב'‪ ,‬שאלה ‪ ,2.2‬והסבר את התוצאות‪.‬‬

‫‪ 3.2‬מצאו את ‪ K p , K d‬כך שתהיה עמידה בדרישות הבאות‪:‬‬

‫)בקר ‪(1‬‬ ‫‪e ss = 0.05‬‬ ‫א‪z = 0.707 .‬‬

‫] ‪) tsettling ( �5% ) = 1[ sec‬בקר ‪(2‬‬ ‫ב‪z = 0.707 .‬‬

‫‪9‬‬
‫הטכניון ‪ -‬מכון טכנולוגי לישראל‬
‫המעבדה לבקרה ורובוטיקה‬

‫]‪) tsettling ( �5% ) = 1[ sec‬בקר ‪(3‬‬ ‫‪e ss = 0.05‬‬ ‫ג‪.‬‬

‫‪5‬‬
‫= ) ‪ d ( s‬וכניסה מאופסת‪ ,‬ושאר‬ ‫כאשר שגיאת מצב מתמיד מתייחסת למערכת עם הפרעה‬
‫‪s‬‬

‫‪1‬‬
‫= )‪. qr ( s‬‬ ‫הספציפיקציות מתייחסות למערכת עם ‪ d ( s ) = 0‬וכניסת מדרגה‬
‫‪s‬‬
‫עבור כל מקרה מצאו את הקטבים בחוג סגור של פונקצית תמסורת ) ‪ T ( s‬ואת תדר התנודות ‪. wn‬‬

‫השתמשו בקירוב הידוע עבור ) ‪. tsettling ( �5%‬‬

‫‪ e ss = lim‬עבור המערכת הכוללת כניסת‬


‫�� ‪t‬‬
‫‪ 3.3‬מצאו את הביטוי לשגיאת המצב המתמיד ‪q r (t ) - q (t ) -‬‬

‫‪5‬‬ ‫‪1‬‬
‫= )‪ d ( s‬ו‪ Tg = 0.5 -‬תוך הצבת הערכים עבור‬ ‫מדרגה ‪ , q r ( s ) = -‬כניסת הפרעה בגודל ‪- 5‬‬
‫‪s‬‬ ‫‪s‬‬
‫המודל הלא לינארי ושימוש במשוואות המערכת הזמניות אליהן הגעתם בשאלת ההכנה ‪.1.1‬‬
‫השאירו את ההגברים ‪ K p , K d‬כפרמטרים‪.‬‬
‫)רמז‪ .1 :‬לצורך ביצוע סעיף זה רצוי לעבוד עם המשוואות הזמניות בלבד‪.‬‬
‫‪ .2‬חשבו מה קורה במצב מתמיד לנגזרות של ) ‪( . q (t‬‬
‫עבור אלו ערכי ‪ q‬השגיאה קטנה‪/‬גדולה?‬

‫חלק ד ’ – תכנון בשיטת ‪root-locus‬‬


‫הקדמה‪:‬‬
‫שיטת ‪ root-locus‬אשר הומצאה ע"י ‪ Evans‬בשנת ‪ 1948‬הינה שיטה גראפית לניתוח ותכנון של‬
‫מערכות בקרה‪ .‬השיטה מבוססת על מיפוי מיקום הקטבים של תמסורת החוג הסגור כפונקציה של‬
‫פרמטר )הגבר( ‪ K‬והמערכת בחוג הפתוח‪.‬‬
‫השיטה מתאימה למערכת המאופיינת ע"י‪:‬‬

‫)‪r(t‬‬ ‫)‪e(t‬‬ ‫)‪KH(s‬‬ ‫)‪u(t‬‬ ‫)‪G(s‬‬ ‫)‪y(t‬‬


‫‪+-‬‬

‫תרשים מס' ‪ :7‬תכנון ‪root locus‬‬


‫כאשר )‪ G(s‬הינה המערכת המבוקרת‪ ,‬ה‪.plant -‬‬

‫‪10‬‬
‫הטכניון ‪ -‬מכון טכנולוגי לישראל‬
‫המעבדה לבקרה ורובוטיקה‬

‫בחוג הסגור התמסורת המתקבלת‪:‬‬


‫)‪Y (s‬‬ ‫) ‪KH ( s ) G ( s‬‬
‫= )‪T ( s‬‬ ‫=‬
‫) ‪R ( s ) 1 + KH ( s ) G ( s‬‬

‫בשיטה זו מתקבל אוסף של עקומות פרמטריות )התלויות בפרמטר ‪ (K‬במישור המרוכב )‪ (s‬אשר‬
‫מציינות את תנועת קטבי החוג הסגור‪.‬‬
‫מיקומו של הקוטב במישור ‪ s‬מלמד ישירות על התדר העצמי ועל מקדם הריסון‪ ,‬מה שמאפשר קבלת‬

‫מידע מקורב על מאפייני המערכת כמו תגובת יתר‪ ,‬זמן עלייה ) ‪ ( tr‬וזמן התייצבות ) ‪. ( tsettling‬‬

‫הסבר מקוצר על תכנון בשיטת ‪: R.L.‬‬


‫תחילה נניח כי רשת תיקון מורכבת מרשת קידום )‪ (lead‬אחת ורשת פיגור )‪ (lag‬אחת‪ .‬כמו כן‪ ,‬נניח כי‬
‫למערכת בחוג סגור עם רשת תיקון‪ ,‬ישנם ‪ 2‬קטבים דומיננטיים שאותם נוכל לקבוע מתוך‬
‫הספציפיקציות‪.‬‬

‫תהליך התכן‪:‬‬
‫‪s + Z1‬‬
‫‪ H1 ( s ) = K1‬למערכת )‪.G(s‬‬ ‫נתכנן בקר קידום מהצורה‪Z1 < P1 :‬‬
‫‪s + P1‬‬

‫‪ (1‬מתוך הספציפיקציות נמצא את ‪ z‬ו‪. wn -‬‬

‫‪ (2‬מתוך ‪ z‬ו‪ wn -‬נחשב את המיקום הרצוי של הקטבים הדומיננטיים בחוג סגור‪:‬‬

‫‪-‬‬ ‫=‪-‬‬
‫‪. s1,2‬ױ‬ ‫‪z wn‬‬ ‫‪jwn 1 z 2‬‬

‫‪ (3‬נקבע שרירותית את קוטב הבקר שיהיה "מספיק מהיר"‪ ,‬כלומר יחסית רחוק משמאל במישור‬
‫הקומפלקסי‪.‬‬
‫‪ (4‬נעזר בתנאי הזווית )עבור קוטב דומיננטי( למציאת האפס של רשת הקידום הנדרשת‪:‬‬
‫‪R G ( s1 ) + R H1 ( s1 ) = -180o‬‬

‫‪ (5‬נעזר בתנאי המודול למציאת ‪: K1‬‬

‫‪1‬‬ ‫‪s +P‬‬


‫= ‪K1‬‬ ‫‪�1 1‬‬
‫‪G ( s1 ) s1 + Z1‬‬

‫‪s + Z2‬‬
‫= ) ‪.( K 2 = 1 ) H 2 ( s‬‬ ‫כעת נתכנן רשת פיגור מהצורה‪Z 2 > P2 :‬‬
‫‪s + P2‬‬

‫‪11‬‬
‫הטכניון ‪ -‬מכון טכנולוגי לישראל‬
‫המעבדה לבקרה ורובוטיקה‬

‫) ‪sq r ( s‬‬
‫‪ , e ss = lim‬נמצא היחס בין ‪ Z 2‬ו‪. P2 -‬‬ ‫‪ (6‬מתוך חישוב של שגיאת מצב המתמיד‬
‫‪s �0‬‬ ‫) ‪1 + H1H 2G ( s‬‬

‫‪ (7‬נקבע את ‪ P2‬שרירותית‪ ,‬כך שרשת הפיגור תמוקם באזור קרוב לראשית‪ ,‬מצד שמאל במישור‬
‫הקומפלקסי‪) .‬קביעה זו עלולה לשנות כמובן את מיקום הקטבים הדומיננטיים!(‪.‬‬

‫תרגילי הכנה – חלק ד'‪:‬‬


‫‪ 4.1‬עבור ‪ Tg = 0‬תכננו רשת קידום עפ"י שיטת ‪ root-locus‬אשר תמקם את קטבי החוג הסגור על‬

‫‪ . tsettling ( 5% ) = 1sec‬בחרו את קוטב רשת הקידום‪:‬‬ ‫מנת לעמוד בדרישות הבאות‪z = 0.707 :‬‬

‫‪ . P1 = 20‬חשבו את הקטבים של המערכת בחוג הסגור‪ ,‬האם מתקבלים ‪ 2‬קטבים דומיננטיים?‬


‫‪4.2‬‬
‫א‪ .‬עבור רשת הקידום שבניתם בשאלה הקודמת‪ ,‬חשבו את קטבי החוג הסגור עבור‬

‫‪ Tg = �( Z1 + 1) /10‬ובדקו האם התכנון שתוכנן ל‪ Tg = 0 -‬עונה על הדרישות גם בערכים אלו‪.‬‬

‫ב‪ .‬מהי הפגיעה הצפויה בביצועי המערכת‪ tsettling ( 5% ) , tr , O.S :‬כתוצאה מתוספת הגרביטציה‬

‫)השינוי ב‪.( Tg -‬‬


‫‪ 4.3‬לרשת הקידום שתכננתם בסעיף ‪ 1‬הוסיפו רשת פיגור כך שתתקיים עמידה בדרישה של שגיאת‬

‫‪1‬‬
‫= ) ‪ . q r ( s‬בצעו את החישוב עבור המקרה ‪. Tg = 0‬‬ ‫מצב מתמיד של ‪ e ss = 0.01‬עבור כניסת ריצה‬
‫‪s2‬‬
‫‪4.4‬‬
‫א‪ .‬חשבו את פונקצית התמסורת הכוללת בחוג סגור עבור ‪. Tg = 0‬‬
‫ב‪ .‬מצאו את הקטבים הדומיננטיים שמתקבלים‪ .‬האם יש שינוי ביחס למערכת ללא רשת הפיגור?‬

‫‪12‬‬
‫הטכניון ‪ -‬מכון טכנולוגי לישראל‬
‫המעבדה לבקרה ורובוטיקה‬

‫חלק ה'‪ :‬תכנון ‪ – Bode‬תכנון במישור התדר‬


‫התכן בתחום התדר מתחיל בתגובת התדר של המערכת הנתונה ‪ , G ( jw ) -‬אמפליטודה ופאזה‪ .‬בניסוי‬

‫זה נקבל את תגובת התדר של המערכת ע"י הצבת ‪ s = jw‬בפונקצית תמסורת ) ‪ . G ( s‬נשתמש בתכן‬

‫בתחום התדר על מנת לשלוט ברוחב הסרט‪ ,‬ביציבות המערכת‪ ,‬וב‪ . PM -‬בחלק זה קבעו ‪. Tg = 0‬‬

‫תהליך התכן במישור התדר‪:‬‬


‫‪s‬‬
‫‪1+‬‬
‫‪. H ( s) = K‬‬ ‫‪ (1‬נבחר רשת התיקון מהצורה‪Z :‬‬
‫‪s‬‬
‫‪1+‬‬
‫‪P‬‬
‫‪ (2‬נבנה דיאגרמת בודה של המערכת )‪ ,G(s‬ובעזרתה נחשב את נקודת ‪) wco‬נקודת חיתוך של גרף‬
‫ההגבר עם ‪( 0dB‬‬
‫‪ (3‬בנקודת ה‪ wco -‬נחשב את הפאזה ) ‪ f ( wco‬ו‪ PM -‬הקיים‪. PM (exists ) = 180 + f ( wco ) :‬‬
‫‪o‬‬

‫‪ (4‬נגדיר את תוספת הרצויה בפאזה‪. q max = PM (needed ) - PM (exists ) :‬‬


‫‪ (5‬כעת נחשב את פרמטרי רשת תיקון מתוך פתרון של מערכת משוואות הבאה‪:‬‬

‫‪wco = ZP‬‬
‫‪1- Z / P‬‬
‫= ‪sin q max‬‬
‫‪1+ Z / P‬‬
‫‪ (7‬נבחר את הגבר הבקר כך שנקבל ‪ wco‬זהה גם לאחר הוספת הבקר‪.‬‬

‫‪jwco‬‬
‫‪1+‬‬
‫‪P‬‬
‫=‪K‬‬
‫‪jw‬‬
‫‪1 + co‬‬
‫‪Z‬‬

‫חלק ה' – תרגילי הכנה‪:‬‬


‫‪ 5.1‬הוכיחו כי הנוסחה עבור חישוב הגבר הבקר ‪ ,K‬היא אכן נכונה‪.‬‬
‫‪5.2‬‬
‫א‪ .‬שרטטו עקום בודה )הגבר ופאזה( של המערכת‪.‬‬
‫ב‪ .‬מצאו את ‪ wco‬ואת ה‪ PM -‬הקיים של המערכת‪.‬‬

‫‪ 5.3‬תכננו בקר ע"י תכן במישור התדר לקבלת הדרישה הבאה‪. PM = 60 + Z 0 - Z1 :‬‬
‫‪o‬‬

‫‪13‬‬
‫הטכניון ‪ -‬מכון טכנולוגי לישראל‬
‫המעבדה לבקרה ורובוטיקה‬

‫מהלך הניסוי‬

‫המלצה‪ :‬על מנת להקל עליכם את הכנת הדו"ח המסכם רצוי מאוד שכבר במהלך הניסוי תעשו את‬
‫החישובים שנגזרים מהגרפים )זמן התייצבות‪ ,‬מקדמי ריסון וכו'( על מנת שלא תצטרכו ליצור את‬
‫הגרפים מחדש‪.‬‬

‫תזכורת‪ :‬במהלך הניסוי יקבעו נתונים שונים לפי מספרי תעודת הזהות שלכם‪:‬‬
‫‪ - Z 0‬הספרה האחרונה של שותף א' )ספרת ביקורת(‪.‬‬
‫‪ - Z1‬הספרה האחרונה של שותף ב' )או הספרה שלפני האחרונה אם אין שותף(‪.‬‬

‫מעבדה ‪ -‬חלק א'‪:‬‬


‫‪ ‬היכנסו ל‪ MATLAB-‬והפעילו את הכלי ‪) simulink‬ע"י כתיבת הפקודה ‪ simulink‬בשורת‬
‫הפקודה(‪ .‬הבלוקים הדרושים למהלך הפרויקט נמצאים בספריה ‪) CLAB‬שאלו את המדריך‬
‫על מיקום הספריה המדויק(‪ .‬לצורך עבודה נוחה לפני תחילת הרצה הגדירו את הספרייה‬
‫הנוכחית )‪ (current directory‬להיות הספרייה בה נמצאים הקבצים‪ .‬הדבר מתבצע בסרגל‬
‫הכלים של ‪ MATLAB‬ע"י לחיצה על הכפתור המסומן‪:‬‬

‫במידה והסרגל הנ"ל אינו מופיע ניתן להוסיפו תחת ‪.Desktop‬‬


‫‪>> CLAB‬‬ ‫ע"י הקשת הפקודה )באותיות גדולות(‪:‬‬ ‫‪‬‬
‫תפתח ספריית הבלוקים הנחוצים למהלך העבודה )אם לאחר הפעלת הפקודה לא מופיע חלון‬
‫חדש‪ ,‬קראו למדריך(‪.‬‬
‫‪.file new  Model‬‬ ‫פתיחת משטח עבודה חדש ע"י‪:‬‬ ‫‪‬‬
‫את הבלוקים הרצויים העבירו ע"י גרירה לחלון החדש שפתחתם‪.‬‬ ‫‪‬‬
‫סיבוב בלוק מתבצע ע"י ‪.ctrl + R‬‬ ‫‪‬‬
‫את הגדרות הבלוקים ניתן לשנות ע"י לחיצה כפולה עליהם‪.‬‬ ‫‪‬‬
‫הקפידו לתת שמות מתאימים לבלוקים‪.‬‬ ‫‪‬‬
‫הוספת כניסות נוספות לבלוק ה‪ sum-‬מתבצעת ע"י שינוי בשדה‪.List of signs :‬‬ ‫‪‬‬

‫‪14‬‬
‫הטכניון ‪ -‬מכון טכנולוגי לישראל‬
‫המעבדה לבקרה ורובוטיקה‬

‫לרשותכם בלוק אנימציה תלת מימדית המאפשר הסתכלות כוללת על המנוע ועל הזרוע‬ ‫‪‬‬
‫הרובוטית‪ .‬ניתן להזיז בבלוק זה את המנוע ולשנות את כווני הצפייה‪.‬‬
‫פתחו משטח חדש והעבירו אליו את ה‪ ,plant-‬את בלוק האנימציה‪ ,‬את ה‪ scope, -‬וכניסה‬ ‫‪‬‬
‫קבועה מאופסת‪ .‬חברו כמוראה בתרשים ‪.8‬‬
‫* כניסת ה‪ plant-‬היא ‪ , Vin‬יציאת ה‪ plant-‬העליונה היא ‪ q‬והתחתונה היא&‪. q‬‬

‫תרשים מס' ‪ :8‬מערכת ללא בקרה‬

‫לחיצה כפולה על ה‪ plant-‬תפתח את חלון הפרמטרים שלו‪.‬‬

‫� כאשר ‪. X = (Z 0 + Z1 ) /100‬‬
‫�‬ ‫כתנאיי התחלה למערכת הכניסו ]‪�= [ X 0‬‬
‫�&‪q q‬‬

‫לפני תחילת הסימולציה חשוב לבחור את שיטת האינטגרציה ולקבוע את הפרמטרים הרלוונטיים‬ ‫‪‬‬
‫ע"מ לקבל גרפים "חלקים"‪.‬‬
‫תחת ‪simulation configuration parameterssolver‬‬
‫שנו את ההגדרות הבאות‪:‬‬
‫‪Solver- ode23tb‬‬
‫‪Min step size- 0.001‬‬
‫‪Relative tolerance- 1E-5‬‬
‫כמו כן חשוב לשנות את זמן הסימולציה על מנת שהמערכת תספיק להתייצב )‪.(stop time‬‬

‫לפני ביצוע סעיפים אלה רצוי מאוד לקרוא את נספח ג' ונספח ד'‪.‬‬

‫‪ (1‬הריצו את הסימולציה עבור שלושת ערכי ‪ Tg‬השונים ) ‪ ( �( Z 0 + 1) /10, 0‬והסבירו את התנהגות‬


‫המערכת בכל אחד מהמקרים‪ ,‬צרפו את הגרף המתאים והסבירו מה מתקבל בו‪ .‬השוו עם התוצאה‬
‫התאורטית )שאלת הכנה ‪.(1.3‬‬

‫‪15‬‬
‫הטכניון ‪ -‬מכון טכנולוגי לישראל‬
‫המעבדה לבקרה ורובוטיקה‬

‫‪ )2‬עבור ‪ Tg = -0.5‬אתחלו את המערכת בנקודה ]‪. [ p - ( X + 0.1) 0‬‬


‫חשבו את תדר התנודות ואת זמן ההתייצבות ע"פ הגרף המתקבל ב‪. scope -‬‬
‫‪ (3‬חשבו על דרך להראות כי התגובה של המערכת הלינארית המקורבת‪ ,‬יכולה להיות שונה מתגובת‬
‫המערכת הלא לינארית‪ .‬תנו לפחות דוגמא אחת לסימולציה בה יש הבדל בין שתי התגובות‪ .‬כיצד תנאי‬
‫ההתחלה משפיעים על הבדל זה?‬

‫מעבדה ‪ -‬חלק ב'‪:‬‬


‫פתחו משטח חדש‪ .‬הרכיבו את מערכת בקר ההגבר כפי שמופיעה בתרשים מס' ‪ 5‬ללא תוספת‬

‫ההפרעה‪ .‬חברו ליציאה ) ‪) q ( s‬יציאת ה‪ plant -‬העליונה( את בלוק האנימציה ו‪ .scope -‬ב‪scope -‬‬
‫ניתן לבצע ‪ zoom in/out‬ולנתח את הגרף בדיוק רב‪ .‬הקפידו על דיוק מרבי‪ .‬לכניסה חברו כניסת‬
‫מדרגה בגודל ‪.1‬‬
‫בשלב ראשון נבצע סימולציה של הזרוע ללא גרביטציה ) ‪.( Tg = 0‬‬
‫הביאו את ה‪ plant-‬למצב התחלתי של ]‪.[0 0‬‬

‫‪ (4‬עבור כל אחד מההגברים שמצאתם בתרגילי ההכנה בדקו את תאימות הציפיות עבור‪:‬‬
‫א‪) O.S . .‬באחוזים(‪.‬‬

‫ב‪. t peak .‬‬

‫ג‪. tsettling ( �5% ) .‬‬

‫רכזו את התוצאות בטבלה הבאה‪:‬‬

‫]‪O.S.[%] O.S.[%] t settling -5% [sec] t settling -5% [sec] t peak [sec] t peak [sec‬‬
‫הגבר‬ ‫מדוד‬ ‫צפוי‬ ‫מדוד‬ ‫צפוי‬ ‫מדוד‬ ‫צפוי‬

‫)‪K p1 ( z = 0.3‬‬

‫) ‪K p2 ( z = 0.707‬‬

‫) ‪K p3 ( z = 0.06‬‬

‫האם ישנם הבדלים בין התוצאות הצפויות למדודות? אם כן‪ ,‬מה מקורם?‬

‫‪16‬‬
‫הטכניון ‪ -‬מכון טכנולוגי לישראל‬
‫המעבדה לבקרה ורובוטיקה‬

‫צרפו את הגרפים של תגובת המערכת‪ , q ( s ) ,‬עבור כל אחד מהבקרים‪ .‬מהי שגיאת המצב המתמיד‬
‫לכניסת מדרגה?‬

‫‪ (5‬א‪ .‬השאירו את כניסת המדרגה ‪ q r ( s ) = 1/ s‬ואת תנאי ההתחלה ב‪ [0 0] -‬וקבעו ‪ . Tg = -0.5‬הריצו‬

‫את הסימולציה עבור ההגברים ‪ . K p1 , K p 2‬האם הבקרים מבצעים את המשימה בתוספת‬


‫הגרביטציה? )עמידה במקדם הריסון הנדרש(‪ .‬צרפו את גרפי התגובה‪ .‬הסבירו את התוצאה‪.‬‬
‫ב‪ .‬קבעו ‪ Tg = 0‬והוסיפו הפרעה ‪ . d ( s ) = 5 / s‬שאר הפרמטרים ללא שינוי‪.‬‬
‫מהי שגיאת המצב המתמיד המתקבלת עבור כל אחד מהבקרים‪ .‬צרפו את גרפי השגיאה והסבירו‬
‫את ההתנהגויות השונות של הבקרים‪ .‬איזה בקר נותן ביצועים טובים יותר?‬

‫מעבדה – חלק ג'‪:‬‬


‫‪ (6‬המערכת הינה ללא גרביטציה ) ‪ ( Tg = 0‬וללא הפרעה‪ .‬בנו את בקר ההגבר בצירוף המשוב‬

‫הטכומטרי וחברו כניסת מדרגה‪ .‬הציבו את ערכי הקבועים ‪ K p , K d‬שמצאתם בשאלת הכנה ‪3.2‬‬

‫עבור בקר ‪ 2‬בלבד‪ ,‬קבעו את תנאי ההתחלה‪ , [0.01+(Z0+Z1)/100 0] :‬חשבו את ה‪ O.S . -‬ובדקו‬

‫עמידה בדרישות ) ‪ .( z , t settling‬צרפו את גרף התגובה‪.‬‬

‫‪ (7‬הוסיפו הפרעה ‪ d ( s ) = 5 / s‬למערכת כמוראה בשרטוט קבעו את כניסת המערכת לאפס והשאירו‬
‫את תנאי ההתחלה כבסעיף הקודם )ניתן להוסיף בלוק סימולציה תלת מימדית במקביל ל‪:(scope-‬‬

‫תרשים מס' ‪ :9‬טכומטר בתוספת הפרעה‬

‫‪17‬‬
‫הטכניון ‪ -‬מכון טכנולוגי לישראל‬
‫המעבדה לבקרה ורובוטיקה‬

‫הוציאו מהגרפים את שגיאת המצב המתמיד המתקבלת עבור שלושת הבקרים השונים‪.‬‬
‫בדקו עמידה בדרישות וצרפו את גרפי השגיאה‪.‬‬
‫השוו את דיוק התוצאות שהתקבלו עבור ‪ t settling‬ועבור ‪ e ss‬בסימולציה ביחס לחישוב התיאורטי‪ .‬האם‬
‫יש פרמטר שהחישוב התיאורטי לגביו מדויק יותר? הסבירו!‬

‫‪ (8‬החזירו למערכת את כניסת המדרגה וכן את הגרביטציה ) ‪ ,( Tg = 0.5‬השאירו את ההפרעה‪ ,‬וקבעו‬


‫את זווית ההתחלה להיות‪.[0 0.01] :‬‬

‫סכמו את ביצועי שלושת הבקרים בטבלה המצורפת‪:‬‬


‫]‪O.S.[%‬‬ ‫]‪tsettling (5%)[sec‬‬ ‫‪ess‬‬ ‫]‪t peak [sec‬‬
‫בקר ‪1‬‬
‫בקר ‪2‬‬
‫בקר ‪3‬‬

‫א‪ .‬מי מבין הבקרים נותן את הביצועים הטובים ביותר?‬


‫ב‪ .‬מה המחיר אותו אנו משלמים עבור הביצועים הטובים יותר?‬
‫ג‪ .‬איך זה מתבטא בקטבי החוג הסגור של המערכת הלינארית?‬
‫‪ (9‬א‪ .‬צרפו גרפים של ‪ Vin‬המתקבל עבור כל אחד מהבקרים לפי תנאי שאלה ‪.8‬‬

‫מצאו את ערכו הסופי של ‪ Vin‬המתקבל ובדקו האם ערך זה תואם את שגיאת המצב המתמיד‬

‫שקיבלתם )חשבו מהו הקשר בין ‪ Vin‬לשגיאת המצב המתמיד וצרפו זאת לדו"ח(‪.‬‬
‫האם שגיאת המצב המתמיד תגדל אם נגדיל את המדרגה בכניסה?‬

‫על השגיאה כפי שחישבתם בשאלת ההכנה ‪.3.3‬‬ ‫ב‪ .‬כעת בדקו את השפעת זווית הכניסה ‪q r‬‬

‫בחרו‪. K p = 100, K d = 10 -‬‬

‫האם הגדלת הכניסה )מערכה המקורי השווה ל‪ (1-‬תקטין או תגדיל את השגיאה? עבור‬
‫איזה כניסה‪ ,‬מגמת השפעת הכניסה תשתנה לראשונה? )אם בהגדלת הכניסה השגיאה‬

‫קטנה אז עבור איזה כניסה היא תתחיל לגדול? וההפך( סמנו ערך זה ב‪ . q r -c -‬צרפו את‬

‫‪ .‬השוו לתוצאות‬ ‫]‪[ q r -c - 0.4,q r -c ,qr -c + 0.4‬‬ ‫גרפי השגיאה המתקבלים עבור הכניסות‪:‬‬

‫התיאורטית שהייתם מצפים לקבל‪.‬‬


‫)רמז חשוב‪ :‬שימו לב כי כאן אתם נדרשים לבדוק את השפעת הכניסה בעוד שבחישובים‬

‫‪18‬‬
‫הטכניון ‪ -‬מכון טכנולוגי לישראל‬
‫המעבדה לבקרה ורובוטיקה‬

‫התיאורטיים קיבלתם תוצאה התלויה בזווית המוצא בלבד!! חשבו מה הקשר ביניהם‪(.‬‬

‫מעבדה – חלק ד'‪:‬‬


‫שרטוט המערכת‪:‬‬

‫תרשים מס' ‪ :10‬דיאגראמת בלוקים עבור תכנון ‪root locus‬‬


‫‪ (10‬בנו מהרכיבים הקיימים בספריה את המערכת הכוללת את שני הבקרים ובדקו את הביצועים‬
‫המתקבלים ללא גרביטציה ‪ , Tg = 0‬עבור כניסת מדרגה ‪ q r = 1/ s‬וללא תוספת הפרעה‬

‫‪ .( tsettling‬האם קיימות חריגות בין החישוב התיאורטי לתוצאה‬ ‫) ‪( 5% ) , t peak , O.S , e ss‬‬
‫שהתקבלה? פרטו ונמקו! צרפו את גרפי התגובה והשגיאה‪.‬‬
‫‪ (11‬חברו כניסת ריצה ‪ , q r = 1/ s‬האם מתקבלת שגיאת מצב מתמיד כצפוי?‬
‫‪2‬‬

‫‪ (12‬איך לפי דעתכם ניתן לשפר את התוצאות שהתקבלו בסעיפים הקודמים‪.‬‬

‫מעבדה ‪ -‬חלק ה'‪:‬‬

‫תרשים מס' ‪ :11‬דיאגראמת בלוקים עבור תכן במישור התדר‬

‫בנו את המערכת בתוספת רשת תיקון שהכנתם בדו"ח מכין‪ ,‬עם כניסת מדרגה ‪. q r = 1/ s‬‬

‫‪19‬‬
‫הטכניון ‪ -‬מכון טכנולוגי לישראל‬
‫המעבדה לבקרה ורובוטיקה‬

‫‪ .( tsettling‬צרפו את הגרף‬ ‫בדקו את הביצועים המתקבלים ללא גרביטציה ) ‪( 5% ) , t peak , O.S‬‬ ‫‪(13‬‬

‫המראה את שגיאת המצב המתמיד שקיבלתם ואת התגובה למדרגה‪.‬‬

‫‪ (14‬נבדוק עמידה בדרישות ‪ PM‬ונמצא את ‪ . wco‬נחבר בכניסה אות סינוס בעל אמפליטודה בגודל‬

‫‪ 1‬ותדר ‪) wco‬שקיבלתם בשאלת הכנה ‪ .(5.2‬בדקו את יחס האמפליטודות בין אות השגיאה )‪Error‬‬
‫בתרשים ‪ (11‬והיציאה ‪.teta‬‬
‫שימו לב כי אתם מתבקשים לחשב את ההגבר בין השגיאה ליציאה ולא מהכניסה ליציאה כי ההגברים‬
‫שתכננתם לפיהם את הבקרים הם הגברי החוג הפתוח‪ ,‬שזה במקרה זה ההגבר בין השגיאה ליציאה‪.‬‬
‫צרפו את גרף השגיאה‪.‬‬
‫חשבו הפרש הפאזות בין ‪ 2‬אותות אלו‪ .‬האם לדעתכם אפשר להסיק מסקנות על ‪ wco‬ו‪ PM -‬מתוך ‪2‬‬
‫מדידות הנ"ל? אם כן‪ ,‬עשו זאת‪ ,‬אם לא‪ ,‬הסבירו מדוע!‬
‫נספח א'‬
‫‪:SISOTOOL‬‬
‫‪ .1‬הגדירו בחלון הפקודות את פונקציות התמסורת )כתלות במשתנה ‪ (s‬איתן ברצונכם לעבוד‪.‬‬
‫א‪ .‬על מנת שתוכלו להשתמש ב‪ s -‬כמשתנה‪ ,‬עליכם להגדירו כפונקצית תמסורת ע"י הפקודה ‪tf‬‬
‫)‪ (transfer function‬באופן הבא‪:‬‬
‫<< )'‪s=tf('s‬‬
‫ב‪ .‬הגדירו את התמסורת הרצויה כתלות במשתנה ‪ ,s‬לדוגמא‪:‬‬
‫<< ))‪H=(s+1)/((s+2)*(s+3‬‬
‫הפלט שיתקבל‪:‬‬
‫‪Transfer function:‬‬
‫‪s+1‬‬
‫‪-------------‬‬
‫‪s^2 + 5 s + 6‬‬
‫באופן דומה הגדירו את כל התמסורות הרצויות )‪ H, G‬וכו'(‪.‬‬
‫<<‪sisotool‬‬ ‫‪ .2‬בחלון הפקודות של ה‪ Matlab -‬כתבו את הפקודה‪:‬‬
‫יפתח חלון ‪ SISO design tool‬הנראה כך‪:‬‬

‫‪20‬‬
‫הטכניון ‪ -‬מכון טכנולוגי לישראל‬
‫המעבדה לבקרה ורובוטיקה‬

‫‪ .3‬בחלון המסומן בעגול בחרו את קונפיגורציית המשוב הרצויה בעזרת הלחצנים ‪ FS‬ו‪.+/- -‬‬
‫הקונפיגורציה השימושית עבורכם היא ברירת המחדל של התוכנה כפי שמופיעה בציור‪.‬‬

‫‪ .4‬על מנת למלא את שדה ה‪) c(s) -‬המוקף במלבן( ולבחור את שאר התמסורות בהתאם‬
‫לקונפיגורציה‪ ,‬לחצו ‪ fileimport‬ויפתח החלון הבא‪:‬‬

‫‪21‬‬
‫הטכניון ‪ -‬מכון טכנולוגי לישראל‬
‫המעבדה לבקרה ורובוטיקה‬

‫בחלון זה תנו ערך מתאים לכל אחד מהבלוקים ‪ C,F,H,G‬כאשר המשתנים המופיעים בצד שמאל תחת‬
‫העמודה ‪ SISO models‬הינם פונקציות התמסורת שהגדרתם בחלון הפקודות‪ .‬ע"י החצים תוכלו‬
‫לבחור את התמסורות הרצויות‪.‬‬

‫‪ G-‬הינו ה‪.plant -‬‬


‫‪ C-‬הינו הבקר במהלך ניסוי זה עבור רשת קידום‪ ,‬רשת פיגור ובקר הגבר‪.‬‬

‫‪22‬‬
‫הטכניון ‪ -‬מכון טכנולוגי לישראל‬
‫המעבדה לבקרה ורובוטיקה‬

‫לאחר שתבחרו את התמסורות ישורטט ה‪:rootlocus -‬‬

‫הוספת אילוצים‪:‬‬

‫‪23‬‬
‫הטכניון ‪ -‬מכון טכנולוגי לישראל‬
‫המעבדה לבקרה ורובוטיקה‬

‫ניתן להוסיף אילוצים על הפרמטרים השונים של המערכת )‪. ( z , wn , ts , o.s.‬‬


‫ביצוע הפעולות כפי שמוראה בתרשים לעיל יפתח חלון בשם ‪ New Constraint‬בו ניתן לבחור את‬
‫ההגבלות הרצויות‪:‬‬

‫לאחר בחירת ההגבלה יסומן התחום בו מתקיימת הדרישה הרצויה לדוגמא‪:‬‬

‫בעזרת כלי זה‪ ,‬ניתן לראות עבור איזה הגבר )במקרה זה( מתקיימת הדרישה הרצויה‪.‬‬
‫בדוגמא זו‪ ,‬בחרנו הגבלה על מקדם הריסון של המערכת להיות פחות מ‪ 0.707 -‬וניתן לראות את‬
‫התחום המתאים )החלק הכהה מסמן את החלק שמתאים לתחום הרצוי ואילו החלק הבהיר מסמן את‬

‫‪24‬‬
‫הטכניון ‪ -‬מכון טכנולוגי לישראל‬
‫המעבדה לבקרה ורובוטיקה‬

‫התחום שאינו רצוי(‪ .‬בדוגמא זו ניתן לראות כי עבור הגבר של ‪ 0.916‬ומטה‪ ,‬המערכת מקיימת את‬
‫הדרישה‪.‬‬

‫הפונקציה ‪rlocus‬‬
‫הפונקציה ‪ rlocus‬מחשבת ומשרטטת ‪ root locus‬עבור מערכת ‪ LTI‬עם כניסה יחידה ומוצא יחיד )‬
‫‪ .(SISO‬שרטוט ה‪ root locus -‬משמש לניתוח מערכת עם משוב שלילי ומראה את התנהגות הקטבים‬
‫בחוג סגור כתלות בהגבר ‪ .k‬לפונקציה מספר צורות שימוש‪:‬‬

‫‪ .1‬הפונקציה מקבלת תמסורת )‪ (SYS‬המוגדרת כפי שהוסבר בפרק על ה‪ ,sisotool -‬ווקטור הגברים‬
‫)‪ (K‬ומשרטטת את הקטבים החוג הסגור עבור הגברים אלו בלבד‪:‬‬

‫)‪>>rlocus(SYS,K‬‬

‫‪:‬לדוגמא‬
‫‪ .2‬הפונקציה משרטטת ‪ root locus‬עבור מספר תמסורות על אותו גרף‪.‬‬
‫<<‬ ‫)‪rlocus(SYS1,SYS2,...‬‬

‫‪25‬‬
‫הטכניון ‪ -‬מכון טכנולוגי לישראל‬
‫המעבדה לבקרה ורובוטיקה‬

‫ניתן לבחור את צבע הגרף עבור כל מערכת‪:‬‬


‫)'‪<< rlocus(sys1,'r',sys2,'y',sys3,'g‬‬

‫‪:‬לדוגמא‬

‫‪ .3‬הפונקציה מחפשת נקודות על ה‪ root locus -‬עבור ההגבר המבוקש )הקטבים המתקבלים עבור‬
‫הגבר זה( בצורת מערך‪.‬‬
‫<<‬ ‫)‪R=rlocus(SYS,K‬‬
‫‪ .4‬שרטוט ‪ root locus‬עבור הגברים שליליים מתקבל כשרטוט ‪ root locus‬עבור –‪.SYS‬‬

‫‪26‬‬
‫הטכניון ‪ -‬מכון טכנולוגי לישראל‬
‫המעבדה לבקרה ורובוטיקה‬

‫נספח ב'‬
‫שרטוט ‪ Root Locus‬עבור צורה לא סטנדרטית‪:‬‬
‫‪1‬‬
‫= )‪. P ( s‬‬ ‫נתייחס לצורה הבאה‪:‬‬
‫‪as + bs +g +d K‬‬
‫‪2‬‬

‫נרצה לשרטט ‪ Root Locus‬לפי הפרמטר ‪ K‬כשהפונקציה הנתונה ) ‪ P ( s‬היא פונקציית התמסורת של‬

‫החוג הסגור ו‪ - a , b , g , d -‬קבועים וידועים‪.‬‬


‫לשם כך‪ ,‬נתאים את פונקציית התמסורת הנתונה בחוג סגור לצורה הכללית של תמסורת חוג סגור‬
‫עבור משוב יחידה‪ .‬כלומר‪ ,‬עבור חוג סגור מהצורה‪:‬‬

‫)‪r(t‬‬ ‫)‪e(t‬‬ ‫‪K‬‬ ‫)‪u(t‬‬ ‫)‪T(s‬‬ ‫)‪y(t‬‬


‫‪+-‬‬

‫‪N‬‬
‫‪K�T‬‬
‫‪KT‬‬ ‫‪DT‬‬ ‫�‪K‬‬ ‫‪NT‬‬
‫‪.‬‬ ‫=‬ ‫=‬ ‫שפונקציית התמסורת הכללית שלו היא‪:‬‬
‫� ‪1 + KT 1 + K‬‬‫� ‪N T DT + K‬‬‫‪NT‬‬
‫‪DT‬‬

‫כאשר ‪ NT‬הוא המונה )‪ (Numerator‬של התמסורת ) ‪ T ( s‬אותה אנו מחפשים‬

‫ו‪ DT -‬הוא המכנה )‪.(Denominator‬‬

‫כלומר‪ ,‬בפולינום האופייני בחוג סגור האפסים של )‪ T(s‬מוכפלים ב‪ ,K-‬והקטבים שלה לא מוכפלים‪.‬‬

‫� ‪ DT + K‬כפונקציה של ‪ .K‬אנחנו רוצים לדעת כיצד זזים‬


‫ה‪ .R.L-‬מתאר את מיקום השורשים של ‪N T‬‬

‫� ‪ DT + K‬נתאים‬
‫השורשים של ‪ a s 2 + b s + g + d K‬כפונקציה של ‪ ,K‬לכן את הפולינום האופייני ‪N T‬‬

‫� ‪a s 2 + b s + g + d K = DT + K‬‬
‫‪NT‬‬
‫�‬
‫לפולינום האופייני של תמסורת הנתונה‪:‬‬
‫‪NT = d‬‬
‫‪DT = a s 2 + b s + g‬‬

‫‪27‬‬
‫הטכניון ‪ -‬מכון טכנולוגי לישראל‬
‫המעבדה לבקרה ורובוטיקה‬

‫‪d‬‬
‫= )‪T ( s‬‬ ‫מכאן‪ ,‬פונקציית התמסורת שלפיה נשרטט ‪: R.L.‬‬
‫‪as + bs +g‬‬
‫‪2‬‬

‫נספח ג'‬

‫שיטה לעבודה נוחה עם גרפים‪:‬‬

‫‪ .1‬לחיצה כפולה על בלוק ה‪ scope -‬תפתח את הגרף‪.‬‬


‫‪.2‬‬

‫ע"י לחיצה כפולה על לחצן ה‪) parameters-‬המסומן בציור( יפתחו מאפייני הגרף‪:‬‬

‫בחרו ‪ Format‬של ‪ ,Array‬בחרו שם משתנה והקפידו לבחור את אופציית ה‪save data to -‬‬
‫‪.workspace‬‬
‫לאחר שתריצו את הסימולציה עברו לחלון ה‪ matlab-‬הראשי שם יופיע המשתנה אותו הגדרתם‪.‬‬
‫במשתנה זה שתי עמודות‪ .‬עמודה אחת של הזמן ועמודה שנייה של ערך היציאה באותו זמן‪.‬‬
‫‪ .3‬ע"י הפקודה‬
‫)) ‪>> plot (ScopeData( :,1 ),ScopeData( :,2‬‬
‫יפתח ‪ figure‬ובו הגרף של ערך המוצא ) ‪ ( q‬ביחס לזמן‪.‬‬
‫השימוש ב‪ figure -‬נוח יותר ומאפשר העתקה של הגרף‪ zoom In/Out ,‬הוספת תוויות וכו'‪.‬‬

‫‪28‬‬
‫הטכניון ‪ -‬מכון טכנולוגי לישראל‬
‫המעבדה לבקרה ורובוטיקה‬

‫ד‪ .‬בנוסף שמירת הנתונים ב‪ workspace-‬מאפשרת מניפולציות על המערך כמו מציאת מקסימום‪.‬‬

‫‪29‬‬
‫הטכניון ‪ -‬מכון טכנולוגי לישראל‬
‫המעבדה לבקרה ורובוטיקה‬

‫הפונקציה ‪plot‬‬
‫הפונקציה מקבלת שני וקטורים‪ ,‬ציר ‪ x‬וציר ‪ y‬ומשרטטת לפיהם את הגרף‪.‬‬
‫‪ .1‬שרטוט בודה עבור מערכת אחת‪:‬‬
‫<< )‪plot(X, Y‬‬
‫שימו לב כי נפתח חלון ‪ figure 1‬כברירת המחדל וכל גרף שתשרטטו יפתח עליו‪.‬‬
‫לכן‪ ,‬על מנת שתוכלו להשתמש בכמה גרפים במקביל צריך להגדיר לו לפני כל פקודת ‪ plot‬לאיזה‬
‫‪ figure‬רוצים שהגרף יצוייר‪.‬‬
‫זאת עושים ע"י הפקודה‬
‫<<)‪figure (12‬‬
‫ויפתח ‪ figure‬מס' ‪) 21‬לדוגמא(‪.‬‬

‫הפונקציה ‪bode‬‬

‫הפונקציה מקבלת תמסורת )‪ (SYS‬המוגדרת כפי שהוסבר בנספח א'‪ ,‬ומשרטטת את עקומי ההגבר‬
‫והפאזה שלה‪.‬‬
‫‪ .1‬שרטוט בודה עבור מערכת אחת‪:‬‬
‫<<)‪bode(SYS‬‬
‫‪ .2‬שרטוט בודה עבור מספר מערכות עם מערכת צירים משותפת )אותו גרף(‪ .‬בחירת הצבעים‬
‫אופציונלית‪:‬‬
‫<<)'‪bode(SYS1,'r', SYS2 ,'y--',SYS3,'gx‬‬

‫‪30‬‬
‫הטכניון ‪ -‬מכון טכנולוגי לישראל‬
‫המעבדה לבקרה ורובוטיקה‬

‫נספח ד'‬

‫הסבר לעבודה עם הסימולטור‪:‬‬

‫כאשר תשתמשו בבלוק האנימציה התלת‪-‬מימדית )‪ (Animation 3D‬יפתח חלון המסמלץ את תנועת הזרוע‬
‫הרובוטית‪.‬‬
‫החלון שנפתח הינו‪:‬‬

‫ניתן לראות את המנוע ואת הזרוע המחוברת אליו שנעה בהתאם לזווית הכניסה של הסימולציה )בניסוי זה‪,‬‬
‫זוהי זווית היציאה של ה‪(plant-‬‬
‫לנוחיותכם הכנו כמה נקודות צפייה נוחות )‪.(view points‬‬
‫מעבר בין הנקודות מתבצע על החיצים המוקפים בריבוע‪.‬‬
‫תזוזה חופשית מתבצעת ע"י החיצים שמסומנים בעיגול‪.‬‬
‫אם ברצונכם להריץ שוב את הסימולציה אין צורך לחזור לחלון המערכת שבניתם‪ ,‬אלא להשתמש בלחצן ה‪-‬‬
‫‪ start/run/continue simulation‬המסומן במשולש‪.‬‬

‫הניסוי נכתב ע"י צופיה פרץ וחגי אשל בהנחיית אריה נחמני חורף תשס"ז‬

‫‪31‬‬

You might also like