Wie können wir helfen?

Print

Kommunikation mit Siemens S7-400 und Redundanzfunktion mit S7-400H


Ethernet IP Konfiguration S7-400/300 und HMI

HMI-Tool V7.0.0.14 oder höher verwenden

Wählen Sie das richtige Protokoll und stellen Sie die Ethernet-IP-Adresse des Bediengeräts ein. Bei Bedarf, siehe auch HMI Ethernet IP-Adresse

Stellen Sie die Ethernet-IP der S7-400 ein. Bei Redundanz stellen Sie die zweite IP-Adresse ein.

Stellen Sie die Stations-, Rack- und Steckplatznummern in den speziellen LW-Registern für das S7-400-Protokoll ein.

  • Stationsnummer „plcsta“
    • Stationsnummernbereich „plcsta“ (0-255), wenn er diesen Bereich überschreitet, ist die Voreinstellung 2.
  • Rack-Nummer
    • LocalWord[45000 plcsta*2]: Enthält die Racknummer der Station. Der Bereich reicht von 0 bis 7, wenn er höher ist, ist der Standardwert 0.
  • Steckplatznummer
    • LocalWord[45001 plcsta*2]: Enthält die Steckplatznummer der Station. Der Bereich reicht von 1 bis 31, wenn er höher ist, ist der Standardwert 1.

Beispiel für Stationsnummer 2 : Geben Sie die Stationsnummer in LW[45004] und die Steckplatznummer in LocalWord[45005]ein

Diese LocalWord[45xxx] können mit einem Makro in „Init Script“ eingestellt werden:

Führen Sie das Skript einmal beim Starten aus

Redundanzfunktion, für CPU bei S7-400H

Verwenden Sie HMI-Tool V7.0.0.14 oder höher und verwenden Sie „forced update HMI“, bevor Sie Ihr Projekt für alle Ethernet-HMIsdowalod

Die Redundanzfunktion ermöglicht die automatische Umschaltung von einer IP auf eine andere, wenn die Kommunikation ausfällt.

Für S7-400 müssen Sie jedoch zumindest die Slot-Nummer ändern. Dazu wird ein Makro verwendet, das auch die Slot-Nummer ändert, wenn sich die aktuelle IP ändert.

Makro in „Global Script“, Aufruf des Makros alle 1000 ms als Beispiel:

#include "MacroInit.h"
void Macro_main(IN *p)
{
MarcoInit
//ToDo
int plcsta=0; Nummer der SPS-Station
if(192 == LocalWord[63192] && 168 == LocalWord[63193] && 10 == LocalWord[63194] && 1 == LocalWord[63195])
{
// 192.168.10.1
LocalWord[45000 plcsta*2] = 0; // Rack-Nummer
LocalWord[45001 plcsta*2] = 2; // Steckplatznummer
}
else if(192 == LocalWord[63192] && 168 == LocalWord[63193] && 10 == LocalWord[63194] && 2 == LocalWord[63195])
{
// 192.168.10.2
LocalWord[45000 plcsta*2] = 1; // Rack-Nummer
LocalWord[45001 plcsta*2] = 2; // Steckplatznummer
}
}