Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Manufacturing Technology >> Proceso de manufactura

Construye un Contador Geiger-Müller Personalizado con Arduino, Elevador de Alta Tensión y Pantalla LCD 20x4

Componentes y materiales

Arduino UNO Puede ser cualquier placa Arduino, no necesariamente UNO 1
Módulo Elevador DC-DC 1.5-3V a 300-400V 380V Voltaje ideal 400V, rango 350-450V (rango de alimentación del tubo GM) 1
Tubo Geiger-Müller STS-5 Se puede encontrar en eBay (más económico). Suele enviarse desde Ucrania, 2-3 semanas de entrega 1
Módulo LCD 2004 20x4 I2C Serial para Arduino Flexible, menos cables. Cualquier pantalla 20x4 sirve 1

Herramientas necesarias

Sobre el proyecto

⚠ ADVERTENCIA DE SEGURIDAD: Este dispositivo utiliza alto voltaje (400V) que es peligroso. Aunque la corriente es baja, cualquier cantidad puede inducir arritmia cardíaca y causar la muerte. Quien construya esto debe tener experiencia en electrónica y extremar precauciones de seguridad.

Mi objetivo era adaptar el trabajo de AdNovea para crear un contador Geiger-Müller programable libremente (el original usaba scripts que no pude modificar). Esto permite entender mejor la física del tubo y crear un dispositivo a medida.

Simplifiqué el circuito de AdNovea para un contador personal que muestra las cuentas, sin complicaciones como Ethernet o conexiones a redes nacionales. Experimenté con módulos Bluetooth y zumbadores, pero opté por un contador de radiación de fondo simple.

Construye un Contador Geiger-Müller Personalizado con Arduino, Elevador de Alta Tensión y Pantalla LCD 20x4

La construcción es sencilla (ver diagrama). Lo difícil fue conseguir el tubo GM y el conversor de alta tensión. Ambos se compraron baratos en eBay desde Ucrania y China, tardando 3-4 semanas.

Empecé montando en protoboard para evaluar y modificar el circuito. Lo armé según el diagrama de AdNovea, pero omití zumbador, módulo Ethernet y la resistencia hacia el tubo GM (no había suficiente corriente). Luego soldé todo en una placa perforada.

Construye un Contador Geiger-Müller Personalizado con Arduino, Elevador de Alta Tensión y Pantalla LCD 20x4

Use Arduino UNO, pero un Nano ahorraría espacio. Fijé el tubo GM a la placa con cinta aislante y cubrí los terminales del transformador para seguridad. Como no tenía herramientas para hacer una caja bonita, usé la caja de cartón del kit de Arduino.

Construye un Contador Geiger-Müller Personalizado con Arduino, Elevador de Alta Tensión y Pantalla LCD 20x4
Construye un Contador Geiger-Müller Personalizado con Arduino, Elevador de Alta Tensión y Pantalla LCD 20x4
Construye un Contador Geiger-Müller Personalizado con Arduino, Elevador de Alta Tensión y Pantalla LCD 20x4

Probé con batería 9V pero duraba poco. Finalmente alimenté por USB y añadí más cinta aislante donde el circuito contactaba el cartón para evitar incendios y pérdidas de señal.

Funcionamiento del software

El programa toma los conteos del tubo GM cada 30 segundos, los multiplica por 2 para obtener CPM (cuentas por minuto). Convierte a µSv/h usando factor 0.0057. Calcula media progresiva y error estándar (DE/√n) de las mediciones. Por limitaciones de memoria del Arduino, el array almacena 100 valores (50 minutos), tamaño de muestra adecuado.

Quedan mejoras pendientes: zumbador con alarma si CPM supera fondo, ajustar período de registro para mediciones más rápidas. ¡Quien quiera puede seguir mejorándolo!

Código

#include <LiquidCrystal_I2C.h>
#include <Wire.h>

unsigned long counts;
unsigned long previousMillis;
float averageCPM;
float sdCPM;
int currentCPM;
float calcCPM;

LiquidCrystal_I2C lcd(0x27, 20, 4);
float CPMArray[100];
#define LOG_PERIOD 30000

void setup() {
  counts = 0;
  currentCPM = 0;
  averageCPM = 0;
  sdCPM = 0;
  calcCPM = 0;
  lcd.init();
  lcd.backlight();
  Serial.begin(9600);
  pinMode(2, INPUT);
  attachInterrupt(digitalPinToInterrupt(2), impulse, FALLING);
}

void loop() {
  lcd.setCursor(0,2);
  lcd.print("CPM Count: ");
  lcd.print(counts);

  unsigned long currentMillis = millis();
  if (currentMillis - previousMillis > LOG_PERIOD) {
    previousMillis = currentMillis;
    CPMArray[currentCPM] = counts * 2;
    lcd.clear();
    lcd.setCursor(0,0);
    lcd.print("uSv/hr: ");
    lcd.print(outputSieverts(CPMArray[currentCPM]));
    counts = 0;
    averageCPM = 0;
    sdCPM = 0;

    for (int x=0; x

Esquemáticos

El esquema en Fritzing puede aparecer desordenado al abrirse. Archivo: geiger_counter_4LAnJvZEpC.fzz

Proceso de manufactura

  1. Construya un Contador Geiger con Raspberry Pi – Tutorial de Sensor de Radiación Open‑Hardware
  2. Monitorización en Tiempo Real de Panel Solar con Arduino: Sistema de Adquisición de Datos de Bajo Coste
  3. Construye un Spybot controlado por Bluetooth con Arduino
  4. FlickMote: Mando IR por gestos para Smart Home
  5. TV‑B‑Gone DIY con Arduino: Mando universal para apagar cualquier TV
  6. Construye un Reloj Maestro LED Personalizado con Alarma – Visible desde 12 Metros
  7. Monitor de voltaje de termopar para piloto de calentador de agua: alertas seguras por email y SMS
  8. Find Me: Localizador Inteligente de Objetos con Arduino y Bluetooth
  9. Crea un Botón de Teclado Personalizado y "Apuñalable" con Arduino: Guía Paso a Paso
  10. Soluciones de Alimentación Optimizadas para Proyectos Arduino
  11. Regalo de San Valentín: Contador DIY de Días Juntos