Turinys:
- 1 žingsnis: įrankiai ir dalys
- 2 žingsnis: Surinkite savo „Geiger“skaitiklį
- 3 veiksmas: elektrinis Geigerio skaitiklio testavimas
- 4 žingsnis: laidų prijungimas
- 5 žingsnis: kodas
- 6 žingsnis: Serial.println vs Serial.print
- 7 žingsnis: J305 foninio radiacijos matavimas
- 8 žingsnis: J305 Dūmų jutiklio spinduliuotės matavimas
- 9 žingsnis: SBM-20
- 10 veiksmas: „Geiger“skaitiklio prijungimas prie LCD
- 11 žingsnis: „Geiger“skaitiklis su LCD
- 12 žingsnis: failai
Video: „Arduino DIY Geiger“skaitiklis: 12 žingsnių (su nuotraukomis)
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:48
Taigi jūs užsisakėte „pasidaryk pats“„Geiger“skaitiklį ir norite jį prijungti prie „Arduino“. Jūs einate į internetą ir bandote pakartoti, kaip kiti prijungė savo „Geiger“skaitiklį prie „Arduino“, tik norėdami sužinoti, kad kažkas negerai. Nors atrodo, kad jūsų „Geiger“skaitiklis nieko neveikia, kaip aprašyta „pasidaryk pats“, kai prijungiate „Geiger“skaitiklį prie „Arduino“.
Šioje instrukcijoje aptarsiu, kaip pašalinti kai kuriuos iš šių trikčių.
Prisiminti; surinkite ir koduokite „Arduino“po vieną žingsnį, jei einate tiesiai į baigtą projektą ir yra praleistas laidas ar kodo eilutė, tai gali užtrukti amžinai, kol surasite problemą.
1 žingsnis: įrankiai ir dalys
Dėžutės prototipas Naudojau „Ferrero Rocher“saldainių dėžutę.
Maža duonos lenta
16x2 LCD ekranas
Arduino plokštės eteris UNO arba Nano
220 Ω rezistorius
Pot 10 kΩ reguliuojamas rezistorius.
„Pasidaryk pats“„Geiger“skaitiklių rinkinys
Trumpieji laidai
Akumuliatoriaus jungtis arba laidai
Osciloskopas
Smulkios nosies replės
Mažas standartinis atsuktuvas
2 žingsnis: Surinkite savo „Geiger“skaitiklį
Bet kokia jūsų „Geiger Tube“žala; ir jūsų „Geiger“skaitiklis neveiks, todėl naudokite apsauginį akrilo dangtelį, kad nepažeistumėte „Geiger“vamzdžio.
Ši instrukcija yra apie tai, kaip aš pataisiau tą patį „Geiger“skaitiklį su sulaužytu „Geiger“vamzdeliu ir uždėjau apsauginį akrilo dangtelį, kad ateityje nesulaužyčiau.
www.instructables.com/id/Repairing-a-DIY-G…
3 veiksmas: elektrinis Geigerio skaitiklio testavimas
Pirmiausia naudokite tinkamą maitinimo šaltinio įtampą; USB laidas tiekia 5 voltų nuolatinę srovę tiesiai iš kompiuterio, tačiau 3 AA baterijų laikiklis skirtas 1,5 volto šarminėms baterijoms, kurių bendra įtampa yra 4,5 voltai. Jei naudojate 1,2 volto įkraunamas NI-Cd arba NI-MH baterijas, jums reikės 4 AA baterijų laikiklio, kurio bendra įtampa yra 4,8 voltai. Jei naudojate mažiau nei 4,5 voltų, „Geiger“skaitiklis gali neveikti taip, kaip turėtų.
„Geiger“skaitiklių išvestyje yra labai mažai grandinių; Taigi kol garsiakalbis skleidžia tiksintį garsą ir mirksi šviesos diodas, turėtumėte gauti signalą ant VIN kaiščio.
Norėdami būti tikri dėl išėjimo signalo; prie išėjimo prijunkite osciloskopą, prijungdami teigiamą osciloskopo zondo pusę prie VIN ir neigiamą osciloskopo zondo pusę prie žemės.
Užuot tik laukęs foninės spinduliuotės, kad suveiktų Geigerio skaitiklis, aš panaudojau americium-241 iš dūmų detektorių jonų kameros, kad padidinčiau Geigerio skaitiklių reakcijas. „Geiger“skaitiklio išėjimas prasidėjo nuo +3 voltų ir nukrito iki 0 voltų kiekvieną kartą, kai „Geiger“vamzdis reagavo į alfa daleles ir po akimirkos grįžo prie +3 voltų. Tai yra signalas, kurį įrašysite naudodami „Arduino“.
4 žingsnis: laidų prijungimas
Yra du būdai, kaip prijungti „Geiger“skaitiklį prie „Arduino“ir kompiuterio.
Prijunkite „Arduino“GND prie GND „Geiger“skaitiklyje.
Prijunkite 5 V „Arduino“prie 5 V Geigerio skaitiklio.
Prijunkite VIN ant „Geiger“skaitiklio prie „A2“„Arduino“.
Nepriklausoma energija prijungta prie „Geiger“skaitiklio.
Prijunkite „Arduino“GND prie GND „Geiger“skaitiklyje.
Prijunkite VIN ant „Geiger“skaitiklio prie „A2“„Arduino“.
Prijunkite „Arduino“prie kompiuterio.
5 žingsnis: kodas
Atidarykite „Arduino IDE“ir įkelkite kodą.
// Šis eskizas skaičiuoja impulsų skaičių per minutę.
// Prijunkite GND „Arduino“prie GND Geigerio skaitiklyje.
// Prijunkite 5 V „Arduino“prie 5 V Geigerio skaitiklio.
// Prijunkite VIN ant Geigerio skaitiklio prie D2 Arduino.
nepasirašyti ilgi skaičiavimai; // kintamasis GM Tube įvykiams
unsigned ilgai ankstesnisMillis; // kintamasis laiko matavimui
void impulse () {// dipanggil setiap ada sinyal FALLING di pin 2
skaičiuoja ++;
}
#define LOG_PERIOD 60000 // skaičiavimo rodiklis
void setup () {// sąranka
skaičiuoja = 0;
Serial.begin (9600);
pinMode (2, INPUT);
attachInterrupt (digitalPinToInterrupt (2), impulsas, FALLING); // apibrėžti išorinius pertraukimus
Serial.println („Pradėti skaitiklis“);
}
void loop () {// pagrindinis ciklas
nepasirašyta ilga srovėMillis = milis ();
if (currentMillis - previousMillis> LOG_PERIOD) {
previousMillis = dabartinisMillis;
Serial.println (skaičiuoja);
skaičiuoja = 0;
}
}
Įrankiuose pasirinkite „Arduino“ar kitą naudojamą plokštę.
Įrankiuose pasirinkite „Port“ir „Com“
Įkelkite kodą.
Kai kodas bus įkeltas į Įrankiai, pasirinkite „Serial Monitor“ir stebėkite, kaip veikia „Geiger“skaitiklis.
Ieškokite nesklandumų. Vienintelis dalykas, susijęs su šiuo kodu, yra šiek tiek nuobodus, todėl kiekvieną kartą turite laukti 1 minutę.
6 žingsnis: Serial.println vs Serial.print
Tai vienas iš pirmųjų klaidų, kurias radau kode; todėl stebėkite tai savo kode „Serial.println (cpm)“; ir „Serial.print (cpm);“.
Serial.println (cpm); kiekvieną skaičių išspausdins savo eilutėje.
Serijinis atspaudas (cpm); atrodys kaip vienas didelis skaičius, spausdinantis kiekvieną skaičių toje pačioje eilutėje, todėl neįmanoma pasakyti, koks yra skaičius.
7 žingsnis: J305 foninio radiacijos matavimas
Pirmasis yra foninės spinduliuotės, natūralios spinduliuotės, kuri jau egzistuoja natūraliai, matavimas. Išvardytas skaičius yra MUT (skaičius per minutę), tai yra iš viso išmatuotos radioaktyviosios dalelės kas minutę.
J305 fono vidurkis buvo 15,6 MUT.
8 žingsnis: J305 Dūmų jutiklio spinduliuotės matavimas
Neretai „Geiger“skaitiklis pakartotinai pateikia tą patį skaičių, todėl patikrinkite jį radiacijos šaltiniu. Aš naudojau spinduliuotės matavimą iš Americium jonų kameros iš dūmų detektoriaus. Dūmų jutiklis naudoja „Americium“kaip alfa dalelių, kurios jonizuoja ore esančias dūmų daleles, šaltinį. Aš pašalinau metalinį jutiklio dangtelį, kad alfa ir beta dalelės kartu su gama dalelėmis galėtų patekti į Geigerio vamzdelį.
Jei viskas gerai, skaičiai turėtų pasikeisti.
„Americium-241“iš dūmų detektorių jonų kameros vidutinis skaičius buvo 519 MUT.
9 žingsnis: SBM-20
Šis „Arduino“eskizas yra modifikuota Alexo Boguslavskio versija.
Šis eskizas skaičiuoja impulsų skaičių per 15 sekundžių ir konvertuoja jį į skaičių per minutę, kad būtų mažiau varginantis.
I kodas pridėjo „Serial.println („ Start counter “);“.
I kodas pakeistas; „Serijinis atspaudas (cpm);“į „Serial.println (cpm);“.
„#Define LOG_PERIOD 15000“; nustato skaičiavimo laiką iki 15 sekundžių, aš jį pakeičiau į „#define LOG_PERIOD 5000“arba 5 sekundes. Aš neradau pastebimo skirtumo tarp skaičiavimo 1 minutę arba 15 sekundžių ir 5 sekundžių.
#įtraukti
#define LOG_PERIOD 15000 // Registravimo laikotarpis milisekundėmis, rekomenduojama vertė 15000-60000.
#define MAX_PERIOD 60000 // Maksimalus registravimo laikotarpis nekeičiant šio eskizo
nepasirašyti ilgi skaičiavimai; // kintamasis GM Tube įvykiams
nepasirašytas ilgas cpm; // kintamasis MUT
unsigned int multiplier; // kintamasis, skirtas apskaičiuoti MUT šiame eskize
unsigned ilgai ankstesnisMillis; // kintamasis laiko matavimui
void tube_impulse () {// antrinė įvykių fiksavimo iš „Geiger Kit“procedūra
skaičiuoja ++;
}
void setup () {// sąrankos papildoma procedūra
skaičiuoja = 0;
cpm = 0;
daugiklis = MAX_PERIOD / LOG_PERIOD; // skaičiavimo daugiklis, priklauso nuo jūsų žurnalo laikotarpio
Serial.begin (9600);
attachInterrupt (0, tube_impulse, FALLING); // apibrėžti išorinius pertraukimus
Serial.println („Pradėti skaitiklis“); // kodas, kurį pridėjau
}
void loop () {// pagrindinis ciklas
nepasirašyta ilga srovėMillis = milis ();
if (currentMillis - previousMillis> LOG_PERIOD) {
previousMillis = dabartinisMillis;
cpm = skaičiuoja * daugiklį;
Serial.println (cpm); // kodą pakeičiau
skaičiuoja = 0;
}
}
SBM-20 fono vidurkis buvo 23,4 MUT.
10 veiksmas: „Geiger“skaitiklio prijungimas prie LCD
LCD jungtis:
LCD K kaištis prie GND
Skystųjų kristalų LCD kontaktas su 220 Ω rezistoriumi prie Vcc
LCD D7 kaištis į skaitmeninį kaištį 3
LCD D6 kaištis į skaitmeninį kaištį 5
LCD D5 kaištis į skaitmeninį kaištį 6
LCD D4 kaištis į skaitmeninį kaištį 7
LCD Įjunkite kaištį į skaitmeninį kaištį 8
LCD R/W kaištis prie žemės
LCD RS kaištis į skaitmeninį kaištį 9
LCD VO kaištis, skirtas 10 kΩ puodui reguliuoti
LCD Vcc kaištis į Vcc
LCD Vdd kaištis prie GND
Pot 10 kΩ reguliuojamas rezistorius.
Vcc, Vo, Vdd
Geigerio skaitiklis
VIN į skaitmeninį kaištį 2
Nuo 5 V iki +5 V.
GND į žemę
11 žingsnis: „Geiger“skaitiklis su LCD
// įtraukite bibliotekos kodą:
#įtraukti
#įtraukti
#define LOG_PERIOD 15000 // Registravimo laikotarpis milisekundėmis, rekomenduojama vertė 15000-60000.
#define MAX_PERIOD 60000 // Maksimalus registravimo laikotarpis nekeičiant šio eskizo
#define PERIOD 60000.0 // (60 sek.) vienos minutės matavimo laikotarpis
nepastovus nepasirašytas ilgas CNT; // kintamasis, skirtas skaičiuoti pertraukas iš dozimetro
nepasirašyti ilgi skaičiavimai; // kintamasis GM Tube įvykiams
nepasirašytas ilgas cpm; // kintamasis MUT
unsigned int multiplier; // kintamasis, skirtas apskaičiuoti MUT šiame eskize
unsigned ilgai ankstesnisMillis; // kintamasis laiko matavimui
nepasirašytas ilgas laikotarpis; // kintamasis laiko matavimui
nepasirašytas ilgas MUT; // kintamasis MUT matavimui
// inicijuoti biblioteką naudojant sąsajos kaiščių numerius
„LiquidCrystal lcd“(9, 8, 7, 6, 5, 3);
void setup () {// sąranka
LCD. pradžia (16, 2);
CNT = 0;
MUT = 0;
dispPeriod = 0;
lcd.setCursor (0, 0);
lcd.print („RH Electronics“);
lcd.setCursor (0, 1);
lcd.print ("Geigerio skaitiklis");
vėlavimas (2000 m.);
cleanDisplay ();
attachInterrupt (0, GetEvent, FALLING); // Įvykis ant 2 kaiščio
}
void loop () {
lcd.setCursor (0, 0); // spausdinti tekstą ir CNT LCD ekrane
lcd.print ("MUT:");
lcd.setCursor (0, 1);
lcd.print ("CNT:");
lcd.setCursor (5, 1);
lcd.print (CNT);
if (milis ()> = dispPeriod + PERIOD) {// Jei viena minutė baigėsi
cleanDisplay (); // Išvalyti LCD
// Darykite ką nors dėl sukauptų CNT įvykių….
lcd.setCursor (5, 0);
MUT = CNT;
lcd.print (MUT); // Rodyti MUT
CNT = 0;
dispPeriod = milis ();
}
}
void GetEvent () {// Gauti įvykį iš įrenginio
CNT ++;
}
void cleanDisplay () {// Išvalyti LCD rutiną
lcd.clear ();
lcd.setCursor (0, 0);
lcd.setCursor (0, 0);
}
12 žingsnis: failai
Atsisiųskite ir įdiekite šiuos failus į „Arduino“.
Įdėkite kiekvieną.ino failą į tą patį pavadinimą.
Rekomenduojamas:
Darbinis „Geiger“skaitiklis su minimaliomis dalimis: 4 žingsniai (su nuotraukomis)
Veikiantis „Geiger“skaitiklis su minimaliomis dalimis: Mano žiniomis, čia yra paprasčiausias veikiantis „Geiger“skaitiklis, kurį galite sukurti. Tam naudojamas rusiškas SMB-20 „Geiger“vamzdis, varomas aukštos įtampos padidinimo grandinės, apiplėštos iš elektroninio skraidyklės. Jis aptinka beta daleles ir gama
„Pasidaryk pats“„Geiger“skaitiklis su ESP8266 ir jutikliniu ekranu: 4 žingsniai (su nuotraukomis)
„Pasidaryk pats“„Geiger“skaitiklis Su ESP8266 ir jutikliniu ekranu: ATNAUJINIMAS: NAUJA IR PATVIRTINTA VERSIJA SU WIFI IR KITOMIS PAPILDOMOMIS FUNKCIJOMIS „HEREI“suprojektavo ir pagamino „Geiger“skaitiklį - prietaisą, galintį aptikti jonizuojančiąją spinduliuotę ir įspėti naudotoją apie pavojingą aplinkos spinduliuotės lygį. per daug pažįstamas spustelėjimas ne
Naujas ir patobulintas „Geiger“skaitiklis - dabar su „WiFi“!: 4 žingsniai (su nuotraukomis)
Naujas ir patobulintas „Geiger“skaitiklis - dabar su „WiFi“!: Tai atnaujinta mano „Geiger“skaitiklio versija iš šios instrukcijos. Tai buvo gana populiaru ir aš gavau daug atsiliepimų iš žmonių, besidominčių jį statyti, todėl čia yra tęsinys: „GC-20“. Geigerio skaitiklis, dozimetras ir radiacijos matuoklis
PKE matuoklis Geiger skaitiklis: 7 žingsniai (su nuotraukomis)
PKE matuoklis „Geiger“skaitiklis: Aš jau seniai norėjau sukurti „Geiger“skaitiklį, kuris papildytų mano „Peltier“aušinamą debesų kamerą. Turėti (tikiuosi) ne itin naudingą tikslą turėti Geigerio skaitiklį, bet aš tiesiog myliu senus rusiškus vamzdžius ir maniau, kad tai bus
Pasidaryk pats „Arduino Geiger“skaitiklis: 6 žingsniai (su nuotraukomis)
Pasidaryk pats „Arduino Geiger“skaitiklis: Sveiki visi! Kaip tau sekasi? Tai projektas „How-ToDo“, mano vardas Konstantinas, ir šiandien noriu jums parodyti, kaip sukūriau šį „Geiger“skaitiklį. Šį įrenginį pradėjau kurti beveik nuo praėjusių metų pradžios. Nuo to laiko ji patyrė 3 kompozicijas