Histogramm

Wir nehmen gerne Ihre Ideen, Vorschläge, Meinungen entgegen. (Beiträge werden von uns gelesen, aber nicht beantwortet.)
Antworten
darkdestroyer
Beiträge: 17
Registriert: Freitag 19. März 2010, 12:36

Histogramm

Beitrag von darkdestroyer » Sonntag 21. März 2010, 20:04

Hallo, zunächst einmal meinen Dank an die Entwickler für dieses hervorragende Programm. Einfach zu bedienen und effektvoll in der Anwendung!
Meine Frage bzw. Anregung: Gibt es eine Funktion, die mir ein Histogramm der Amplitudenverteilung eines Eingangssignals darstellt, ähnlich wie es in L**V**W möglich ist? Oder hat mich meine Suchfuntion betrogen und soetwas is bereits direkt oder über Umwege vorganden. Konkret geht um die Amplitudenverteilung des Signals eines Szintillations-Gamma-Detektors, also um die Realisierung einer Gammaspektroskopie-Anwendung.

Beste Grüße...

Pedro

abacom
Site Admin
Beiträge: 3926
Registriert: Dienstag 23. September 2008, 10:54
Kontaktdaten:

Re: Histogramm

Beitrag von abacom » Montag 22. März 2010, 08:58

Ist dies nicht letztlich "nur" ein "X/Y-Plot" ?
ABACOM support

darkdestroyer
Beiträge: 17
Registriert: Freitag 19. März 2010, 12:36

Re: Histogramm

Beitrag von darkdestroyer » Montag 22. März 2010, 09:21

Hallo,

der X/Y Schreiber liefert mir einen Punkt für jede Paarung von Werten, beispielsweise für eine grafische Umsetzung von Spannung als X-Parameter und Druck als Y-Parameter. Soweit mein Verständnis. Ein Histogramm würde mir eine Darstellung liefern, in der die Verteilung oder besser Auftrittshäufigkeit einzelner Druckstufen angezeigt wird. Dazu soll der Y-Wert (Druck) innerhalb des Meßbereiches, sagen wir 0 bis 100 Bar, in bestimmte Intervalle (Klassen), von sagen wir jeweils 10 Bar Breite, unterteilt werden. Somit hätten wir Klassen von 0...10 Bar, 11... 20 Bar, 21... 30 Bar usw.
Das ist hier gut erklärt:

http://de.wikipedia.org/wiki/Histogramm

Wenn das mit einem X/Y Plot machbar ist, muss ich aber die Klassierung des Signals irgendwo vornehmen, und da bin ich nicht weitergekommen...+
Sorry, falls das etwas verwirrend ist...

Gruß Pedro

KAKTUS
Beiträge: 651
Registriert: Samstag 18. Oktober 2008, 21:12

Re: Histogramm

Beitrag von KAKTUS » Montag 22. März 2010, 12:16

Geht so wie im Beispiel im Moment nur über Exel. Du kannst deine Messwerte mit DDE exportieren nach EXEL und dort jedes beliebiges Diagramm auswählen. Einfach mal Beispiele ansehen.
Wenn man etwas Aufwand treibt, müsste es aber auch im X/Y oder Y/t Schreiber gehen.
stachlige Grüße, Kaktus

darkdestroyer
Beiträge: 17
Registriert: Freitag 19. März 2010, 12:36

Re: Histogramm

Beitrag von darkdestroyer » Montag 22. März 2010, 12:32

Hmmmm, das hatte ich erwartet, oder eigentlich nicht. Der Weg über Excel ist schon klar, ne native Lösung wäre mir aber lieber, weil das als Standalone Anwendung laufen soll, ohne den Office-Kram im Hintergrund.
Und eine Lösung "hinzufricklen" ist bei ner Klassenanzahl von > 100 wohl ziemlich aufwendig...
Na gut, vielleicht fällt mir was ein...
Beste Grüße

Pedro

Mike D
Beiträge: 528
Registriert: Dienstag 14. Oktober 2008, 14:48
Wohnort: Elbe- Weser-Dreieck

Re: Histogramm

Beitrag von Mike D » Montag 22. März 2010, 12:44

Idee für einen Ansatz:

Man nimmt als Speicher für die Werte einen Ram-Baustein. Den gerundeten und speziell skallierten Messwert nimmt man als Adresse der Ram-Zelle in der man dann zeitlich getacktet aufaddiert.

Vermutlich ist das Auslesen und Darstellen aufwändiger als das Sammeln der Messwerte.

2. Ansatz: eine DLL

3. Ansatz: Messwerte in einer Datei sammeln, im Hintergrund durch kleines Standaloneprogramm aus Messwertedatei eine Histogrammdatei erzeugen und diese mit PL wieder einlesen.

Mike

darkdestroyer
Beiträge: 17
Registriert: Freitag 19. März 2010, 12:36

Re: Histogramm

Beitrag von darkdestroyer » Montag 22. März 2010, 12:51

Ja, das sind interessante Ansätze. Das mit dem RAM muss ich erstmal verstehen :-), Variante 2 und Variante 3 muss ich erstmal durchdenken.

Vielen dank erstmal für die Anregungen..

Pedro
Mike D hat geschrieben:Idee für einen Ansatz:

Man nimmt als Speicher für die Werte einen Ram-Baustein. Den gerundeten und speziell skallierten Messwert nimmt man als Adresse der Ram-Zelle in der man dann zeitlich getacktet aufaddiert.

Vermutlich ist das Auslesen und Darstellen aufwändiger als das Sammeln der Messwerte.

2. Ansatz: eine DLL

3. Ansatz: Messwerte in einer Datei sammeln, im Hintergrund durch kleines Standaloneprogramm aus Messwertedatei eine Histogrammdatei erzeugen und diese mit PL wieder einlesen.

Mike

Mike D
Beiträge: 528
Registriert: Dienstag 14. Oktober 2008, 14:48
Wohnort: Elbe- Weser-Dreieck

Re: Histogramm

Beitrag von Mike D » Montag 22. März 2010, 15:06

Hier ein kleines Testprojekt. Nichts Fertiges, nur zur Erläuterung meiner Idee.

Mike
Dateianhänge
histogramm_test_1.prj
(3.17 KiB) 299-mal heruntergeladen
Zuletzt geändert von Mike D am Montag 22. März 2010, 18:32, insgesamt 1-mal geändert.

Mike D
Beiträge: 528
Registriert: Dienstag 14. Oktober 2008, 14:48
Wohnort: Elbe- Weser-Dreieck

Re: Histogramm

Beitrag von Mike D » Montag 22. März 2010, 18:32

noch ein paar kleine Hinweise zu histogramm_test_1:

1. der A/D-Wandler an den Adressleitungen des Ram bestimmt zusammen mit einem passend zum Messbereich eingestellten Vorverstärker die Anzahl der Klassen.

2. die beiden anderen A/D und D/A-Wandler mit dem Addierer bilden den Incrementierer der Klassen. Immer wenn eine fallende Flanke am R/W-Eingang des Ram kommt wird eine ausgewählte Klasse um 1 erhöht.

3. Der Vergleicher vor besagten R/W-Eingang in diesem Beispiel ist eine unglückliche Notlösung. Ich habe das so gemacht um Einspeichern und Auslesen der Werte ohne Multiplexer zu erreichen. Eigentlich müsste das incrementieren Zeit- oder Ereignisgesteuert erfolgen und das Auslesen der Kurve abwechselnd dazu mit eigener Steuerung. Dieses Beispiel soll aber so einfach wie möglich nur die Art der Speicherung des Histogramms im Ram zeigen.

4. soll das Histogramm relativ sein bräuchte man noch einen Messwertezähler und eine Formel/Berechnung der relativen Werte hinter dem Ausgang des Speichers und eine dynamische Skalierung der Y-Achse.

Viel Spaß beim weiteren Tüfteln

Mike D

darkdestroyer
Beiträge: 17
Registriert: Freitag 19. März 2010, 12:36

Re: Histogramm

Beitrag von darkdestroyer » Dienstag 23. März 2010, 07:52

Hallo, na das is ja ne Wucht. Nun muss ich das erstmal verdauen. Aber Deine Erklärungen haben meine nexten Fragen schon beantwortet.
Jetzt werd ich mal weiterdenken und vielleicht kommt ja das raus, was ich brauche. Vielen Dank erstmal, aber da kommen bestimmt noch weitere Fragen ;-)

Gruß Pedro

darkdestroyer
Beiträge: 17
Registriert: Freitag 19. März 2010, 12:36

Re: Histogramm

Beitrag von darkdestroyer » Dienstag 23. März 2010, 10:48

So, ich habs mal weitergdacht. Ein Makros simuliert meine Eingangsimpulse mit zufälligen Pulsfolgezeiten und zufälligen Impulshöhen. Zusätzlich kann man mit einem Schieberegler die Baseline verändern, ab der die Schaltung Impulse registriert. Damit kann man überprüfen, inwieweit das Histogramm auf den Wegfall der niedrigen Pegelwerte reagiert.
Die Histogrammerstellung basiert auf der Idee von Mike mit einigen Erweiterungen. Als Anzeige wurde jedoch ein X/Y-Schreiber anstelle des Stiftplotters genommen. Damit funktioniert das eigentlich so, wie ich mir das vorstelle.
Da der A/D-Wandler im Vorliegend Fall nur 255 Schritte auflöst, wurde ein Reset eingefügt, der nach 255 Messungen das RAM mit Nullen füllt und eine neue Darstellung startet. Da ist mir nix besseres eingefallen. Kann man das RAM resetten ohne die Verbiegung, die ich gemacht habe?

Grüße Pedro
Dateianhänge
histogramm-sim.prj
Histogramm nach der Idee von Mike.
Erweiter mit Simulation der Messdaten.
(7.59 KiB) 254-mal heruntergeladen

abacom
Site Admin
Beiträge: 3926
Registriert: Dienstag 23. September 2008, 10:54
Kontaktdaten:

Re: Histogramm

Beitrag von abacom » Dienstag 23. März 2010, 12:00

Noch ein Vorschlag...
Histo.prj
(9.64 KiB) 279-mal heruntergeladen
ABACOM support

darkdestroyer
Beiträge: 17
Registriert: Freitag 19. März 2010, 12:36

Re: Histogramm

Beitrag von darkdestroyer » Dienstag 23. März 2010, 14:04

So ähnlich war mein erster Ansatz. Nur scheint mir diese Variante bei hohen Klassenzahlen unübersichtlich zu werden.

Gruß

Pedro

Mike D
Beiträge: 528
Registriert: Dienstag 14. Oktober 2008, 14:48
Wohnort: Elbe- Weser-Dreieck

Re: Histogramm

Beitrag von Mike D » Dienstag 23. März 2010, 21:38

fur mehr als 255 counts brauchst du nur die A/D D/A-Wandler auf 16bit bringen und ein 2. Ram parallel schalten. kein großer Aufwand.

Mike

darkdestroyer
Beiträge: 17
Registriert: Freitag 19. März 2010, 12:36

Re: Histogramm

Beitrag von darkdestroyer » Mittwoch 24. März 2010, 08:38

Jo, schon klar, mein Einwand bezog sich auf das "histo.prj" von gestern...

Pedro

Antworten

Zurück zu „Thema: Anregungen zu ProfiLab“