Daftar Isi:

Pembacaan Transduser Magnetron Terbalik Arduino: 3 Langkah
Pembacaan Transduser Magnetron Terbalik Arduino: 3 Langkah

Video: Pembacaan Transduser Magnetron Terbalik Arduino: 3 Langkah

Video: Pembacaan Transduser Magnetron Terbalik Arduino: 3 Langkah
Video: 1720 1721 2024, November
Anonim
Pembacaan Transduser Magnetron Terbalik Arduino
Pembacaan Transduser Magnetron Terbalik Arduino

Sebagai bagian dari proyek saya yang sedang berlangsung di sini, mendokumentasikan kemajuan berkelanjutan dari terjun saya ke dunia fisika partikel Vakum Ultra Tinggi, itu datang ke bagian dari proyek yang memerlukan beberapa elektronik dan pengkodean.

Saya membeli pengukur vakum katoda dingin MKS seri 903 IMT surplus, tanpa pengontrol atau pembacaan. Untuk beberapa latar belakang, sistem vakum ultra tinggi memerlukan berbagai tahapan sensor untuk mengukur dengan tepat kekurangan gas dalam ruang. Saat Anda mendapatkan ruang hampa yang lebih kuat dan lebih kuat, semakin rumit pengukuran ini.

Pada vakum rendah, atau vakum kasar, pengukur termokopel sederhana dapat melakukan pekerjaan itu, tetapi saat Anda mengeluarkan lebih banyak dan lebih banyak dari ruangan, Anda memerlukan sesuatu yang mirip dengan pengukur ionisasi gas. Dua metode yang paling umum adalah katoda panas dan pengukur katoda dingin. Pengukur katoda panas berfungsi seperti banyak tabung vakum, di mana mereka memiliki filamen yang mendidihkan elektron bebas, yang dipercepat menuju grid. Setiap molekul gas yang menghalangi akan terionisasi dan membuat sensor tersandung. Pengukur katoda dingin menggunakan tegangan tinggi tanpa filamen di dalam magnetron untuk menghasilkan jalur elektron yang juga mengionisasi molekul gas lokal dan memicu sensor.

Pengukur saya dikenal sebagai pengukur transduser magnetron terbalik, dibuat oleh MKS, yang mengintegrasikan elektronik kontrol dengan perangkat keras pengukur itu sendiri. Namun, outputnya adalah tegangan linier yang bertepatan dengan skala logaritmik yang digunakan untuk mengukur vakum. Inilah yang akan kami programkan pada arduino kami.

Langkah 1: Apa yang Dibutuhkan?

Apa yang dibutuhkan?
Apa yang dibutuhkan?
Apa yang dibutuhkan?
Apa yang dibutuhkan?
Apa yang dibutuhkan?
Apa yang dibutuhkan?
Apa yang dibutuhkan?
Apa yang dibutuhkan?

Jika Anda seperti saya, mencoba membangun sistem vakum dengan harga murah, mendapatkan pengukur apa pun yang Anda bisa adalah apa yang akan Anda setujui. Untungnya, banyak produsen pengukur membuat pengukur dengan cara ini, di mana pengukur mengeluarkan tegangan yang dapat digunakan dalam sistem pengukuran Anda sendiri. Namun, untuk instruksi ini secara khusus, Anda memerlukan:

  • 1 MKS HPS seri 903 AP IMT sensor vakum katoda dingin
  • 1 arduino uno
  • 1 tampilan karakter LCD 2x16 standar
  • potensiometer 10k ohm
  • konektor DSUB-9 wanita
  • kabel seri DB-9
  • pembagi tegangan

Langkah 2: Kode

Kode!
Kode!

Jadi, saya memiliki beberapa pengalaman dengan arduino, seperti mengotak-atik konfigurasi RAMPS printer 3d saya, tetapi saya tidak memiliki pengalaman menulis kode dari awal, jadi ini adalah proyek nyata pertama saya. Saya mempelajari banyak panduan sensor dan memodifikasinya untuk memahami bagaimana saya dapat menggunakannya dengan sensor saya. Pada awalnya, idenya adalah untuk menggunakan tabel pencarian seperti yang saya lihat sensor lain, tetapi saya akhirnya menggunakan kemampuan floating point arduino untuk melakukan persamaan log/linier berdasarkan tabel konversi yang disediakan oleh MKS dalam manual.

Kode di bawah ini hanya menetapkan A0 sebagai unit titik mengambang untuk tegangan, yaitu 0-5v dari pembagi tegangan. Kemudian dihitung kembali ke skala 10v dan diinterpolasi menggunakan persamaan P=10^(v-k) di mana p adalah tekanan, v adalah tegangan pada skala 10v dan k adalah satuan, dalam hal ini torr, diwakili oleh 11.000. Ini menghitung bahwa dalam floating point, kemudian menampilkannya pada layar LCD dalam notasi ilmiah menggunakan dtostre.

#include #include // menginisialisasi perpustakaan dengan nomor pin antarmuka LiquidCrystal lcd(12, 11, 5, 4, 3, 2);// rutinitas pengaturan berjalan sekali ketika Anda menekan reset: void setup() { / / inisialisasi komunikasi serial pada 9600 bit per detik: Serial.begin (9600); pinMode(A0, INPUT); //A0 ditetapkan sebagai input #define PRESSURE_SENSOR A0; lcd.begin(16, 2); lcd.print("Instrumen MKS"); lcd.setCursor(0, 1); lcd.print("Katoda Dingin IMT"); penundaan (6500); lcd.clear(); lcd.print("Ukur Tekanan:"); }// rutinitas loop berjalan berulang-ulang selamanya: void loop() { float v = analogRead(A0); //v adalah tegangan input yang ditetapkan sebagai unit floating point pada analogBaca v = v * 10.0 / 1024; //v adalah tegangan pembagi 0-5v diukur dari 0 hingga 1024 dihitung ke 0v hingga 10v skala float p = pow(10, v - 11.000); //p adalah tekanan dalam torr, yang diwakili oleh k dalam persamaan [P=10^(vk)] yaitu- // -11.000 (K = 11.000 untuk Torr, 10.875 untuk mbar, 8.000 untuk mikron, 8.875 untuk Pascal) Serial.print(v); tekanan arangE[8]; dtostre(p, tekananE, 1, 0); // format ilmiah dengan 1 tempat desimal lcd.setCursor(0, 1); lcd.print(tekananE); lcd.print("Tor"); }

Langkah 3: Pengujian

Image
Image
Pengujian
Pengujian

Saya melakukan tes menggunakan catu daya eksternal, secara bertahap dari 0-5v. Saya kemudian melakukan perhitungan secara manual dan memastikan mereka setuju dengan nilai yang ditampilkan. Tampaknya terbaca sedikit dengan jumlah yang sangat kecil, namun ini tidak terlalu penting, karena berada dalam spesifikasi yang saya butuhkan.

Proyek ini adalah proyek kode pertama yang besar bagi saya, dan saya tidak akan menyelesaikannya jika bukan karena komunitas arduino yang fantastis:3

Panduan dan proyek sensor yang tak terhitung jumlahnya sangat membantu dalam mencari tahu bagaimana melakukan ini. Ada banyak trial and error, dan banyak yang macet. Tetapi pada akhirnya, saya sangat senang dengan bagaimana ini keluar, dan jujur, pengalaman melihat kode yang Anda buat melakukan apa yang seharusnya untuk pertama kalinya cukup mengagumkan.

Direkomendasikan: