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

Ergebnis 1 bis 4 von 4

Thema: Datenübertragung von SPS zum PC

  1. #1
    Registriert seit
    29.05.2007
    Beiträge
    15
    Danke
    1
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo Leute,

    ich möchte Daten (400 - 800 Bit) von einer SPS(CPU 315-2DP mit CP 343-1 IT) zu einem PC senden, dazu verwende ich auf der SPS Seite den Baustein AG_SEND (FC 5). Ich habe das Ganze mit TCP und UDP ausprobiert. Hier ist der Code – Ausschnitt, der für das Senden verantwortlich ist:

    U DB3.DBX 0.0
    S DB3.DBX 4.0

    UN DB3.DBX 0.0
    R DB3.DBX 4.0


    CALL "AG_SEND"
    ACT :=DB3.DBX4.0
    ID :=1
    LADDR :=W#16#100
    SEND :=P#DB6.DBX0.0 BYTE 50
    LEN :=50
    DONE :=DB3.DBX0.0
    ERROR :=DB3.DBX0.1
    STATUS:=DB3.DBW2

    Folgende Frage habe ich:

    Wenn ich die Zykluszeit künstlich verlängere, so wird ab einer bestimmten Zyklusdauer (etwa 10 ms) konstant alle zwei Zyklen ein Telegramm übertragen. Wählt man die Zykluszeit sehr groß, etwa 1 s, so wird trotzdem alle zwei Zyklen ein Wert übertragen. Zuerst dachte ich, dass das am TCP liegt, weil nach dem Senden der Nachricht eine Quittung erwartet wird. Als ich die Kommunikation mit UDP realisiert habe, wurde immer noch nur alle zwei Zyklen ein Datenpacket übertragen. Da die Kommunikation als nebenläufiger Prozess ausgeführt wird, müsste es doch möglich sein jeden Zyklus ein Wert zu senden.

    Kennt jemand vielleicht die Ursache, warum die Übertragung eines Telegramms genau 2 Zyklen dauert?

    Für Eure Hilfe wäre ich sehr dankbar.
    Zitieren Zitieren Datenübertragung von SPS zum PC  

  2. #2
    Registriert seit
    15.09.2006
    Ort
    Hessen
    Beiträge
    361
    Danke
    38
    Erhielt 36 Danke für 30 Beiträge

    Standard

    Ich denke, dass das durch deinen Code am Anfang kommt.

    Im ersten Zyklus ist DB3.DBX0.0 auf 0
    4.0 wird gesetzt
    Das Telegramm wird gesendet.
    Nun wird im nächsten Zyklus "done" gesetzt und "act" zurückgenommen, aber dadurch wird in diesem Zyklus kein Telegramm gesendet, sondern erst wieder im Nächsten. Und dann beginnt der Kreis von neuem.

    Ich habe leider noch nicht das Vergnügen mit Bussystemen und Vernetzung gehabt, würde aber behaupten wollen, dass es daher kommt.

    Bis denn die Freaks anrücken und es genauer wissen

    Gruß, Tobias
    Isn't simulating stimulating?

  3. #3
    Registriert seit
    04.02.2007
    Beiträge
    2.544
    Danke
    167
    Erhielt 731 Danke für 528 Beiträge

    Standard

    TobiasA hats ja schon beschrieben, das es so wie es programmiert wird immer jeden zweiten Zyklus geschieht.
    ACT reagiert so wie ich mich erinnere ja auf eine positive Flanke für den Start, deshalb benötigtst du immer zwei Zyklen.
    Eine Lösung wären zweimal den Baustein aufrufen , jeweils immer um einen Zyklus versetzt.
    Die richtige Art ist aber die schon vorhanden, erst senden wenn der letzte AUftrag zu Ende ist.

  4. Folgender Benutzer sagt Danke zu jabba für den nützlichen Beitrag:

    quant81 (31.07.2007)

  5. #4
    quant81 ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    29.05.2007
    Beiträge
    15
    Danke
    1
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo Jabba,

    danke für Eure Antworten. Wenn man zwei AG_SEND Bausteine verwendet, bei denen einer um einen Zyklus versetzt ist, dann funktioniert es tatsächlich die Daten von jedem Zyklus zu übertragen.

Ähnliche Themen

  1. S5 L1 Bus Datenübertragung
    Von kafrank im Forum Simatic
    Antworten: 4
    Letzter Beitrag: 04.11.2011, 10:03
  2. Datenübertragung Profinet
    Von ibanesch im Forum Feldbusse
    Antworten: 8
    Letzter Beitrag: 20.06.2010, 19:00
  3. Datenübertragung DSL
    Von L.T. im Forum Feldbusse
    Antworten: 13
    Letzter Beitrag: 21.01.2010, 10:54
  4. Datenübertragung PC -SPS
    Von arena im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 15.06.2008, 20:01
  5. Datenübertragung RS 232
    Von margral2 im Forum Suche - Biete
    Antworten: 1
    Letzter Beitrag: 15.09.2005, 11:24

Lesezeichen

Berechtigungen

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