Signalmanipulation - Druckversion +- LabVIEWForum.de (https://www.labviewforum.de) +-- Forum: LabVIEW (/Forum-LabVIEW) +--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein) +---- Forum: Signaldarstellung (/Forum-Signaldarstellung) +---- Thema: Signalmanipulation (/Thread-Signalmanipulation) |
Signalmanipulation - hannsen - 19.02.2013 00:39 Hallo, ich habe im Zuge einer Studienarbeit einen Beschleunigungsaufnehmer zu untersuchen. Signaleingang und -darstellung sind auch nicht das Problem, jedoch bekomme ich die Messwerte in Bits statt m/s^2 ausgegeben. Zur Umrechnung habe ich auch die Formel Output=Slope×Bits+Offset zur Hand, wobei die Daten dreier Kanäle in einem Datenstrom verlaufen und andere Konstanten als Slope und Offset haben Kanal 1: Slope= 0,0520247 Offset= -103,399 Kanal 2: Slope= 0,0502905 Offset= -101,788 Kanal 3: Slope= 0,0510763 Offset= -98,3215 Mit den Bits als Messergebnis würde ich gerne eine Manipulation durchführen bevor das Messsignal in den wavechart geht und angezeigt wird. Ich habe schon versucht die Datenverbindung zu trennen, per Formel zu manipulieren und danach wieder zusammen zu fassen, hat aber leider nicht geklappt. Mein Anliegen wäre also zu erfahren, wie ich das in einer Datenverbindung verlaufende Messsignal in ihre drei einzelnen Signale aufsplitten kann, im Folgenden jeden Kanal einzeln per Formel manipulieren kann und abschließend mir alle drei Signalverläufe in einem Diagramm angezeigt werden. Ich wäre euch für schnelle Hilfe wahnsinnig dankbar und wahrscheinlich ist es auch nicht schwierig, aber meine LabVIEW Kenntnisse reichen noch nicht aus... Im Anhang ist vereinfacht das VI Danke schon mal im voraus! MfG hannsen RE: Signalmanipulation - swatski - 19.02.2013 08:29 Hi hannsen, bisher sieht es so aus als ob du noch nicht so viel an dem Beispiel aus probiert hast. Die Daten kommen in Form eines Arrays und mit "Index Array" kannst du auf jede Zeile oder auch Spalte zugreifen und sie "manipulieren". Gruß, swatski RE: Signalmanipulation - alieninvader - 19.02.2013 09:22 Moin moin, wenn du die Daten als Array bekommst, kannst du auch einfach ein Array addieren oder damit multiplizieren. Ich habe dir mal ein kleines Beispiel angehängt, was ich meine. Leider kann ich dein Vi nicht öffnen (hab hier nur LV 7.1). Gruß Stefan RE: Signalmanipulation - hannsen - 19.02.2013 10:24 Hallo, danke erstmal für das schnell Feedback. Ich habe eben beide Varianten ausprobiert. Es klappt auch mit dem manipulieren, jedoch leider nur indem ich den gesamten Datenfluss also alle drei eingehenden Signale zusammen manipulieren kann. Ich habe mit einer Sonde geguckt und ich müsste drei Zeilen reinbekommen... schätze ich. Ich denke es klappt noch nicht mit der Entzweigung der Daten in ihre drei Kanäle. Habt ihr da noch einen Ratschlag wie ich da vorgehen muss?! Grüße RE: Signalmanipulation - GerdW - 19.02.2013 10:32 Hallo Hannsen, bisher verrechnest du deine "3 Signale" mit jeweils einer skalaren Größe für Offset/Slope. Dir ist schon bekannt, dass du Arrays aber auch mit Arrays verrechnen kannst? Wenn du also für Slope und Offset jeweils ein Array anschließt, kannst du jedem Signal seinen eigenen Wert zuordnen... RE: Signalmanipulation - Lucki - 19.02.2013 11:02 Ich würde es so machen: [attachment=43629] wobei hier mit jeder Spalte die gleiche Operation ausgeführt wird. Wenn es anders herum sein soll, müßten die 2D-Arrays vor und nach dem Passieren der Schleife noch transponiert werden. RE: Signalmanipulation - hannsen - 19.02.2013 12:59 Hallo, ich habe jetzt die Verechnung von den Arrays hinbekommen und siehe der Graph funktioniert wie ne eins! Besten Dank! Gibt mir LabVIEW auch die Möglichkeit eine Art Schieberegister in einen Graphen einzubauen, über welches ich mir den aktuellen Wert der x- und y-Achse anzeigen lassen kann, um zum Beispiel zu erfahren, welche Beschleunigung zum Zeitpunkt x vorliegt? Grüße RE: Signalmanipulation - GerdW - 19.02.2013 15:35 Hallo Hannsen, sowas nennt sich bei einem Graphen "Cursor"... |