LabVIEWForum.de - Abfragen von mehreren tasks mit Lab view

LabVIEWForum.de

Normale Version: Abfragen von mehreren tasks mit Lab view
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo,

ich sitze jetzt schon 2 Tage an meinem Projekt und komme jetzt einfach nicht mehr weiter.
Ich habe einen cDaq mit 8 Modulen. Für mein Programm habe ich mir aus diesen 8 Modulen 4 versch. Tasks zusammengestellt.
Aber sobald ich den 4ten Task ins Programm einbinde, gibt Lab View die Fehlermeldung aus, dass die Resourcen schon reserviert wären.
Ich spreche aber mit meinen Tasks kein Modul doppelt an.

Habe jetzt auch mal im MAX versucht mehr als 4 Tasks gleichzeitig laufen zu lassen und selbst der steigt dann aus - mit der selben Fehlermeldung.

Ist das jetzt eine technische Begrenzung des cDaqs oder mache ich irgendetwas falsch ?
Hi
hast Du einaml die Zahl der DMA-Kanäle überprüft, die vom cDAQ unterstützt werden. Ich vermute es sind nur drei.

In diesem Fall müsstest Du den vierten Task auf Polling oder Interrupt umstellen. Dazu kanst Du die DAQmx Property-Nodes benutzen.

Ich habe mal ein Beispiel, aus dem Zusammenhang gerissen, angehängt.

Gruß Holger
OK, danke

werds mal probieren
Hallo, wenn ich den Eigenschaftsknoten "DAQmx - Kanal" erstelle, gibt es dort keine Einstellung bezüglich der Einstellung ob nun DMA- oder Interrupt-Modus.
Wo finde ich diese?

meine LV version: Lv09_img2
Kenne mich eigentlich mit cDAQ nocht aus, aber ein Blick in die Spezifikation liefert doch für die Zahl "3" die Erklärung:
[attachment=34599]
Die eingesteckten AI-Module funktionieren also nicht autark, sondern benutzen als Takgeber Hardware, die sich im Grundchassis befindet. Und davon gibt es nur 3 Stück.
Wie gesagt, ich habe keine Ahnung, aber der mich nie trügende Big Grin Instinkt sagt klar und deutlich: Wenn mehrere AI-Module parallel synchron betrieben werden, d.h mit gleichem Takt, Start und Stop, dann sollte es doch möglich sein, diese Kanäle zu einem mehrkanaligen Task zusammenzufassen, bei dem nur eine "AI Timing Engine" verbraucht wird.
Dein Problem tritt also nur auf, wenn man mehr als drei verschiedene AI-Tasks einrichtet - was aber nicht heißt, daß nur 3 AI-Module verwendet werden können.

@Kutterer
Mit solchen Problemen mußte ich mich lang genug herumärgern. Wahrscheinlich gibt es auf Deine Frage eine Antwort in Form eines tief im Menü versteckten Eigenschaftsknotens. Aber seitdem es DAQmx gibt, interessiert mich das nicht mehr. Labview trifft jetzt selbst hochintelligente richtige Entscheidungen, auf die ich mich - zumindest bisher - voll verlassen konnte. Es belästigt den Programmierer nicht mehr mit solchem Zeugs, wie das bei den klassischen DAQ-Treibern leider der Fall war. Und vor diesem Hintergrund halte ich es ehrlich gesagt für abwegig, das hier besprochene Problem mit fehlenden DMA-Resourccen zu erklären.
Referenz-URLs