Step 7 Kommunizieren über Serielle Schnittstelle RS-232

Ertan Toker

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

ich möchte gerne die Siemens S7 mit einem PC verbinden und über die Serielle Schnittstelle kommunizieren lassen.
Vor gefühlten 20 Jahren habe ich mal mit Simatic S5 programmiert und bin was S7 angeht sehr unerfahren.

Meine Frage wäre:

- Brauche ich für die Kommunikation einen extra Baugruppe ?
- Wenn ja welche wäre das?
- Kann man die Baugruppe mit jeder CPU betreiben oder gibt es da nur einzelne die das können?
- Welche Software brauche ich um mit der seriellen Schnittstelle zu kommunizieren. Sprich gibt es von S7 Programmiersoftware unterschiedliche Versionen wie Standard oder Enterprise ?
- Muss man bei der Kopplung der RS-232 Schnittstelle auf Spannungsunterschiede achten?

Bedanke mich jetzt schon mal für die Antworten und freue mich auf eine angeregte Diskussion.

VG
Ertan Toker
 
Auch wenn das nicht wirklich deine Fragen beantwortet, aber warum möchtest du über RS-232 kommunizieren? Wenn du "sehr unerfahren" mit der S7 bist und somit eh alles "neu" aufsetzen musst, dann würde ich auch direkt über TCP/IP kommunizieren. Damit wirst du kurz-, mittel- und langfristig glücklicher mit, glaub mir. ;-)
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Sven,

ich möchte gerne Daten zum Rechner senden.
Bei TCP/IP brauche ich noch ein Protokoll um mit Diensten auf dem Rechner zu kommunizieren.
Eine Protokoll wäre hier das HTTP.
Da ich aber nicht weiß ob die S7 Geräte bzw die S7 Programmiersprachenumfang HTTP Anfragen senden kann habe ich diese schon für mich im Vorfeld ausgeschlossen.

VG Ertan Toker
 
Welche S7-Type?

Jedenfalls gebe ich Sven recht, mit RS232 wird das eher ein Schuss ins Knie.
Wo sollen die Daten endgültig im PC stehen? Kannst Du auf einen OPC zugreifen?
 
Ich verstehe noch nicht genau, was du vorhast.

Daten aus der S7 lesen und auf einem Rechner speichern. In welchem Format? Tabellarisch oder grafisch? Welche S7?
Wozu dann HTTP?
Für die Anbindung der S7 über MPI/DP an einen PC über Ethernet gibt es entsprechende Adapter, z. B. NetLink-PRO compact, die mit einem entsprechenden Kommunikationstreiber für die SimaticTools ausgeliefert werden.
Mit welcher Software möchtest du die Daten denn auslesen? Auch hier gibt es für den reinen Lesezugriff fertige Softwarelösungen (SuFu "Datenlogger").
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen,

@borromeus: Leider weis ich nicht welcher S7 Type dafür geeignet ist. Daher auch meine Frage ob man eine spezielle CPU braucht.

@Sven: Ich möchte keine Daten lesen sondern Daten von der S7 Richtung PC oder andere Komponenten die die RS-232 Schnittstelle besitzen senden. Eventuell ist da nicht immer ein PC angeschlossen daher auch die RS-232 Schnittstelle. Die Daten werden dann von einem Programm welches ich selber realisieren werde dargestellt. Also selber die Serielle Schnittstelle auslesen und darstellen.
 
Bei TCP/IP brauche ich noch ein Protokoll um mit Diensten auf dem Rechner zu kommunizieren.
Eine Protokoll wäre hier das HTTP.

also erstmal die Technik:

RS232:
Daten: ist ein Stream/Strom ohne definiertes Ende
Protokoll: üblicherweise Werte nicht einfach so durch die Leitung gejagt sondern in ein Protokoll gesteckt das ein Paket-Ende erkennbar macht z.B. \n\r (muss aber nicht Text sein)

TCP/IP
Daten: ist ein Stream/Strom ohne definiertes Ende, aber mit Checksumme und automatischem Re-Send bei Leitungsproblemen
Protokoll: selbstgemacht ein einfaches Länge+Date, Länge+Daten usw., oder per RFC1006 (was fast genau das ist)

und TCP/IP hat erstmal nichts mit HTTP zu tun - das ist auch nur ein Protokoll sonst nichts

ansonsten gibt es noch Bibliotheken die dir Zugriff auf deine S7 vom PC aus erlauben (Libnodave, AGLink, Prodave, Snap7...)

Beschreib doch einfach mal genau was du erreichen möchtest - ganz frei von deinen Umsetzungsideen - was soll das Ergebnis sein

und welche Programmiersprache kannst du auf PC Seite?
 
@Ertan ich muß den Vorrednern zustimmen. Vergiss RS232, RS232 ist tot.

Mach TCP/IP das können mittlerweile sogar die billigsten Siemens CPUs (z.B. 1211C).
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich möchte Daten von der S7 zu einem anderen Gerät senden das über die Serielle Schnittstelle verbunden ist.

Beispiel
Die Zahl 20 will ich senden und auf dem anderen Gerät die 20 wieder auslesen.

Das Ergebnis soll sein, dass von der S7 aus aktiv die Zahl 20 an das Gerät verwendet wird das angeschlossen ist.
 
RS232 soll nur zum Einsatz kommen, weil sogar jeder billige Microcontroller RS232 kann. Ich will keine großen Daten senden einfach nur eine kleine Zahl.

Ich habe mal recherchiert und diese Baugruppe gefunden und mit der kann man unterschiedliche Geräte anschließen

SAS 340 Kommunikationsbaugruppe
 
Schau das Problem ist folgendes: Du willst einen Vorschlag für eine CPU Type. Die Auswahl der CPU Type richtet sich nachdem wie groß dein Programm werden wird, wie viele EAs du haben wirst usw. Von daher kann dir keine was empfehlen wenn man nicht weiß was du machen willst. Die Zahl 20 über RS232 zu versenden wird wohl nicht die Endanwendung sein oder?
 
Und nur mal so als Anhaltswert betreffend Microcontroller: Bei einem Hobbyprojekt verwende ich einen ESP8266-01. Und da verwende ich nicht nur TCP sondern sogar HTTP weil das heute das Verbreitetste und Einfachste ist was du machen kannst. Und da versende ich sogar 2 Werte :)
 
Zuletzt bearbeitet:
Hallo Ertan Toker,

du solltest aber auch wissen das mit dem SAS 340 Kommunikationsbaugruppe alleine nicht getan ist, du brauchst dann auch noch eine SPS.
Keine Ahnung was der SAS 340 Kommunikationsbaugruppe kostet. aber vermute eine SPS mit Ethernetanschluss wird vielleicht billiger sein und hat einen höheren Wiederverwendungswert.

gruss der pinke Panther
 
Hallo Ertan Toker,

du solltest aber auch wissen das mit dem SAS 340 Kommunikationsbaugruppe alleine nicht getan ist, du brauchst dann auch noch eine SPS.
Keine Ahnung was der SAS 340 Kommunikationsbaugruppe kostet. aber vermute eine SPS mit Ethernetanschluss wird vielleicht billiger sein und hat einen höheren Wiederverwendungswert.

gruss der pinke Panther

Die Vorgabe ist aber nun mal das über die Serielle Schnittstelle kommuniziert wird. An der Tatsache kann ich leider nichts ändern.
So wie ich das sehe ist die SAS340 kein original Siemens Baugruppe sondern von der Firma Helmholz.

Ich muss einen Durchstich entwickeln mit dem ich nachweisen kann, dass das möglich ist.
Was gesendet wird ist im Grunde egal. Es soll gezeigt werden das das Senden möglich ist.
Daher auch mein Beispiel mit der 20.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich will von der S7 aus über die Schnittstelle einen Wert senden!

Ich glaub ich gebs auf...

Edit:

Ich muss einen Durchstich entwickeln mit dem ich nachweisen kann, dass das möglich ist.
Was gesendet wird ist im Grunde egal. Es soll gezeigt werden das das Senden möglich ist.
Daher auch mein Beispiel mit der 20.

?? Wieso soll das Senden nicht möglich sein? Natürlich ist es möglich die Frage ist ob es sinnvoll ist. Und das ist vermutlich zu negieren, obwohl wir das nie erfahren werden wenn die einzige Anwendung das Versenden einer Zahl ist. Blöde Frage Wieso nicht BCD? Das kann wirklich jedes System!
 
Zuletzt bearbeitet:
1. welche S7? - immer noch offen
2. "die
SAS340 steht also schon fest" - warum dann so unklar?
3. "
Ich muss einen Durchstich entwickeln" - ist also kein Hobby-Projekt?
4. welche Programmiersprache auf dem PC (wenn es denn einer wird?) - immer noch offen

4 Frage = 4 Antworten

die 4 Infos im 1. Post hätte die ganzen bisherigen Posts vermieden

Ich hoffe das Frage/Antwort-Spiel läuft jetzt klarer und deutlicher ab




 
Es geht nicht darum zu beweisen das das die S7 kann sondern darum wie man sowas ungefähr implementiert.
Es soll Aufwand und Kosten vergleichen werden mit anderen Systemen.

Daher kann ich mich nur wiederholen das ich nur über die Serielle Schnittstelle Daten versenden möchte.
Das das technisch möglich ist, ist mir bewusst!

Ob es nachher ein BCD Code ist oder Binär oder was auch immer ist erst mal egal.
 
Zurück
Oben