Čtení převráceného magnetronového snímače Arduino: 3 kroky
Čtení převráceného magnetronového snímače Arduino: 3 kroky
Čtení převráceného magnetronového snímače Arduino
Čtení převráceného magnetronového snímače Arduino

Jako součást probíhajícího mého projektu zde, dokumentujícího pokračující postup mého vpádu do světa fyziky částic ultra vysokého vakua, došlo k části projektu, která vyžadovala určitou elektroniku a kódování.

Koupil jsem přebytečný vakuový měřič IMT se studenou katodou MKS řady 903 IMT, bez ovladače nebo bez odečtu. V některých podmínkách systémy s velmi vysokým vakuem potřebují různé stupně čidel, aby správně změřily nedostatek plynů v komoře. Jak budete mít stále silnější vakuum, tím složitější toto měření skončí.

Při nízkém vakuu nebo hrubém vakuu to zvládnou jednoduché termočlánky, ale jak čím dál více odebíráte z komory, potřebujete něco podobného plynovému ionizačnímu měřidlu. Dvě nejběžnější metody jsou měřiče horké katody a studené katody. Měřiče horké katody fungují jako mnoho vakuových trubic, ve kterých mají vlákno, které se vaří z volných elektronů, které se zrychlují směrem k mřížce. Jakékoli molekuly plynu v cestě ionizují a vypnou senzor. Měřiče se studenou katodou používají vysoké napětí bez vlákna uvnitř magnetronu k výrobě elektronové dráhy, která také ionizuje místní molekuly plynu a vypne senzor.

Můj měřič je známý jako invertovaný magnetronový měřicí převodník vyrobený společností MKS, která integrovala řídicí elektroniku se samotným hardwarem měřidla. Výstupem je však lineární napětí, které se shoduje s logaritmickou stupnicí používanou pro měření vakua. K tomu budeme programovat naše arduino.

Krok 1: Co je potřeba?

Co je potřeba?
Co je potřeba?
Co je potřeba?
Co je potřeba?
Co je potřeba?
Co je potřeba?
Co je potřeba?
Co je potřeba?

Pokud jste jako já, snažíte se levně postavit vakuový systém, uspokojíte se s jakýmkoli měřidlem. Naštěstí mnoho výrobců měřidel tímto způsobem staví měřidla, kde měřidlo vydává napětí, které lze použít ve vašem vlastním měřicím systému. Pro tento specifický návod však budete potřebovat:

  • 1 vakuový snímač studené katody MKS HPS 903 AP IMT
  • 1 arduino uno
  • 1 standardní 2x16 LCD znakový displej
  • Potenciometr 10k ohm
  • samice konektoru DSUB-9
  • sériový kabel DB-9
  • dělič napětí

Krok 2: Kód

Kód!
Kód!

Mám tedy určité zkušenosti s arduinem, jako bych si zahrával s konfigurací RAMPS svých 3D tiskáren, ale neměl jsem zkušenosti s psaním kódu od základů, takže to byl můj první skutečný projekt. Prostudoval jsem spoustu průvodců senzorů a upravil je, abych pochopil, jak je mohu použít se svým senzorem. Nejprve jsem měl jít s vyhledávací tabulkou, protože jsem viděl jiné senzory, ale nakonec jsem použil schopnost arduino s plovoucí desetinnou čárkou provést log/lineární rovnici na základě převodní tabulky poskytnuté MKS v manuálu.

Níže uvedený kód jednoduše nastaví A0 jako jednotku s plovoucí desetinnou čárkou napětí, což je 0-5v od děliče napětí. Poté se vypočítá zpět do stupnice 10v a interpolovalo se pomocí rovnice P = 10^(v-k), kde p je tlak, v je napětí na stupnici 10v a k je jednotka, v tomto případě torr, reprezentovaná 11 000. Vypočítá to s pohyblivou řádovou čárkou a poté to zobrazí na LCD obrazovce ve vědecké notaci pomocí dtostre.

#include #include // inicializace knihovny čísly pinů rozhraní LiquidCrystal lcd (12, 11, 5, 4, 3, 2); // instalační rutina se spustí jednou, když stisknete reset: void setup () {/ / inicializovat sériovou komunikaci rychlostí 9600 bitů za sekundu: Serial.begin (9600); pinMode (A0, INPUT); // A0 je nastaven jako vstup #define PRESSURE_SENSOR A0; lcd.begin (16, 2); lcd.print („nástroje MKS“); lcd.setCursor (0, 1); lcd.print („IMT Cold Cathode“); zpoždění (6500); lcd.clear (); lcd.print ("Tlak měřidla:"); } // rutina smyčky běží stále znovu a znovu: void loop () {float v = analogRead (A0); // v je vstupní napětí nastaveno jako jednotka s plovoucí desetinnou čárkou na analogRead v = v * 10,0 /1024; // v je dělič napětí 0-5v měřeno od 0 do 1024 vypočteno na 0v až 10v stupnice float p = pow (10, v - 11 000); // p je tlak v torru, který je reprezentován k v rovnici [P = 10^(vk)] což je - // -11 000 (K = 11 000 pro Torr, 10,875 pro mbar, 8 000 pro mikrony, 8,875 pro Pascal) Serial.print (v); sací tlakE [8]; dtostre (p, tlakE, 1, 0); // vědecký formát s 1 desetinnými místy lcd.setCursor (0, 1); lcd.print (tlak E); lcd.print ("Torr"); }

Krok 3: Testování

Image
Image
Testování
Testování

Testy jsem provedl pomocí externího napájecího zdroje v přírůstcích od 0 do 5 V. Poté jsem provedl výpočty ručně a ujistil jsem se, že souhlasí se zobrazenou hodnotou. Zdá se, že se to odečítá o velmi malé množství, ale to není opravdu důležité, protože je to v mé potřebné specifikaci.

Tento projekt byl pro mě obrovským prvním kódovým projektem a já bych ho nedokončil, kdyby nebylo fantastické arduino komunity: 3

Nespočet průvodců a projektů senzorů opravdu pomohlo zjistit, jak to udělat. Došlo k mnoha pokusům a omylům a také k uvíznutí. Ale nakonec jsem nesmírně spokojený s tím, jak to vyšlo, a upřímně, zkušenost vidět kód, který jste poprvé udělali, co má, je docela úžasný.

Doporučuje: