Hi, also ich hätte da ein neues Thema. Und zwar geht es um ein Signalverlaufsdiagramm, dass Signale zur Laufzeit anzeigt (pro Sekunde ein Wert). Die x-Achse ist dabei absolut skaliert (Systemzeit, Systemdatum).
Meine Historienlänge beträgt 900 Daten, also kann ich einen Bereich von 15 min darstellen. Was ich nun will ist, bei gleichbleibender Historienlänge den Bereich zu vergrößern. Dazu bilde ich z.B. den Mittelwert über 5 erfasste Werte und gebe alle 5 sek 1 Wert aus. Damit kann ich einen Bereich von 5sek*900 also 75 min anzeigen.
Das Problem: Wenn ich den Wert alle 5 sek ausgebe, stimmt die Zeitachse nicht dazu, da diese zu jedem Messwert den x-Wert um 1 erhöht. Ich will das die Schrittweite 5 sek statt 1 sek beträgt.
Kann mir da jemand weiterhelfen?
Für jede Anregung wäre ich dankbar!
lg betz
' schrieb:Das Problem: Wenn ich den Wert alle 5 sek ausgebe, stimmt die Zeitachse nicht dazu, da diese zu jedem Messwert den x-Wert um 1 erhöht. Ich will das die Schrittweite 5 sek statt 1 sek beträgt.
Das liegt offensichtlich daran. daß Du dem Diagramm keine Informationen über dt lieferst. Die Grundeinstellung ist dann dt=1.
Für genauere Hilfe müßtest Du Dir mal die Mühe machen das VI zu posten.
Anbei ein Beispiel für mitgelieferte Zeitinformation. Das muß aber nicht für Deinen Fall das Günstigste sein.
(VI LV 8.2)
Hallo. Ich habe das genau das gleiche Problem.
Meine Frage:
Gibt es eine Möglichkeit, die "dt" des Waveform-Chart über Variablen zu ändern, auch während das Programm läuft?
Oder kann man die "dt" nur vor dem Start des Programms über... x-Achse --> Rechtsklick --> Formatierung ... ändern?
Das Beispielprogramm von Lucki kann ich leider nicht starten. Ich denke meine LabVIEW Version ist zu alt.
schöne Grüße,
S.
' schrieb:Gibt es eine Möglichkeit, die "dt" des Waveform-Chart über Variablen zu ändern, auch während das Programm läuft?
Oder kann man die "dt" nur vor dem Start des Programms über... x-Achse --> Rechtsklick --> Formatierung ... ändern?
Das Beispielprogramm von Lucki kann ich leider nicht starten. Ich denke meine LabVIEW Version ist zu alt.
Kan jetzt nur kurz antworten.
Ob man über ein Variable, also die Eigenschaft "XAchse.Faktor", das dt im laufenden Betrieb ändern kann, weiß ich nicht. Ich vermute aber, daß es nicht geht und sich eine Änderung von dt z.B. rückwirkend auf alle bereits im Ringpuffer befindlichen Daten auswirkt. Aber das habe ich nicht probiert.
Di einzige Möglichkeit, währen des laufenden Updatings das dt zu ändern, hat man mit Daten im Waveform-Fomat. Hier müssen 2 Fälle unterschieden werden:
1.) Updating eines einzelnen Punktes. Hierfür wird überhaupt kein dt gebraucht, es genügt die Angaben t0 und des Wertes (Der allerdings zum Array mit 1 Element aufgemotzt werden muß, damit er als "Waveform" durchgeht). Hier spielt das dt gar keine Rolle, die t0 -Werte müssen nicht äquidistant sein.
2,) Updating in Bündeln von mehreren Werten, d.h wenn die Waverform echt ist und mehr als nur einen Wert enthält. Hier ist die Angabe von dt erforderlich (wenn es ungleich 1 ist). Es wäre dann möglich, das dt in jedem Bündel zu ändern. Die kleine Schwierigkeit ist nur, daß die Zeit t0 bei jedem Bündel richtig übergeben wird. Sie muss z.B. gelesen werden, wenn der erste Wert im Bündel erfasst wurde und nicht, wenn die Waveform an das Diagramm übergeben wird.
Aber gab es bei V5.1 überhaupt schon Waveforms? Wurden die nicht erst bei V6 eingeführt?