LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

mehrere analoge eingänge gleichzeitig erfassen

hallo,
ich möchte für meine Technikerarbeit, die Spannung von sechs Drucksensoren mit LabVIEW erfassen. Habe im Moment noch keine Ahnung wie ich richtig beginnen soll. Die Übungen (Erste Schritte mit LabVIEW) habe ich durchgemacht und dachte mir alles klar, aber jetzt wo es an meine eigene Sache geht stehe ich absolut im dunkeln.

So nun zu meinem Vorhaben:
Ich möchte eine Prüfeinrichtung für Druckübersetzer aufbauen. Dabei soll LabVIEW Sechs Optokoppler jede sekunde einen Impuls von 5 Volt geben, und das 140 mal. Die Optokoppler steuern Magnetventile an die weiter die Druckübersetzer antreiben. Die Druckübersetzer füllen sechs getrente Druckbehälter mit Wasser, und komprimieren dort die Luft.
Die Druckzunahme erfasse ich zur gleichen Zeit mit Drucksensoren und leite ein Spannungssignal ( 0-10V ) zur Auswertung an LabVIEW weiter.
In einem Druck-Hübe Diagramm soll dann jede Druckzunahme mit eigener Kurve im Graphen dargestellt werden.
Ich benutze die Studenten Version 7, und das USB-Gerät 6008 von National Instruments.

Wie kann ich 6 analoge Eingänge gleichzeitig erfassen?
Habe in den LV Examples nichts gefunden das mir wirklich weiterhelfen kann.

Vieleicht könnt ihr mir beim Anfang helfen?
Liebe Grüße,
Gregor
0 Kudos
Message 1 of 12
(6,603 Views)

Hallo GregorX

Also: mit dem LabVIEW-Express Datenerfassungs-VI sollte das eigentlich fast selbserklärend sein: Auf dem Schaltplan ablegen, doppelklicken und die Kanäle entsprechend parametrieren, also Analog-eingänge von 0-10 V, entsprechend skalieren, und and den Signalausgang des DAQ-Blocks ein Grafik-Ausgabelement anhängen.

Dann zusätzlich ein LVM-Datei-Schreiben Express-VI an die Leitung auf dem Schlatplan anschlieeßen und die Daten solten auf der Platte landen.

Wenn du soweit bist, frag noch mal genauer, wo es hakt....

mfg mc

0 Kudos
Message 2 of 12
(6,592 Views)
Gregor,
 
schau mal unter den mitgelieferten Beispielen nach. Da ich 'nur' die englische Version habe hier die englische Bezeichnung:
Acq&Graph Voltage-Ext Clk.vi
Auf jeden Fall wirst Du dort viele Beispiele finden um Deine Spannungen zu lesen.
 
Das gleichzeitige Erfassen wird mit Deiner Hardware nur ein ganz schnell Hintereinander (Multiplexen). Aber bei Deinem Aufbau kannst Du die bei max. 10 kHz Summenabtastung  also mit 1600Hz 6 Spannungen lesen. Wie schnell sind Deine Sensoren laut Datenblatt?    
 
Zur Sicherheit kannst Du ja zum Testen einmal einem Kanal mit 10kHz abtasten und schaun, wie schnell die Spannung ansteigt. Anschliessend folgt dann die Bewertung ob 1,6kHz immer noch reichen.
 
Viel Spass
 
Greetings from Germany
Henrik

LV since v3.1

“ground” is a convenient fantasy

'˙˙˙˙uıɐƃɐ lɐıp puɐ °06 ǝuoɥd ɹnoʎ uɹnʇ ǝsɐǝld 'ʎɹɐuıƃɐɯı sı pǝlɐıp ǝʌɐɥ noʎ ɹǝqɯnu ǝɥʇ'


0 Kudos
Message 3 of 12
(6,587 Views)
Hallo,
Danke für deine schnelle Hilfe.
Ich habe gelesen das der DAQ Assistant sehr Performance raubend wäre.
Stimmt das? Da ich durchgeht ca. 140 Sek. lang Werte von 6 Druckmessumformern auslesen möchte.
Gleichzeitig 140 digitale Signale ausgeben möchte.
Auch möchte ich über das Frontpanel Analoge Eingänge zu und weg schalten können.
0 Kudos
Message 4 of 12
(6,578 Views)
Acq&Graph Voltage-Ext Clk.vi wird leider nicht von meiner USB-6008 unterstützt. Ich bekomme immer eine Fehlermeldung.
0 Kudos
Message 5 of 12
(6,572 Views)
Ich habe im NI Example Finder ein Beispiel:
"Cont Acq&Graph Voltage-Int Clk.vi" gefunden.
Bei dem bekomme ich es hin das meine Spannung angezeigt wird, erhöhe ich den Druck steigt die Kurve an.
Aber es ist nur für einen Analogen Eingang, wie kann ich das Example ändern, das ich 6 Kanäle lesen kann?

Habe es mal als Anlage angehängt.
0 Kudos
Message 6 of 12
(6,568 Views)

Gregor,

hast du mal versucht, mit den üblichen Windowsmitteln mehrere Kanäle auszuwählen? Also im Frontpanel das Dropdown-Feld mit der Kanalauswahl öffnen und <Shift>  + Klick oder <Strg> + Klick? M.E. (ohne dass ich jetzt ausprobiert habe) sollte das direkt funkten.

michael
0 Kudos
Message 7 of 12
(6,557 Views)

Hallo Gregor,

so wie ich das sehe, kannst Du problemlos den DAQ-Assistenten nehmen. Erstens baut der Dir im Hintergrund (fast) genau die selbe Struktur wie in dem Beispiel, und zweitens ist Deine Anwendung so wie ich sie verstanden habe nicht so zeitkritisch, daß Du Dir um Performance Gedanken machen müßtest.

Mit welcher Samplerate möchtest Du denn die Analogeingänge auslesen? Selbst wenn Du hier ein, zwei Kilohertz nimmst, solltest Du mit einem "normalen" PC keine Probleme bekommen.

Ich würde es einfach einmal mit dem DAQ-Assistenten probieren; das Ein- und Ausschalten der nicht benötigten Kanäle würde ich im ersten Angang erst einmal so lösen, daß Du nur die Darstellung, aber nicht das Messen des betreffenden Kanals ausschaltest. Dann mißt Du zwar immer 6 Kanäle, auch wenn Du nur 3 brauchst, aber wie gesagt - ein Performanceproblem sollte das nicht sein.

Die Digitalausgänge steuerst Du einfach über einen zweiten DAQ-Assistenten.

Gruß

Stefan

0 Kudos
Message 8 of 12
(6,556 Views)
Hallo,
Danke das Ihr wieder da seid.
Ich habe jetzt den DAQ-Assistent konfiguriert, das mit den Analogen Eingängen scheint zu funktionieren.
Das ich alle Kanäle gleichzeitig auswähle hat auch funktioniert (nimic). Was die Abtastrate betrift, möchte ich den Druckübersetzern jede Sekunde einen Impuls geben (gesamt.=140) wenn ich dann in der Sekunde 4 mal den Analogen-Wert auslese müsste es ausreichend sein.
Doch das müsste ich dann in der Praxis testen.
Ich habe auch den DAQ-Assistent für die Digitalen Ausgänge erstellt, wenn ich jetzt die Ausgänge messe habe ich ständig die gewünschte 5 Volt.
Muß ich die Leitung invertieren?
Wie bekomme ich es jetzt hin das jede Sekunde ein Impuls kommt, insgesamt 140, dann anhällt.
Macht man das mit einer Schleife?

Gregor
0 Kudos
Message 9 of 12
(6,548 Views)


@gregorx wrote:
Wie bekomme ich es jetzt hin das jede Sekunde ein Impuls kommt, insgesamt 140, dann anhällt.
Macht man das mit einer Schleife?


Ja , Du kannst eine der beiden Schleifen verwenden. 

 For loop  : die 140 oben links und sie läuft durch.

Wenn du die while loop nimmst (Sorry, ich weiss nicht wie die in der deutschen Version benannt werden) musst du über den (i) counter selbst die Abbruchbedingung bestimmen (Achtung der Zähler beginnt mit 0 für den ersten Durchlauf). Vorteil: Du kannst einen 'Notaus' hinzufügen, um den Vorgang vorher abzubrechen.

 

Greetings from Germany
Henrik

LV since v3.1

“ground” is a convenient fantasy

'˙˙˙˙uıɐƃɐ lɐıp puɐ °06 ǝuoɥd ɹnoʎ uɹnʇ ǝsɐǝld 'ʎɹɐuıƃɐɯı sı pǝlɐıp ǝʌɐɥ noʎ ɹǝqɯnu ǝɥʇ'


0 Kudos
Message 10 of 12
(6,543 Views)