Twincat 3 auf PC mit 2 Ethercat Mastern

Armin2

Level-2
Beiträge
7
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich versuche auf einem PC mit 2 Intel Netzwerkkarten 2 getrennte Ethercat Devices unter Twincat 3 zu verwenden (license 90)
Auf Device 1 habe ich schnelle Ein- und Ausgänge mit einer Zykluszeit von 100µs.
Auf dem Device 2 habe ich langsame Ein- und Ausgänge mit 20ms Zykluszeit.
Device 1 (Task 1) läuft auf einen isolated core 4.
Device 2 (Task 2) läuft auf dem isolated core 3.

Bei der schnellen Task arbeitet das System wie erwartet.
Bei der langsame Task bekomme ich im "Freerun" die Klemmen. Sobald ich das System jedoch starte, erfolgt kein Datenaustausch auf dem Bus. Der Synch Manager Watchdog schlägt an und die Slaves gehen in SaveOp, die Einstellung des Synch Manager Watchdogs ist auf 100ms eingestellt.

Tausche ich die Ethercat Verbindung (schnelle Task) auf der zweiten Karte funtkioniert sie dort.
--> Die schnelle Task funktioniert auf beiden Karten
--> die langsame Task funktioniert auf keiner Karte.

Kennt jemand ein vergleichbares Problem?
 
Die Konfiguration von Cores erfordert doch etwas Gefühl/Erfahrung.
Task beliebig zu verteilen wird dich nicht glücklich machen.
Ohne mehr Hintergrundinfo wird dir aber keiner helfen können.
Also:
1) Leg beide Tasks auf einen Core inc. IO-Idle und schau ob es funktioniert.
2) Mach mal die langsame Task schneller (2-4msec). Ich könnte mir vorstellen das hier ein DC-Teilnehmer arbeitet. Da sind 20msec zu langsam.
3) Poste dann mal deine Realtime-Konfig + welcher Rechner/Chipsatz + welche anderen Task denn tatsächlich brauchen + HW-Config Danach kann man dir eventuell helfen.

Guga
 
Zuviel Werbung?
-> Hier kostenlos registrieren
PC: HP-Rechner mit Windows 7 64-bit, Core: Intel i5
Zykluszeit der langsamen Task von 20ms auf 10ms geändert, seitdem läuft zweite Ethercat.
Problem war: Die Slaves am langsamen Ethercat haben ständig einen Watchdog Timeoutfehler gemeldet. (Watchdog war in der Default-Eintellung zu klein.


tc-realtime.jpg
 
wenn es läuft... schön.
i5 = 2 physikalische Cores. Mittels Hyperthredding gibt es 4 Cores -> für ne gute Echtzeit fange ich hier an zu schlucken...

Wie gesagt: Für Core-Verteilung darf man nicht mit der Gieskanne arbeiten.
 
ähm .. ich muss Guga recht geben. Hyperthreading sollte ausgeschaltet werden. Wenigstens habt ihr die beiden "Cores" isoliert die zusammen gehören ...
 
Zurück
Oben