LabVIEWForum.de - Fehler bei Einzelmessung

LabVIEWForum.de

Normale Version: Fehler bei Einzelmessung
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Hallo Raiden,

Zitat:Nach was soll ich im Manual nachschauen, bzgl dem Parameter und Formatproblem:
-also das ich bis zu 15 Stellen nach dem Komma die Stromdaten geschrieben werden.
-das ich den Mittelewert auch von einer Messung nehmen darf, oder eventuelle Abhilfe
- Das Speichern der Werte erfolgt in LabVIEW, also musst du diesen Fehler auch dort beheben. Wie genau, habe ich schon gesagt: besseren Formatstring!
- Das Einstellen der Geräteparameter erzeugt den Fehler -222: Hier musst du im Geräte-Handbuch nachschauen, welche Parameter erlaubt sind und diese dann entsprechend verwenden…
(Wie schon einmal vermutet: wahrscheinlich mag dein Gerät keine Mittelwertbildung von nur einem Messwert. Genaueres in deinem Manual…)

Zitat:Was ich damit meine: Ich mess einmal, der Graph soll anschließend den Wert aufnehmen U1-I2, zweite Messung U2-I2, usw. und diese nacheinander in den Graphen plotten.
Wovon erzeugst du da deine Points mit den Bundle-Funktionen?
- Wenn du einen XY-Plot haben willst, solltest du auch X- und Y-Werte zusammen "bundeln"!
- Wenn die Messwerte innerhalb der Schleife angezeigt werden sollen, dann solltest du den Graph auch innerhalb der Schleife platzieren! (THINK DATAFLOW!)
- Wenn du innerhalb einer Schleife Daten für die nächste Iteration bereitstellen willst, solltest du eine Schieberegister verwenden… (LabVIEW-Grundlagen)
[attachment=58723]

so hab ich mein Plotting gelöst.

[attachment=58724][attachment=58725]

das sind meine Errors.
Ich vermute, dass ich nur 2 zu 1024 readings speichern kann (Quick Start Guide K2000 1-4 : Storing reading (2 to 1024)
Was den Fehler -222 angeht:
Du solltest schon präzisieren, dass dies kein Labview-Fehler ist, sondern ein Gerätefehler des Keithley 2000 DMMs ist und dementsprechend in dessen Anzeige auftaucht.
Fehler -222 bedeutet 'Parameter data out of range' (siehe Handbuch B-2, Tabelle B1).
Die Ursache dafür ist auch klar: Du verwendest das VI "Data Read Multiple" aus der Keithley vilib. Multiple, da klingelt doch schon der Alarmwecker...
Ein Blick in dieses VI bestätigt den Verdacht. Dieses VI verwendet den Befehlsstring ":TRAC:POINTS %d;:SAMP:COUN %d;"
Und der Befehl :TRACe:POINts hat nunmal den erlaubten Parameterbereich 2 bis 1024 (Handbuch 5-63) - also ist da nix mit einer 1 zu machen.
vielen Dank THL! Aber das habe ich schon rausgefunden, siehe oben!

Wie würdest du vorgehen? Multiple rausschmeißen (Single einfügen) oder einfach den String ändern?

btw. ich nutzte Multiple um an einem anderen Zeitpunkt die Sweep-Funktion hinzuzufügen.
(31.01.2018 16:29 )Raiden90 schrieb: [ -> ]Wie würdest du vorgehen? Multiple rausschmeißen (Single einfügen) oder einfach den String ändern?

btw. ich nutzte Multiple um an einem anderen Zeitpunkt die Sweep-Funktion hinzuzufügen.
Am einfachsten wäre es wohl mit einer Fallunterscheidung: Wenn nur ein Messwert benötigt wird, dann halt stattdessen "Data Read Single.vi" aufrufen.
einwandfrei danke dir.
Ich habe es jetzt als simple Einzelmessung geschrieben. Die Sweep Konfiguration: schreib ich später dazu. Die dann als Fall auswählbar ist. (Danke für den Vorschlag)

ist der Sweep zwischen zwei seperaten Geräten (SMU und DMM) möglich? Wie konfiguriere ich das zwischen den beiden, also nach welchem Schema könnte ich mich halten bzw. nachgreifen um anfangen zu können?

Eine andere Frage wäre wie könnte ich die Schrittweite des eingespeisten Stroms manuell setzen um nicht immer wieder den neuen eingespeisten Strom einzuschreiben. z.B. das ich mit dem Auswahlpfeil des Enums schon meine speziellen Schritte habe oder gibt es noch andere Möglichkeiten?


Anniemacht_2
Hallo Raiden,

Zitat:ist der Sweep zwischen zwei seperaten Geräten (SMU und DMM) möglich?
Wie soll das aussehen? Wie willst du "zwischen 2 Geräten" sweepen?

Zitat:wie könnte ich die Schrittweite des eingespeisten Stroms manuell setzen um nicht immer wieder den neuen eingespeisten Strom einzuschreiben. z.B. das ich mit dem Auswahlpfeil des Enums schon meine speziellen Schritte habe
Willst du den Wert "manuell" setzen - oder doch eher programmatisch?
Wenn du in Abhängigkeit von einer Bedingung irgendwelche Entscheidungen treffen willst, solltest du Case-Strukturen nutzen…
Zitat:Wie soll das aussehen? Wie willst du "zwischen 2 Geräten" sweepen?

Im einfachsten Fall wäre es ausreichend in LabView das 6430 ‚vorzubereiten‘ (Strom als Quellfunktion,
Ausgang aktivieren &c.) und jeweils nach Ausgabe eines Strompegels eine Messung mit dem Modell 2000
vorzunehmen.
Also das reicht mir für die Sweep funktion.


Ich werde eine Case zwischen singel und sweep konfigurieren.

Thanks for helping!

Btw.: Was ist der String code für 15 gültige Stellen nach dem Komma?

Grüße
Hallo Raiden,

Zitat:jeweils nach Ausgabe eines Strompegels eine Messung mit dem Modell 2000 vorzunehmen.
Im einfachsten Fall also zwei Funktionen, die dank DATAFLOW (per Errorwire) nacheinander abgearbeitet werden?
Oder doch eine Statemachine, in der zwei States nacheinander aufgerufen werden?

Zitat:Was ist der String code für 15 gültige Stellen nach dem Komma?
Schau doch einfach in die LabVIEW-Hilfe!
Formation hab ich die ganze Zeit im Query.vi versucht zu ändern, daweil war es das spreadsheet.vi Duden

Ich werde mich in naher Zukunft für eine state machine bemühen

Anniemacht_2 danke euch!
Seiten: 1 2
Referenz-URLs