S7: Unterschied zwischen den Versionen

Aus FHEMWiki
(S7 Modul für Simatic und Logo)
 
Keine Bearbeitungszusammenfassung
Zeile 38: Zeile 38:
== FHEM Modul ==
== FHEM Modul ==
Das FHEM Modul besteht aus folgenden Dateien:
Das FHEM Modul besteht aus folgenden Dateien:
* 44_S7.pm ... das zentrale Modul stellt die Kommunikation zur SPS her und koordiniert das regelmäßige Abholen des aktuellen Zustandsbilds von der SPS.
* 44_S7.pm ... das zentrale Modul stellt die Kommunikation zur SPS her und koordiniert das regelmäßige Abholen des Lesespeicherblöcke von der SPS.
* 44_S7_ARead.pm ... hiermit lässt sich ein readonly analoger Datenpunkt erstellen  
* 44_S7_ARead.pm ... hiermit lässt sich ein readonly analoger Datenpunkt erstellen  
* 44_S7_AWrite.pm ... hiermit lässt sich ein analoger Datenpunkt zum Schreiben an die SPS erstellen  
* 44_S7_AWrite.pm ... hiermit lässt sich ein analoger Datenpunkt zum Schreiben an die SPS erstellen  
Zeile 44: Zeile 44:
* 44_S7_DWrite.pm ... hiermit lässt sich ein digitaler/binary Datenpunkt zum Schreiben erstellen  
* 44_S7_DWrite.pm ... hiermit lässt sich ein digitaler/binary Datenpunkt zum Schreiben erstellen  
* 44_S7_Client.pm ... dieses Modul beinhaltet die S7 Protokoll (Es basiert auf Snap7 - Settimino)
* 44_S7_Client.pm ... dieses Modul beinhaltet die S7 Protokoll (Es basiert auf Snap7 - Settimino)
== Funktionsbeschreibung ==
Hier wird die grundsätzliche Funktionsweise des Moduls erklärt:
Es lassen sich Lesespeicherblöcke (Readings) und Schreibspeicherblöcke (Writings) konfigurieren.
'''Lesespeicherblock (SPS --> FHEM):'''
Der konfigurierte Speicherblock wird in diskreten Zeitabständen von der SPS gelesen. Anschließend werden alle Analogen readonly Datenpunkte und alle Digitalen/binary readonly Datenpunkte die an diesem Speicherblock 'hängen' aktualisiert.
'''Schreibspeicherblock (FHEM --> SPS):'''
Die Schreibspeicherblöcke werden nur 'on demand' an die SPS geschickt. DH wird ein wert eines analogen Datenpunkts (zum Schreiben) geändert so wird der Wert im internen Abbild des Speicherblocks aktualisiert und anschliessend der gesamte Speicherblock zur SPS geschoben.
Aus diesem Konzept ergeben sich folgende Rahmenbedingungen:
Ein Speicherbyte in der SPS kann entweder einem Reading oder einem Writing zugeordnet werden.
Auf jeden Fall soll vermieden werden, dass ein Byte sowohl Reading gelesen als auch Writing überschrieben wird.

Version vom 20. Januar 2015, 13:59 Uhr


S7
Zweck / Funktion
Dieses Modul dient zur Integration von Simatic/S7/Logo! Steuerungen in die FHEM
Allgemein
Typ Gerätemodul
Details
Dokumentation EN / DE
Support (Forum) Sonstige Systeme
Modulname 44_S7.pm
Ersteller Charlie71 (Forum / Wiki)
Wichtig: sofern vorhanden, gilt im Zweifel immer die (englische) Beschreibung in der commandref!


under Construction

Die Simatic Steuerungsfamilie incl Logo! von Siemens ist eine Speicherprogrammierbare Steuerung. Dieses Modul unterstützt folgende Siemens Steuerungen sofern sie eine Ethernet Schnittstelle verfügen.

  • S7 300/400/WinAC CPU
  • S7 1200/1500 CPU
  • S7 200/LOGO 0BA7


Unterstützte Plattformen

Ab der Version V2.0 werden nun alle Plattformen auf denen FHEM läuft unterstützt.

Auf folgenden Plattformen wurde das Modul bereits erfolgreich getestet:

Plattfromtestergebnisse:

Plattform Teststatus Bemerkung
ARMv6 passed raspberry pi
AMD64 passed Mintlinux
MIPS passed Fritzbox 7390

FHEM Modul

Das FHEM Modul besteht aus folgenden Dateien:

  • 44_S7.pm ... das zentrale Modul stellt die Kommunikation zur SPS her und koordiniert das regelmäßige Abholen des Lesespeicherblöcke von der SPS.
  • 44_S7_ARead.pm ... hiermit lässt sich ein readonly analoger Datenpunkt erstellen
  • 44_S7_AWrite.pm ... hiermit lässt sich ein analoger Datenpunkt zum Schreiben an die SPS erstellen
  • 44_S7_DRead.pm ... hiermit lässt sich ein digitaler/binary readonly Datenpunkt erstellen
  • 44_S7_DWrite.pm ... hiermit lässt sich ein digitaler/binary Datenpunkt zum Schreiben erstellen
  • 44_S7_Client.pm ... dieses Modul beinhaltet die S7 Protokoll (Es basiert auf Snap7 - Settimino)

Funktionsbeschreibung

Hier wird die grundsätzliche Funktionsweise des Moduls erklärt: Es lassen sich Lesespeicherblöcke (Readings) und Schreibspeicherblöcke (Writings) konfigurieren.

Lesespeicherblock (SPS --> FHEM): Der konfigurierte Speicherblock wird in diskreten Zeitabständen von der SPS gelesen. Anschließend werden alle Analogen readonly Datenpunkte und alle Digitalen/binary readonly Datenpunkte die an diesem Speicherblock 'hängen' aktualisiert.

Schreibspeicherblock (FHEM --> SPS): Die Schreibspeicherblöcke werden nur 'on demand' an die SPS geschickt. DH wird ein wert eines analogen Datenpunkts (zum Schreiben) geändert so wird der Wert im internen Abbild des Speicherblocks aktualisiert und anschliessend der gesamte Speicherblock zur SPS geschoben.

Aus diesem Konzept ergeben sich folgende Rahmenbedingungen: Ein Speicherbyte in der SPS kann entweder einem Reading oder einem Writing zugeordnet werden. Auf jeden Fall soll vermieden werden, dass ein Byte sowohl Reading gelesen als auch Writing überschrieben wird.