Sisällysluettelo:
- Vaihe 1: Työkalut ja osat
- Vaihe 2: Kokoa Geiger -laskuri
- Vaihe 3: Geiger -laskurin sähköinen testaus
- Vaihe 4: Johdotus
- Vaihe 5: Koodi
- Vaihe 6: Serial.println vs Serial.print
- Vaihe 7: J305 -säteilyn taustamittaus
- Vaihe 8: J305 Savuanturin säteilyn mittaus
- Vaihe 9: SBM-20
- Vaihe 10: Geiger -laskurin kytkentä nestekidenäytöllä
- Vaihe 11: Geiger -laskuri nestekidenäytöllä
- Vaihe 12: Tiedostot
Video: Arduino DIY Geiger -laskuri: 12 vaihetta (kuvilla)
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:03
Joten olet tilannut DIY Geiger -laskurin ja haluat yhdistää sen Arduinoosi. Menet verkossa ja yrität toistaa, miten muut ovat yhdistäneet Geiger -laskurinsa Arduinoon vain löytääkseen jotain vikaa. Vaikka Geiger -laskurisi ei näytä toimivan, mikään ei toimi seuraamasi DIY -ohjeiden mukaisesti, kun liität Geiger -laskurin Arduinoosi.
Tässä Instructable -ohjelmassa käsittelen joidenkin näiden häiriöiden vianmääritystä.
Muistaa; koota ja koodata Arduino askel kerrallaan, jos menet suoraan valmiiseen projektiin ja johto tai koodirivi puuttuu, ongelman löytäminen voi viedä sinut ikuisesti.
Vaihe 1: Työkalut ja osat
Prototyyppilaatikko Käytin Ferrero Rocher -karkkirasiaa.
Pieni leipälauta
16x2 LCD
Arduino -levyn eetteri UNO tai Nano
220 Ω vastus
Potti 10 kΩ säädettävä vastus.
DIY Geiger -laskurisarja
Hyppyjohdot
Akun liitin tai johtosarja
Oskilloskooppi
Hieno nenäpihdit
Pieni vakio ruuvimeisseli
Vaihe 2: Kokoa Geiger -laskuri
Vauriot Geiger -putkessasi; ja Geiger -laskurisi ei toimi, joten käytä suojaavaa akryylisuojusta estääksesi Geiger -putken vaurioitumisen.
Tässä ohjeessa kerrotaan, kuinka korjasin saman Geiger -laskurin rikkoutuneella Geiger -putkella ja asensin akryylisuojuksen, jotta estettäisiin rikkoutuminen tulevaisuudessa.
www.instructables.com/id/Repairing-a-DIY-G…
Vaihe 3: Geiger -laskurin sähköinen testaus
Käytä ensin virtalähteelle sopivaa jännitettä; USB -johto syöttää 5 voltin tasavirtaa suoraan tietokoneeltasi, mutta 3 AA -paristopidike on tarkoitettu 1,5 voltin alkaliparistoille, joiden kokonaisjännite on 4,5 volttia. Jos käytät 1,2 voltin ladattavia NI-Cd- tai NI-MH-akkuja, tarvitset 4 AA-paristopidikkeen, jonka kokonaisjännite on 4,8 volttia. Jos käytät alle 4,5 volttia, Geiger -laskuri ei ehkä toimi oikein.
Geiger -laskurien ulostulossa on hyvin vähän piirejä; niin kauan kuin kaiutin antaa tikittävän äänen ja LED vilkkuu, sinun pitäisi saada signaali VIN -nastaan.
Varmistaaksesi lähtösignaalin; liitä oskilloskooppi lähtöliitäntään liittämällä oskilloskooppianturin positiivinen puoli VIN -numeroon ja oskilloskooppi -anturin negatiivinen puoli maahan.
Sen sijaan, että odottaisin vain taustasäteilyä laukaisemaan Geiger-laskurin, käytin americium-241: tä savunilmaisimien ionikammiosta lisäämään Geiger-laskurireaktioita. Geiger -laskurin lähtö alkoi +3 voltista ja laski 0 volttiin joka kerta, kun Geiger -putki reagoi alfahiukkasiin ja palasi +3 volttiin hetkeä myöhemmin. Tämä on signaali, jonka tallennat Arduinolla.
Vaihe 4: Johdotus
Voit yhdistää Geiger -laskurin Arduinoon ja tietokoneeseesi kahdella tavalla.
Yhdistä Arduinon GND Geiger -laskurin GND: hen.
Liitä Arduinon 5 V Geiger -laskurin 5 V: iin.
Liitä Geiger -laskurin VIN -numero Arduinon D2 -liittimeen.
Riippumaton virta kytkettynä Geiger -laskuriin.
Yhdistä Arduinon GND Geiger -laskurin GND: hen.
Liitä Geiger -laskurin VIN -numero Arduinon D2 -liittimeen.
Liitä Arduino tietokoneeseen.
Vaihe 5: Koodi
Avaa Arduino IDE ja lataa koodi.
// Tämä luonnos laskee pulssien määrän minuutissa.
// Liitä Arduinon GND Geiger -laskurin GND: hen.
// Kytke Arduinon 5 V Geiger -laskurin 5 V: iin.
// Liitä Geiger -laskurin VIN -numero Arduinon D2 -liittimeen.
allekirjoittamattomat pitkät laskut; // GM Tube -tapahtumien muuttuja
allekirjoittamaton pitkä edellinenMillis; // ajan muuttuja
void impulse () {// dipanggil setiap ada sinyal FALLING di pin 2
laskee ++;
}
#define LOG_PERIOD 60000 // laskenopeus
void setup () {// setup
laskee = 0;
Sarja.alku (9600);
pinMode (2, TULO);
attachInterrupt (digitalPinToInterrupt (2), impulssi, FALLING); // määrittele ulkoiset keskeytykset
Serial.println ("Käynnistyslaskuri");
}
void loop () {// pääjakso
allekirjoittamaton pitkävirtaMillis = millis ();
if (currentMillis - previousMillis> LOG_PERIOD) {
previousMillis = currentMillis;
Sarja.println (laskee);
laskee = 0;
}
}
Valitse Työkalut -valikosta Arduino tai muu käyttämäsi kortti.
Valitse Työkalut -valikosta Portti ja Com
Lataa koodi.
Kun koodi on ladattu Työkalut -kohtaan, valitse Sarjamonitori ja katso Geiger -laskurin toimintaa.
Etsi häiriöitä. Ainoa asia tässä koodissa on se, että se on hieman tylsiä, ja sinun on odotettava 1 minuutti jokaista laskentaa varten.
Vaihe 6: Serial.println vs Serial.print
Tämä on yksi ensimmäisistä virheistä, jotka löysin koodista; joten varo sitä koodissasi "Serial.println (cpm);" ja "Sarjanjälki (cpm);".
Sarja.println (cpm); tulostaa jokaisen laskun omalle rivilleen.
Sarjajälki (cpm); näyttää yhdeltä suurelta numerolta, joka tulostaa jokaisen luvun samalla rivillä, joten on mahdotonta sanoa, mikä määrä on.
Vaihe 7: J305 -säteilyn taustamittaus
Ensimmäinen on taustasäteilyn mittaus, luonnollinen säteily, joka on jo luonnossa. Lueteltu luku on CPM (count per minute), joka on yhteensä mitattuja radioaktiivisia hiukkasia joka minuutti.
J305 -taustakeskiarvo oli 15,6 tuhannen näyttökerran hintaa.
Vaihe 8: J305 Savuanturin säteilyn mittaus
Ei ole harvinaista, että Geiger -laskuri antaa sinulle saman määrän toistuvasti, joten tarkista se säteilylähteellä. Käytin säteilymittausta Americium -ionikammiosta savunilmaisimesta. Savuanturi käyttää Americiumia lähteenä alfahiukkasille, jotka ionisoivat savuhiukkasia ilmassa. Poistin anturin metallikannen, jotta alfa- ja beetahiukkaset pääsevät Geiger -putkeen gammahiukkasten mukana.
Jos kaikki on kunnossa, lukujen pitäisi muuttua.
Americium-241 savunilmaisimien ionikammion keskiarvo oli 519 CPM.
Vaihe 9: SBM-20
Tämä Arduinon luonnos on muokattu versio, jonka on kirjoittanut Alex Boguslavsky.
Tämä luonnos laskee pulssien määrän 15 sekunnissa ja muuntaa sen laskuiksi minuutissa, mikä tekee siitä vähemmän tylsiä.
Koodi I lisäsi "Serial.println (" Käynnistyslaskuri ");".
Koodi I muuttui; "Sarjan tulostus (cpm);" kohtaan "Serial.println (cpm);".
"#Define LOG_PERIOD 15000"; asettaa laskenta -ajaksi 15 sekuntia, muutin sen arvoksi "#define LOG_PERIOD 5000" tai 5 sekuntia. En löytänyt merkittävää eroa keskiarvossa laskemisen välillä 1 minuutti tai 15 sekuntia ja 5 sekuntia.
#sisältää
#define LOG_PERIOD 15000 // Kirjautumisaika millisekunteina, suositusarvo 15000-60000.
#define MAX_PERIOD 60000 // Suurin kirjautumisaika muuttamatta tätä luonnosta
allekirjoittamattomat pitkät laskut; // GM Tube -tapahtumien muuttuja
allekirjoittamaton pitkä cpm; // muuttuja CPM: lle
unsigned int kerroin; // muuttuja CPM: n laskemiseksi tässä luonnoksessa
allekirjoittamaton pitkä edellinenMillis; // muuttuja ajan mittaamiseen
void tube_impulse () {// alimenettely tapahtumien tallentamiseen Geiger Kitistä
laskee ++;
}
void setup () {// setup subprocedure
laskee = 0;
cpm = 0;
kerroin = MAX_PERIOD / LOG_PERIOD; // kertoimen laskeminen, riippuu lokikaudestasi
Sarja.alku (9600);
attachInterrupt (0, tube_impulse, FALLING); // määrittele ulkoiset keskeytykset
Serial.println ("Käynnistyslaskuri"); // lisätty koodi
}
void loop () {// pääjakso
allekirjoittamaton pitkävirtaMillis = millis ();
if (currentMillis - previousMillis> LOG_PERIOD) {
previousMillis = currentMillis;
cpm = laskee * kerroin;
Sarja.println (cpm); // koodi muutin
laskee = 0;
}
}
SBM-20-taustakeskiarvo oli 23,4 tuhannen näyttökerran hintaa.
Vaihe 10: Geiger -laskurin kytkentä nestekidenäytöllä
LCD -liitäntä:
LCD K -nasta GND: hen
LCD Pin -nasta 220 Ω vastukseen - Vcc
LCD D7 -nasta - digitaalinen nasta 3
LCD D6 -nastainen digitaalinen nasta 5
LCD D5 -nastainen digitaalinen nasta 6
LCD D4 -nastainen digitaalinen nasta 7
LCD Ota nasta digitaaliseen nastaan 8
LCD R/W -nasta maahan
LCD RS -nasta digitaaliseen nastaan 9
LCD VO -tappi 10 kΩ: n potin säätämiseen
LCD Vcc -tappi - Vcc
LCD Vdd -nasta GND: hen
Potti 10 kΩ säädettävä vastus.
Vcc, Vo, Vdd
Geiger -laskuri
VIN digitaalitapille 2
5 V - +5 V
GND maahan
Vaihe 11: Geiger -laskuri nestekidenäytöllä
// sisällytä kirjastokoodi:
#sisältää
#sisältää
#define LOG_PERIOD 15000 // Kirjausjakso millisekunteina, suositusarvo 15000-60000.
#define MAX_PERIOD 60000 // Suurin kirjautumisaika muuttamatta tätä luonnosta
#define PERIOD 60000.0 // (60 sekuntia) minuutin mittausjakso
haihtuva allekirjoittamaton pitkä CNT; // muuttuja keskeytysten laskemiseen dosimetristä
allekirjoittamattomat pitkät laskut; // GM Tube -tapahtumien muuttuja
allekirjoittamaton pitkä cpm; // muuttuja CPM: lle
unsigned int kerroin; // muuttuja CPM: n laskemiseksi tässä luonnoksessa
allekirjoittamaton pitkä edellinenMillis; // muuttuja ajan mittaamiseen
allekirjoittamaton pitkä aika; // ajan muuttuja
allekirjoittamaton pitkä CPM; // muuttuja CPM: n mittaamiseen
// alustetaan kirjasto käyttöliittymän nastojen numeroilla
LiquidCrystal lcd (9, 8, 7, 6, 5, 3);
void setup () {// setup
lcd. alku (16, 2);
CNT = 0;
Tuhannen näyttökerran hinta = 0;
dispPeriod = 0;
lcd.setCursor (0, 0);
lcd.print ("RH Electronics");
lcd.setCursor (0, 1);
lcd.print ("Geiger -laskuri");
viive (2000);
cleanDisplay ();
attachInterrupt (0, GetEvent, FALLING); // Tapahtuma nastassa 2
}
void loop () {
lcd.setCursor (0, 0); // tekstin ja CNT: n tulostaminen nestekidenäytölle
lcd.print ("CPM:");
lcd.setCursor (0, 1);
lcd.print ("CNT:");
lcd.setCursor (5, 1);
lcd.print (CNT);
if (millis ()> = dispPeriod + PERIOD) {// Jos minuutti on ohi
cleanDisplay (); // Tyhjennä nestekidenäyttö
// Tee jotain kertyneille CNT -tapahtumille….
lcd.setCursor (5, 0);
CPM = CNT;
lcd.print (CPM); // Näytä tuhannen näyttökerran hinta
CNT = 0;
dispPeriod = millis ();
}
}
void GetEvent () {// Hae tapahtuma laitteelta
CNT ++;
}
void cleanDisplay () {// Tyhjennä nestekidenäyttö
lcd.clear ();
lcd.setCursor (0, 0);
lcd.setCursor (0, 0);
}
Vaihe 12: Tiedostot
Lataa ja asenna nämä tiedostot Arduinollesi.
Aseta jokainen.ino -tiedosto samannimiseen kansioon.
Suositeltava:
Diy -makrolinssi, jossa on automaattitarkennus (erilainen kuin kaikki muut DIY -makro -objektiivit): 4 vaihetta (kuvilla)
Diy-makrolinssi, jossa on automaattitarkennus (erilainen kuin kaikki muut DIY-makro-objektiivit): Olen nähnyt paljon ihmisiä tekemässä makro-objektiiveja tavallisella objektiivilla (yleensä 18-55 mm). Useimmat niistä ovat objektiivi, joka on vain kiinni kamerassa taaksepäin tai etuosa on poistettu. Molemmilla vaihtoehdoilla on huonot puolensa. Linssin asentamiseen
Home Assistant Geiger -laskurin integrointi: 8 vaihetta
Home Assistant Geiger -laskurin integrointi: Tässä opetusohjelmassa aion näyttää, kuinka voit lisätä mukautettuja antureita HASS -laitteeseen (kotiassistentti) tarkemmin geigerilaskuriin, mutta prosessi on samanlainen myös muille antureille. Käytämme NodeMCU -korttia, arduino -pohjaista geigerilaskuria
Pultti - DIY -langaton latauskello (6 vaihetta): 6 vaihetta (kuvilla)
Pultti - DIY -langaton latausyökello (6 vaihetta): Induktiiviset lataukset (tunnetaan myös nimellä langaton lataus tai langaton lataus) on langattoman voimansiirron tyyppi. Se käyttää sähkömagneettista induktiota sähkön tuottamiseen kannettaville laitteille. Yleisin sovellus on langaton Qi -latauslaite
Geiger -laskurit 12+ -vuotiaille: 5 vaihetta
Geiger -laskuritoiminta yli 12 -vuotiaille: Tässä opetusohjelmassa opit ydinsäteilyanturin kokoamisen.Geiger -laskurisarjan voit ostaa täältä.Geiger -laskuri on instrumentti, jota käytetään ionisoivan säteilyn havaitsemiseen ja mittaamiseen. Tunnetaan myös nimellä Geiger -Mueller -laskuri (
DIY Geiger -laskurin korjaus: 9 vaihetta (kuvilla)
DIY Geiger -laskurin korjaus: Tilasin tämän DIY Geiger -laskurin verkossa. Se saapui ajoissa, mutta se vaurioitui, väylän sulakkeenpitimet murskattiin ja J305 Geiger Muller -putki tuhoutui. Tämä oli ongelma, koska käytin pisteitä aiemmista ostoksistani tältä