תוכן עניינים:
- שלב 1: חומרים
- שלב 2: תכנון
- שלב 3: הדפסה תלת מימדית
- שלב 4: הרכבה - הסר את נוריות הלדים
- שלב 5: הרכבה - הוסף כותרות חור
- שלב 6: הרכבה - צרף נוריות
- שלב 7: הרכבה - חבר את ה- PhidgetIR
- שלב 8: הרכבה - הוספת כפתורים
- שלב 9: הרכבה - חיבור הכל ביחד
- שלב 10: תוכנה - קוד
- שלב 11: תוכנה - פקודות CIR
- שלב 12: הפעלת התוכנית
- שלב 13: תוצאה
וִידֵאוֹ: טכנולוגיה לסבא שלך: 13 שלבים (עם תמונות)
2024 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2024-01-30 09:16
כמה פעמים הלכת לבית סבא וסבתא כדי לעזור ב"בעיה טכנולוגית "שבסופו של דבר הייתה כבל חשמל שלא היה מנותק, סוללה מרוחקת או שהצלחת להחליף את המקור בטלוויזיה שלהם? אני יודע שמבחינתי זה קורה לעתים קרובות למדי. אמנם ניתן לפתור את רוב הבעיות שלהם פשוט על ידי ריצה לחנות לכמה תעודות AA חדשות, אך לפעמים הן יכולות להנות מפתרון מותאם אישית יותר.
לדוגמה, סבא של חברתי קיבל טלוויזיה חדשה וניסינו ללמד אותו כיצד לשנות את המקור כדי שיוכל לעבור בין תקליטורי DVD לטלוויזיה - אך הוא פשוט לא הצליח להבין זאת. הוא מתמודד גם עם ראייה כושלת ואינו מעוניין יותר מדי לנסות לזכור תהליכים מסובכים, הוא רק רוצה לצפות בתוכניות שלו מתי שהוא רוצה. לאחר שניסיתי להסביר בשלווה את השלבים בביקורנו האחרון ללא הצלחה רבה, החלטתי שאעשה לו רק שלט רחוק פשוט עם שני כפתורים. זה יאפשר לו לשנות את מקור הקלט בטלוויזיה שלו ללא כאבים, ולעבור בקלות בין תקליטורי ה- DVD האהובים שלו של Matlock לבין Price is Right.
שלב 1: חומרים
- PhidgetIR
- PhidgetSBC4 (או כל מחשב לוח יחיד כמו ה- Raspberry Pi)
- מלחם
- חותכי צד
- חשפניות חוטים
- חוטי מגשר
- כבל יו אס בי
- כבל פידג'ט
- קַרפִּיף
- כותרות דרך חורים
- צינורות לכווץ חום
שלב 2: תכנון
כדי ליצור את השלט, הייתי צריך את היכולת לשלוח פקודות אינפרא אדום לצרכן (CIR) לטלוויזיה. החלטתי להשתמש ב- PhigetIR למשימה זו. ה- PhidgetIR הוא מכשיר נשלט USB בעל היכולת לשלוח ולקבל פקודות CIR כאחד. בחרתי בזה מכמה סיבות:
- רציתי לסיים את הפרויקט הזה בהקדם האפשרי ולהשתמש בו, כך שהמחשבה לפרוץ את האוסילוסקופ ולוח הלחם שלי לא הייתה מושכת. כמו כן, כמה סביר שמעגלי ההלחמה ביד שלי עדיין יעבדו בעוד שנה-שנתיים?
- ל- PhidgetIR יש את היכולת "ללמוד" פקודות CIR מה שהופך את הפיתוח לפשוט מאוד.
- אתה יכול להשתמש כמעט בכל שפת תכנות רגילה עם PhidgetIR. המשמעות היא שאוכל להשתמש ב- Java ולסיים דברים במהירות.
- לבסוף, אני עובד עבור Phidgets, כך שאני מרגיש בנוח עם ה- API, ותמיד יש מכשירים פנויים.
מכיוון שבחרתי להשתמש ב- PhidgetIR, הייתי צריך מחשב שיפעיל אותו. רציתי שהפרויקט הזה יהיה יישום עצמאי, ממש כמו שלט רגיל, כך שמחשב שולחני או מחשב נייד היה בחוץ. בחרתי להשתמש ב- PhidgetSBC4 (מחשב בעל לוח יחיד שבו פועל דביאן לינוקס), מכיוון שהוא אפשר לי להתממשק עם שני לחצני הלחיצה ללא חומרה נוספת. ניתן פשוט לחבר אותם ישירות לרכזת VINT המובנית. הערה: אתה יכול גם להשתמש ב- Raspberry Pi לפרויקט זה. לבסוף, בנוסף להיותו תפקודי, רציתי שהפרויקט הזה ייראה נהדר, אז החלטתי שיהיה צורך במארז מודפס בתלת מימד.
שלב 3: הדפסה תלת מימדית
עבור פרויקט זה, Geomagic שימשה את הדגם של המתחם. ישנם קבצי צעד תלת -ממד זמינים הן ל- PhidgetIR והן ל- PhidgetSBC4 אשר פישטו את התהליך. כמה החלטות התקבלו במהלך שלב זה בנוגע לגודל הפונקציונליות של המתחם:
- ל- PhidgetIR שני נוריות IR שצריך להפנות לכיוון הטלוויזיה כדי לשלוח פקודות. במקום לעצב את המארז סביב לוח ה- PhidgetIR, ניתן היה להסיר את נוריות ה- IR ולהדביק אותן לתוך החורים בצד המארז. לאחר מכן ניתן יהיה להתקין את לוח ה- PhidgetIR הרחק מנורות הלדים, תוך ניצול החלל הריק.
- מחברי VINT Hub ב- PhidgetSBC4 יכולים להיות כפופים כלפי מעלה, מה שיאפשר עדיין גישה לחיבורי כפתורי הלחיצה, וגם ימנע צורך ליצור מארז גדול יותר.
החלטתי גם להוסיף תווית לכפתורים ותווית המציינת את הכיוון שאליו היא צריכה לפנות, כך שנוריות ה- IR יופנו בכיוון הנכון. הדפסתי את המארז מתוך פלסטיק ABS שחור.
שלב 4: הרכבה - הסר את נוריות הלדים
נוריות ה- IR יודבקו בסופו של דבר לחורים בצד המארז. המשמעות היא שצריך קודם כל להסיר אותם.
שלב 5: הרכבה - הוסף כותרות חור
לאחר מכן, נוספו כותרות דרך חורים היכן שהנורות היו בעבר, מה שהקל על התחברות באמצעות חוט מגשר בעל 4 פינים. השתמש בצינורות לכווץ חום כדי למנוע מגע מקרי.
שלב 6: הרכבה - צרף נוריות
הדבק את הנורות לד הצד של המארז.
שלב 7: הרכבה - חבר את ה- PhidgetIR
חבר את ה- PhidgetIR למארז, וחבר את נוריות ה- LED.
שלב 8: הרכבה - הוספת כפתורים
צריך לחבר את כפתורי הלחיצה לרכזת VINT המובנית ב- PhidgetSBC, אז חתכתי כבל פידג'ט לשניים והלחמתי את הקצוות לכפתורים. שים לב שרק החוט הלבן (האות) והשחור (הקרקע) נדרשים.
שלב 9: הרכבה - חיבור הכל ביחד
נדרש קצת ניהול כבלים על מנת לקבל הכל ביחד, אולם המתחם עבד היטב.
שלב 10: תוכנה - קוד
יש צורך בקובץ Java יחיד לפרויקט זה שתוכל למצוא כאן. התוכנית משתמשת באובייקט PhidgetIR אחד ובשני אובייקטים של DigitalInput. אתה יכול ליצור אובייקטים אלה כך:
PhidgetIR ir = PhidgetIR (new);
DigitalInput tvButton = חדש DigitalInput (); DigitalInput otherButton = חדש DigitalInput ();
אובייקטים של קלט דיגיטלי ממופים ללחצן פיזי ברכזת VINT. אירועי צרף, ניתוק, שגיאה ושינוי מצב רשומים גם הם ל:
tv.setIsHubPortDevice (נכון);
tvButton.setHubPort (4); tvButton.addAttachListener (onAttachListener); tvButton.addDetachListener (onDetachListener); tvButton.addErrorListener (onErrorListener); tvButton.addStateChangeListener (onStateChangeListener); tvButton.open (); otherButton.setIsHubPortDevice (נכון); otherButton.setHubPort (5); otherButton.addAttachListener (onAttachListener); otherButton.addDetachListener (onDetachListener); otherButton.addErrorListener (onErrorListener); otherButton.addStateChangeListener (onStateChangeListener); otherButton.open ();
המאזין לשינוי המדינה שהוזכר לעיל נראה כך:
privateestatic DigitalInputStateChangeListener onStateChangeListener = new DigitalInputStateChangeListener () {@OverridepublicvoidonStateChange (DigitalInputStateChangeEvent disce) {
DigitalInput ch = (DigitalInput) disce.getSource (); נסה {if (ch.getHubPort () == 4 && disce.getState () == true) {tvButtonActivated = true;} אם (ch.getHubPort () == 5 && disce.getState () == true) {otherButtonActivated = true;}} catch (PhidgetException ex) {System.out.println ("שגיאה:"+ ex.getDescription ())}}}};
כאשר כפתור מופעל, קוד האירוע יופעל ויציב דגל. דגלים אלה יופנו ויאופסו בלולאה הראשית. הלולאה הראשית פשוט ממתינה לשינוי במצב הכפתור ולאחר מכן שולחת פקודות IR באמצעות פונקציית השידור הזמינה מ- PhidgetIR API.
בעוד (נכון) {if (tvButtonActivated) {
tvButtonActivated = false; Log.log (LogLevel. INFO, "שינוי מקור - טלוויזיה"); ir.transmit (sourceButtonString, codeInfo); Thread.sleep (500); ir.transmit (rightButtonString, codeInfo); Thread.sleep (500); ir.transmit (enterButtonString, codeInfo);} אם (otherButtonActivated) {otherButtonActivated = false; Log.log (LogLevel. INFO, "שינוי המקור - DVD"); ir.transmit (sourceButtonString, codeInfo); Thread.sleep (500); ir.transmit (leftButtonString, codeInfo); Thread.sleep (500); ir.transmit (enterButtonString, codeInfo);} Thread.sleep (250);}
שלב 11: תוכנה - פקודות CIR
להלן דוגמה ליצירת פקודה (פקודה להגברת עוצמת הקול במקרה זה):
// קוד IR
IRCodeInfo sourceButtonCI = IRCodeInfo חדש (); String volumeUp = "77e1d0f0"; // הגדר לחצן מקור sourceButtonCI.bitCount = 32; sourceButtonCI.encoding = IRCodeEncoding. SPACE; sourceButtonCI.gap = 108921; sourceButtonCI.trail = 549; sourceButtonCI.zero = newint [2]; sourceButtonCI.zero [0] = 549; sourceButtonCI.zero [1] = 627; sourceButtonCI.one = newint [2]; sourceButtonCI.one [0] = 549; sourceButtonCI.one [1] = 1755; sourceButtonCI.header = newint [2]; sourceButtonCI.header [0] = 9084; sourceButtonCI.header [1] = 4600; sourceButtonCI.repeat = newint [3]; sourceButtonCI.repeat [0] = 9084; sourceButtonCI.repeat [1] = 2308; sourceButtonCI.repeat [2] = 549; sourceButtonCI.length = IRCodeLength. CONSTANT;
על מנת לקבל את המידע עבור פקודה זו, פשוט השתמשתי בדוגמה PhidgetIR המצורפת לספריות Phidget. לאחר הפניית השלט לכיוון PhidgetIR והחזקת לחצן הגברת עוצמת הקול, ה- IR "לומד" את הקוד ומאכלס את הדוגמה. לאחר מכן ניתן להעתיק מידע זה לתוך הקוד.
שלב 12: הפעלת התוכנית
ניתן לכתוב ולערוך את קובץ הג'אווה במחשב חיצוני. מקם את PhidgetRemote.java ו- phidget22.jar באותה תיקייה והפעל את הפקודה הבאה:
Windowsjavac -classpath.; Phidget22.jar PhidgetRemote.java
macOS/Linuxjavac -classpath.: phidget22.jar PhidgetRemote.java
לאחר ההרכבה, העתק את קבצי המחלקה שנוצרו ל- PhidgetSBC4 והגדר אותו להפעלה בעת אתחול.
שלב 13: תוצאה
כשנתתי את השלט לסבא של חברתי והראיתי לו כיצד להשתמש בו, הוא נדהם עד כמה זה פשוט. צפה בסרטון כדי לראות אותו בפעולה!
פרס שלישי בתחרות שלט רחוק 2017
מוּמלָץ:
מחלת פרקינסון טכנולוגיה לבישה: 4 שלבים
מחלת פרקינסון טכנולוגיה לבישה: יותר מעשרה מיליון אנשים ברחבי העולם חיים עם מחלת פרקינסון (PD). הפרעה במערכת העצבים המתקדמת הגורמת לנוקשות ומשפיעה על תנועת המטופל. במילים פשוטות יותר, אנשים רבים סבלו ממחלת פרקינסון אך
טכנולוגיה מסייעת לקשיי דיבור באמצעות MakeyMakey W/ Scratch: 4 שלבים
טכנולוגיה מסייעת לקשיי דיבור באמצעות MakeyMakey W/ Scratch: המכשיר הטכנולוגי המסייע שלי משמש לעזרה עם לקויות דיבור או דיבור מוגבל. זה. נועד לסייע בתהליך הלמידה
D4E1 - עשה זאת בעצמך - טכנולוגיה מסייעת: מגש לכיסא גלגלים מתכוונן: 7 שלבים (עם תמונות)
D4E1 - עשה זאת בעצמך - טכנולוגיה מסייעת: מגש לכיסא גלגלים מתכוונן: לקייל יש נכות מולדת: quadriparesis דיסקינטית ואינו מסוגל לאכול בעצמו. הוא זקוק לעזרתו של מוניטור, מרפא בעיסוק, המאכיל אותו. זה כולל שתי בעיות: 1) המרפא בעיסוק עומד מאחורי ההגה
D4E1 - עשה זאת בעצמך - טכנולוגיה מסייעת: 'סיוע בקנה מידה 2018': 7 שלבים
D4E1 - עשה זאת בעצמך - טכנולוגיה מסייעת: 'סיוע בקנה מידה 2018': ורוניק היא אישה בת 36 המועסקת ב " Het Ganzenhof " בגלל התסמונת המולדת שלה (רובינשטיין-טייביי). כאן היא לוקחת על עצמה את המשימה לסייע בביצוע מתכונים על ידי שקלול כמויות. תהליך זה תמיד נעשה
לוח תאורה מותאם אישית לביש (קורס חקר טכנולוגיה - TfCD - Tu Delft): 12 שלבים (עם תמונות)
לוח תאורה מותאם אישית לביש (קורס חקר טכנולוגיה - TfCD - Tu Delft): במדריך זה תלמד כיצד ליצור תמונה מוארת משלך שתוכל ללבוש! זה נעשה על ידי שימוש בטכנולוגיית EL המכוסה במדבקת ויניל והצמדת להקות אליו כך שתוכל לענוד אותו סביב זרועך. אתה יכול גם לשנות חלקים מדף זה