Sie sind auf Seite 1von 5

NetToPLCsim S7online Version

Allgemeines
Diese Version von NetToPlcsim verwendet im Gegensatz zu der 'alten' Version nicht mehr das S7ProSim-Objekt um mit Plcsim zu kommunizieren, sondern die sogenannte S7online-Schnittstelle. Dadurch entfllt das Zerlegen und Interpretieren des S7-Protokolls, da die Daten 1:1 von der Netzwerkschnittstelle an die S7online-Schnittstelle weitergeleitet werden. Die Daten aus der S7online-Schnittstelle werden von NetToPLCSim in das IsoOnTcp-Protokoll verpackt, bzw. bei Datenempfang entpackt. nderungen im Vergleich zur 'alten' Version: Verbindung von mehrere Clients mglich (max. 100) Beschrnkung der zu lesenden/schreibenden Datenbereiche entfllt (Timer, Counter und Eingnge knnen jetzt gelesen werden) Direkte Untersttzung von mehreren Plcsim-Instanzen aus einem Programm heraus Speichermglichkeit der Konfiguration in einer Ini-Datei Verbesserter Datendurchsatz zu Plcsim im Vergleich zur S7ProSim-Schnittstelle Mehr Funktionen mglich wie CPU Stop/Run, lesen von diversen SZL-Listen (Verhalten bzw. Inhalt ist jedoch anders als bei einer 'realen' CPU) Um diese Version zu verwenden, muss in der PLCSIM-Simulation zwingend eine EthernetSchnittstelle (CP oder PN-CPU) in der Hardware-Konfiguration vorhanden sein. NetToPLCsim dient dann als Vermittler zwischen der PLCSIM-Simulation und der realen Netzwerkschnittstelle.

Der Dienst SIMATIC IEPG Helper


Eine Step7-Installation bringt einen Dienst SIMATIC IEPG Helper mit, welcher den fr die S7Kommunikation notwendigen Port 102 belegt. Darum muss dieser Dienst vor dem Test mit NetToPLCsim beendet werden. Damit die Funktionalitt von Step7 spter nicht eingeschrnkt ist, sollte dieser Dienst nach dem Test wieder gestartet werden. Die neue Version von NetToPLCsim prft bei Start ob der Port 102 frei ist. Ist dieses nicht der Fall, kann optional aus dem Programm heraus der Dienst beendet werden. Wurde der Dienst aus dem Programm beendet, gibt es bei Beendigung eine Abfrage ob der Dienst neu gestartet werden soll. Alternativ kann man den Dienst auch ber zwei Batch-Dateien mit folgendem Inhalt stoppen oder starten: Stop IEPGhelper.bat:
net stop s7oiehsx

Start IEPGhelper.bat:
net start s7oiehsx

Hinweis Fr den Zugriff auf die Windows Dienst-Steuerung mssen Administratorrechte vorhanden sein. Unter Windows XP reicht es dazu aus, mit einem Benutzerkonto unter den entsprechenden Rechten
Thomas Wiens (th.wiens@gmx.de), 20.12.2011

angemeldet zu sein. Unter Windows 7 muss das Programm mit Administratorrechten gestartet werden.

Simulation einer Plcsim-Instanz


Beispielhaft soll folgende Konstellation eingestellt werden: S7-300 PN-CPU mit IP-Adresse: 192.168.1.101 LAN-Schnittstelle: 192.168.1.10
PLCSIM (IP 192.168.1.101)

NetToPLCsim

S7-Protokoll S7online

IsoOnTcp

LAN-Schnittstelle (192.168.1.10)

Abbildung 1: Schema Simulation mit einer Plcsim-CPU 1) 2) 3) 4) 5) 6) 7) Starten von PLCSIM aus dem SIMATIC-Manager Zugangspunkt in PLCSIM auf PLCSIM(TCP/IP) einstellen SPS Programm inklusive Systemdaten in PLCSIM laden NetToPLCsim starten In NetToPlCsim eine neue Station mit Add anlegen Im Feld Name einen eindeutigen Namen fr diese Station angeben Im Feld Network IP Address die IP-Adresse der Netzwerkschnittstelle eingeben ber welche die Simulation erreichbar sein soll (hier 192.168.1.10). Wird auf die Schaltflche neben dem Eingabefeld geklickt (), wird eine Auswahlliste mit den verfgbaren NetzwerkIP-Adressen erstellt, welche mit Doppelklick oder ber OK in das Eingabefeld bernommen werden knnen. 8) Im Feld Plcsim IP Address die IP-Adresse der CPU eingeben. Wird auf die Schaltflche neben dem Eingabefeld geklickt (), wird eine Auswahlliste mit den erreichbaren PLCSIMCPUs und deren IP-Adressen erstellt, welche mit Doppelklick oder ber OK in das Eingabefeld bernommen werden knnen. 9) Eingaben der Station mit OK besttigen 10) ber Start all werden alle in der Liste aufgefhrten Server gestartet

Thomas Wiens (th.wiens@gmx.de), 20.12.2011

Ein Client wie z.B. eine Visualisierung kann daraufhin die SPS unter der IP-Adresse 192.168.1.10 erreichen. Zum Beendigen der Simulation sollte im ersten Schritt NetToPLCsim beendet werden, im Zweiten dann das PLCSIM-Programm.

Simulation mehrerer Plcsim-Instanzen


PLCSIM1 (IP 192.168.1.101)

LAN-Schnittstelle 1. IP-Adresse (192.168.1.10) PLCSIM2 (IP 192.168.1.102)

NetToPLCsim LAN-Schnittstelle 2. IP-Adresse (192.168.1.11)

PLCSIM3 (IP 192.168.1.103) LAN-Schnittstelle 3. IP-Adresse (192.168.1.12)

Abbildung 2: Schema Simulation mit drei Plcsim-CPUs Um gleichzeitig mehrere PLCSIM-Simulationen ber das Netzwerk erreichbar zu machen, werden fr jede Simulation eine eigene IP-Adresse bentigt. Entweder man hat in dem PC entsprechend viele Netzwerkkarten (was eher unwahrscheinlich ist), oder man fgt der einen Netzwerkkarte eine oder mehrere weitere IP-Adressen hinzu.

Thomas Wiens (th.wiens@gmx.de), 20.12.2011

In den obigen Bildern ist das Hinzufgen von weiteren IP-Adressen unter Windows 7 gezeigt. Unter Windows XP sind die Mens aber weitestgehend identisch. Hinweis Um Probleme mit dem Netzwerk zu vermeiden sollten nach dem Test die zustzlichen IP-Adressen wieder entfernt werden. Die weiteren PLCSIM Instanzen knnen nach Start der ersten PLCSIM Instanz aus dem SIMATICManager aus dem PLCSIM Programm heraus gestartet werden (Menpunkt Simulation Zielsystem Neu). In die neue Simulation sollte dann direkt danach das SPS-Programm inkl. Systemdaten geladen werden, da erst danach die Simulation die korrekte 'virtuelle' IP-Adresse erhlt. Das grundstzliche Anlegen der Stationsdaten in NetToPLCsim erfolgt genauso wie oben fr eine Station beschrieben. Es werden dann entsprechend zustzliche Stationen mit den zugehrigen IPAdressen fr PLCSIM und die Netzwerkkarte angelegt. Fr das oben gezeigte Schema wre dann folgende Konfiguration notwendig:

Monitoring des Datenaustausches


Bei gestarteten Servern ist im Kontextmen der Stationsliste der Eintrag Start monitoring verfgbar. Es kann fr jede Station ein eigenes Monitoring-Fenster geffnet werden. In dem Fenster werden nur Telegramme fr den blichen Datenaustausch zwischen Leitsystemen und der SPS aufgeschlsselt (Read/Write-Requests). Um sich weitere Details des Datenaustausches anzusehen, bietet sich die Verwendung von Wireshark in Verbindung mit meiner Plugin-dll fr die S7-Kommunikation an. http://sourceforge.net/projects/s7commwireshark Hinweis: Durch das aktivierte Monitoring wird der Datenaustausch erheblich verlangsamt.

Thomas Wiens (th.wiens@gmx.de), 20.12.2011

Versionslog
0.9.0 Erste Version welche die S7online-Schnittstelle verwendet 0.9.1 Optionales Monitoring des Datenaustausches (Anzeige von Lese- und Schreibbefehlen mit den entsprechenden Datenbereichen) hinzugefgt

Thomas Wiens (th.wiens@gmx.de), 20.12.2011