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

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 15

Thema: Senden über Ethernet

  1. #1
    Registriert seit
    26.11.2009
    Beiträge
    46
    Danke
    24
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,

    Ich mach gerade meine Technikerarbeit und versuche eine Kommunikation zwischen Mitsubishi Robotern und ner S7 314 über Ethernet herzustellen.

    Dazu brauche ich ja höchstwahrscheinlich diesen FC 5 AG_Send und den AG_RECV oder ? und was muss ich dort auf die Eingänge Send und Leng anlegen ich kann mit der Simatic Hilfe nichts anfangen.

    Nächstes Problem: Für den Vorgang muss ich die zu übertragenden Daten in einen DB legen oder ? wenn ja wie ?

    Helfet dem Dummen...


    Greetz Pete
    Zitieren Zitieren Senden über Ethernet  

  2. #2
    Registriert seit
    27.07.2007
    Beiträge
    223
    Danke
    17
    Erhielt 42 Danke für 40 Beiträge

    Standard

    und was muss ich dort auf die Eingänge Send und Leng anlegen ich kann mit der Simatic Hilfe nichts anfangen.
    Send ist ein Any-Zeiger auf deine Sendedaten, z.B.:
    Code:
    P#db99.dbx10.0 byte 240
    In LEN gibtst du die Länge der gesendeten Daten in bytes vor.
    Nächstes Problem: Für den Vorgang muss ich die zu übertragenden Daten in einen DB legen oder ? wenn ja wie ?
    Ja, die Empangs- oder Sendedaten werden in einem Datenbaustein oder Merkerbereich abgelegt. Einfügen S7-Baustein -> DB -> Global DB

    Ich bin mir aber nicht sicher, ob die AG_SEND und die AG_RECV für deine Anwendung geeignet sind?

    Beispiel mit AG_SEND und AG_RECV:
    http://support.automation.siemens.co...ew/de/17853532

  3. #3
    Registriert seit
    26.11.2009
    Beiträge
    46
    Danke
    24
    Erhielt 0 Danke für 0 Beiträge

    Standard

    ok danke erstmal, was ist das mit dem

    P#db99.dbx10.0 byte 240
    Der db99 ist der db den ich erstellt hab und für was steht das dbx10.0 und die 240 byte ?

    Kann ich in dem db eine Beispiel Variable anlegen ? z.B.

    Adresse Name Typ Anfangswert
    +0.0 Var1 INT 23

    wie bekomm den AG_Send dazu diese Variable an meine ID 1 zuschicken ?

  4. #4
    Registriert seit
    27.07.2007
    Beiträge
    223
    Danke
    17
    Erhielt 42 Danke für 40 Beiträge

    Standard

    Genau DB99 ist der Datenbaustein, in diesem Fall 99.
    DBX10.0 ist die Adresse im DB, in diesem fall 10 (DBW10 für Wort oder DBX10.0 für Bool). Und die 240 byte ist der Wiederholfaktor. Dieses Beispiel gibt einen Bereich von 240 bytes, beginnenend bein Datenwort 10 im DB99 an.
    Adresse Name Typ Anfangswert
    +0.0 Var1 INT 23
    Genau so. Du kannst auch zur bessereren Übersicht Strukturen verwenden. In diese Strukturen kannst du wieder deine einzelnen Variablen anlegen.

    wie bekomm den AG_Send dazu diese Variable an meine ID 1 zuschicken ?
    Beispiel für deine Variable:
    Code:
    SEND := P#DB99.DBX0.0 byte 2
    LEN:=2
    Zunächst muss dieser Datenbereich auch vorhanden sein. Mit dem Parameter ACT(bool) kannst du einen Auftrag anstoßen.

    Geh mal auf den Link im Beitrag #2, da findest du ein Beispiel. Vielleicht hilft dir das weiter.
    Geändert von Hohlkörper (26.11.2009 um 14:18 Uhr)

  5. #5
    Registriert seit
    26.11.2009
    Beiträge
    46
    Danke
    24
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Ok check,...

    Sieht jetzt so aus Ich hab nen db1 darin hab ich die variable angelegt

    +0.0 var1 INT 23

    dann den AG_Send so beschaltet

    send p#db1.dbx0.0 byte 2
    len 2
    ACT E124.0 hardwaremäßig von 0 ->1 geschaltet

    dann bringt er error und im status 8181 und 8183

    wenn ich den len auf 3 setze bringt er nur noch 8185
    ???

    Hab das Programm mal durch geschaut hat mir aber net viel geholfen irgendwie.

    Was heisst "Zunächst muss dieser Datenbereich auch vorhanden sein." Ich leg den Datenbereich mit der Variable doch fest ?


    pete

  6. #6
    Registriert seit
    27.07.2007
    Beiträge
    223
    Danke
    17
    Erhielt 42 Danke für 40 Beiträge

    Standard

    Ich wollte darauf hinweisen, dass der DB auch in die CPU geladen wurde bevor du was sendest.

    Zu den Fehlermeldungen:
    8181 Auftrag läuft.
    8183 Die Projektierung fehlt oder der ISO-/TCP-Dienst im angegeben.
    8185 Parameter LEN größer als Quell-Bereich SEND.

  7. #7
    Registriert seit
    27.07.2007
    Beiträge
    223
    Danke
    17
    Erhielt 42 Danke für 40 Beiträge

    Standard

    Was mir gerade noch einfällt. Das ganze funktioniert nur mit projektierten Verbindungen. Du musst erst in NetPro eine Verbindung zu deinem Partner projektieren.
    Auszug aus der Hilfe:
    Eingeben einer neuen Verbindung

    Eine Verbindung definiert die Kommunikationsbeziehung zwischen zwei Teilnehmern. In ihr sind festgelegt:

    • die beiden Kommunikationsteilnehmer.
    • der Typ der Verbindung (z. B. S7-, Punkt-zu-Punkt-, FMS-, ISO-on-TCP-, FDL-Verbindung oder ISO-Transportverbindung).
    • spezielle Eigenschaften, die vom Typ der Verbindung abhängen (z. B. ob eine Verbindung permanent aufgebaut bleibt oder ob sie im Anwenderprogramm dynamisch auf- und abgebaut wird).

    Voraussetzung
    Sie befinden sich in der Netzansicht (NetPro).
    Vorgehensweise

    1. Markieren Sie in der Netzansicht die Baugruppe, für die eine Verbindung angelegt werden soll.
      Ergebnis: Die Verbindungstabelle der markierten Baugruppe wird im unteren Teil der Netzansicht dargestellt.
    2. Doppelklicken Sie auf eine leere Zeile der Verbindungstabelle oder markieren Sie eine Zeile und wählen den Menübefehl Einfügen > Verbindung.
    3. Wählen Sie im Dialogfeld "Neue Verbindung" den gewünschten Verbindungspartner. Hilfe zur Auswahl des Verbindungspartners finden Sie in der Online-Hilfe zu diesem Dialogfeld.
    4. Legen Sie den Typ der Verbindung fest.
    5. Aktivieren Sie das Kontrollkästchen "Eigenschaftsdialog aufblenden", wenn Sie nach "OK" oder "Hinzufügen" die Eigenschaften der Verbindung anschauen oder ändern wollen:
      Der Inhalt des Dialogfeldes "Eigenschaften..." ist abhängig von der gewählten Verbindung; Hilfe zum Ausfüllen finden Sie in der Online-Hilfe zu diesem Dialogfeld.
      Ergebnis: STEP 7 trägt die Verbindung in die Verbindungstabelle des lokalen (d. h. des markierten) Teilnehmers ein und vergibt für diese Verbindung die Lokale ID und ggf. die Partner-ID, die Sie bei der Programmierung der Kommunikations-Funktionsbausteine benötigen (Wert für den Bausteinparameter "ID").

  8. Folgender Benutzer sagt Danke zu Hohlkörper für den nützlichen Beitrag:

    Power_Pete (26.11.2009)

  9. #8
    Registriert seit
    26.11.2009
    Beiträge
    46
    Danke
    24
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Ich hab schon alle Bausteine geladen das ist klar und die Netproübersicht hab ich sammt den Verbindungen auch erstellt. Von dort bekomm ich ja meinen LADDR und meine ID.

    Also der parameter len muss gleich großm sein wie die größen angabe beim Send ?

    Woher hast du die Fehlermeldung Beschreibung ?


    mfg Pete

  10. #9
    Registriert seit
    18.03.2008
    Beiträge
    267
    Danke
    3
    Erhielt 26 Danke für 26 Beiträge

    Standard

    AG_send / AG_Recv sind schon richtig, wenn du eine CP verwendest (was du bei einer 314 wahrscheinlich musst).
    Als Alternative kannst eine CPU 315-2PN/DP nehmen, da würdest du dann die Bausteine T_Connect, T_send, T_Recv verwenden.

  11. #10
    Registriert seit
    26.05.2009
    Beiträge
    541
    Danke
    35
    Erhielt 78 Danke für 69 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Woher hast du die Fehlermeldung Beschreibung ?
    Geh mal auf deinem Baustein und drück F1!
    Ganz unten findest du 2 links mit den Fehlerbeschreibungen.

    Die Hilfe von Step7 ist wirklich nicht schlecht. Man muss sie nur mal nutzen.

    Hast du denn eine CP-Baugruppe? (vermutlich ja)
    Was sagt denn der Diagnosepuffer der CP bzw. ist die CP in RUN oder hat sie einen Sammelfehler?

    Gruß wolder

Ähnliche Themen

  1. String per Ethernet an Server senden
    Von Andy082 im Forum CODESYS und IEC61131
    Antworten: 11
    Letzter Beitrag: 19.05.2010, 20:55
  2. Senden via Ethernet
    Von amantido im Forum Simatic
    Antworten: 29
    Letzter Beitrag: 22.04.2010, 23:05
  3. 1 KB über MPI Senden
    Von Hocheck im Forum Simatic
    Antworten: 17
    Letzter Beitrag: 22.09.2009, 15:45
  4. Antworten: 7
    Letzter Beitrag: 19.05.2009, 11:44
  5. Daten über DB senden
    Von bigannang im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 08.11.2007, 22:50

Stichworte

Lesezeichen

Berechtigungen

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