LabVIEWForum.de - Problem mit kontinuierlicher Datenerfassung

LabVIEWForum.de

Normale Version: Problem mit kontinuierlicher Datenerfassung
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Zitat:Was der Melder macht weiss ich auch nicht so genau. wenn der aber alle Daten Kopiert dann wirds wirklich kritisch.

Der melder ist wohl eine recht effektive methode um daten auszutauschen. Ich bin recht sicher das da nichts kopiert wird sondern eher mit zeigern intern gearbeitet wird.

mfg
' schrieb:Der melder ist wohl eine recht effektive methode um daten auszutauschen.
Sehr, sehr effektiv.

Zitat:Ich bin recht sicher das da nichts kopiert wird sondern eher mit zeigern intern gearbeitet wird.
Beim Beschreiben des Melders wird garantiert eine Kopie gemacht. Das resultiert schon aus der Tatsache, dass in das "Melder-Schreiben-VI" ein Datenwire reingeht. Intern dann mag mit Pointern gearbeitet werden. Kopiert wird auch dann wieder, wenn der Melder gelesen wird: Wire geht aus Melder heraus.
Wollte nur sagen, dass ich gerade ein sehr ähnliches Projekt mache. Und bei mir sieht es fast genau so aus. Ich habe auch 3-4 Schleifen. Ich hänge auch die Waveforms aneinander. Ich zeige alle Daten an. Ich habe keine Wartezeiten in keiner der Schleife.

Nur meine Messung dauert ca. 10 Minuten mit ca. 100 Hz. Ich habe keine Probleme mit CPU und Speicher, weil die Datenmenge noch nicht zu gross ist.

Bei dir würde ich anders vorgehen, da du wirklich viel mehr Daten hast. Nimm statt des Waveform-Graphen den Waveform-Chart. Da kannst du die maximale Puffergrösse einstellen. Zwar wirst du nicht alle Daten sehen, dafür wirst du aber keine Probleme mit CPU haben.
Oder andere Möglichkeit wäre die Länge des grossen Waveforms auszuwerten. Sobald die Länge einen bestimmten Wert überschreitet, kannst du alte Daten aus diesem Waveform abschneiden.
' schrieb:Sehr, sehr effektiv.

Beim Beschreiben des Melders wird garantiert eine Kopie gemacht. Das resultiert schon aus der Tatsache, dass in das "Melder-Schreiben-VI" ein Datenwire reingeht. Intern dann mag mit Pointern gearbeitet werden. Kopiert wird auch dann wieder, wenn der Melder gelesen wird: Wire geht aus Melder heraus.
Da hab ich doch mal kürzlich was bei lavag gelesen:

http://forums.lavag.org/index.php?s=&s...ost&p=41195

MfG, Jens
Also, wenn ich dem Feature "Pufferbelegung anzeigen" glauben darf, optimiert LV 85 das Kopieren von Daten (wie ich es ja eigentlich auch erwarte). Unter Kopieren verstehe ich jetzt nicht das Weitergeben der Daten vom Sende-Melder zum Empfangs-Melder, das mag mit Pointer gehen. Kopieren gilt auch für Daten in den Sende-Melder hinein und aus dem Empfangs-Melder heraus. Wird das eine mit dem Pointer nicht gemacht, könnte bis zu dreimal kopiert werden.

Je nach "Programm-Verdrahtung" werden die Daten entweder in einen eigens für den Sende-Melder generierten Puffer geschrieben oder es wird vom Sende-Melder ein Puffer verwendet, den jemand anders bereits für sich generiert hat, nachfolgend aber nicht mehr braucht.

Nur das Nicht-Kopieren innerhalb der Melderstruktur zu betrachten, ist eine Milchmädchenrechnung: Überprüft werden muss auch aus direkte Umfeld der Melderstruktur.

Wo im Bild ein kleines schwarzes Viereck ist, wird Puffer reserviert.
Seiten: 1 2
Referenz-URLs