Aufgaben der Mapping-Funktionen

Das Mapping zwischen Achs-Objekt und den Schnittstellen HMI-Objekt und Interface-Objekt wird von der automatischen Codegenerierung in der freilaufenden Task platziert, weil in den meisten Anwendungsfällen auch das Anwenderprogramm in der freilaufenden Task verarbeitet wird (z. B. in der Aktion Main im Programm User_PRG). Dabei ist zu bedenken, dass alle aus der freilaufenden Task in die Schnittstellen (z. B. Interface_Axis1) geschriebenen Informationen in zyklischen Tasks (z. B. in der Profilgeneration) asynchron und damit potentiell inkonsistent verarbeitet werden.

In bestimmten Fällen kann es jedoch wichtig sein, aus dem Anwenderprogramm synchron zur zyklischen Task zu steuern (z. B. bei einer fliegenden Umschaltung). Entsprechende Steueraktionen des Anwenderprogramms müssen dann in der zyklischen Task verarbeitet werden (z. B. in der Aktion HighPrio im Programm User_PRG). Außerdem sind die Mapping-Funktionen der dort verarbeiteten Status- oder Steuersignale ebenfalls in der zyklischen Task aufzurufen, d. h. die entsprechenden Aufrufe müssen von der Aktion Main im Programm SEW_PRG in die Aktion HighPrio im Programm SEW_PRG verlagert werden.

Die folgende Grafik zeigt eine Übersicht der Mapping-Funktionen und ihrer Aufgaben, mit deren Hilfe entschieden werden kann, welche Aufrufe ggf. zu modifizieren sind.

HINWEIS

Es liegt in der Verantwortung des Anwenders, bei Bedarf durch entsprechende Maßnahmen für Konsistenz zu sorgen.
  • Interface_Axis1.MapOUT_UI() kopiert die Statusinformationen von "Axis1" nach "Interface_Axis1"
  • Interface_Axis1.ProfileGeneration.MapOUT_UI() kopiert die Statusinformationen der Profilgeneration von "Axis1" nach "Interface_Axis1"
  • Interface_Axis1.MapIN_UI(): kopiert die Steuerinformationen von "Interface_Axis1" nach "Axis1"
  • Interface_Axis1.ProfileGeneration.MapIN_UI() kopiert die Steuerinformationen der Profilgeneration von "Interface_Axis1" nach "Axis1"
  • HMI_Axis1.MapOUT_UI() kopiert die Statusinformationen von "Axis1" nach "HMI_Axis1"
  • HMI_Axis1.ProfileGeneration.MapOUT_UI() kopiert die Statusinformationen der Profilgeneration von "Axis1" nach "HMI_Axis1"
  • HMI_Axis1.MapIN_UI() kopiert die Steuerinformationen von "HMI _Axis1" nach "Axis1"
  • HMI_Axis1.ProfileGeneration.MapIN_UI() kopiert die Steuerinformationen der Profilgeneration von "HMI _Axis1" nach "Axis1"