Gangguan yang sama
Selama magang saya di pabrik, saya memutuskan untuk membawa sapu tangan konverter dan melihat osiloskop apa yang sebenarnya terjadi pada hasilnya. Yang mengejutkan saya, gangguan itu bukan pada output konverter, tetapi pada prinsipnya pada catu daya. Ketika level PWM berubah dari rendah ke tinggi, penurunan tegangan yang kuat diamati sepanjang garis 5 volt, sekitar 1-2 volt, dan ketika keadaan berubah dari tinggi ke rendah, terjadi lonjakan sekitar 1,5 - 2,5 volt. Dan semua denyut ini berada pada frekuensi PWM. Saat diberi daya langsung dari baterai, tidak ada yang benar-benar berubah. Dalam hal ini, saya memutuskan untuk tidak pernah menggunakan jenis konverter seperti itu lagi di perangkat saya (Khususnya, jika Anda perlu meningkatkan tegangan lebih dari 2 kali). Ada juga rekomendasi untuk mengganti transistor efek medan dengan transistor bipolar,tetapi upaya saya untuk menemukan sesuatu dengan gain tinggi (sekitar 300), dalam paket smd dan dengan tegangan sekitar 450-500 volt tidak berhasil, ini mengacu pada penggunaan transistor efek medan, yang terbuka penuh pada 10 volt.
Mentransfer firmware ke perangkat live
Sejujurnya, saya tidak berpikir bahwa saya akan mengalami masalah, karena semuanya bekerja dengan baik di papan tempat memotong roti (dan ketika saya membuat papan untuk versi pertama pada layar tujuh segmen, semuanya baik-baik saja), dan tidak ada masalah yang muncul setelah firmware.
Faktanya, hanya layar dan menu yang berfungsi, tetapi PWM, ADC, pengatur waktu, dan interupsi menolak untuk berfungsi. Sekali lagi, semuanya bekerja dengan baik di arduin. Akibatnya, dengan mengatur ulang inisialisasi timer di beberapa tempat, saya berhasil mencapai pengoperasian normal perangkat.
Kebutuhan untuk menghapus kerangka Arduino. Ya, Arduino itu buruk, yang telah saya pahami lebih dari sekali, dan saat ini hanya metode milis dan mikro yang digunakan dari kerangka ini di kode saya. Saya mencoba untuk mengatasi semua ini, dan beberapa keberhasilan telah dicapai. Juga, arduina masih hidup di kode saya karena pustaka tampilan, yang sudah saya kalahkan tanpa menggunakan arduina, dan sebentar lagi akan hilang sama sekali, tk. berapa pun jumlah memori yang saya butuhkan akan ditambahkan. Selain itu, menggunakan C ++ sebagai ganti C dalam pemrograman mikrokontroler bukanlah praktik terbaik, jadi poin ini juga perlu dilakukan ulang.
Apa yang baru di firmware?
Dari hal utama yang ditambahkan / diperbaiki:
- Penundaan dihapus dari indikasi suara, yang sangat meningkatkan kecepatan dan akurasi pembacaan.
- , .
- . .
- .
- , . , .
- .
- , ( 30 255 /).
- . , , .
- ( ) .
Apa yang berubah pada PCB?
- Konverter boost dan konverter linier 3,3 volt dihubungkan langsung dari baterai.
- Mengubah pembagi tegangan pada baterai dari 10 kOhm menjadi 220 kOhm.
- Transistor efek medan dipindahkan dari penguat emitor ke pembagi tegangan untuk melepaskan tegangan dari baterai.
- Resistor pull-up ekstra dilepas.
- Beberapa komponen celup diganti dengan smd.
Apa yang ada di firmware?
Selain yang saya sebutkan sebelumnya, firmware berisi:
- Tiga mode operasi: pencarian, pengukuran (seperti dalam dosimeter Pripyat) dan partikel / s
- Perhitungan kesalahan pengukuran dalam mode pencarian. Ada algoritme tingkat lanjut dan yang lebih sederhana. Dipilih di file konfigurasi.
- Pengaturan untuk: sbm-20, sbm-19, beta-1-1
- Plotting (Ya, bukan baru, tapi kelihatannya bagus).
- Mode tidur (Mengurangi konsumsi daya, perangkat menyala baik dengan menahan tombol atau jika ada alarm). Belum selesai saat ini.
- Indikasi suara dan cahaya serta pengaturannya
- Rusia dan Inggris (Diatur dalam konfigurasi dengan firmware)
File konfigurasi menjelaskan apa yang dapat dinonaktifkan dan berapa banyak memori yang akan dibebaskan.
Navigasi dan menu
Perangkat ini dikendalikan oleh dua tombol. Kiri disetel ulang dan kanan disetel.
Untuk masuk ke menu, Anda harus menahan keduanya selama 1 detik.
Navigasi melalui menu dilakukan dengan menekan sebentar tombol. Memilih item yang diperlukan - menahan tombol set. Batal atau Kembali - tahan tombol reset.
Menu menerapkan sebagian besar dari apa yang saya inginkan, tetapi jika bukan karena batasan memori dan port gpio, maka kemampuan untuk membangun peta (sd + gnss) akan ditambahkan.
Mode pencarian
Menurut saya mode ini tidak membutuhkan penjelasan yang detail. Pada dasarnya, ini menunjukkan nilai saat ini dalam rontgen mikro per jam, dan mengubah kisaran tergantung pada nilai saat ini. Pembacaan dirata-rata tidak melebihi median, tetapi hanya jumlah pengukuran dari waktu ke waktu, dan dapat diaktifkan dengan menekan tombol kanan. Di sudut kanan atas, pengisian baterai ditampilkan, kesalahan statistik sedikit lebih rendah dan dosis yang terkumpul bahkan lebih rendah.
Juga dalam mode ini, Anda dapat mematikan suara dan alarm. Untuk mematikan suara, tekan tombol kiri sekali, dan untuk mematikan alarm, tekan tombol kiri selama alarm, atau tahan tombol kiri.
Mode pengukuran aktivitas
Mode yang dapat disesuaikan, baik dalam waktu maupun dalam jumlah pengukuran. Waktu pengukuran maksimal yang dapat diatur adalah 120 menit, dan jumlah pengukurannya 2. Intinya adalah mengotomatiskan proses pengukuran yang tersedia dalam dosimeter Pripyat. Yang kedua dikurangi dari dimensi pertama dan modul diambil dari ini, sebagai hasilnya, jumlah partikel tetap untuk waktu yang ditentukan diperoleh. Ini dapat digunakan dengan berbagai cara, baik untuk mengukur produk dan untuk memisahkan partikel individu, mengukur pertama, katakanlah pertama dengan filter alfa, dan kemudian tanpa itu, dll.
Rezim serupa diterapkan oleh banyak orang yang menyusun dosimeter mereka sendiri, dan saya tidak terkecuali.
Mode pengukuran kedua
Mode ini menunjukkan jumlah partikel per detik, tidak peduli seberapa logis kedengarannya. Jumlah partikel dari pengukuran sebelumnya ditampilkan di sisi kanan layar. Grafik dibuat dengan cara yang sama seperti pada mode pencarian.
Perumahan
Saat ini bodi berikut telah dikembangkan dalam program fusion 360.
Bodi tersebut dibuat untuk sensor Beta-1-1 dan dengan harapan akan dicetak pada printer 3D. Saya akan memposting model dalam format stl nanti.
Lubang untuk memasang papan dibuat untuk melebur di sana selongsong sekrup M2.
Masalah instrumen
Masalah utama, seperti dicatat dalam komentar di bagian terakhir, adalah bahwa masalah dengan alarm palsu pada dasarnya belum terpecahkan, tetapi, katakanlah, "ditutupi dengan selotip," dan ya, saya sepenuhnya setuju dengan itu. Saya mencoba melawannya dengan cara lain, tetapi tidak memberikan hasil yang sangat baik. Saya melakukan daya langsung dari baterai, ini sebagian mengurangi kisaran riak daya, memasang kapasitor elektrolitik tambahan untuk catu daya (saya meletakkannya bahkan pada 10000mkf, itu juga tidak membantu), yah, keramik juga tidak menyelesaikan masalah. Saya menyuarakan kesimpulan saya tentang ini, saya tidak akan lagi mengulangi kesalahan seperti itu. Trafo akan keluar sedikit lebih mahal (jadi untuk masing-masing 250 rubel, dibandingkan dengan 45 untuk induktansi.), Tetapi akan ada lebih sedikit masalah dengannya.
Karena fakta bahwa generasi stabil berada pada 4 kHz, derit yang lemah namun mengganggu terdengar dalam diam. Anda tidak dapat melakukan pengintaian dengan perangkat ini.
Konverter tegangan juga merupakan kegagalan besar. Saya memutuskan untuk melakukannya di atasnya, hanya karena ketersediaan induktor, tetapi saya tidak segera memikirkan sisanya.
Tetapi terlepas dari kekurangannya, bagi saya, dia sepenuhnya memenuhi tugas yang saya inginkan. Untuk dosimeter rumah tangga, saya rasa cukup, untuk yang profesional sudah cukup.
Konsumsi daya perangkat
Perangkat mengeluarkan baterai 600 mAh dalam 12-14 jam penggunaan aktif (pengosongan hingga 3,6). Kemungkinan besar, kapasitas baterainya tidak lagi 600 mAh, karena dia berdiri di rokok elektronik selama satu setengah tahun.
Apa berikutnya?
Di masa mendatang, saya akan menyelesaikan firmware perangkat saat ini, dan saya akan mulai melakukan hal yang sama pada stm32, tetapi dengan mempertimbangkan semua kesalahan saya. Saya juga ingin menambahkan dukungan untuk kartu sd, gnss, mengganti layar dengan 1202, dan dimungkinkan untuk membuat daya dari baterai jika saya tidak menemukan sirkuit mikro step-down dc-dc yang bagus.
Tambahan
Saya lupa mengatakannya. Karena perangkat tidak dapat merekam lebih dari 1000 partikel (pada kenyataannya, sedikit lebih sedikit) per detik, penghitung akan ditambahkan ke program untuk memeriksa bahwa batas pengukuran telah tercapai. Saat ini diterapkan seperti ini. Jika nilai latar belakang berada pada 0 mcr / jam selama lebih dari 3 detik, alarm akan dipicu dan flag over-range dinyalakan.
Tautkan ke bagian sebelumnya