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

Ergebnis 1 bis 8 von 8

Thema: Bit überprüfen in KOP

  1. #1
    Registriert seit
    24.10.2007
    Beiträge
    14
    Danke
    10
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Tag all miteinander!

    Als blutiger Anfänger bastele ich mich gerade durch mein erstes KOP Programm. Der Kunde wünscht es so, auch wenn es mir nicht liegt (Würde am liebsten alles in C schreiben, habe die letzten Jahre Mikrocontroller in C programmiert).
    Nun habe ich ein kleines Problem:
    Eine Variable ist in der Symboltabelle z.B. als VN angelegt. Nun will ich das letzte Bit der Variable prüfen. Ein

    VN.0
    -| |-


    geht nicht. Muss ich das Ding 7 mal shiften? Oder geht das mit einem Funktionsblock? Ich konnte im Handbuch nix finden

    Gruß
    Woeba
    Zitieren Zitieren Bit überprüfen in KOP  

  2. #2
    Registriert seit
    18.09.2004
    Ort
    Münsterland/NRW
    Beiträge
    4.719
    Danke
    729
    Erhielt 1.159 Danke für 970 Beiträge

    Standard

    Von welchem Typ ist denn VN.
    Wenn VN zb. als MW 0 angelegt ist, dann kannst du mit
    M0.0
    M0.1
    ..
    M0.7
    M1.0
    M1.1
    ..
    M1.7
    auf die einzelnen Bits zugreifen

  3. #3
    Woeba ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    24.10.2007
    Beiträge
    14
    Danke
    10
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hallo!

    Wenn ich direkt auf den Merker gehe ist es, ok, nur denke ich das es bei eimem größeren Projekt wichtig ist ggf. Symbole in der Symboltabelle ändern zu können und nicht alle Netze durchgehen zu müssen.
    Irgendwie muss das doch gehen.

  4. #4
    Registriert seit
    18.09.2004
    Ort
    Münsterland/NRW
    Beiträge
    4.719
    Danke
    729
    Erhielt 1.159 Danke für 970 Beiträge

    Standard

    Fallls du nachträglich die Symbolik ändern willst, kannst du mit der Einstellung Operandenvorrang beeinflussen was geändert wird. Symbol oder Adresse.
    Für mehr Infos siehe im Siemens Support unter der Beitrags-ID 12412995
    Ausserdem gibt es noch die Funktion umverdrahten (Beitrags-ID 51210)

    Ist es das was du suchst, ansonsten beschreibe es mal genauer was du möchtest.

  5. #5
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.227
    Danke
    534
    Erhielt 2.698 Danke für 1.950 Beiträge

    Standard

    Zitat Zitat von Woeba Beitrag anzeigen
    Hallo!

    Wenn ich direkt auf den Merker gehe ist es, ok, nur denke ich das es bei eimem größeren Projekt wichtig ist ggf. Symbole in der Symboltabelle ändern zu können und nicht alle Netze durchgehen zu müssen.
    Irgendwie muss das doch gehen.
    Bei Merkern kannst du das ja machen.

    Das MW bekommt ein eigenes Symbol.
    Jeder Merker bekommt ein eigenes Symbol.
    Gruß
    Ralle

    ... there\'re 10 kinds of people ... those who understand binaries and those who don\'t …
    and the third kinds of people … those who love TIA-Portal

  6. #6
    Registriert seit
    01.10.2007
    Ort
    Waiblingen
    Beiträge
    3.317
    Danke
    767
    Erhielt 536 Danke für 419 Beiträge

    Standard

    Zitat Zitat von Woeba Beitrag anzeigen
    Muss ich das Ding 7 mal shiften?
    Hi,

    vermutlich ist das die sauberste Lösung. aber erinnere ich mich richtig: Du bist doch der Mann mit der 200er?

    Gruß

  7. #7
    Registriert seit
    07.03.2004
    Beiträge
    4.369
    Danke
    946
    Erhielt 1.158 Danke für 831 Beiträge

    Standard

    Zitat Zitat von Woeba Beitrag anzeigen
    ...
    Irgendwie muss das doch gehen.

    Ich würde da eine eigene Funktion bauen.

    In SCL würde das so aussehen:
    Code:
    FUNCTION FC10 : VOID
    VAR_INPUT
      inINT   :INT;
      inBitNo :INT;
    END_VAR
    
    
    VAR_TEMP
      myINT :INT;
      myBoolArray AT myINT :ARRAY[0..15] OF BOOL;
    
    END_VAR
    
      // Anweisungsteil
      myINT := inINT;
      OK:= myBoolArray[inBitNo]; 
    END_FUNCTION
    Wie die Verwendung in KOP aussehen könnte sieht man am Bild im Anhang.
    Um welchen Variablentyp geht es denn bei Dir?

    Natürlich könnte man das Siemens Typische MSB und LSB Problem mit einer weiteren SCL Zeile umgehen.


    Wenn es hier aber um eine S7-200 geht kannst Du meine Lösung gleich vergessen.
    Angehängte Grafiken Angehängte Grafiken
    If you open your Mind too much, your Brain will fall out.

  8. #8
    Woeba ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    24.10.2007
    Beiträge
    14
    Danke
    10
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo!

    Erstmal danke für die Tipps, mit denen ist das ganze gut hinzukriegen. Ich dachte nur es müsse für so eine einfache Sache eine direkte Möglichkeit über einen Synthax geben. Bin halt hochsprachen-verwöhnt
    @Perfektionist: Und ja, ich bin der mit der S7-200 der an seinem ersten Projekt damit bastelt.

Ähnliche Themen

  1. S5 CPU überprüfen
    Von kleiner mann im Forum Simatic
    Antworten: 14
    Letzter Beitrag: 28.09.2011, 22:25
  2. AWG auf Funktion überprüfen
    Von hbedir im Forum Antriebstechnik
    Antworten: 3
    Letzter Beitrag: 24.09.2010, 07:28
  3. Überprüfen der Konfiguration
    Von Spoon im Forum CODESYS und IEC61131
    Antworten: 18
    Letzter Beitrag: 05.06.2009, 19:13
  4. Merkerwortbereich überprüfen
    Von mde im Forum Simatic
    Antworten: 5
    Letzter Beitrag: 06.03.2009, 11:49
  5. DB auf Änderungen überprüfen
    Von Anonymous im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 05.03.2005, 11:26

Lesezeichen

Berechtigungen

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