INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Messwerte als Tabelle und grafisch darstellen



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!

09.12.2020, 07:51 (Dieser Beitrag wurde zuletzt bearbeitet: 09.12.2020 07:54 von GerdW.)
Beitrag #11

GerdW Offline
______________
LVF-Team

Beiträge: 17.424
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Messwerte als Tabelle und grafisch darstellen
Hallo Manfred,

warum müssen alle Fenster so riesig sein?

Dein MainVI könnte auch so aussehen, wenn du etwas aufräumen würdest:
   
Warum hat die While-Loop so viele (ungenutzte) Output-Tunnel?

Zitat:Nur noch ein Problem: Ich nutze zur Übertragung der Messwerte eine globale Variable in einem Subvi. Jetzt muss ich aber das Subvi nach dem sweep gesondert starten, dann stoppen und dann wieder das Hauptvi starten, damit die Messwerte auf dem Hauptvi-Bedien-Panel erscheinen.
Wie kann ich die Messung ohne diese "Klimmzüge" direkt auf dem Hauptvi-BedienPanel darstellen?
Ganz einfach: dieses subVI in deinem MainVI einfügen. Das Array statt über eine globale Variable einfach durch einen Draht weiterleiten!

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
09.12.2020, 12:52
Beitrag #12

Manfred Offline
LVF-Grünschnabel
*


Beiträge: 42
Registriert seit: Nov 2020

2019 SP1
2019
DE_EN



RE: Messwerte als Tabelle und grafisch darstellen
Danke für die schnelle Anwort. Die ungenutzten Anschlüsse habe ich einfach vom Hersteller aus seiner Vorlage übernommen. Jetzt wieder eine dumme Frage: Wie kann ich ein Subvi einfügen?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
09.12.2020, 14:54
Beitrag #13

GerdW Offline
______________
LVF-Team

Beiträge: 17.424
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Messwerte als Tabelle und grafisch darstellen
Hallo Manfred,

Zitat:Jetzt wieder eine dumme Frage: Wie kann ich ein Subvi einfügen?
Einfach ins MainVI-Blockdiagramm hineinziehen…

Du hast schon die ganzen Links in meiner Signatur beachtet!?

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
09.12.2020, 17:17
Beitrag #14

Manfred Offline
LVF-Grünschnabel
*


Beiträge: 42
Registriert seit: Nov 2020

2019 SP1
2019
DE_EN



RE: Messwerte als Tabelle und grafisch darstellen
Die links sind sehr umfangreich, da hab ich noch viel vor....
Einfach hineinziehen, so einfach kann das sein. Vielen Dank für die Hilfe.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
08.01.2021, 19:23
Beitrag #15

Manfred Offline
LVF-Grünschnabel
*


Beiträge: 42
Registriert seit: Nov 2020

2019 SP1
2019
DE_EN



RE: Messwerte als Tabelle und grafisch darstellen
Nach einigen Versuchen und Einarbeitung funktioniert es jetzt. Ich habe aber den Ansatz verändert in Messen_Lesen_Einzelschritt. Damit kann ich Start-Stopp-Schrittweite frei wählen. Bei einem sweep ist man bei dem Gerät auf 300 Messpunkte beschränkt.
Elegant ist es nicht programmiert aber es funktioniert. Vielleicht gibt es hier noch Verbesserungsvorschläge.
Das vi Mess_Lesen_Einschritt.vi hänge ich an.

Vielen Dank für die Hilfe und die guten Tutorien.

/Messen_Lesen_Einzelschritt.vi

19.0 .vi  BK Precision 891_Messen_Lesen_Einzelschritt_v2.vi (Größe: 177,06 KB / Downloads: 160)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
08.01.2021, 23:43
Beitrag #16

Martin.Henz Offline
LVF-Team
LVF-Team

Beiträge: 417
Registriert seit: Jan 2005

2.5.1 bis 20
1992
kA

74363
Deutschland
RE: Messwerte als Tabelle und grafisch darstellen
Hallo Manfred,

ich lese das jetzt wie ein: "Oh, da gibt es diese globalen Variablen, welche jetzt alle meine Probleme lösen"
Nein, das tun sie nicht - ganz sicher nicht - niemals - ganz im Gegenteil Ahrg1

Dein "Read Sweep Data_fuer_exe.vi" kenne ich leider nicht. Auch kenne ich das Messinstrument nicht.
Ich nehme an, dass "Read Sweep Data_fuer_exe.vi" VI nicht viel anders ist, als das "Read Sweep Data.vi" aus dem Treiber. Dieses VI ("Read Sweep Data.vi" aus dem Treiber) liefert dir doch die Daten an seinen Ausgängen. Diese Daten bastelst du mittels eines Clusters zu einem X/Y Graph zusammen.

Wozu soll denn das Express VI "XY-Graph erstellen gut sein? X-Array (Frequenzen) und Y-Array in einen Cluster stopfen und dann ab zum Graph - mehr machen die ganzen Express VIs in deinem Fall nicht, außer dass sie viel Platz auf dem Blockdiagram verbrauchen und die Daten ein paar mal hin und her kopieren.

Martin Henz
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
09.01.2021, 12:17
Beitrag #17

Manfred Offline
LVF-Grünschnabel
*


Beiträge: 42
Registriert seit: Nov 2020

2019 SP1
2019
DE_EN



RE: Messwerte als Tabelle und grafisch darstellen
Hallo Heinz,
vielen Dank für die schnelle Antwort. Mein Anliegen waren keine globalen Variablen. In meinem Messen_Lesen_Einzelschritt verwende ich sie nicht.

Die kleinen Module des Herstellers liefern nur Anregungen zur Programmierung. Sie liefern nur Einzelmessungen oder einen unvollständigen sweep, begrenzt auf 300 Messpunkte, ohne Grafik. Mein kleines Prog. kann Einzelmessungen vornehmen in beliebigen Start/Stoppfrequenzen und bliebiger Schrittweite. Der Generator ist notwendig, da in den Modulen des Herstellers keine Möglichkeit besteht, die Frequenz auszulesen.

Als Anfänger in Labview war mein Anliegen, hier noch Anregungen zur Verbesserung des Programms zu finden und mich für die bisherige Hilfe zu bedanken.

VG, Manfred
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
10.01.2021, 17:51 (Dieser Beitrag wurde zuletzt bearbeitet: 10.01.2021 17:56 von GerdW.)
Beitrag #18

GerdW Offline
______________
LVF-Team

Beiträge: 17.424
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Messwerte als Tabelle und grafisch darstellen
Hallo Manfred,

Zitat:Als Anfänger in Labview war mein Anliegen, hier noch Anregungen zur Verbesserung des Programms zu finden und mich für die bisherige Hilfe zu bedanken.

Was soll diese FOR-Loop zum Erzeugen eines Frequenz-Arrays?
Schau mal hier:
   
Warum soll ein User die "Startfrequenz abzüglich Schrittweite" angeben? Das ist unüblich/unlogisch/verwirrend/fehlerträchtig…
Der Vergleich von Float-Werten ist (fast) IMMER gefährlich!
Warum verwendest du eine FOR-Loop, wenn du aufgrund der Vergleichsfunktion in der Loop mit einer While-Loop viel besser bedient wärst?
Wozu die Wartezeit in deiner FOR-Loop? Warum muss das Erzeugen eines Arrays künstlich verlangsamt werden???
Warum gab es da so viele ungenutzte Output-Tunnels in dieser Loop???

Und zu guter letzt:
Es gibt da eine fertige Funktion zum Erzeugen einer Rampe! Man benötigt überhaupt keine Loop!

Zum Rest dieses VIs:
Wozu verwendest du eine TimedLoop zur Messwerterfassung??? Die Zeit wird doch durch dein Messgerät und die Latenzen des Kommunikationsbusses vorgegeben! TimedLoops sind unter einem normalen Windows so gut wie immer Overkill… (Und das ganze nur, um diese TimedLoop per i==0 gleich wieder abzubrechen!?)
Warum räumst du nicht gleich noch auf? Nirgends gerade Drähte! Und das Blockdiagramm ist auch viel zu groß: mehrere FullHD-Bildschirme zu scrollen…
Warum muss man die Parameter-Arrays zum Schluss künstlich auf ein 2D-Array aufblasen, wenn sie als 1D-Array berechnet werden?

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
11.01.2021, 13:57
Beitrag #19

Manfred Offline
LVF-Grünschnabel
*


Beiträge: 42
Registriert seit: Nov 2020

2019 SP1
2019
DE_EN



RE: Messwerte als Tabelle und grafisch darstellen
Da sieht man, dass ich noch viel lernen kann.

Die Rampenfunktion kannte ich noch nicht. Das ist natürlich viel eleganter. Die Schrittweite muss bei mir abgezogen werden, weil sonst die 1. Messung am falschen Punkt liegt. Ich könnte auch den Startpunkt richtig setzen aber dann wäre der letzte Punkt falsch.

Über den Vergleich von float habe ich noch garnicht nachgedacht. Aber klar, dass kann daneben gehen. Es war eher eine Unachtsamkeit, in C++ wäre mir das nicht passiert. Ich werde mir auch die while-loop genauer ansehen und dann ändern.
Die Wartezeit in der loop war noch aus der Testphase. Ich hatte anfangs Probleme, den Generator mit der Messung zu synchronisieren.
Kann jetzt weg.

Ich werde mal probieren, ob die timed-loop weg kann. Durch Probieren kam ich dahinter, dass man das Gerät nicht überladen darf. Es benötigt bei kleinen Kapazitäten 2 Sekunden für eine präzise Messung. Ich wollte verhindern, dass eine neue Messung angefordert wird bevor das alte Ergebnis da ist.

Mit den Arrays hatte ich meine Schwierigkeiten. Es werden ja 2 Parameter angefordert. Daher kam der Gedanke an 2d. Macht natürlich keinen Sinn, da die Parameter getrennt kommen.

Und aufräumen muss ich auch dringend! Es gibt also viel zu tun für mich.
Vielen Dank für die Verbesserungen. Ich bin natürlich immer noch Anfänger und kein professioneller Entwickler.

Grüße und Dank,
Manfred
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
11.01.2021, 14:15
Beitrag #20

GerdW Offline
______________
LVF-Team

Beiträge: 17.424
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: Messwerte als Tabelle und grafisch darstellen
Hallo Manfred,

Zitat:Die Schrittweite muss bei mir abgezogen werden, weil sonst die 1. Messung am falschen Punkt liegt. Ich könnte auch den Startpunkt richtig setzen aber dann wäre der letzte Punkt falsch.
Das ist aber eine Aufgabe, die dein VI erledigen sollte und nicht der User!
Letztendlich geht es hier um die Definition eines "sauberen" APIs zum Aufruf deiner Funktion - "sauber" im Sinne von "mögllichst fehlerfrei"…

Zitat:Ich werde mal probieren, ob die timed-loop weg kann. Durch Probieren kam ich dahinter, dass man das Gerät nicht überladen darf. Es benötigt bei kleinen Kapazitäten 2 Sekunden für eine präzise Messung. Ich wollte verhindern, dass eine neue Messung angefordert wird bevor das alte Ergebnis da ist.
Normalerweise startet man die nächste Messung doch nur, wenn die aktuelle abgearbeitet ist, oder?
Manche Geräte lassen auch eine Status-Abfrage zu, aus der hervorgeht, ob eine Messung beendet ist.
Auf alle Fälle bewirkt ein simples Wait(1000ms) das gleiche wie die jetzige TimedLoop, die jeweils nur ein einziges mal iteriert…

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  3D-Messwerte darstellen Luki97 6 3.648 09.08.2022 09:53
Letzter Beitrag: Luki97
  Messwerte flott in einen Graphen darstellen Hasenfuss 15 9.917 01.07.2015 16:41
Letzter Beitrag: Hasenfuss
  Messwerte mit Datum in XY Graph darstellen PeterF 5 5.527 28.04.2015 06:51
Letzter Beitrag: GerdW
  Messwerte in Tabelle darstellen Stefan2302 17 11.459 28.03.2015 12:05
Letzter Beitrag: GerdW
  Messwerte in Tabelle anzeigen und zusätzlich live in Graphen darstellen MoJoJo 6 8.247 08.07.2014 11:38
Letzter Beitrag: GerdW
  Messwerte in 2D-Array und Messungen in XY-Graph darstellen vescon 1 4.442 19.02.2014 20:43
Letzter Beitrag: GerdW

Gehe zu: