Contador Geiger
Este material no esta en el kit, pero se muestra por ser un buen ejemplo del uso obligatorio de las interrupciones
Un módulo contador Geiger puede salir por unos 36€
La conexión es fácil simplemente realiza un impulso y lo puede recoger el pin 2
Imagen de Hisehf Murchinson en https://www.instructables.com/Arduino-DIY-Geiger-Counter/
PERO ¿COMO HACEMOS QUE CUENTE DE FORMA ASINCRONA? es decir, no podemos poner en un bucle tipo
loop(){
if (digitalRead(2) == HIIGH){ CNT++;}
}
Pues si en ese momento NO hay chasquido, no cuenta
Esto es debido a que el chasquido puede producirse en cualquier momento, y muy breve
Arduino no puede mandar sobre el pin2 sino el pin2 tiene que mandar sobre el Arduino.
SOLUCION: LAS INTERRUPCIONES
Con la instrucción attachInterrupt, cuando haya un chasquido, atenderá a la función GetEvent
(las interrupciones en ArduinoUNO sólo son válidos en los pines 2 y 3, ver+)
(el tercer parámetro FALLING significa que haga caso en el flanco de bajada, cuando va de 1 a 0)
Añadimos al Arduino un Display conectado en serie I2C para evitar el cableado, tal y como lo hemos conectado aquí https://libros.catedu.es/books/programa-arduino-mediante-codigo/page/lcd por lo tanto, el código completo es el siguiente:
Código https://app.arduino.cc/sketches/b1b88357-7588-4b07-9f83-bf32093358e3?view-mode=preview
Aquí en este vídeo podemos ver que los conteos por minuto CPM son 15-20 que es la radiactividad natural 2.4microServ4mSv año pero si le acercamos un resto de camisa de camping gas (fabricadas antes del 2.000) que tienen Torio radiactivo, sube el CPM a 350,
El detector no es lo suficiente sensible para medir la radiactividad de un plátano (que tiene potasio pero solo 0.1microServ)036mSv año)