Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MiniGeigerCounter v3.0

Lokaler, ressourcenschonender Raspberry-Pi-Dienst für Geigerzähler. Das Dashboard, MQTT und Home-Assistant-Discovery funktionieren ohne Cloud und teilen sich den Pi konfliktarm mit anderen Diensten.

Unterstützte Zählerprofile:

Profil Dateneingang Standard-Kalibrierung
FTLab Smart Geiger Pro SGP001 Mikrofoneingang einer USB-Soundkarte vorhandene SGP001-Kalibrierung
RadiationD v1.1 (CAJOE) GPIO-Impuls oder abgenommener Lautsprecherimpuls per Audio abhängig vom verbauten Rohr
DFRobot Gravity Geiger Counter V1 / SEN0463 digitaler D-Ausgang über GPIO 153,8 CPM/(µSv/h) laut Hersteller

Sicherheit: Am Zählrohr und auf den Platinen liegt Hochspannung an. Nur die ausdrücklich beschriebenen Niederspannungs-Pins berühren. Ein Raspberry-Pi-GPIO ist ausschließlich 3,3 V tolerant. Niemals ein 5-V-Ausgang direkt mit GPIO verbinden.

Installation

git clone https://github.com/therepro21/MiniGeigerCounter.git
cd MiniGeigerCounter
sudo bash install.sh

Danach http://PI-IP:8734 öffnen. Rechts oben Einstellungen wählen, Zählermodell und Eingangsart einstellen, speichern. Der Dienst läuft als Benutzer minigeiger; die GPIO-Berechtigung und gpiozero werden durch den Installer eingerichtet.

Verdrahtung

Die Beispiele verwenden BCM GPIO 17, physischer Pin 11. Jeder andere freie BCM-Pin 0–27 kann in den Einstellungen gewählt werden.

1. FTLab Smart Geiger Pro SGP001 - USB-Audio

Smart Geiger Pro SGP001              Raspberry Pi
┌──────────────────────┐             ┌──────────────────────────┐
│  3,5-mm-Klinke OUT   ├────────────►│ USB-Soundkarte: MIC-IN   │
└──────────────────────┘             │ USB ───────────────────► │ USB
                                     └──────────────────────────┘

Den SGP001 am Mikrofoneingang, nicht am Kopfhörer-/Line-Out der Soundkarte anschließen. In den Einstellungen FTLab Smart Geiger Pro SGP001 (Audio) und danach den richtigen Audio-Eingang wählen. Bei mehreren Karten helfen arecord -l und die Pegelanzeige beim Zuordnen.

2A. RadiationD v1.1 (CAJOE) - digitaler GPIO-Impuls mit AZDelivery-Pegelwandler

Der AZDelivery 4-Kanal-Pegelwandler 5 V ↔ 3,3 V ist hierfür geeignet. Es wird nur ein Kanal benötigt, zum Beispiel HV1/LV1. Die Pins heißen auf baugleichen Modulen meist HV, LV, GND, HV1…HV4 und LV1…LV4.

                    Datenleitung (ein Kanal)
RadiationD*                                         AZDelivery                 Raspberry Pi
┌───────────────┐       ┌──────────────────┐       ┌──────────────────────┐    ┌─────────────────┐
│ CPM / VIN OUT ├──────►│ HV1              │       │                      │    │                 │
│               │       │                  │       │ LV1 ─────────────────┼───►│ Pin 11 / BCM 17 │
└───────────────┘       └──────────────────┘       └──────────────────────┘    └─────────────────┘

                    Versorgung und gemeinsame Masse
Raspberry Pi                         AZDelivery                         RadiationD
┌──────────────────┐                ┌──────────────────────┐          ┌───────────────┐
│ Pin 2 oder 4: 5 V├───────────────►│ HV                   │          │ +5V           │
│                  ├─────────────────────────────────────────────────►│ +5V           │
│ Pin 1: 3,3 V ────┼───────────────►│ LV                   │          │               │
│ Pin 6: GND ──────┼───────────────►│ GND                  ├─────────►│ GND           │
└──────────────────┘                └──────────────────────┘          └───────────────┘
Verbindung Von Nach
5-V-Logikversorgung Pi Pin 2 oder 4 Pegelwandler HV
3,3-V-Logikversorgung Pi Pin 1 Pegelwandler LV
Gemeinsame Masse Pi Pin 6 Pegelwandler GND und RadiationD GND
RadiationD-Versorgung Pi Pin 2 oder 4 RadiationD +5V
Impuls, 5-V-Seite RadiationD CPM OUT/VIN OUT Pegelwandler HV1
Impuls, 3,3-V-Seite Pegelwandler LV1 Pi Pin 11 / BCM 17

* Die Bezeichnung des Impulsausgangs unterscheidet sich je Boardrevision. Bei verbreiteten RadiationD-v1.1-Platinen ist der mit VIN beschriftete Pin der Impulsausgang; Beschriftung und Schaltbild der eigenen Platine haben Vorrang.

Für Raspberry Pi 3B+, Pi 4 und Pi 5 ist die Belegung identisch, da alle den 40-poligen Header verwenden. BCM 17 ist physischer Pin 11; Pin 1 ist 3,3 V, Pin 2/4 sind 5 V und Pin 6 ist GND. Der Pi-GPIO erhält ausschließlich das Signal von LV1 - nie RadiationD OUT oder HV1 direkt mit dem Pi verbinden.

Die 5-V-Pins 2 und 4 sind keine schaltbaren GPIOs, sondern direkt mit der 5-V-Versorgungsschiene des Pi verbunden. Sie können RadiationD versorgen, wenn der Pi über sein geeignetes Netzteil betrieben wird. Keine fremde 5-V-Quelle parallel auf Pin 2/4 einspeisen, wenn der Pi bereits über Micro-USB oder USB-C versorgt wird.

In Einstellungen RadiationD v1.1 (GPIO-Impuls), BCM 17 und Puls ist aktiv LOW: Ja wählen. Die verbreitete RadiationD-Schaltung zählt die fallende Flanke.

Alternative: separates 5-V-Netzteil für RadiationD

Bei einem schwachen oder bereits stark belasteten Pi-Netzteil ist ein eigenes, geregeltes 5-V-Netzteil für RadiationD sinnvoll:

Externes 5-V-Netzteil + ──► RadiationD +5V und Pegelwandler HV
Externes 5-V-Netzteil - ──► RadiationD GND, Pegelwandler GND und Pi Pin 6 (GND)
Pi Pin 1 (3,3 V) ─────────► Pegelwandler LV
Pegelwandler LV1 ─────────► Pi Pin 11 / BCM 17
RadiationD CPM/VIN OUT ───► Pegelwandler HV1

Das externe Netzteil nicht zusätzlich auf Pi-Pin 2/4 einspeisen, solange der Pi bereits über USB-C/Micro-USB versorgt wird. Die gemeinsame Masse ist dagegen zwingend nötig, damit der Pegelwandler ein eindeutiges Signal erhält.

Alternative: 5 V über USB-Port des Pi

Auch ein USB-Port des Pi kann RadiationD versorgen. Dazu ein USB-A-auf-offenes-Kabel oder eine USB-Breakout-Buchse verwenden - nur Rot (+5 V) und Schwarz (GND) anschließen, Datenadern Grün/Weiß unverbunden und isoliert lassen:

Pi USB-A-Port / USB-Breakout        RadiationD + Pegelwandler
Rot (+5 V) ───────────────────────► RadiationD +5V und AZDelivery HV
Schwarz (GND) ────────────────────► RadiationD GND und AZDelivery GND
Pi Pin 1 (3,3 V) ─────────────────► AZDelivery LV
RadiationD CPM/VIN OUT ───────────► AZDelivery HV1
AZDelivery LV1 ───────────────────► Pi Pin 11 / BCM 17

Das ist elektrisch derselbe 5-V-Kreis wie die Header-Pins. Deshalb zählt die gesamte USB-Last: Pi 3B+ und Pi 4 stellen zusammen maximal 1,2 A an den USB-Ports bereit. Beim Pi 5 sind es 600 mA mit einem 3-A-Netzteil und bis zu 1,6 A mit einem erkannten 5-A-/27-W-Netzteil. Sind bereits USB-Soundkarten, SSDs oder andere Geräte angeschlossen, ist für RadiationD ein separates geregeltes 5-V-Netzteil oder ein aktiver USB-Hub die robustere Wahl.

Anschlussreihenfolge

  1. Pi ausschalten; zunächst nur die Leitungen HV, LV und GND des Pegelwandlers prüfen.
  2. RadiationD mit 5 V und GND verbinden.
  3. Erst danach CPM/VIN OUT → HV1 sowie LV1 → BCM 17 verbinden.
  4. Pi starten, im Dashboard das RadiationD-GPIO-Profil wählen und speichern.
  5. Im Dashboard muss als Eingang GPIO BCM 17 (fallende Flanke) erscheinen. Bei abweichendem Pin diesen als BCM-Nummer eintragen, nicht als physische Pinnummer.

2B. RadiationD v1.1 - Lautsprecher-Signal per Audio

RadiationD Mini-Lautsprecher            Koppel-/Dämpfglied             USB-Soundkarte
┌──────────────────────────┐            ┌────────────────────┐         ┌────────────────┐
│ SPK+ ─────────────────────┼───────────►│ 1 µF Kondensator   ├────────►│ MIC-IN Signal  │
│ SPK- / GND ───────────────┼───────────►│ 10 kΩ Serienwiderst.├───────►│ MIC-IN GND     │
└──────────────────────────┘            └────────────────────┘         └────────────────┘

Das Lautsprechersignal kann deutlich größer als ein Mikrofoneingang sein. Deshalb nur über ein Koppel-/Dämpfglied anschließen (kein direkter Anschluss) und mit hoher Impulsschwelle beginnen. In Einstellungen RadiationD v1.1 (Lautsprecher-Audio) sowie den betreffenden USB-Audioeingang wählen. Die Pegelanzeige dient zum sicheren Einstellen von Schwelle und Holdoff.

3. DFRobot Gravity Geiger Counter V1 / SEN0463 - GPIO

DFRobot Gravity 3-polig                   Raspberry Pi 40-Pin
┌────────────────────────┐                ┌──────────────────┐
│ - / GND ───────────────┼───────────────►│ Pin 6: GND        │
│ + / VCC (3,3 V) ───────┼───────────────►│ Pin 1: 3,3 V      │
│ D / Signal ────────────┼───────────────►│ Pin 11: BCM 17    │
└────────────────────────┘                └──────────────────┘

Der DFRobot-Sensor arbeitet mit 3,3–5 V und zieht seinen digitalen Ausgang beim Impuls nach LOW. Für den direkten Pi-Anschluss daher mit 3,3 V speisen. Bei Versorgung mit 5 V ist vor D ein 5-V→3,3-V-Pegelwandler nötig. In Einstellungen DFRobot Gravity V1 / SEN0463 (GPIO-Impuls), BCM 17 und aktive LOW-Flanke wählen.

Kalibrierung und Werte

Aktuell CPS zählt ausschließlich die Impulse der letzten Sekunde. CPM, Dosis, MQTT und Verlauf werden aus effizienten Zeitfenstern erzeugt; lange Historien bremsen die Erfassung nicht. Puls-, Pegel- und Zwischenwerte liegen ausschließlich im RAM. SQLite-Verlauf und geänderte Einstellungen werden gebündelt höchstens einmal pro Minute auf die microSD geschrieben.

Die Umrechnung ist immer nur so gut wie Zählrohr, Geometrie und Kalibrierung. In Einstellungen kann ein Referenzgerät eingetragen werden: Referenz-CPS und zugehörige µSv/h ergeben automatisch den Faktor für CPM und CPS. Beim DFRobot-SEN0463 nennt der Hersteller 153,8 CPM/(µSv/h); RadiationD ist abhängig vom konkret verbauten Rohr und muss geprüft beziehungsweise kalibriert werden.

Version 3.0 bietet zusätzlich eine Röhren-Vorauswahl. Die Werte sind typische Startwerte für Gamma-Kalibrierungen und werden beim Auswählen in die beiden Kalibrierfelder übernommen; erst Speichern aktiviert sie.

Vorauswahl CPM pro µSv/h Hinweis
M4011 / DFRobot Gravity 153,8 Herstellerangabe für SEN0463
J305/J305β (RadiationD) 123,15 typischer J305-Wert
SBM-20 / STS-5 175,44 typischer Gamma-Startwert
LND 712 / 7121 123,15 Cs-137-Referenz, abhängig von Geometrie und Energie
SGP001 8.014,285714 bestehende Projektkalibrierung, nicht allgemeingültig

Diese Auswahl ersetzt kein Referenzgerät oder eine professionelle Kalibrierung. Insbesondere Alpha-/Beta-Quellen, Fensterröhren, Gehäuse und die Energie des Isotops verändern die Anzeige deutlich.

MQTT und Home Assistant

Standardbasis: minigeiger.

Topic Inhalt
minigeiger/radiation_usvh Dosisleistung in µSv/h
minigeiger/cpm CPM, 1-Minuten-Fenster
minigeiger/count_total interne Gesamtzählung für die Historie
minigeiger/status online oder offline

MQTT und automatische Home-Assistant-Discovery werden in Einstellungen aktiviert.

Wartung und Diagnose

sudo systemctl status minigeiger --no-pager
sudo journalctl -u minigeiger -n 80 --no-pager
sudo systemctl restart minigeiger
arecord -l

Konfiguration und Datenbank liegen in /var/lib/minigeiger/; die Anwendung selbst in /opt/minigeiger/.

Quellen und technische Hinweise

About

Smart Geiger SGP001 to MQTT/HA

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages