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

עכבר 3D AIR - Arduino + עיבוד: 5 שלבים
עכבר 3D AIR - Arduino + עיבוד: 5 שלבים

וִידֵאוֹ: עכבר 3D AIR - Arduino + עיבוד: 5 שלבים

וִידֵאוֹ: עכבר 3D AIR - Arduino + עיבוד: 5 שלבים
וִידֵאוֹ: Octopus Max EZ v1.0 - EZ5160 2024, יולי
Anonim
עכבר 3D AIR | Arduino + עיבוד
עכבר 3D AIR | Arduino + עיבוד

עכבר AIR תלת מימד | Arduino + Processing אני סטודנט לעיצוב תעשייתי, ובשנה שעברה במסגרת קורס בשם "טכנולוגיה כחומר RAW" בניתי את הפרויקט הזה כעבודה אחרונה שלי. אני עובד רוב הזמן עם SolidWorks, תוכנת CAD לעיצוב ומחולל.. סיבוב גוף מוצק על המסך מתבצע באמצעות לחצן העכבר האמצעי. חיפשתי משהו יותר אינטואיטיבי. כך עשיתי בסופו של דבר את עכבר האוויר התלת -ממדי, שבו הסיבוב בפועל של אובייקט מתבצע על ידי הזזת העכבר באמצע האוויר על כל 3 הצירים - באותו אופן שהיית מסובב את האובייקט אם אתה מחזיק אותו ביד. השתמשתי בארדואינו, כמה חיישנים ושרטוט עיבוד. הערות:- נכון לעכשיו, זו רק הדגמה של הרעיון, מכיוון שאין ממש תוסף לעבודה עם SolidWork (אבל כמובן, אתה מוזמן כתוב אחד אם אתה יודע איך:)- מכיוון שכל החומרה לא הייתה שלי, עכבר התלת מימד בפועל נעלם מזמן, ואני משתמש בכמה תמונות ווידאו כדי לנסות להבין קצת את כל זה, ולתת לך קצת רעיון אם אתה רוצה לנסות ולבנות אחד בעצמך … תהנה מזה … (זה ההוראה הראשון שלי) להלן הדגמת וידאו של הפרויקט המוגמר

שלב 1: חומרה ודברים

חומרה ודברים
חומרה ודברים
חומרה ודברים
חומרה ודברים
חומרה ודברים
חומרה ודברים
חומרה ודברים
חומרה ודברים

זה לא הכי זול להוראה מכיוון שהוא מבוסס על מד תאוצה 3 צירים + חיישן מצפן. דברים שתצטרכו:* עכבר - משומש טוב יותר (רק כי הוא בשימוש וזול יותר), כל עכבר צריך לעשות. אתה צריך שיהיה לך קצת מקום לאכסן את החיישנים וכמה חוטים נוספים, אז אל תלך על עכברים דקים / זעירים במיוחד.* מודול מצפן עם פיצוי הטיה - HMC634 - זהו חיישן 3 הצירים, שנרכש ב- SpurkFun ב ~ 149 $* ממיר רמה לוגית - חובה! מכיוון שה- Arduino הוא 5V וחיישן 3 הצירים הוא 3.3V, אתה צריך אחד מאלה כדי להמיר את ה- 5V ל- 3.3V. יש לו שם גדול, אך הוא עולה 1.95 $ בלבד ב- SpurkFun.* גלאי אופטי / פוטו טרנזיסטור גדול - זהו חיישן אופטי פשוט, המשמש בפרויקט זה כדי לזהות מתי העכבר מורם ממשטח העבודה. נקנה ב- SpurkFun תמורת 2.25 $ אם אין לך מספיק מקום לאכסן את זה בתוך העכבר שבחרת, תוכל להשתמש בזה, קטן וזול יותר. * LED אחד (1) - לא משנה מה הצבע, בהיר במיוחד יעבוד טוב יותר.* 2 נגדים - אחד (1) x 100Ω ואחד (1) x 100KΩ (לחיישן האופטי)* לוח Arduino - DA! השתמשתי בדגם Diecimila. Duemilanove חדש זמין ב- SpurkFun תמורת כ -29.95 $ (אמור לעבוד גם הוא) + תוכנת Arduino מותקנת.* תוכנת עיבוד תוכנה.* קוד המקור של הפרויקט (אל תדאג, תוכל להוריד אותו תוך שניות.) בנוסף: כמה דבק חם (כדי לתקן דברים במקומם) כמה ברגים זעירים. בערך 10 ס"מ של עוגן עץ 6 מ"מ (Dia.) כמה חוטים נוספים. מלחם. משהו לחתוך איתו את הפלסטיק השתמשתי בסכין חיתוך ובקובץ (לעיצוב). ("אוקיי, אל תשנא אותי על הצעד הזה, אנגלית היא השפה השנייה שלי, אם טעיתי בשפה זו, אני מצטער, אני בטוח שתבין במה אני מתייחס תוך שניות. אתה תראה את זה בתמונות ")

שלב 2: אלקטרוניקה

מכשירי חשמל
מכשירי חשמל
מכשירי חשמל
מכשירי חשמל

הכל צריך להיות מולחם יחד … במובן מסוים … הערה: חיישן 3 הצירים הוא דבר קטן יקר בדוק את החיווט לפני שתפעיל את הכל … ראה את התרשימים המצורפים לכל החיווט המשמש בפרויקט זה. קוד המקור המצורף יכול לעבוד רק אם אתה משתמש באותם מספרי סיכה שעשיתי, אך אל תהסס לשנות את אלה בעת חיבור כל עוד אתה משנה את המספרים המתאימים בקוד. חיבור חיישן 3 הצירים לממיר הרמה הלוגית: חיישן VCC -> Arduino 3V3Sensor GND -> Arduino GndSensor SDA -> ממיר TXI (Chan1) ממיר TXO (Chan1) -> Arduino ANALOG IN 4Sensor SCL -> ממיר TXI (Chan2) ממיר TXO (Chan2) -> Arduino ANALOG IN 5Converter GND (לפחות אחד מהם) -> Arduino GndConverter HV -> Arduino 5VConverter LV -> Arduino 3V3 חיישן אופטי ל- Arduino: ראה תמונה מצורפת Digital in = Pin 11 ב- ArduinoLED: GND לחלק GND (השתמשתי באחד החיישן האופטי)+ ל- PIN 13 של Arduino (הדבר בוצע מכיוון שלפין הזה כבר יש נגד מובנה, אם אתה משתמש בחיישן אחר, הקפד להשתמש בנגד כך שלא תשרוף את הנורית)

שלב 3: הכנת העכבר

הכנת העכבר
הכנת העכבר
הכנת העכבר
הכנת העכבר
הכנת העכבר
הכנת העכבר

כאן החיישנים מוצאים את מקומם בתוך בית העכבר. מצא את המקום הטוב ביותר לתקן את חיישן 3 הצירים. וודא שהוא מפולס ותשים לב לכיוון (תדע מתי יהיה לך החיישן ביד) אתה יכול לתקן אותו בכל דרך שתרצה, השתמשתי ב -2 חתיכות קצרות של עוגן העץ, קדוח כדי לקבל את 2 הברגים הקטנטנים., וחם מודבק ללוח הראשי של העכבר. עבור החיישן האופטי, צור חור מלבני בתחתית העכבר, הרעיון הוא שהחיישן "יראה" את הטבלה כל הזמן. כאשר העכבר מורם ומצב החיישן "פתוח" (אין טבלה לראות) העכבר עובר למצב תלת -ממדי (מפעיל את סקיצת העיבוד) מעצב חור נוסף לניתוב החוטים הנוספים (מהחיישנים לארדואינו) מתוך בית פלסטיק. שלי היה ממוקם בצד ימין של העכבר. תקן את הנורית היכן יופיע. בפרויקט זה ה- LED הוא מחוון מצב תלת מימד. אני מניח את שלי ליד גלגל עכבר הסיליקון. כאשר העכבר מורם, היה לגלגל זוהר כחול יפה.

שלב 4: קוד המקור

הקוד עבור הארדואינו נכתב על ידי שחר גייגר, המורה שלי, ושונה על ידי הפרויקט הזה. קוד קוביית התלת מימד הוא הקוד הבסיסי שנמצא באתר העיבוד. שיניתי אותו קצת. בקוד, נתח זה ממיר את המידע הגולמי שמגיע מהחיישן (בדרך כלל -180 עד 180 x 10) ל- 0-255 getHeading (); Serial.write ('x'); x = (x +1800) / 14; Serial.write (x); Serial.write ('y'); y = (y+1800) / 14; Serial.write (y); Serial.write ('z'); z = (z+1800) / 14; Serial.write (z); המידע מהחיישן ומהארדואינו עובר למערכון העיבוד של כל ציר נפרד, אך עם אות ציר קודמת (עבור exp. X12 Y200 Z130), הקוד הבא מוריד את האות ומשאיר רק את הערכים שיש לשלוח ל- COM port while (port.available () == 0) {} char reading = 0; while (קריאה! = 'x') {while (port.available () == 0) {} reading = (char) port.read ();} X = port.read (); while (קריאה! = 'Y') {while (port.available () == 0) {} reading = (char) port.read ();} Y = יציאה.read (); while (קריאה! = 'z') {while (port.available () == 0) {} reading = (char) port.read ();} Z = port.read (); נתח הקוד הזה מוריד את כל הערכים השליליים … אם ((X! = -1) && (Y! = -1) && (Z! = -1)) {rotateZ (-(float) Y/25.0); rotateX ((float) X/25.0); rotateY ((float) Z/25.0); pX = X; pY = Y; pZ = Z;} else {rotateZ (-(float) pY/25.0); rotateX ((float) pX /25.0);rotateY((float)pZ/25.0);} קובץ ה- ZIP המצורף הכיל קוד Arduino וקוד עיבוד

שלב 5: וידאו

זהו … זהו הפרויקט המוגמר בסרטון. יש תקלה קלה (אתה יכול לראות שהקובייה לפעמים "קופצת" בסרטון), זה בגלל ציר Z, אולי לא יקרה לך …

מוּמלָץ: