Step 7 Unbekannte CPU einstellen?

OB82

Level-1
Beiträge
15
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Moin, moin!

Ein aktuelles Projekt verlangt folgende Situation:

Firma 1 stellt eine Maschine mit einer S7-1200 und eigener Software (in TIAv12) her.
Firma 2 stellt mehrere Maschinen u.A. mit einer S7-300 und ebenfalls eigener Software (in STEP7v5.5) her.

Die Anbindung ist per PN (ProfiNet) hergestellt.

Firma 2 hat Firma 1 IP-Adressen vorgegeben und möchte ebenfalls mit Firma 1s Maschine kommunizieren. In STEP7v5.5 kann Firma 2 einen unbekannten Teilnehmer (die CPU der Firma 1) mit einer Partner-ID einfügen. Die Frage stellt sich ob man das auch so in TIA-Portal einbinden kann oder wie man diese Kommunikation herstellen kann. Die Kommunikation soll mittels zweier DBs erfolgen (DB601 Receive, DB603 Send).

Kann hier jemand eine Hilfestellung geben oder die Lösung des Problems?

Vielen Dank und Grüße!
 
.
Auch die 1200 kann zur 300 kommunizieren wie HIER steht.
Eine weiteren Kommunikationspartner (CPU 300) kannst du
auch ohne weiteres im TIA-Portal einfügen.
Du solltest dabei auf die Firmware- und TIA-Versionen achten.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Okay, vielen Dank für den Tipp bzw. die Tipps, SoftMachine!

Ich habe nun im TIA Portal die S7-315-2 eingepflegt und ihr die Adresse zugewiesen, die sie von der anderen Firma bekommen hat und kann mir auch den Diagnosestatus etc. anzeigen lassen.

Die andere Firma hat in seinem Step7 5.5 meine CPU als unbekannten Teilnehmer eingefügt, da er keine S7-1212C dort einbinden kann und die IP meiner CPU dort angegeben. Die 315-2 ist der aktive Part und sendet bzw. empfängt mittels PUT und GET die Datenbausteine 601 und 603.

Meine S7-1212C beinhaltet nur die Bausteine 601 und 603 und bekommt von der 315-2 die Daten oder sie werden von ihr eingeholt.

Zu mindest sollte es so sein... es funktioniert aber nicht. Liegt das an irgendeiner lokalen-ID bzw. Partner-ID? Bei mir haben sich nun zwei S7-Verbindungen mit dem Namen "S7_Verbindung_1" aufgebaut. Der Kollege der anderen Firma kann bei der unbekannten CPU (meine CPU) keine Partner-ID eintragen, liegt das hier dran? Die IP-Adresse ist aber eingetragen.

Anbei ein Screenshot von meiner "Geräte & Netze"-Verbindung:
 
Keine Erfahrung mit S7-1200 und nur wenig mit TIA.

Aber ich denke das Problem ist das in eine Projekt hat man ein un-spezifizierte Verbindung, und in den andere Projekt eine voll-spezifizierte Verbindung.
Das geht nicht. Die zwei Verbindungsarten sind unterschiedlich.
Kannst du nicht in den TIA Projekt ein "unbekannte" Partner spezifizieren ?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
In "Geräte und Netze"


Alles so auswählen wie im Bild. Rechtsklick im Fenster Verbindungen.
Wichtig ist, dass die CPU ausgewählt wurde.
Rechtsklick, neue Verbindung hinzufügen, unspezifizierte Verbindung.

TIA_6.png


mfG René
 
Zuletzt bearbeitet:
Oh klasse! Stimmt! Vielen Dank für die Info - bin noch neu in TIA v12..

Trotz alle dem funktioniert der Abgleich nicht.. ich bekomme nicht die Daten in meine CPU gesendet und der Kollege kann nichts von mir bekommen.

Muss die Lokale-ID und die Partner-ID denn gleich sein? Die Partner-ID kann man ja bei dem unbekannten Teilnehmer nicht eingeben..
Ich selber komme als Lokale-ID nicht unter 100 und der Kollege kommt mit seiner S7-315 bei Lokale-ID nicht höher als 80.

Finden kann man die CPUs, wenn man nach ihnen im PN sucht...

Hat da noch jemand eine Idee?
 
Zuletzt bearbeitet:
Ich glaube das die ID Nummern brauchen nicht gleich sein.

Was hast du in diesen Bild ?:
TIA_unsp_verb.png


Was mir verwundert das man nirgendwo Rack und Slot eingeben kann. Nicht wie in STEP7 v5.5. Da ist es eine kritisch wichtige Information.

edit:

Doch, unter Address Details. Hier muss man Slot von 0 auf 2 setzen.
TIA_unsp_verb_2.jpg

edit nochmals: Ich weis nicht was Slot sein muss für ein S7-1200.
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Die lokale ID brauchst du nur lokal an deinen Bausteinen. Die PartnerID ist egal.

Allerdings müssen TSAP und natürlich die IP übereinanderstimmen.

Lokale TSAP müssen beim partner die RemoteTSAP sein und umgekehrt.
PartnerBaugruppenträger und Stekcplatz müssen natürlich auch stimmen.

mfG René
 
Man gibt beim partnerslot und TSAP und Baugruppenträger einfach das ein was im anderen Programm in den lokalen daten drin stehen und beim Partner natürlich das was bei dir im lokalen drin steht. Die lokalen werden ja bei den unspezifizierten Verbindungen immer automatisch ausgefüllt wenn man den Zugangspunkt auswählt.

mfG René
 
Die 315-2 ist der aktive Part und sendet bzw. empfängt mittels PUT und GET die Datenbausteine 601 und 603.

Meine S7-1212C beinhaltet nur die Bausteine 601 und 603 und bekommt von der 315-2 die Daten oder sie werden von ihr eingeholt.
Die DB601 und DB603 in der S7-1212C dürfen nicht "optimiert" sein sondern müssen "Standardzugriff" haben.

Wenn es weiter nicht funktioniert: der Programmierer der 315-2 soll sich mal den Error-Status seiner PUT/GET anschauen/auswerten.

Harald
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Bei mir ist meine Lokale-ID: 100
Bei dem Kollegen ist die Lokale-ID: 1
Beide haben keine Partner-ID: -

Die Verbindung "Allgemein" schaut so aus:


Die Verbindung "Adressdetails" schaut wie folgt aus:


...bei mir in TIA v12:
Lokal:
Baugruppenträger 0
Steckplatz 1
TSAP 10.01

Partner:
Baugruppenträger 0
Steckplatz 2
TSAP 10.02

...bei dem Kollegen in STEP7 v5.5:
Lokal:
Rack 0
Slot 2
TSAP 10.02

Partner:
Rack 0
Slot 1
TSAP 10.01

...so ist es doch auch korrekt oder?
 
DB601 und 603 haben schon keinen Haken bei "Optimierter Bausteinzugriff"...

Der PUT/GET-Error zeigt keinen Fehler an...
 
Eine bitte:

Deine Bilder Linkt zu ein Webseite die Werbungen in neue Fenster öffnen.
Anstatt diese andere Websete, es gibt in diesen Forum eine Funktion Anhänge zu verwalten, inklusive Bilder.
Vielleicht kannst du diese Bildverwaltung verwenden ?
 
Die Subnetzid spielt glaub ich keine rolle. Oder anders gesagt. Die habe ich noch nie beachtet.

Der Error steht immer nur ein Zyklus an. also musst du den Status wegsichern wenn das Errorbit kommt.

z.B. So
Code:
  #PUT_Instance(REQ:=#sende AND NOT (#PUT_Instance_1.STATUS = 16#0019),                ID:=#SendVerbindungsID,
                DONE=>#put_done,
                ERROR=>#put_error,
                STATUS=>#put_status,
                ADDR_1:=#Befehlsdb,
                SD_1:=#Befehlsdb);

    IF #put_error THEN
   #put_status_save := #put_status;
 END_IF;
 
Zurück
Oben