עבור לתוכן

יומן פרוייקט אלק' - תצוגת לדים מסתובבת POV

Featured Replies

פורסם

אהלן,

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

אז מה זה בעצם הפרוייקט הזה ?

הפרוייקט הוא בעצם תצוגה שבנויה משורה אנכית של לדים שיושבת על פלטפורמה שמסתובבת ע"י מנוע. עקב מהירות הסיבוב הגבוהה מתקבלת אשליה של חוסר תנועה (POV = Persistence of Vision) ונראה כי השורה של הלדים הפכה בעצם למסך עגול של לדים.

פרטים נוספים כאן.

דרישות/מפרט:

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

החלטתי לבנות את הפרוייקט סביב המיקרו בקר PIC16F877A שמצאתי במחיר אטרקטיבי.

רציתי שתהיה דרך להעביר מתח מהקרקע לפלטפורמה המסתובבת ולא רציתי להשתמש בסוללה על הפלטפורמה.

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

ממשק מיקרו - לדים:

ע"פ בדיקה בדפי הנתונים של המיקרו, הזרם המקסימלי שהוא יכול לספק הוא כ300mA או 400mA. רציתי להפעיל 16 לדים ב20-25mA כל אחד כך שהייתי צריך לפחות 400mA זרם לתצוגה. בנוסף המיקרו יכול להוציא רק כ100mA עבור כל פורט ככה שאם הייתי מקטין עוד קצת את הזרם ומחבר את הלדים ישירות למיקרו היה סתם בלאגן של חוטים ולכן במקום זאת החלטתי להפעיל את הלדים בעזרת שני שיפט רגיסטרים (Serial in Parallel Out Shift Register).

את הלדים שייפתי עם פצירה כדי שהאור יתפזר עליהם (Diffuse) ולא יוקרן קדימה באופן חזק מידי.

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

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

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

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

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

img0516bx.th.jpg img0518fj.th.jpg img0519ca.th.jpg img0554acu.th.jpg img0553h.th.jpg img0557ex.th.jpg

איך בעצם כל הפלטפורמה תסתובב ?

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

בהתחלה רציתי להשתמש במנוע AC של מאוורר אך גיליתי שאינו חזק מספיק. לאחר מכן הצלחתי להניח את ידי על מנוע אמיתי (הודות לניסים), מנוע 12v DC מטרקטורון של ילדים. מסתבר שלמנוע הזה יש מספיק עוצמה להפוך לי את תצוגה לתצוגה מעופפת ולמצוא לו מקור הזנה גם כן היה די קשה מאחר שהוא צורך זרם מטורף (מעל ל5A בקלות). נסיתי להפעיל אותו במגוון דרכים, החל מיצב מתח מתכונן (LM317) ועד מעגלי PWM אך לבסוף כל מה שהצלחתי זה לשרוף את מייצב המתח וגם כניראה טרנזיסטור MOSFET אחד.

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

אחרי כמה בדיקות הגעתי למסקנה שמה שכתוב על הספק הזה הוא שקר גדול, ממש לא7.5V וממש לא 1A, הזרם מגיע בקלות ל3.5A והמתח ב12v. אחרי מדידת המהירות של הפלטפורמה הגעתי למסקנה שהיא מסתובבת רק בכ600-700 סלד, שזה בעצם 10-11HZ.

ציפיתי למהירות גבוהה יותר ואני מתכוון להמשיך ולחפש דרך להזין את המנוע כדי להגיע לפחות ל20HZ - 1200RPM.

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

בניית התושבות וכל החלק המכני:

כדי שהמנוע לא ירעד חיברתי אותו ללוח עץ עם תושבת שתחזיק אותו.

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

לצערי הרב ציר המנוע היה קצר מידי והיה צורך להאריכו.

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

הנה כמה שרטוטים של המבנה:

img0629si.th.jpg img0630rz.th.jpg img0631hk.th.jpg

ושרטוט של הכל מורכב:

img0632w.th.jpg

הרכבת המנוע, תושבות וכל המכניקה:

התמונות להלן - מימין לשמאל:

המנוע עם הציר המורחב התושבות הטבעות קפיצי המגע וכו', הלחמת החוט לפנים הטבעת, הרכבת הטבעות למנוע, מנוע מורכב עם 3 הטבעות ותושבת לפלטפורמה, התושבות מורכבות על לוח עץ, והרכבה כוללת.

img0559wb.th.jpg img0561os.th.jpg img0563qt.th.jpg img0564r.th.jpg img0565w.th.jpg img0567v.th.jpg

עוד מספר תמונות של חיבור המגעים להעברת המתח לפלטפורמה וחיישן המיקום (הopto interruptor):

img0636r.th.jpg img0635a.th.jpg img0638jb.th.jpg

התוכנה:

את התוכנה אני כותב בשפת C בסביבת העבודה החינמית של Microchip (יצרן המיקרו) שהיא MPLAB והקומפיילר הוא הHi Tech C בגירסה החנמית. צריבת התוכנה למיקרו מתבצעת על גבי המעגל עצמו בעזרת התוכנה PICPgm ומעגל צריבה שבניתי.

כרגע התוכנה יודעת להציג על התצוגה את כל תווי הASCII הבסיסים.

בקרוב מאוד התוכנה גם תוכל להציג תווים בעברית.

עד היום בצהרים התוכנה לא עבדה כמו שצריך והציגה תצוגה מאוד מעוותת:

img0625rk.th.jpg

היום עליתי על הבעיה וכרגע הנה התוצאה:

(ליחצו על התמונה בשביל הסרטון)

capturexw.png


מה הלאה ?

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

שיפורים להמשך:

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


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


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

פורסם

זה כמו הצעצועים של יום העצמאות :D

מאוד יפה

כשראיתי את התמונות חשבתי לעשות אחד בעצמי אבל אין לי כוח לכול הכאב ראש הזה :)

פורסם

ואווו !!!

חזק ביותר ! כל הכבוד !

פורסם
  • מחבר

הפרוייקט גוייר !

img0649mk.jpg

פורסם

התוכנה יודעת לכתוב את זה ? כאילו כול מה שאתה עושה זה רושם מילה והתוכנה מתרגמת את זהה ללדים ?

פורסם

אתה יכול לתזמן את התצוגה בהתאם למיקום הסיבוב במדויק ?

לדוגמא לכתוב N E S W כמו מצפן ?

פורסם
  • מחבר

בהחלט אפשרי, רק מה המטרה ? מצפן תלת מימדי ?

פורסם

אכן, מאיזה צד שתסתכל עליו, הוא יראה לך את מה שיש ממולך. לאן אתה מסתכל.

פורסם

ענננק !! =]

יש עתיד לצעצוע החמוד הזה D:

  • 1 חודש מאוחר יותר...
פורסם

למה לסובב את כל הלוח אם אפשר לבנות זרוע כשרק הלדים עליה?

פורסם
  • מחבר

אם יהיו רק לדים על הזרוע איך הם ידעו מתי להדלק ?

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

פורסם

אתה מעביר את האות בדרך דומה לזו בה עובר החשמל כיום

פורסם

נתחיל מהדבר הכי ראשון והכי פשוט.

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

רציתי לשאול שאלה אחת.

הלוח שעליו הלחמת את החלקים...ממה הוא עשוי?ואיפה אפשר להשיג אותו?

פורסם

נתחיל מהדבר הכי ראשון והכי פשוט.

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

רציתי לשאול שאלה אחת.

הלוח שעליו הלחמת את החלקים...ממה הוא עשוי?ואיפה אפשר להשיג אותו?

זה לוח פרוייקטים WIRE UP רגיל

פורסם

זה לוח פרוייקטים WIRE UP רגיל

יש לי ניסיון עם לוח מטריצה...לא הדבר הכי נוח בעולם.זה איכשהוא דומה ללוח WIREUP?

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

דיונים חדשים