Automap Symbols

Über die Automap-Funktion lassen sich Variablen aus der SPS automatisch in der HMI mappen. Hierfür müssen an die entsprechenden Variablen in der SPS Attribute gesetzt werden. Die HMI durchsucht die vorhandenen ADS-Symbole und legt diese automatisch an, wenn das entsprechende Attribut vorhanden ist.

Zur Verfügung stehende Attribute:

Attribute

Beschreibung

Version

'TcHmiSymbol.AddSymbol'

Mappen der Variablen in die HMI durch die Automap-Funktion.

>= 1.12.756.1

'TcHmiSymbol.AddSymbol.Ignore'

Ignorieren der Variablen, darunter liegende Variablen mit AddSymbol-Attribut werden trotzdem gemappt.

>= 1.14.x.x

'TcHmiSymbol.AddSymbol.IgnoreRecursively'

Ignorieren der Variablen und den darunter liegenden Variablen.

>= 1.14.x.x

'TcHmiSymbol.AddSymbol.Hidden'

Verstecken des Mappings (nur sichtbar, wenn erweiterte Symbole angezeigt werden).

>= 1.12.756.1

'TcHmiSymbol.AddSymbol.UserGroups'

Anlegen einer Lese-/Schreibberechtigung für Benutzergruppen.

>= 1.12.756.1

'TcHmiSymbol.AddSymbol.UserGroups.Read'

Anlegen einer Leseberechtigung für Benutzergruppen.

>= 1.14.x.x

Beispiel – ST (Variablen Deklaration in der SPS)

Hinzufügen einer Variablen

{ attribute 'TcHmiSymbol.AddSymbol' }
_i       : INT;

Hinzufügen einer Variablen, die in der HMI versteckt ist

{ attribute 'TcHmiSymbol.AddSymbol' }
{ attribute 'TcHmiSymbol.AddSymbol.Hidden' }
_i       : INT;

Hinzufügen einer Variablen, mit Lese-/Schreibberechtigung für zwei Benutzergruppen

{ attribute 'TcHmiSymbol.AddSymbol' }
{ attribute 'TcHmiSymbol.AddSymbol.UserGroups' := '__SystemAdministrators,Operators' }
_i       : INT;

Hinzufügen der Automap-Symbole in Visual Studio / TcXaeShell

Automap Symbols 1:
1. Öffnen Sie das Fenster TwinCAT HMI Configuration.
2. Gehen Sie auf den Reiter Server Symbols / All Symbols.
3. Machen Sie einen Rechtsklick auf ADS.
4. Starten Sie das automatische Mappen über Map Automap Symbols.
Nach dem Hinzufügen kommt eine Meldung über die Anzahl der hinzugefügten Symbole oder eine Fehlermeldung.
Automap Symbols 2:

Über Visual Studio / TcXaeShell werden aktuell maximal 1000 Symbole gemappt.

Hinzufügen der Automap Symbole über JavaScript

1. Fügen Sie eine neue JavaScript Datei zum Projekt hinzu.
2. Öffnen Sie die erstellte JavaScript Datei.
3. Rufen Sie die Funktion writeEx auf und beschreiben Sie das Symbol AddSymbols.
Durch das Beschreiben des Symbols wird das automatische Mappen der Symbole gestartet.

Parameter – AddSymbols

Name

Typ

Beschreibung

Version

domain

string

Server Domain auf der AddSymbols ausgeführt werden soll.

>= 1.12.756.1

path

string

Einstiegspunkt der Suche auf Unterebenen verschieben.

"PLC1::MAIN::_fbMachine"

Der Start der Suche beginnt ab _fbMaschine.

>= 1.14.x.x

namePrefix

string

Ergänzt den Symbol Namen am Anfang um den definierten Prefix.

>= 1.14.x.x

dryRun

boolean

Führt nur die Suche nach Symbolen aus, ohne diese anzulegen.

>= 1.12.756.1

ignoreProblems

boolean

Führt bei Problemen die Anfrage weiter durch.

>= 1.12.756.1

Ignore

string []

Angegebene Symbole werden nicht beim Anlegen berücksichtigt.

["ADS.PLC1.MAIN._axis"]

>= 1.12.756.1

skipExisting

boolean

Es werden nur Symbole angelegt, die noch nicht existieren.

>= 1.12.756.1

limit

int32

Limitiert die Anzahl an Symbolen, die gesucht werden.

>= 1.14.x.x

Beispiel – JavaScript (Start Automap Symbols minimal):

TcHmi.Symbol.writeEx('%s%AddSymbols|Timeout=5000%/s%', {domain: "ADS"}, function (data) {
    // callback value
    console.log(data);
    // number of found symbols
    console.log(Object.keys(data?.value).length);
});

Beispiel – JavaScript (Start Automap Symbols):

let config = {
    domain: "ADS",
    path: "PLC1::MAIN::_fbMachine",
    namePrefix: "AutoMapp.",
    dryRun: false,
    ignoreProblems: false,
    ignore: [
        "ADS.PLC1.MAIN._axis"
    ],
    skipExisting: true,
    limit: 3000
}
TcHmi.Symbol.writeEx('%s%AddSymbols|Timeout=5000%/s%', config, function (data) {
    // callback value
    console.log(data);
    // number of found symbols
    console.log(Object.keys(data?.value).length);
});
Automap Symbols 3:

Diese Funktionalität ist ab der Version 1.12.756.1 verfügbar.

Automap Symbols 4:

Diese Funktionalität steht nur bei einer ADS-Verbindung zur Verfügung und nicht bei einer TMC-Datei.

Automap Symbols 5:

Die Attribute funktionieren aktuell nicht bei Methoden oder Properties.