Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
48
Добавлен:
11.10.2020
Размер:
3.04 Mб
Скачать

Globale Variablen, Variablenkonfiguration, Dokumentvorlage

Beispiel Register Ressourcen

6.2 Globale Variablen, Variablenkonfiguration, Dokumentvorlage

Objekte in 'Globale Variablen'

Im Object Organizer befinden sich in der Registerkarte Ressourcen im Ordner Globale Variablen standardmäßig zwei Objekte (in Klammern die vorbelegten Namen der Objekte):

Globale Variablenliste (Globale_Variablen )

Variablenkonfiguration (Variablen_Konfiguration)

Alle in diesen Objekten definierten Variablen sind im ganzen Projekt bekannt, globale Netzwerkvariablen können darüber hinaus dem Datenaustausch mit anderen Netzwerkteilnehmern dienen.

Ist der Ordner Globale Variablen nicht aufgeklappt (Pluszeichen vor dem Ordner), öffnen Sie ihn mit Doppelklick oder Drücken der <Eingabetaste> in der Zeile.

Wählen Sie das entsprechende Objekt aus. Mit dem Befehl 'Objekt bearbeiten' öffnet ein Fenster mit den bisher definierten globalen Variablen. Der Editor hierfür arbeitet wie der Deklarationseditor.

Mehrere Variablenlisten

Globale Projektvariablen (VAR_GLOBAL), globale Netzwerkvariablen (VAR_GLOBAL, Verfügbarkeit zielsystemabhängig), und Variablenkonfigurationen (VAR_CONFIG) müssen in getrennten Objekten definiert werden.

Wenn Sie eine große Anzahl globaler Variablen deklariert haben und dann können Sie zur besseren Strukturierung neben der standardmäßig angelegten Liste 'Globale_Variablen' weitere Variablenlisten anlegen.

Selektieren Sie im Object Organizer den Ordner Globale Variablen oder eines der bestehenden Objekte mit globalen Variablen und führen Sie den Befehl 'Projekt' 'Objekt einfügen' aus. Geben Sie dem Objekt in der erscheinenden Dialogbox einen entsprechenden Namen. Damit wird eine weiteres Objekt mit dem Schlüsselwort VAR_GLOBAL angelegt. Wenn Sie lieber ein Objekt mit einer Variablenkonfiguration haben möchten, ändern Sie das Schlüsselwort entsprechend in

VAR_CONFIG.

6-2

CoDeSys V2.3

6 - Die Ressourcen

6.2.1Globale Variablen

Was sind globale Variablen

Als globale Variablen können "normale" Variablen, Konstanten oder remanente Variablen deklariert werden, die im gesamten Projekt bekannt sind, aber auch Netzwerkvariablen, die zusätzlich dem Datenaustausch mit anderen Netzwerkteilnehmern dienen.

Hinweis: Es ist möglich, eine lokale Variable mit gleichem Namen wie eine globale zu definieren. Innerhalb eines Bausteins hat stets die lokal definierte Variable Vorrang.

Es ist nicht möglich zwei global definierte Variablen gleich zu benennen; beispielsweise wird ein Übersetzungsfehler ausgegeben, wenn sowohl der Steuerungskonfiguration als auch in einer globalen Variablenliste eine Variable "var1" definiert ist.

Netzwerkvariablen

Hinweis: Die Verwendung von Netzwerkvariablen muss durch das Zielsystem unterstützt werden und in den Zielsystemeinstellungen (Kategorie Netzfunktionen) aktiviert sein.

Netzwerkvariablen werden über einen automatischen Datenaustausch (Vergleiche hierzu den nichtautomatischen über den Parameter-Manager) innerhalb eines CoDeSys-kompatiblen Steuerungsnetzwerkes auf mehreren Steuerungen auf dem gleichen Stand gehalten. Dazu sind keine steuerungsspezifischen Funktionen erforderlich, die Netzwerkteilnehmer müssen aber in ihren Projekten über identische Deklarationslisten und entsprechende Übertragungskonfiguration der Netzwerkvariablen verfügen.

Um identische Listen zu erreichen, wird empfohlen, die Deklaration der betreffenden Variablen nicht manuell in jeder Steuerungsapplikation einzugeben, sondern sie aus einer gesonderten Datei zu übernehmen, die beispielsweise durch Exportieren erzeugt werden kann. (siehe 'Anlegen einer Globalen Variablenliste').

Anlegen einer Globalen Variablenliste

Zum Neuanlegen einer globalen Variablenliste markieren Sie im Objekt Organizer bei den Ressourcen den Eintrag 'Globale Variablen' bzw. eine dort bereits angelegte Globale Variablenliste. Wenn Sie dann den Befehl 'Projekt' 'Objekt' 'Einfügen' wählen, öffnet der Dialog Globale Variablenliste.

Dieser Dialog wird zur Anzeige einer bereits vorgenommenen Konfiguration der im Objekt Organizer markierten Globalen Variablenliste auch beim Befehl 'Projekt' 'Objekt' 'Eigenschaften' geöffnet.

Dateiverknüpfung:

Dateiname: Wenn Sie bereits eine Exportdatei (*.exp) oder DCF-Datei zur Verfügung haben, die die gewünschten Variablen enthält, können Sie diese anbinden. Geben Sie dazu den entsprechenden Dateipfad ein bzw. nehmen Sie über die Schaltfläche Durchsuchen den Standarddialog 'Textdatei auswählen' zu Hilfe. DCF-Dateien werden beim Einlesen in IEC-Syntax umgewandelt.

Wählen Sie die Option Vor Übersetzen importieren, wenn Sie wollen, dass vor jedem Übersetzen des Projekts die angegebene externe Variablenliste neu eingelesen wird. Die Option Vor Übersetzen exportieren wählen Sie, wenn die Variablenliste vor jedem Übersetzen des Projekts neu in die angegebene externe Datei geschrieben werden soll.

Name der globalen Variablenliste: Geben Sie einen neuen Listennamen an.

Wenn Sie den Dialog 'Globale Variablenliste' mit OK schließen, wird das neue Objekt, versehen mit

dem -Symbol im Object Organizer angelegt und kann mit 'dem Befehl 'Projekt' 'Objekt' 'Bearbeiten' bzw. einem Doppelklick auf den Eintrag geöffnet werden.

Über den Befehl 'Projekt' 'Objekt' 'Eigenschaften' können Sie den Konfigurationsdialog 'Globale Variablenliste' zu dem im Object Organizer markierten Eintrag wieder öffnen.

CoDeSys V2.3

6-3

Globale Variablen, Variablenkonfiguration, Dokumentvorlage

Dialog zum Anlegen einer neuen Globalen Variablenliste

Konfigurieren von Netzwerkvariablen (Connection..):

Wenn in den Zielsystemeinstellungen die Option 'Netzwerkvariablen unterstützen' aktiviert ist, steht die Schaltfläche Netzwerkverbindung hinzufügen zur Verfügung. Über diese kann der Dialog erweitert werden und sieht dann so wie oben abgebildet aus. Wenn die Option nicht aktiviert ist, fehlt die Schaltfläche.

Connection <n> (<Netzwerktyp>):

Im unteren Teil des Dialogs kann für insgesamt vier (n=1 bis 4) Netzwerkverbindungen auf je einem Tabulatorblatt ein Konfigurationssatz erstellt werden, der definiert, wie die betreffende Variablenliste im Austausch mit anderen Netzwerkteilnehmern gehandhabt werden soll. Damit der Austausch wie beabsichtigt funktioniert, muss dieselbe Variablenliste bei den anderen Netzwerkteilnehmern entsprechend passend konfiguriert werden.

Ist noch keine Konfiguration vorhanden, erhalten Sie im Falle eines UDP-Netzwerks zunächst ein einziges Tabulatorblatt mit der Beschriftung 'Connection 1 (UDP)'. Mit jedem erneuten Betätigen der Schaltfläche 'Netzwerkverbindung hinzufügen' erhalten Sie bis zu vier weitere Blätter, die mit fortlaufender Nummer hinter "Connection" beschriftet sind.

Netzwerktyp: Wählen Sie aus der Liste den gewünschten Typ aus. Die Liste wird durch die Zielsystemeinstellungen definiert. Beispielsweise könnte "CAN" als Kürzel für ein CAN-Netzwerk oder "UDP" für ein UDP-Übertragungssystem auswählbar sein.

Einstellungen: Diese Schaltfläche führt zum Dialog Einstellungen für <netzwerktyp> mit den folgenden Konfigurationsmöglichkeiten:

6-4

CoDeSys V2.3

6 - Die Ressourcen

UDP:

Standard verwenden Wenn diese Schaltfläche gedrückt wird, wird Port 1202 für den Austausch mit anderen Netzwerkteilnehmern eingetragen. Als Broadcast/Multicast-Adresse wird "255 . 255 . 255 . 255" vorgegeben, was bedeutet, dass mit allen Netzwerkteilnehmern ausgetauscht wird.

Port Alternativ zum Standard (siehe oben) zu benutzender Port (Achtung: muss bei allen beteiligten Knoten gleich eingestellt sein). Für den Netzwerktyp UDP wird ein hier eingetragener Wert automatisch für alle Verbindungen, die gegebenenfalls auf weiteren Registerblättern definiert sind, übernommen.

Broadcast/Multicast address Alternativ zum Standard (siehe oben) zu verwendende Adresse bzw. Adressbereich eines Subnetzwerkes (z.B. "197 . 200 . 100 . 255" würde alle Teilnehmer mit den IP-Adressen 197 . 200 . 100 . x erfassen).

Beachten Sie für Win32-Systeme, dass die Broadcast/Multicast Adresse zur Subnetmask der TCP/IP-Konfiguration des PCs passen muss !

Dialog 'Einstellungen für UDP'

CAN:

Controller Index: Der Index des CAN Controllers, über den die Variablen übertragen werden sollen.

Folgende Optionen können zur Konfiguration des Übertragungsverhaltens der Variablen aktiviert oder deaktiviert werden:

Variablen packen: Die Variablen werden zur Übertragung in Pakete (Telegramme) zusammengefasst, deren Größe netzwerkabhängig ist. Ist die Option deaktiviert, wird für jede Variable ein Paket angelegt.

Variablenlistenkennung: Kennnummer des ersten Paketes, in dem die Variablen versendet werden. (default = 1). Weitere Pakete werden entsprechend aufsteigend nummeriert.

Prüfsumme übertragen: Pro Paket wird beim Senden eine Checksumme angehängt, die beim Empfangen geprüft wird. Darüber wird festgestellt, ob Variablendefinitionen bei Sender und Empfänger identisch sind. Pakete mit falscher Checksumme werden nicht übernommen und, falls so eingestellt (Bestätigter Transfer, siehe unten), negativ quittiert.

Bestätigter Transfer: Jede Nachricht wird vom Empfänger quittiert. Wenn der Sender innerhalb eines Zyklus nicht mindestens 1 Empfangsbestätigung zurückerhalten hat, wird eine Fehlermeldung ausgegeben.

Lesen: Die Variablen der Liste werden gelesen; ist die Option deaktiviert, werden neu über das Netz versendete Variablenwerte ignoriert.

Request beim Bootup: Wenn der lokale Knoten ein "lesender" ist (Option Lesen aktiviert, siehe oben) und neu gestartet wird, werden zu diesem Zeitpunktoptional die aktuellen Variablenwerte von den anderen Steuerungen, die diese schreiben, angefordert und werden von diesen dann gesendet, unabhängig von den anderen Zeitoder Event-Bedingungen, unter denen sie laut Konfiguration normalerweise senden. Voraussetzung ist, dass in der Variablenkonfiguration der werteschreibenden Steuerungen die Option Bootup Requests beantworten aktiviert ist (siehe unten).

Schreiben: Die Variablen der Liste werden geschrieben, wobei die nachfolgenden Optionen gelten:

Bootup requests beantworten: Wenn der lokale Knoten ein "schreibender" ist (Option Schreiben aktiviert, siehe oben), dann werden die Anforderungen lesender Knoten, die diese beim Bootup abschicken (Option Request on Bootup, siehe oben) beantwortet. Das heißt, die aktuellen

CoDeSys V2.3

6-5

Globale Variablen, Variablenkonfiguration, Dokumentvorlage

Variablenwerte werden übertragen, auch wenn die sonstigen konfigurierten Zeitoder Eventbedingungen dies nicht erfordern würden.

Zyklische Übertragung: Die Variablen werden in den hinter Intervall angegebenen Zeitabständen geschrieben (Zeitangabe z.B. T#70ms).

Übertragung bei Änderung: Die Variablen werden nur bei Änderung des Wertes geschrieben; mit einer Angabe hinter Mindestintervall kann jedoch ein Mindestzeitabstand zwischen den Übertragungen festgelegt werden.

Ereignisgesteuerte Übertragung: Die Variablen der Liste werden geschrieben, wenn die bei Variable eingetragene Variable TRUE wird.

Netzwerkglobale Variablenlisten sind im Object Organizer am Symbol . zu erkennen.

Hinweis: Wird eine netzwerkglobale Variable in einer oder mehreren Tasks verwendet, gilt für die zeitliche Komponente der Übertragung folgendes: Beim Aufruf jeder Task wird geprüft, welche Parameter für die Übertragung des Variablenwerts gelten (Konfiguration im Dialog 'Globale Variablenliste'). Der Variablenwert wird abhängig davon, ob die festgelegte Intervallzeit gerade abgelaufen ist, übertragen oder nicht übertragen. Bei jeder Übertragung wird der Intervallzeitzähler für diese Variable wieder auf Null zurückgesetzt.

Das Versenden wird jeweils vom Laufzeitsystem auf der betreffenden Steuerung durchgeführt. So müssen keine steuerungsspezifischen Funktionen für den Datenaustausch bereitgestellt werden.

Editieren der Listen für Globale Variablen, Globale Netzwerkvariablen

Der Editor für Globale Variablen arbeitet wie der Deklarationseditor. Falls allerdings eine externe Variablenliste abgebildet wird, können Sie diese hier nicht mehr editieren. Externe Variablenlisten können nur extern bearbeitet werden und sie werden bei jedem Öffnen und bei jedem Übersetzen des Projekts neu eingelesen.

Syntax:

VAR_GLOBAL

(* Variablendeklarationen *)

END_VAR

Netzwerkvariablen können nur verwendet werden, wenn das Zielsystem dies erlaubt, und werden dann ebenfalls in dieser Syntax definiert.

Beispiel einer Netzwerkvariablenliste, die durch Einbetten einer Exportdatei *.exp erzeugt wurde und dabei den Title NETWORK_VARS_UDP erhielt:

Editieren der Listen für Globale Variablen

Wenn es vom Laufzeitsystem unterstützt wird, kann mit remanenten Variablen (siehe auch Kapitel 5.2.1, Remanente Variablen, für einen Überblick bzgl. der Re-Initialisierung) gearbeitet werden. Es gibt zwei Arten von remanenten globalen Variablen :

6-6

CoDeSys V2.3

Соседние файлы в папке 759-333