-> Hier kostenlos registrieren
Hallo Zusammen,
für eine Kopplung und den Datenaustausch zwischen einem PFC 200 und einer S7-Steuerung habe ich in Codesys eine globale Variablenliste mit ca. 200 Variablen angelegt, die ich in Merkerbereiche aufgeteilt habe und blockweise an die S7 übertrage. Diese Variablen werde ich in der gleichen Struktur in mehreren Projekten einsetzen, mit dem einzigen Unterschied, dass ich je nach Projekt die verwendeten Merkerbereiche anpassen muss. Bisher habe ich jeder Variable einzeln eine Merkeradresse zugeordnet, das sieht in etwa wie folgt aus:
Variable_1 AT %MX6100.0: BOOL;
Variable_2 AT %MX6100.1 : BOOL;
Variable_3 AT %MX6100.2 : BOOL;
Variable_4 AT %MX6100.3: BOOL;
Variable_5 AT %MX6100.4 : BOOL;
Da ich jedoch nicht in jedem Projekt alle Adressen einzeln anpassen möchte, suche ich nach einem komfortableren Weg die Adressierung zu gestallten.
Meine bisherige Überlegung war, dies über ein Array zu lösen. Jedoch sind meine Versuche das so umzusetzen bisher gescheitert, ich bekomme immer wieder die Fehlermeldung "fehlerhafter Initialwert". Meine Deklaration sieht dabei aktuell wie folgt aus:
Array_Send_Byte AT%MB16100 :ARRAY[0..1] OF BYTE;
Variable_90 : BYTE := Array_Send_Byte [0];
Ich stehe hier gerade etwas auf dem Schlauch und wüsste zur Zeit auch nicht, wie ich das bei boolschen Werten umsetzen könnte, zumal für die boolschen Werte dann ein ganzes Byte belegt wird.
Bin ich denn grundsätzlich auf dem richtigen Weg oder hat hier jemand eine Idee, wie man das aufbauen könnte?
Ich verwende aktuell folgende Hard- und Software:
Wago PFC 200 (750-8212/025-002)
Codesys Version 2.3.9.55
Vorab schon vielen Dank für eure Hilfe.
Und beste Grüße aus HH!
für eine Kopplung und den Datenaustausch zwischen einem PFC 200 und einer S7-Steuerung habe ich in Codesys eine globale Variablenliste mit ca. 200 Variablen angelegt, die ich in Merkerbereiche aufgeteilt habe und blockweise an die S7 übertrage. Diese Variablen werde ich in der gleichen Struktur in mehreren Projekten einsetzen, mit dem einzigen Unterschied, dass ich je nach Projekt die verwendeten Merkerbereiche anpassen muss. Bisher habe ich jeder Variable einzeln eine Merkeradresse zugeordnet, das sieht in etwa wie folgt aus:
Variable_1 AT %MX6100.0: BOOL;
Variable_2 AT %MX6100.1 : BOOL;
Variable_3 AT %MX6100.2 : BOOL;
Variable_4 AT %MX6100.3: BOOL;
Variable_5 AT %MX6100.4 : BOOL;
Da ich jedoch nicht in jedem Projekt alle Adressen einzeln anpassen möchte, suche ich nach einem komfortableren Weg die Adressierung zu gestallten.
Meine bisherige Überlegung war, dies über ein Array zu lösen. Jedoch sind meine Versuche das so umzusetzen bisher gescheitert, ich bekomme immer wieder die Fehlermeldung "fehlerhafter Initialwert". Meine Deklaration sieht dabei aktuell wie folgt aus:
Array_Send_Byte AT%MB16100 :ARRAY[0..1] OF BYTE;
Variable_90 : BYTE := Array_Send_Byte [0];
Ich stehe hier gerade etwas auf dem Schlauch und wüsste zur Zeit auch nicht, wie ich das bei boolschen Werten umsetzen könnte, zumal für die boolschen Werte dann ein ganzes Byte belegt wird.
Bin ich denn grundsätzlich auf dem richtigen Weg oder hat hier jemand eine Idee, wie man das aufbauen könnte?
Ich verwende aktuell folgende Hard- und Software:
Wago PFC 200 (750-8212/025-002)
Codesys Version 2.3.9.55
Vorab schon vielen Dank für eure Hilfe.
Und beste Grüße aus HH!