TIA S7 1500 zu TCP/IP Datenausautausch

Zuviel Werbung?
-> Hier kostenlos registrieren
Bis auf die infos die ich duchgegeben habe, habe ich zugriff auf die andere steuerung

Ich muss dir ehrlich sagen. Die _C Varianten der Bausteine nutze ich eigentlich nie (ausser für SMS Alarmierung).
Ich finde TCON um die Verbindung aufzubauen und dann TSEND (wird angestossen wenn Telegramm versendet werden soll) TRECV (ist ständig auf REQ auf derselben ID wie TSEND).
Und da funktionierts dann auch sauber weil man dann für jeden Part des Verbindungshandling einen dafür zuständigen Baustein hat.
In TSEND_C und Co bastelt Siemens das irgendwie zusammen.
 
Für mich sind deine Aussagen alle mehr als schwammig, und die ganze Funktionsweise ist unklar.

Du schriebst "die Anlage stellt dir 2500 Bytes Daten zur Verfügung".
Bei TCP gibt es keinen Befehl um Daten abzuholen. Die Anlage muss dir die Daten aktiv schicken, und wenn die Anlage dir nichts schickt dann kommt auch nichts.
Dann ist auch die Frage, "wann" die Anlage dir die Daten schickt. Musst du dort erst eine Anforderung hin abschicken (senden) und die Anlage schickt dir daraufhin die Daten zurück? Oder gibt es ein anderes Ereignis?

Ich würde überhaupt nicht mit dem Programm anfangen, bevor das nicht alles im Detail geklärt ist.
 
Wenn "SBI" das Partnergerät sein sein, dann ist dieser Server. D.h. du musst von deiner SPS aus die Verbindung aktiv aufbauen auf den Port 2000, und bekommst so wie es vermuten lässt dann jede Sekunde ein Telegramm zugeschickt. Wie groß dieses ist weiß man nicht (xxxx Byte). Wenn diese Information noch im Header steht, dann musst du erst den Header einlesen, dort die Größe auslesen, und dann den Rest einlesen. Wenn die Datengröße nicht im Header steht und nicht fix ist, dann funktioniert das nicht. Zumindest nicht wenn nicht irgenein anders gearteter Rahmen um die Daten gelegt wurde, an dem sich Anfang und Ende erkennen lässt.

Anscheinend kann das Gerät auch von dir Daten empfangen. Da musst du mal weiterlesen ob dort noch etwas steht, was du dort senden kannst/musst und welche Funktion damit möglich ist.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Wenn du vor Ort bist kannst du es ja mal von deinem PC/PG aus versuchen.
Telnet mit Portangabe 2000 ginge auch, aber das wird bei Windows nicht immer mitinstalliert. Ansonsten z.B. mit diesem Freeware-Programm:

https://www.hw-group.com/software/hercules-setup-utility

Als TCP Client, IP-Adresse und Port 2000 einstellen, dann sollte eigentlich schon etwas eintreffen. Dann weißt du zumindest ob der Server auch funktioniert.
 
Der Fehler besagt, dass die IP-Adresse zwar erreichbar ist, aber auf dem Port kein Dienst läuft der deine Verbindung annimmt.
Da müsstest du dich an den Hersteller dieses "SBI" wenden ob denn dort der Dienst überhaupt aktiv ist, und ob das mit der Portnummer 2000 denn stimmt, dieser scheint ja auch einstellbar zu sein. Und es wäre abzuklären, ob der Server von jeder beliebigen IP-Adresse eine Verbindung annimt, oder ob das evtl. auch noch gefiltert wird (eher unwahrscheinlich).
Mit einem Portscan könnte man das theoretisch auch selber herausfinden, aber das ist nicht überall gerne gesehen. Außerdem gehört sich das ja auch dokumentiert und nicht ausprobiert.
 
Ich habe mit dem Hersteller gesprochen,
Die müssen diese Schnittstelle von deren Seite erst Freigeben :sm23:
Das hat mir natürlich vorher keiner gesagt...
Ich werde nächste Woche weiteres berichten, da der Anlagenhersteller erst nicht da ist
 
Zurück
Oben