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

Ergebnis 1 bis 3 von 3

Thema: In WinCC Bit in Var auswerten

  1. #1
    Registriert seit
    30.01.2009
    Beiträge
    442
    Danke
    25
    Erhielt 48 Danke für 44 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo Leute,

    ich möchte in WinCC per C-Script mehrere 32-Bit Variablen auswerten, ob hier das Bit 0 = 1 ist, also eine oder Verknüpfung von DWord Variablen.
    Ist min. ein Bit0 =1 soll eine binäre Variable = 1 sein.
    Bei mir funzt es nur teilweise, ich denke im Script fehlt noch das entscheidene:
    #include "apdefap.h"
    int gscAction( void )
    {
    // WINCC:TAGNAME_SECTION_START
    // syntax: #define TagNameInAction "DMTagName"
    // next TagID : 1
    // WINCC:TAGNAME_SECTION_END
    #define TAG_1 "MAK3_B_BAUF" //32Bit
    #define TAG_2 "MAK4_B_BAUF" //32Bit
    #define TAG_3 "MAK4_B_AUTO" //binär
    // WINCC:PICNAME_SECTION_START
    // syntax: #define PicNameInAction "PictureName"
    // next PicID : 1
    // WINCC:PICNAME_SECTION_END

    if ((GetTagDWord (TAG_1)) & 0x1)
    SetTagBit(TAG_3,1);
    else
    SetTagBit(TAG_3,0);
    if ((GetTagDWord (TAG_2)) & 0x1)
    SetTagBit(TAG_3,1);
    else
    SetTagBit(TAG_3,0);
    return 0;
    }
    Zitieren Zitieren In WinCC Bit in Var auswerten  

  2. #2
    Registriert seit
    29.03.2004
    Beiträge
    5.802
    Danke
    144
    Erhielt 1.712 Danke für 1.242 Beiträge

    Standard

    Bei deinem Code wird immer nur das Bit in TAG_2 ausgewertet.
    Wenn ich das richtig verstanden habe meinst du es so:
    Code:
    if (((GetTagDWord (TAG_1)) & 0x1) || ((GetTagDWord (TAG_2)) & 0x1))
      SetTagBit(TAG_3,1);    
    else
      SetTagBit(TAG_3,0);    
    
    return 0;

  3. Folgender Benutzer sagt Danke zu Thomas_v2.1 für den nützlichen Beitrag:

    Move (22.03.2011)

  4. #3
    Move ist gerade online Erfahrener Benutzer
    Themenstarter
    Registriert seit
    30.01.2009
    Beiträge
    442
    Danke
    25
    Erhielt 48 Danke für 44 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hi,

    jep das funktioniert.
    Nur was mache ich wenn ich z.B. 50Var auswerten will, das wird ja ein riesen Rattenschwanz, wie weit kann man das treiben oder geht das noch eleganter?

    Gruß
    Move

Ähnliche Themen

  1. DB auswerten
    Von Rauchegger im Forum Simatic
    Antworten: 8
    Letzter Beitrag: 27.10.2010, 22:45
  2. WINCC 7.0 Rohdatentyp auswerten ?
    Von sailor im Forum HMI
    Antworten: 4
    Letzter Beitrag: 25.05.2010, 10:06
  3. WinCC Flex OPC-Server Störung auswerten
    Von Lars Weiß im Forum HMI
    Antworten: 4
    Letzter Beitrag: 21.11.2008, 19:46
  4. Antworten: 0
    Letzter Beitrag: 31.03.2008, 08:35
  5. Störmeldungen auswerten
    Von Anonymous im Forum Simatic
    Antworten: 1
    Letzter Beitrag: 24.11.2005, 16:09

Lesezeichen

Berechtigungen

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