Parametertyp S7_ARRAY

hoT

Level-1
Beiträge
109
Reaktionspunkte
1
Zuviel Werbung?
-> Hier kostenlos registrieren
hi,

Habe in SCL eine Quelle für den Baustein FB11 geschreiben und dieser wurde dann auch fehlerfrei übersetzt.

----------------------------
FUNCTION_BLOCK FB11
VAR_INPUT //Eingänge
ID: INT:= 0;
Job: DINT:=0;
Value: ARRAY[0..31] OF CHAR;
END_VAR
VAR_OUTPUT //Ausgänge
Q: BOOL:=0;
END_VAR
VAR

END_VAR;
END_FUNCTION_BLOCK

----------------------------

Nun möchte ich den FB11 als Baustein in einen Plan reinschieben und bekomme immer folgende Fehlermeldung:

lmcxhdhw.jpg


S7-PLCSIM; V5.4 + SP2
S7-SCL; V5.3 + SP5
STEP 7; V5.4 + SP4
CFC V7.0 + SP1 + HF2

Kann mir dabei einer weiterhelfen?
 
Außer dem Datentyp ARRAY ist es bis zur CFC - Version von PCS 7 V5.1 auch nicht möglich den Datentyp STRUCT zu verschalten. In der Version von PCS 7 V5.1 ist diese Funktionalität erstmalig verfügbar. Zu beachten ist, dass innerhalb der zu verschaltenden Strukturen ebenfalls kein Array enthalten sein darf. Weiterhin müssen die Strukturen im inneren Aufbau bezüglich Bezeichnern und Datentypen identisch sein. Der Bezeichner der gesamten Struktur hingegen kann unterschiedlich sein. Weiterhin können Sie "elementare" Datentypen im CFC verschalten. So z.B. BOOL, BYTE, WORD, INT, DWORD, REAL, STRING, DINT, TIME, S5TIME, DATE, CHAR, "DATE AND TIME" und "TIME OF DAY".

das problem kannst du umgehen, in dem du das array in einem DB von hand anlegst und mit den "normalen" hilfsmitteln befüllst ...
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Kannst du mir mal kurz auf die Sprünge helfen?

DB100:

Adresse: +8.0-40
Name: Field
TYP: ARRAY[1..31] CHAR


Wie kann ich das denn in SCL ansprechen?

Wenn möglich anhand dieses Beispiels!
 
Array Field

DB100.Field[1] := 'A' ;
DB100.Field[2] := 'B' ;


FOR i := 1 TO 31 BY 1 DO //Suche nach B

IF DB100.Field = 'B' THEN
gefunden := TRUE ; //2. Element
END_IF ;
END_FOR ;
 
Zurück
Oben