LabVIEWForum.de - HI-LOW-HI Datenerfassung über PCI-6014

LabVIEWForum.de

Normale Version: HI-LOW-HI Datenerfassung über PCI-6014
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Hallo,

ich komme ein einer Stelle einfach nicht weiter. Und zwar versuche ich im Rahmen meiner Diplomarbeit ein analoges Signal und gleichzeitig zwei digitale Eingänge zu erfassen. Danach soll das analoge Signal in zwei analoge Signale zerhackt werden. In Signal 1 wenn der erste dig. Eingang high ist und in Signal 2 wenn der zweite dig. Eingang auf high ist. Nun, das analoge Signal bekomme ich über die PCI-6014 eingelesen, das Problem ist, ich bekomme es nicht hin die digitalen Signale auszuwerten. Die dig. Signale sehen wie folgt aus: das dig. Sign.1 ist 1ms high und 4ms low, das dig. Sign.2 ebenfalls nur um halbe Periode (2,5ms) verschoben. Wie kann ich kontinuierlich sagen wir mal über 5 Sekunden die beiden dig. Eingänge auslesen?

[attachment=5203]

Leider bekomme ich bei meinen Versuche eine Fehlermeldung

Danke im Voraus
Hi Andreas,

kann leider dein Vi nicht anschauen, aber vielleicht helfen Dir ja die Überlegungen weiter:

A)
Kannst Du die digitalen Signale nicht auch auf analoge Eingänge legen und mit 10kHz(->delta_t=0.1ms) abtasten und dann in LabVIEW die Flanken auswerten und daraus die Verschiebung und High-/Low-Zeiten bestimmen.

B)
Die Digitalen Kanäle mit 10kHz sampeln, dann weiter wie bei A)

C)
Das Analogsginal vor der Karte schon mit zwei Analogschaltern (ICs wie CD4051/CD4053 oder ähnlich) zerlegen und jeweils getrennt auf einen Analogeingang legen.

Vielleicht hilft Dir das ja weiter.
Gruß,
Rob
Danke für den Vorschlag Rob, A) und B) hören sich gut an. Beim Vorschlag C) ist es so eine Sache, das erfasste Nutzsignal ist so gering gegenüber dem Rauschanteil, dass ich Angst habe die halbwegs stabile Schaltung zu erweitern in dem Fall mit einem Schalter und zwei Haltegliedern. Ich könnte das Signal natürlich verstärken, dann müsste ich aber Filter einbauen und das will ich momentan nicht machen. Ich will das Signal so gut wie möglich untersuchen und deswegen frühstens im Rechner per LabVIEW filtern weil ich da flexibler bin.

Ansich muss ich ja nur die zwei Digitalsignale als jeweilige Schaltsignale für die beiden Schalter einspeisen. Ich bekomme es nur nicht hin, dass die Signale kontinuierlich mit der gleichen Abtastrate wie auch bei dem analogen Signal eingelesen werden.

Ich könnte es naturlich wie beim Vorschlag A) machen, analog einlesen und dann normalisieren auf high und low, was ich als nächstes auch machen werde.

Vielleicht kannst du mir ja sagen wie ich nach dem Vorschlag B) digitale Kanäle sample.

Übrigens, das VI oben ist nicht LV8 sondern LV7, bin gerade nicht an meinem Rechner.

Gruss
Andreas
Hi Andreas,

hab leider keine DAQ-HW hier im Einsatz, aber es würde mich wundern wenn man die Digital-IOs nicht auch zyklisch abtasten kann.Sad

Noch mal zu Vorschlag C)

Ich würde es ohne Haltegliedern nach den Schaltern machen, Du tastest doch schliesslich auf der Karte noch mal ab.

Da Du schreibst das Dein Eingangs-Signal sowieso schon sehr klein ist, würd ich die Signalkonditionierung[1] extern machen, anschliessend das Signal per Schalte auf zwei Wege auftrennen und beide Wege an die Analog-Eingänge der Karte führen.


[1].. Um was für ein Signal handelt es sich denn, kommt das Rauschen vom Sensor oder von der Übertragungsstrecke?
Wieviel ENOB(Effectiv Number of bits) erreichst Du momentan, wieviel sollst Du erreichen (falls spezifiziert)?

Gruß, Rob
Hi,

du könntest die Digitalsignale ebenfalls auf analoge Eingänge legen und diese genauso wie die restlichen Signale abtasten. Dann durchsuchst du dein Array mit den "Digitalsignalen" nach den Flanken (Signal> xyz Volt) und merkst dir diese Indizes. Mit diesen Indizes teilst du dann die Arrays mit den analogen Signalen auf! Wenn deine digitalen Signale zu 100% synchron mit den analogen sein sollen, müsstest du eine Simultan-Abtastung durchführen, entweder mit speziellen Karten, oder durch eine normale AI-Karte mit vorgelagerter S&H-Stufe.

Gruss
Achim

EDIT: Ups...Rob hat ja fast das gleiche geschrieben...hm, wer lesen kann ist klar im Vorteil...
Hi,

zu Rob:

<blockquote>Ich baue einen Pulsoxymeter, viel mehr will ich diesen Effekt ausnutzen. Es handelt sich um einen Breitband Fotodetektor (Rot bis IR) welcher eine gepulste Rot/IR LED Abtastet. Gepulst weil die LED je nach Polung Rot oder IR ausstrahlt. Das heißt, je nach dem ob IR oder Rot abgetastet wird ist die Amplitude unterschiedlich. Letztendlich muss das Signal in zwei Signale aufgeteilt werden. Durch das permanente Abhaken des Signals muss ich es bis zur nächsten Änderung mit einem Halteglied halten. Das Signal ist wenige hundert Millivolt und die eigentliche Information ist die Änderung/Schwankung des Pegels. Diese Schwankung liegt im Bereich 1mV. Die Störsignale setzen sich zusammen aus 50Hz Brummen, der Dynamik der Messstelle und Sonstigem. Was ENOB angeht kann ich leider nichts sagen, mit LabVIEW bin ich ziemlich unerfahren. Kurz gesagt, ich wollte mir die ganzen elektrischen Stufen ersparen und es per Software machen wegen der Flexibilität.</blockquote>

zu Achim:

<blockquote>Ich werde es mal analog versuchen wobei ich auch der Meinung bin, dass man die digitale Leitung genauso wie die analoge abtasten kann nur bekomme ich das noch nicht ganz so hin. Synchronität sollte schon vorhanden sein, sagen wir mal Quasisynchron. Da ich mit der Signalfrequenz runter auf 200Hz gehen könnte, sollte die vorhandene Karte einen recht geringen Versatz zwischen Erkennung des High/Low Zustandes der dig. Leitungen und des Aufteilen des Analogsignals aufweisen. Oder liege ich da falsch? Wie auch immer, ich muss mit dieser PCI-Karte auskommen, eine andere steht mir nicht zur Verfügung</blockquote>


Nachtrag: Ich merke gerade, dass ich zwei Kanäle paralle gar nicht einlesen kann, zumindest mal mit AI WAVE VI nicht
Hi,

ich glaube, man kann "innerhalb" der Karte die digitalen Signale als Trigger auf andere Kanäle routen, dafür gibts VIs! Frag mal bei i2dx an, der kennt sich mit sowas meiner Erfahrung nach bestens aus! Da "gleichartige" Abtasten der analogen und digitalen Signale dagegen geht aber meines Wissens nicht...

Gruss
Achim
Ich hab mal kurz in das VI reingeschaut ... .oO(igitt, Express-VIs) ...

Das Problem dürfte sein, dass die Messkarte die DIO nicht kontinuierlich abtasten kann. Somit kann man keine synchronisierte Hardware-getimedte Erfassung mit AI/DI programmieren und bei den von dir beschriebenen Signalen fällt Software-Timing auf jeden Fall aus.

Man muss sich also selber was basteln und ich würde dafür 3 analoge Eingänge verwenden. Auf dem 1. Kanal das "Nutzsignal", auf dem 2. und 3. Kanal würde ich die DIs als analoges Signal messen und digital auswerten.

Ich hab leider im Moment wenig Zeit und kann dir kein Beispiel programmieren, aber das Beispiel hier geht schon in die richtige Richtung
Alles klar danke, ich werds ausprobieren.

Gruss Andreas
So wie es aussieht kann die Karte zwei analoge Signale parallel nicht verarbeiten.

Hab dann trotzdem mal versucht mit DIO zu triggern, na ja, ist halt zu langsam für 1 kHz.

Ich könnte höchstens über die Soundkarte über den Stereoinput reingehen, dann ist allerdings der Gleichspannungsanteil weg und die Amplitude ist auch, soviel ich weiß, auf 1 Volt beschränkt.

Gibts noch andere Möglichkeiten?

Gruss Andreas
Seiten: 1 2
Referenz-URLs