Navigation:  SPS > Liste der Operationen > Register-indirekte Adressierung >

  Warnung bei Verwendung von AR1 oder AR2

Vorherige SeiteKapitelübersichtNächste Seite

 

Leider müssen wir bei der Verwendung des AR1 und AR2 zu großer Vorsicht aufrufen. Diese Register werden von den Siemens - S7 unter bestimmten Umständen eigenständig modifiziert oder dürfen wegen der Verwendung für S7-interne Zwecke vom Anwender nicht verändert werden. Obwohl sich mit diesen Registern im Prinzip sehr elegant komplexe Operationen (insbesondere in Schleifen) programmieren ließen, werden sie durch die genannten Einschränkungen nahezu nutzlos. Sie müssen bei der Verwendung dieser Register sehr genau wissen, ob und wann das S7-Betriebssystem diese für interne Zwecke verwendet, damit keine unerwarteten Resultate auftreten. Die Suche nach den Ursachen für Fehlfunktionen, die durch eine unzulässige Verwendung entstehen, verschlingt viel mehr Zeit, als benötigt würde, wenn man auf eine Schleife verzichtet und stattdessen 20 bis 50 Zuweisungen oder Transfers explizit ausschreibt.

 

Die in TrySim simulierte SPS verändert den Inhalt der AR-Register nicht und benötigt sie auch nicht für irgendwelche Operationen, die nicht explizit von Ihnen programmiert worden sind. Dies kann dazu führen, dass ein Programm mit TrySim prima funktioniert, im tatsächlichen Einsatz jedoch nicht. Solche Fehler sind, wie uns berichtet wurde und wie wir aus eigener Erfahrung wissen, sehr schwer zu finden.

 

Bitte überprüfen Sie die Funktion der Teile eines mit TrySim getesteten Programms, die die Adressregister verwenden, unbedingt vor der Inbetriebnahme auf einer realen S7.

 

Selbstverständlich werden wir versuchen, potenzielle Problemfälle in TrySim zu erkennen und eine entsprechende Warn-Meldung auszugeben. Dazu müssen wir aber zunächst genau wissen, unter welchen Umständen eine S7 die Adressregister modifiziert oder auf einen nicht vom Anwender veränderten Inhalt angewiesen ist. Für diesbezügliche Hinweise sind wir sehr dankbar. Hier steht, wie Sie uns erreichen.

 

Eine sichere Alternative ist die Verwendung der speicher-indirekten Adressierung. Leider gibt es dafür nicht solche Operationen wie +AR1 und andere lästige Beschränkungen, wie z.B. dass IN-Parameter nicht als Index verwendet werden dürfen, sondern erst in eine TEMP-Variable übertragen werden müssen.

 

Siehe auch:

Indirekte Adressierung

 

S7-300 und S7-400 sind eingetragene Warenzeichen der Siemens AG.