zeitlich logarithmische Trigger -- wie?

Houston, ich habe ein Problem: Ein Gerät benötigt zum zeitaufgelösten Messen eines Signals nach einem Drucksprung fallende TTL-Flanken, an denen jeweils ein Messpunkt genommen wird. Die beste Zeitauflösung soll ungefähr 1 ms betragen und das Signal soll über die Dauer von ca. 20 Sekunden verfolgt werden. Insgesamt würden also ca. 20000 Datenpunkte gemessen werden. Nun erwarte ich, dass sich das Signal exponentiell ändert und benötige eignetlich nur am Anfang zeitlich dichte Datenpunkte. Am Ende reicht eine Zeitauflösung von 1 oder 0.5 Sekunden. Damit ließe sich die Zahl der Messwerte deutlich eingrenzen.

Hier steht ein Keith??? 3930A MULTIFUNCTION SYNTHESIZER gelangweilt rum, mit dem ich solche fallenden Flanken erzeugen will. Die Kiste kann auch sogenannte "frequency sweeps" machen. Das tolle ist, dass er dabei die Frequenz nicht nur linear sondern auch logarithmisch ändern kann, was mir sehr entgegen kommt. Startfrequenz sei also 1kHz, Stopfrequenz 1 Hz, logarithmische Änderung der Frequenz über einen Zeitraum von 20 sek, alles einstellbar, alles prima, alles super, tolle Kiste das. Ein Problem nur: Die erste fallende Flanke kommt erst ca. 4 ms nach dem Starttrigger. Wenn ich eine lineare Frequenzänderung einstelle, braucht er noch länger (ca. 15 ms). Woran liegt das? Ist das eine Initialisierungszeit? Mache ich was falsch? Hat da jemand einen Hinweis?

Alternativ überlege ich, diese Pulsfolge anders zu erzeugen. Ich habe hier eine Multi-IO-Karte mit diversen 8255 und 8253 Chips drauf. Die

8255 nutze ich, um diverse Geräte zu schalten. Google sagt mir, dass man einen 8253 in Mode3 als Square Wave Generator nutzen kann. Kann man durch cleveres beschalten mehrerer 8253 (evt. in Kombination mit 8255) einen frequency sweep erzeugen?

Sieht jemand andere Wege, solch eine Triggerfolge zu erzeugen. Jeder Hinweis/Denkanstoß ist willkommen. Ich bin von Haus aus kein Physiker/Elektroniker und sehe daher manchmal den Wald vor lauter Bäumen nicht. Zumindest wenn es um Elektronik geht. :-)

Gruß! Martin

P.S. Ist ein langer Text geworden. Sorry!

Reply to
Martin Schiewek
Loading thread data ...

Hi,

Ich würde das mit einem kleiner Microcontroller lösen. Der kann in weniger als 1µs reagieren und der Rest ist Software und kann beliebig angepasst werden.

Ne andere Lösung, bei der man nicht so viel Einlernzeit investieren muss, fällt mir jetzt gerade nicht ein.

Michael

Reply to
Michael Rübig

Martin Schiewek schrieb:

einem=20

und=20

rte=20

ch=20

r=20

Ich gehe mal davon aus, dass du deine Daten in einem Array speicherst.=20 Wenn du eine =E4quidistante Abtastung w=E4hlst, kannst du anhand der=20 Position auf den Zeitpunkt der Messung schlie=DFen. Da dT (DeltaT)=20 konstant ist. Wenn dT variabel ist, musst du auch noch dies speichern,=20 um deine Messergebnisse auswerten zu k=F6nnen.

Bye

--=20 Dr.-Ing. Thomas Reinemann

formatting link
IMAT Public key available Otto-von-Guericke-Universit=E4t Magdeburg Universit=E4tsplatz 2

39106 Magdeburg, Germany
Reply to
Thomas Reinemann

Thomas Reinemann schrieb:

Wenn die Abstände immer gleich sind (d.h. die Folge reproduzierbar ist), ist das aber kein Problem. Konstantes Array in der Auswertesoftware.

--
Dipl.-Ing. Tilmann Reh
Autometer GmbH Siegen - Elektronik nach Maß.
http://www.autometer.de
Reply to
Tilmann Reh

Die Reproduzierbarkeit allein reicht nicht, er muss wenigstens einmal die die Abstände ausmessen. Dann steht immer noch die Frage, wie genau die Reproduzierbarkeit ist.

Bye Tom

Reply to
Thomas Reinemann

Thomas Reinemann schrieb:

Oder /kennen/. Weil er sie selbst z.B. mit µC ("quarzgenau") erzeugt hat.

Genau das meinte ich mit "wenn die Folge reproduzierbar ist".

"Genauigkeit" ist immer eine Frage des Zusammenhangs. Der OP hat die tatsächlich benötigte Auflösung erwähnt; eine Genauigkeit in der gleichen Größenordnung wird sicher kein Problem darstellen (weder für den OP noch für einen geeigneten Trigger-Generator mit µC).

--
Dipl.-Ing. Tilmann Reh
Autometer GmbH Siegen - Elektronik nach Maß.
http://www.autometer.de
Reply to
Tilmann Reh

OK, ich hatte nur geschrieben, dass der erste Trigger 4 ms zu spät kommt. Diese Info hatte ich natürlich daher, dass ich 20 sek mit einer AD-Karte (200 kSample/s) aller Trigger gemessen hatte. Die Fallzeiten liegen natürlich im Nanosekundenbereich, aber wenn ich sie mit der AD-KArte auf 5 Mikrosek genau messen kann, ist das für eine ms-Auflösung immer noch genau genug.

Die Reproduzierbarkeit ist gut. Das Hauptproblem ist allerdings, dass die ersten Trigger erst nach 4 ms kommen. Da fehlen am Anfang halt welche.

Reply to
Martin Schiewek

Michael Rübig brachte mich mit deinem Stichwort "Mikrocontroller" auf einen Gedanken. Ist folgendes Rezept durchführbar:

Zutaten: Man nehme

1 386er Laptop vom Dachboden incl. COM1 1 Realtime Betriebssystem (z.B. DOS) 1 altes Turbo Pascal

Durchführung: Man staube den Laptop ab, installiere DOS und PASCAL, fange alle Interrupts ab, polle eine Leitung von COM1 nach dem Starttrigger und schicke, wenn dieses Ereignis Eintritt, irgendwie die fallenden Flanken raus.

Also ich habe mich mit Literatur eingedeckt, Google läuft bereits heiss aber wenn jemand so etwas (ähnliches) schon mal gemacht hat und Hinweise liefern kann, bitte her damit.

Gruß! MS

Reply to
Martin Schiewek

[...]
[...]

Servus,

weshalb nimmst du nicht einen Frequenzgenerator (oder NE555 oder was auch immer)um die gewünschte Anfangsfrequenz DAUERHAFT zu erzeugen. Dieses Signal über ein UND-Gatter und ein Flip-Flop welches von deinem Triggersignal gestartet wird verknüpfen und schon hast du die ersten 4 ms wunderbare Signale. Danach dann per Monoflop, Zähler, was-weis-ich-wie auf den jetzt funktionierenden Frequenzgenerator umschalten.

Ich würde die ganze Sache so mit einem Microkontroller und eventuell einenm externen Gatter lösen - das ganze geht allerdings auch diskret wie in den 1980er Jahren oder in einem programmierbaren Logikbaustein oder wie andere schon geschrieben haben mit einem alten PC.

Ich weiß nicht mit was du dich auskennst.

Grüße

Frank

Reply to
frankhaussmann

Hallo Martin,

Ich hatte früher auch mal Explosionen zu messen. Das Problem hierbei war, daß kein Mensch wußte, wann dat Ding losgeht. Das einzige Problem ist eigentlich nur, die genaue Ausstattung zu kennen. Je nachdem gibt es zwei Möglichkeiten, welche ich bedarfsweise angewendet habe und die eigentlich nur durch die Geschwindigkeit des Equipments begrenzt werden und wieviele Messstellen gleichzeitig noch wie schnell miterfaßt werden müssen.

Rechner und dessen Geschwindigkeit ist heute ja kein Problem mehr.

Eine Möglichkeit: Man baut einen Speicherring auf mit einem Zuweisungszeiger. Messgeschwindigkeit und Dauer der Messung bestimmen die Speicherringgröße. Im vorliegenden Fall bei 20s und ms Takt also sicherheitshalber etwas über 20000 Positionen. Dann füllt man kontinuierlich diesen Speicher Messwert für Messwert und wenn der letzte Speicherplatz erreicht ist, fängt man wieder von vorne an und überschreibt Platz für Platz den jeweiligen alten Wert. Wenn dann jemand "Halt" ruft, die Messung also vorbei ist, hat man die letzten 20 Sekunden oder mehr sicher im Sack. Man muß also nicht das Startereignis kennen sondern nur das Ende der Messung. Selbiges könnte man natürlich auch mit zugehörigen Zeitmarken machen, wenn die Absolutzeit wichtig ist.

Eine zweite Möglichkeit, welche sehr sparsam mit Speicherplatz umgeht, ist die Beobachtung des Messwerttrends. Abgespeichert wird genau dann, wenn die Wertentwicklung von einem prognostiziertem Wert um eine bestimmte Toleranzbreite abweicht. Abgespeichert wird dann letzter Messwert und letzter Zeitpunkt und die Prognose wird neu berechnet. Jeder einzelne Messwert wird also auf "Speicherwürdigkeit" überprüft.

Damit kann jedes Detail mit der gewünschten vorgegebenen Toleranz wiedergegeben werden und dennoch ein Datensatz sehr stark reduziert werden.

So konnte ich in der Chemie z.B. Druckverläufe, Temperaturen usw. an

50 Messstellen im Millisekundenbereich aufzeichnen (Temperaturen wurden nur im Sekundenrythmus gemessen während Drücke, je nachdem, 10ms oder in noch kürzerer Zeit getestet wurden) und vor allem Daten auch blitzschnell wiedergeben (damals gab´s noch keine Bildschirme, nur Plotter). Bei 10 Mio Messungen am Tag reichten dann 250 kbyte (!) für etwa 3-5 Tage, je nachdem, wieviel passiert war.

Bei sehr schnellen Messungen habe ich nur mit Ringspeicher gearbeitet. Dies war dann einmal notwendig, als man die Umstände nachuntersuchte, wie es in einem eigentlich harmlosen Prozess zu einer Explosion kommen konnte, welcher ein Werk zerstörte. Genau hier wußte man im Versuch nicht, wann es passieren wird. Nach 10 Sekunden oder 3 Stunden.

Natürlich kann man beides auch kombinieren, sodaß das Ereignis sehr kompakt gespeichert werden Kann.

Reply to
Oleg Stolz

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.