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

Seite 2 von 5 ErsteErste 1234 ... LetzteLetzte
Ergebnis 11 bis 20 von 47

Thema: MODBUS TCP Funktionbausteine Step 7

  1. #11
    Registriert seit
    22.05.2005
    Ort
    sonniges Maifeld
    Beiträge
    1.067
    Danke
    77
    Erhielt 205 Danke für 159 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von Kieler Beitrag anzeigen
    Im letzten Jahr, haben wir von VIPA die abgesetzten Magazine auf "Modbus on TCP" Ebene eingesetzt. Hierzu gibt es auch Bausteine von VIPA. Die funktionieren natürlich auch bei einer S7-300 mit einem Lean CP. Es werden aber nur Coils abgefragt.
    Meinst du die 200er IM253Net ?
    "Man kann auf seinem Standpunkt stehen, aber man sollte nicht darauf sitzen" - Erich Kästner

  2. #12
    Registriert seit
    17.04.2007
    Ort
    Kiel
    Beiträge
    496
    Danke
    162
    Erhielt 67 Danke für 63 Beiträge

    Standard

    Zitat Zitat von Lars Weiß Beitrag anzeigen
    Meinst du die 200er IM253Net ?
    Ja, so nannten die sich wohl. Das ging auch ganz prima. Man darf natürlich nicht extrem viele haben, da man ja für jede eine TCP Verbindung einrichten muss. Hinsichtlich der Coils (Bits) habe ich mich viellecht auch etwas unglücklich ausgedrückt. Natürlich kann man auch AI Karten aus dem IM253 auslesen. Diese werden aber halt Bitweise und nicht Wordweise übertragen.
    So einfach wie möglich – so kompliziert wie nötig.

  3. #13
    Registriert seit
    28.02.2006
    Beiträge
    28
    Danke
    4
    Erhielt 2 Danke für 1 Beitrag

    Standard

    Hier der Link:
    http://www.virgill.scene.org/modbus/

    Bisher ist nur das empfangen von daten implementiert.
    Mehr kommunikation brauchte ich bisher nicht.

    MfG,

    Jochen Feldkötter
    J.Feldkoetter
    CuD GmbH & Co. KG
    ---------------------
    www.virgill.scene.org

  4. Folgende 2 Benutzer sagen Danke zu Virgill für den nützlichen Beitrag:

    Keryx (27.11.2009),Onkel Dagobert (10.02.2009)

  5. #14
    Registriert seit
    27.08.2007
    Ort
    42855 Remscheid
    Beiträge
    23
    Danke
    5
    Erhielt 4 Danke für 3 Beiträge

    Frage

    Hallo zusammen,

    bin MODBUS-Neuling und habe die Aufgabe unsere Maschine über MODBUS TCP an die Auftragsverwaltung des Kunden anzubinden. Die SPS soll als MODBUS Server arbeiten und von der Auftragsverwaltung alle erforderlichen Daten zur Abarbeitung erhalten.

    Die Konfiguration besteht aus:
    VIPA 315-2 AG12 (projektiert als SIEMENS 318-2 Firmware 3.0)
    SIEMENS CP 343-1 LEAN

    Jetzt habe ich nach dem Beispiel von Jochen Feldkötter (herzlichen Dank an dieser Stelle) die Kommunikation in mein Projekt implementiert. Jetzt kommt von der Auftragsverwaltung die MODBUS-Anfrage, der Header wird empfangen, und wenn dann die Nutzdaten abgefragt werden sollen, gibt mir der AG_RECV die Meldung 8180H (Es liegen noch keine Daten vor) raus.

    Mit der Meldung kann ich nicht viel anfangen, selbst wenn keine Daten vorhanden sind, müsste mir doch entsprechend der Anforderung die Registeranzahl beginnend ab dem Startregister ausgelesen werden, selbst wenn in jedem Register Null-Werte stehen würden.

    Ich vermute hier eine fehlende Zuordnung MODBUS-Register zu SPS-Datenbaustein (Stichwort Pre-Mapping), finde aber weder in Hardwareconfig noch NetPro eine Möglichkeit diesbezüglich etwas einstellen zu können.

    Ist das der richtige Ansatz oder kann es noch woanders dran liegen, dass die Kommunikation nicht funktioniert.

    Das Projekt hänge ich mal mit an (Ist noch nicht fertig, deshalb mag es noch unvollständige Teile geben), die MODBUS-Kommunikation findet in den FCs 56-59 statt, die zugehörigen DBs sind 400-402. Der Sendeteil ist gesperrt, weil die SPS die Anfragen von der Auftragsverwaltung bekommt.

    Hoffe ich habe mich verständlich ausgedrückt und das mir jemand helfen kann.

    Gruß Patrick
    Angehängte Dateien Angehängte Dateien
    Zitieren Zitieren Adressierung MODBUS TCP Register  

  6. #15
    kürbis85 ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    27.06.2007
    Beiträge
    4
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Moin moin,

    ich glaube eine VIPA und ein original Lean-CP sind nicht unbedingt kompatibel! Die Vipa_Steuerung unterstützt die CP-funktionen einfach nicht! Zumindest ist das bei der Speed 7 sb315 mit der kleinen Progrmmier-Ethernet-Schnittstelle so! Wie das bei deiner Steuerung aussieht weiß ich nicht! Ein Anruf bei Vipa hat mich damals weiter gebracht!

    Gruß
    Kürbis

  7. #16
    Registriert seit
    07.06.2006
    Ort
    Bayern
    Beiträge
    624
    Danke
    27
    Erhielt 156 Danke für 139 Beiträge

    Standard

    Servus,

    Also ich hab mir mal dein Projekt angeschaut.

    1. In NetPro solltest du bei deiner TCP Verbindung anstelle von Fetch/Write Send/Receive einstellen.

    2. Deine Steuerung muss als Modbus-Server arbeiten. D.h. wenn sie vom Modbus-Client (Master) nicht gefragt wird, dann hat sie die Klappe zu halten.
    Bei deiner Konstellation schickst du jedoch ständig selber Modbus-Requests (Anfragen) - du versuchst also selber als Client (Master) zu arbeiten.

    3. In deinem Empfangs-FC gehst du davon aus, dass du ein Modbus-Telegramm mit 19 Byte Nutzdaten erhälst - ist das wirklich so. Der CP343 schickt dir nur dann 19 Byte, wenn er auch wirklich 19 Byte in seinem Empfangspuffer zur Verfügung hat ! Wenn der Client (Master) jetzt ein Telegramm mit weniger als 19 Byte Nutzdaten schickt, dann sagt der AG_Receive freilich es sind keine Daten vorhanden.

    Ich vermute hier eine fehlende Zuordnung MODBUS-Register zu SPS-Datenbaustein (Stichwort Pre-Mapping), finde aber weder in Hardwareconfig noch NetPro eine Möglichkeit diesbezüglich etwas einstellen zu können.
    Wer oder wo soll denn bitte hier was mappen. Das ganze wie von dir programmiert ist ja noch lange kein richtiger Modbus-Treiber - sondern lediglich ein Ansatz als Modbus Client (Master) und schon lange nicht als Modbus Server (Slave). Das mappen bzw. zuordnen der Modbus-Daten zu deinen Siemens-Datenbausteinen das müsstest du dann schon noch ausprogrammieren.

    Ich glaub so wird das ganze nichts. Du solltest dir mal bei

    http://www.modbus.org

    die Modbus-Spezifikationen besorgen und ein bissel einlesen. Und vor allem den Unterschied zwischen Client/Server bzw. Master/Slave verstanden zu haben.

    Was wird denn von der Auftragsverwaltung abgefragt bzw. geschrieben ?
    Kann das ganze mit einem Modbus-Auftrag abgewickelt werden oder werden von der Auftragsverwaltung mehrere Aufträge der Reihe nach abgearbeitet.

    Wenn du einen Modbus-Server erstellen willst, der mit mehreren Anfragen zurecht kommen soll, dann wird das schon ein bissel komplizierter.

    Die Modbus-Anfragen von der Auftragsverwaltung haben sicherlich nicht die gleiche Nutzdatenlänge, du musst also jeweils im Header auswerten wieviele Nutzdaten noch folgen und dann einen variablen Any-Pointer zusammenbauen und diesem deinem Nutzdaten Receive übergeben.

    Das was du dann zurückschicken musst (Send) hängt dann auch wieder davon ab, was die Auftragsverwaltung wissen will (Functioncode). Das ganze ist dann natürlich auch variabel in der Länge.

    Weiters musst du den Transaction-Identifier (Byte 0 und 1 im Empfangstelegramm) auswerten und jeweils in deinem Sendetelegramm wieder zurückschicken.

    Im übrigen wirst du dir bei der ganzen Sache mit FUP gewaltig die Finger brechen - wenn das was vernünftiges werden soll, dann musst du die Sache in AWL angehen.

    usw. usw.

    Vielleicht kommst du doch schneller und billiger zum Ziel, wenn du die fertigen Bausteine von Siemens verwendest. Bevor du hier einige Stunden in den Sand setzt, und das ganze dann doch nichts wird.

    Mfg
    uncle_tom

  8. Folgender Benutzer sagt Danke zu uncle_tom für den nützlichen Beitrag:

    Keryx (27.11.2009)

  9. #17
    Registriert seit
    27.08.2007
    Ort
    42855 Remscheid
    Beiträge
    23
    Danke
    5
    Erhielt 4 Danke für 3 Beiträge

    Standard

    Hallo Uncle Tom,
    danke für die Hinweise.

    Zu 1.: Das war einer der letzten Versuche in der Nacht, es stand vorher auf Send/Receive und wird es wieder werden.

    Zu 2.: Die Modbus-Requests sind gesperrt, eben weil die SPS als Server arbeiten soll.

    Zu 3.: Das könnte das Problem gewesen sein. Muss ich noch einmal prüfen, aber das kann ich erst ab Dienstag wieder. Die Anlage wurde heute in die Schweiz geschickt und ich werde am Dienstag folgen.

    Wie immer war das Zeitfenster mehr als eng, es wurden Verfahren verkauft, die noch nicht entwickelt waren, es gab Probleme mit diversen Kaufteilen, so dass ich insgesamt zu spät die Modbus-Thematik beginnen konnte. Die Spezifikationen habe ich schon gelesen, werde das aber noch einmal konkret auf den Server-Betrieb wiederholen.

    Die Daten der Auftragsverwaltung sind konstant. Bei Auftragsbeginn sind es 48 Byte die ich bekomme, nach Abarbeitung des Auftrags gehen 64 Byte zurück. Von daher ist das Datenaustauschvolumen relativ gering und findet nur am Anfang bzw. Ende statt. Mehrere Aufträge müssen nicht verwaltet werden.

    Dann werde ich mich mal auf die Suche begeben, wie eine Zuordnung zu den Registern zu programmieren ist. Falls es hierzu noch ein paar Tipps gibt, nehme ich diese gerne an .

    Werde am Montag noch einmal mit VIPA telefonieren, grundsätzlich schien der CP aber schon zu funktionieren. Die onboard-Schnittstelle habe ich herausgenommen, da der Betrieb mit beiden immer mal wieder Probleme machte, aber ansonsten hoffe ich, das der Betrieb an der VIPA möglich ist.

    Gruß Patrick

  10. #18
    Registriert seit
    27.08.2007
    Ort
    42855 Remscheid
    Beiträge
    23
    Danke
    5
    Erhielt 4 Danke für 3 Beiträge

    Standard

    Hallo zusammen,

    mein heutiges Telefonat mit dem VIPA Service hat ergeben, das seit Freitag (27.11.2009) ein Firmware Update für die VIPA315-2AG12 existiert, mit dem die erforderliche Funktionalität für die SIEMENS CP`s gegeben sein soll.

    Habe das Update jetzt im Gepäck und werde morgen beim Kunden in der Schweiz die Aktualisierung vornehmen.

    Gruß Patrick
    Zitieren Zitieren VIPA CPU und SIEMENS CP  

  11. #19
    Registriert seit
    22.05.2005
    Ort
    sonniges Maifeld
    Beiträge
    1.067
    Danke
    77
    Erhielt 205 Danke für 159 Beiträge

    Standard

    Hier, die AWL-Quelle für einem Modbus/TCP Server, also einen Modbus-Slave. Getestet mit 31X und CP343-1 LEAN. Du brauchst nur eine passive unspezifizierte TCP-Verbindung (Port 502) in NetPro anlegen, versorgst den Baustein mit den Verbindungsparametern und fertig. Um die Kommunikation zu testen eignet sich MODSCAN 32 ganz gut, das Simuliert einen Modbus/TCP Client.

    Hab grad gesehen das in dem Baustein noch Z1-Z8 verwendet werden, hab damit beim testen die Anzahl der Funktionsaufrufe getestet...wenn die Stören schmeiss sie raus. Werden nicht benötigt.
    Angehängte Dateien Angehängte Dateien
    Geändert von Lars Weiß (30.11.2009 um 10:48 Uhr)
    "Man kann auf seinem Standpunkt stehen, aber man sollte nicht darauf sitzen" - Erich Kästner

  12. Folgende 10 Benutzer sagen Danke zu Lars Weiß für den nützlichen Beitrag:

    boN (23.02.2012),C.Duermoser (30.04.2014),DaniD (02.07.2014),JesperMP (04.10.2014),Keryx (30.11.2009),Kieler (06.03.2014),Onkel Dagobert (14.12.2013),Patrick87 (06.10.2014),scrolllkock (03.03.2011)

  13. #20
    Registriert seit
    27.08.2007
    Ort
    42855 Remscheid
    Beiträge
    23
    Danke
    5
    Erhielt 4 Danke für 3 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo zusammen,

    nachdem ich in der Schweiz leider nur sehr eingeschränkte Möglichkeiten hatte das Internet zu nutzen, möchte ich jetzt die Gelegenheit nutzen um mitzuteilen, dass die Modbus TCP Anbindung mit dem Baustein von Lars Weiß nach dem Update der VIPA CPU auf Anhieb funktioniert hat.

    Hoffe ich kann mich irgendwann einmal mit einem nützlichen Beitrag revangieren.

    Gruß Patrick

  14. Folgender Benutzer sagt Danke zu Keryx für den nützlichen Beitrag:

    Lars Weiß (20.12.2009)

Ähnliche Themen

  1. Antworten: 2
    Letzter Beitrag: 17.08.2012, 14:56
  2. Funktionsaufrufe Online step by step ansehen
    Von snowleopard1702 im Forum Simatic
    Antworten: 7
    Letzter Beitrag: 03.05.2011, 07:41
  3. Antworten: 10
    Letzter Beitrag: 29.10.2010, 17:06
  4. Antworten: 0
    Letzter Beitrag: 05.08.2010, 08:14
  5. Antworten: 2
    Letzter Beitrag: 24.01.2006, 06:01

Lesezeichen

Berechtigungen

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