LabVIEWForum.de
Drehgeber Datenerfassung DAQmx.9.8 Nachlaufmessgerät - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Datenerfassung (DAQ) (/Forum-Datenerfassung-DAQ)
+---- Thema: Drehgeber Datenerfassung DAQmx.9.8 Nachlaufmessgerät (/Thread-Drehgeber-Datenerfassung-DAQmx-9-8-Nachlaufmessgeraet)

Seiten: 1 2 3


RE: Drehgeber Datenerfassung DAQmx.9.8 Nachlaufmessgerät - GerdW - 24.07.2014 07:02

Hallo Amadeus,

Zitat:Damit ich an die Zeit komme, lese ich derzeit alle Samples in eine Excel-Datei, welche ich immer überschreibe, wenn ich die Messung neu ausführe. Diese Verknüpfe ich mit einem anderen Excel-File, in welcher ich nur die Anzahl der Samples/Samplerate stehen habe. Und diesen Wert importiere ich wieder in Labview.
In deinem VI sieht man nur, wie du eine Datei erzeugst, die regelmäßig wieder gelöscht/überschrieben wird…
Wie hat man sich diese "Verknüpfung mit einem anderen File" vorzustellen?
Wie importierst du diesen anderen Wert wieder nach LabVIEW?

Zitat:Meine Frage: geht das irgendwie einfacher, dass ich in Labview schon an die Anzahl meiner Samples komme?
Ja, das geht ganz sicher einfacher!
Wenn man einen Umweg über zwei verschiedene Dateien und externe Software nehmen muss, ist irgendetwas nicht zu Ende gedacht worden…


RE: Drehgeber Datenerfassung DAQmx.9.8 Nachlaufmessgerät - amadeus - 24.07.2014 07:43

Ich schreibe alle meine Samples in ein Excel-File. Indem ich mein Measurement-File solange Flushe, bis die Schleife abgebrochen wird, schreibe ich aber erst in das Excel-File, wenn die Schleife abgebrochen wird.

Danach erstellt sich eben dieses Excel-File automatisch mit 3 Spalten.
Spalte A: Periodendauer zu jedem Sample
Spalte B: Counter zu jedem Sample
Spalte C: Samplerate


Dann habe ich ein weiteres Excel-FIle in dem ich einfach eine Formel:
(Anzahl Spalte A)/(Wert in Spalte C) was der Anzahl der Samples/Samplerate entspricht. Und das wiederum entspricht genau meiner Messzeit!

Wie ich diesen Wert jetzt wieder in Labview einlese ist mir noch nicht ganz klar, da sich das Excel-FIle mit dem einen Wert für die messzeit erst aktualisiert, wenn ich es öffne.

Aber ich habe schon ein BSP gesehen, mit dem man einen Wert aus einem Excel-FIle öffnen kann. das hätte ich jetzt versucht.

Aber wenn es möglich ist, dass ich direkt in Labview eruieren kann, wieviele Werte/Samples ich in mein Measurement-File schreibe, dann könnte ich mir den Umweg ersparen. NUr weiß ich nicht wie!


RE: Drehgeber Datenerfassung DAQmx.9.8 Nachlaufmessgerät - GerdW - 24.07.2014 07:51

Hallo Amadeus,

Zitat:einfach eine Formel: (Anzahl Spalte A)/(Wert in Spalte C) was der Anzahl der Samples/Samplerate entspricht.
Diese enfache Formel sollte man auch mit LabVIEW-Bordmittel hinbekommen…

Zitat:Aber wenn es möglich ist, dass ich direkt in Labview eruieren kann, wieviele Werte/Samples ich in mein Measurement-File schreibe, dann könnte ich mir den Umweg ersparen. NUr weiß ich nicht wie!
Du weißt nicht, wieviele Werte du in eine Datei schreibst?
- Es gibt Funktionen wie ArraySize…
- Bei DAQmxRead gibt man üblicherweise vor, wieviele Samples man einlesen will - und eben diese Anzahl bekommt man dann (meist) auch!


RE: Drehgeber Datenerfassung DAQmx.9.8 Nachlaufmessgerät - amadeus - 24.07.2014 07:57

Die Anzahl meiner Samples hängt davon ab, wie lange meine Anlage benötigt bis sie steht, und wie schnell sie fährt, da ich davon abhängig mehr/weniger Samples einlese.
Ich habs jetzt so probiert, dass ich die Arrays immer Anhänge und dann wie du gesagt hast mit size-Array genau das bekomme, was ich will. Eigentlich sehr naheliegend!
Danke dir.

kannst du mir auch noch sagen, warum ich eine Fehlermeldung bekomme, wenn ich bei der Periodendauermessung auf Sample-Clock stellen will?


RE: Drehgeber Datenerfassung DAQmx.9.8 Nachlaufmessgerät - amadeus - 14.08.2014 08:33

Nachdem das Forum jetzt eine Zeit lang down war, bin ich natürlich auch schon weiter gekommen.
Habe jetzt meinen Versuchsaufbau und mein Programm getestet. Leider funktioniert es nur teilweise.
Bei gewissen Geschwindigkeitsverläufen (~1m/s und ca 1 sekunde bis stillstand) bekomme ich richtige Werte für die Zeit und den Weg bis zum Stillstand.,
Fahre ich aber mit langsameren Geschwindigkeiten, funktioniert die Messung nicht mehr. Damit ich wieder richtige Werte bekomme muss ich die Sample-Rate verringern.

Kann mir jemand erklären warum das so ist? Wenn ich langsamere Signale am EIngang bekomme, und diese mit der gleichen Sample-Rate abtaste, dann bekomme ich doch lediglich öfter den selben Wert ?

Liegt mein Fehler daran, dass ich unterschiedliche Timing Einstellungen für Counter der Flanken und Messen der Periodendauer habe, und meine Abbruchbedingung auf die Periodendauer festgelegt ist?

also meinen Counterstand zu langsam auslese?

Wie weiter oben schon gesagt kann ich nicht die gleichen Timing-Einstellungen für die Periodendauermessung und die Flankenzählmessung verwenden, warum weiß ich leider nicht.

habe im Anhang mein VI angehängt. Es geht um das Case MESSUNG.

Wäre super wenn sich das einer durchschauen könnte und mir tipps geben könnte, was ich anders machen muss!

freundliche Grüße!


RE: Drehgeber Datenerfassung DAQmx.9.8 Nachlaufmessgerät - amadeus - 19.08.2014 09:13

Falls noch jemand meinen Beitrag liest Smile hier die Neueste Version.

Habe die Event-Struktur etwas umgebaut, da ich gehört habe, dass man in der Event-Struktur nicht soviel Programmieren sollte. Das neue Konstrukt habe ich nach dem Beispiel VI
state machines fundamental.vi programmiert. Außerdem habe ich den Timeout auf -1 gesetzt.

Die Probleme sind jedoch immer noch die gleichen.

1) Die Werte stimmen bei einer eingestellen Samplerate von 10 KHz nur, wenn ich Anfangsgeschwindigkeiten von 1m/s fahre. Fahre ich schneller stimmt nur noch der gefahrene Weg, die Zeit Messzeit bleibt jedoch gleich, wobei dies natürlich nicht sein kann, weil ich die gleiche Distanz fahre. Stelle ich eine Anfangsgeschwindigkeit von <1m/s ein und sample weiter mit 10 kHz stimmt dann sowohl der gefahrene Weg als auch die gemessene zeit nicht mehr.

2) Nachdem die Periodendauer >0,1 ist sollte die Messung stoppen und 0V am Analogausgang AO1 ausgegeben werden. Diese 0V erhalte ich aber erst, wenn ich das Messseil meines Drehgebers noch einmal kurz *anzupfe*

vielleicht macht sich nochmal jemand die Mühe und schaut sich mein Programm nochmal durch. Ich weiß nicht mehr, was ich noch ändern kann, damit die Messung funktioniert.

Wäre wirklich sehr dankbar für eure Hilfe.


RE: Drehgeber Datenerfassung DAQmx.9.8 Nachlaufmessgerät - amadeus - 20.08.2014 12:32

Ich führe also meinen Monolog fort.

Ich bin mir ziemlich sicher, dass der Fehler im unterschiedlichen Timing liegt (Counter flanken:sample clock, Counter periodendauer: implicit)
Leider gibt mir Labview aber nicht die Möglichkeit es anders zu machen.

hat jemand eine Idee wie ich die Abtastung dieser beiden Eingänge synchronisieren kann? Also die Periodendauer und die Flankenzählung mit der gleichen Abtastrate einstellen kann?


freundliche Grüße


RE: Drehgeber Datenerfassung DAQmx.9.8 Nachlaufmessgerät - amadeus - 21.08.2014 13:46

Habe jetzt wie eigentlich schon vor langem von cb vorgeschlagen nur einen Task zum Flankenzählen verwendet und diesem die Information für Weg und Geschwindigkeit entnommen.

Damit habe ich das Problem mit der Synchronisation der beiden Tasks nicht mehr.

Nun geht es nur noch darum, dass ich meine benötigte Genauigkeit erreiche und die Kennlinie auch bei langsamen Geschwindigkeiten schön ist.

vielen Dank für eure Hilfe.