Passiver Verbindungsaufbau mit TCON

Woto

Level-1
Beiträge
82
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen,

brauche mal wieder eure Hilfe. Ich habe bisher zu meinem Problem nicht so richtig etwas gefunden.:sad:

Ich möchte eine CPU315-2 PN/DP mit einem PC über ISO on TCP kommunizieren lassen. Dazu versuche ich, mit dem TCON-Baustein (FB65) eine Verbindung zum PC herzustellen. Wenn die CPU aktiv ist (PC ist Server), wird die Verbindung auch problemlos aufgebaut.:D
Nun möchte ich aber, dass die CPU passiv ist (CPU ist Server). Dabei bekomme ich keine Verbindung zum PC, der in diesem Fall als Server fungiert.:sad:

Ich habe in den Parametern vom TCON nur von aktiv auf passiv geschaltet und auf der PC-Seite ein kleines Testprogramm als aktiv laufen. Muss man eventuell beim TCON-Baustein noch woanders Einstellungen machen?:confused:

Viele Grüsse
Woto
 
Das PC-Programm sagt "Verbindung getrennt" und der Status beim TCON ist 80C4.
Kannst du dein PC-Programm denn auch von passiv auf aktiv umstellen? Vielleicht läuft es ja noch im passiven Modus (wartet also auf eine Verbindungsanfrage). Ansonste müsste der Status doch sowas wie in der Art "konnte keine Verbindung aufbauen" lauten.

Was ist das denn für ein Programm, selbstgeschrieben?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Das PC-Programm wurde von unserer IT-Abteilung geschrieben. Es handelt sich also um ein selbstgeschriebenes Programm.
Bei dem Programm kann man zwischen aktiv und passiv wechseln.
Gibt es noch ein anderes Programm dafür? Dann könnte ich das mal gegenchecken.

Als TSAP habe ich "TCP-1" sowohl local als auch remote eingestellt. Auf der PC-Seite das gleiche. Nun kann man aber auch als 1.Byte 0xE0 und als 2.Byte 0x02 eintragen. Was genau bedeutet das?
 
Das PC-Programm wurde von unserer IT-Abteilung geschrieben. Es handelt sich also um ein selbstgeschriebenes Programm.
Bei dem Programm kann man zwischen aktiv und passiv wechseln.
Gibt es noch ein anderes Programm dafür? Dann könnte ich das mal gegenchecken.

Ich wüsste jetzt kein Programm mit dem man das einfach testen könnte.
[Edit]
mit dieser Demo könnte man das zumindest mal testen:
http://www.traeger.de/downloads/rfc-1006-lib/view-category.html
[/Edit]

Als letzten Schritt mit Wireshark den Verkehr abhören, damit kommt man dem Fehler sofort auf die Schliche.
Als TSAP habe ich "TCP-1" sowohl local als auch remote eingestellt. Auf der PC-Seite das gleiche. Nun kann man aber auch als 1.Byte 0xE0 und als 2.Byte 0x02 eintragen. Was genau bedeutet das?
Diese Bytes sind soweit ich weiß dazu da, um mit anderen S7-CPUs/CPs eine Iso-On-Tcp-Verbindung herzustellen. Da werden wohl gelegentlich bei den TSAP diese Werte hinzugefügt, die du als String sonst nicht eingeben könntest, da keine ASCII Zeichen.

Was du dort einstellen musst, hängt davon ab was bei deiner PC-Software als Partner-TSAP eingestellt ist. Wenn du dort 'TCP-1' konfiguriert hast, ist bei LOC_TSAP B#16#0 einzustellen (Voreinstellung).

Da wie du schreibst der Austausch in die andere Richtung aber funktioniert, sollten die TSAPs wenn du nichts umprogrammiert hast korrekt sein.
 
Zuletzt bearbeitet:
Guten Morgen,

ich habe mir das Tool von www.traeger.de heruntergeladen und ausprobiert. Leider hatte ich damit auch kein Erfolg. Das Programm meldet "nicht verbunden".:sad:
Beim TCON ist der STATUS 16#80b4 und nicht 16#80c4!
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Aufgabe gelöst

Hallo zusammen,

nach mehrfachen Versuchen habe ich die Aufgabe lösen können.:D

Damit der PC aktiv die Verbindung zur CPU aufbauen kann, muss beim TSAP die Kennung 0xE0 und 0x02 als erstes und zweites Byte eingetragen sein. Ich vermute, dass die passive CPU eine Verbindung nur zulässt, wenn die aktive Gegenstelle auch eine S7-CPU ist.
Somit gaukeln wir der S7-CPU einfach vor, das der PC eine S7-CPU ist.

LG
Woto
 
Mach mal Bilder von der Hardwareconfigparametrierung deines Verbindungsaufbaus beider Seiten sowie die Parametrierung der TCON Bausteine...
 
Hier die Einstellungen im Demo-Projekt. Ich habe folgende Dateien angehängt:

  1. Sample_open_ISO.zip (S7-Demo-Programm)
  2. IsoOnTcp mit T-Bausteinen.pdf (Dokumentation zum Demo-Projekt)
  3. RFC1006Demo.jpg (Einstellungen beim PC-Programm)
  4. T_SAP_Einstellungen.jpg (T_SAP-Einstellungen in den statischen Variablen im FB400)
  5. Rfc1006Demo.zip (Demoprogramm auf der PC-Seite)
LG
Woto
 

Anhänge

  • Sample_open_ISO.zip
    52,1 KB · Aufrufe: 23
  • IsoOnTcp mit T-Bausteinen.pdf
    122,7 KB · Aufrufe: 39
  • RFC1006Demo.jpg
    RFC1006Demo.jpg
    126,2 KB · Aufrufe: 55
  • T_SAP_Einstellungen.jpg
    T_SAP_Einstellungen.jpg
    71,2 KB · Aufrufe: 46
  • Rfc1006Demo.zip
    261,7 KB · Aufrufe: 20
Zuviel Werbung?
-> Hier kostenlos registrieren
Damit der PC aktiv die Verbindung zur CPU aufbauen kann, muss beim TSAP die Kennung 0xE0 und 0x02 als erstes und zweites Byte eingetragen sein. Ich vermute, dass die passive CPU eine Verbindung nur zulässt, wenn die aktive Gegenstelle auch eine S7-CPU ist.
Somit gaukeln wir der S7-CPU einfach vor, das der PC eine S7-CPU ist.

Schon dass es läuft, aber kann ich nicht so recht nachvollziehen.

Kannst du mal testen ob es funktioniert wenn du LOC_RACK_SLOT und REM_RACK_SLOT auf B#16#0 setzt, und dann mit dem TSAP von 'TCP-1' für Quelle und Ziel arbeitest? Oder sind deine ersten Tests damit fehlgeschlagen?
 
Zurück
Oben