Codesys Kommunikation mit S7 herstellen

Sawascwoolf

Level-1
Beiträge
23
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Forum,

ich möchte gerne von CodeSys aus auf die Sensorwerte der S7 zugreifen und auch Aktorwerte durch Codesys vorgeben.

Leider kann ich keine Anleitung finden, die mir erklärt wie ich hier vorgehen kann.


Zwecks meiner Diplomarbeit muss ich folgendes realisieren:

Die bestehende Fischertechnik-Anlage soll über eine in der Cloud laufende Steuerung gesteuert werden.


Folgende Hardware steht mir zur Verfügung (die I/O-Karten lasse ich jetzt mal weg, da diese für die Kommunikation mE unwichtig sind):
*S7-CPU315-2
**CP343-1 IT

Die SPS ist über die CP343-1 IT mit dem Netzwerk verbunden und zusätzlich ist ein PC über Profibus (SIMATIC CP 5611) direkt mit der CPU verbunden.


Die Kommunikation zwischen zwei laufenden Codesys SoftSPS' funktioniert bereits problemlos, ich muss nun also eine Möglichkeit finden:
a) die Daten vom PC zur S7 und umgekehrt zu übertragen
b) falls möglich die Daten von der S7 direkt an die Cloud zu senden


Vielen Dank schonmal!
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Die Cloud bezieht sich auf eine weitere Soft-SPS von CodeSYS, welche auf einem Internetserver (Amazon EC2) läuft. Eine Kommunikation zu diesem PC ist nur über Netzwerk möglich.

Aktuell habe ich nur die Simatic CP 5611 (http://w3.siemens.com/mcms/industri...anschluesse-pg-pc/cp5611/seiten/cp5611a2.aspx) als Schnittstelle zur Verfügung.

Falls ich diese Karte mit Codesys zum laufen bekomme habe ich sowohl
- Master,
- Slave als auch
- FDL

Nach meiner bisherigen Recherche wird das mit dieser Karte leider nicht funktionieren, d.h. ich muss sowieso eine neue anschaffen und somit kann ich die Variante wählen welche mir hier empfohlen wird.
 
Wenn beide SPSen am Ethernet-Netzwerk hängen, ist es dann wohl das einfachste den Datenaustausch über eine TCP-Verbindung abzuwickeln.
Dann überlegst du dir wie ein solches Telegramm aufgebaut seint soll, und stellst dann auf beiden SPS-Programmen dieses Telegramm zusammen und verschickst es an den Partner. Sinnvollerweise verwendest du dazu ein Telegramm mit fester Datensatzlänge, das macht vieles einfacher. Du musst nur beachten, dass die S7 eine andere Byte-Reihenfolge als die üblichen anderen Systeme besitzt. Bedeutet, wenn du ein int16 von der S7 an die Codesys SPS verschickst, musst du dort Hi- und Lo-Byte tauschen um auf den gleichen Wert zu kommen. Oder du tauschst es auf S7-Seite schon vor dem versenden auf die übliche Netzwerk-Byteorder, dann hast du es standardisiert.
 
Ich habe bisher nur recht einfache Sachen programmiert, kennst du vielleicht ein Tutorial dazu?

Ich muss glücklicherweise nur Boolsche Werte übertragen, daher muss ich micht mit der Hi-Lo Problematik nicht beschäftigen.
 
Sorry für den Doppelpost, aber ich habe noch eine kleine Frage:
Ich habe nun angefangen das verlinkte Tutorial zu befolgen und das Programm einzurichten. Wie es so ist tauchten hierbei einige Fehlermeldungen auf.

Bevor ich nun anfange mich auf die Fehlersuche zu begeben habe ich eine kurze Frage:
Wenn ich dem Netzwerkmodul (CP343-IT) eine IP-Adresse zugewiesen habe reagiert es auf Ping-Anfragen von einem PC?

Meines reagiert darauf nicht.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ja ich habe schon alle mir sinnvoll erscheinenden Einstellungen für das Netzwerk Modul getestet und jeweils übersetzt und hochgeladen.

Die Anlage ist an das Netzwerk der Universität angeschlossen. Ich werde morgen mal versuchen ein eigenes Netzwerk aufzubauen um das Uni-Netz als Fehlerquelle gänzlich auszuschließen.
 
Zurück
Oben