Dieses Kommunikationsschema ist nur für PM56xx-SPSen verfügbar, die Kommunikationsmodule unterstützen.
Das Kommunikationsschema „Kommunikationsmodule“ ist für Benutzer eines Kommunikationsmoduls gedacht, das so konfiguriert werden kann, dass es seine Stack-Aktivität mit der Benutzeranwendung durch eine dedizierte (durch ein externes Ereignis ausgelöste IEC-Task) synchronisiert, die auf ein Ereignis abgebildet wird („CouplerEventX“, X = Steckplatznummer des Kommunikationsmoduls).
Die bus-synchronisierte IEC-Task wird nicht vom SPS-Laufzeitsystem, sondern vom Stack des Kommunikationsmoduls eingeplant. Daher ist es notwendig, dass die SPS schnell auf das entsprechende Ereignis des Kommunikationsmoduls reagiert. Das Schema stellt sicher, dass negative Nebeneffekte auf die bus-synchronisierte IEC-Task so weit wie möglich reduziert werden, indem die Prioritäten von Funktionen mit hoher Priorität angepasst werden.
Merkmale und ihre Prioritäten
Die folgende Abbildung zeigt die Änderungen, die das Schema auf die verfügbaren Funktionen der SPS anwendet. Das primäre Ziel dieses Schemas ist es, die Anzahl der Tasks zu reduzieren, die in der Lage sind, die bus-synchronisierte IEC-Task zu unterbrechen oder zu verzögern, und gleichzeitig so viel Flexibilität wie möglich zu bieten. Anhand des Prioritätsbereichs der IEC-Aufgaben können die Benutzer entscheiden, ob vorhandene IEC-Aufgaben die entsprechenden Merkmale beeinflussen.
-
Verwenden Sie für die bussynchronisierte IEC-Task die IEC-Priorität 0 und eine Priorität kleiner als 0. Für alle anderen Funktionen, um negative Nebeneffekte auf die bus-synchronisierte IEC-Task zu vermeiden.
-
Verwenden Sie die IEC-Prioritäten 1 bis 5 für Funktionen, die wichtiger sind als Merkmale mit hoher Priorität wie IO-Bus oder CAN.
-
Um sicherzustellen, dass ein Merkmal mit hoher Priorität nicht von einem IEC-Anwendercode (außer der bussynchronisierten IEC-Task) beeinflusst wird, verwenden Sie eine IEC-Task-Priorität, die niedriger ist als die Priorität des entsprechenden Merkmals.
Es ist nicht verboten, IEC-Task-Prioritäten zu verwenden, die anderen SPS-Funktionen zugewiesen sind.





HINWEIS

Seien Sie vorsichtig bei der Verwendung dieses Schemas, um unerwünschte Nebeneffekte auf Funktionen neben dem Protokoll, das durch das entsprechende Kommunikationsmodul realisiert wird, zu vermeiden, die durch die Verletzung einzelner Timing-Beschränkungen oder Anforderungen verursacht werden!
Der E/A-Bus muss in der Lage sein, alle angeschlossenen S500-E/A-Geräte innerhalb von 20 ms zu aktualisieren. Andernfalls wird eine Ausnahme ausgelöst,
die zum Anhalten der Anwendung führt. Verwenden Sie den PLC-Shell-Befehl io-bus desc
, um Informationen über das Bustiming auszugeben. Der Ausgang enthält Informationen
über die IO-Bus-Zykluszeit:
--- E/A-Bus-Informationen -
Baudrate [Baud]: 1714286
Min. Zykluszeit [us]: 1037
Maximale Zykluszeit [us]: 10936
Letzte Zykluszeit [us]: 1567
Die maximale Zykluszeit muss unter 20 ms liegen, um sicherzustellen, dass das System stabil läuft und keinen Timeout-Ausnahmefehler auslöst.
Wenn die Zykluszeit den Grenzwert erreicht, versuchen Sie, die Menge des von IEC-Anwendertasks mit höherer Priorität als der E/A-Bus ausgeführten Codes zu reduzieren oder die Task-Prioritäten anzupassen, falls möglich.