Sisukord:

Arduino inverteeritud magnetronmuunduri näit: 3 sammu
Arduino inverteeritud magnetronmuunduri näit: 3 sammu

Video: Arduino inverteeritud magnetronmuunduri näit: 3 sammu

Video: Arduino inverteeritud magnetronmuunduri näit: 3 sammu
Video: VCA с использованием самодельного светодиода и оптопары LDR, на макетной плате (со схемой) 2024, November
Anonim
Arduino ümberpööratud magnetronmuunduri näit
Arduino ümberpööratud magnetronmuunduri näit

Osana ühest minu käimasolevast projektist, mis dokumenteerib minu ultraheli vaakumiosakeste füüsika maailma jõudmise edenemist, jõudis see projekti osani, mis nõudis teatavat elektroonikat ja kodeerimist.

Ostsin üleliigse MKS -seeria 903 IMT külma katoodi vaakumõõturi, ilma kontrolleri ja näidudeta. Teatud taustal vajavad ülikõrge vaakumiga süsteemid erinevaid anduri etappe, et õigesti mõõta gaaside puudust kambris. Mida tugevamaks vaakum tekib, seda keerulisem see mõõtmine lõpuks on.

Madala vaakumi või jämeda vaakumi korral saavad lihtsad termopaarimõõturid selle tööga hakkama, kuid kui eemaldate kambrist üha rohkem, vajate midagi sarnast gaasi ionisatsiooninäidikuga. Kaks levinumat meetodit on kuumkatoodi- ja külmkatoodimõõturid. Kuumkatoodimõõturid toimivad nagu paljud vaakumtorud, milles neil on hõõgniit, mis keeb välja vabad elektronid, mida kiirendatakse võre suunas. Kõik teel olevad gaasimolekulid ioniseerivad ja anduri käivitavad. Külmkatoodimõõturid kasutavad magnetroni sees kõrgepinget, milles pole hõõgniiti, et tekitada elektrontee, mis ioniseerib ka kohalikud gaasimolekulid ja käivitab anduri.

Minu gabariit on tuntud kui MKS valmistatud ümberpööratud magnetronmuunduri gabariit, mis integreeris juhtimiselektroonika mõõturi riistvaraga. Väljundiks on aga lineaarne pinge, mis langeb kokku vaakumi mõõtmiseks kasutatava logaritmilise skaalaga. Seda me programmeerime oma arduinot tegema.

Samm: mida on vaja?

Mida on vaja?
Mida on vaja?
Mida on vaja?
Mida on vaja?
Mida on vaja?
Mida on vaja?
Mida on vaja?
Mida on vaja?

Kui olete minu moodi, proovite odavalt vaakumsüsteemi ehitada, leppige sellega, mida saate. Õnneks ehitavad paljud gabariiditootjad sel viisil mõõtureid, kus näidik väljastab pinge, mida saab kasutada teie enda mõõtesüsteemis. Selle juhendi jaoks vajate aga järgmist:

  • 1 MKS HPS seeria 903 AP IMT külma katoodi vaakumandur
  • 1 arduino uno
  • 1 tavaline 2x16 LCD -ekraan
  • 10k oomi potentsiomeeter
  • naissoost DSUB-9 pistik
  • jadakaabel DB-9
  • pingejagur

2. samm: kood

Kood!
Kood!

Niisiis, mul on mõningaid kogemusi arduinoga, näiteks oma 3D -printerite RAMPS -i konfiguratsiooniga segadusse ajamine, kuid mul polnud kogemusi koodi kirjutamisega algusest peale, nii et see oli minu esimene tõeline projekt. Uurisin palju andurite juhendeid ja muutsin neid, et mõista, kuidas saaksin neid oma anduriga kasutada. Algul oli idee minna otsingutabeli juurde, nagu olen näinud ka teisi andureid, kuid lõpuks kasutasin arduino ujukoma võimalust log/lineaarvõrrandi tegemiseks, mis põhineb juhendis MKS esitatud teisendustabelil.

Allolev kood määrab A0 lihtsalt ujukoma ühikuks pingele, mis on pingejagurist 0–5 V kaugusel. Seejärel arvutatakse see tagasi 10 V skaalale ja interpoleeritakse võrrandi P = 10^(v-k) abil, kus p on rõhk, v on pinge 10 V skaalal ja k on ühik, antud juhul torr, mida tähistab 11 000. See arvutab selle ujukomaga ja kuvab selle siis dtostre abil teaduslikus vormis LCD -ekraanil.

#include #include // teegi initsialiseerimine liidese tihvtide numbritega LiquidCrystal lcd (12, 11, 5, 4, 3, 2); // seadistusrežiim käivitatakse üks kord, kui vajutate lähtestamist: void setup () {/ / initsialiseeri jadaühendus kiirusega 9600 bitti sekundis: Serial.begin (9600); pinMode (A0, INPUT); // A0 on sisendiks määratud #define PRESSURE_SENSOR A0; lcd.algus (16, 2); lcd.print ("MKS Instruments"); lcd.setCursor (0, 1); lcd.print ("IMT külma katood"); viivitus (6500); lcd.clear (); lcd.print ("Mõõturõhk:"); } // tsüklirutiin töötab igavesti ikka ja jälle: void loop () {float v = analogRead (A0); // v on sisendpinge, mis on seadistatud ujukoma ühikuna analoogilugemisel v = v * 10,0 /1024; // v on 0-5v jagajapinge, mis on mõõdetud vahemikus 0 kuni 1024, arvutatud skaalal 0v kuni 10v, ujuk p = pow (10, v - 11.000); // p on rõhk torrides, mida võrrandis [P = 10^(vk)] tähistab k, mis on // -11.000 (K = 11.000 Torr, 10.875 mbar, 8.000 mikronit, 8.875 Pascal)) Serial.print (v); söerõhkE [8]; dtostre (p, rõhkE, 1, 0); // teaduslik formaat 1 komakohaga lcd.setCursor (0, 1); lcd.print (surveE); lcd.print ("Torr"); }

3. samm: testimine

Image
Image
Testimine
Testimine

Testid tegin välise toiteallika abil, sammuga 0-5v. Seejärel tegin arvutused käsitsi ja veendusin, et need vastavad kuvatud väärtusele. Tundub, et see loeb väga vähe maha, kuid see pole tegelikult oluline, kuna see on minu vajalike spetsifikatsioonide piires.

See projekt oli minu jaoks tohutu esimene koodiprojekt ja ma poleks seda lõpetanud, kui poleks olnud fantastilist arduino kogukonda: 3

Lugematud juhendid ja anduriprojektid aitasid tõesti välja mõelda, kuidas seda teha. Seal oli palju katseid ja vigu ning palju takerdumist. Kuid lõpuks olen selle üle väga rahul ja ausalt öeldes on kogemus, kuidas nägite koodi, mida esimest korda tehti, nagu peaks.

Soovitan: