Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Ergebnis 1 bis 10 von 10

Thema: 2x S7 300 MPI Verbindung, verschiede Projekte

  1. #1
    Registriert seit
    17.07.2010
    Ort
    Berlin
    Beiträge
    18
    Danke
    1
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,

    ich möchte über MPI einen DB von einer S7-300 (seperates Projekt) zu einer anderen 300 schicken (ebenfalls seperates Projekt).
    Da das eine Client/Client Lösung darstellt wollte ich den SFC65 und SFC66 benutzen.
    Die eine Station ist MPI: 2 und die andere MPI: 4.

    Muss ich dazu irgendwas in NetPro konfigurieren? Ich dachte an unspezifizierten Partner...? Wie funktioniert das genau, vielleicht hat jemand ein Beispielprojekt?
    Globaldaten kommen nicht weiter in Frage...


    Bisher waren meine Bemühungen leider nur von wenig Erfolg gekrönt.

    Grüße,
    Thomas
    Zitieren Zitieren 2x S7 300 MPI Verbindung, verschiede Projekte  

  2. #2
    blackedition ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    17.07.2010
    Ort
    Berlin
    Beiträge
    18
    Danke
    1
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Anbei mein bisheriger Code:

    Program CPU 1
    U M 0.7 //Taktmerker zum Aktivieren
    FP M 1.2
    = L 20.0
    BLD 103
    U M 1.1
    = L 20.1
    BLD 103
    CALL "X_SEND"
    REQ :=L20.0
    CONT :=L20.1
    DEST_ID:=W#16#2
    REQ_ID :=DW#16#4
    SD :=P#DB1.DBX0.0 BYTE 1
    RET_VAL:=MW4
    BUSY :=M1.0
    NOP 0


    Programm CPU 2
    U M 0.7 //Taktmerker zum Aktivieren
    FP M 1.4
    = L 20.0
    BLD 103
    CALL "X_RCV"
    EN_DT :=L20.0
    RET_VAL:=MW30
    REQ_ID :=MD114
    NDA :=M118.0
    RD :=P#DB2.DBX0.0 BYTE 1
    NOP 0

  3. #3
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.314
    Danke
    932
    Erhielt 3.329 Danke für 2.688 Beiträge

    Standard

    Verbindungen der S7-Basiskommunikation werden nicht in NetPro projektiert. Die Verbindungen werden von den SFC aufgebaut und nach der Datenübertragung wieder abgebaut oder bleiben bestehen (je nach Bausteinparameter CONT).

    Zu einem Kommunikationspartner kann nur maximal eine Verbindung aufgebaut sein. Senden und empfangen geht also nicht gleichzeitig! Soll gesendet und empfangen werden, dann ist die abwechselnde Nutzung dieser einen Verbindung einfacher mit X_PUT und X_GET auf nur einer CPU zu realisieren.

    Schau Dir mal die Step7 Hilfe zu Systemfunktionen/-funktionsbausteinen das Kapitel "Übersicht über die Bausteine der S7-Basiskommunikation" an.

    Wenn Sie einen Auftrag angestoßen haben, dann kann die dafür aufgebaute Verbindung momentan nur für diesen einen Auftrag benutzt werden. Andere Aufträge zu demselben Kommunikationspartner können erst dann wieder abgewickelt werden, wenn der laufende Auftrag beendet ist. Beachten Sie daher folgenden Hinweis:

    Hinweis
    Wenn Ihr Programm mehrere Aufträge zu demselben Kommunikationspartner enthält, müssen Sie dafür Sorge tragen, daß Sie diejenigen SFCs, bei denen W#16#80C0 in RET_VAL angezeigt wird, zu einem geeigneten späteren Zeitpunkt erneut aufrufen.
    Durchführung von Programmänderungen

    Alle Teile Ihres Programms, die auf Aufrufe von SFCs der S7-Basiskommunikation unmittelbar Auswirkungen haben, dürfen Sie nur im Betriebszustand STOP verändern. Dazu gehört insbesondere das Löschen von FCs, FBs oder OBs, die Aufrufe von der S7-Basiskommunikation enthalten.

    Anschließend müssen Sie einen Neustart (Warmstart) oder Kaltstart durchführen.

    Falls Sie dies nicht beachten, können Verbindungsressourcen belegt bleiben, und das Automatisierungssystem befindet sich anschließend in einem nicht definierten Zustand.
    Harald
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  4. #4
    blackedition ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    17.07.2010
    Ort
    Berlin
    Beiträge
    18
    Danke
    1
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hallo Harald, danke für deine Informationen.

    Ich werde das morgen mal probieren und lasse dann wieder von mir hören

  5. #5
    blackedition ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    17.07.2010
    Ort
    Berlin
    Beiträge
    18
    Danke
    1
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Deine Server/Client Lösung geht. Danke schön.

  6. #6
    blackedition ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    17.07.2010
    Ort
    Berlin
    Beiträge
    18
    Danke
    1
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Eine Frage habe ich noch, derzeit hängt an jedem CPU noch ein OP per MPI,
    diese Verbindungsressourcen bleiben aber unberührt bei Aktivierung von SFC67/68 oder nicht?

    Die Verbindung zwischen CPUs wollte ich permanent bestehen belassen.

  7. #7
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.314
    Danke
    932
    Erhielt 3.329 Danke für 2.688 Beiträge

    Standard

    Ja.
    In HW Konfig kann man bei den "Eigenschaften der CPU > Reiter Kommunikation" Kommunikationsressourcen reservieren. Da ist normalerweise mindestens 1 Ressource für OP-Verbindungen reserviert. Die Anzahl Reservierungen für S7-Basiskommunikation könntest Du ja vorsichtshalber etwas verringern und die für OP erhöhen. Solange noch nicht alle unreservierten Verbindungsressourcen in Benutzung sind ist das aber egal.
    Aktuell benutzte Anzahl Verbindungsressourcen siehe "Zielsystem > Baugruppenzustand > Reiter Kommunikation"

    Harald
    Geändert von PN/DP (05.02.2014 um 15:21 Uhr)
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  8. #8
    Registriert seit
    25.10.2013
    Ort
    Castrop-Rauxel
    Beiträge
    177
    Danke
    36
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hinweis
    Wenn Ihr Programm mehrere Aufträge zu demselben Kommunikationspartner enthält, müssen Sie dafür Sorge tragen, daß Sie diejenigen SFCs, bei denen W#16#80C0 in RET_VAL angezeigt wird, zu einem geeigneten späteren Zeitpunkt erneut aufrufen.

    Reicht auch ein einmaliges aufrufen???

  9. #9
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.314
    Danke
    932
    Erhielt 3.329 Danke für 2.688 Beiträge

    Standard

    Was meinst Du mit "einmaliges aufrufen"?
    Nach einem Aufruf mit REQ=1 muß die SFC solange immer wieder aufgerufen werden bis BUSY=0 ist. (Bei den Folgeaufrufen ist der Wert von REQ egal, der wird ignoriert).

    Harald
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  10. #10
    Registriert seit
    25.10.2013
    Ort
    Castrop-Rauxel
    Beiträge
    177
    Danke
    36
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Ist es den sichergestellt, dass wenn BUSY=0 ist die Verbindung wieder abgebaut ist? Also ich mache das so, nachdem busy den Wert "0" hat springe ich auf die X_PUT Funktion zurück und die läuft dann das letzte Mal durch. Oder müsste ich das nicht machen?

Ähnliche Themen

  1. Step 7 MPI Adresse ändern im bestehenden MPI Netz 300
    Von ivan79 im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 07.12.2013, 22:32
  2. Antworten: 6
    Letzter Beitrag: 23.10.2012, 17:03
  3. Biete: Verschiede B&R Neuteile
    Von Beginner09 im Forum Suche - Biete
    Antworten: 0
    Letzter Beitrag: 30.11.2010, 12:00
  4. Verbindung über MPI mit OPC auf S7-300?
    Von obviate im Forum Hochsprachen - OPC
    Antworten: 8
    Letzter Beitrag: 15.09.2008, 14:28
  5. Verbindung INAT OPC zur S7 300 über MPI
    Von lugo im Forum Hochsprachen - OPC
    Antworten: 2
    Letzter Beitrag: 13.06.2007, 10:33

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •