Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!
28.09.2007, 15:04 (Dieser Beitrag wurde zuletzt bearbeitet: 08.12.2007 15:49 von jg.)
Hallo Leute,
ich habe mir folgendes VI erstellt. Soweit so gut. Nun habe ich das folgende Problem:
Wenn ich dieses VI ausführen, dann zeichnet es mir eine Kurve. Wenn ich es mit den selben (oder anderen Werten) ausführe, hängt es mir eine Kurve dran, anstatt eine neue Kurve zu zeichenen.
Klartext:(wie soll das VI aussehen)
Also ich übergebe meinem VI Daten und Frequenz. Und möchte das es mir bei jedem Aufruf eine neue Kurve zeichnet.
1. Räum deine For-Schleife mal auf, da erkannt man ja gar NICHTS!!
2. Ich bin überhaupt kein Freund der Feedback-Node, da erkennt man den Datenfluß nämlich nicht. Also, nach Umbau auf Shift-Register und etwas aufräumen sieht das ganz so aus:
3. Jetzt zu deinem Fehler: Du musst das Shift-Register initialisieren (genauso die FeedBack Node)
Beim nächsten Start der Schleife liegt nämlich am Eingang des Shift-Registers noch der Wert vom letzten Durchlauf an.
4. Und jetzt nochmal programmtechnisch: Was soll das? Innerhalb der For-Schleife zum Eingang dt immer erst mal 0 addieren?
Wieso nicht einfach so:
MfG, Jens
Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)
!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!
Hallo Jens,
zu Punkt 1 muss ich dir völlig recht geben. Ich bin noch relativ neu auf dem Gebiet, deshalb sorry, dass Sachen nicht aufgeräumt sind. Ich werde versuchen diesen Fehler beim nächsten Mal zu vermeiden.
zu Punkt 3:
die Null habe ich eingefügt, mit dem Gedanken, dass mein Schaubild dann immer von 0 anfängt (siehe Post 1)
zu Punkt 4:
mein Schaubild fängt zwar von 0 an, aber das dt stimmt nur beim ersten Wert. Danach habe ich als dt immer eine 1. Das dt sollte aber 1/(Frequenz) sein.
Vielleicht habe ich mich auch zu undeutlich ausgedrückt.
Es sieht halt eben so aus:
Zuerst habe ich eine Datei vorliegen. Aus dieser Datei lese ich mithilfe eines selbstgebauten VI die Fraquenz, die einzelnen Werte als Array und den Offset aus. Nun benutze ich diese Werte und übergebe Sie an meinen Agilent 33220A. Jetzt habe ich mir gedacht: Es wäre doch schön, wenn ich genau diese Kurve auch auf dem Bildschirm sehen würde. Da ich mir in meinem vorigen VI einige Sicherungen eingebaut habe (z.B. zu viele Werte, zu große Frequenz...) kann ich diese Express VI mit dem man dierekt aus der Datei ein Signal erstellt, nicht benutzen. Also dachte ich mir, ich mache mir mein eigenes VI, welches mir ebenfalls aufgrund vorliegender Werte und Frequenz das Signal rekonstruiert. Das VI wird dann ja nur ausgeführt, wenn alle Bedingungen erfüllt sind.
Nun habe ich mir so ein Signal geplotet. Was mir jetzt aber auffiel, wenn ich das VI mehrmals ausführe verschiebt sich die Zeitachse. (d.h.: es wird beim ersten Mal ein Signal rekonstruiert, beim 2ten Mal wird es einfach hintendrangehängt. Und genau das will ich nicht!!!)
Ich hätte gern, dass es bei jedem Mal mir das Signal neu zeichnet.
MfG Joe
30.09.2007, 18:48 (Dieser Beitrag wurde zuletzt bearbeitet: 30.09.2007 18:49 von jg.)
' schrieb:Nun habe ich mir so ein Signal geplotet. Was mir jetzt aber auffiel, wenn ich das VI mehrmals ausführe verschiebt sich die Zeitachse. (d.h.: es wird beim ersten Mal ein Signal rekonstruiert, beim 2ten Mal wird es einfach hintendrangehängt. Und genau das will ich nicht!!!)
Ich hätte gern, dass es bei jedem Mal mir das Signal neu zeichnet.
Red (bzw. schreib) ich hier gegen eine Wand? Meine Punkt 3 ist genau die Antwort auf deine Frage!! Nochmal: Shift-Register initialisieren!!
Und am Schluß hab ich nur noch mal einen einfachere Lösung geboten.
MfG, Jens
Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)
!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!