Forum: Analoge Elektronik und Schaltungstechnik Signal simulieren - suche Signalgenerator/Pulser


von Gustl B. (-gb-)


Lesenswert?

Guten morgen,

ich messe Signale die durch radioaktiven Zerfall entstehen und aus einem 
Germaniumdetektor herauskommen. Die sehen aus wie eine fallende 
e-Funktion. Da habe ich Hardware gebaut die das Analogsignal abtastet 
und dann in einem FPGA filtert und am Ende für jeden solchen e-förmigen 
Impuls einen Wert ausspuckt der proportional zur Zerfallsenergie ist.

Das digitale Filter und die analoge Beschaltung habe ich natürlich mit 
Software Multisim und Vivado simuliert, aber auch zum Teil durch 
Ausprobieren optimiert. Also mit einer Probe gemessen und die Bauteile 
so angepasst, dass die Peaks die zu einer bestimmten Zerfallsenergie 
gehören möglichst schmal werden.

Das würde ich jetzt gerne noch richtig machen ohne echte Probe sondern 
mit einem möglichst guten Signal. Die Idee ist, dass ich mir irgendwie 
solche e-förmigen Pulse generieren lasse die möglichst immer exakt 
gleich sind. Wenn ich diese dann erfasse sollte also immer für jeden 
Impuls der gleiche Wert rauskommen für die Zerfallsenergie, im 
Zerfallsspektrum ergibt das also einen sehr schmalen Peak oder gar nur 
einen Strich.

Jetzt bin ich auf der Scueh nach einer Quelle mir der ich das generieren 
lassen kann. Zwar haben viele Signalgeneratoren eine Arb Fähigkeit und 
auch viele eingebaute Signalformen, aber ich brauche zwischen diesen 
Impulsen immer etwas mehr Pause. Der Generator in meinem Oszi kann auch 
solche Pulse, ist aber unbrauchbar, weil nach einem Puls gleich der 
nächste kommt. Wenn ich die Pulse zeitlich so kurz einstelle wie sie aus 
dem echten Detektor kommen, dann liefert der Generator schon ca. 10k 
Impulse/s und das ist deutlich zu viel.
Der Generator sollte also einen 10us langen Puls abspielen oder ausgeben 
können und danach 1ms (das ist so eine Größenordnung, echte Proben 
liefern hier 1 bis ca. 100 Impulse/s) warten bis zum nächsten möglichst 
identischen Puls.

Gibt es das? Kann das z. B. ein Siglent SDG1032X?

von John (Gast)


Lesenswert?

Du könntest mit deinem Generator ein Monoflop (74HC123) ansteuern, das 
dir deine 10µs Impulse liefert.

von Gustl B. (-gb-)


Lesenswert?

Nun, ich möchte gerade keine Bastellösung verwenden weil ich dann am 
Ende nicht weiß woran es liegt wenn der Peak im Spektrum nicht schmaler 
wird. Ist es das Rauschen auf meiner Quelle und die Pulse sind eben alle 
meicht unterschiedlich oder ist es meine Messhardware die etwas nicht 
gut macht.

Ich habe hier auch einen FPGA mit einem schnellen 250 MSample 16 Bit 
DAC. Das habe ich gebastelt und könnte da natürlich auch eine passende 
Wertetabelle ausgeben aber ich möchte um ein Messgerät zu optimieren 
gerne eine möglichst professionelle Hardware.

: Bearbeitet durch User
von Wolfgang (Gast)


Lesenswert?

Gustl B. schrieb:
> Da habe ich Hardware gebaut die das Analogsignal abtastet
> und dann in einem FPGA filtert und am Ende für jeden solchen e-förmigen
> Impuls einen Wert ausspuckt der proportional zur Zerfallsenergie ist.

Du suchst einen Ladungsintegrator.
Oder interessiert dich der Kurvenverlauf in irgendeiner Weise?

von John (Gast)


Angehängte Dateien:

Lesenswert?

Gustl B. schrieb:
> Der Generator in meinem Oszi kann auch
> solche Pulse, ist aber unbrauchbar

Gustl B. schrieb:
> ich möchte um ein Messgerät zu optimieren
> gerne eine möglichst professionelle Hardware

Was meinst du mit „möglichst professionelle Hardware“?
Was für ein Oszi hast du?
Der Generator in meinem Keysight kann das.

Und ja, ein Siglent SDG1032X sollte das auch können.

von Gustl B. (-gb-)


Lesenswert?

Du hast Recht, die Fläche unter dem e-förmigen Impuls ist proportional 
zur Zerfallsenergie. Das könnte man integrieren und nun, das mache ich 
ja auch digital nach der Abtastung. Ein FIR Filter ist ja nichts anderes 
wie eine gewichtete Summe, das Integral ist ja auch eine Summe aber mit 
gleicher Gewichtung der einzelnen Abtastwerte.

Aber auch die Höhe, also das Maximum des Impulses ist proportional zur 
Zerfallsenergie.

Fertig und in kaufbar funktioniert das so:
Hinter dem Detektor kommt ein shaping Verstärker. Der macht aus den sehr 
langen e-förmigen Impulsen so gaußförmige Impulse die deutlich kürzer 
sind. Bei hohen Zählraten kommt es auch vor, dass sich zwei e-förmige 
Überlagern, bei den Gaußförmigen ist das dann nicht mehr so (meistens) 
weil die eben kürzer sind. Das bedeutet aber auch, dass der Shaping 
Verstärker nicht den ganzen e-förmigen Puls betrachtet sondern nur den 
Anfang. Also eine große Steigung führt zu einem großen Gaußpuls.
Danach kommt dann ein spezieller ADC und die Modelle die wir hier haben 
arbeiten alle mit einem Halteglied und digitalisieren dann einmal je 
Impuls die Höhe von dem Gaußpuls.

Tja. Ich digitalisiere jetzt diese e-förmigen direkt und filtere sie 
digital. Da kommen dann auch Gaußartge Pulse bei raus von denen ich die 
Höhe als Energiewert ausgebe. Mit dem Verfahren bin ich knapp besser als 
die gekaufen Geräte die wir hier haben. Aber gut, die sind auch alt und 
heutzutage machen das die Hersteller auch mit sehr schnell abtastenden 
ADCs. Die Firma https://www.fastcomtec.com baut da einiges.

John schrieb:
> Der Generator in meinem Keysight kann das.
>
> Und ja, ein Siglent SDG1032X sollte das auch können.

Das sind jetzt aber keine e-förmigen Pulse. Normale Pulse, also Spannung 
ein und aus kann ich mir auch schnell und sauber generieren. Ein 
Keysight habe ich auch.

Hier geht es nur um das Filter:
Beitrag "Re: FIR parallel und seriell braucht zu viele LUTs."
Da sieht man in den Bildchen aber auch so e-förmige und dann diese 
gaußähnlichen nach em Filter. Aber:
Diese e-förmigen sind deutlich zu lang und ich kann am Generator, das 
war hier mein Oszi, keine Pause zwischen einem und dem nächsten Puls 
einstellen. Ich will also solche Pulse erzeugen lassen, aber kürzer und 
mit vergleichsweise langer Pause dazwischen und natürlich möglichst 
immer exakt den gleichen Puls.

: Bearbeitet durch User
von ArnoR (Gast)


Angehängte Dateien:

Lesenswert?

Gustl B. schrieb:
> Der Generator sollte also einen 10us langen Puls abspielen oder ausgeben
> können und danach 1ms (das ist so eine Größenordnung, echte Proben
> liefern hier 1 bis ca. 100 Impulse/s) warten bis zum nächsten möglichst
> identischen Puls.

Siehe Anhang. Der Pulsabstand wird über die Frequenz eingestellt (mit 
dem 33k-Widerstand), die Pulslänge mit den 1n/1k. Die Pulse sind immer 
gleich, egal wie die Wiederholfrequenz eingestellt ist, außer natürlich 
die Frequenz ist so groß, daß sich die Pulse überlappen. Man kann das 
Netzwerk am Ausgang des 7555 auch an einen Funktionsgenerator hängen.

von Gustl B. (-gb-)


Lesenswert?

Danke, dann werde ich das mal probieren. Klar sind die Impulse in der 
Theorie mit perfekten Bauteilen immer gleich. Aber in der Realität hängt 
der 555 oder der Pulsgenerator im Oszilloskop an irgendeiner Versorgung 
die da vielleicht Störungen reinbringt. Da hatte ich gedacht, dass ein 
Signalgenarator als fertiges Produkt einfach rauschfreier ist wie eine 
solche Lösung. Mit geht es vor allem auch um längere Zeit, also nicht 
nur um einen Puls, sondern um sehr viele in z. B. einer Stunde oder so 
die immer möglichst gleich aussehen sollen.

von Experte (Gast)


Lesenswert?

Gustl B. schrieb:
> Ein Keysight habe ich auch.

Na dann ist doch gut. Sollte doch mit jedem digitalen Funktionsgenerator 
gehen. Habe es kurz an meinem 33522b ausprobiert:

  - Arbiträr: Exponential, fallend
  - Sampling: 50 MS/s
  - Burst-Mode: 1 Zyklus
  - Trigger-Source: Timer 10ms

Hat keine 5 Minuten gedauert, inkl. einschalten.

von Gustl B. (-gb-)


Lesenswert?

Lieber Experte, ich habe ein Keysight wie der andere User vorhin weiter 
oben. Das ist ein Oszilloskop mit eingebautem Generator der keine 
exponentiellen Signale kann.

Dann habe ich noch ein Rigol Oszilloskop, das hat auch einen 
Funktionsgenerator, kann auch exponentiell, aber ... wie oben 
beschrieben beginnt am Ende eines Pulses gleich der Nächste. Ich werde 
noch etwas nach Einstellungsmöglichkeiten gucken, aber bisher habe ich 
nichts gefunden was mir helfen würde.

Daher habe ich diesen Tread aufgemacht und oben auch einen 
Signalgenerator von Siglent genannt. Ich bin schon bereit etwas Geld 
hinzulegen vor allem weil ich bis auf die Generatoren im Oszi noch keine 
besitze und die im Oszi doch deutlich beschränkt sind. Aber wenn ich mir 
etwas kaufe möchte ich auch, dass es das Gewünschte kann.
>500€ sind mir aber zu viel. Das ist bisher nur ein Hobby.

von Helmut S. (helmuts)


Lesenswert?

> Lieber Experte, ich habe ein Keysight wie der andere User vorhin weiter
oben. Das ist ein Oszilloskop mit eingebautem Generator der keine
exponentiellen Signale kann.

Der Generator kann doch beliebige Signale im Waveformspeicher ablegen 
und die dann mit wählbarer Rate wiederholt ausgeben. Der Experte  hat es 
doch beschrieben. Zur Not musst du die Werte der e-Funktion selber in 
den Waveformspeicher ablegen, wenn die Software deines Generators keine 
wählbare Funktion dafür hat.

von Gustl B. (-gb-)


Lesenswert?

Wow, danke, vielen vielen Dank, da stand ich auf dem Schlauch, sorry.

Jetzt habe ich mit der kleinen C-R Schaltung aus einem Puls eine e-Form 
gemacht, die auf einen Generatorkanal gespeichert und kann die 
wunderschön abspielen. Sehr fein. Und siehe da, da Auflösung ist top! 
Ich bekomme im Energiespektrum einen Peak der ca. 4 Bins breit ist auf 
der halben Höhe. Geteilt durch die Lage im Spektrum (mit maximal 2^13 
Bins) ist also 4/7300.
7300 ist die Position des Peaks im Spektrum.
Das ist deutlich schmäler wie das was ich bei echten Proben messe, da 
sind das so 6 Bins oder vielleicht auch 7 bei dieser Lage im Spektrum. 
Ich bin also sehr zufrieden.
Tja, wieso ist das bei echten Proben schlechter? Es könnte halt sein, 
oder ist ja auch wahrscheinlich, dass der e-Puls nicht immer an den 
gleichen Stellen abgetastet wird. Vielleicht macht es da was aus wenn 
man die hohe Spitze verpasst, diese also zwischen zwei Abtastpunkten 
liegt. Aber eigentlich sollte das egal sein, da ist ja ein Analogfilter 
vor dem ADC um die Bandbreite zu begrenzen. Jedenfalls ist das alles 
fein, ich werde jetzt mal mit längeren und kürzeren Filtern im FPGA 
experimentieren. Längere unterdrücken die Gleichspannung besser, kürzere 
lassen höhere Frequenzen besser durch.

Und es könnte natürlich sein, dass es nur deshalb jetzt so gut ist, weil 
das Oszi das Signal nur mit 8 Bit abgetastet hat und der Generator so 
diese 8 Bit Signalform ausspuckt. Das sieht man jetzt auch schön, dass 
da diese Stufen drinnen sind. Die sind bei einer echten Probe natürlich 
nicht da. Also ich weiß nicht ob ich da jetzt zufrieden sein darf oder 
ob ich das in höher aufgelöst und in schneller bräuchte um es verwenden 
zu können.

: Bearbeitet durch User
von Wolfgang (Gast)


Lesenswert?

Gustl B. schrieb:
> Lieber Experte, ich habe ein Keysight wie der andere User vorhin weiter
> oben. Das ist ein Oszilloskop mit eingebautem Generator der keine
> exponentiellen Signale kann.

Jeder Kondensator, der über eine Widerstand entladen wird, liefert einen 
exponentiellen Abfall. Dafür braucht man keinen Arbitrary DDS Sonstwas 
Generator ;-)

von Gustl B. (-gb-)


Lesenswert?

Wolfgang schrieb:
> Jeder Kondensator, der über eine Widerstand entladen wird, liefert einen
> exponentiellen Abfall.

Das ist mir klar. Mir geht es drum sehr viele möglichst exakt gleiche 
Pulse zu erzeugen. Gut, also lade ich den Kondensator immer von der 
gleichen Quelle - aber welche? Eine Batterie wird mit der Zeit entladen 
wenn auch nur minimal. Eine Spannung aus dem Netzteil rauscht. Ich hätte 
erwartet, dass ein Signalgenerator das besser macht einfach weil da 
schon Aufwand getrieben wurde um das rauschfrei zu bekommen.

Jetzt verwende ich ja auch einen Generator, den im Oszi. Der erzeugt 
auch immer gleiche Pulse die sich sehr identisch sind, aber die sind 
leicht anders wie echte Zerfallsimpulse. Ich bin also derzeit zufrieden, 
weiß aber noch nicht ob das so bleibt oder ich eine bessere Quelle 
brauche.

von Bernd (Gast)


Lesenswert?

Gustl B. schrieb:
> ich möchte gerade keine Bastellösung verwenden
Vielleicht die hier?
http://www.detectoremulator.com/

von -gb- (Gast)


Lesenswert?

Das wäre das Optimum. Auch Fast Comtec bauen sowas aber das ist alles 
irre teuer im Vergleich zu einem normalen Generator.

von Bernd (Gast)


Lesenswert?

Ja, Prüfstrahler waren für uns auch die günstigere Lösung.

von Gustl B. (-gb-)


Lesenswert?

Mit einer echten Probe/Prüfstrahler weiß ich nicht was an dem Ergebnis 
der Detektor und Vorverstärker und was meine Hardware gemacht hat.

Was hast du denn gebaut? Arbeitest du bei einer der Messtechnikfirmen 
wie Ortec, Canberra, ...?

von Bernd (Gast)


Lesenswert?

Gustl B. schrieb:
> Mit einer echten Probe/Prüfstrahler weiß ich nicht was an dem
> Ergebnis
> der Detektor und Vorverstärker und was meine Hardware gemacht hat.
Prinzipiell richtig. Die Detektoren haben die Kollegen mit bekannten 
Elektroniken ausgemessen. Bei den Vorverstärkern haben wir zum Vergleich 
irgendwas von Cremat gehabt. Und dann gab es noch einen steinzeitlichen 
Pulser von Ortec.

> Was hast du denn gebaut?
Es sollte ein Mehrkanaldetektor werden. Und mit Mehrkanal meine ich 
nicht das, was die Kernpysiker darunter verstehen (Histogramm-Bins), 
sondern das, was ein Signalverarbeiter darunter verstehen würde 
(parallele Messungen).

> Arbeitest du bei einer der Messtechnikfirmen
> wie Ortec, Canberra, ...?
An einem Forschungsinstitut (nein, leider nicht am CERN :-)

von Gustl B. (-gb-)


Lesenswert?

Bernd schrieb:
> Es sollte ein Mehrkanaldetektor werden.

Witzig, genau das machen wir hier auch. Ich habe da zuerst die Daten von 
alten gekauften ADCs erfasst und Zeitstempel dazugeschrieben mit hoher 
Auflösung. Jetzt habe ich eine Platine mit einem IC LTC2325 mit 4 
Eingängen und mache da ebenfalls Zeitstempel. Da fällt dann aus einem 
FPGA für jeden der 4 Eingänge eine "Zeitreihe" heraus. Also eine 
Aufnahme die jeden einzelnen Impuls mit Zeitstempel enthält. Wenn man da 
jetzt getrennte Messungen macht kann man die getrennt starten und 
stoppen, also 4 getrennte Uhren im FPGA verwenden, aber es ist auch 
möglich meherere Messungen mit der gleichen Uhr zu starten. Am Ende 
solch einer Messung hat man dann mehrere Zeitreihen die zu einer Probe 
gehören und zu einer Zeitbasis, aber die von verschiedenen Detektoren 
kommen. Das ist ziemlich schick weil man dann sehr bequem z. B. 
Tochterzerfälle herausfiltern kann weil man eben weiß wie lange die im 
Schnitt nach einem ersten Zerfall kommen und welche Energie die haben. 
In meiner Software (ein wildes Pythonkonstrukt mit GUI) kann man da 
mehrere Zeit- und auch Energiefenster setzen nach denen diese Zeitreihen 
dann gefiltert und Spektren gebaut werden. Das ist also eine 
Koinzidenzmessung.

Bernd schrieb:
> Bei den Vorverstärkern haben wir zum Vergleich
> irgendwas von Cremat gehabt.

Wie haben hier Ortec und Tennelec. einen Cremat habe ich auch mal 
gekauft (CR-210 und CR-200-8us) aber besser wie die alten Ortec waren 
die auch nicht. Dann hatte in die alten ADCs ausgemustert und die Pulse 
aus den Shaping-Verstärkern selbst abgetastet und nun sind auch die 
gegangen oder werden bald gehen und die Detektorimpulse abgetastet. Die 
Ergebnisse sind zwar nicht irre gut und wir kommen nicht ganz an die 
Spezifikation des Detektors ran, aber es ist schon etwas besser wie mit 
der alten Elektronik die vorher verwendet wurde. Vor allem ist es 
deutlich günstiger wie die MCAs die man so kaufen kann samt Software.

Bernd schrieb:
> An einem Forschungsinstitut (nein, leider nicht am CERN :-)

GSI Darmstadt? Die machen sowas ... und in Garching gibt es auch noch 
Leute die sich mit dem Thema befassen.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.