אמצעי בקרה ב-Android 13

בדף הזה מוסבר איך להרכיב את בקר Android 13, ששולט בתנועה של מתקן בדיקה של שילוב חיישנים ובתאורה של ITS-in-a-box. בדיקת שילוב החיישנים היא חלק מחבילת הבדיקה של תמונות המצלמה (Camera ITS) בחבילת הבדיקה של התאימות (CTS). בקר Android 13 מאפשר אוטומציה על ידי שליטה בתאורה של המערכת ובמנוע סרוו לסצנות בדיקה שדורשות סיבוב ושליטה בתאורה.

סקירה כללית על בקרים ב-Android 13

‫ITS-in-a-box מספק סביבת בדיקה עקבית עם מרחק קבוע בין הטאבלט לטלפון שמשמשים לבדיקה, בנוסף לתאורה עקבית ללא מקור אור חיצוני. בקר Android 13 מבצע אוטומציה של בקרת הסרוו ובקרת התאורה, ומבטל את הצורך לסובב ידנית את המכשיר הנבדק לבדיקות של סצנות שילוב חיישנים, וגם את הצורך להפעיל ולכבות ידנית את האורות לבדיקות של תאורה מבוקרת.

שליטה ב-Servo ובתאורה במתקני בדיקה

מערכת הבדיקה של שילוב החיישנים מספקת תנועה קבועה של הטלפון לצורך בדיקה שניתנת לשחזור. הטלפון מסובב מול מטרה של לוח שחמט כדי לאפשר צילום תמונה כשהטלפון נמצא במצבים שונים. במקרה של test_sensor_fusion, הסרוו מסובב את הטלפון סביב מרכז הציר של המצלמה ב-90 מעלות ואז מחזיר אותו למצב הקודם תוך כ-2 שניות. במקרה של test_video_stabilization, הסרוו מסובב את הטלפון סביב מרכז המצלמה בזווית של 10 מעלות, הלוך ושוב, כדי לחקות את תנועת הטלפון בזמן צילום סרטון בהליכה. איור 1 מציג שני טלפונים שנעים במתקן בדיקה של שילוב חיישנים. איור 2 מציג טלפון אחד שזז במתקן בדיקה של מיזוג חיישנים.

תנועת הטלפון במתקן הבדיקה

איור 1. תנועת הטלפון במתקן הבדיקה של test_sensor_fusion

תנועת הטלפון במתקן הבדיקה

איור 2. תנועת הטלפון במתקן הבדיקה עבור test_video_stabilization

שליטה במנוע סרוו

מנועי הסרוו האנלוגיים במתקן הבדיקה הם מנועי סרוו מיקומיים שמבוקרים באמצעות אפנון רוחב פולס (PWM). דוגמה אופיינית לבקרת מיקום מוצגת באיור 3. האות של הבקרה הוא מחזורי עם מחזור של 20 ms. שינוי רוחב הפולס לרוחב המינימלי מעביר את המנוע למצב ניטרלי, ושינוי רוחב הפולס לרוחב המקסימלי מעביר את המנוע ב-180 מעלות בכיוון השעון.

תיאור של בקרת Servo

איור 3. תיאור אופייני של בקרת סרוו

שליטה בתאורה

כדי לשלוט בתנועת מנוע הסרוו ובאורות באמצעות מחשב מארח, נדרש חיבור USB למתקן הבדיקה של שילוב החיישנים. בקר Android 13 משתמש בלוח Arduino UNO R3 שמחובר באמצעות USB עם לוח ניתוב מותאם אישית (או shield) שמותקן מעליו. בקר Android 13 יכול לשלוט בעד שלושה מנועי סרוו של מתקני חיישנים משולבים מסוג rotator, ובעד שלושה מערכות תאורה מסוג ITS-in-a-box או במתקן חיישנים משולבים אחד ממחשב מארח יחיד.

בבקר Android 13 מגרסה 3.0, משתמשים יכולים להשבית את האיפוס האוטומטי כשפותחים את היציאה הטורית של Arduino דרך USB. הפונקציה auto-reset מופעלת כשמחברים את הבקר למארח אחר או כשמשתמשים בו לתרחישי בדיקה אחרים. המשתמשים יכולים להפעיל או להשבית את האיפוס האוטומטי באמצעות מתג פיזי בבקר.

בקר Android 13 יכול לפעול עם כל Camera ITS-in-a-box. אפשר לחבר את הבקר של Android 13 לכל Camera ITS-in-a-box (RFoV, ‏ WFoV, ‏ Modular) או ל-Sensor Fusion box כדי לבצע בדיקות עם שליטה בתאורה. מגרסה Android 15, כל הבדיקות של בקרת התאורה כלולות ב-scene_flash ואפשר להריץ אותן באמצעות ה-sensor fusion box, חוץ מ-scene_low_light, שדורשת טאבלט להצגת התרשים וצריך להריץ אותה באמצעות Camera ITS-in-a-box.

כדי להפעיל את פונקציית הפלאש האוטומטי בטלפונים לבדיקה, צריך לבצע את הבדיקות scene_flash ו-scene_low_light בסביבה חשוכה עם אורות כבויים. איור 4 מציג את האורות ב-ITS-in-a-box כשהם נדלקים ונכבים על ידי בקר Android 13.

שליטה בתאורה ב-ITS-in-a-box

איור 4. האורות כובו והודלקו בשביל test_auto_flash

היסטוריית גרסאות

בטבלה הבאה מתוארת היסטוריית הגרסאות של בקר Android 13, ומופיעים בה קישורי הורדה לכל גרסה של קובצי הייצור.

תאריך Revision הורדת קובץ הפקה יומן השינויים
אוגוסט 2024 3.0
  • נוסף מעקף לאיפוס אוטומטי, כך שהאורות לא מופעלים או מושבתים במהלך התקשורת עם ה-DUT
דצמבר 2022 2.2
  • נוספה אפשרות להזמין לוח PCB מאוכלס מ-EasyEDA
  • הוסרו עיכובים מיותרים אחרי תנועות של סרוו במיקרו-קוד של Arduino
  • החלפנו את המרחיקים ממתכת בניילון
  • החלפנו את ה-MOSFETS עם חורים למעבר חוטים ב-MOSFETS להרכבה על פני השטח
  • הקבל הוחלף מ-10 uF ל-1000 uF
מרץ 2022 1
  • נוספה יכולת שליטה בתאורה.
  • השינוי הוא מ-6 בקרות סרוו ל-3 בקרות תאורה ו-3 בקרות סרוו

הגדרת בקר ב-Android 13

בקטע הזה מוסבר איך מגדירים בקר Android 13.

רכיבים נדרשים

אפשר לרכוש את בקר Android 13 דרך אחד מהספקים המוסמכים שלנו, או לבנות את הבקר בעצמכם. קובץ הייצור מורכב מקובץ PCB Gerber, מכתב כמויות (BOM) של PCB, ממידע על מיקום ה-PCB ומקובץ STEP של המארז. כדי להוריד את קובץ הייצור, אפשר לעיין בטבלה שבקטע היסטוריית הגרסאות.

אם אתם בונים בקר משלכם, אתם צריכים לוח Arduino UNO R3. אם רוכשים את בקר דרך ספק מוסמך, ה-Arduino כלול.

מארז הבקר של Android 13 הוא רכיב אופציונלי אך מומלץ שמגן על הבקר וסותם יציאות USB לא בשימוש כדי למנוע שגיאות בהגדרה. כדי לקבל פרטים על התמחור והאפשרויות של בקר, צריך לפנות לספק מוסמך.

תהליך ההגדרה

כדי להגדיר את בקר Android 13, פועלים לפי השלבים הבאים:

  1. מחברים מתאמים של 12V (לתאורה) ו-5V (לסרוו) לשקעי החשמל המתאימים (איור 5).

    מיקום מתאם המתח

    איור 5. מיקום מתאם המתח

  2. מחברים את האורות של ITS-in-a-box או Sensor Fusion לאחד משקעי הפלט של ערוץ התאורה (איור 6). בהתאם לשימוש בצינור של מקור האור, משתמשים במתאם לפי הצורך (איור 7).

    מיקום הפלט של התאורה

    איור 6. מיקום הפלט של ערוצי התאורה

    ממיר מתקע זכר 3.5 מ"מ x 1.35 מ"מ לשקע נקבה 5.5 מ"מ x 2.1 מ"מ

    איור 7. מתאם שמחבר את החשמל של התאורה לבקר

  3. כדי להתכונן לסצנות של מיזוג חיישנים, מחברים את הסרוו לאחד מראשי החיבור של ערוץ הסרוו.

    מיקום החיבור של ערוץ Servo

    איור 8. מיקום החיבור של Servo

    בבקרי גרסה 3.0, כשמחברים את הבקר למארח חדש, המתג לאיפוס אוטומטי צריך להיות במצב Enable.

    בגרסה 3.0, הבקר כולל מתג לאיפוס אוטומטי שאפשר להפעיל או להשבית. במהלך הבדיקה, מומלץ להגדיר את המתג לאיפוס אוטומטי לערך Disable כדי למנוע את כיבוי כל הנורות לרגע בתחילת כל בדיקה, בזמן ש-its_base_test יוצר תקשורת עם בקר Arduino. זה חשוב במיוחד כשמריצים בדיקות במקביל (ITS פועל בו-זמנית עם מערכת התאורה של מתקן הבדיקה שמחוברת לאותו בקר).

    איפוס אוטומטי של המיקום

    איור 9. מתג איפוס אוטומטי

  4. מחברים את השלט למארח באמצעות כבל USB-A.

    מיקום של USB-A

    איור 10. יציאת חיבור USB-A למארח

איור 11 מציג דוגמה להגדרה מלאה של בקר Android 13 עבור מערכת תאורה אחת וסרוו אחד.

מיקום של USB-A

איור 11. השלמת ההגדרה של בקר Android 13

שליטה בתוכנה מהמארח

אפשר להוריד מיקרו-קוד ל-UNO כדי להקצות את פיני ה-PWM לאותות המנוע ולהגדיר את טווחי רוחב הפולסים לזוויות שונות. המיקרו-קוד לשליטה בסיבוב של שישה מנועי HS-755MB כלול במשאבים אחרים. הקטע הזה כולל גם קישור לתוכנית פשוטה בשם rotator.py, שמסובבת את מנועי הסרוו.

שימוש בבקר של Android 13

שימוש ב-Camera ITS:

python tools/run_all_tests.py device=device_id camera=0 rot_rig=arduino:1 scenes=sensor_fusion

עם סקריפט בדיקה כלול:

python rotator.py --ch 1 --dir ON --debug

הורדות של תוכנות לשליטה