Howto Messen in LTspice für Anfänger Teil 2 -- Rechteck 1: T_rise/fall/on/period und Freq

RudiS

Absoluter Profi
Member
Landesflagge
Vorbemerkung:
Obwohl dieser Teil in sich abgeschlossen und auch für sich allein verständlich ist, empfehle ich allen, die Teil 1 nicht gelesen haben,
das nachzuholen: Einzelheiten zum Messen, die ich in Teil 1 vorgestellt habe, wiederhole ich hier nicht noch einmal!
Um die unten stehenden Screenshots grösser zu sehen, auf das Bild klicken!


Im ersten Teil hatten wir in der zeitbezogenen TRAN-Analyse Nulldurchgang, Maximum und Minimum einer Sinuskurve versucht zu messen
und mussten die bittere Erfahrung machen, dass so ein Simulator wie LTspice nicht immer den theoretisch zu erwartenden Wert
liefern kann - winzigkleine Abweichungen davon sind einfach systembedingt.

Heute wenden wir uns der Rechteckschwingung zu. Beim Rechteck denkt man oft an digitale Signale, Null und Eins,
5V und 0V - vielleicht haben wir hier mehr Glück und können zufriedenstellender messen.
Wir bleiben aber bei der TRAN-Analyse und messen das Signal zu verschiedenen Zeitpunkten.

Ein Rechtecksignal ist durch folgende Grössen gekennzeichnet: die Anstiegszeit (rise time, T_rise), die Abfallzeit (fall time, T_fall),
die Ein(schalt)-Zeit (on time, T_on), die Aus(schalt)-Zeit (off time, T_off) und die Periodendauer (period time, T_period).
Das Rechtecksignal, das wir untersuchen wollen, beginnt zudem zeitverschoben,
diese Verzögerungszeit (delay time, T_dly) werden wir auch messen.

Weiterhin brauchen wir zwei Referenzpunkte im Spannnungsverlauf, Minimum und Maximum.

01__MfA_02_schema.png

Das ist der Schaltplan, eine Spannungsquelle, die das Rechtecksignal generiert, belastet mit einem kleinen Widerstand.

Und damit wir wirklich messen müssen, habe ich die Spannungsquelle in einen Subcircuit verpackt,
Ablesen der Daten aus der Pulsdeklaration geht also nicht.
Hier der zugehörige Plot:

02__MfA_02_Plot.png

Im Plot sind mit Grossbuchstaben die Zeitpunkte gekennzeichnet, die wir später messen wollen.

** Um im folgenden die zeitlichen Zusammenhänge gut verstehen zu können, ist es sehr zu empfehlen,
** ein Printout des vorstehenden Plots zur Seite zu haben! Oder aber die PDF-Datei ausdrucken und in LTspice
** die PDF-Datei konsultierend die einzelnen Schritte nachvollziehen, das geht auch.


Wir beginnen jedoch mit unseren Referenzwerten. Für Maximum und Minimum beschränken wir das Messintervall auf Null bis 3ms.

.meas TRAN vmax MAX v(out) from 0 to 3m
.meas TRAN vmin MIN v(out) from 0 to 3m

Nach der Eingabe ausführen und Messergebnis in der log-Datei ansehen (Aufruf mit CTRL-L):
vmax: MAX(v(out))=5 FROM 0 TO 0.003
vmin: MIN(v(out))=0 FROM 0 TO 0.003


Na, das ist ja schon etwas Erfreuliches, diesmal bekommen wir glatte Werte, geht doch!

Als nächstes messen wir die Verzögerungszeit, also die Zeit bis zum Punkt A.
Die Rechteckschwingung beginnt dort zum ersten Mal anzusteigen, die Spannung ist bis hierhin Null,
aus diesen Informationen bilden wir die Messanweisung:

.meas TRAN t_A find time when v(out)=0 rise=1

Und damit wir uns bei der Kontrolle der Ergebnisse in der log-Datei das Jonglieren im Kopf ersparen,
lassen wir uns das Ergebnis in Mikrosekunden anzeigen, indem wir t_A zuerst der Verzögerungszeit T_dly
zuweisen und das dann mit 1e6 multiplizieren:

.meas TRAN T_dly param t_A
.meas TRAN T_dly.us param T_dly*1e6 ;us = mikrosekunden

Das Ergebnis aus der log-Datei:

t_a: time=0.00022 at 0.00022
t_dly: t_a=0.00022
t_dly.us: t_dly*1e6=220


Somit beträgt die voreingestellte Verzögerung 220us.

Weiter geht es mit der Anstiegszeit zwischen Punkt A und Punkt B. Der Punkt B befindet sich dort,
wo die erste ansteigende Flanke vmax erreicht. Diese Information reicht, um den Punkt B zu finden:

.meas TRAN t_B find time when v(out)=vmax rise=1

Die Anstiegszeit ergibt sich aus der Differenz zwischen t_B und t_A, auch dieser Wert befindet sich im Mikrosekundenbereich,
wir bilden die Differenz für T_rise und multiplizieren das für die Anzeige in Mikrosekunden mit 1e6:

.meas TRAN T_rise param t_B - t_A
.meas TRAN T_rise.us param T_rise*1e6

Hier wieder die Ergebnisse:

t_b: time=0.00067 at 0.00067
t_rise: t_b - t_a=0.00045
t_rise.us: t_rise*1e6=450

Die Anstiegszeit ist daher 450us.


Unsere nächste Messung betrifft die Abfallszeit, wie aus dem Plot ersichtlich ist sie länger als die Anstiegszeit,
aber auch noch im Mikrosekundenbereich. Hier müssen wir zwei Zeitpunkte messen, nämlich Punkt C und Punkt D.

Punkt C ist der Zeitpunkt, wo das Signal zum ersten Mal vom vmax-Wert abfällt, Punkt D ist die Zeit,
wo diese erste abfallende Flanke Null erreicht. Die Abfallszeit ergibt sich aus der Differenz der genannten Zeitpunkte.
Diese Überlegungen reichen aus, um die Messanweisungen zu formulieren:

.meas TRAN t_C find time when v(out)=vmax fall=1
.meas TRAN t_D find time when v(out)=0 fall=1
.meas TRAN T_fall param t_D – t_C
.meas TRAN T_fall.us param T_fall*1e6

Das Ergebnis:
t_c: time=0.00167 at 0.00167
t_d: time=0.00242 at 0.00242
t_fall: t_d - t_c=0.00075
t_fall.us: t_fall*1e6=750


Jetzt kennen wir auch die Abfallzeit, nämlich 750us.

Fehlt nur noch der letzte Zeitpunkt t_E, um T_on, T_off und Periodendauer zu bestimmen.
t_E ist der Punkt, wo zum zweiten Mal die Flanke ansteigt und die Nulllinie verlässt:

.meas TRAN t_E find time when v(out)=0 rise=2

T_on ergibt sich aus der Differenz von t_D und t_A, T_off aus der Differenz t_E und t_D und die Periodendauer
aus der Summe von T_on und T_off. T_on und Periodendauer T_period liegen geschätzt im Millisekundenbereich,
T_off jedoch beträgt nur Mikrosekunden, das müssen wir beim "Jonglieren" (multiplizieren) berücksichtigen.

.meas TRAN T_on param t_D - t_A
.meas TRAN T_on.ms param T_on*1e3
.meas TRAN T_off param t_E - t_D
.meas TRAN T_off.us param T_off*1e6
.meas TRAN T_period param T_on + T_off
.meas TRAN T_period.ms param T_period*1e3

Und wenn wir zusätzlich noch die Zeit berechnen wollen, die das Signal auf dem Level von 5 Volt verweilt,
so bilden wir die Differenz T_on - T_rise - T_fall:

.meas TRAN T_5V param T_on - T_rise - T_fall
.meas TRAN T_5V.ms param T_5v*1e3

Aus der Periodendauer berechnen und messen wir abschliessend die Frequenz:

.meas TRAN f param 1/T_period

Die Ergebnisse sind:
t_e: time=0.00272 at 0.00272
t_on: t_d - t_a=0.0022
t_on.ms: t_on*1e3=2.2
t_off: t_e - t_d=0.0003
t_off.us: t_off*1e6=300
t_period: t_on + t_off=0.0025
t_period.ms: t_period*1e3=2.5
t_5v: t_on - t_rise - t_fall=0.001
t_5v.ms: t_5v*1e3=1
f: 1/t_period=400


Zu guter Letzt alle Ergebnisse kurz zusammengefasst:

T_dly:      220us
T_rise:     450us
T_fall:      750us
T_5V:      1ms
T_on :      2.2ms
T_off:      300us
T_period:     2.5ms
Freq.:     400Hz

Damit haben wir unser Ziel erreicht und die wesentlichen Parameter des Rechtecksignals gemessen.

Dieses Tutorial findet sich (gleicher Text) als PDF-Datei im Archiv, zusammen mit den Screenshots und den Dateien für die Simulation.

RudiS
 

Anhänge

  • MfA_02.zip
    96,9 KB · Aufrufe: 0
Zuletzt bearbeitet:

Benutzer welche diesen Thread betrachten (Mitglieder: 0, Gäste: 1)

Wer hat diesen Thread gelesen

Zurück
Oben