280 likes | 460 Views
מערכות בקרה ממוחשבות מפגש V. מפגש V : תקציר. חזרה כללית (חוטי נתונים) משימה 8: סלאלום-בוט – פתרון מתקדם משתנים משימה 9: קודן לנטרול אזעקה תקשורת אלחוטית Blue-Tooth משימה 10: מרוץ השליחים משימה 11: אתגר השלט רחוק. חוטי נתונים – Data Wires.
E N D
מערכות בקרה ממוחשבות מפגש V
מפגש V: תקציר • חזרה כללית (חוטי נתונים) • משימה 8: סלאלום-בוט – פתרון מתקדם • משתנים • משימה 9: קודן לנטרול אזעקה • תקשורת אלחוטית Blue-Tooth • משימה 10: מרוץ השליחים • משימה 11: אתגר השלט רחוק
חוטי נתונים – Data Wires • תוכנת NXT-G מאפשרת תיכנות דינמי באמצעות חוטי נתונים. קיימים 3 סוגי חוטים: • צהובים – נתונים מספריים (1,4,226.....) • ירוקים – נתונים לוגיים (True/False) • כתומים – נתונים מילוליים (Left, Start,…..)
חוטי נתונים - המשך • חוטי הנתונים מאפשרים לנו להזרים נתונים לפקודות השונות. נתונים אלו הם דינאמיים, כלומר יכולים להשתנות במהלך התוכנית ובהתאם לה. זאת בניגוד לנתונים סטאטיים המוגדרים בעת כתיבת התוכנית ולא ניתנים לשינוי במהלך הרצת התוכנית
נתונים דינאמיים מנוע שמאל מנוע ימין מנוע נוסף כיוון נסיעה היגוי עוצמה משך פעולה הבאה משתנה המכיל ערך מספרי חוט נתונים צהוב
דוגמא ערך מספרי המועבר על ידי חיישן האור והקובע את עוצמת המנועים
ערך לוגי המועבר על ידי חיישן המגע והקובע את כיוון הסיבוב של המנוע ועוד דוגמא
ועוד דוגמא, אחרונהתנחשו מה היא עושה...
משימה מס' 8 – סלאלום-בוט • בשיעור שעבר התמודדנו עם האתגר באמצעות פקודת הלולאה (Loop) והתניית "אם-אז" (Switch) • עיקר הבעיה נבע מכך שעל הרובוט לפנות פעם ימינה ופעם שמאלה • השימוש בחוטי נתונים מאפשר לנו לכתוב תוכנית דינאמית פשוטה ויעילה יותר. • השימוש ב "My Block" מאפשר לנו ליצור תוכנית קצרה וברורה
משימה מס' 8 – סלאלום-בוט • אנו ניעזר ב My Block לבניית תוכנית שתבצע את שלושת הפעולות הבאות: • פנה ימינה • פנה שמאלה • סע ישר עד לקו השחור ואז עצור • כדי לבנות את התוכנית בצורה פשוט יותר ניעזר ב Switch שהבורר שלו יהיה מספר הפעולה שיש לבצע. • בשלב הראשון כאשר הערך המוזן ל switch הוא אפס תתבצע פניה ימינה (פעולה מספר 1). • על מנת לעשות שימוש דינמי בערך האיטרציה יש לסמן Show Counter בפקודת ה Loop
משימה מס' 8 – סלאלום-בוט הפונקציות סע ישר עד לפס השחור פנה שמאלה, סע קדימה ופנה ימינה פנה ימינה, סע קדימה ופנה שמאלה
משימה מס' 8 – סלאלום-בוט התוכנית
משתנים • פקודת Variable נמצאת ב Complete Palette תחת ספריית נתונים – Data: • מאפשרת הגדרת 3 סוגי משתנים: • לוגי (True/False) • נומרי (מספרים שלמים) • טקסטואלי • מאפשרת ביצוע 2 סוגי פעולות: • קריאה - Read • כתיבה – Write • הגדרת חיישנים נוספים מתבצעת תחת תפריט Edit, פקודת Define Variables
משימה מס' 9 קודן לנטרול אזעקה תקציר המשימה: • כתבו תוכנית העושה שימוש במשתנה לוגי והמאפשרת נטרול האזעקה ממשימה 7 באמצעות קוד המוקלד על ידי כפתורי הניווט של הלבנה החכמה. • הנחיות להרכבה: • השתמשו במגוון החיישנים ורכיבי הבנייה העומדים לרשותכם • הנחיות לתכנות: • השתמשו בתוכנית משימה 7 כבסיס
משימה מס' 9 התוכנית
תקשורת Blue-Tooth • הבקרים מסוגלים לשלוח זה לזה הודעות בפרוטוקול תקשורת הנקרא Blue-tooth. • שליחה או קבלה של הודעה כרוכה בהגדרת שלושת הנתונים הבאים: • מספר החיבור connection (0, 1, 2 או 3). • תוכן ההודעה: • לוגי (True/False) • נומרי (מספרים שלמים) • טקסטואלי • מספר תיבת הדואר אליה תשלח או ממנה תתקבל ההודעה. • ניתן לקבל או לשלוח הודעה לאחת מתוך 10 כתובות דואר. • ניתן לאחסן עד 5 הודעות בו זמנית בכל תיבה בשיטת FIFO. • כדי להעביר הודעה: • בקר אחד צריך לשלוח הודעה לתיבת דואר • הבקר השני צריך להוציא את ההודעה מתיבת דואר
כללי תקשורת Blue-Tooth • את התקשורת בין הבקרים יכול ליזום רק הבקר הראשי הנקרא master - בכל מערכת יש בקר ראשי אחד. • כל בקר אחר במערכת הנמצא בקשר עם הבקר הראשי נקרא משרת או slave. • במערכת ה NXT ניתן ליצור תקשורת בין בקר ראשי אחד ושלושה משרתים. • התקשורת בין הבקר הראשי לבקר המשרת מתבצעת בחיבור 1, 2 או 3 בהתאם למספר הבקר המשרת. • התקשורת בין משרת לבקר הראשי מתבצעת בחיבור 0.
1. בקר ראשי שולח הודעה למשרת ראשי משרת ההודעה נשלחת מהבקר הראשי, דרך חיבור המתאים למספר המשרת (1, 2 או 3) לתיבת הדואר שלו (1...10).
2. בקר משרת מקבל הודעה מהראשי ראשי משרת הבקר המשרת מוציא את הודעה שהתקבלה דרך החיבור שלו (1, 2 או 3) מתיבת הדואר (1...10).
3. בקר משרת שולח הודעה לראשי ראשי משרת הבקר המשרת שולח דרך חיבור 0 את ההודעה לתיבת הדואר של הראשי (1...10).
4. בקר ראשי מקבל הודעה ממשרת ראשי משרת הבקר הראשי מקבל דרך חיבור 0 את ההודעה מתיבת הדואר (1...10).
משימה מס' 10 מרוץ השליחים תקציר המשימה: המערכת כוללת שני רובוטים (א ו-ב). רובוט א': נע במהירות עד לקו השחור, נעצר, משמיע צליל ושולח הודעה לרובוט ב. רובוט ב: מקבל את ההודעה מרובוט א, נע במהירות לעבר קו 2, נעצר, משמיע צליל ושולח הודעת סיום לרובוט א. רובוט א מאשר קבלת ההודעה בעזרת צליל. • הנחיות להרכבה: • השתמשו ברכב הבסיסי מצויד בחיישן אופטי • הנחיות לתכנות: • השתמשו בתקשורת BT
משימה מס' 10 – מרוץ השליחים התוכנית - ראשי
משימה מס' 10 – מרוץ השליחים התוכנית - משרת
משימה מס' 11 אתגר השלט רחוק תקציר המשימה: • כתבו 2 תוכניות, לשלוט ונשלט אשר יאפשרו לשולט להפעיל את הרכב הנשלט בנסיעה קדימה או פניה • הנחיות להרכבה: • השתמשו במגוון החיישנים ורכיבי הבנייה העומדים לרשותכם • הנחיות לתכנות: • השתמשו בתקשורת BT
משימה מס' 11 אתגר השלט רחוק רמזים: • השתמשו במשתנה מספרי • השתמשו בפקודות Switch מקוננות • השתמשו בכפתורי הלבנה כחיישני מגע