Sadržaj:

Očitavanje Arduino obrnutog magnetronskog pretvarača: 3 koraka
Očitavanje Arduino obrnutog magnetronskog pretvarača: 3 koraka

Video: Očitavanje Arduino obrnutog magnetronskog pretvarača: 3 koraka

Video: Očitavanje Arduino obrnutog magnetronskog pretvarača: 3 koraka
Video: Arduino - C# Radar 2024, Novembar
Anonim
Očitavanje Arduino obrnutog magnetronskog pretvarača
Očitavanje Arduino obrnutog magnetronskog pretvarača

Kao dio mog tekućeg projekta, koji je dokumentirao tekući napredak mog pohoda u svijet fizike čestica ultra visokog vakuuma, došao je do dijela projekta koji je zahtijevao malo elektronike i kodiranja.

Kupio sam višak vakuuma sa hladnom katodom MKS serije 903 IMT, bez kontrolera i očitanja. Za neku pozadinu, sistemima visokog vakuuma su potrebne različite faze senzora da bi se pravilno izmjerio nedostatak plinova u komori. Kako dobijate sve jači vakuum, ovo mjerenje postaje sve kompliciranije.

Pri niskom vakuumu ili grubom vakuumu jednostavni mjerači termopara mogu obaviti posao, ali kako sve više uklanjate iz komore, potrebno vam je nešto slično mjeraču ionizacije plina. Dvije najčešće metode su mjerači sa toplom i hladnom katodom. Mjerači s vrućom katodom funkcioniraju poput mnogih vakuumskih cijevi, u kojima imaju nit koja ključa od slobodnih elektrona, koji su ubrzani prema mreži. Bilo koji molekuli plina na putu će ionizirati i spotaknuti senzor. Mjerači sa hladnom katodom koriste visoki napon bez filamenta unutar magnetrona za proizvodnju elektronskog puta koji također ionizira lokalne molekule plina i aktivira senzor.

Moj mjerač je poznat kao obrnuti magnetronski pretvarač, proizveden od strane MKS -a, koji je integrirao upravljačku elektroniku u sam hardver mjerača. Međutim, izlaz je linearni napon koji se podudara s logaritamskom skalom koja se koristi za mjerenje vakuuma. Ovo je ono za što ćemo programirati naš arduino.

Korak 1: Šta je potrebno?

Šta je potrebno?
Šta je potrebno?
Šta je potrebno?
Šta je potrebno?
Šta je potrebno?
Šta je potrebno?
Šta je potrebno?
Šta je potrebno?

Ako ste poput mene, pokušavate jeftino izgraditi vakuumski sistem, zadovoljit ćete se što god možete. Srećom, mnogi proizvođači mjerača izrađuju mjerače na ovaj način, gdje mjerač daje napon koji se može koristiti u vašem vlastitom mjernom sistemu. Međutim, za ovo posebno uputstvo trebat će vam:

  • 1 MKS HPS serija 903 AP IMT vakuumski senzor sa hladnom katodom
  • 1 arduino uno
  • 1 standardni 2x16 LCD ekran sa znakovima
  • 10k ohm potenciometar
  • ženski konektor DSUB-9
  • serijski DB-9 kabl
  • razdjelnik napona

Korak 2: Kodirajte

Kod!
Kod!

Dakle, imam određeno iskustvo s arduinom, poput petljanja s konfiguracijom RAMPS -a mojih 3D pisača, ali nisam imao iskustva s pisanjem koda od temelja, pa je ovo bio moj prvi pravi projekt. Proučavao sam mnogo vodiča za senzore i modificirao ih da shvatim kako ih mogu koristiti sa svojim senzorom. U početku je ideja bila ići s tabelom za pretraživanje, kao što sam vidio i druge senzore, ali sam na kraju koristio arduino -ovu mogućnost s pomičnim zarezom za izvođenje log/linearne jednadžbe na temelju tablice konverzije koju je MKS dao u priručniku.

Donji kôd jednostavno postavlja A0 kao jedinicu s pomičnim zarezom za napon, koji je 0-5v od razdjelnika napona. Zatim se ponovo izračunava do skale od 10v i interpolira pomoću jednadžbe P = 10^(v-k) gdje je p tlak, v je napon na skali od 10v, a k je jedinica, u ovom slučaju torr, predstavljena sa 11.000. Izračunava to u pokretnom zarezu, a zatim ga prikazuje na LCD ekranu u naučnoj notaciji koristeći dtostre.

#include #include // inicijalizira biblioteku brojevima pinova sučelja LiquidCrystal lcd (12, 11, 5, 4, 3, 2); // rutina postavljanja pokreće se jednom kada pritisnete reset: void setup () {/ / inicijalizirati serijsku komunikaciju pri 9600 bita u sekundi: Serial.begin (9600); pinMode (A0, INPUT); // A0 je postavljen kao ulaz #define PRESSURE_SENSOR A0; lcd.begin (16, 2); lcd.print ("MKS Instruments"); lcd.setCursor (0, 1); lcd.print ("IMT hladna katoda"); kašnjenje (6500); lcd.clear (); lcd.print ("Manometrijski pritisak:"); } // rutina petlje radi uvijek i iznova zauvijek: void loop () {float v = analogRead (A0); // v je ulazni napon postavljen kao jedinica s pomičnim zarezom na analogRead v = v * 10.0 /1024; // v je 0-5v naponski razdjelnik izmjeren od 0 do 1024 izračunat do 0v do 10v plovak na skali p = pow (10, v - 11.000); // p je tlak u torrima, koji je predstavljen sa k u jednadžbi [P = 10^(vk)] koja je- // -11.000 (K = 11.000 za Torr, 10.875 za mbar, 8.000 za mikrone, 8.875 za Pascal) Serial.print (v); char pressureE [8]; dtostre (p, pritisakE, 1, 0); // znanstveni format s 1 decimalna mjesta lcd.setCursor (0, 1); lcd.print (pressureE); lcd.print ("Torr"); }

Korak 3: Testiranje

Image
Image
Testiranje
Testiranje

Izvršio sam testove koristeći vanjsko napajanje, u koracima od 0-5v. Zatim sam ručno izveo proračune i uvjerio se da se slažu s prikazanom vrijednošću. Čini se da se to malo iščitava, ali to nije baš važno jer se nalazi unutar mojih potrebnih specifikacija.

Ovaj projekt je za mene bio veliki prvi kodni projekt i ne bih ga završio da nije bilo fantastične arduino zajednice: 3

Nebrojeni vodiči i projekti senzora zaista su pomogli u otkrivanju kako to učiniti. Bilo je mnogo pokušaja i grešaka, i puno zaglavljivanja. Ali na kraju, izuzetno sam zadovoljan kako je ovo ispalo, i iskreno, iskustvo vidjeti da ste kod učinili kako treba po prvi put je prilično odlično.

Preporučuje se: