TIA Ein DB-Array mit Istwerten aus einem Eingang zyklich Füllen in SCL für S7-1200

Zuviel Werbung?
-> Hier kostenlos registrieren
Also Array große dynamisch definieren geht soweit ich weiß nicht (???), aber man könnte ein großes Array erstellen und nur zu Teil füllen lassen. Das wäre aber Speicherverschwendung.
Z.B. könnte das Array in Größe 100 vordefiniert werden und die ganzen Max-Werte in Schleifenzählern durch betreffende Variable ersetzt werden. Naja, dann lieber einheitlich imo.

Code:
IF #Enable AND (#Taktmerker XOR #Takt) AND (#Zähler < #Messwertanzahl) THEN
    #Messwert[#Zähler] := #"Analog in";
    #Zähler := #Zähler + 1;
    [COLOR=#ff0000]#Taktmerker := #Takt;[/COLOR]
END_IF;

Das Rot markierte ist überflüssig. Du machst die gleiche Aktion am Bausteinende nochmal, in der IF-Anweisung ist sie quasi wirkungslos.
 
Zuletzt bearbeitet:
Wird das Array nicht schon im Variablenbereich deklariert? Von aussen hat man dann doch keinen Zugriff auf diesen Deklarationsbereich, oder doch?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Bei Siemens Step7: man soll nicht auf die Instanzvariablen zugreifen, kann es aber ungehindert tun. Es gibt keine "privaten" Variablen. Nur TEMP-Variablen sind vor Zugriff von außerhalb halbwegs geschützt (nur von einem Baustein selbst aufgerufene Bausteine können auf die TEMP-Variablen des Aufrufers zugreifen).

Harald
 
hey Leute ich habe keinen Plan wie ich ein neues Forum erstelle also fange ich hier an.
Ich programmiere im Automation Studio und muss einen Wert durch meine Visualisierung erfassen, dies gescchieht mit zwei knöpfe DOWN und UP es soll jeweils 0.1 rauf oder runter gezählt werden.
Das einzige was ich zusammen bekomme ist ein zähler haha. jz fraag ich euch ob jemand weis wie das im Strukturierten Text aussieht ob mir jemand kurz eine Erklärung geben kann.?
Danke im vorraus. haut rein
 
Zurück
Oben