INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

NI cRIO 9042 Synchronisation



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!

08.07.2025, 13:58
Beitrag #1

vicious Offline
LVF-Neueinsteiger


Beiträge: 8
Registriert seit: Feb 2025

2024
-
DE



Brick NI cRIO 9042 Synchronisation
Hallo Gemeinde,
im Anhang befindet sich mein Programm zur Erzeugung von zwei Digitalsignalen in Abhängigkeit vom zwei unterschiedlichen Frequenzen.
Ich möchte beide synchonisieren, bin aber kläglich gescheitert.. Weiss jemand wie es funktionieren könnte?

Davon abgesehen ändert sich das clock signal mit der Triggerfrequenz. Ist es möglich eine Periode der Triggerfrequenz in N-Teile zu teilen und das dann als Clocksignal auszugeben?

Vielen Dank im Voraus

Eric


Angehängte Datei(en)
24.0 .vi  generierung-clk-trg-v1.vi (Größe: 29,06 KB / Downloads: 8)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
08.07.2025, 14:19
Beitrag #2

GerdW Offline
______________
LVF-Team

Beiträge: 17.518
Registriert seit: May 2009

LV2019 (LV2021)
1995
DE_EN

10×××
Deutschland
RE: NI cRIO 9042 Synchronisation
Hallo vicious,

Zitat:mein Programm zur Erzeugung von zwei Digitalsignalen in Abhängigkeit vom zwei unterschiedlichen Frequenzen.
Ich möchte beide synchonisieren, bin aber kläglich gescheitert.. Weiss jemand wie es funktionieren könnte?
Wie stellst du dir die Synchronisierung von "zwei unterschiedlichen Frequenzen" vor?
Kannst du mal ein Diagramm malen, wo du diese "zwei Frequenzen" (das sind wohl zwei pulse trains?) darstellst und darunter die gwünschte Ausgabe deiner Digitalsignale?

Zitat:Davon abgesehen ändert sich das clock signal mit der Triggerfrequenz.
Was ist jetzt das "clock signal" und wo findet sich die "Triggerfrequenz"?

Zitat:Ist es möglich eine Periode der Triggerfrequenz in N-Teile zu teilen und das dann als Clocksignal auszugeben?
Sicherlich.
Wie groß darf der Delay dabei sein?

Kannst du dein VI auch für LV2019 runter konvertieren und nochmal anhängen?

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
08.07.2025, 14:39
Beitrag #3

vicious Offline
LVF-Neueinsteiger


Beiträge: 8
Registriert seit: Feb 2025

2024
-
DE



RE: NI cRIO 9042 Synchronisation
Zitat:Wie stellst du dir die Synchronisierung von "zwei unterschiedlichen Frequenzen" vor?
Kannst du mal ein Diagramm malen, wo du diese "zwei Frequenzen" (das sind wohl zwei pulse trains?) darstellst und darunter die gwünschte Ausgabe deiner Digitalsignale?

Ich will in einer Triggerperiode 3600 Impulse haben. Wenn eine neue Triggerperiode beginnt, sollen wieder 3600 Impulse augeben werden.
Zitat:Was ist jetzt das "clock signal" und wo findet sich die "Triggerfrequenz"?

Das sind Netzwerkvariablen die vom Host-Pc berechnet werden. Die Clockfrequenz sollte theoretisch so hoch sein, dass 3600 Impulse innerhalb einer Triggerperiode entstehen.

Zitat:Sicherlich.
Wie groß darf der Delay dabei sein?
Möglichst Null Big Grin

Zitat:Kannst du dein VI auch für LV2019 runter konvertieren und nochmal anhängen?
ist drin. Die Skizze würde ich heut Abend nachreichen


Angehängte Datei(en)
19.0 .vi  generierung-clk-trg-v1.vi (Größe: 28,46 KB / Downloads: 8)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
08.07.2025, 19:21 (Dieser Beitrag wurde zuletzt bearbeitet: 08.07.2025 19:23 von GerdW.)
Beitrag #4

GerdW Offline
______________
LVF-Team

Beiträge: 17.518
Registriert seit: May 2009

LV2019 (LV2021)
1995
DE_EN

10×××
Deutschland
RE: NI cRIO 9042 Synchronisation
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…

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
08.07.2025, 20:23
Beitrag #5

vicious Offline
LVF-Neueinsteiger


Beiträge: 8
Registriert seit: Feb 2025

2024
-
DE



RE: NI cRIO 9042 Synchronisation
Zitat:warum ist dein VI soooo unaufgeräumt???
weil ich keine Ahnung hab und relativ wenig Erfahrung mit der Umgebung habe.

Zitat:Warum sieht es nicht in etwa so aus:
vielen Dank für den Hinweis. Ich versuch mich zu bessern.

Zitat:Warum wird bei einem Task gleich zweimal DAQmxStart aufgerufen???
ich bin am hin und her probieren und hab wahrscheinlich vergessen das zu löschen.

Zitat:Warum wird bei beiden Tasks "Is Done" aufgerufen - aber überhaupt nicht verwendet?
ich habe keine Ahnung was das überhaupt bewirken soll. Ich hab mich nur an Beispielen orientiert.

Zitat:Warum wird der "f-trg"-Wert erst eine Iteration später ausgegeben?
auch keine Ahnung..

Zitat:Warum wird der untere Task in JEDER Iteration gestartet?
ich bekomme die Netzwerkvariable nicht aus der Schleife raus (durch den Tunnel). Ich will nur ab und zu prüfen ob sich daran etwas geändert hat.

Zitat:Du weißt, dass das Prüfen von Floats auf (Un-)Gleichheit gefährlich ist?
die Lösung ist aus der Doku/Forum von NI

Zitat:Du weißt, was du per "low ticks"/"high ticks" einstellst?
das werde ich morgen mal recherchieren..


Zitat:Du weißt, das Netzwerkvariablen einen Delay mitbringen (können)?
ja ich will nur prüfen ob sie sich geändert hat und dann mit dem neuen Wert weiter machen. In dem dem Programm, was die Variable liefert stelle ich eine Drehzahl ein..


Zitat:Das wäre mMn eine prima Aufgabe für den FPGA in deinem cRIO: der kann sehr genau Pulse erzeugen, auf Flanken achten, etc!
Kann ich nicht eine Art Puffer schreiben (für die Clock-Signale) und die solang im Voraus berechnen bis sie sich ändert und dann den Puffer neu schreiben?

Ich belaste morgen mal meinen Betreuer, mal sehen was der so sagt..

Vielen Dank!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  NI cRIO 9042 Daten über Netzwerk übertragen vicious 4 736 27.06.2025 09:31
Letzter Beitrag: vicious

Who read this thread?
7 User(s) read this thread:
GerdW, IchSelbst, vicious, TpunktN, Keppi, Woodeye, cordm

Gehe zu: