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

Ergebnis 1 bis 4 von 4

Thema: S71200 per Ethernet mit ASCII 2 Protokoll kommunizieren

  1. #1
    Registriert seit
    12.03.2015
    Beiträge
    5
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo zusammen,
    habe eine "Interessante" Aufgabe bekommen.
    Ich soll über meine integrierte Ethernet Schnittstelle mit einem fremden Treiber / Rechner der auf dem ASCII 2 Protokoll agiert kommunizieren.
    Alternativ kann ich über eine RS232 Schnittstelle kommunizieren. Da die Schnittstelle natürlich Mehrkosten bedeutet würde ich lieber über die Ethernetschnittstelle mit dem System Kommunizieren.
    Ich muss theoretisch folgende Werte einlesen:
    1 x Integer - Wert
    3 x Real Werte

    Ausgeben muss ich folgende Werte:
    3 x Real Werte
    1 x Bool Wert

    Ehrlich gesagt habe ich noch keine Ahnung wie ich das umsetzen soll.
    Über jegliche Hilfe wäre ich sehr dankbar!

    Gruß Robin
    Zitieren Zitieren S71200 per Ethernet mit ASCII 2 Protokoll kommunizieren  

  2. #2
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.197
    Danke
    926
    Erhielt 3.292 Danke für 2.661 Beiträge

    Standard

    - Kann denn das Fremdsystem ebenfalls über eine Ethernet-Schnittstelle kommunizieren oder hat es nur eine serielle Schnittstelle (RS232?) ?
    - besorge Dir die Protokollbeschreibung von dem verwendeten ASCII-2 Protokoll
    - erstelle die Verbindung (vermutlich TCP-Verbindung) und programmiere das Senden+Empfangen mit TSEND_C + TRECV_C

    Wie werden die Anweisungen TSEND_C und TRCV_C für die offene Benutzerkommunikation über die integrierte PROFINET-Schnittstelle der S7-1200 CPU programmiert?

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

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  3. #3
    robinson85 ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    12.03.2015
    Beiträge
    5
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Vielen Dank für deine Antwort Harald.

    Das Fremdsystem kann beide Schnittstellen umsetzen. Die Ethernet - Schnittstelle wird aber vom Kunden bevorzugt.
    Die Beschreibung des Protokolls habe ich vom Kunden erhalten.
    Habe das Dokument mal angehängt. Ich kann nicht wirklich etwas damit anfangen. Das ASCII 2 Protokoll wird ab Seite 11 beschrieben.
    Über jegliche Hilfe wäre ich sehr dankbar.

    Gruß Robin
    Angehängte Dateien Angehängte Dateien

  4. #4
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.197
    Danke
    926
    Erhielt 3.292 Danke für 2.661 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Grobes Vorgehen:
    Halte Dich an das Siemens-Programmierbeispiel für TSEND_C/TRECV_C. Wegen der Zeichen-/String-Verarbeitung könnte eine Programmierung in SCL allerdings vielleicht einfacher sein.

    Werte einlesen:
    Sende mit TSEND_C an das Gerät "$01I<CR>" (16#24 16#30 16#31 16#49 16#0D)
    Das Gerät wird Dir eine Antwort zurückschicken, die etwa so aussieht:
    "0023.0 0020.5 0050.0 0041.0 0080.0 0080.0 0000.0 0020.0 0000.0 0020.2 0000.0 0020.3 0000.0 0020.4 01101010101010101010101010101010 <CR>"
    Diese Antwort hole mit TRECV_C in ein CHAR- oder BYTE-Array oder in einen String und dann kopiere die Zeichen des gewünschten Wertes aus der Nachricht in einen zweiten String, so daß Du den ASCII-Klartext mit STRING_TO_REAL in einen REAL-Wert konvertieren kannst. Die Konvertierung kann man auch "zu Fuß" zeichenweise/ziffernweise vornehmen.

    Werte senden:
    Stelle Dir die Sendenachricht zusammen, etwa so:
    "$01E 0023.0 0050.0 0080.0 0000.0 0000.0 0000.0 0000.0 01101010101010101010101010101010 <CR>"
    Die nötige Konvertierung von REAL zu String (ASCII-Zeichen) würde ich "zu Fuß" programmieren (die 5 einzelnen Ziffern des REAL-Wertes (die Anweisung MOD ist hilfreich) in ASCII-Zeichen wandeln und Dezimalpunkt einfügen).
    Dann sende die Nachricht mit TSEND_C.

    Tip: die Kommunikation kannst Du zunächst mit Hyperterminal testen und simulieren.
    Tip: Das Kommando "$01?" soll den für Dein Gerät speziellen Aufbau des I- und des E-Satzes liefern (Seite 15).

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

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  5. Folgender Benutzer sagt Danke zu PN/DP für den nützlichen Beitrag:

    detr (09.04.2016)

Ähnliche Themen

  1. WinPLC7 V4 VIPA. ASCII Protokoll
    Von com im Forum Sonstige Steuerungen
    Antworten: 7
    Letzter Beitrag: 18.06.2014, 13:43
  2. S7 300 und CP341 ASCII Protokoll
    Von ralfsps im Forum Simatic
    Antworten: 7
    Letzter Beitrag: 10.02.2011, 13:57
  3. CP 340 ASCII Protokoll - keine Funktion
    Von fr4nk im Forum Simatic
    Antworten: 5
    Letzter Beitrag: 12.01.2010, 12:11
  4. PRIM Ethernet - Frei definierbares Protokoll für Ethernet TCP/IP
    Von whatisnesps im Forum Werbung und Produktneuheiten
    Antworten: 0
    Letzter Beitrag: 20.08.2008, 13:51
  5. Ethernet Kommunikation mit ISO Protokoll
    Von Mütze im Forum Simatic
    Antworten: 8
    Letzter Beitrag: 16.05.2008, 08:21

Lesezeichen

Berechtigungen

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