LabVIEWForum.de
Mehrere physikalische Kanäle erfassen - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Datenerfassung (DAQ) (/Forum-Datenerfassung-DAQ)
+---- Thema: Mehrere physikalische Kanäle erfassen (/Thread-Mehrere-physikalische-Kanaele-erfassen)



Mehrere physikalische Kanäle erfassen - dejay - 28.08.2011 16:47

Hallo zusammen,

Folgendes Problem:
ich habe anhand des Beispiels von Labview ein Programm erstellt, mit welchem ich ein "physical channel" auswählen kann, der dann in einem Signalverlaufsdiagramm angezeigt wird.
jetzt möchte ich aber mehrere Kanäle darstellen. über den jeweiligen diagrammen möchte ich den dazugehörigen "physical channel" auswählen können. Wie mache ich sowas?
Dazu kommt noch, dass die Werte in einer Datei gespeichert werden sollen.

Bis jetzt sieht das Programm wie folgt aus:
(siehe Bild)


PS:

ein weiteres Problem ist, dass ich die Daten so wie es jetzt ist, nicht speicher kann. es kommt immer
"Fehler -200279 - Es wurde versucht Abtastwerte zu lesen, die nicht mehr zur Verfügung stehen. Der angeforderte Abtastwert war zuvor verfügbar, wurde jedoch überschrieben."

Woran liegt das?

Vielen Dank schon mal!!
viele Grüße
David


RE: Mehrere physikalische Kanäle erfassen - johannes_r - 28.08.2011 18:11

Die Syntax zur Angabe eines Bereichs von zu erfassenden Kanälen kann man bei NI nachlesen (siehe Link).

http://digital.ni.com/public.nsf/allkb/9A2AF5E10E0C893386256FE8006807DF

Gruß


RE: Mehrere physikalische Kanäle erfassen - dejay - 28.08.2011 19:58

hallo.

danke für den Tip, aber kann ich so nicht einen Bereich angeben, der ausgelsen wird?
ich möchte aber für jedes Diagramm einzelt angeben, welchen channel es darstellen soll (physical channel Auswahl über jedem Diagramm!)


RE: Mehrere physikalische Kanäle erfassen - GerdW - 28.08.2011 20:51

Hallo Dejay,

Zitat:ich möchte aber für jedes Diagramm einzelt angeben, welchen channel es darstellen soll (physical channel Auswahl über jedem Diagramm!)
Schön, das du das willst! Dann programmier es doch auch...

Übrigens:
Eine einfache Offset/Gain-Korrektur lässt sich direkt im DAQmx-Treiber per "Skalierung" erledigen. Sowas kann dann für sehr übersichtliche Programme sorgen!


RE: Mehrere physikalische Kanäle erfassen - dejay - 29.08.2011 16:02

(28.08.2011 20:51 )GerdW schrieb:  Schön, das du das willst! Dann programmier es doch auch...

Wenn ich das gekönnte, würde ich nicht fragen, wie es geht!

Danke für den Tipp mit der skalierung! habe es so gelöst, damit ich die Werte auf der oberfläche ändern kann!


RE: Mehrere physikalische Kanäle erfassen - GerdW - 29.08.2011 16:19

Hallo dj,

Zitat:Wenn ich das gekönnte, würde ich nicht fragen, wie es geht!
Du hast bisher eine feste Zuordnung deiner Waveforms zu den Graphen. Wenn du das variabel haben willst, musst du auf "Signal aufsplitten" verzichten und stattdessen vor jedem Graph mit IndexArray die gewünschte Waveform aus den Array indizieren. Sollte nicht allzu schwierig sein...


RE: Mehrere physikalische Kanäle erfassen - dejay - 29.08.2011 17:05

mh, ok! Bin totaler LV neuling und versteh noch nicht so viel!

hab das mit den einzelnen physical channels aufgegeben! Würde das jetzt gerne so lassen, wie is ist (siehe Bild oben)!
Das Prblem ist aber leider immer noch der Fehler

"Fehler -200279

Mögliche Ursachen:

Es wurde versucht Abtastwerte zu lesen, die nicht mehr zur Verfügung stehen. Der angeforderte Abtastwert war zuvor verfügbar, wurde jedoch überschrieben.

Vergrößern des Puffers, häufigeres Lesen der Daten oder Angabe einer festen Anzahl zu lesender Abtastwerte anstatt alle verfügbaren Abtastwerte zu lesen, könnte das Problem eventuell beheben.

Eigenschaft: RelativZu
Zugehöriger Wert: Aktuelle Leseposition
Eigenschaft: Offset
Zugehöriger Wert: 0

Task-Name: _unnamedTask<12>"

Was mache ich falsch? Wie kann ich den Fehler beheben?

Vielen Dank für die Hilfe im Voraus!!
PS:

der Fehler tritt auf, wenn ich die Signale in eine Datei schreiben!


RE: Mehrere physikalische Kanäle erfassen - dimitri84 - 29.08.2011 17:17

Du liest deine Daten zu langsam. Normalerweise ist eine Schleifenzeit von 100 ms kein Problem - du hast sogar (wissentlich oder nicht) die von NI empfohlene 10 zu 1 Regel befolgt: bei 10k Samplingrate liest du 1k Daten pro Lesevorgang. Anscheinend dauert aber der Code in der Schleife länger als 100 ms, deswegen sammeln sich Daten in dem Eingangspuffer.

Einfache Lösung: Du kannst mehr Samples auf einmal lesen. Somit hat dein Code mehr Zeit.
Bessere Lösung: Du musst deinen Code optimieren, also z.B. auf alle Express VIs verzichten. Alles was du dort machst lässt sich wunderbar selbst programmieren und nebenbei lernst du sogar noch was. Und überlege dir, ob es wirklich sein muss, dass du erst mit 10 kHz abtastest nur um anschließend wieder 'ne Mittelwertbildung zu machen ...


Gruß dimitri


RE: Mehrere physikalische Kanäle erfassen - dejay - 30.08.2011 20:55

Vielen vielen Dank dimitri84 für die ausführliche, anfängertaugliche und hilfreiche Antwort! Ich werde deine Tips mal testen!!

ich musste deine Tipps direkte mal testen.
Resultat:
- da ich keine so hohe Abtastrate brauche, habe ich dieser erst mal runter gesetzt. und mit Befolgen der 10:1 Regel (die mir natürlich nicht bekannt war :-)) klappts so schon super! Ich werde jetzt noch die ExpressVIs ersetzten. ist echt ne gute Übung. War mir auch nicht ganz klar, dass die ExpressVIs nicht so optimal sind!

Also Danke nochmal! Sehr hilf- und lehrreich deine Antwort! So wünsche ich mir das von so einem Forum!