IPB

Welcome Guest ( Log In | Register )

 
Reply to this topicStart new topic
> Signale vergleichen
Gunni1979
post 27. Feb 2007, 10:11
Post #1


Member
**

Group: Members
Posts: 68
Joined: 14.02.2007
From: Erfurt
Member No.: 19
LV Version: 8.00 / 8.2
Zertifizierung: keine
LV User seit: 2006



Morgen.

Ich habe jetzt zwei Signale in Form von immer wieder aufeinander folgenden neuen Datenpaketen vorliegen. Diese beiden sollen miteinander verglichen werden, ob nun eine Phasenverschiebung eingetreten ist oder auch eine Dämpfung. Gibt es in LabVIEW nicht auch so ne Art Express-VI mit dem oder denen ich diese Aufgabe erledigen kann?


Gunni
Go to the top of the page
 
+Quote Post
CB
post 27. Feb 2007, 14:33
Post #2


proven Member
****

Group: Administrators
Posts: 315
Joined: 16.10.2006
From: Düsseldorf
Member No.: 2
LV Version: current
Zertifizierung: CLA
LV User seit: 2001



QUOTE(Gunni1979 @ 27. Feb 2007, 10:11) [snapback]118[/snapback]
Morgen.

Ich habe jetzt zwei Signale in Form von immer wieder aufeinander folgenden neuen Datenpaketen vorliegen. Diese beiden sollen miteinander verglichen werden, ob nun eine Phasenverschiebung eingetreten ist oder auch eine Dämpfung. Gibt es in LabVIEW nicht auch so ne Art Express-VI mit dem oder denen ich diese Aufgabe erledigen kann?
Gunni


ich fürchte nein, den Algorithmus musst du dir wohl selber programmieren ...


--------------------
künstliche Intelligenz ist besser als natürliche Dummheit!
rotabench:rotierende Prüfstände nach dem Baukasten-Prinzip
Go to the top of the page
 
+Quote Post
Gunni1979
post 27. Feb 2007, 14:40
Post #3


Member
**

Group: Members
Posts: 68
Joined: 14.02.2007
From: Erfurt
Member No.: 19
LV Version: 8.00 / 8.2
Zertifizierung: keine
LV User seit: 2006



QUOTE(CB @ 27. Feb 2007, 14:33) [snapback]119[/snapback]
ich fürchte nein, den Algorithmus musst du dir wohl selber programmieren ...


Verdammte Axt. Und das wo ich doch so schon kaum klar komme mit der ganzen LabVIEW-Geschichte. Na da bin ich mal gespannt was da noch auf mich zu kommt.

Aber eins ist mir aufgefallen. Ich gebe für meine Signale ein t0, dt und Y[] an. Das ist so wie es der Graph braucht um es darzustellen. Wenn ich jetzt diese Filter-VIs, oder Express-VIs benutzen möchte in Verbindung mit meinen Daten, funktioniert es nicht. Deren Zeitangaben sind etwas komplexer - Zeitstempel und so. Kann ich meine Angaben dahingehend formatieren das ich sie an solche VIs anklemmen kann?

Gunni

This post has been edited by Gunni1979: 27. Feb 2007, 14:53
Go to the top of the page
 
+Quote Post
CB
post 27. Feb 2007, 16:31
Post #4


proven Member
****

Group: Administrators
Posts: 315
Joined: 16.10.2006
From: Düsseldorf
Member No.: 2
LV Version: current
Zertifizierung: CLA
LV User seit: 2001



QUOTE(Gunni1979 @ 27. Feb 2007, 14:40) [snapback]120[/snapback]
Verdammte Axt. Und das wo ich doch so schon kaum klar komme mit der ganzen LabVIEW-Geschichte. Na da bin ich mal gespannt was da noch auf mich zu kommt.

Aber eins ist mir aufgefallen. Ich gebe für meine Signale ein t0, dt und Y[] an. Das ist so wie es der Graph braucht um es darzustellen. Wenn ich jetzt diese Filter-VIs, oder Express-VIs benutzen möchte in Verbindung mit meinen Daten, funktioniert es nicht. Deren Zeitangaben sind etwas komplexer - Zeitstempel und so. Kann ich meine Angaben dahingehend formatieren das ich sie an solche VIs anklemmen kann?

Gunni


ehrlichgesagt: keine Ahnung, als anerkannter und notorischer Express-VI-Hasser hab ich mich mit der Thematik nie beschäftigt. Wenn ich sowas machen müsste, würde ich mir mal die Hilfe zum Thema "dynamische Daten" durchlesen, in der Hoffnung, dass ich eine Waveform in dynamische Daten umwandeln kann ...


--------------------
künstliche Intelligenz ist besser als natürliche Dummheit!
rotabench:rotierende Prüfstände nach dem Baukasten-Prinzip
Go to the top of the page
 
+Quote Post
Gunni1979
post 28. Feb 2007, 14:47
Post #5


Member
**

Group: Members
Posts: 68
Joined: 14.02.2007
From: Erfurt
Member No.: 19
LV Version: 8.00 / 8.2
Zertifizierung: keine
LV User seit: 2006



QUOTE(CB @ 27. Feb 2007, 16:31) [snapback]121[/snapback]
ehrlichgesagt: keine Ahnung, als anerkannter und notorischer Express-VI-Hasser hab ich mich mit der Thematik nie beschäftigt. Wenn ich sowas machen müsste, würde ich mir mal die Hilfe zum Thema "dynamische Daten" durchlesen, in der Hoffnung, dass ich eine Waveform in dynamische Daten umwandeln kann ...


Ja so ein richtiger Freund der blau unterlegten VIs bin ich auch nicht. Man kann zwar rein schauen, aber es ist ja meist auch zu viel Kram drin. Jetzt habe ich mich an meine alten Physik-Tage erinnert und denke das ich die Dämpfung mit den Effektivwerten der Eizelschwingungen errechnen könnte. Dazu bräuchte ich den Maximalausschlag und die Phasenverschiebung. Jetzt habe ich etwas rum experimentiert und nicht nur das es nicht schön aussieht, es macht auch nicht das wie ich es mir vorstelle.
[attachment=75:Datenauf...PC_Host_.vi](Zustand/state 4)
Bei dem Express-VI bekomme ich wenigstens nur einen Wert für Phase, Amplitude und so. Ich bin mir jetzt nicht sicher ob das so erlaubt ist mit der blumpen Rechnung wie ichs da tat.
Die kleinen VIs machen für mich einen netteren Eindruck. Allerdings liefern die mir einen Cluster. Dieser enthält zu meinem Schreck auch noch ein Array anstatt eines einfachen Wertes.

Es gibt bei LabVIEW leider so verdammt viele VIs in Sachen Signalverarbeitung. Ist jemanden ein alternatives VI für Amplitude und Phase bekannt? Am besten eins wo beide Signale rein laufen und die Phasenverschiebung schon berechnet wird.

Gunni

This post has been edited by Gunni1979: 28. Feb 2007, 14:50
Go to the top of the page
 
+Quote Post
CB
post 28. Feb 2007, 17:07
Post #6


proven Member
****

Group: Administrators
Posts: 315
Joined: 16.10.2006
From: Düsseldorf
Member No.: 2
LV Version: current
Zertifizierung: CLA
LV User seit: 2001



QUOTE(Gunni1979 @ 28. Feb 2007, 14:47) [snapback]122[/snapback]
Es gibt bei LabVIEW leider so verdammt viele VIs in Sachen Signalverarbeitung. Ist jemanden ein alternatives VI für Amplitude und Phase bekannt? Am besten eins wo beide Signale rein laufen und die Phasenverschiebung schon berechnet wird.


Für die Phasenverschiebung an sich hab ich kein VI gefunden, sehr wohl aber ein VI, das Phase, Amplitude und Frequenz eines Signals bestimmt. Und wenn man das hat sollte es keine Schwierigkeit sein, das 2 mal anzuwenden und die Phasen von einander abzuziehen ...

Attached File  AFP.zip ( 18.84K ) Number of downloads: 979



--------------------
künstliche Intelligenz ist besser als natürliche Dummheit!
rotabench:rotierende Prüfstände nach dem Baukasten-Prinzip
Go to the top of the page
 
+Quote Post
Gunni1979
post 01. Mar 2007, 12:00
Post #7


Member
**

Group: Members
Posts: 68
Joined: 14.02.2007
From: Erfurt
Member No.: 19
LV Version: 8.00 / 8.2
Zertifizierung: keine
LV User seit: 2006



QUOTE(CB @ 28. Feb 2007, 17:07) [snapback]123[/snapback]
Für die Phasenverschiebung an sich hab ich kein VI gefunden, sehr wohl aber ein VI, das Phase, Amplitude und Frequenz eines Signals bestimmt. Und wenn man das hat sollte es keine Schwierigkeit sein, das 2 mal anzuwenden und die Phasen von einander abzuziehen ...

Attached File  AFP.zip ( 18.84K ) Number of downloads: 979


Danke erstmal für deine Mühe. Das VI scheint so nicht verkehrt zu sein. Ich habe jetzt nur Angst das die Werte für die Phasen nicht stimmen. So habe ich sie verbunden.[attachment=77:Phase_er...diagramm.jpg] und folgendes kam dabei raus[attachment=78:Phase_ermitteln.jpg]. Die ermittelte Frequenz hat aber auch gar nichts mit der eingestellten zu tun. Laut Oszi stimmt das Signal aber noch.
Der Wert der Aplitude ist sehr annehmbar. Da sag ich nix. Wenn all die Überlegungen und diese einfache Rechnung im Blockdiagramm stimmen, bin ich ja fast am Ziel.

Gunni
Go to the top of the page
 
+Quote Post
CB
post 01. Mar 2007, 12:22
Post #8


proven Member
****

Group: Administrators
Posts: 315
Joined: 16.10.2006
From: Düsseldorf
Member No.: 2
LV Version: current
Zertifizierung: CLA
LV User seit: 2001



joh, die Frequenz stimmt überhaupt nicht, was aber vermutlich damit zu tun hat, dass du den Waveform Cluster mit falschen Werten bestückst. Wenn ich das richtig erkenne ist dt falsch. Da musst du den Kehrwert deiner Sample-Rate reinschieben, also wenn du mit 100kHz abtastest 0,00001 weil die Zeit zwischen 2 Samples ja genau 0,01 ms beträgt. Das muss das "Schätz" VI wissen, damit es richtig rechnen kann.

Des weiteren würde ich bei T0 nicht einfach die Zeit 0 anklemmen, sondern mir jedweils die aktuelle Rechnerzeit mit "Get Time in Seconds" (Timing Palette) holen. Ich weiss zwar nicht genau, ob das auch auswirkungen hat, aber ich würde es auf jeden Fall mal versuchen ...

Grüße
CB


--------------------
künstliche Intelligenz ist besser als natürliche Dummheit!
rotabench:rotierende Prüfstände nach dem Baukasten-Prinzip
Go to the top of the page
 
+Quote Post
Gunni1979
post 01. Mar 2007, 15:35
Post #9


Member
**

Group: Members
Posts: 68
Joined: 14.02.2007
From: Erfurt
Member No.: 19
LV Version: 8.00 / 8.2
Zertifizierung: keine
LV User seit: 2006



QUOTE(CB @ 01. Mar 2007, 12:22) [snapback]125[/snapback]
joh, die Frequenz stimmt überhaupt nicht, was aber vermutlich damit zu tun hat, dass du den Waveform Cluster mit falschen Werten bestückst. Wenn ich das richtig erkenne ist dt falsch. Da musst du den Kehrwert deiner Sample-Rate reinschieben, also wenn du mit 100kHz abtastest 0,00001 weil die Zeit zwischen 2 Samples ja genau 0,01 ms beträgt. Das muss das "Schätz" VI wissen, damit es richtig rechnen kann.

Ja hast recht. Hab den Wald vor lauter Bäumen nicht gesehn. Das mit der Frequenz haut jetzt exakt hin.
QUOTE(CB @ 01. Mar 2007, 12:22) [snapback]125[/snapback]
Des weiteren würde ich bei T0 nicht einfach die Zeit 0 anklemmen, sondern mir jedweils die aktuelle Rechnerzeit mit "Get Time in Seconds" (Timing Palette) holen. Ich weiss zwar nicht genau, ob das auch auswirkungen hat, aber ich würde es auf jeden Fall mal versuchen ...

Grüße
CB


Nach dieser "Get Time in Seconds"-Geschichte habe ich noch nicht geschaut. Mache ich aber gleich morgen früh. Jetzt habe ich feststellen müssen das ich zur Effektivwertberechnung nicht nur die Frequenz und Amplitude brauch, da steckt auch noch die Zeit drin. ich behaupte jetzt einfach mal das ist die Zeit t wo die Amplitude ihren Maxwert hat. Wenn ich T0 jetzt mal auf 0 lasse und das ganze Datenpaket in so nen VI schiebe wo mir Min oder Max ausgegeben wird, kann ich doch auf Grund meines dt und dem Index des Maxwertes mein t ausrechnen. Ich galube ich habe sowas schon mal gesehen. Fällt mir nur gerade ein, kann es aber nicht ausprobieren weil ich zu Hause kein LabVIEW drauf habe.

Gunni

Update:
Hier habe ich bestimmt großen Mist behauptet. Beim Sinus mit 10 kHz und nur 10 Abtastpunkten pro Schwingung muss der Maximalwert des Datenarrays ja nicht wirklich der maximalste Wert sein. Beim Rechteck hätte ich ja außerdem mehrere Werte die den Maximalwert ausmachen. Also geht es so nun doch nicht.

This post has been edited by Gunni1979: 01. Mar 2007, 17:59
Go to the top of the page
 
+Quote Post
CB
post 01. Mar 2007, 20:16
Post #10


proven Member
****

Group: Administrators
Posts: 315
Joined: 16.10.2006
From: Düsseldorf
Member No.: 2
LV Version: current
Zertifizierung: CLA
LV User seit: 2001



QUOTE(Gunni1979 @ 01. Mar 2007, 15:35) [snapback]126[/snapback]
[...] kann ich doch auf Grund meines dt und dem Index des Maxwertes mein t ausrechnen.

joh, das ist ganz einfach: wenn du 1000 Samples mit einem dt von 0,001 Sekunden bekommst, dann ist dein nächstes TO gleich T0 vom letzten Schleifendurchlauf + 1000*0,0001 ...

QUOTE(Gunni1979 @ 01. Mar 2007, 15:35) [snapback]126[/snapback]
Update:
Hier habe ich bestimmt großen Mist behauptet. Beim Sinus mit 10 kHz und nur 10 Abtastpunkten pro Schwingung muss der Maximalwert des Datenarrays ja nicht wirklich der maximalste Wert sein. Beim Rechteck hätte ich ja außerdem mehrere Werte die den Maximalwert ausmachen. Also geht es so nun doch nicht.

DAS hab ich dir schon im LabVIEW-Forum gesagt...


--------------------
künstliche Intelligenz ist besser als natürliche Dummheit!
rotabench:rotierende Prüfstände nach dem Baukasten-Prinzip
Go to the top of the page
 
+Quote Post
Gunni1979
post 02. Mar 2007, 11:29
Post #11


Member
**

Group: Members
Posts: 68
Joined: 14.02.2007
From: Erfurt
Member No.: 19
LV Version: 8.00 / 8.2
Zertifizierung: keine
LV User seit: 2006



Moin.

ich mache es wie immer viel zu kompliziert. Die Dämpfung [dB] erhalte ich mit 20*log(U1/U2). Für die Effektivwerte einer Sinusspannung ist die Frequenz sogar unerheblich. U=Up / wurzel(2) Für die Dämpfung mittels der Effektivwerte brauche ich keine Phasenverschiebung und auch keine Zeit der Maximas.

Die Phasenverschiebung wird zwar trotzdem verlangt aber ist für diese Berechnung erstmal nicht von Belang. Was viel schlimmer ist, ist das es sich um Sinus- oder Rechteckspannung handelt mit Offestanteil. Wie ich bemerkt habe scheinen die VIs zur Messung von Signalparametern keinen Unterschied bei der Schwingungsart zu machen. Am Offset stören sie sich eigentlich auch nicht.

Ich habe verschieden Formeln für die Effektivwertberechnung bei Rechteck gefunden. Logisch war die eine wo Up(Maximalausschlag) gleich dem Effektivwert ist. Die Mischspannung errechnet sich mit Wurzel(zumQuadrat(U1)+zumQuadrat(U2)). U1 sei der Wechselspannungsanteil und U2 der Gleichspannungsanteil(Offset). Da kann mir doch keiner sagen das hier die Amplitude vom Rechteck den Effektivwert ausmacht.

Das mal außer Augen gelassen, such ich zudem ein VI das mir den Offsetanteil ausgibt, falls es das überhaupt gibt.

Gunni

This post has been edited by Gunni1979: 02. Mar 2007, 11:30
Go to the top of the page
 
+Quote Post
Gunni1979
post 05. Mar 2007, 22:29
Post #12


Member
**

Group: Members
Posts: 68
Joined: 14.02.2007
From: Erfurt
Member No.: 19
LV Version: 8.00 / 8.2
Zertifizierung: keine
LV User seit: 2006



Hi.

Wem auch immer es noch interessieren könnte, ich fand etwas. Es heißt "Mittelwert und RMS" Es liefert den Gleichstromwert, sowie den Effektivwert einer Spannung. Das beste ist das dies der Effektivwert der Mischspannung ist und somit erübrigt sich mein Suchen nach dem Gleichspannungsanteil. rolleyes.gif

Gunni
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 



Lo-Fi Version Time is now: 19.03.2024 - 12:07