‏הצגת רשומות עם תוויות 555. הצג את כל הרשומות
‏הצגת רשומות עם תוויות 555. הצג את כל הרשומות

יום שבת, 12 באוקטובר 2013

מד לאסלה, או "איך הבן שלך יישמח ללכת לעשות פיפי בשירותים"

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

חשבתי מה אפשר לעשות עם כל אלה - ומצאתי פתרון שמשלב משחק לבן שלי כשהוא עושה פיפי באסלה.

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

העדפתי ליצור את המשחק מחלקים שיש לי כבר, ולא עם בקר כלשהו.  החלטתי להשתמש ב- 555, ו- 595 shift register. להסבר מעולה (באנגלית) על ה- 595, הציצו כאן.
המשחק עובד כך:
באסלה יהיו שני חיבורים חשופים קרובים מאוד. כשפוגע בהם פיפי, או שהם יגעו אחד בשני ישירות, או שהפיפי עצמו יסגור ביניהם מעגל (בזכות המוליכות של הפיפי - אני עוד צריך לבדוק את הנושא). זה המתג הראשי של המעגל.
המתג הזה מחבר את הסוללות (4 של AA) למעגל. במעגל יש זמנן (555) שמתפעל אוגר (595). בכל שניה, הזמנן דוחף לאוגר עוד ביט גבוה. לכן הפלט של האוגר יהיה 00000000 בהתחלה, 00000001 אחרי שניה, 00000011 אחרי עוד שניה, וכך עד 11111111.
היציאות של האוגר יהיו מחוברות ללדים, אז אני אקבל את האפקט של המודד. בחלק מהיציאות אני אחבר לדים רגילים, ובחלק את הצעצועים הזולים. בצורה זו זה לא סתם שורת לדים שנדלקת, אלא יש גם "נק' ציון" בדרך, שהן קצת יותר מעניינות.
בניתי את המעגל הבסיסי, ובדקתי אותו:

החיבור לRPI הוא רק לקבל 5V. בנוסף השתמשי ב- 556 במקום 555
(556 הוא שני 555 בצ'יפ אחד, אבל השתמשתי רק באחד מהם).

כיוון שהייתי השבוע בהרצאה על Eagle ב- XLN, של אלון רייזמן, החלטתי לשלוח להדפסה סנונית ראשונה. בניתי את המעגל בתוכנה ושלחתי להדפסה ב- OSH Park. באתר אפשר להזמין הדפסה של מעגל אבל לפחות 3 העתקים, במחיר של 5$ לכל אינץ' רבוע, המשלוח חינם. עלה לי 70 ש"ח - אני מקווה שעוד שבועיים שלושה אעלה פוסט עם המשחק עובד.

הסבר על המעגל

במעגל יש 555 astable שמוציא גל ריבועי כל שניה, ובו המצב הגבוה נמשך כמעט שניה (רק כמה מילישניות של נמוך).
באוגר, רגל ה- serial data מחוברת ל- Vcc, כלומר תמיד נדחף ביט גבוה. ה- clock מחובר למעגל גזירה פשוט של קבל ונגד. הוא גוזר את הפלט של הזמנן, כלומר בכל פעם שהפלט עולה לגבוה (פעם בשניה) מקבלים pulse רגעי. ה- RCK מחובר לנגד pull-up ולטרנזיסטור, כך שהוא מקבל בדיוק את ההופכי של הפלט (כשהפלט גבוה, הוא נמוך, וההיפך).

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

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

שרטוט המעגל:


להורדה של ספריית ה- Eagle של הפרויקט