Tartalomjegyzék:
Videó: Arduino invertált mágneses jeladó leolvasása: 3 lépés
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:43
Egy folyamatban lévő projektem részeként, amely dokumentálja az ultra nagy vákuum részecskefizika világába való belépésem előrehaladását, eljutottam a projekt azon részéhez, amely némi elektronikát és kódolást igényelt.
Vettem egy többlet MKS sorozatú 903 IMT hideg katódos vákuummérőt, vezérlő vagy leolvasás nélkül. Bizonyos körülmények között az ultra -nagy vákuumrendszereknek különböző érzékelőfokozatokra van szükségük ahhoz, hogy megfelelően mérjék a gázhiányt egy kamrában. Ahogy egyre erősebb vákuumot kap, annál bonyolultabb ez a mérés.
Alacsony vákuumban vagy durva vákuumban az egyszerű hőelemmérők képesek elvégezni a munkát, de ahogy egyre többet távolít el a kamrából, szüksége van valami gázionizációs mérőműszerre. A két leggyakoribb módszer a meleg katód és a hideg katódmérők. A forró katódmérők sok vákuumcsőhöz hasonlóan működnek, amelyekben egy izzószál van, amely szabad elektronokból forral, és amelyek felgyorsulnak a rács felé. Az útba eső gázmolekulák ionizálni fogják és leállítják az érzékelőt. A hideg katódmérők nagyfeszültséget használnak izzószál nélkül a magnetron belsejében, hogy elektronpályát hozzanak létre, amely szintén ionizálja a helyi gázmolekulákat és lekapcsolja az érzékelőt.
A mérőművemet fordított magnetron -jelátalakítónak nevezik, amelyet az MKS készített, amely integrálta a vezérlőelektronikát a mérő hardverével. A kimenet azonban lineáris feszültség, amely egybeesik a vákuum mérésére használt logaritmikus skálával. Erre fogjuk programozni az arduino -t.
1. lépés: Mire van szükség?
Ha olyan vagy, mint én, akkor olcsón próbálsz vákuumrendszert építeni, és megkapsz minden lehetséges mérőt. Szerencsére sok műszergyártó épít ilyen módon mérőműszereket, ahol a mérő a saját mérőrendszerében használható feszültséget ad ki. Ehhez az utasításhoz azonban szüksége lesz:
- 1 MKS HPS sorozat 903 AP IMT hidegkatódos vákuumérzékelő
- 1 arduino uno
- 1 standard 2x16 LCD karakteres kijelző
- 10k ohmos potenciométer
- női DSUB-9 csatlakozó
- soros DB-9 kábel
- feszültségosztó
2. lépés: Kódolás
Tehát van némi tapasztalatom az arduino -val kapcsolatban, például a 3D -s nyomtatóim RAMPS -konfigurációjával való összevisszázással, de nem volt tapasztalatom a kód írásával az alapoktól kezdve, így ez volt az első igazi projektem. Sok érzékelő útmutatót tanulmányoztam és módosítottam, hogy megértsem, hogyan használhatom őket az érzékelőmmel. Eleinte az volt az ötlet, hogy keresőtáblával készüljek, ahogy más érzékelőket is láttam, de végül az arduino lebegőpontos képességét használva log/lineáris egyenletet hajtottam végre az MKS által a kézikönyvben megadott konverziós táblázat alapján.
Az alábbi kód egyszerűen az A0-t lebegőpontos egységként állítja be a feszültséghez, amely 0-5v a feszültségosztótól. Ezután kiszámítják 10V skáláig, és interpolálják a P = 10^(v-k) egyenlet segítségével, ahol p nyomás, v feszültség 10v skálán és k az egység, ebben az esetben torr, amelyet 11.000 jelent. Kiszámítja, hogy lebegőpontos, majd megjeleníti az LCD -képernyőn tudományos jelöléssel a dtostre használatával.
#include #include // inicializálja a könyvtárat a LiquidCrystal lcd (12, 11, 5, 4, 3, 2) interfész csapok számával; // a telepítési rutin egyszer fut, amikor megnyomja a reset gombot: void setup () {/ / inicializálja a soros kommunikációt 9600 bit / másodperc sebességgel: Serial.begin (9600); pinMode (A0, INPUT); // Az A0 bemenetként van beállítva #define PRESSURE_SENSOR A0; lcd. kezdet (16, 2); lcd.print ("MKS Instruments"); lcd.setCursor (0, 1); lcd.print ("IMT hideg katód"); késleltetés (6500); lcd.clear (); lcd.print ("Mérőnyomás:"); } // a ciklus rutin örökké és újra fut: void loop () {float v = analogRead (A0); // v lebegőpontos egységként beállított bemeneti feszültség az analogRead v = v * 10.0 /1024; // v 0-5v osztófeszültség 0 -tól 1024 -ig mérve 0-010v skálán úszó p = pow (10, v - 11.000); // p a torr -ban mért nyomás, amelyet k jelent a [P = 10^(vk)] egyenletben: // -11.000 (K = 11.000 Torr, 10.875 mbar, 8.000 mikron, 8.875 Pascal)) Sorozat.nyomtatás (v); szénnyomásE [8]; dtostre (p, nyomásE, 1, 0); // tudományos formátum 1 tizedesjeggyel lcd.setCursor (0, 1); lcd.print (nyomásE); lcd.print ("Torr"); }
3. lépés: Tesztelés
A vizsgálatokat külső tápegységgel végeztem, 0-5v-os lépésekben. Ezután manuálisan elvégeztem a számításokat, és megbizonyosodtam arról, hogy megegyeznek a megjelenített értékkel. Úgy tűnik, hogy nagyon kis mértékben leolvasható, de ez nem igazán fontos, mivel a szükséges specifikációkon belül van.
Ez a projekt hatalmas első kódprojekt volt számomra, és nem fejeztem volna be, ha nem a fantasztikus arduino közösség lett volna: 3
A számtalan útmutató és érzékelőprojekt valóban segített kitalálni, hogyan kell ezt megtenni. Sok volt a próba és a hiba, és sok az elakadás. De végül rendkívül elégedett vagyok azzal, hogy ez hogyan jött ki, és őszintén szólva, az élmény, amikor látta, hogy az elkészített kód először azt csinálja, amit kellene.
Ajánlott:
Mikrométer leolvasása: 3 lépés
Mikrométer olvasása: Helló, a nevem Damian Paul. Én a Tóvidéki Műszaki Intézet másodéves hallgatója vagyok a precíziós megmunkálási programban. Több mint 2 éve vezetek CNC gépeket, mielőtt részt vettem a Lake Area Technical Institute -ban. Ma megyek
Páratartalom leolvasása Ethernet érzékelővel: 3 lépés
Páratartalom leolvasása Ethernet érzékelővel: A projekt célja az volt, hogy az ethernet hálózaton keresztül le lehessen olvasni a páratartalom és a hőmérséklet leolvasását, hogy az eredményeket fel lehessen használni az otthoni automatizáláshoz (Home Assistant stb.). A T9602 érzékelő a legjobb alaktényezővel rendelkezik, nagyszerű teljesítmény az ar
Hőmérséklet leolvasása az LM35 hőmérséklet -érzékelő használatával Arduino Uno segítségével: 4 lépés
Hőmérséklet leolvasása az LM35 hőmérséklet -érzékelő használatával az Arduino Uno segítségével: Sziasztok, srácok, ebben az útmutatóban megtanuljuk, hogyan kell használni az LM35 -öt az Arduino -val. Az Lm35 egy hőmérséklet -érzékelő, amely -55 ° C és 150 ° C közötti hőmérséklet -értékeket képes leolvasni. Ez egy 3 kivezetésű eszköz, amely analóg feszültséget biztosít a hőmérséklettel arányosan. Hig
Invertált inga: vezérléselmélet és dinamika: 17 lépés (képekkel)
Fordított inga: Vezérléselmélet és dinamika: A fordított inga a dinamika és a vezérléselmélet klasszikus problémája, amelyet általában középiskolai és egyetemi fizika vagy matematika tanfolyamokon dolgoznak fel. Mivel magam is matematika- és természettudományi rajongó vagyok, úgy döntöttem, hogy megpróbálom megvalósítani a koncepciókat
Élő Arduino érzékelő leolvasása a Nokia 5110 LCD kijelzőn: 4 lépés (képekkel)
Élő Arduino érzékelő leolvasása a Nokia 5110 LCD kijelzőn: Ha valaha is dolgozott az arduino -val, valószínűleg azt akarta, hogy megjelenítse az érzékelők leolvasását. A soros monitor használata tökéletesen rendben van, de lévén az arduino badass, gyorsan válhat valószínűleg azt akarja, hogy megjelenítse az értékeket valami máson