SCL DB Länge ermitteln

Dotzi

Level-1
Beiträge
225
Reaktionspunkte
37
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

wie kann man in S7-SCL die Länge eines Datenbausteins ermitteln?

Dabei soll keine Function in AWL mit DBLG aufgerufen werden.


Gruß

Christian
 
Zuviel Werbung?
-> Hier kostenlos registrieren
wie kann man in S7-SCL die Länge eines Datenbausteins ermitteln?

Dabei soll keine Function in AWL mit DBLG aufgerufen werden.
Da fällt mir spontan nur eine doofe Idee ein:
In einer Schleife immer das nächst höhere Wort abfragen.
Wenn sich der Fehler OB meldet war es ein Wort zuviel. :ROFLMAO:
Code:
    U #Merker Fehler OB
    R #Schleifendurchlauf
    SPBN End
    L Anzahl DB Word
    + -1
    T Anzahl DB Word
    U #Merker Fehler OB
    R #Merker Fehler OB
End: NOP 0
 
Zuviel Werbung?
-> Hier kostenlos registrieren
@Paule
Es gibt einen AWL-Operator der da heißt:
L DBLG
der SFC ist wieder eine andere Sache ...

L DBLG (Lade die Länge des Global-Datenbausteins) lädt die Länge des Global-Datenbausteins in AKKU 1, nachdem zuvor der Inhalt von AKKU 1 in AKKU 2 gespeichert wurde.
Mfg
Manuel
 
... Onkel Dagobert hat es ja schon angedeutet ...
Du kannst in SCL natürlich alle externen FC's, FB's, SFC's oder SFB's etc. in deinen Code mit einbinden und deren Ergebnisse auch auswerten und weiter verwenden.

Wenn du nicht weißt, wie das geht, dann gibt SCL dir dazu auch Hilfe (ich kann es jetzt nicht nachschauen - aber irgend etwas mit Baustein-Vorlage).

Das heißt, der vorgeschlagene SFC wäre da schon genau das Richtige ...

Gruß
Larry
 
Der Weg über den SFC ist in Ordnung, weil er automatisch in jeder CPU vorhanden ist.

Ich wollte nur keine extra Funktion haben, der man die DB Nummer übergibt und dann die Länge zurück bekommt. Diese müsste man dann ja immer im Projekt mit bereitstellen.

Perfekt hätte ich natürlich einen Befehl wie L DBLG in SCL gefunden, aber man kann nicht alles haben.

Also abschließend, vielen Dank für die Auflösung meiner Frage.
 
Zurück
Oben