Skip to main content

Untersektion: InstRefMapping

In der Sektion InstRefMapping mit der Untersektion Demand kann ein InstRef des Moduls automatisch mit einer von einem Gerät erzeugten FB-Instanz gefüllt werden.

SEC DeviceGenerator                                      //optional: yes, modifier: [UPDATE]
    SEC InstRefMapping : <target ID>                             //optional: yes, modifier [UPDATE]
            Parent := <target ID>;                           //optional: yes, type: ID
            SEC Demand                               //optional: yes, modifier: [UPDATE]
                    Desc := <...>;                       //optional: no, type: text
                    Properties := <...>;                           //optional: no, type: IDList
            END_SEC
    END_SEC
END_SEC
. Spezifikation:
  • Die Obersektion InstRefMapping wird durch die zusätzliche, optionale Sektion Demand ergänzt. Das Target der Obersektion InstRefMapping definiert die ID einer InstRef-Definition im Modul, das mit einer FB-Instanz befüllt werden soll. Nur einzelne InstRefs (nicht InstRef_Multi) werden unterstützt, da nur einzelne FB-Instanzen von einzelnen Geräten angelegt werden.

  • Die Definition Desc gibt eine lokalisierte Beschreibung der Verbindung an.

  • Die Definition Properties gibt eine Liste von Eigenschaften an, die beispielsweise die FB-Typen beschreiben, die der Modul-InstRef benötigt. Es können mehrere Eigenschaften angegeben werden, so dass die einzelnen Modul-InstRefs wie bei Modul-IOs klassifiziert werden.

    Syntax [<Property1>, <Property2>,...], z.B. [SoftMotionVirtualDrive, Eigenschaft2].

  • Die Definition Parent gibt die ID des gewünschten Geräts an, dessen erzeugte FB-Instanzen möglichst zum Befüllen des Module-InstRefs benutzt werden sollen. Für Demanding-InstRefs können dies sowohl Wildcard-Geräte als auch fest eingefügte Geräte sein.

Beispiel 36. Beispiel
SEC std.InstRefs
        SEC InstRef : axisRef
                Variable := axis_ref;
                Desc := TL.axisref_Desc ;
        END_SEC
END_SEC

SEC std.DeviceGenerator
        SEC Device : virtAxis
                SEC Identification
                        Type := '1024';
                        ID := 'FFFF 0001';
                        Version := '*';
                END_SEC
        END_SEC
        SEC InstRefMapping : axisRef
                SEC Demand
                        Desc := TL.axisref_Desc;
                        Properties := [VirtualAxis];
                END_SEC
        END_SEC
END_SEC