İçindekiler:
- Adım 1: Araçlar ve Parçalar
- Adım 2: Geiger Sayacınızı Birleştirin
- Adım 3: Geiger Sayacının Elektriksel Olarak Test Edilmesi
- Adım 4: Kablolama
- Adım 5: Kod
- Adım 6: Serial.println ve Serial.print
- Adım 7: J305 Arka Plan Radyasyonu Ölçümü
- Adım 8: J305 Duman Sensörü Radyasyonunun Ölçümü
- Adım 9: SBM-20
- Adım 10: Geiger Sayacının LCD İle Kablolanması
- Adım 11: LCD'li Geiger Sayacı
- Adım 12: Dosyalar
Video: Arduino DIY Geiger Sayacı: 12 Adım (Resimlerle)
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:20
Yani bir DIY Geiger sayacı sipariş ettiniz ve onu Arduino'nuza bağlamak istiyorsunuz. Hatta bir şeylerin yanlış olduğunu bulmak için diğerlerinin Geiger sayaçlarını Arduino'ya nasıl bağladığını kopyalamaya çalışıyorsunuz. Geiger sayacınız çalışmıyor gibi görünse de, Geiger sayacınızı Arduino'nuza bağladığınızda takip ettiğiniz DIY'de açıklandığı gibi hiçbir şey çalışmıyor.
Bu Eğitilebilir Kitapta, bu aksaklıklardan bazılarının nasıl giderileceğini ele alacağım.
Unutma; Arduino'yu her seferinde bir adım bir araya getirin ve kodlayın, doğrudan bitmiş bir projeye giderseniz ve cevapsız bir kablo veya kod satırı varsa, sorunu bulmanız sonsuza kadar sürebilir.
Adım 1: Araçlar ve Parçalar
Prototip kutusu Ferrero Rocher şeker kutusu kullandım.
Küçük ekmek tahtası
16x2 LCD
Arduino kurulu ether bir UNO veya Nano
220 Ω direnç
Pot 10 kΩ ayarlanabilir direnç.
DIY Geiger Sayaç Kiti
Jumper Telleri
Pil konektörü veya kablo demeti
Osiloskop
İnce Burunlu Pense
Küçük Standart Tornavida
Adım 2: Geiger Sayacınızı Birleştirin
Geiger Tüpünüzdeki herhangi bir hasar; ve Geiger sayacınız çalışmayacaktır, bu nedenle Geiger tüpünüzün hasar görmesini önlemek için koruyucu akrilik kapağı kullanın.
Bu Talimat, aynı Geiger sayacını kırık bir Geiger tüpüyle nasıl tamir ettiğimi ve gelecekte kırılmayı önlemek için koruyucu akrilik kapağı nasıl taktığımı anlatıyor.
www.instructables.com/id/Repairing-a-DIY-G…
Adım 3: Geiger Sayacının Elektriksel Olarak Test Edilmesi
Önce güç kaynağı için doğru voltajı kullanın; USB kablosu, doğrudan bilgisayarınızdan 5 volt DC sağlar, ancak 3 AA pil tutucu, toplam voltajı 4,5 volt olan 1,5 volt alkalin piller içindir. 1,2 voltluk şarj edilebilir NI-Cd veya NI-MH piller kullanıyorsanız, toplam 4,8 volt voltaj için 4 AA pil tutucuya ihtiyacınız olacaktır. 4.5 volttan daha az kullanırsanız, Geiger sayacı gerektiği gibi çalışmayabilir.
Geiger sayaçlarının çıkışında çok az devre vardır; hoparlör bir tık sesi çıkardığı ve LED yanıp söndüğü sürece, VIN pininde bir sinyal almalısınız.
Çıkış sinyalinden emin olmak için; osiloskop probunun pozitif tarafını VIN'e ve osiloskop probunun negatif tarafını toprağa bağlayarak çıkışa bir osiloskop bağlayın.
Geiger sayacını tetiklemek için sadece arka plan radyasyonunu beklemek yerine, Geiger sayacı reaksiyonlarını artırmak için bir duman dedektörü iyon odasından americium-241 kullandım. Geiger sayacının çıkışı +3 voltta başladı ve Geiger tüpü alfa parçacıklarına her tepki verdiğinde 0 volta düştü ve bir an sonra +3 volta geri döndü. Arduino ile kaydedeceğiniz sinyal budur.
Adım 4: Kablolama
Geiger sayacını size Arduino ve bilgisayarınıza bağlamanın iki yolu vardır.
Arduino üzerindeki GND'yi Geiger sayacındaki GND'ye bağlayın.
Arduino'daki 5V'yi Geiger sayacındaki 5V'ye bağlayın.
Geiger sayacındaki VIN'i Arduino'daki D2'ye bağlayın.
Geiger sayacına bağlı bağımsız güç ile.
Arduino üzerindeki GND'yi Geiger sayacındaki GND'ye bağlayın.
Geiger sayacındaki VIN'i Arduino'daki D2'ye bağlayın.
Arduino'yu bilgisayarınıza bağlayın.
Adım 5: Kod
Arduino IDE'yi açın ve kodu yükleyin.
// Bu Çizim bir dakikadaki darbe sayısını sayar.
// Arduino üzerindeki GND'yi Geiger sayacındaki GND'ye bağlayın.
// Arduino'daki 5V'yi Geiger sayacındaki 5V'ye bağlayın.
// Geiger sayacındaki VIN'i Arduino'daki D2'ye bağlayın.
imzasız uzun sayımlar; //GM Tube olayları için değişken
imzasız uzun öncekiMillis; //zamanı ölçmek için değişken
void dürtü() { // dipanggil setiap ada sinyalleri FALLING di pin 2
sayar++;
}
#define LOG_PERIOD 60000 // sayım oranı
geçersiz kurulum() {//kurulum
sayım = 0;
Seri.başla(9600);
pinMode(2, GİRİŞ);
ataşeKesme(dijitalPinToInterrupt(2), dürtü, DÜŞÜYOR); //harici kesmeleri tanımla
Serial.println("Sayacı başlat");
}
void loop() { //ana döngü
imzasız uzun akımMillis = millis();
if (currentMillis - öncekiMillis > LOG_PERIOD) {
öncekiMillis = şimdikiMillis;
Serial.println(sayımlar);
sayım = 0;
}
}
Araçlar'da, kullandığınız Arduino'yu veya diğer kartı seçin.
Araçlar'da Bağlantı Noktasını ve Com'u seçin
Kodu yükleyin.
Kod Araçlar'a yüklendikten sonra Seri Monitör'ü seçin ve Geiger sayacınızın çalışmasını izleyin.
Hataları arayın. Bu kodla ilgili tek şey biraz sıkıcı olması, her sayı için 1 dakika beklemeniz gerekiyor.
Adım 6: Serial.println ve Serial.print
Bu, kodda bulduğum ilk hatalardan biri; bu yüzden “Serial.println(cpm);” kodunuzda buna dikkat edin. ve “Serial.print(cpm);”.
Seri.println(cpm); her sayımı kendi satırına yazdıracaktır.
Seri.baskı(cpm); her sayımı aynı satıra yazdıran büyük bir sayı gibi görünecek ve bu sayının ne olduğunu söylemeyi imkansız hale getirecektir.
Adım 7: J305 Arka Plan Radyasyonu Ölçümü
Birincisi, zaten doğal olarak var olan doğal radyasyon olan arka plan radyasyonunun ölçümüdür. Listelenen sayı, her dakika ölçülen radyoaktif parçacıkların toplamı olan CPM'dir (dakika başına sayı).
J305 arka plan ortalama sayısı 15.6 BGBM idi.
Adım 8: J305 Duman Sensörü Radyasyonunun Ölçümü
Bir Geiger sayacının size tekrar tekrar aynı sayımı vermesi nadir değildir, bu nedenle bir radyasyon kaynağı ile kontrol edin. Americium'dan radyasyon ölçümünü bir duman dedektöründen gelen iyon odasını kullandım. Duman sensörü, havadaki duman parçacıklarını iyonize eden alfa parçacıkları kaynağı olarak Americium'u kullanır. Alfa ve beta parçacıklarının gama parçacıklarıyla birlikte Geiger tüpüne ulaşabilmesi için sensör üzerindeki metal kapağı çıkardım.
Her şey yolundaysa, sayılar değişmeli.
Bir duman dedektöründen alınan Americium-241 iyon odası ortalama sayısı 519 CPM idi.
Adım 9: SBM-20
Bu Arduino taslağı, Alex Boguslavsky tarafından yazılmış değiştirilmiş versiyondur.
Bu Sketch, 15 saniyede darbe sayısını sayar ve onu daha az sıkıcı hale getirmek için dakika başına sayıma dönüştürür.
Eklediğim kod “Serial.println("Sayacı başlat");”.
Değiştirdiğim kod; "Seri.baskı(cpm);" “Serial.println(cpm);”ye.
“#define LOG_PERIOD 15000”; sayma süresini 15 saniye olarak ayarladım, “#define LOG_PERIOD 5000” veya 5 saniye olarak değiştirdim. 1 dakika veya 15 saniye ile 5 saniye arasında ortalamada kayda değer bir fark bulamadım.
#Dahil etmek
#define LOG_PERIOD 15000 //Milisaniye cinsinden kayıt süresi, önerilen değer 15000-60000.
#define MAX_PERIOD 60000 //Bu çizimi değiştirmeden maksimum kayıt süresi
imzasız uzun sayımlar; //GM Tube olayları için değişken
imzasız uzun cpm; // BGBM değişkeni
imzasız int çarpanı; //bu çizimde hesaplama BGBM'si için değişken
imzasız uzun öncekiMillis; //zaman ölçümü için değişken
void tube_impulse(){ //Geiger Kit'ten olayları yakalamak için alt prosedür
sayar++;
}
void setup(){ //setup alt prosedürü
sayım = 0;
bpm = 0;
çarpan = MAX_PERIOD / LOG_PERIOD; // çarpan hesaplanıyor, günlük periyodunuza bağlı
Seri.başla(9600);
ataşeKesme(0, tube_impulse, DÜŞEN); //harici kesmeleri tanımla
Serial.println("Sayacı başlat"); // eklediğim kod
}
void loop(){ //ana döngü
imzasız uzun akımMillis = millis();
if(currentMillis - öncekiMillis > LOG_PERIOD){
öncekiMillis = şimdikiMillis;
cpm = sayar * çarpan;
Seri.println(cpm); // değiştirdiğim kod
sayım = 0;
}
}
SBM-20 arka plan ortalama sayısı 23.4 BGBM idi.
Adım 10: Geiger Sayacının LCD İle Kablolanması
LCD Bağlantısı:
LCD K pinini GND'ye
LCD A pininden 220 Ω dirençten Vcc'ye
LCD D7 pininden dijital pin 3'e
LCD D6 pininden dijital pin 5'e
LCD D5 pininden dijital pin 6'ya
LCD D4 pininden dijital pin 7'ye
LCD Etkinleştirme pini dijital pin 8'e
LCD R/W pimi toprağa
LCD RS pininden dijital pin 9'a
10 kΩ potu ayarlamak için LCD VO pimi
LCD Vcc pinini Vcc'ye
GND'ye LCD Vdd pini
Pot 10 kΩ ayarlanabilir direnç.
Vcc, Vo, Vdd
Gayger sayacı
VIN'den dijital pin 2'ye
5 V ila + 5 V
GND toprağa
Adım 11: LCD'li Geiger Sayacı
// kitaplık kodunu dahil et:
#Dahil etmek
#Dahil etmek
#define LOG_PERIOD 15000 //Milisaniye cinsinden kayıt süresi, önerilen değer 15000-60000.
#define MAX_PERIOD 60000 //Bu çizimi değiştirmeden maksimum kayıt süresi
#define PERIOD 60000.0 // (60 sn) bir dakikalık ölçüm periyodu
uçucu işaretsiz uzun CNT; // dozimetreden gelen kesintileri saymak için değişken
imzasız uzun sayımlar; //GM Tube olayları için değişken
imzasız uzun cpm; // BGBM değişkeni
imzasız int çarpanı; //bu çizimde hesaplama BGBM'si için değişken
imzasız uzun öncekiMillis; //zaman ölçümü için değişken
imzasız uzun dispPeriod; // zamanı ölçmek için değişken
imzasız uzun BGBM; // BGBM'yi ölçmek için değişken
// kütüphaneyi arayüz pinlerinin numaralarıyla başlat
LiquidCrystal lcd (9, 8, 7, 6, 5, 3);
geçersiz kurulum() { // kurulum
lcd.begin(16, 2);
CNT = 0;
BGBM = 0;
dispPeriod = 0;
lcd.setCursor(0, 0);
lcd.print("RH Elektronik");
lcd.setCursor(0, 1);
lcd.print("Geiger Sayacı");
gecikme(2000);
cleanDisplay();
ekInterrupt(0, GetEvent, DÜŞEN); // Pin 2'deki olay
}
boşluk döngüsü () {
lcd.setCursor(0, 0); // LCD'ye metin ve CNT yazdır
lcd.print("BGBM:");
lcd.setCursor(0, 1);
lcd.print("CNT:");
lcd.setCursor(5, 1);
lcd.print(CNT);
if (millis() >=dispPeriod + PERIOD) { // Bir dakika biterse
cleanDisplay(); // LCD'yi temizle
// Birikmiş CNT olayları hakkında bir şeyler yapın….
lcd.setCursor(5, 0);
BGBM = CNT;
lcd.print(BGBM); //Görüntülenen BGBM
CNT = 0;
dispPeriod = millis();
}
}
void GetEvent(){ // Cihazdan Olay Al
CNT++;
}
void cleanDisplay (){ // LCD rutinini temizle
lcd.clear();
lcd.setCursor(0, 0);
lcd.setCursor(0, 0);
}
Adım 12: Dosyalar
Bu dosyaları Arduino'nuza indirin ve kurun.
Her.ino dosyasını aynı ada sahip bir klasöre yerleştirin.
Önerilen:
Çalışma Geiger Sayacı W/ Minimal Parçalar: 4 Adım (Resimlerle)
Çalışma Geiger Sayacı W/ Minimal Parçalar: Bildiğim kadarıyla, inşa edebileceğiniz en basit işleyen Geiger sayacı. Bu, elektronik bir sineklik tarafından çalınan yüksek voltajlı bir yükseltme devresi tarafından çalıştırılan, Rus yapımı bir SMB-20 Geiger tüpü kullanıyor. Beta parçacıklarını algılar ve oyun
ESP8266 ve Dokunmatik Ekranlı DIY Geiger Sayacı: 4 Adım (Resimlerle)
ESP8266 ve Dokunmatik Ekranlı DIY Geiger Sayacı: GÜNCELLEME: WIFI VE DİĞER EKLENEN ÖZELLİKLER İLE YENİ VE GELİŞTİRİLMİŞ VERSİYON BURADA bir Geiger Sayacı tasarladım ve yaptım - iyonlaştırıcı radyasyonu algılayabilen ve kullanıcısını tehlikeli ortam radyasyon seviyelerine karşı uyarabilen bir cihaz - hayır tıklayarak çok tanıdık
Yeni ve Geliştirilmiş Geiger Sayacı - Şimdi WiFi İle!: 4 Adım (Resimlerle)
Yeni ve Geliştirilmiş Geiger Sayacı - Şimdi WiFi İle!: Bu, bu Eğitilebilir Dosyadaki Geiger sayacımın güncellenmiş bir versiyonudur. Oldukça popülerdi ve onu inşa etmekle ilgilenen insanlardan çok sayıda geri bildirim aldım, işte devamı: GC-20. Bir Geiger sayacı, dozimetre ve radyasyon m
PKE Metre Geiger Sayacı: 7 Adım (Resimlerle)
PKE Meter Geiger Sayacı: Peltier Soğutmalı Bulut Odamı tamamlamak için uzun zamandır bir Geiger sayacı oluşturmak istiyordum. Bir Geiger sayacına sahip olmanın (umarım) pek yararlı bir amacı yoktur, ancak sadece eski Rus tüplerini seviyorum ve bunun olacağını düşündüm
DIY Arduino Geiger Sayacı: 6 Adım (Resimlerle)
DIY Arduino Geiger Sayacı: Herkese merhaba! Nasılsınız? Bu Nasıl Yapılır projesidir, benim adım Konstantin ve bugün size bu Geiger sayacını nasıl yaptığımı göstermek istiyorum. Bu cihazı neredeyse geçen yılın başından itibaren kurmaya başladım. O zamandan beri 3 sınavdan geçti