תוכן עניינים:
- שלב 1: אב טיפוס ראשון
- שלב 2: אב טיפוס מס '2
- שלב 3: אב טיפוס מס '3
- שלב 4: חלקים
- שלב 5: סכמטי
- שלב 6: ה- Protoboard
- שלב 7: מיקום רכיבים
- שלב 8: חוטים
- שלב 9: חוטים נוספים
- שלב 10: מנוע רטט
- שלב 11: אחרון אבל לא פחות …
- שלב 12: תוכנה
- שלב 13: מארז
- שלב 14: מה עכשיו?
וִידֵאוֹ: מכ"ם היקפי ללקויי ראייה: 14 שלבים
2024 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2024-01-30 09:16
כתוצאה מתאונה איומה, חבר שלי איבד לאחרונה את ראייתו בעינו הימנית. הוא היה מחוץ לעבודה במשך זמן רב וכשחזר הוא אמר לי שאחד הדברים הכי מרתיעים שהוא צריך להתמודד איתו הוא חוסר הידיעה מה בצד ימין שלו. ראייה פחות היקפית פירושה התנגשות בדברים ובאנשים. זה הטריד אותי. החלטתי שחייב להיות משהו שאנו יכולים לעשות.
רציתי לבנות מכשיר שיכול למדוד מרחק לחפצים בצד ימין של חבר שלי. התוכנית שלי היא להשתמש במנוע האפט כדי לרטוט את המכשיר ביחס הפוך למרחק לאובייקט. ואז אם חפצים היו רחוקים המנוע לא היה רוטט וכאשר אובייקט קרוב יותר, הוא היה מתחיל לרטוט ברמה נמוכה. אם האובייקט היה קרוב הוא היה רוטט ברמה גבוהה בהרבה (או באיזו רמה שתרצו). המכשיר צריך להיות קטן מספיק בכדי לתלות בצד של המשקפיים כשהחיישן מצביע ימינה. חבר שלי היה שם את המכשיר בצד ימין של המשקפיים שלו אבל כמובן שמישהו אחר יכול להיות שזה הצד השמאלי.
נזכרתי שיש לי כמה חיישני מרחק אקוסטיים בבית. אבל, הם קצת גדולים ומגושמים, פחות מדויקים וסביר שהם יהיו כבדים מדי לשימוש על משקפיים. התחלתי לחפש משהו אחר.
מה שמצאתי היה חיישן זמן הטיסות ST Electronics VL53L0X. זהו לייזר אינפרא אדום וגלאי אינפרא אדום באריזה אחת. הוא פולט דופק של אור לייזר מחוץ לטווח הגלוי לאדם (940 ננומטר) ומתעד את הזמן שחלף כדי לזהות את הדופק המוחזר. הוא מחלק את הזמן הזה ב -2 וכפול במהירות האור המייצרת מרחק מדויק מאוד במילימטרים. החיישן יכול לזהות מרחק עד 2 מטרים אך כפי שראיתי, מטר אחד הוא אופטימלי יותר.
כפי שזה קורה, ל- Adafruit יש לוח פריצה VL53L0X. אז הייתי צריך מנוע רוטט, שגם להם היה, ובקרון מיקרו כדי להפעיל את כל זה. במקרה היה לי PJRC Teensy 3.2 בהישג יד. בעוד שהוא גדול מכפי שרציתי היה לו את היכולת להיות משעון במהירות איטית. רציתי להוריד את מהירות השעון כדי לחסוך בחשמל. ומבחינת מקור כוח, היה לי ווסת דחיפה של Sparkfun בתיבת הגרוטאות שלי יחד עם מחזיק סוללות AAA. היה לי כמעט כל מה שהייתי צריך.
שלב 1: אב טיפוס ראשון
לקחתי את החלקים שהיו לי ביד ויצרתי אב טיפוס כף יד של המכשיר שדמיינתי. הדפסתי תלת מימד את הידית ואת לוחית ההרכבה והלחמתי את כל האלקטרוניקה על לוח לוח Adafruit. חיברתי את המנוע הרוטט ל- Teensy באמצעות טרנזיסטור NPN 2N3904. הוספתי פוטנציומטר שישמש לקביעת המרחק המרבי שהמכשיר יגיב אליו.
היה לי אותו פועל בסוף השבוע הבא (ראו את התמונה למעלה). זה לא היה יפה אבל זה הוכיח את העיקרון. חבר שלי יכול להחזיק את המכשיר בצד ימין שלו ולבדוק אם המכשיר יהיה שימושי או לא כדי לעזור לחדד את מבוקשו עבור תכונות.
שלב 2: אב טיפוס מס '2
לאחר אב הטיפוס הראשון ביד התחלתי ליצור גרסה קטנה יותר. רציתי להתקרב למטרה שלי ליצור משהו שיכול להתאים למשקפיים. ה- Teensy בה השתמשתי בגרסת כף היד אפשרה לי להאט את השעון כדי לחסוך בחשמל. אבל הגודל עומד להיות גורם ולכן עברתי ל- Adafruit Trinket M0. קצב השעון שלו הוא 48 מגה -הרץ, אך ניתן לשעון את מעבד ה- ARM עליו הוא מבוסס לאט יותר. על ידי שימוש במתנד RC הפנימי הוא יכול לפעול במהירות 8, 4 2 ואפילו 1 מגה -הרץ.
אב טיפוס מס '2 הגיע די מהר כיוון שהיה לי הכל ביחד בסוף השבוע הבא. המעגל היה זהה לאב טיפוס מס '1 למעט ARM M0. הדפסתי תלת -ממד מארז קטן והנחתי מדריכים על הגב כך שניתן יהיה להחליק אותו על כוסות. ראו את התמונה למעלה. בתחילה הוא משועבד בקצב של 48 מגה -הרץ.
שלב 3: אב טיפוס מס '3
אז ההוראה הזו באמת מתחילה כאן. החלטתי להכין אב טיפוס אחרון. אני מחליט לסחוט אותו עד כמה שאני יכול שלא להשתמש ב- PWB מותאם אישית (לשם אני בטוח שאליו פנינו). שאר מדריך זה יעסוק בלראות אותך כיצד להכין אחד. בדיוק כמו אנשים שעושים ידיים מודפסות תלת מימד לילדים עם מוגבלויות, התקווה שלי היא שאנשים יכינו את זה לכל מי שיש לו אובדן ראייה דומה בעין.
שמרתי על רשימת החלקים זהה לאב טיפוס מס '2 אך החלטתי להסיר את הפוטנציומטר. אחרי שדיברתי עם חבר שלי החלטנו לעשות את המרחק המרבי באמצעות תוכנה. מכיוון שיש לי את היכולת להשתמש בחיישן מגע באמצעות ה- Teensy, תמיד נוכל להפוך את המרחק המרבי להגדרה על ידי נגיעה. מגע אחד קובע מרחק קצר, או יותר נגיעה למרחק ארוך יותר, נגיעה נוספת את המרחק הארוך ביותר ואז לנגיעה נוספת, עוטפים בחזרה להתחלה. אבל בהתחלה נשתמש במרחק קבוע כדי לצאת לדרך.
שלב 4: חלקים
עבור אב טיפוס זה הייתי צריך לוח קטן יותר. הלכתי עם פרוטובורד Sparkfun (PRT-12702) מכיוון שממדיו קטנים (בערך 1.8 "X 1.3") יהיו בגודל טוב לצלם.
הייתי צריך להשתמש במשהו אחר מלבד סוללת AAA כמקור כוח. LiPo נראתה כמו הבחירה הנכונה מכיוון שהיא תהיה בעלת קיבולת אחסון ומשקל קל. ניסיתי תא מטבע אך לא היה לו מספיק כוח להתמודד עם המנוע לאורך זמן רב. בחרתי ב- LiPo קטן בעל קיבולת של 150 מיליאמפר / שעה.
התכוונתי להישאר עם ה- Trinket M0 וכמובן, לוח הפריצה VL53L0X.
כעת, לאחר שהגענו לפרטים, הנה רשימה של חלקים לאב טיפוס זה:
חיישן מרחק טיסה של Adafruit VL53L0X - מזהה מוצר: 3317 Adafruit - דיסק מיני מוטורי רוטט - מזהה מוצר: 1201 Adafruit - סוללת ליתיום יון פולימר - 3.7v 150mAh - מזהה מוצר: 1317 SparkFun - לוח לחם מסוג הלחמה - מיני - PRT -12702 Sparkfun - מחבר זווית ישרה JST - חור דו -פיני - PRT -09749 נגד 10K אוהם - ג'אנקבוקס (תסתכל על הרצפה שלך) טרנזיסטור NPN 2N3904 - ג'אנקבוקס (או טלפון חבר) כמה חוט חיבור (השתמשתי 22 מד תקוע)
כדי לטעון את סוללת ה- LiPo לקחתי גם:
Adafruit - Micro Lipo - מטען USB LiIon/LiPoly - v1 - מזהה מוצר: 1304
שלב 5: סכמטי
הסכימה של מכשיר זה מוצגת למעלה. קלט המגע יהיה לגרסה עתידית אך הוא מוצג בסכימה בכל מקרה. כמו כן, הנגד 10K בין ה- Trinket M0 לבסיס ה- 2N3904 מספק בסיס מספיק מספיק כדי להפעיל את המנוע מבלי לטרוק אותו חזק מדי.
להלן תיאור הרכבה שלב אחר שלב.
שלב 6: ה- Protoboard
רבים מכם בעלי ניסיון יודעים זאת, אך הם מיועדים לאנשים שעשויים להיות חדשים בתחום הלחמת פרוטובארדס:
לוח ה- Sparkfun (PRT-12702) המוצג לעיל כולל 17 עמודים (קבוצות) של 5 סיכות בכל צד של מרווח של שלוש עשיריות סנטימטר. כל טור אנכי של 5 סיכות משני צדי הפער משותף זה לזה. בכך אני מתכוון שכל חיבור לסיכה בקבוצה הוא חיבור לכל סיכה אחרת בקבוצה. עבור לוח זה, זה לא נראה מובן מאליו, אך תוכל לאמת זאת אם אתה משתמש ב- DVM (מד וולט דיגיטלי). אם אתה מסתכל על הגב אתה יכול פשוט להבין את העקבות המחברות בין הקבוצות.
שלב 7: מיקום רכיבים
אתה כנראה צריך להלחים רצועות סיכות הן ל- Trinket M0 והן ל- VL53L0X. שתיהן מגיעות עם הרצועות אך יש להלחין אותן. ל- Adafruit יש הוראות במרכז הלמידה שלה לשני החלקים האלה. אם אתה חדש בתחום זה, אנא עבור לשם (כאן וכאן) לפני הלחמת הרצועות על הלוחות. רצועות הסיכה מספקות פרופיל נמוך יותר משקע.
הדבר הראשון שיש לקחת בחשבון בעת הלחמת משהו על לוח לוח עם שטח מוגבל הוא מיקום רכיבים. הנחתי את ה- Trinket ואת ה- VL53L0X במיקומים המוצגים באיור למעלה. ל- Trinket סיכות משני קצוות הלוח אך ל- VL53L0X 7 סיכות כולם בקצה אחד של הלוח. הצד של VL53L0X שאין לו סיכות נשתמש בו לחיבור כמה רכיבים … כפי שנראה.
הלחמתי גם את מתג השקופיות למצב והלחמתי את ה- 2N3904. החשיכתי את החורים שבהם חלקים אלה ממוקמים, ובשני ה- 2N3904 ציינתי אילו סיכות הן האספן, הבסיס והפולט. כאשר אתה מלחם אותו לראשונה עליך להשאיר אותו בניצב ללוח כך שתוכל להלחם חיבורים אחרים. מאוחר יותר תוכל לכופף אותו (בזהירות) כך שהוא יהיה קרוב יותר לשטיפה עם הלוח.
הערה: פריצת הסוללה של JST איננה נלחמת ללוח בשלב זה. הוא יומלח על גב הלוח אך רק לאחר שנלחם את החיבורים האחרים שלנו. זה יהיה הדבר האחרון שנלחם.
שלב 8: חוטים
התרשים לעיל מראה שוב את לוח הלוח עם חורים כהים שבהם ימוקמו רכיבים. הוספתי להם את התוויות לאורך הקצוות כדי להקל על החיווט. שים לב שמנוע הרטט מוצג אך הוא יהיה ממוקם בצד האחורי של הלוח ויהיה מחובר כמעט אחרון אז לעת עתה, פשוט התעלם ממנו. אני גם מציג את פריצת הסוללה של JST עם קו מקווקו. כפי שזוהה בשלב הקודם, אל תחבר אותו אך אנא השאר את 4 החורים בחלקו העליון של הלוח פתוח (כלומר אל תלחם להם).
אני מניח שבשלב זה אתה יודע להפשיט בידוד מחוט, להדוף את הקצוות בעזרת הלחמה והלחמה ללוח. אם לא, אנא ראה את אחד ממדריכי ההלחמה.
עבור שלב זה, חוטי הלחמה כפי שמוצג בצהוב. נקודות הסיום הן החורים שאליהם כדאי להלחים אותם. כמו כן, עליך להלחים את הנגד של 10K אוהם ללוח כפי שמוצג. החיבורים המתבצעים הם:
1. חיבור ממסוף החיובי של הסוללה למסוף COMmon (מרכז) של מתג השקופיות. צד אחד של מתג השקופיות יצור קשר עם כניסת ה- BAT ל- Trinket. הרגולטור המשולב של ה- Trinket מייצר 3.3V ממתח הכניסה BAT.
2. חיבור מהמסוף השלילי (הארקה) של הסוללה לקרקע של ה- Trinket.
3. חיבור מהמסוף השלילי (הקרקע) של הסוללה לפולט של ה- 2N3904
4. חיבור מהפין של ה -3.3 וולט (3V) של הטרינקט ל- VIN של ה- VL53L0X. ה- VL53L0X תסדיר זאת עוד יותר ל -2.8 וולט לשימוש עצמי. זה גם מוציא את המתח הזה לסיכה אבל אנחנו לא צריכים אותו כך שהוא לא יישאר מחובר.
שלב 9: חוטים נוספים
אז עכשיו נוסיף את קבוצת החוטים הבאה כפי שמוצג למעלה. להלן רשימה של כל חיבור:
1. חיבור מהסיכה של ה- Trinket המסומן כ- 2 לסיכה SCL VL53L0X. זהו אות השעון I2C. פרוטוקול סדרתי I2C הוא מה שמשמש את ה- Trinket לתקשר עם ה- VL53L0X.
2. חיבור מהסיכה של ה- Trinket המסומן כ- 0 (אפס) לסיכת ה- SDL VL53L0X. זהו אות הנתונים I2C.
3. חיבור מהסיכה VL53L0X GND לרוחב הפער בלוח הבקרה לפולט של ה- 2N3904. זה מספק קרקע ל- VL53L0X.
4. חיבור מהסיכה של ה- Trinket המסומן כ- 4 לנגד 10K. זהו הכונן של מנוע הרטט. חוט זה בהחלט צריך להיות מולחם על הצד האחורי של הלוח אם תבחר את נקודת החיבור שלי.
זכור כי כל קבוצה אנכית של 5 סיכות משותפת זו לזו, כך שתוכל להתחבר לכל מקום בקבוצה הנוחה. תוכלו להבחין בתמונות הלוח שלי שיניתי כמה מנקודות החיבור שלי. כל עוד הם החיבור הנכון, אז כל כרית שתבחר היא בסדר.
שלב 10: מנוע רטט
מנוע הרטט מגיע עם מדבקה הניתנת לניתוק על הגב. אתה מוריד את זה כדי לחשוף חומר דביק המאפשר להדביק את המנוע על גב הלוח (אבל, ראה הערה למטה לפני שתדביק אותו). הנחתי אותו משמאל (מסתכל בחלק האחורי של הלוח) של לוח פריצת הסוללות של JST שעדיין לא צירפנו. אז, השאר קצת מקום ללוח פריצת הסוללות של JST. רציתי גם לוודא שמארז המתכת של המנוע לא יקצר סיכות לרוחב הפרוטובארד. אז, חתכתי חתיכה קטנה של סרט דו צדדי והדבקתי אותו בחלק האחורי של הצד הדביק של מנוע הרטט. אחר כך דחפתי את זה לחלק האחורי של הלוח. זה עוזר לשמור על מארז המתכת גבוה והרחק מכל סיכות. אבל בכל זאת, היזהר למקם אותו באופן שלא יקצר סיכות.
הלחם את החוט האדום של מנוע הרטט לפין 3V של התכשיט. החוט השחור של מנוע הרטט מולחם לאספן ה- 2N3904. כאשר התוכנה לוחצת על 2N3904 (מספק לוגיקה 1 כ -3.3 וולט) הטרנזיסטור נדלק בחיבור החוט השחור של מנוע הרטט לקרקע (או קרוב אליו). זה גורם למנוע לרטוט.
יכולתי להוסיף קצת קיבול בנקודת החיבור של החוט האדום של מנוע הרטט. אבל יש קיבול בקו 3.3V של ה- Trinket אז אני בטוח שזה בסדר אבל אם אתה רוצה להוסיף עוד קיבול אתה יכול … כל עוד אתה יכול לסחוט אותו פנימה. לצורך העניין החוט האדום עלול להתחבר ישירות לצד החיובי של סוללת LiPo. בחרתי בצד 3.3V כדי לשמור על המתח קבוע. עד כה נראה שזה עובד מצוין.
שלב 11: אחרון אבל לא פחות …
אחרון נחבר את לוח פריצת הסוללה JST לצד האחורי של לוח הלוח. הלחמתי סיכות על הלוח והנחתי את לוח הפריצה של סוללת JST כשהצד העליון שלו פונה ללוח הבקרה כפי שמוצג למעלה. וודא שהלחמת את החוטים לסוללה חיובית ונטחנת לפינים הנכונים בעת הצבת החלק הזה. אם אתה טועה תוכל להפוך את הקוטביות לחלקים וסביר להרוס את כולם. אז אנא, בדוק ובדוק שוב לפני הלחמה וחיבור הסוללה.
שלב 12: תוכנה
כדי להתקין ו/או לשנות את התוכנה תזדקק ל- Arduino IDE וקובצי הלוח עבור ה- Trinket M0 וכן את הספריות של VL53L0X. כל זה כאן, כאן, וכאן.
עקוב אחר ההוראות לשימוש ב- M0 Adafruit באתר הלמידה שלהם כאן.
לאחר טעינת התוכנה הלוח צריך להתחיל ולהריץ בחיבור הטורי USB. הזז את דופן הלוח עם ה- VL53L0X קרוב לקיר או לידך ואתה אמור להרגיש את המנוע רוטט. הרטט אמור לרדת במשרעת ככל שהאובייקט נמצא רחוק יותר מהמכשיר.
התנהגות הנראית במכשיר מוסברת במקצת בהערות בקוד המקור. אבל הגרף המצורף אמור להבהיר נקודה זו היטב. המכשיר לא צריך להתחיל לרטוט עד כ- 863 מ"מ מאובייקט. הוא יגיע לרמת הרטט המרבית שלו ב -50 מ"מ מאובייקט. אם אתה מתקרב יותר לאובייקט מ -50 מ"מ המכשיר לא ייצור רעידות יותר מכפי שהוא עושה ב -50 מ"מ.
שלב 13: מארז
עיצבתי מארז והדפסתי אותו בתלת מימד בפלסטיק ABS. אתה יכול להדפיס אותו ב- PLA או ABS או כל חומר שאתה רוצה. אני משתמש ב- ABS מכיוון שאני יכול לרתך חתיכות אצטון על הלוח במידת הצורך. הלוח שעיצבתי הוא פשוט ויש לו חור ליציאת ה- USB בתכשיר וחור למתג ההפעלה. גרמתי לשני הלוח להצמד יחד עם זרועות קטנות בצידי הקופסה. אני לא כל כך אוהב את זה אז סביר שאשנה את זה. כמובן שאתה יכול לבצע כל שינוי שתרצה לראות.
כרגע עבור גרסה זו, יש לפתוח את הקופסה כדי לנתק את סוללת ה- LiPo כדי להטעין אותה. אם אכן אעשה לוח מעגלים לפרויקט זה אוסיף מחבר נוסף כדי להנגיש את הסוללה מבלי לפתוח את הקופסה. יתכן שניתן לעשות זאת בעיצוב פרוטובורד זה ולעשות חור למחבר לטעינה. אם אתה רוצה לנסות את זה אנא שתף את התוצאות שלך.
הצלחתי לעצב קופסה שלא לגמרי שנאתי. נשתמש בזה כדי לבדוק את המערכת. צירפתי את החלק העליון והתחתון של התיבה כקבצי STL וכן את הסוגר/המדריך שהוספתי את החלק התחתון. הוספתי זוג מדריכים באמצעות אצטון כדי לרתך את החלקים כימית. אם אתה עושה זאת, היזהר. אתה יכול לראות את ההרכבה למעלה.
שלב 14: מה עכשיו?
בדוק אותי … אני זקן ואולי שכחתי משהו או התבלבל. אני קורא מחדש ובודק את זה אבל עדיין אני יכול לפספס דברים. אתה מוזמן לספר לי מה שעשיתי/עשיתי לא בסדר.
ועכשיו, לאחר שבנית את לוח המכ ם ההיקפי והעמסת אותו וסוללת ה- LiPo נמצאת במארז מודפס בתלת -ממד נחמד (כשאני מסיים אותו, או אם עשית משלך), מה אתה עושה הלאה? אני חושב שכדאי שתקבל ניסיון עם אופן פעולתה ותבצע שינויים בתוכנה. הסכם הרישיון בתוכנה קובע שאתה יכול להשתמש בו אך אם אתה מבצע שינויים כלשהם עליך לשתף אותם. אני לא אומר שהתוכנה לפרויקט הזה מסובכת או מדהימה בדרך כלשהי. הוא משיג את מטרותיו אך יש מקום לשיפור. עזור לשפר את המכשיר הזה ולשתף אותו עם כולנו. זכור, הפרויקט כולו עוזר לאנשים. אז תעזור!
מוּמלָץ:
נעל כפויה ללקויי ראייה: 12 שלבים
נעליים כפויות ללקויי ראייה: ברחבי העולם ישנם יותר מ 37 מיליון לקויי ראייה. רוב האנשים האלה משתמשים במקל, מקל או תלויים באדם אחר כדי לנסוע. זה לא רק מקטין את התלות העצמית שלהם, אלא גם במקרים מסוימים זה פוגע בעצמם
מחולל וחיישן DIY היקפי: 8 שלבים
מחולל וחיישן DIY היקפי: טכנולוגיית הנחיית חוטים נמצאת בשימוש נרחב בתעשייה, במיוחד במחסנים בהם הטיפול הוא אוטומטי. הרובוטים עוקבים אחר לולאת תיל הקבורה באדמה. זרם חילופין בעוצמה ותדירות נמוכה יחסית בין 5Kz ל -40
שימוש בסונאר, לידר וראיית מחשבים על בקרי מיקרו כדי לסייע ללקויי ראייה: 16 שלבים
שימוש בסונאר, לידר וראיית מחשבים על בקרי מיקרו כדי לסייע ללקויי ראייה: אני רוצה ליצור 'מקל' אינטליגנטי שיכול לעזור לאנשים עם ליקויי ראייה הרבה יותר מאשר פתרונות קיימים. המקל יוכל להודיע למשתמש על אובייקטים מלפנים או בצדדים על ידי רעש בקול האוזניות מסוג צליל היקפי
מכשיר ללקויי ראייה: 4 שלבים
מכשיר ללקויי ראייה: הדרכה זו מבוססת על פרויקט ארדואינו בקוד פתוח עבור חכם וטלפון המסייע לעיוורים ללכת לבד בכל מקום בעזרת כניסות הניתנות באמצעות חיישן מכשולים ומתן משוב באמצעות haptics (מנוע רטט). T
צליל היקפי מסטריאו 3.5 מ"מ: 3 שלבים
צליל היקפי מסטריאו 3.5 מ"מ: מדריך זה מתאר כיצד בניתי מערכת סראונד לשימוש עם פלט סטריאו של 3.5 מ"מ. המטרה היא להרחיב את חווית צליל הסראונד מכל פלט אוזניות סטריאו 3.5 מ"מ באיכות ופשטות. עובד נהדר עם מחשבים אישיים, MP3 MP3