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!
Hallo Gemeinde,
ich will mit meinem cRIO ein CLOCK und TRIGGER Signal über eine Frequenz erzeugen. Davon mal abgesehen, dass ich nicht weiss wie ich ein Internes Triggersignal erzeuge, funktioniert der Datenaustausch vom Host-Pc an den cRIO nicht. Wenn ich in dem RT-Vi eine feste Zahl eintrage, wird das Signal wie erwartet generiert. Eine Netzwerkvariable wird aber nicht ausgelesen..
Ich hänge mein Programm mit an.
Kann ich denn einen Trigger intern erzeugen?
Ich brauch an einem Ausgang nur das Clocksignal, das aber nur intern getriggert wird.
Es scheitert am Datenfluss: der Wert der Netzwerkvariable wird erst weitergeleitet, wenn der Timed Loop beendet wird.
Das wird er aber entweder sofort oder nie - das Stopp-Terminal wird nur ein einziges mal bei Programmstart gelesen. Genauso verhält es sich mit dem DAQmx-Task.
Du könntest die Netzwerkvariable einmalig bei Programmstart lesen und dann kontinuierlich in der Task is Done-Schleife. Bei Wertänderung startest du den Task neu. (Frequenz in Schieberegister von neuer äußerer While-Schleife schreiben)
Man kann man die Frequenz wohl auch ändern während der Task läuft, aber damit kenne ich mich nicht aus.
Die Netzwerkvariable solltest du auch nicht ständig mit dem gleichen Wert überschreiben, sondern Ereignisgesteuert bei Wertänderung.