Isi kandungan:

Arduino terkawal Nixie-tiub Termometer: 14 Langkah
Arduino terkawal Nixie-tiub Termometer: 14 Langkah

Video: Arduino terkawal Nixie-tiub Termometer: 14 Langkah

Video: Arduino terkawal Nixie-tiub Termometer: 14 Langkah
Video: Arduino-based Nixie Tube Clock 2024, November
Anonim
Termometer Tiub Nixie Terkawal Arduino
Termometer Tiub Nixie Terkawal Arduino

Bertahun-tahun yang lalu saya membeli sebilangan besar tiub Nixie IN-14 dari Ukraine dan sejak itu saya membelinya. Saya selalu mahu menggunakannya untuk peranti tersuai dan jadi saya memutuskan untuk akhirnya menyelesaikan projek ini dan membina sesuatu yang menggunakan kaedah memaparkan angka yang hampir kuno ini, tetapi buat masa ini saya tidak mahu membina jam tiub Nixie (saya fikir bahawa agak sukar untuk dilakukan dan buat masa ini saya mempunyai cukup banyak projek jam hipster), jadi saya berfikir: Mengapa tidak membina termometer untuk bilik saya yang boleh diaktifkan dengan bertepuk tangan? Saya menjadikannya bertepuk tangan diaktifkan sehingga tidak akan berterusan sepanjang masa, kerana saya fikir itu adalah pembaziran tenaga dan saya juga tidak mahu ia menerangi bilik, terutama pada waktu malam.

Tiub Nixie dikendalikan oleh Arduino, yang juga bertanggungjawab untuk membaca suhu dari sensor suhu DHT-11 yang terkenal.

Ini adalah salinan ringkas dari siri asal saya yang dikeluarkan di laman web saya. Lihatlah, jika anda berminat dengan artikel dan projek teknikal lain yang belum saya edit untuk Instructables.

Langkah 1: Tiub Nixie dan Voltan Tinggi

Tiub Nixie dan Voltan Tinggi
Tiub Nixie dan Voltan Tinggi

Tiub Nixie adalah tiub katod sejuk yang diisi dengan gas tertentu. Selanjutnya, ia mengandungi anod biasa (atau katod) dan katod yang terpisah (atau anod) untuk setiap digit atau watak yang dapat mereka paparkan (Lihat rajah 1.1).

Dalam kes saya, tiub mempunyai anod biasa dan digitnya adalah katod yang berasingan. Tidak seperti tiub lain pada masa itu (transistor, dioda, …) Tiub Nixie biasanya tidak perlu dipanaskan untuk berfungsi dengan baik (dengan itu namanya: tiub katod sejuk).

Satu-satunya perkara yang mereka perlukan adalah voltan yang cukup tinggi, biasanya antara 150 dan 180V DC. Ini biasanya merupakan masalah utama semasa mengendalikan peranti paparan ini kerana ini bermaksud, bahawa anda memerlukan bekalan kuasa atau litar langkah dan pengawal khusus, yang mampu menghidupkan dan mematikan katod tanpa menggunakan terlalu banyak garis GPIO.

Langkah 2: Penukar 12V hingga 170V DC

Penukar 12V hingga 170V DC
Penukar 12V hingga 170V DC

Mari kita mulakan dengan membuat voltan yang diperlukan untuk membuat tiub menyala. Nasib baik tabung Nixie yang biasa memerlukan voltan tinggi tetapi arus yang sangat rendah, yang bermaksud bahawa cukup mudah dan murah untuk membina penukar sedemikian.

Berhati-hati semasa menggunakan litar ini dan voltan tinggi secara umum. Mereka bukan mainan dan mendapat zap sangat menyakitkan dalam kes terbaik dan berpotensi membunuh anda dalam keadaan terburuk! Sentiasa matikan bekalan kuasa sebelum menukar / memperbaiki litar dan pastikan menggunakan casing yang betul, sehingga tidak ada yang menyentuhnya secara tidak sengaja semasa digunakan!

Saya menggunakan litar bersepadu MC34063 yang terkenal untuk step-up converter. IC kecil ini menggabungkan semua yang anda perlukan untuk menukar jenis penukar. Walau bagaimanapun, daripada menggunakan transistor IC yang terpasang, saya memutuskan untuk menggunakan transistor luaran, yang membantu mengekalkan IC sejuk dan juga membolehkan saya mendapat arus semasa yang lebih tinggi pada output. Selain itu, kerana sangat sukar untuk mencari nilai yang tepat untuk semua komponen ini untuk mendapatkan output 170V, saya menyerah setelah beberapa hari pengiraan dan ujian (Yang paling tinggi yang saya dapat dari 12V adalah 100V) dan memutuskan untuk tidak mencipta semula roda itu. Sebagai gantinya, saya membeli sebuah kit dari eBay, yang hampir mengikut skema dari lembaran data ini dengan beberapa perubahan (Lihat rajah 2.1. Saya juga menambahkan keterangan pada gambar).

Langkah 3: Mengendalikan Tiub Dengan Arduino

Mengendalikan Tiub Dengan Arduino
Mengendalikan Tiub Dengan Arduino

Jadi, seperti yang anda lihat sebelumnya, tiub memerlukan voltan tinggi untuk dihidupkan. "Jadi bagaimana anda boleh menghidupkan dan mematikan tiub dengan pengawal mikro, seperti Arduino?", Anda mungkin bertanya.

Terdapat beberapa laluan alternatif yang boleh anda ambil untuk mencapai tujuan ini. Contohnya, pemandu tiub Nixie yang berdedikasi. Anda masih boleh mendapatkan stok lama dan IC terpakai yang baru, tetapi sukar didapati dan harganya mahal dan saya tidak menjangkakan ia akan lebih senang dicari pada masa akan datang, kerana ia tidak lagi dihasilkan.

Oleh itu, saya tidak akan menggunakan pemandu tiub Nixie. Sebagai gantinya, saya akan menggunakan transistor dan binari hingga penyahkod perpuluhan, jadi saya tidak perlu menggunakan 10 garis GPIO setiap tiub nixie. Dengan penyahkod ini, saya memerlukan 4 baris GPIO setiap tiub dan satu baris untuk memilih antara dua tiub.

Selain itu, agar saya tidak perlu beralih antara tabung sepanjang masa dengan frekuensi tinggi, saya akan menggunakan flip-flop (yang memerlukan satu baris GPIO tambahan untuk menetapkan semula) untuk mengekalkan input terakhir selagi diperlukan (Lihat Rajah 3.1, klik di sini untuk litar kawalan penuh dalam resolusi tinggi).

Langkah 4: Pertimbangan Reka Bentuk

Semasa merancang litar ini, saya dapati penyahkod dengan R / S-Flip-Flops terbina dalam, yang masih dihasilkan (contohnya CD4514BM96). Tetapi malangnya, saya tidak dapat mendapatkannya dengan cepat kerana masa penghantaran adalah dua minggu dan saya tidak mahu menunggu begitu lama. Oleh itu, jika tujuan anda adalah membuat PCB kecil (atau anda ingin memiliki sebilangan kecil IC yang berbeza), maka anda pasti harus menggunakan cip seperti itu, dan bukannya menggunakan Flip-Flops luaran.

Terdapat juga varian terbalik dekoder ini. Sebagai contoh, CD4514BM965 adalah varian terbalik ke IC yang disebutkan di atas, di mana nombor yang dipilih akan rendah dan bukan tinggi, yang tidak, apa yang kita mahukan dalam kes ini. Oleh itu, perhatikan perincian ini semasa memesan bahagian anda. (Jangan risau: Senarai bahagian lengkap akan dimasukkan kemudian dalam Instructable ini!)

Anda boleh menggunakan sebarang jenis transistor untuk tatasusunan anda, selagi penilaiannya sepadan dengan voltan dan arus tiub anda. Terdapat juga IC transistor-array yang tersedia, tetapi sekali lagi, saya tidak dapat menemui mana-mana yang dinilai melebihi 100V atau yang cepat tersedia.

Langkah 5: Array Transistor

Array Transistor
Array Transistor

Pada langkah 3 saya tidak menunjukkan susunan transistor untuk memastikan grafik mudah dan mudah difahami. Rajah 5.1 menunjukkan susunan transistor yang hilang secara terperinci.

Seperti yang anda lihat, setiap output digital penyahkod disambungkan ke pangkal transistor npn melalui perintang penghad semasa. Itu sahaja, sungguh sederhana.

Pastikan, transistor yang anda gunakan dapat menangani voltan 170V dan arus 25mA. Untuk mengetahui, apa nilai asas perintang anda, gunakan kalkulator yang dihubungkan pada akhir Instruksional ini di bawah "Bacaan lebih lanjut".

Langkah 6: Membaca Suhu

Membaca Suhu
Membaca Suhu
Membaca Suhu
Membaca Suhu

Anda mungkin pernah mendengar mengenai sensor suhu dan kelembapan gabungan DHT-11 (atau DHT-22) (Lihat rajah 6.1). Satu-satunya perbezaan antara sensor ini dan DHT-22 adalah ketepatan dan julat pengukuran. 22 mempunyai jarak yang lebih tinggi dan ketepatan yang lebih baik, tetapi untuk mengukur suhu bilik, DHT-11 lebih dari cukup dan lebih murah, walaupun hanya dapat memberikan hasil bilangan bulat.

Sensor memerlukan tiga sambungan: VCC, GND dan satu baris untuk komunikasi bersiri. Cukup sambungkannya ke sumber voltan dan sambungkan wayar tunggal untuk komunikasi ke pin GPIO Arduino. Lembar data mencadangkan penambahan pull-up resistor antara garis kompres dan VCC, sehingga saluran komunikasi berada dalam keadaan tinggi, ketika tidak digunakan (Lihat rajah 6.2).

Nasib baik sudah ada perpustakaan untuk DHT-11 (dan sekumpulan perpustakaan yang didokumentasikan dengan baik untuk DHT-22), yang akan menangani komunikasi antara Arduino dan sensor suhu. Oleh itu, aplikasi ujian untuk bahagian ini agak pendek:

Langkah 7: Lengkapkan Lakaran Arduino

Jadi setelah pembacaan sensor dilakukan, langkah terakhir adalah mengambil maklumat dari sensor dan menampilkan suhu dengan tabung Nixie.

Untuk menghidupkan nombor tertentu pada tiub, anda perlu menghantar kod 4-bit ke penyahkod, yang akan menghidupkan transistor yang betul. Selain itu, anda juga perlu menghantar satu bit yang menunjukkan, yang mana satu daripada dua tabung yang ingin anda tetapkan sekarang.

Saya memutuskan untuk menambahkan R / S-Latch tepat di hadapan setiap input penyahkod. Bagi anda, yang tidak tahu, bagaimana salah satu kait ini berfungsi, berikut adalah penjelasan ringkas:

Ini pada dasarnya membolehkan anda menyimpan sedikit maklumat. Selak dapat SET dan RESET (maka nama R / S-Latch, juga dikenal sebagai S / R-Latch atau R / S-Flip-Flop). Dengan mengaktifkan input SET kait, output Q diatur ke 1. Dengan mengaktifkan input RESET, Q menjadi 0. Sekiranya kedua-dua input tidak aktif, keadaan Q sebelumnya dipertahankan. Sekiranya kedua-dua input diaktifkan pada masa yang sama, anda menghadapi masalah, kerana kait dipaksa ke keadaan tidak stabil, yang pada dasarnya bermaksud bahawa tingkah lakunya tidak dapat diramalkan, jadi hindari keadaan ini dengan segala cara.

Oleh itu, untuk memaparkan nombor 5 di pertama (kiri) dan nombor 7 di tiub Nixie kedua, anda harus:

  • Kembalikan semula semua selak
  • Aktifkan tiub kiri (Hantar 0 melalui garis EN)
  • Tetapkan input penyahkod (D, C, B dan A): 0101
  • Tetapkan D, C, B dan A semua ke 0, sehingga keadaan terakhir dipertahankan (Ini tidak perlu dilakukan jika kedua-dua tabung harus menunjukkan angka yang sama)
  • Aktifkan tiub yang betul
  • Tetapkan input penyahkod (D, C, B dan A): 0111
  • Tetapkan D, C, B dan A semua ke 0, sehingga keadaan terakhir dikekalkan

Untuk mematikan tiub, anda boleh menghantar nilai yang tidak betul (seperti 10 atau 15). Penyahkod kemudian akan mematikan semua output dan oleh itu tidak ada transistor yang tersedia akan diaktifkan dan tidak ada arus yang akan mengalir melalui tiub Nixie.

Anda boleh memuat turun keseluruhan firmware di sini

Langkah 8: Mengatasi PCB

Mengatasi PCB
Mengatasi PCB
Mengatasi PCB
Mengatasi PCB
Mengatasi PCB
Mengatasi PCB

Saya mahu menggabungkan semuanya (kecuali litar peningkatan) pada satu PCB, yang saya rasa ternyata cukup baik (Lihat rajah (8.1).

Tujuan utama saya adalah untuk menjaga ukuran PCB sekecil mungkin, tetapi masih menyediakan beberapa ruang, di mana ia dapat dipasang ke casing. Saya juga mahu menggunakan komponen SMD, supaya saya dapat memperbaiki teknik pematerian saya dan mereka juga akan membantu menjaga PCB agar tidak nipis sehingga casing tersuai tidak perlu besar dan besar (Lihat rajah 8.2).

Oleh kerana penggunaan komponen SMD, kebanyakan sambungan harus dibuat di sisi komponen. Saya cuba menggunakan sebilangan kecil vias yang mungkin. Lapisan bawah hanya mempunyai garis GND, VCC dan + 170V dan beberapa sambungan yang harus dibuat antara pin yang berbeza dari IC yang sama. Itulah juga sebab mengapa saya menggunakan dua IC DIP-16 dan bukannya varian SMD mereka.

Anda boleh memuat turun fail reka bentuk PCB dan skema EAGLE di sini.

Kerana ini adalah reka bentuk kecil dengan toleransi dan jejak yang sangat kecil, adalah mustahak untuk mencari pengeluar yang baik untuk PCB supaya mereka kelihatan bagus dan berfungsi dengan baik.

Saya memutuskan untuk memesannya di PCBWay dan saya tidak akan lebih berpuas hati dengan produk yang mereka hantarkan kepada saya (Lihat rajah 8.3).

Anda boleh mendapatkan sebut harga segera untuk prototaip anda dalam talian tanpa perlu mendaftar. Sekiranya anda memutuskan untuk memesan: Mereka juga mempunyai penukar dalam talian yang berguna ini yang akan menukar fail EAGLE ke format gerber yang betul. Walaupun EAGLE juga mempunyai penukar, saya sangat suka penukar dalam talian dari pengeluar, kerana dengan cara ini anda dapat yakin 100%, bahawa tidak akan ada masalah keserasian dengan versi gerber.

Langkah 9: Penyelesaian masalah

Penyelesaian masalah
Penyelesaian masalah

Semasa pertama kali menguji PCB saya yang baru dipateri, tidak ada yang berjaya. Tiub sama sekali tidak akan mempamerkan apa-apa (penyahkod mencapai nilai> 9) atau nombor rawak akan terus kekal atau menyala dan mati, yang kelihatan bagus tetapi tidak diingini dalam kes ini.

Pada mulanya, saya menyalahkan perisian. Oleh itu, saya membuat penguji Nixie ini untuk Arduino (Lihat rajah 9.1).

Skrip ini membolehkan anda memasukkan sejumlah pin GPIO (0-8) yang anda mahu ubah keadaannya. Ia kemudian meminta negara. Semasa memasukkan pin nombor 9, kait diset semula.

Oleh itu, saya meneruskan ujian dan membuat jadual kebenaran dengan semua kemungkinan input untuk A, B, C dan D. Selain itu, mereka akan bertindak balas secara berbeza terhadap kombinasi input yang sama.

Saya fikir, mesti ada masalah elektrik juga. Saya tidak dapat menemui masalah teknikal dalam reka bentuk, tetapi kemudian saya memikirkan sesuatu yang telah saya pelajari sejak dulu (tetapi tidak pernah mempunyai masalah sejak itu): Flux boleh menjadi konduktif. Ini mungkin bukan masalah untuk aplikasi digital dan voltan rendah biasa, tetapi sepertinya ini adalah masalah di sini. Oleh itu, saya membersihkan papan dengan alkohol dan selepas itu ia berfungsi dengan baik.

Jenis. Perkara lain yang saya perhatikan: Bahagian yang saya gunakan dalam EAGLE semasa membuat susun atur PCB saya tidak betul (sekurang-kurangnya untuk tabung saya). Tiub saya nampaknya mempunyai pinout yang berbeza.

Hanya beberapa perkara yang perlu diingat semasa litar anda tidak berfungsi dengan segera.

Langkah 10: Kes Khas

Kes Adat
Kes Adat
Kes Adat
Kes Adat
Kes Adat
Kes Adat

Setelah semua yang lain diselesaikan, saya ingin membina casing yang bagus untuk menempatkan litar saya. Nasib baik saya mempunyai banyak kayu yang tersisa dari projek jam perkataan saya, yang ingin saya gunakan untuk membina grid di bahagian dalam (Lihat rajah 10.1).

Saya membina kes menggunakan ukuran berikut:

Kuantiti Pengukuran [mm] Penerangan
6 40 x 125 x 5 Bahagian bawah, atas, depan dan belakang
2 40 x 70 x 5 Potongan sisi kecil
2 10 x 70 x 10 Potongan struktur di bahagian dalam (Lihat rajah 8).
2 10 x 70 x 5 Potongan struktur pada penutup (Lihat rajah 11).

Setelah memotong kepingan itu, saya meletakkannya bersama-sama untuk membuat kotak yang ditunjukkan dalam gambar. 10.2.

Rajah 10.3 menunjukkan sarung dari sudut yang berbeza.

Bahagian atas casing sama dengan bahagian bawahnya, tanpa dinding dan dengan bahagian struktur yang kurang tinggi (lihat rajah 10.4). Ia berfungsi sebagai penutup dan boleh dilepaskan untuk menyervis komponen di bahagian dalam. PCB akan dipasang ke penutup dengan dua tiub melekat dari casing.

Setelah saya berpuas hati dengan bagaimana semuanya sesuai, saya hanya merekatkan semua bahagian dan membiarkannya kering selama beberapa jam.

Anda mungkin tertanya-tanya, bagaimana saya memasang PCB pada penutup apabila tidak ada skru yang kelihatan di bahagian atasnya. Saya hanya menggerudi lubang untuk skru ke bahagian struktur penutup dan kemudian membuat pengalih masuk untuk kepala skru masuk (lihat rajah 10.5).

Langkah 11: Menyelesaikan Pembinaan

Menyelesaikan Binaan
Menyelesaikan Binaan
Menyelesaikan Binaan
Menyelesaikan Binaan

Setelah PCB utama dipasang ke penutup, semua komponen lain hanya perlu diletakkan di dalam casing, yang dapat dilihat pada gambar. 11.1.

Seperti yang anda lihat, saya cuba menyusun kabel sebaik mungkin dan saya rasa ia agak baik. Semuanya sesuai dengan casing, seperti yang anda lihat dalam gambar. 11.2.

Saya juga menambahkan DC-Jack ke dalam kes itu (dan sedikit gila dengan gam panas di sana). Tetapi dengan cara ini adalah mungkin untuk menghidupkan termometer dengan pengecas telefon generik dan kabel pemasangan. Namun, anda juga boleh menambahkan bateri 5V, jika anda mahu.

Langkah 12: Bahagian yang Digunakan dalam Binaan Ini

Untuk elektronik:

Kuantiti Produk Harga Perincian
1 DHT-11 4, 19€ Mendapatnya dari kedai yang mahal. Anda boleh mendapatkannya dengan harga kurang dari 1 $ dari China.
2 CD4028BM 0, 81€ Penyahkod
2 74HCT00D 0, 48€ NAND
1 74HCT04D 0, 29€ Penyongsang
1 Pinheader 0, 21€ 2x5 pin
1 Terminal skru 0, 35€ 2 sambungan
20 SMBTA42 0, 06€ npn-Transistor
20 Perintang SMD 0, 10€ 120K
2 74LS279N 1, 39€ R / S-Flip jepit
1 PCB 4, 80€ Pesan di sini
2 IN-14 Nixies 2, 00€
1 Penukar langkah ke atas 6, 79€

Anda juga memerlukan sejenis mikrokontroler. Saya menggunakan Arduino Pro Micro.

Untuk kes tersebut:

Kuantiti Produk Harga Perincian
N. A. Kayu ~2€ Lihat di atas
4 Skru M3x16 0, 05€
4 Kacang M3 0, 07€
1 botol Gam kayu 1, 29€
1 tin Cat kayu 5, 79€

Langkah 13: Kesimpulannya

Kesimpulannya
Kesimpulannya
Kesimpulannya
Kesimpulannya

Saya sangat gembira dengan hasil binaan ini. Sekali sekala saya berjaya memotong kepingan kayu dengan tepat dan juga tidak lupa memasang lubang untuk PCB. Dan sebenarnya kelihatan hebat juga (Lihat rajah 13.1).

Selain itu, menarik untuk bekerja dengan tiub dan voltan tinggi secara umum dan ada beberapa perkara yang perlu dipertimbangkan ketika melakukannya.

Sebagai kesimpulan, saya katakan bahawa bagus, kita mempunyai cara yang lebih mudah untuk menunjukkan nombor hari ini tetapi di sisi lain, tidak ada yang setanding dengan cahaya dan penampilan keseluruhan tiub nixie, yang sangat saya nikmati, terutamanya, ketika gelap (Lihat rajah 13.2).

Harap anda menyukai arahan ini. Sekiranya anda melakukannya, pastikan anda melihat laman web saya untuk artikel dan projek yang lebih menarik!

Langkah 14: Atribusi, Sumber dan Bacaan Lanjut

Bacaan lebih lanjutMC34063 Perincian aplikasi - ti.comMC4x063 Lembar Data - ti.com IC pemacu tiub Nixie - tubehobby.comDHT-11 Arduino library - arduino.ccA Transistor sebagai suis - petervis.com Teori perintang asas, formula dan kalkulator dalam talian - petervis.com

Sumber gambar [Gamb. 1.1] Tiub Nixie IN-14, coldwarcreations.com [Gamb. 2.1] Litar peningkatan, dilukis sendiri tetapi diambil dari ebay.com [Gamb. 6.1] Sensor suhu DHT-11 - tinytronics.nl

Disyorkan: