הפעלת מיקרו בקר עם Kalumi – פלט דיגיטלי

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

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

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

אז בואו נדבר שניה על הפינים. כתבתי עליהם בפוסט על רספברי פיי אבל אכתוב עליהם שוב.

הפינים

הגדולה של פיי פיקו היא לאו דווקא היותו מחשב שיכול להריץ פקודות אלא היכולת שלו להתממשק ל-IoT. כלומר לממשקי קלט/פלט בעולם האמיתי. להדליק נורה, לכבות נורה, להדליק מזגן. לסובב מאוורר, לעשות דברים פיזיים ולקבל מידע ממקורות פיזיים: טמפרטורה, לחות, חיישן תנועה וכו'. את התקשורת הזו עם הרכיבים אנו עושים עם שורת הפינים שיש על הפיי פיקו – אנו רואים אותם כחורים (אלא אם כן קניתם pre soldered) אבל מדובר בפינים ואנו גם מחברים אליהם פינים באמצעות מלחם. רואים את החורים שיש בצידי הפיי פיקו? לא מדובר בחורים לקישוט אלא בעצם בדרך שבה הפיי פיקו מתקשר עם העולם. לכל חור כזה (שהוא פין שעוד לא הולחם) יש חשיבות ותפקיד ומספר.

דיאגרמת פינים של pi pico

מה משמעות הפינים האלו? מה עושים איתם? מדובר בפינים שחלקם מעבירים מתח, חלקם הם "אדמה" (כלומר סוגרים מתח חשמלי) וחלקם הם פינים מסוג GPIO – ראשי תבות של General Purpose Input/Output – פינים שיכולים לקבל או לקלוט מידע.

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

מעגל חשמלי ב- pi pico

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

https://commons.wikimedia.org/wiki/File:Simple_electric_circuit.png
מעגל חשמלי – Creative common מתוך ויקיפדיה

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

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

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

רגע, לא להבהל!!!!

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

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

בואו ונעבור על התמונה הזו לפי הסדר. 

ראשית חיברתי את הפיי פיקו ללוח כך שכל הפינים מסודרים. פין מספר 36 מחובר בכבל אדום ישירות לפין שתמיד מוציא מתח. איך אני יודע שהוא מספר 36 והוא מוציא מתח? הדיאגרה של הפינים למעלה. ספרתי 5 פינים וחיברתי את הכבל האדום בקו ישר לפין. ה-breadboard מעביר חשמל בקו ישר אופקי.

את הקצה השני של הכבל האדום חיברתי במקום כלשהו שרחוק מעט מהפיי פיקו. חיברתי את הקצה הארוך יותר של נורת ה-LED בקו ישר אליו. הקצה קצר יותר מעבר לתעלה – שמבצעת הפרדה בעצם

הצד השני הוא בדיוק אותו דבר. חיברתי את הגראונד שהוא פין מספר 3 ואז את הקצה השני בקו ישר מהנורה.

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

ההלחמה 😱😱😱

רגע, אבל איך עוברים מחורים לפינים? אצלי יש רק חורים!

זה החלק שבו צריך… להלחים. כבעל שתי ידיים שמאליות זה נורא הלחיץ אותי אבל האמת היא שברגע שניגשים לזה זה די פשוט. כל מה שצריך זה מלחם פשוט (20 ש"ח בערך בחנות כלי העבודה הקרובה למקום מגוריכם) ובדיל (8 ש"ח), קונקטורים ששמים על ה-breadboard, מחברים את ה-pi pico ואז מלחימים. כמה דקות של סרטון היוטיוב הזה ואתם מסודרים.

הקוד של פלט דיגיטלי

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

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

// index.js
const led = 28;
pinMode(led, OUTPUT);
setInterval(() => {
  console.log('beep!');
  digitalToggle(led);
}, 1000);

וזה? זה פלט דיגיטלי. 0 אין אור, 1 יש אור.

מי שכבר עבד עם רספברי פיי יתרגל לעבודה פה בשיא המהירות. בסופו של דבר זהה לגמרי.

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

פוסטים נוספים שכדאי לקרוא

רספברי פיי

הרצת גו על רספברי פיי

עולם הרספברי פיי והמייקרים ניתן לתפעול בכל שפה – לא רק פייתון או C – כאן אני מסביר על גו

תמונה מצוירת של רובוט שמנקה HTML
יסודות בתכנות

סניטציה – למה זה חשוב

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

גלילה לראש העמוד