בלוג

פרויקט גמר - פלטפורמה רובוטית ממונעת

תיאור הפרויקט

במסגרת פרויקט הגמר שלי לתואר בהנדסה מכנית, תכננתי פלטפורמה רובוטית ממונעת.
הפלטפורמה הממונעת מיועדת לנוע במגוון תנאי קרקע ובעיקר בדרכים לא סלולות, ומסוגלת לטפס מכשולים כגון מדרגות, סלעים, מישורים משופעים.
בחרתי לפלטפורמה הממונעת את השם: Ranger-Bot R/C.
פרויקט הגמר מתואר בספר פרויקט המונה כ220 עמודים, ולכן פוסט זה מהווה רק תמצית מתוך הפרויקט השלם.

Ranger-Bot Ver9.0

הפלטפורמה מתוכננת כך שתהיה וורסיטילית במטרה להתאים למגוון רחב של משימות.
מרכב הפלטפורמה מחולק ל 2 מפלסים, מפלס תחתון המכיל בתוכו את כל מערכת האלקטרוניקה הדרושה להנעת הפלטפורמה, ומפלס עליון שמאפשר הטענה של מטען מועיל.
החלל העליון נמצא מעל פלטה מתכתית מחוררת המאפשרת התקנה קלה של ציוד, ומקורה ע"י חופה פולימרית.

Ranger-Bot V10.0 Axle

דוגמא אחת לשימוש הפלטפורמה הוא יישום צבאי לצורך ביצוע תצפית על יעד מסויים, במטרה לספק מודיעין חזותי למרכז בקרה מרוחק.
תיאור התרחיש: כח צבאי שולח את הפלטפורמה הממונעת לעבר נקודת תצפית, וכאשר הפלטפורמה מגיעה ליעד היא שולחת מידע חזותי למפעיל באמצעות אמצעי תצפית ושידור המותקנים עליה.
היתרון בשימוש בפלטפורמה הממונעת על פני שימוש בכלי טיס בלתי מיואש (כטב"מ) הוא שהפלטפורמה מסוגלת לספק מידע על יעד הממוקם בתוך אזור טופוגרפי שאינו מאפשר תצלום מהאוויר לדוגמא אזור מיוער.
בנוסף, הפלטפורמה מסוגלת לשהות בשטח 24/7, בכל מזג אוויר, בשונה מכטב"מ שמוגבל בזמן הטיסה, ומסוגל לטוס רק במזג אוויר המאפשר טיסה.

Ranger-Bot V10.0 Axle

שימוש נוסף לפלפטורמה שיכול להיות צבאי או אזרחי הוא איסוף דגימות קרקע מאזורים בעלי גישה מוגבלת.
תרחיש הפעולה לשימוש זה הוא שמפעיל שולט על הפלטפורמה מרחוק, ומנווט אותה ליעד. על הפלטפורמה מותקנים אמצעים המאפשרים ביצוע של דגימות קרקע.
ההפלטפורמה אוספת דגימות קרקע, ומנווטת בחזרה לנקודת האיסוף.

יעדי הפרויקט

בראשית הפרויקט, הוגדרו יעדים שהפלטפורמה נדרשת לעמוד בהם.
הקריטריונים שהוגדרו:

  • יכולת תנועה במגוון תנאי קרקע (דרך סלולה, שבילי עפר, חול, קרקע סלעית, שלג).
  • יכולת טיפוס מכשולים (מעלה משופע בזווית 45[מעלות], שיפוע צד בזווית 25[מעלות], מדרגות סלע בגובה 215[ממ])
  • יכולת נשיאה של משא קל - עד 5[ק"ג].
  • יכולת שרידות במקרה של התהפכות צידית והתהפכות אחורנית.
  • יכולת תנועה גם כאשר אחד מהמנועים תקול.

תהליך התכן - ראשי פרקים

קצרה היריעה מלפרט את תהליך התכן השלם, ולכן אפרט את התהליך בראשי פרקים בלבד.

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

מבנה הפלטפורמה הממונעת

הפלטפורמה מורכבת מ 2 יחידות נפרדות - יחידה קדמית, ויחידה אחורית.

Ranger-Bot V9.0

היחידות מחוברות יחדיו בעזרת מפרק, המאפשר 2 דרגות חופש: סבסוב וגלגול.
הסבסוב מאפשר הפנייה של היחידה הקדמית בזווית מקסימלית של 30[מעלות], ותורם ליכולת התמרון של הפלטפורמה.
הגלגול מאפשר ליחידות להימצא בזווית מקסימלית של 25[מעלות] אחת ביחס לשניה, ותורם לעבירות שטח משופרת.
הסבסוב מתבצע על ידי מנוע סרוו, המסוגל גם לנעול את המפרק ולמנוע סבסוב שלא לצורך.
הגלגול מרוסן על ידי רפידות חיכוך המתחככות בדיסקה מתכתית. מידת הריסון ניתנת לוויסות בעזרת הידוק או שחרור של בורג דחיף הלוחץ את הרפידה כנגד הדיסקה.

Joint

מערכת המתלים

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

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

Ranger-Bot V10.0 Axle

בזכות גיאומטריית מתלים המתוכננת לעבירות שטח גבוהה, לפלטפורמה מהלך מתלה גדול (60[מ"מ]).
הפלטפורמה מונעת בעזרת גלגלים גדולים (ביחס לממדי הפלטפורמה), בקוטר 215[מ"מ].

מתלים בעלי מהלך גדול, 6 גלגלים גדולים, צמיגי שטח, הנעה כפולה ע"י 6 מנועים נפרדים, מאפיינים אלו מאפשרים לפלטפורמה ביצועי שטח מעולים.
הפלטפורמה מסוגלת לטפס מדרגות בגובה 220[מ"מ], לטפס תלוליות חול בזווית חדה מאוד 45[מעלות], לנוע בשיפוע צד בזווית 38[מעלות], לצלוח מעברי מים בגובה 250[מ"מ].

Ranger-Bot V9.0

מערכת ההנעה

היחידה הקדמית מונעת ע"י סרן בודד הכולל זוג מנועים חשמליים, היחידה האחורית מונעת ע"י 2 סרנים, וכוללת 4 מנועים חשמליים.
סה"כ הפלטפורמה מונעת ע"י 6 מנועים חשמליים, המותקנים בסרנים, סמוך מאוד לגלגלים, כאשר כל גלגל מחובר למנוע חשמלי ותמסורת פלנטרית.
הפלטפורמה מסוגלת לנוע בהנעה כפולה 6x6 כאשר כל הגלגלים מונעים באופן בלתי תלוי אחד בשני.
הפלטפורמה מונעת על ידי 6 מנועים חשמליים, המשודכים לתמסורת פלנטרית בעל יחס תמסורת גבוה (1:12) של הגברת מומנט.
המנועים החשמליים הם מסוג מנועי מברשות, בעלי מספר גבוה של ליפופים (55), דבר שמקנה להם מומנט גבוה בסל"ד נמוך.
כל מנוע מחובר בנפרד דרך בקר מנוע לסוללה.

Ranger-Bot V9.0


Axle Exploded view


Ranger-Bot V9.0

תרחיש התהפכות הפלטפורמה הממונעת

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

Side roll

עבור תרחיש של התהפכות הפלטפורמה לצד, ביצעתי אנליזת חוזק לקשת ההתהפכות ולמרכב שאליו הקשת מתחברת.
באנליזת החוזק הגדרתי כוח הפועל על קשת התהפכות בודדת, בצד אחד בלבד, בגודל 370[ניוטון].
לאחר מכן הגדרתי נקודות עיגון במרכב, ולבסוף הגדרתי רשת אלמנטים סופיים צפופה המורכבת מפוליגונים שעבור כל פוליגון האנליזה תחשב את המאמץ המפתח בחומר, לפי תיאוריית וון מיזס.

Side roll

לפי תוצאות אנליזת החוזק, המאמץ המקסימלי המתפתח עבור תרחיש של התהפכות הפלטפורמה על הצד, הוא בגודל 131[מגה-פסקל], והוא מתפתח במרכב סמוך לנקודת חיבור הקשת.
המאמץ המקסימלי המתפתח בקשת הוא בגודל 27[מגה פסקל], והתזוזה המקסימלית של הקשת היא בגודל 1.6[מ"מ] - תזוזה קטנה שאינה פוגעת בחופה.
המאמצים שנתגלו באנליזת החוזק קטנים מהמאמצים המקסימליים המותרים בחומר.
קשת ההתפכות עשויה מאלומיניום 6061T6 (נתך אלומיניום שעבר טיפול תרמי של המסה וזיקון מלאכותי), בעל חוזק לכניעה 276[מגה-פסקל].
המרכב עשוי מאלומיניום 5052H38 בעל חוזק לכניעה 255[מגה-פסקל].
ולכן הקשת והמרכב עומדים בתנאי חוזק עבור תרחיש מחמיר של התהפכות הפלטפורמה על הצד.

.

תרחיש נוסף שהתייחסתי אליו הוא התהפכות הפלטפורמה אחורנית, כלומר גלגול לאחור, שזה תרחיש שעלול להתרחש כאשר הפלטפורמה מטפסת בשיפוע חד מאוד.
בתרחיש זה התייחסתי למקרה מחמיר שבו כל משקל הפלטפורמה כפול מקדם דינמי פועל על הקשת האחורית בלבד, כאשר הכוח פועל בזווית בהתאם לתנוחת הפלטפורמה בעת ההתפכות.

Side roll

עבור תרחיש של התהפכות הפלטפורמה אחורנית, ביצעתי אנליזת חוזק לקשת ההתהפכות האחורית, ולמרכב שאליה מתחברת הקשת.
באנליזת החוזק הגדרתי כוח הפועל על הקשת התהפכות בודדת, הפועל בזווית בהתאם לתנוחת הפלטפורמה בעת התהפכות אחורנית.

Side roll

לפי תוצאות אנליזת החוזק, המאמץ המקסימלי המתפתח הוא בגודל 197[מגה פסקל], והוא מתפתח במרכב, בסמוך לנקודת חיבור הקשת למרכב.
המאמץ המקסימלי המפתח בקשת ההתתהפכות הוא בגודל 77[מגה פסקל], והתזוזה המקסימלית של הקשת היא 3.7[מ"מ], תזוזה קטנה שאינה פוגעת בחופה.
המאמצים שנתגלו באנליזת החוזק קטנים מהמאמצים המקסימליים המותרים בחומר, ולכן הקשתות והמרכב עומדים בתנאי חוזק עבור תרחיש מחמיר של התהפכות הפלטפורמה אחורנית.

חישוב טווח נסיעה

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


פרופילי נסיעה


פרופיל נסיעה משולב (משוקלל)

CombinedRange

מסקנה

ע"פ החישוב המשקולל, טווח הנסיעה הצפוי לפלטפורמה בתוואי שטח הוא 21.7[ק"מ].
אציין כי במהלך החישובים לקחתי בחשבון פרמטרים בעלי ערכים מחמירים, כגון מקדם התנגדות גלילה גבוה, נסיעה במעלה שיפועים חדים מאוד, נצילות מנוע נמוכה, ולכן אלו גרעו ממרחק הנסיעה.
חישוב זה אינו מגדיר באופן מדויק את טווח נסיעת הפלטפורמה (מכיוון שכאמור הוא תלוי בהמון גורמים) אך מספק אינדיקציה לגבי טווח הנסיעה בתנאים מוגדרים.

מידות הפלטפורמה הממונעת

Ranger-Bot V10.0 Drawing

מפרט טכני

Ranger-Bot V10.0 Axle

סרטון ווידאו

<>
מומלץ לצפות באיכות 1080P

תודות

תודה למנחה הפרויקט - ד"ר מיכאל פרישמן, שעזר לי לכל אורך הפרויקט, ותרם לי מהידע הרב שלו בתחומי ההנדסה.

פרויקט מד-זווית לג'יפ

תיאור מערכת הפרויקט

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

המערכת מורכבת ממיקרו-בקר מסוג Arduino Micro המחובר לחיישן, תצוגת LCD, זמזם, ומקור אנרגיה.
החיישן הוא חיישן אוריינטציה בעל 9 דרגות חופש, הכולל: מד תאוצה, גיירוס'ופ, מצפן,חיישן לחץ ברומטרי, חיישן טמפרטורה.
תצוגת הLCD היא תצוגת מקטעים (7Segment) המחוברת באופן סריאלי לבקר.
בתצוגת LCD מוצגים: זווית עלרוד (Pitch) של הרכב, וזווית גלגול (Roll) של הרכב.
הזוויות המוצגות למסך הם הזוויות לאחר עיבוד האותות, ולא הזוויות המגיעות ישירות מהחיישן.
בעזרת אלגוריתם עיבוד אותות פשוט (יפורט בהמשך), הצלחתי לקבל מידע מהימן ויציב, גם בזמם אמת כאשר הג'יפ מיטלטל בחוזקה בנסיעת שטח.

סרטון ווידאו: בדיקת המערכת אב-טיפוס 1


סיכום ומסקנות מבדיקת מערכת

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


שיפור המערכת, ובניית אב-טיפוס #2

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

הפעם חיברתי את המיקרו-בקר ישירות למחשב (ולא למסכי ה7segment כמו באב טיפוס 1), על מנת שאוכל לתעד את האות שמגיעה מהחיישן (Data logging) ולצפות במידע המתקבל מהחיישן כפלט של גרף.
בנוסף חיברתי מצלמה למחשב על מנת שאוכל לתעד גם ווידאו מנסיעת המבחן.

את התוכנית שרצה על המחשב הנייד, בניתי בשפת C בסביבת פיתוח LabWindows/CVI.
התוכנית מתחברת למיקרו-בקר וקולטת ממנו את האות שמגיע מהחיישן, ומתעדת את האות על הגרף
בנוסף התוכנית מבצעת עיבוד אותות, ומציגה את הערך לאחר עיבוד האותו בגרף נפרד.
בצורה זו ניתן לראות את ההבדלים (התהומים!) בין האות הלא מעובד (Raw) שמגיע מהחיישן, לבין האות לאחר ביצוע העיבוד (פילטר).

סרטון ווידאו: בדיקת המערכת אב-טיפוס 2

שיפור המערכת, ובניית אב-טיפוס #3

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

פרויקט Camduino

תיאור מערכת הפרויקט

פלטפורמה רובוטית המאפשרת שליטה על תזוזת מצלמה, תוך כדי שידור תמונה בזמן אמת למחשב.
השליטה על תזוזת המצלמה מתבצעת ע"י תוכנת מחשב, בממשק קל וידידותי למשתמש.
תוכנת המחשב נכתבה בשפת C, בסביבת פיתוח LabWindows/CVI.
השליטה על המערכת האלקטרונית נעשית ע"י מיקרו-בקר מסוג Arduino.

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

דוגמאות ליישומים:
  • הקלטת סרטון ווידאו באופן יציב, תוך כדי שליטה על מוקד המצלמה (שיחות סקייפ, צילום עצמי).
  • הצבה ע"ג כלי רכב, וביצוע הקלטה של סביבת הנסיעה תוך כדי שליטה על מוקד המצלמה מתא הנוסעים.
  • מצלמת אבטחה.
  • תגובה להתרחשויות בסביבה בעזרת עיבוד תמונה (למשל: זיהוי דמות חשודה), והפעלה של מגוון אמצעים (למשל: סירנה).
הדמיית המערכת + הסברים. Camduino CAD model
תמונת המערכת. Camduino Picture

אלקטרוניקה

טבלת רכיבים אלקטרוניים Electronics table

הArduino אחראי על הקישור בין תוכנת המחשב לבין האלקטרוניקה שגורמת לרכיבים האלקטרונים לבצע את המוטל עליהם.
הArduino מקבל אספקת מתח מחיבור הUSB של המחשב, ובנוסף גם את המידע הסריאלי דרך אותו החיבור.
אספקת המתח למנועים, ולסירנה, מגיעה מספק כח חיצוני, שעובד במתח 12 וולט, ומסוגל לספק זרם מקסימלי של 5 אמפר.
ספק הכח החיצוני מחובר למתאם-ממתג שמחובר ויושב על מטריצת החיבורים.
המתאם "יושב" על 2 מסילות המתח של מטריצת החיבורים, ומספק למסילה אחת 12 וולט, ולמסילה הנוספת 5 וולט.
בעזרת פיצול המתחים, ניתן לשלוט גם ברכיבים הדורשים מתח עבודה של 12 וולט (מנוע צעדים, סירנה), וגם ברכיבים הדורשים מתח עבודה של 5 וולט (סרוו).

למטריצת החיבורים מחוברים: לד כתום, לד RGB, נגדים, טרנזיסטור.

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

לד RGB - לד זה שונה מלדים קונבנציונליים פשוטים, מכיוון שהוא מסוגל לשנות את צבעו בהתאם למתחים שמגיעים אליו.
לד RGB הוא בעל 4 "רגליים" (בשונה מלד רגיל שיש לו רק 2 רגליים), והוא מסוג קטודה משותפת, כלומר הארקה משותפת לכל הרגליים.
שאר הרגליים (3), מחוברות כל אחת בנפרד לפין PWM בArduino.
הסיבה שמשתמשים בפין PWM ולא בפין דיגיטלי רגיל, היא בגלל שרק על ידי גל PWM ניתן לשלוט במגוון של צבעים.
כל שלושת הרגליים מחוברות דרך נגדים 2200 אוהם לArduino , כנדרש.

טרנזיסטור - הטרזניסטור הוא בעצם מתג אלקטרוני, שמאפשר שליטה על מעגל מתח גבוהה (עד 60וולט) בעזרת הArduino שיכול לספק מקסימום 5וולט.
הטרזנסיטור מסוגל לבצע פעולות נוספות (וויסות) אך במקרה הנ"ל הוא משמש רק כמתג.
לטרנזיסטור יש 3 "רגליים":
רגל 1 (Base) מחוברת לפין דיגיטלי בArduino דרך נגד 2200 אוהם.
רגל 2 (Collector) מחוברת למתח 12 וולט שמגיע מהסירנה.
רגל 3 (Emitter) מחוברת להארקה.
על מנת להפעיל את הסירנה, הArduino מייצר 5 וולט בפין הדיגיטלי שמחוברת לרגל 1, והטרזניסטור גורם לסגירת מעגל חשמלי ב2 הרגליים האחרות, שגורם להפעלת הסירנה.



מכניקה

התכנון המכני החל בבניית מודל ממוחשב באופן מדוייק, בעזרת תוכנת מידול תלת-מימדית.

מודל תלת-מימדי (CAD) של המערכת Camduino CAD Model

לאחר ששלב המידול הסתיים, יוצאו הקבצים הרלונטיים לפורמט X_t ונשלחו לייצור.
החלקים המתכתיים, כגון: משטח בסיס, תושבת מנוע צעדים, תושבת מנוע סרוו, תושבת מצלמה עשויים מפח פלדה פחמנית פשוטה (St12).
החלקים יוצרו בתהליך חיתוך וכיפוף פחים (Sheet metal).
החיתוך התבצע בעזרת מכונת חיתוך פלסמה CNC, ולאחר מכן החלקים הרלוונטים עברו כיפופים במכונת כיפוף, בהתאם למידות בשרטוטים.
(תודה לאלי מ"חן בקרת אקלים" על ביצוע חיתוכי הפחים, והכיפופים)

המתאם בין גל מנוע הצעדים לתושבת סרוו, עשוי מפלסטיק ABS, ויוצר בהדפסה תלת מימדית, בדיוק לפי המודל הממוחשב.
(תודה לאיתי שפירלינג על הדפסת החלק במדפסת תלת מימדית)
הבחירה להשתמש בפלסטיק ABS ולא בפלסטיק PLA (שהוא נפוץ בהדפסה תלת-מימדית), נובעת מהסיבה שהמנוע צעדים מתחמם בזמן עבודה ממושכת, ועלול להגיע לטמפ' שתגרום לעיוותים בפלסטיק.
בטמפ' 60~ מעלות צלזסיוס, הפלסטיק ABS עמיד יותר, ולכן הוא נבחר למשימה.

מתאם גל מנוע Electronics table


תוכנה

מיקרו-בקר Arduino

הArduino מתוכנת לפי האופן הבא:
הArduino ממתין לקבלת תשדורת סריאלית. (כל עוד לא מגיעה תשדורת סריאלית, הArduino לא מבצע כלום)
התשדורת הסריאלית היא בעצם אסופה של תווים (טיפוס char), וכאשר הArduino קורא את התשדורת הוא בעצם קורא כל תו בנפרד, ומסיר אותו מהחוצץ (Buffer).
התשדורת הסריאלית הנשלחת לArduino ע"י תוכנת המחשב (CVI) היא במבנה מסודר וידוע מראש.
המבנה מורכב מתווים שהם בעצם מספרים, והפרדה בין התווים מתבצעת על ידי סימן פסיק (הסימן נבחר שרירותית).
לדוגמא: 9,50,0,4,10

כאשר הArduino מקבל תשדורת סריאלית, התשדורת נשמרת במלואה בתור מחרוזת (טיפוס String), ולאחר מכן הArduino מודד את אורך המחרוזת (לצורך שימוש בהמשך..)
לאחר מכן הArduino עובר על כל תו (char) במחרוזת בנפרד, ומאחסן אותו במערך זמני, עד אשר הוא מגיע לתו מסוג פסיק.
ברגע שהוא מגיע לתו מסוג פסיק, התווים שנשמרו עד כה במחרוזת הזמנית מומרים למספר שלם (טיפוס int), ונשמרים במערך אחר, שהוא מערך של מספרים שלמים, כאשר בכל תא נשמר מספר מסויים.
לאחר מכן הArduino ממשיך את הסריקה של המחרוזת עד לפסיק הבא, וחוזר חלילה.
נמשיך עם הדוגמא - במערך המספרים יאוחסנו הערכים הבאים:
בתא 0, יאוחסן המספר 9
בתא 1, יאוחסן המספר 50
בתא 2 יאוחסן המספר 0
התא 3, יאוחסן המספר 4
בתא 4, יאוחסן המספר 10

כאשר הArduino מגיע לסוף המחרוזת (אורך המחרזות נבדק בתחילת התכנית) שלב קבלת האות הסתיים, ומתחיל שלב הביצוע.

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



תוכנת מחשב (Labwindows/CVI)

התוכנית שרצה על המחשב נכתבה בקוד C בסביבת פיתוח Labwindows/CVI.
התוכנית קטנה וניתן להתקין אותה בקלות על כל מחשב שרץ עם מערכת הפעלה Windows.

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

מסך פתיחה של התוכנית. Program Intro

במסך הפתיחה המשתמש נדרש להתחבר לArduino ובעצם לייצר את הקשר הראשוני בין המחשב לArduino.
נדרש מהמשתמש להגדיר את מספר הPort שאליו מאזין הArduino.
קצב התקשורת (Baud rate) אינו ניתן לשינוי ע"י המשתמש, והפקד הוא בעצם אינדיקטור לקצב התקשורת שבו הArduino חייב להיות מוגדר.
קצב התקשורת המוגדר בברירת מחדל (115200) הוא הקצב הגבוהה ביותר שבו הArduino מסוגל לתקשר.

לאחר לחיצה על הכפתור Connect, תוקפץ הודעה שהחיבור הצליח, וכתובית ירוקה המתריעה על תקשורת תקינה עם הArduino תופיע.

התראה על תקשורת מוצלחת בין התוכנה לArduino. Connection notification

לאחר אישור חלונית ההתראה, יופיע המסך הראשי של התכנית.

מסך ראשי. LED controller - const LED

האפשרויות העומדות בפני המשתמש מתחלקות ל 3 קטגוריות:
1. שליטה על נורת LED.
2. שליטה על סירנה.
3. שליטה על תזוזת המנועים (שמזיזים את המצלמה).


שליטה על נורת LED

בקטגוריה זו קיימים 3 מצבים:
1. מצב תאורת LED קבועה (Const) - הפעלה וכיבוי של לד, ובחירת צבע מהרשימה.
2. מצב LED מהבהב (Strobe), צבע ותדירות מוגדרים אישית.
3. מצב תאורת LED משטרה (Police) (הבהוב כחול, הבהוב אדום).


מצב תאורת LED קבועה (Const) - במצב זה ניתן לבחור צבע תאורה, מרשימה סגורה המכילה את שלושת צבעי היסוד (אדום,ירוק,כחול).
ברגע שהמשתמש לוחץ על מתג ההפעלה, תדלק תאורת הLED בצבע שהוגדר.
הLED הוירטואלי שנמצא על הפאנל גם הוא נדלק בצבע שהוגדר.
בזמן ריצה ניתן לשנות את צבע הLED.

תאורת LED קבועה - מופעלת. Program Const LED On

תאורת LED קבועה - החלפת צבע LED בזמן ריצה. Program Const LED On


מצב תאורת LED מהבהב (Strobe) - במצב זה ניתן להגדיר צבע LED מותאם אישית, ולשלוט על תדירות הבהוב.
הLED הוירטואלי שעל הפאנל גם הוא מגיב לגוון הצבע ותדירות ההבהוב.


מצב LED מהבהב (Strobe). Program Const LED On


מצב תאורת LED משטרה (Police) - במצב זה הLED מהבהב בצבעי משטרה (הבהוב אדום, הבהוב כחול).
הLED הוירטואלי שעל הפאנל גם מהבהב בהתאם.
בזמן ריצה - ניתן לשלוט הפעלה וכיבוי של הסירנה.


מצב LED משטרה (Police). Program Const LED On


מצב סירנה (Siren) - ע"י הפעלת המתג ניתן לשלוט בצופר סירנה.


שליטה על סירנה (Siren). Program Const LED On


שליטה על תזוזת המנועים (שמזיזים את המצלמה)

במערכת קיימים 2 סוגי מנועים:
מנוע סרוו (Servo Motor) - אחראי על עלרוד המצלמה מעלה/מטה (Tilt).
מנוע צעדים (Step Motor) - אחראי על צידוד שמאלה/ימינה (Rotate).

הפקדים בתוכנית מאפשרים ביצוע סיבובית במגוון סוגי צעדים:
צידוד קטן.
צידוד בינוני.
צידוד גדול.
סיבוב 180 מעלות נגד כיוון השעון.
סיבוב 180 מעלות עם כיוון השעון.
באפשרות המשתמש לשלוט על התנועה גם ע"י החיצים במקלדת.
דוגמא: לחיצה על Shift ואז על אחד ממקשי החיצים תגרום לביצוע צידוד גדול לכיוון הרצוי.

מונה צעדים - בצד ימין של הפאנל קיים אינדיקטור למונה צעדים, שמאפשר אינדיקציה לגבי כיוון המצלמה מרגע איפוס המונה.
בנוסף, ע"י ספירת צעדים, המערכת מבטיחה באופן אוטומטי שלא יווצר מצב שבו הכבל שמחובר למנוע הסרוו ולמצלמה יקרע כתוצאה ממתיחות יתר.

לחצן מפתח - לחצן זה משחרר את מנוע הצעדים מהבלמים, ומאפשר סיבוב חופשי של המצלמה באופן ידני.
לחיצה על לחצן המפתח מנתקת את אספק המתח למנוע הצעדים, ולכן זה מאפשר לו להתקרר, ו"לנוח".
כאשר נלחץ שוב על אחד מלחצני החיצים, המערכת תבצע את התנועה הרצויה, ותפעיל את בלמים כברירת מחדל.

שליטה על תזוזת המנועים (שמזיזים את המצלמה) Program Const LED On


סרטון הדגמה לפעולת המערכת

מומלץ לצפות באיכות 720P.

זיווד

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

מודל תלת-מימדי (CAD) של המערכת, גרסה 4.0. Camduino CAD Model Ver2.0
בניית מארז עבור רכיבי האלקטרוניקה

מארז האלקטרוניקה מכיל את רכיבי האלקטרוניקה הנדרשים לפעולת המערכת.
המטרה בבניית המארז הייתה לשמור על פקטור צורה קטן ככל הניתן, ובנוסף שהמארז יספק הגנה לרכיבי האלקטרוניקה מפני הסביבה.
מארז האלקטרוניקה מבוסס על קופסא עשויה אלומיניום, הקופסא מתוצרת Sparkfun, והיא נרכשה מחנות דאן אלקטרוניקה, בעלות של 32 ש"ח.
על מנת להתאים את הקופסא לשימוש הפרויקט, ביצעתי קדחים, בהתאם למודל הממוחשב שבניתי בתוכנת מידול.
בעזרת תוכנת המידול הממוחשב, הכנתי שרטוטים בקנה מידה 1:1, ולאחר מכן הדפסתי שבלונות שבהם השתמשתי לצורך ביצוע הקדחים בצורה מדוייקת.
האלומיניום שממנו עשויה הקופסא הוא חומר קל לשיבוב, ולכן לא הייתה בעיה לבצע את הקדחים ואת הפתחים בעזרת מקדחה, דרמל, והמקדח המתאים.
אציין כי לצורך הכנת הפתחים הגדולים (USB, Rocker switch), רצוי היה להשתמש בדרמל עם כרסום אצבע, אבל מכיוון שלא היה ברשותי כרסום כזה, השתמשתי במקדח HSS.


צביעת חלקי המתכת

לצורך צביעת חלקי המתכת בפרויקט, השתמשתי בצבע מסוג "המרטון", מתוצרת טמבור.
הצבע הנ"ל מתאים לצביעת מתכות ברזליות וגם מתכת אל-ברזליות דוגמת אלומיניום, ומעבר לדקורטיביות, הוא מספק הגנה טובה כנגד קורוזיה, ומהווה בידוד חשמלי.
את גוון הצבע (1533A) בחרתי ממניפת צבעים בחנות הטמבור.

טרם תהליך הצביעה הכנתי את המשטחים ע"י שיוף המתכות בעזרת נייר לטש עדין.
ע"פ ההוראות שכתובות על מיכל הצבע,אין צורך לבצע צביעה מקדימה בצבע יסוד.

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


אלקטרוניקה

על מנת לצמצם בנפח המערכת, ביצעתי מספר שינויים במעגל החשמלי.
החלפת מתאם אספקת כח (Breadboard power supply) , במתאם קומפקטי יותר. את המתאם רכשתי מדאן אלקטרוניקה, בעלות של 28 ש"ח.
המתאם מבצע המרה ממתח נכנס 12 וולט שמתקבל מספק כח חיצוני, וממיר אותו למתח יוצא של 5 וולט או 3.3 וולט (ניתן לבחור בעזרת מפסק).

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

בפרויקט השתמשתי במתאם, על מנת ליצור 2 מסילות כח בעלות מתח שונה:
מסילת מתח גבוהה 12 וולט, ומסילה מתח נמוך 5 וולט.
המסילה של ה 12 וולט מקבלת את המתח ישירות מהספק כח הראשי, ולכן מבחינת מגבלת זרם, היא מוגבלת ע"י הספק החיצוני לזרם 5 אמפר.
המסילה של ה 5 וולט מקבלת את המתח מהמתאם, ולכן מבחינת זרם היא מוגבלת בהתאם לרכיב LM31 לזרם 1.5 אמפר.

מסילת המתח הנמוך (5 וולט) מחוברת למנוע סרוו בלבד.
מסילת המתח גבוהה (12 וולט) מחוברת למיקרו-בקר ארדווינו, למנוע צעדים, ולטרנזיסטור.

פרויקט תשתית עבור מיקרו-בקר Arduino

1. מטרת הפרויקט

מטרת הפרויקט היא לבנות תשתית לפרויקטי אב-טיפוס, מבוססי מיקרו-בקר מסוג Arduino .
מי שיצא לו להתעסק עם Arduino מכיר את העניין שקיימים רכיבים בסיסים שמשחקים תפקיד במגוון גדול של פרויקטים, הכוונה היא לרכיבים כגון מטריצת חיבורים,כפתורים, לדים, תצוגה, זמזם, אספקת מתח וכולי.
הרעיון הוא לבנות תשתית הכוללת חלק מרכיבים בסיסיים אלו, על מנת לאפשר תחילת עבודה וחיבור קל ומהיר של רכיבי אלקטרוניקה כאלו ואחרים בפרויקטים עתידיים.
כלומר המערכת שנבנית בפרויקט זה תשמש ככלי עזר לבניית פרוייקטים עתידיים.

מטרה נוספת היא להינות מהכיף שבהתעסקות עם ה Arduino בפרט, וברכיבי אלקטרוניקה בכלל, ומטרה לא פחות חשובה היא הלמידה מהעשייה.
בכל אופן אין כוונה לייצר מוצר לשיווק, אלא "מייקינג" נטו.

2. תהליך הבניה

זיווד

התחלת הפרויקט היא בבניית הזיווד – המארז שיכיל את רכיבי הפרוייקט.
רשימת הרכיבים בפרויקט:

  • מקור כח - אספקת מתח
  • מטריצת חיבורים (Breadboard)
  • תצוגת LCD
  • תצוגת מקטעים (7Segment Display)
  • כפתורים
  • מקודד סיבובי (Rotary Encoder)
  • לדים
  • זמזם
  • פאמל וולטמטר
  • מיקרו בקר מסוג Arduino

לבניית הזיווד, התבססתי על מארז של ספק כח של מחשב, שהיה זרוק אצלי מכיוון שיצא מכלל שימוש.
הספק פורק, ותוכנו נשלף ממנו, למעט חלקים בודדים שנשארו לשחק תפקיד גם בפרויקט שלי, חלקים כגון:

  • מאוורר
  • מתג כיבוי/הפעלה.
  • שקע כח
  • שקע מולקס

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

מודל תלת מימדי של המערכת

שרטוט (Drawing) של הפאנל הקדמי, כפי שהועבר לייצור

הפאנל הקדמי של המארז יוצר בעזרת מכונת חיתוך CNC מסוג "פלסמה", הפאנל עשוי מפלדה פשוטה, בעובי 3 [ממ].
אציין כי מכונת חיתוך פלסמה בד"כ איננה משמשת לעבודות חיתוך במידות קטנות מסוג זה, אלא משמשת עבור חיתוך תעשייתי במידות גדולות ועבור פחים בעובי דופן גבוהה.
עבור חיתוכים מדוייקים, יש להשתמש במכונת חיתוך CNC לייזר.
הסיבה שהשתמשתי בחיתוך פלסמה היא בגלל ששיטת הייצור הזו הייתה נגישה לי יותר מאשר חיתוך בלייזר, שכאמור, היה עדיף עבור מקרה זה.
כצפוי החיתוך לא התבצע ברמת דיוק גבוהה, ונדרשו שיופים, וחיתוכים נוספים על מנת שהחלקים יתאימו, וההתאמה יצאה רחוק ממושלם.

חיתוך הפאנל הקדמי מפח 3 ממ, בעזרת מכונת חיתוך CNC פלסמה

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

הפאנל הקדמי, לאחר החיתוך

לאחר חיתוך הפאנל הקדמי, הפאנל רותך למארז.

הפאנל הקדמי מרותך למארז ע"י פיקים בלבד (שלב ביניים)

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

מארז + מכסה לפני החיתוך (מכסה בצורת "ח")
מכסה לאחר החיתוך (מכסה בצורת "ר")

הדופן הנותרת רותכה למארז

ריתוך הדופן למארז
המארז בשלב ביניים



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

רחיתוך בעזרת Dremel


בשלב הבא הכנסתי את הרכיבים האלקטרוניים למארז, והתחלתי לבצע את עבודת החיווט.



חיווט שקע הכח למתג נדנדה, והזנת מסילת כח במטריצת החיבורים ב 12 וולט



אספקת כח

לצורך אספקת כח לפרויקט, רכשתי ספק כח ממותג 12 וולט, 1 אמפר.
התרשמתי לטובה מהספק הכח הממותג, מבחינת אספקת מתח יציבה של 12 וולט,
בהשוואה לספק כח אחר שהשתמשתי בו באופן זמני, המתח שהוא סיפק לא היה יציב, ותלוי לעומס, משתנה בין 11 וולט ל 17 וולט.

ספק כח ממותג,מתח 12 וולט,זרם מקסימלי 1 אמפר

הספק מספק כח למסילת 12 וולט במטריצה, ככה שניתן לחבר למסילה צרכנים, וגם לספק כח ל הArduino דרך פין Vin.

בגלל שהמארז שימש במקור בתור ספק כח של מחשב, הוא הכיל שקע של כבל 3 גידים.
לכן לקחתי כבל מהסוג המתאים, חתכתי והלחמתי אותו לכבל שיוצא מהספק כח 12 וולט ממותג.
מכייון שבספק כח 12 וולט הכבל הכיל 2 גידים בלבד, יכולתי להשתמש רק ב 2 גידים מתוך ה 3 הקיימים בכבל חשמל שמתחבר בד"כ לספקי כח של מחשב.
הגיד הנותר אמור לשמש כהארקה,יחד עם זאת אני מניח שבגלל שמדובר בזרם ישיר (DC) ובמתח יחסית נמוך, אין באמת צורך בהארקה.

כבל

על מנת ליצור מסילת כח 5 וולט במטריצה (שזה מתח מאוד נפוץ עבור רכיבים אלקטרוניים בעולם הArduino), השתמשתי ברכיב שנקרא:
Mini DC/DC Step-Down (Buck) Converter - 5V @ 1A output TSR12450
את הרכיב רכשתי מחנות Adafruit במחיר לא זול של 50 ש"ח.
הרכיב הזה מאפשר הורדת מתח מ 12 וולט, ל 5 וולט בנצילות מאוד גבוהה של 95%, ולכן אינו זקוק לקירור.
בנוסף מדובר ברכיב קטן, ופשוט מאוד לחיבור (Plug and Play).

Mini DC/DC Step-Down (Buck) Converter - 5V @ 1A output TSR12450

במצב זה בעצם יצרתי 2 מסילות כח במטריצת החיבורים, שהאחת היא במתח 12 וולט, והשניה היא במתח 5 וולט, כאשר שניהם מקבלים כח מספק חיצוני שמסוגל לספק זרם מקסימלי של 1 אמפר.
הסיבה שבניתי את זה כך היא שהArduino אינו אמור לספק כח עבור רכיבים, אלא לשלוט בהם, לקבל ולשלוח מידע.
ולכן רוב הרכיבים שיתחברו לפרוייקט, יקבלו כח ממקור חיצוני (חזק יחסית), ולא יצטרכו למשוך כח מArduino שהוא כאמור לא מיועד לכך, ויכולת אספקת הכח המקסימלית שלו היא נמוכה (200 מילי-אמפר).



חיבור המאוורר

המאורר מחובר למסילת 12 וולט, ונשלט ע"י הArduino דרך טרנזיססטור דרלינגטון מדגם TIP120.

TIP120 NPN Darlington Transistor

חיבור זה מאפשר שליטה על הפעלה/כיבוי של המאורר, ושליטה על הסל"ד ש להמאורר, באופן דיגיטלי דרך הArduino.
הטרנזיסטור שולט על המתח שיגיע למאורר, ע"י האות שהוא מקבל מהArduino, כאשר האות שמגיע מהArduino הוא אות שנקרא PWM.
PWM זה קיצור של Pulse Width Modulation - כלומר שליטה ברוחב הגל, זה עובד ככה:
אם נשלח מהArduino גל קבוע של 5 וולט במשך 100% מהזמן, אז הטרנזיסטור יעביר את כל ה 12 וולט למאורר, והמאוורר יפעל בסל"ד מירבי.
אם נשלח מהArduino גל משתנה כאשר 5 וולט הוא רק 50% מהזמן, אז הממוצע יהיה 2.5 וולט, והטרזניסטור יעביר למאוורר רק חצי מה12 וולט, כלומר 6 וולט, והמאורר יפעל בסל"ד חצי מהמקסימום.

תצוגת LCD

Sparkfun Nokia 5110 LCD Monochrome

עבור התצוגה, השתמשתי במסך LCD מונוכרומטי, המסך הזה שימש במקור כמסך של טלפון סלולרי מסוג Nokia 5110 (הטלפון עם הסנייק).
המסך הוא מסוג מונוכומרטי (Monochrome), כלומר מציג צבע אחד בלבד – שחור.
המסך מכיל תאורה אחורית של 4 לדים, מאוד בהיר, וניתן לראות את התצוגה באופן ברור גם כאשר ישנה תאורה סביבתית חזקה.
מבחינת מחיר, הוא נחשב לזול, ניתן להשיג אותו בeBay החל מ 12 ש"ח , למרות שאת שלי ספציפית אני רכשתי בארץ, במחיר של 48 ש"ח.
המסך שרכשתי הוא מבית Sparkfun וסה"כ הוא מכיל 8 פינים:
5 פינים מתחברים לArduino
2 פינים הם לאספקת מתח (VCC), והארקה (GND)
1 פין מקבל מתח של 5 וולט, ועובר דרך נגד 220 אוהם, ומשמש להפעלת התאורה אחורית של המסך

אני חברתי את המסך למתח של 3.3 וולט (פין VCC), וזה מתח העבודה המומלץ.
יחד עם זאת, אציין כי המסך בהחלט מסוגל לעבוד גם במתח של 5 וולט, אם כי יש לקחת בחשבון כי הדבר עלול לגרום לקיצור חיי המסך.

מבחינת תקשורת עם הArduino - המסך משתמש בפרוטוקול תקשורת SPI, ולכן מכיל פינים מסוג MOSI , MISO , SCLK , SS .
במסך שאני השתמשתי, כאמור מבית Sparkfun הכיתוב של הפינים (Tag) מעט שונה ולהלן פירוט:

Sparkfun Nokia 5110 LCD Monochrome Pinout

חשוב להדגיש – הפינים של MOSI , ו SCLK , חייבים לעבוד במתח של 3.3 וולט.
ומכיוון שכרטיסי ה Arduino Uno / Arduino Leonardo / Arduino Mega עובדים במתח 5 וולט חייבים להשתמש ברכיב שנקרא Logic Level Converter (מתאם רמות לוגיות) , שתפקידו להמיר את האות ממתח 5 וולט ,למתח 3.3 וולט , מבלי לפגוע באות עצמו.

Logic Level Converter - מתאם רמות לוגיות, מבית Sparkfun לאחר הלחמת הרגליים

את המתאם רמות לוגי רכשתי בארץ, במחיר של 9 ש"ח ליחידה (מסופק ללא הרגליים (Male Pin Headers)).
המתאם שאני רכשתי, מאפשר חיבור של 4 ערוצים, אך לא באופן דו-כיווני,
כלומר קיימים שני ערוצי TX , ושני ערוצי RX , וכל אחד מסוגל להעביר את האות בכיוון אחד בלבד.
בפועל, עבור החיבור של מסך הNokia 5110 , משתמשים ב 2 ערוצים של המתאם הלוגי, ולא ב 4.



פאנל וולטמטר

את הפאנל וולטמטר רכשתי מחנות אינטרנטית מפורסמת בתחום, החנות נקראית Adafruit , ועלות הפאנל-וולטמטר היא 27 ש"ח.
הרכיב משלב תצוגה + וולטמטר פשוט, שמסוגל למדוד טווח מתחים שבין 4.5 וולט ועד ל 30 וולט.
החיבור שלו הוא סופר פשוט, בסה"כ יוצא ממנו כבל 2 גידים – פלוס ומינוס, כאשר המינוס מתחבר להארקה, והפלוס הוא בעצם הProbe , ולאן שמתחבר הProbe הוולטמטר יציג את המתח בנקודה זו (יחסית למינוס).
אצלי בפרויקט נכון לרגע כתיבת שורות אלו, הProbe מחובר לערוץ 12 וולט במטריצת החיבורים, אבל בקלות רבה ניתן להזיז את הProbe ממקום למקום ולמדוד את המתח בנקודה הספציפית הרצויה.
אציין כי התצוגה מאוד בהירה וברורה, והוא נראה טוב יותר מאשר כפי שהוא מופיע בתמונה.

פאנל וולטמטר פאנל וולטמטר, מבט גב פאנל וולטמטר, פועל


תצוגת מקטעים

את "תצוגת המקטעים" רכשתי בארץ, במחיר של 65 ש"ח, הרכיב נקרא Serial 7Segment Display.
תצוגת תווים מאפשרת הצגה של ספרות וגם של אותיות (בערך - מכיוון שהתצוגה בנויה ממקטעים של לדים, אז האותיות לא הכי ברורות וזה בעיקר משמש לספרות).
ניתן להציג 4 ספרות, ןלהזיז את הנקודה העשרונית בהתאם לצורך.
הרכיב כולל סה"כ 8 פינים, אך לא משתמשים בכולם במקביל.
2 פינים הם עבור מתח (5 וולט) והארקה
פינים נוספים הם בהתאם לסוג התקשורת.
אני בחרתי להשתמש בתקשורת סיריאלית, ככה שאני משתמש סה"כ ב 3 פינים, 2 עבור מתח, ופין נוסף שמחובר לפין דיגיטלי ב Arduino
התצוגה היא מאוד ברורה, זמן התגובה מהיר מאוד, והחיבור פשוט וקל.

7Segment Display
מבט גב
פועל


לדים

על הפאנל התקנתי 3 לדים, בקוטר 5 מ"מ, בצבעים שונים: אדום,כתום,ירוק.
כל לד מתחבר לפין דיגיטלי בArduino , ועובר דרך נגד 220 אוהם (המשמעות היא שע"פ חוק אוהם הזרם שזורם בלד הוא 22.7 מיליאמפר, וזה בערך הגבול העליון של הזרם המותר עבור הלדים הללו)
השתדלתי לחבר את הלדים לפינים הכי פחות שימושיים בArduino , כאלו שהם לא בעלי יכולת נוספות כגון PWM, I2C, Interrupt , TX,RX , על מנת לשמור על פינים חשובים לטובת שימושים עתידיים.
את הלד הירוק חיברתי לפין 13, שהוא פין שקשור ללד המובנה בArduino , ולדוגמא כאשר מעלים קוד לArduino הלד הירוק מהבהב.
הלדים מושחלים בתוך "LED Holder", שרכשתי בארץ במחיר של 3 ש"ח ליחידה.
הLed Holders גם כן מבית Sparkfun , מגיעים עם אום פלסטיק שמאפשר הידוק לפאנל, ובגימור כרום מתכתי.

לד אדום בפעולה

סרטון - המערכת בפעולה (מערכת בגרסת Beta)

משטח קירור חכם עבור מחשב נייד

1.מטרת הפרויקט

לייצר דגם אב-טיפוס של משטח קירור חכם המתוכנן עבור דגם מחשב נייד ספציפי, בכדי ‏לבחון את השפעת אלמנטי הקירור שמוטמעים במשטח הקירור על טמפרטורת המחשב ‏בכלל והמעבד בפרט.‏

2.מבוא

בקרב המחשבים הניידים קיימת בעיה נפוצה של התחממות המעבד (‏Laptop Overheating‏) ‏הגוררת גריעה בביצועי המחשב. התחממות המעבד יתר על המידה נגרמת כתוצאה מפינוי חום‎ ‎‏ ‏לא יעיל מאזור המעבד, בעקבות סירקולציית אוויר לא מספקת.‏ יצרני המחשבים מודעים היטב לחשיבות פינוי החום מרכיבי המחשב, ובכל מחשב נייד קיימים ‏אלמנטים שנועדו בכדי לאפשר פינוי חום יעיל. דגומאות של אלמנטים כאלו הם מאווררים, צלעות ‏קירור (‏Heat Sink‏), ופתחי אוורור.‏
במחשב נייד קיים מנגנון שקובע את תדירות הסיבוב (סל"ד) של המאוורר שנמצא על המעבד כתלות בטמרפטרות ‏המעבד, כלומר כאשר לא המחשב לא מריץ יישומים שדורשים משאבי עיבוד גבוהים אז המאורר פועל ‏בסל"ד נמוך ובכך מאפשר חיסכון באנרגיה וברעש.‏
כאשר עובדים על המחשב ביישומים שדורשים משאבי עיבוד גבוהים, (כגון – עריכת סרטי ווידאו, ‏צפייה בסרטים באיכות ‏HD ‎‏, תוכנות עריכה גרפיות, תוכנות מידול הנדסיות, משחקים), המעבד ‏עובד במתחים גבוהים יותר, והזרמים גדלים בהתאם ונגרמת עלייה בטמפרטורת המעבד, ‏ובהתאם עלייה בסל"ד המאוורר.‏
כאשר הטמפרטורה מגיעה לערך המוגדר כערך גבוהה, במעבד קיים מנגנון הגנה שמוריד את ‏המתח בכדי לא לחרוג מטמפרטורה גבוהה זו, דבר זה גורם לירידה בביצועי במחשב דווקא בזמן ‏שבו נדרשים ביצועי מעבד מיטביים.‏
קיימות 3 סיבות מרכזיות שמובילות להתחממות מחשב נייד:‏
‏ 1)‏ נפח מארז מינימלי - עקב העובדה שמחשבים ניידים חייבים להיות קומפקטיים, וקלים ‏לנשיאה, אפשרויות הפיזור חום במחשב נייד הן מאוד מוגבלות, דבר שמוביל לבעיה של ‏של התחממות
‏ 2)‏ מחשב נייד מונח על שולחן, כאשר הוא מוגבהה במספר מילימטרים בכדי למנוע חסימה ‏של פתחי אוורר על ידי המשטח, אך גם כאן מטעמי חיסכון במקום המרווח בין המחשב ‏למשטח הוא קטן מידי דבר שפוגע באפשרות פינוי החום מהמחשב.‏
‏ 3)‏ מעבדים חזקים – כיום מעבדים חזקים מטמעים במגוון גדול של מחשבים ניידים, מעבדים ‏חזקים יותר , לרוב עובדים במתחים גבוההים יותר והם צרכני חשמל גדולים יותר ולכן הם ‏גם פולטים חום רב במהלך עבודתם.‏

המשטח קירור החכם מאפשר קירור מיטבי של המחשב, והוא עושה זאת בעזרת מאוורר עוצמתי ‏שתדירות הסיבוב שלו נשלטת דרך בקר אלקטרוני (‏Arduino‏) בהתאם לטמפרטורת המעבד.‏
דבר זה מייעל את עבודת משטח הקירור בכך שהוא מבטיח קירור מיטבי כאשר המחשב זקוק ‏לקירור שכזה, ובמידה ואין צורך בקירור (מעבד בסרק) המאורר מפסיק לעבוד לחלוטין ומאפשר ‏שקט‏

3.מטרות

  • לייצר משטח קירור שיתן מענה לבעיית התחממות המחשב, תוך כדי הקפדה על ‏רעש מינימלי‏
  • לזכות בתחרות פרויקטים ‏Arduino‏ במכללה‏‏
  • רכישת ניסיון בעבודה עם כרטיס פיתוח ‏Arduino‏ ומעגלים חשמליים, ובתהליך ייצור מוצר בתעשייה


4.אפיון המוצר

משטח הקירור בנוי בצורת טריז (משטח משופע), ומכיל מאוורר עוצמתי שממוקם בדיוק ‏באזור פתחי האוורר של המעבד.‏
מתחת למשטח מותקן כרטיס פיתוח ‏"Arduino Uno"‏ שמתפקד כבקר תדירות סיבוב (סל"ד) של המאוורר, ‏ומאפשר שליטה על סל"ד המאוורר דרך המחשב הנייד שמחובר לבקר באמצעות כבל ‏USB ‎‏ .‏
במחשב מותקנת תוכנה שקוראת את טמפרטורת המעבד, ובהתאם מחליטה באופן ‏אוטמאטי האם להפעיל את המאוורר ובאיזה סל"ד, ניתן בעזרת התכנה גם לשלוט ידנית ‏על סל"ד המאוורר ולכבות לגמרי את המאוורר.‏

5.מפרט טכני

משטח:

  • מימדים כללים [ממ]‏‎:‎‏ ‏‎260x412x49
  • חומר גלם: פלדה דלת פחמן ST12
  • עובי דופן: 2[ממ]
  • משקל:1[ק"ג]
מודל של המשטח
מידות כלליות

אלקטרוניקה:

  • כרטיס פיתוח Arduino Uno
  • BreadBoard
  • מקור מתח חיצוני 12V 0.5A
  • מאוורר 12V 0.5A
  • נגד 1K[Ohm]
  • טרנזיסטור בי-פולרי TIP122G NPN
  • דיודה 1N4007
  • תיילים מוליכים
סכמת מעגל חשמלי
הדמייה מעגל חשמלי

הסבר על המעגל החשמלי


המעגל מאפשר שליטה אלקטרונית עבור הפעלה וכיבוי של המאוורר, ובנוסף מאפשר גם שינוי של עוצמת ‏‏(סל"ד) המאורר והכל בשליטה דיגיטלית דרך בקר הArduino שמחובר למחשב.‏
במחשב פועלת תוכנית ששולחת פקודות לבקר הארדווינו – הפעלה / ויסות סל"ד / כיבוי.
מקור מתח חיצוני ‏‎12V‎‏ מתחבר לקוטב החיובי של המאוורר, הקוטב השלילי של המאורר מתחבר ‏לרגל ‏C‏ של הטרנזיסטור.‏
הטרנזיסטור משמש כמתג אלקטרוני, הוא מסוגל להתמודד עם מתח וזרם גבוהה ולהתחבר ‏ישירות לצרכני מתח/זרם גדולים, ולשלוט בכמות הזרם שזורם אליהם.‏

לטרזנסיטור 3 רגליים:‏
‏1)‏ רגלB ‎‏ מחוברת לארדווינו, לפין ‏PWM ‎‏ (במקרה פין 3) ובכך מתאפשרת שליטה של ‏הארדווינו על וויסות הזרם בטרנזיטור, ובכך שליטה בהפעלה / וייסות סל"ד /וכיבוי של ‏המאוורר.‏
הטרנזיסטור והארדווינו מחוברים דרך נגד ‏‎1K[Ohm]‎‏ על מנת לשמור על הארדווינו ‏שלא ייפגע מזרמים גבוהים, מכיוון שהטרנסזיטור מסוגל לעבוד עם מתחים/זרמים ‏גבוהים בעוד שהארדווינו לא.‏

‏ 2)‏ רגלC ‎‏ מחוברת לקוטב השלילי של המאוורר, שמהווה בעצם את הקו החם במעגל, כי הוא ‏קו מתח גבוהה במעגל.‏

‏ 3)‏ רגלE ‎‏ מחוברת להארקה בארדווינו.‏
הרגל הזאת משמשת כמינוס של המאוורר ובעצם סוגרת את המעגל החשמלי של המאורר ‏ומקור מתח החיצוני כאשר הטרנזיסטור מקבל אות מהארדווינו לסגור מעגל.‏

בין רגל ‏C ‎‏ לרגל ‏E‏ מחובר דיודה.‏
הדיודה מאפשרת זרימת זרם רק בכיוון אחד בלבד, במקרה הנ"ל היא מאפשרת זרימה של זרם ‏מהקו המוארק לקו של המאורר.‏
ברגע הפסקת פעולת המאוורר, הפוטנציאלים במעגל משתנים, ועדין נותר זרם ‏שזורם במעגל, ולכן הזרם הזה שהוא גבוהה עלול לחזור ולגרום נזק, ולכן יש צורך בשימוש בדיודה.

מאוורר מפרט תכני

  • ThermalTake Volcano7+‎
  • 70[ממ]
  • סל"ד מקסימלי: 6000
  • 49CFM
  • תצורת מאוורר: דוחף אוויר לכיוון המחשב
*תצורת המאוורר נקבעה בהתאם לסוג המאוורר המובנה שקיים במחשב הנייד, במידה והמאוורר המובנה הוא מסוג שמושך אוויר, אז המאוורר שמותקן בבמשטח הקירור דוחף אוויר.

6.תוכנה

התוכנה מנטרת את טמפרטורת המעבד ומחליטה האם יש צורך בהפעלת המאוורר ובאיזה סל"ד.

  • ישום הפועל ברקע, וממוזער לסרגל הTray‎
  • אינו מצריך התקנה כלל
  • בקרת שליטה על סל"ד המאורר
  • תצוגה דיגיטלית: טמפרטורת המעבד, עומס המעבד
  • תצוגת גרפית: טמפרטורת מעבד, עומס מעבד,סל"ד מאוורר
  • התוכנה על בסיס טכנולוגיות: NET 4,C#,WPF
ממשק התוכנה
גרף


בדיקת ביצועים

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

דוגמת הרצה
בהרצה זו קבענו לחשב את סידרת פיבונאצי' עד לאיבר הn=45 , באופן מקבילי 10 פעמים, תחת עומס של כל הליבות (4).
נתבצעו 2 הרצות:
הרצה 1 - מחשב מונח על המשטח קירור, המאורר במצב כבוי.
הרצה 2 - מחשב מונח על המשטח קירור, המאוורר במצב אוטמאטי (פועל בהתאם לעומס).

תוצאות
הרצה 1 - משך הזמן עד להשלמת החישוב 2:31 דקות , טמפרטורת מעבד מקסימלית 96C
הרצה 2 - משך הזמן עד להשלמת החישוב 2:20 דקות , טמפרטורת מעבד מקסימלית 92C

כלומר שיפור של 11 שניות בזמן החישוב, ובנוסף שיפור של 4 מעלות, בהרצה 2.
*נציין כי בין ההרצות התוכנית נסגרה והופעלה מחדש על מנת לנקות את הזכרון מטמון (cache memory) שהיה יכול להשפיע על זמן החישוב.

תוצאות ההרצה

7.תמונות

*המוצר עדיין לא מוגמר - נותר עוד לצבוע את המשטח בשיטה אלקטרוסטטית (צביעה באבקה), להכין מעגל חשמלי מוקטן ולקבע אותו למשטח (כרגע המעגל החשמלי מוחזק באמצעות אזיקון אדום - רק באופן זמני)
מבט מלמעלה
מחשב נייד Acer5740G מונח על המשטח
המאוורר ממוקם בדיוק מתחת לאזור פתחי האוורור של המחשב
אלקטרוניקה
מבט איזומטרי

8.תהליך הייצור

המשטח יוצר בשיטה של "כיפוף פחים" (Sheet Metal). הוכן מודל תלת-מימדי של המשטח בתוכנת Solidworks , ולאחר מכן בוצעה פריסה של המודל לפח שטוח עם סימוני חיתוכים וכיפופים. הקובץ השטוח מיוצא לפורמט DXF ומועבר למכונת חיתוך פלסמה במפעל "חן בקרת אקלים". נציין כי לצורך חיתוכים עדינים מהסוג הזה (מידות קטנות של קדחים) היה עדיף להשתמש במכונת חיתוך לייזר, אבל מכיוון שמדובר בדגם אב-טיפוס העדפנו להשתמש במכונת פלסמה שהייתה יותר זמינה.

מצב שטוח (Flat Pattern)


סרטון מתהליך הייצור


9.צבע

השלב הבא הוא צביעה של המשטח.
צבע המשטח מתוכנן להיות בגוון Gun Metal מתוצרת DuPont.
ע"ג המשטח יופיעו 2 פסים דקים, במרחק 20[ממ] מהקצוות, על מנת לסמן את המיקום האידיאלי מבחינת איוורורר, להנחת המחשב. צבע הפסים מתוכנן להיות ירוק זוהר.

הדמייה של המשטח צבוע: