กลับไปหน้ารวมไฟล์
geiger-counter-with-arduino-uno-23de83.md

ในบทเรียนนี้ น้องจะได้เรียนรู้วิธีประกอบและใช้งานเครื่องตรวจจับกัมมันตรังสี (Nuclear Radiation Detector) กัน

Geiger Counter Kit

ไกเกอร์ เคาน์เตอร์ (Geiger Counter) หรือที่บางทีก็เรียกกันว่า Geiger–Mueller counter เป็นเครื่องมือที่ใช้ตรวจจับและวัดค่าการแผ่รังสีไอออไนซ์ งานของมันคือจับการปล่อยกัมมันตรังสี โดยเฉพาะอนุภาคบีตา (Beta particles) และรังสีแกมมา (Gamma rays) หลักการทำงานคร่าวๆ ก็คือในท่อจะบรรจุก๊าซเฉื่อยไว้ ซึ่งก๊าซพวกนี้จะนำไฟฟ้าได้เมื่อถูกชนด้วยอนุภาคพลังงานสูง เอาไปใช้ได้หลายงานเลย ทั้งการวัดปริมาณรังสี (Radiation dosimetry) การป้องกันทางรังสี (Radiological protection) งานฟิสิกส์ทดลอง หรือแม้แต่ในอุตสาหกรรมนิวเคลียร์

อุปกรณ์ที่ต้องมี:

1 x ชุด Radiation Detector system Kit 1 x ท่อ GM (GM Tube) 1 x สายไฟเลี้ยง (Power supply cable) 1 x ที่ใส่แบตเตอรี่ (Battery Holder) 3 x สายจัมเปอร์ (Jumper Wires) 4 x น็อต 1 x ฝาครอบอะคริลิก (Acrylic cover)

รายละเอียดของชุด:

  • ชื่อ: Radiation Detector system
  • พารามิเตอร์ของท่อ Geiger
    • เส้นผ่านศูนย์กลาง: Φ10±0.5mm
    • ความยาวรวม: 90±2mm
    • แรงดันเริ่มต้น (Starting voltage): < 350V (แนะนำ)
    • แรงดันใช้งาน (Operating voltage): 380V
    • แรงดันใช้งานสูงสุด (Extreme operating voltage): 550V
    • อุณหภูมิใช้งาน: -40 ~ 55 ℃
  • ขนาดบอร์ด: 108x63x20mm

ขั้นตอนที่ 1: บัดกรีชุดไกเกอร์ เคาน์เตอร์

นี่คือวิดีโอสปีดรันการประกอบทั้งหมด ดูไว้เป็นแนวทางได้

ขั้นตอนที่ 2: ใช้งานไกเกอร์ เคาน์เตอร์กับ Arduino

Geiger Counter connections Geiger Counter connections Geiger Counter connections Geiger Counter connections Geiger Counter connections Geiger Counter connections

ต่อสายจากขา P3 (GND, 5V, VIN) ไปยัง Arduino ที่ขา GND, 5V และ Digital 2 ตามลำดับ

จากนั้นในโปรแกรม Arduino IDE ให้เปิดไฟล์ spi_rad_logger.ino ที่น้องดาวน์โหลดมา

เคล็ดลับเล็กน้อย: เปลี่ยนคำสั่ง Serial.print(cpm) ในฟังก์ชัน void loop(){} เป็น Serial.println(cpm) เพื่อให้อ่านค่าใน Serial Monitor ได้ง่ายขึ้น

อัพโหลดโปรแกรมลงบอร์ดให้เรียบร้อย พออัพโหลดเสร็จ ให้เปิดหน้าต่าง Serial Monitor โดยคลิกที่ไอคอนแว่นขยายมุมขวาบน

เราก็จะได้ค่าการแผ่รังสีแสดงออกมาในหน่วย CPM (Counts Per Minute) ซึ่งสามารถแปลงเป็นหน่วย µSv/h ได้โดยใช้ค่า Conversion Factor 151 (สำหรับท่อ GM รุ่น M4011 นะ) โดย 151 CPM = 1 µSv/h

Serial monitor output

จัดไปวัยรุ่น! อย่าลืมตรวจสอบความถูกต้องของการต่อสาย และอ่านค่าอย่างระมัดระวังนะน้อง สู้งาน!

รายละเอียดทางเทคนิคแบบจัดเต็ม

ฮาร์ดแวร์อินเตอร์รัพต์แรงสูง (J305 เกเกอร์ทิวบ์)

เกเกอร์ทิวบ์ต้องการไฟ 400 โวลต์ ถึงจะทำงานได้!

  1. โปรเจคนี้ใช้ชิลด์สำหรับสร้างไฟแรงสูงโดยเฉพาะ (เช่น RadiationD-v1.1) เพื่อแปลงไฟ 5V จาก Arduino ไปเป็น 400V อย่างปลอดภัย
  2. สัญญาณเอาท์พุต: เมื่อมีรังสีมากระทบ ชิลด์จะส่งพัลส์ลอจิก LOW 5V ที่ปลอดภัยและแม่นยำมาให้ Arduino!
  3. กับดักของ attachInterrupt(): ห้ามใช้ digitalRead หรือ delay() นะตัวนี้! การตรวจจับรังสีแต่ละครั้งกินเวลาแค่ 0.1 มิลลิวินาทีพอดี
// Uno ตัวนี้จะตั้งใจฟังเฉพาะที่พิน 2 สำหรับขอบสัญญาณแบบ Falling เท่านั้น!
attachInterrupt(digitalPinToInterrupt(2), countRadiationPulse, FALLING);

void countRadiationPulse() {
  radiationHits++; // เกเกอร์ทิวบ์มันคลิกแล้ววว!
}

การคำนวณซีเวิร์ต (คณิตศาสตร์ CPM)

ตัวแปร radiationHits ดิบๆ นั้นใช้ไม่ได้ ถ้ายังไม่ได้แปลงเป็นหน่วยทางฟิสิกส์

  • ฟังก์ชัน loop() จะใช้ millis() กับอาร์เรย์จับเวลาแบบหนักๆ เพื่อคำนวณว่ามีการตรวจจับกี่ครั้งใน 60 วินาทีที่ผ่านมา (Counts Per Minute - CPM) พอดี
  • การแปลงตามไอโซโทป: เกเกอร์ทิวบ์รุ่นต่างๆ (เช่น J305 หรือ M4011) มีค่าคงที่ทางคณิตศาสตร์เฉพาะตัว (เช่น 0.00812) float microSieverts = CPM * 0.00812;
  • จากนั้น Uno ก็จะส่งข้อมูล uSv/h นี้ไปแสดงผลบน จอแสดงผลตัวอักษร I2C ขนาด 16x2 แบบรัวๆ พร้อมกับสั่งให้ ออดเพียโซแบบแอคทีฟ ดัง "คลิก" ตามจังหวะการตรวจจับรังสีเป๊ะๆ!

อุปกรณ์ที่ต้องมีสำหรับการวัดนิวเคลียร์

  • Arduino Uno/Nano (สถาปัตยกรรมอินเตอร์รัพต์ภายนอก INT0 แม่นยำ)
  • โมดูลเซนเซอร์วัดรังสีเกเกอร์เคาน์เตอร์ (มาพร้อมทิวบ์แก้ว/โลหะและวงจรบูสต์คอนเวอร์เตอร์ 400V สำคัญแล้ว!)
  • จอแสดงผล LCD 16x2 แบบ I2C (สำหรับแสดงค่าการวัดรังสีแบบเรียลไทม์)
  • ออดเพียโซแบบแอคทีฟ (เพราะเสียง "คลิก" อันเป็นเอกลักษณ์นั้นจำเป็นต้องมี ไม่งั้นมันไม่เมคเซนส์!)

บทความนี้เป็นส่วนหนึ่งของโครงการ DEEDU ซึ่งได้รับเงินสนับสนุนร่วมจากโครงการ Erasmus + ของคณะกรรมาธิการยุโรป

เนื้อหาในบทความนี้ไม่จำเป็นต้องสะท้อนมุมมองอย่างเป็นทางการของสหภาพยุโรป ข้อมูลและความคิดเห็นที่แสดงเป็นความรับผิดชอบของผู้เขียนแต่เพียงผู้เดียว

ข้อมูล Frontmatter ดั้งเดิม

apps:
  - "1x Arduino IDE"
author: "EDUcentrum"
category: "Science & Simulation"
components:
  - "1x Radiation Detector system Kit"
  - "1x Arduino UNO Wifi Rev.2"
description: "Nuclear telemetry monitoring! Intercept the terrifying raw 400-volt Townsend avalanche pulses from a physical Geiger-Müller tube, translating alpha/beta particle radiation strikes directly into measurable Sievert mathematics."
difficulty: "Intermediate"
documentationLinks: []
downloadableFiles: []
encryptedPayload: "U2FsdGVkX185N3RFNDeMhTmTE9kJCllb1VhTe7+Yni7jX2EGLQm6in/0XU9lPRFWPMCGaahogVxM6Hp+kgyDEbEPVLDYYh8b4JQM52G2jYA="
heroImage: "https://cdn.jsdelivr.net/gh/bigboxthailand/arduino-assets@main/images/projects/geiger-counter-with-arduino-uno-23de83_cover.jpg"
lang: "en"
likes: 7
passwordHash: "259913f22a782135e9730b7a9d4cf6381dd535ef46a48b9a9d1e61f8da66b5b2"
price: 2450
seoDescription: "Learn how to build a Geiger Counter with Arduino Uno to detect nuclear radiation. Step-by-step guide for assembly and usage."
tags:
  - "environmental sensing"
  - "monitoring"
title: "มาสร้างเครื่องวัดรังสีแบบกวนๆ กับ Arduino Uno กัน! (งานง่ายแต่หล่อ)"
tools: []
videoLinks:
  - "https://www.youtube.com/embed/ImHbKBu3xus"
views: 34633