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

Measurino: גלגל מדידה הוכחת מושג: 9 שלבים
Measurino: גלגל מדידה הוכחת מושג: 9 שלבים

וִידֵאוֹ: Measurino: גלגל מדידה הוכחת מושג: 9 שלבים

וִידֵאוֹ: Measurino: גלגל מדידה הוכחת מושג: 9 שלבים
וִידֵאוֹ: More Equal Animals - by Daniel Larimer - audiobook read by Chuck MacDonald 2024, יולי
Anonim
Measurino: הוכחת קונספט של גלגל מדידה
Measurino: הוכחת קונספט של גלגל מדידה

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

שלב 1: חלקים ורכיבים

  • Arduino Nano rev.3
  • 128 × 64 תעודת OLED (SSD1306)
  • מקודד סיבוב פוטואלקטרי מצטבר (400P/R)
  • גלגל גומי למטוסים מדגם (51 מ"מ גובה)
  • 2 כפתורי לחיצה
  • סוללה 9v

שלב 2: המקודד

המקודד
המקודד
המקודד
המקודד

עבור פרויקט זה בדקתי כמה מקודדים סיבוביים זולים, אך מיד זרקתי אותם בגלל בעיות דיוק/רגישות. אז הלכתי למקודד הסיבוב הפוטואלקטרי הפוטואלקטרי של DFRobot - מק"ט 400P/R: SEN0230. זהו מקודד סיבוב פוטואלקטרי תעשייתי מצטבר עם חומר אלומיניום, מעטפת מתכת ופיר נירוסטה. הוא יוצר אות דופק אורתוגונלי דו-פאזי AB באמצעות סיבוב הדיסק הסורג והחיבור האופטי. 400 פולסים/סיבוב לכל שלב, ו 1600 פולסים/סיבוב לדו-פאזי פעמיים. מקודד סיבובי זה תומך במהירות מירבית של 5000 סל"ד. וזה יכול לשמש למהירות, זווית, מהירות זוויתית ומדידת נתונים אחרים.

למקודד הסיבוב הפוטואלקטרי יש פלט אספן פתוח של NPN, כך שעליך להשתמש בנגדי Pullup או לאפשר את המשיכה הפנימית של הארדואינו. הוא משתמש בשבב ווסת מתח 750L05, בעל קלט חשמל רחב טווח DC4.8V-24V.

שלב 3: רגישות

רְגִישׁוּת
רְגִישׁוּת

מקודד סיבוב אופטואלקטרי זה באמת בעל רגישות רבה, מה שהופך אותו למושלם ליישומי בקרת פיר ומיצוב. אבל למטרה שלי זה היה יותר מדי הגיוני. עם גלגל 51 מ"מ, למקודד זה יש רגישות של 0.4 מ"מ, מה שאומר שאם בידך יש רעד מינימלי, הם יירשמו. אז הורדתי את הרגישות על ידי הוספת היסטריה בשגרת ההפסקה:

הפרעה חלל ()

{char i; i = digitalRead (B_PHASE); אם (i == 1) ספירה += 1; אחר לספור -= 1; if (abs (count)> = hysteresis) {flag_A = flag_A+count; ספירה = 0; }}

הטריק הזה הספיק כדי לתת יציבות טובה למדד.

שלב 4: מדידה

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

סיבוב מלא של גלגל בקוטר = D ימדוד אורך D*π. במקרה שלי, עם גלגל 51 מ"מ, זה 16.02 ס"מ וכל קרציה מודדת 0.4 מ"מ (ראה פסקה רגישות).

שלב 5: הרכבה

ה- PoC נוצר על לוח לחם להדגמת המעגלים. כל רכיב הוצמד ללוח והמקודד הסיבובי מחובר לבלוק מסוף בורג 2x2 מוטות. הסוללה היא סוללה סטנדרטית 9V וצריכת החשמל הכוללת של המעגל היא בסביבות 60mA.

שלב 6: קוד

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

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

attachInterrupt (digitalPinToInterrupt (A_PHASE), interrupt, RISING);

התצוגה עוברת אוטומטית ממילימטרים, למטר, לקילומטרים ו (אם נבחר מהלחצן) מאינצ'ים, לחצרות, לקילומטרים, בעוד כפתור ה- RST מאפס את המידה לאפס.

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

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

שלב 8: מ- PoC לייצור

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

  • גַלגַל. הרגישות/הדיוק של Measurino תלוי בגלגל. גלגל קטן יותר יכול לתת לך דיוק טוב יותר במדידת אורך קטן (בסדר גודל של מילימטרים עד סנטימטרים). גלגל גדול בהרבה עם בום מאריך יאפשר ללכת על הכביש ולמדוד קילומטרים. עבור גלגלים קטנים, יש לשקול את החומר: גלגל גומי מלא עלול לעוות מעט ולהשפיע על הדיוק, כך שבמקרה זה אציע גלגל אלומיניום/פלדה עם סרט דק בלבד כדי להימנע מהחלקות. בעזרת עריכת תוכנה טריוויאלית (בחר את קוטר הגלגל הנכון עם מתג), תוכל לשקול גלגלים הניתנים להחלפה להתאמה לכל מידה, באמצעות מחבר בעל 4 פינים (כלומר: יציאת USB).
  • תוֹכנָה. על ידי הוספת כפתור לחיצה נוסף, התוכנה יכולה לדאוג גם למדידת אזורים של מלבנים או משרעת זוויות. אני גם ממליץ להוסיף כפתור "החזק" כדי להקפיא את המדד בסוף, הימנעות מלהזיז את הגלגל בטעות לפני קריאת הערך בתצוגה.
  • החלף את הגלגל בסליל. לאמצעים קצרים (בתוך מטרים ספורים) ניתן להחליף את הגלגל בסליל קפיצי המכיל חוט או סרט. בדרך זו אתה רק צריך למשוך את החוט (לגרום לציר המקודד להסתובב), לנקוט במידה ולצפות בתצוגה.
  • הוסף תצוגה של מצב הסוללה. סיכת ההתייחסות של 3.3v Arduino (מדויקת בתוך 1%) יכולה לשמש כבסיס לממיר ADC. אם כן, על ידי ביצוע המרה אנלוגית לדיגיטלית על פין ה -3.3 וולט (על ידי חיבורו ל- A1) ולאחר מכן השוואת הקריאה הזו מול הקריאה מהחיישן, נוכל להוציא קריאה אמיתית לחיים, לא משנה מהי VIN (כל עוד הוא מעל 3.4V). ניתן למצוא דוגמה עובדת בפרויקט אחר שלי.

שלב 9: גלריית תמונות

מוּמלָץ: