Cuprins:

Citirea traductorului cu magnetron inversat Arduino: 3 pași
Citirea traductorului cu magnetron inversat Arduino: 3 pași

Video: Citirea traductorului cu magnetron inversat Arduino: 3 pași

Video: Citirea traductorului cu magnetron inversat Arduino: 3 pași
Video: Organizați-vă cu mine | Idei de depozitare fără a cumpăra noi cutii de depozitare VLOG Japonia 2024, Noiembrie
Anonim
Citirea traductorului cu magnetron inversat Arduino
Citirea traductorului cu magnetron inversat Arduino

Ca parte a unui proiect în desfășurare al meu aici, care documentează progresul continuu al incursiunii mele în lumea fizicii particulelor Ultra High Vacuum, a ajuns la partea proiectului care a necesitat niște electronice și codificare.

Am cumpărat un surplus MKS seria 903 IMT cu catod rece vid, fără controler sau citire. În anumite condiții, sistemele cu vid foarte ridicat au nevoie de diferite trepte de senzori pentru a măsura în mod corespunzător lipsa gazelor dintr-o cameră. Pe măsură ce obțineți un vid din ce în ce mai puternic, cu atât mai complicată se termină această măsurare.

La vid scăzut sau vid brut, aparatele simple de termocuplu pot face treaba, dar pe măsură ce scoateți din ce în ce mai mult din cameră, aveți nevoie de ceva asemănător cu un indicator de ionizare a gazelor. Cele mai frecvente două metode sunt aparatele cu catod fierbinte și catodul rece. Indicatoarele cu catod fierbinte funcționează ca multe tuburi de vid, în care au un filament care fierbe electroni liberi, care sunt accelerați către o rețea. Orice moleculă de gaz din cale va ioniza și declanșa senzorul. Indicatoarele cu catod rece folosesc o tensiune înaltă fără filament în interiorul unui magnetron pentru a produce o cale electronică care ionizează și moleculele de gaz locale și declanșează senzorul.

Ecartamentul meu este cunoscut ca un ecartament cu traductor cu magnetron inversat, realizat de MKS, care a integrat electronica de comandă cu hardware-ul ecartamentului în sine. Cu toate acestea, ieșirea este o tensiune liniară care coincide cu o scară logaritmică utilizată pentru măsurarea vidului. Aceasta este ceea ce vom programa arduino-ul nostru pentru a face.

Pasul 1: Ce este necesar?

Ceea ce este necesar?
Ceea ce este necesar?
Ceea ce este necesar?
Ceea ce este necesar?
Ceea ce este necesar?
Ceea ce este necesar?
Ceea ce este necesar?
Ceea ce este necesar?

Dacă sunteți ca mine, încercarea de a construi un sistem de vid la prețuri ieftine, obținerea oricărui ecartament pe care îl puteți, este ceea ce vă veți mulțumi. Din fericire, mulți producători de calibre construiesc calibre în acest fel, unde ecartamentul produce o tensiune care poate fi utilizată în propriul dvs. sistem de măsurare. Cu toate acestea, pentru acest instructiv, veți avea nevoie de:

  • 1 MKS HPS seria 903 AP IMT senzor de vid cu catod rece
  • 1 arduino uno
  • 1 afișaj de caractere LCD 2x16 standard
  • Potențiometru de 10k ohm
  • conector DSUB-9 feminin
  • cablu serial DB-9
  • divizor de tensiune

Pasul 2: Cod

Cod!
Cod!

Deci, am o oarecare experiență cu arduino, cum ar fi să mă încurc cu configurația RAMPS a imprimantelor mele 3D, dar nu am avut experiență în scrierea codului de la bază, așa că acesta a fost primul meu proiect real. Am studiat o mulțime de ghiduri de senzori și le-am modificat pentru a înțelege cum le-aș putea folosi cu senzorul meu. La început, ideea a fost să merg cu un tabel de căutare, așa cum am văzut alți senzori, dar am ajuns să folosesc capacitatea virgulă mobilă a arduino pentru a efectua o ecuație jurnal / liniar bazată pe tabelul de conversie furnizat de MKS în manual.

Codul de mai jos setează pur și simplu A0 ca unitate cu virgulă mobilă pentru tensiune, care este 0-5v de la divizorul de tensiune. Apoi este calculat înapoi la o scară de 10v și interpolat folosind ecuația P = 10 ^ (v-k) unde p este presiune, v este tensiune pe o scară de 10v și k este unitatea, în acest caz torr, reprezentată de 11.000. Calculează acest lucru în virgulă mobilă, apoi îl afișează pe un ecran LCD în notație științifică folosind dtostre.

#include #include // inițializează biblioteca cu numerele pinilor de interfață LiquidCrystal lcd (12, 11, 5, 4, 3, 2); // rutina de instalare rulează o dată când apăsați reset: void setup () {/ / inițializați comunicația serială la 9600 biți pe secundă: Serial.begin (9600); pinMode (A0, INPUT); // A0 este setat ca intrare #define PRESSURE_SENSOR A0; lcd.inceput (16, 2); lcd.print („MKS Instruments”); lcd.setCursor (0, 1); lcd.print ("IMT Cold Cathode"); întârziere (6500); lcd.clear (); lcd.print ("Presiunea de măsurare:"); } // rutina de buclă rulează mereu: void loop () {float v = analogRead (A0); // v este tensiunea de intrare setată ca unitate în virgulă mobilă pe analogRead v = v * 10.0 / 1024; // v este 0-5v tensiune divizor măsurată de la 0 la 1024 calculată la 0v la 10v plutitor la scară p = pow (10, v - 11.000); // p este presiunea în torr, care este reprezentată de k în ecuația [P = 10 ^ (vk)] care este- // -11.000 (K = 11.000 pentru Torr, 10.875 pentru mbar, 8.000 pentru microni, 8.875 pentru Pascal) Serial.print (v); presiunea char E [8]; dtostre (p, presiune E, 1, 0); // format științific cu 1 zecimal lcd.setCursor (0, 1); imprimare lcd (presiune E); lcd.print ("Torr"); }

Pasul 3: Testare

Image
Image
Testarea
Testarea

Am efectuat testele folosind o sursă de alimentare externă, în trepte de 0-5v. Apoi am efectuat calculele manual și m-am asigurat că sunt de acord cu valoarea afișată. Se pare că se citește ușor cu o cantitate foarte mică, totuși acest lucru nu este cu adevărat important, deoarece se încadrează în specificațiile mele necesare.

Acest proiect a fost pentru mine un proiect uriaș de prim cod și nu l-aș fi terminat dacă nu ar fi fost pentru fantastica comunitate arduino: 3

Nenumăratele proiecte de ghiduri și senzori au ajutat cu adevărat la aflarea modului de a face acest lucru. Au existat multe încercări și erori și multe blocări. Dar, în cele din urmă, sunt extrem de mulțumit de modul în care a ieșit acest lucru și, sincer, experiența de a vedea codul pe care l-ați făcut face ceea ce se presupune că este pentru prima dată este destul de minunat.

Recomandat: