Web-App: Gamma MCA

Begonnen von NuclearPhoenix, 17. Februar 2022, 16:19

⏪ vorheriges - nächstes ⏩

rhelectronics

The question how the MCA estimate time and CPS?
Is it use your own 1 second timer that count 1 second and then sum all pulses that came during this time from the hardware?
Or is it just sum the pulses assuming that the hardware dump all pulses exactly every second?

NuclearPhoenix

Zitat von: rhelectronics am 14. Juni 2022, 16:30The question how the MCA estimate time and CPS?
Is it use your own 1 second timer that count 1 second and then sum all pulses that came during this time from the hardware?
Or is it just sum the pulses assuming that the hardware dump all pulses exactly every second?

You can set the "Plot Refresh Time" in the Serial Settings according to your linkings. The MCA will then refresh the data according to this time interval and divide the total number of counts it got since the last refresh by the actual time it took to refresh.

Not relying on the hardware at all. But if you only dump the pulses every minute or so, refreshing the plot every second makes no sense and will set the cps to 0 of course.

rhelectronics

Great, thank you for explanation.
What is the maximum CPS you was able to dump from your hardware to the MCA? Sometime I'm getting browser application freeze or connection lost with the MCA on CPS>1000. The time is continue to count in browser, but CPS value is freezes or sometime I get same issue as we talked in the beginning when histogram jumps to high bins values.
I want to figure out if it on my side of hardware or application issue. I use 480MBit serial USB and ";" delimiter.

NuclearPhoenix

Okay thanks for letting me know. I think I "fixed" it, at the very least it should be much better now. I really don't know what's going on here, but I think the issue is with the Web Serial API that doesn't keep up well with high serial traffic, so I did some filtering of the data and now it's much cleaner ;)

I tested it with as much as 25000 cps and it seems to not crash anymore so there is that :D

rhelectronics

Sie dürfen in diesem Board keine Dateianhänge sehen.

Works nicely!
If I switch tabs it gets disconnect with 0cps readings, probably my computer memory issue? I have 32bit Win7 OS with only 4GB ram.

NuclearPhoenix

Yes probably, though there is one big issue with how the browsers work: If you switch tabs then the processing of the serial data gets paused (the tab goes into sleep mode so to speak), but more data is still coming in from the detector of course. So this serial data fills up the buffer (to the "max serial buffer" setting) and everything after that just gets dropped/deleted.

This shouldn't disconnect or crash the MCA though, and it works just fine for me after returning to the tab (MS Edge and 32GB RAM desktop PC). Maybe it is a memory issues :unknw:

You can try using the PWA then this shouldn't be a problem anymore.

NuclearPhoenix

You can try again now. I just had a look at this issue and although it's not entirely fixed, it should at least not crash anymore for you. However, like I said, if you unfocus the tab then there won't be new data registered as soon as the buffer fills up. If you focus the window again, it should clear up.

And also the CPS values should be much more stable and accurate too now, so there's that :good3:


NuclearPhoenix

Hab mal im Zuge der letzten paar Nachrichten wieder einige Sachen verbessert, hier ist ein kleines Changelog davon:

  • Beim Peak Finder kann man ab jetzt zwischen Energie-Peaks und Isotopen auswählen. Dadurch wird entweder die gefundene Energie des Peaks markiert oder das nächstgelegene Isotop.
  • Die CPS-Zählung habe ich wesentlich genauer gemacht indem die Zeit, die das Programm zur Bearbeitung braucht auch berücksichtigt wird. Vorher gab es deutlich nach unten abweichende CPS Werte.
  • Der HTML Export unterstützt jetzt sämtliche Features und exportiert den Plot 1:1 so wie er im Fenster aussieht.
  • Will man ein Bild vom Spektrum exportieren kann man nun zwischen verschiedenen Bildformaten auswählen (PNG, JPEG, SVG, WEBP).
  • Der Serial Port zeigt nicht mehr die Dezimal ID des Gerätes an, sondern die "wirkliche" HEX ID.
  • Hat man ein Zeitlimit bei der Aufnahme, wird in der Fortschrittsanzeige (der kleine Balken) der Prozentwert angezeigt.
  • Viele in Verbindung mit dem Serial Port stehende Bugs/Abstürze/Instabilitäten habe ich auch behoben, das hatte alles irgendwie mit den obigen Nachrichten zu tun.

DG0MG

Wie wärs, wenn Du bei "File Import" XML-Files unterstützen würdest?

Bei diesem Format kann Spektrum und Hintergrund in EINER Datei sein. Auch die zugehörigen Kalibrierungskoeffizienten sind mit drin. Der RadiaCode exportiert ein solches Format und man kann diese Datei dann z.B. in "BecqMoni2011" wieder laden und da weiterverarbeiten.
"Bling!": Irgendjemand Egales hat irgendetwas Egales getan! Schnell hingucken!

NuclearPhoenix

Klar, kann ich mir mal ansehen. Schickst du mir bitte mal so eine Datei wo alles in einem ist? Dann kann ich mir das Dateivormat mal durchschauen.

DG0MG

Bitteschön, Pilze mit Cs-137 und Background.

So sieht dieses File dann in Becqmoni aus:

Sie dürfen in diesem Board keine Dateianhänge sehen.
"Bling!": Irgendjemand Egales hat irgendetwas Egales getan! Schnell hingucken!

NuclearPhoenix

Danke für die Datei! Der kombinierte Import von Energiespektrum und Hintergrundspektrum war recht einfach zu implementieren, der funktioniert jetzt mal. Schwieriger wird es bei den Kalibrierungskoeffizienten - das wird noch was dauern. Blöd ist, dass nur die Koeffizienten in den Files enthalten sind, aber ich im UI nur die Referenzpunkte anzeige. Das heißt da muss ich mir überlegen, was ich dann bei den Punkten anzeige... soll ja nicht einfach leer bleiben, obwohl es schon kalibriert ist. Das würde sonst nur unnötig verwirren. Vielleicht zeige ich da sowas wie "IMPORTED" an, keine Ahnung ;D

NuclearPhoenix

So... habe jetzt auch den Import der Kalibrierung aus XML Dateien implementiert. Voraussetzung ist, dass die Datei genau dem Layout entspricht wie es mit dem RadiaCode und in BecqMoni funktioniert, aka die Datei von DG0MG. Bitte gerne testen ;)

Außerdem: Installiert man sich die App über Chrome o.Ä. auf dem Computer kann man alle unterstützen Dateiformate (also txt, xml, csv, tka, json) direkt aus dem Dateiexplorer öffnen: Rechtsklick; "Öffnen mit... Gamma MCA". Dann wird die jeweilige Datei automatisch importiert und angezeigt :good3:

NuclearPhoenix

Gerade noch ein Problem beim Import von theremino pulse height diagrams behoben, die werden jetzt auch richtig angezeigt. Leider funktioniert die x-Achse in keV da noch nicht richtig, deshalb muss man die Energien nachträglich nochmal einstellen.

NuclearPhoenix

Habe heute gesehen, dass man mittels BecqMoni den RadiaCode 101 kalibrieren kann (hier: https://www.geigerzaehlerforum.de/index.php/topic,647.msg14144.html#msg14144). Daraufhin habe ich mir gedacht, es wäre doch sicher praktisch auch in Gamma MCA die Kalibrierungskoeffizienten anzeigen lassen zu können. Das kann man jetzt durch Klick auf den Link siehe Bild :)