תוכן עניינים:

צור תצוגת POV משלך: 3 שלבים
צור תצוגת POV משלך: 3 שלבים

וִידֵאוֹ: צור תצוגת POV משלך: 3 שלבים

וִידֵאוֹ: צור תצוגת POV משלך: 3 שלבים
וִידֵאוֹ: 🚀 RUTUBE ונקודה. פיתוח RUTUBA תוך 5 שעות *ללא מים* [הבא / תגובה / Nest / PostgreSQL / Redux] 2024, נוֹבֶמבֶּר
Anonim
צור תצוגת POV משלך
צור תצוגת POV משלך

תפיסת החזון (POV) או התמדה החזון (יש לה כמה וריאציות) היא תופעת ראייה אנושית מעניינת המתרחשת כאשר התפיסה החזותית של אובייקט אינה מפסיקה למרות המיקום שמשנה את האובייקט. בני אדם רואים דימוי במרווחים של שברי שניות; תמונות אלה נשמרות במוח לזמן קצר מאוד (רגע). דוגמה לתופעה זו היא כאשר אתה צופה במקור תאורה כגון נוריות LED או נורות, מופעל ומסתובב. החזון שלנו מרמה להאמין שהאור המסתובב הוא למעשה מעגל רציף, בדומה למעגל הרציף שנוצר ממדחף מסתובב על מטוס. POV שימש במשך שנים רבות, החל מהגיפוסקופ, להכנת אשליות ואנימציות שונות לחזון שלנו; הוא משמש לעתים קרובות להצגת הודעות ואנימציות על תצוגות באמצעות נוריות LED, וסובב אותן בתלת ממד או בתלת ממד עבור סוגים שונים של הודעות. מטרת הערת האפליקציה הזו היא לתכנן ולהדגים כיצד Perception of Vision פועל על ידי כתיבת המילה "SILEGO" על הצג שייבנה, ולתת רעיונות שידריכו אותך בתהליך של יצירת עיצובים מורכבים יותר בעתיד. לפרויקט זה, השתמשנו ב- Dialog GreenPAK ™ SLG46880, עם ערכת שקע המאפשרת חיבור קל של אב טיפוס זה לכל הרכיבים החיצוניים באמצעות כבלים. השימוש ב- GreenPAK הגדול יותר לעיצוב תצוגות POV למטרות כלליות הוא יתרון מאוד בגלל הרכיבים החזקים שלו כגון תת -מערכות ASM, שיאפשרו לך להדפיס כל סוג של דפוס על הצג. יישום זה יציג תוצאה סופית באמצעות SLG46880.

להלן תיארנו את השלבים הדרושים כדי להבין כיצד תוכנן שבב GreenPAK ליצירת תצוגת POV. עם זאת, אם אתה רק רוצה לקבל את התוצאה של התכנות, הורד את תוכנת GreenPAK כדי לצפות בקובץ העיצוב GreenPAK שכבר הושלם. חבר את ערכת הפיתוח של GreenPAK למחשב שלך והקש על התוכנית כדי ליצור את ה- IC המותאם אישית לתצוגת POV.

שלב 1: תרשימים

סכמטים
סכמטים

דוגמה זו לתצוגת POV מכוונת לסוג דו -ממדי המוצג באיור 1, הכולל מערך של אחת -עשר נוריות LED (כל אחת עם נגדים לוויסות זרם) המחוברות ישירות לסיכות GPO שונות ב- GreenPAK CMIC. המעגל עשוי אב טיפוס ומולחם ללוחות לחם PCB. ספק הכוח המשמש לתצוגה הוא סוללת אלקליין 9 V 10 A L1022, המחוברת למעגל ווסת מתח באמצעות LM7805V שיוצא 5 V. בנוסף לכך שהמסך מסתובב, יש צורך במנוע DC בעל מספיק כוח כדי להזיז את כל מעגלי בקרה המחוברים למעמד המותאם אישית. במקרה זה נעשה שימוש במנוע 12 וולט, המחובר למתג ראשי, ואספקת חשמל מדורגת אשר מדירה רמות מתח שונות באמצעות מתג סיבובי, המאפשרת למנוע להסתובב במספר מהירויות.

שלב 2: עיצוב GreenPAK

עיצוב GreenPAK
עיצוב GreenPAK
עיצוב GreenPAK
עיצוב GreenPAK
עיצוב GreenPAK
עיצוב GreenPAK
עיצוב GreenPAK
עיצוב GreenPAK

בעת עיצוב הודעות ואנימציות מסוג אחר לתצוגת POV באמצעות GreenPAK, עלינו להכיר את הכלים והמגבלות של השבב. בדרך זו אנו יכולים ליצור עיצוב מיומן, תוך שימוש בכמה רכיבי האלקטרוניקה להשגת תצוגת POV. עיצוב זה משתמש ביתרונות החדשים המוצעים על ידי SLG46880 CMIC, תוך התמקדות ברכיב תת מערכות האסינכרוני של מכונות המדינה. כלי תת המערכת ASG SLG46880 יכול להיות יתרון יותר מכלי GreenPAK ASM קודמים בגלל התכונות החדשות שלו, המאפשרות עיצובים מורכבים יותר של מכונות המדינה. חלק מהרכיבים הפנימיים הרלוונטיים של ASM Subsystems המשמשים הם:

● 12-מדינות ASM Macrocell

● Macrocell זיכרון דינאמי (DM)

● F (1) מחשוב Macrocell

● רכיבים עצמאיים במדינה

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

טבלה 1 מראה כיצד כל אחד מהמצבים הקיימים בעיצוב קשור לאותיות במילה "SILEGO". זה מתאם לתצורת ה- LED המוצגת באיור 2.

כפי שניתן לראות, כל המצבים המשותפים ביחד בתזמון שונה משיגים את המבנה המלא של המילה, איור 3 מראה כיצד מצבים מחוברים/קשורים. כל המעברים של המדינה הם בסדר האלפיות השנייה, וכל אחת מהעמודות בתרשים של איור 2 מייצגת אלפית שנייה (1 אלפיות השנייה). חלק מהמצבים נמשכים 3 אלפיות השנייה, 4 אלפיות השנייה ואחרים, מספיק זמן עם המהירות המינימלית של המנוע המשמש להפגנת הווידאו בסביבות 460 סל ד.

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

תדר = 1000 סל ד / 60 = 16.67 הרץ תקופה = 1 / 16.67 הרץ = 59.99 אלפיות השנייה

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

אם, למשל, אתה רוצה שההודעה תכסה 40 % משטח התצוגה, אז:

גודל הודעה = (תקופה * 40 %) / 100 % = (59.99 ms * 40 %) / 100 % = 24 ms

המשמעות היא שההודעה תוצג ב -24 אלפיות השנייה לכל סיבוב, כך שהמרווח הריק או שאר החלל בסיבוב (אם אינך מציג משהו לאחר ההודעה), צריך להיות:

שטח ריק = תקופה - גודל הודעה = 59.99 ms - 24 ms = 35.99 ms

לבסוף, אם אתה צריך להציג את ההודעה ב -40% מהתקופה הזו, עליך לדעת כמה מצבים ומעברים ההודעה תצטרך לכתוב את ההודעה הצפויה, למשל אם להודעה יש עשרים (20) מעברים, אז:

תקופת מצב בודד = גודל הודעה / 20 = 24 ms / 20 = 1.2 ms.

אז כל מדינה צריכה להימשך 1.2 אלפיות השנייה כדי להציג את ההודעה בצורה נכונה. כמובן שתשים לב שרוב העיצובים הראשונים אינם מושלמים, כך שאולי אתה משנה כמה פרמטרים במהלך הבדיקות הפיזיות כדי לשפר את העיצוב. השתמשנו ב- Macrocells Dynamic Memory (DM) כדי להקל על מעברי מצב. לשניים מארבעת הבלוקים של DM יש חיבורי מטריצה, כך שהם יכולים לקיים אינטראקציה עם בלוקים מחוץ למערכת המשנה ASM. לכל DM Macrocell יכולות להיות עד 6 תצורות שונות שניתן להשתמש בהן במצבים שונים. בלוקים של DM משמשים בעיצוב זה כדי להפעיל את ASM למעבר ממצב אחד למשנהו. למשל מצב Silego [3] חוזר על עצמו פעמיים במהלך המעברים; הוא צריך לכתוב את ההתחלה ואת הסוף של האות "אני" באותיות גדולות בעלות אותה תבנית, אך תחילה עליה לעבור לסילגו [4] כדי לכתוב את התבנית של אמצע האותיות הגדולות "אני", ולאחר מכן כאשר סיגלו [3] מבוצע בפעם השנייה, הוא צריך לעבור למצב ללא הודעה, ולהמשיך את שאר המעברים. כיצד ניתן למנוע מסליגו [3] ליפול לתוך לולאה אינסופית עם סיגלו [4]? זה פשוט, ישנם כמה LUTs המוגדרים כ- SR Flip Flops שאומרים ל- Silego [3] לא לבחור Silego [4] שוב ושוב, אלא לבחור מצב No Message בפעם השנייה. שימוש בכפכפי SR-SR כדי למנוע לולאות אינסופיות כאשר כל אחת מהמצבים חוזרים על עצמה היא דרך מצוינת לפתור בעיה זו, ודורשת רק תצורת LUT בת 3 סיביות כפי שמוצג באיור 4 ובתמונה 5. תהליך זה קורה במקביל פלט ASM גורם ל- Silego [3] לעבור ל- Silego [4], כך שבפעם הבאה שמכונת המדינה תבצע את Silego [3], תקבל הודעה לבחור במצב No Message כדי להמשיך בתהליך.

בלוק נוסף של ASM שהועיל לפרויקט זה הוא ה- F (1) Macrocell Computational. ה- F (1) יכול לבצע רשימה של פקודות ספציפיות לקריאה, אחסון, עיבוד ופלט של נתונים רצויים. הוא מסוגל לתמרן 1 ביט בכל פעם. בפרויקט זה בלוק F (1) שימש לקריאה, עיכוב ופלט של סיביות כדי לשלוט בכמה LUTs ולאפשר מצבים (כגון ב- Silego [1] כדי לאפשר Silego [2]).

הטבלה באיור 1 מסבירה כיצד כל אחת מנורות ה- LED מופנות לסיכות ה- GPO של ה- GreenPAK; הסיכות הפיזיות הקשורות מופנות מ- ASM Output RAM במטריצה, כפי שמוצג בטבלה 2.

כפי שניתן לראות בטבלה 2, כל סיכה של השבב הופנתה לפלט ASM מובהק; ל- ASMOUTPUT 1 יש שמונה (8) יציאות שכולן משמשות בחיבור ישיר ל- GPO חיצוני למעט OUT 4. ASM OUTPUT 0 כולל ארבע (4) יציאות שבהן OUT 0 ו- OUT 1 מחוברים ישירות ל- PIN 4 ו- PIN 16 בהתאמה; OUT 2 משמש לאיפוס LUT5 ו- LUT6 במצבי Silego [5] ו- Silego [9] ולבסוף OUT 3 משמש להגדרת LUT6 ב- Silego [4] ו- Silego [7]. ASM nRESET אינו משתנה בעיצוב זה ולכן הוא פשוט נאלץ להתחבר ל- HIGH ל- VDD. נוריות עליונות ותחתונות נוספו לפרויקט זה כדי לבצע הנפשה נוספת בזמן הצגת "SILEGO". אנימציה זו עוסקת בכמה שורות המקיפות לאורך זמן עם תנועת המנוע. קווים אלה הם נוריות LED לבנות, בעוד אלה המשמשים לכתיבת האותיות אדומות. כדי להשיג אנימציה זו, השתמשנו ב- PGEN וב- CNT0 של GreenPAK. ה- PGEN הוא מחולל תבניות שיוציא את הקטע הבא במערך שלו בכל קצה השעון. חילקנו את תקופת הסיבוב של המנוע ל -16 חלקים, והתוצאה נקבעה לתקופת הפלט של CNT0. הדפוס המתוכנת ב- PGEN מוצג באיור 6.

שלב 3: תוצאות

תוצאות
תוצאות

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

מסקנת תפיסת תצוגת החזון המוצגת בפרויקט זה תוכננה באמצעות Dialog GreenPAK SLG46880 כבקר הראשי. הדגמנו שהעיצוב עובד על ידי כתיבת המילה "SILEGO" באמצעות נוריות LED. כמה שיפורים שניתן לבצע בעיצוב כוללים:

● שימוש במספר GreenPAKs להגדלת כמות המצבים להדפסת הודעה או הנפשה ארוכה יותר.

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

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

מוּמלָץ: