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

קריאת מתמר מגנטרון הפוך של Arduino: 3 שלבים
קריאת מתמר מגנטרון הפוך של Arduino: 3 שלבים

וִידֵאוֹ: קריאת מתמר מגנטרון הפוך של Arduino: 3 שלבים

וִידֵאוֹ: קריאת מתמר מגנטרון הפוך של Arduino: 3 שלבים
וִידֵאוֹ: הרב מרזל חסידות ערב 2024, נוֹבֶמבֶּר
Anonim
קריאת מתמר מגנטרון הפוך של Arduino
קריאת מתמר מגנטרון הפוך של Arduino

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

רכשתי עודף מד ואקום בקתודה קרה של סדרת MKS 903 IMT, ללא בקר או קריאה. מרקע כלשהו, מערכות ואקום גבוהות במיוחד זקוקות לשלבי חיישן שונים כדי למדוד נכון את היעדר הגזים בחדר. ככל שאתה מקבל ואקום חזק יותר ויותר, מדידה זו מסובכת יותר.

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

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

שלב 1: מה נחוץ?

מה שצריך?
מה שצריך?
מה שצריך?
מה שצריך?
מה שצריך?
מה שצריך?
מה שצריך?
מה שצריך?

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

  • 1 חיישן ואקום קתודה קרה מסדרת MKS HPS 903 AP IMT
  • 1 ארדואינו אונו
  • תצוגת תווי LCD אחת 2x16 סטנדרטית
  • פוטנציומטר 10k אוהם
  • מחבר נקבה DSUB-9
  • כבל DB-9 טורי
  • מחלק מתח

שלב 2: קוד

קוד!
קוד!

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

הקוד להלן קובע את A0 כיחידת נקודה צפה למתח, הנמצאת 0-5 וו ממחלק המתח. לאחר מכן הוא מחושב בחזרה עד לסולם 10v ומאופיין באמצעות המשוואה P = 10^(v-k) כאשר p הוא לחץ, v הוא מתח בסולם 10v ו- k היא היחידה, במקרה זה torr, המיוצגת על ידי 11.000. הוא מחשב את זה בנקודה צפה, ואז מציג אותו על מסך LCD בסימון מדעי באמצעות dtostre.

#include #include // לאתחל את הספרייה עם המספרים של סיכות הממשק LiquidCrystal lcd (12, 11, 5, 4, 3, 2); // שגרת ההתקנה פועלת פעם אחת כאשר אתה לוחץ על reset: void setup () {/ / אתחול תקשורת טורית ב -9600 סיביות לשנייה: Serial.begin (9600); pinMode (A0, INPUT); // A0 מוגדר כקלט #define PRESSURE_SENSOR A0; lcd.begin (16, 2); lcd.print ("מכשירי MKS"); lcd.setCursor (0, 1); lcd.print ("קתודה קרה של IMT"); עיכוב (6500); lcd.clear (); lcd.print ("לחץ מד:"); } // שגרת הלולאה עוברת שוב ושוב לנצח: לולאת void () {float v = analogRead (A0); // v הוא מתח הכניסה המוגדר כיחידת נקודה צפה ב- analogRead v = v * 10.0 /1024; // v הוא מתח מפריד 0-5v הנמדד בין 0 ל- 1024 מחושב לצוף 0v עד 10v p = pow (10, v - 11.000); // p הוא לחץ ב- torr, המיוצג על ידי k במשוואה [P = 10^(vk)] שהוא- // -11.000 (K = 11.000 עבור Torr, 10.875 עבור mbar, 8.000 למיקרון, 8.875 עבור פסקל) Serial.print (v); לחץ פחמן E [8]; dtostre (p, לחץ E, 1, 0); // פורמט מדעי עם מקומות עשרוניים lcd.setCursor (0, 1); lcd.print (לחץ E); lcd.print ("Torr"); }

שלב 3: בדיקה

Image
Image
בדיקה
בדיקה

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

הפרויקט הזה היה עבורי פרויקט קוד ראשון ענק, ולא הייתי מסיים אותו אלמלא קהילת הארדואינו הנהדרת: 3

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

מוּמלָץ: