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

Ergebnis 1 bis 2 von 2

Thema: step5 Analogwert nominiert einlesen, FB Problem

  1. #1
    Registriert seit
    20.03.2010
    Ort
    nähe Aschaffenburg
    Beiträge
    6
    Danke
    1
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo und Guten Tag,
    habe ein Problem mit einem Funktionsbaustein, der nach einem Umbau aufgetreten ist
    und bitte um eure Hilfe. Zuerst ein paar Fakten:
    Steuerung 135U CPU 928

    Nun zum Problem:
    habe am Eingang DW29 einen Rohwert anliegen der von einer Messung 0-300l/s erzeugt wird,
    möchte diesen skaliert weiter verarbeiten (DW31).
    Habe bei einem Eingangswert größer > 256l/s, bekomme ich aber am Ausgang DW31
    einen Überlauf, und dieser fängt wieder bei 0 an zu schreiben. (Schiebefunktion SRW ?)
    Habe den FB angehängt, mit der bitte ob jemand mal einen Blick darauf werfen könnte,
    und mein Problem entdeckt...
    Habe mit der Programmierung von FB`s leider sehr wenig zu tun, und komme mit den
    Befehlen nicht so ganz klar....
    Vielen Dank im voraus, Gruß Frank


    ;
    SPA FB 100
    NAME: AE
    EING: DW 29
    ANFW: KF +0
    ENDW: KF +300
    WERT: DW 31
    BU : M 6.1
    BUE : M 6.2
    ***

    FB 100
    ;
    NAME: AE
    BEZ : EING EW
    BEZ : ANFW DKF
    BEZ : ENDW DKF
    BEZ : WERT AW
    BEZ : BU ABI
    BEZ : BUE ABI
    L =EING
    SRW 6
    L KF +64
    >=F
    SPB =M001
    = =BU
    LW =ANFW
    T =WERT
    BEB
    M001: L =EING
    SRW 6
    L KF +320
    <=F
    SPB =M002
    = =BUE
    LW =ENDW
    T =WERT
    BEB
    M002: L =EING
    SRW 6
    L KF +64
    -F
    LW =ENDW
    XF
    SRW 8
    LW =ANFW
    +F
    T =WERT
    BE
    Zitieren Zitieren step5 Analogwert nominiert einlesen, FB Problem  

  2. #2
    Registriert seit
    05.01.2009
    Ort
    69198 Schriesheim
    Beiträge
    236
    Danke
    54
    Erhielt 34 Danke für 33 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo welche Umbauten wurden denn vorgenommen ?
    habe mal kommentiert was ich weiß

    Code:
    SPA FB 100
    NAME: AE 
    EING: DW 29
    ANFW: KF +0
    ENDW: KF +300
    WERT: DW 31
    BU : M 6.1
    BUE : M 6.2
    ***
    
    FB 100
    ;
    NAME: AE 
    BEZ : EING EW     
    BEZ : ANFW DKF
    BEZ : ENDW DKF
    BEZ : WERT AW
    BEZ : BU ABI
    BEZ : BUE ABI
    L =EING                 //Lade Eingangswort
    SRW 6                   // schiebe rechts um 6 bit
    L KF +64                //lade Festpunktkonstante dezimal +64
    >=F                      //vergleiche auf größer gleich 
    SPB =M001            // wenn bdingung erfüllt prüfe ab m001 den Überlauf
    = =BU                   //bei Bedingung nicht erfüllt, setze Fehlerbit BU ( vermutlich Bereichsunterschreitung )
    LW =ANFW            //lade den Anfangswert
    T =WERT               //transfer nach Ausgang 
    BEB                      //  beende bedingt  ( warum ??? VKE muß bis hierher 0 sein, ergo wird das VKE nie 1 )
    M001: L =EING       //Sprungmarke wenn keine Bereichsunterschreitung auftritt //Lade Eingangswort
    SRW 6                  //siehe oben
    L KF +320             // siehe oben
    <=F                     //vergleiche auf kleiner gleich 
    SPB =M002           //bei Bedingung nicht erfüllt, setze Fehlerbit BUE ( vermutlich Bereichsueberschreitung)
    = =BUE                 //setze Fehlerbit BUE
    LW =ENDW            // lade den Endwert
    T =WERT              //transfer nach Ausgang 
    BEB                      //  beende bedingt  ( warum ??? VKE muß bis hierher 0 sein, ergo wird das VKE nie 1 )
    M002: L =EING        //siehe oben
    SRW 6                   //siehe oben
    L KF +64                //subtrahiere vom Eingangswort welches um 6 Stellen nach rechts geschoben wurde 64
    -F                        //subtrahiere vom Eingangswort welches um 6 Stellen nach rechts geschoben wurde 64
    LW =ENDW             //lade Endwert
    XF                        // kenne ich nicht 
    SRW 8                  // schiebe nach recht um 8 Stellen
    LW =ANFW            // lade den Anfangswert
    +F                        //addition Konstante Festpunkt 
    T =WERT               //transfer nach WERT
    BE                        // beende
    nach dem fehlerbild zu urteilen, fährst du in eine Bytegrenze. Außerdem frage ich mich, wenn du einen Überlauf bekommst, sollte dieser
    doch mit dem Endwert beschrieben werden.

    Es sind aber bestimmt noch einige S5 Gurus unterwegs, würde mich auch interessieren.

    gruß thomas
    Radiozitat: "Meine Frau hat nen geilen Arsch, nämlich mich"

Ähnliche Themen

  1. Analogwert einlesen - Übersteuert beim CH_AI
    Von Shettyman im Forum Simatic
    Antworten: 1
    Letzter Beitrag: 11.04.2011, 04:40
  2. Pro - "mm" einen Analogwert einlesen
    Von Rauchegger im Forum Simatic
    Antworten: 9
    Letzter Beitrag: 16.02.2011, 17:01
  3. Analogwert einlesen und auswerten
    Von Funstriker im Forum Simatic
    Antworten: 7
    Letzter Beitrag: 04.06.2009, 11:27
  4. Analogwert einlesen
    Von BastiMG im Forum Simatic
    Antworten: 13
    Letzter Beitrag: 07.08.2007, 10:18
  5. S5-100 CPU 100 Analogwert einlesen
    Von jumbo im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 11.03.2006, 20:00

Lesezeichen

Berechtigungen

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