Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Seite 3 von 3 ErsteErste 123
Ergebnis 21 bis 25 von 25

Thema: NullDivision abfragen SCL

  1. #21
    Registriert seit
    06.10.2004
    Ort
    Kopenhagen.
    Beiträge
    4.624
    Danke
    377
    Erhielt 801 Danke für 642 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Man kann nach "OK" testen.
    In die Optionen "OK Setzen" aktivieren.

    In Code:

    "MyValue" := "SomeNumber" / "SomeOtherNumber" ;

    //Nach verdächtigen Code:

    IF NOT OK THEN
    GOTO ERROR ;
    END_IF;

    // Wenn OK, dann weiter mit den Normalen Program

    ...
    ...
    ...

    ERROR : // tu utwas. z.B. Störmeldung aktivieren.
    Jesper M. Pedersen

  2. Folgende 2 Benutzer sagen Danke zu JesperMP für den nützlichen Beitrag:

    ducati (12.09.2013),gout (12.09.2013)

  3. #22
    Registriert seit
    09.08.2006
    Beiträge
    3.627
    Danke
    912
    Erhielt 656 Danke für 542 Beiträge

    Standard

    Jo, Jesper.

    aber er wollte nachträglich in einem Array nach Inf suchen.
    Geändert von ducati (12.09.2013 um 15:38 Uhr)

  4. #23
    gout ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    12.09.2013
    Beiträge
    24
    Danke
    8
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Ist auch gut, denke man kann auch ein array nach "ok" absuchen. Ich werde es testen.

  5. #24
    Registriert seit
    09.08.2006
    Beiträge
    3.627
    Danke
    912
    Erhielt 656 Danke für 542 Beiträge

    Standard

    Zitat Zitat von gout Beitrag anzeigen
    Ist auch gut, denke man kann auch ein array nach "ok" absuchen. Ich werde es testen.
    nee, das geht nicht. Das OK-Flag steht nicht in der jeweiligen Variablen sondern wird allgemein nach einer fehlerhaften Operation gesetzt. OK ist quasi eine Variable, welche 0 ist, wenn eine Operation fehlerhaft ausgeführt wurde.

    Gruß.

    Flags (OK-Flag)

    Das OK-Flag dient dazu, die korrekte oder inkorrekte Ausführung eines Bausteins zu vermerken. Es ist eine lokale Variable vom Typ BOOL mit dem vordefinierten Namen "OK".
    Zu Beginn einer Programmausführung hat das OK-Flag den Wert TRUE. Es kann an beliebiger Stelle im Baustein mit S7-SCL-Anweisungen abgefragt oder auf TRUE / FALSE gesetzt werden. Tritt während der Ausführung einer Operation ein Fehler auf (z.B. eine Division durch Null), wird das OK-Flag auf FALSE gesetzt. Beim Verlassen des Bausteins wird der Wert des OK-Flags in den Ausgangsparameter ENO gespeichert und kann dadurch vom aufrufenden Baustein ausgewertet werden.
    Deklaration
    Das OK-Flag ist eine systemvereinbarte Variable. Es ist keine Vereinbarung erforderlich. Sie müssen aber die Compileroption "OK-Flag setzen" vor dem Übersetzen wählen, wenn Sie das OK-Flag in Ihrem Anwenderprogramm verwenden möchten.
    Beispiel
    Code:
    // OK-Flag auf TRUE setzen,
    // damit überprüft werden kann,
    // ob die Aktion korrekt abläuft.
    OK:= TRUE;
    Division:= 1 / IN;
    IF OK THEN
    // Die Division verlief korrekt.
    
    // :
    // :
    
    ELSE // Die Division verlief fehlerhaft.
    
    // :
    
    END_IF;
    Geändert von ducati (12.09.2013 um 15:37 Uhr)

  6. #25
    gout ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    12.09.2013
    Beiträge
    24
    Danke
    8
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Danke, habs gerade gelesen. Beim nächsten mal muss ich mir mal selber sagen, "erst lesen dann schreiben"

Ähnliche Themen

  1. TIA Wie Array in SCL abfragen?
    Von spirit im Forum Simatic
    Antworten: 15
    Letzter Beitrag: 24.04.2013, 16:09
  2. MW in SCL abfragen?
    Von spirit im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 21.03.2013, 14:15
  3. Merkerbyte abfragen in scl
    Von Werner1 im Forum Simatic
    Antworten: 4
    Letzter Beitrag: 19.03.2012, 16:11
  4. Timer in SCL abfragen
    Von geduldiger im Forum Simatic
    Antworten: 1
    Letzter Beitrag: 25.09.2007, 15:55
  5. Mit SCL Flanke 0->1 abfragen
    Von Anonymous im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 21.06.2005, 18:07

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •