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!
28.08.2011, 16:47 (Dieser Beitrag wurde zuletzt bearbeitet: 28.08.2011 16:52 von dejay.)
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."
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!)
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!
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...
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.
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
„Sag nicht alles, was du weißt, aber wisse immer, was du sagst.“ (Matthias Claudius)
30.08.2011, 20:55 (Dieser Beitrag wurde zuletzt bearbeitet: 30.08.2011 21:14 von dejay.)
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!