TIA Auf Array Wert mittels Variable zugreifen

--alex--

Level-2
Beiträge
92
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Habe eine S7-300er CPU mit TIAv16

Ich lese im AWL Daten aus einem DB (Array[0..100, 1..4] of Int) aus.

L "Modbus_Read_Config".Verdichter_1.Modbus_Adressen[1, 1]
...
L "Modbus_Read_Config".Verdichter_1.Modbus_Adressen[1, 2]

Jetzt wollte ich das Ganze in eine Schleife packen und dynamisch auslesen.
Mit 1500er Steuerungen und SCL habe ich das in etwa so gelöst.

FOR #i := 0 TO 41 DO
"KR".Kuehlleistung := "KR".Kuehlleistung + "KR".kw[#i].KS1_kuehlen + "KR".kw[#i].KS2_kuehlen;
END_FOR;

Im AWL wird aber

L "Modbus_Read_Config".Verdichter_1.Modbus_Adressen[[#i], 1]

leider nicht akzeptiert.

Jemand eine Ahnung wie ich das in AWL lösen kann?
 
Bei der 300er nicht. Aber du könntest einen Baustein der den indizierten Arrayzugriff erledigt in SCL in einen eigenen FC packen, und diesen dann in deinem KOP-Baustein aufrufen.

Das geht in AWL natürlich auch, nur nicht so einfach.
 
Zurück
Oben