Hallo vicious,
warum ist dein VI soooo unaufgeräumt???
Warum sieht es nicht in etwa so aus:
In "sauberem" Code können sich Bugs viel schwerer verstecken!!!
Warum wird bei einem Task gleich zweimal DAQmxStart aufgerufen???
Warum wird bei beiden Tasks "Is Done" aufgerufen - aber überhaupt nicht verwendet?
Warum wird der "f-trg"-Wert erst eine Iteration später ausgegeben?
Warum wird der untere Task in JEDER Iteration gestartet?
Du weißt, dass das Prüfen von Floats auf (Un-)Gleichheit gefährlich ist?
Du weißt, was du per "low ticks"/"high ticks" einstellst?
Zitat:Das sind Netzwerkvariablen die vom Host-Pc berechnet werden. Die Clockfrequenz sollte theoretisch so hoch sein, dass 3600 Impulse innerhalb einer Triggerperiode entstehen.
Du weißt, das Netzwerkvariablen einen Delay mitbringen (können)?
Zitat:Ich will in einer Triggerperiode 3600 Impulse haben. Wenn eine neue Triggerperiode beginnt, sollen wieder 3600 Impulse augeben werden.
Das wäre mMn eine prima Aufgabe für den FPGA in deinem cRIO: der kann sehr genau Pulse erzeugen, auf Flanken achten, etc!
Um das mit DAQmx umzusetzen, müsste ich mich auch erst durch die ganzen DAQmx-CTR-Beispiele wühlen - ich denke aber, dass das ein ziemlicher Aufwand wird, einen DAQmx-CTRout-Task in Abhängigkeit eines zweiten CTRout-Task nach deinen Anforderungen zu konfigurieren…