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

Ergebnis 1 bis 10 von 10

Thema: SCL : Bits to Byte

  1. #1
    Registriert seit
    18.03.2013
    Ort
    Wittlich, RP
    Beiträge
    50
    Danke
    6
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,

    ich benutze das Tia Portal V12 und soll einen kleinen Baustein schrieben, um einen Codestecker einzulesen. Das ist soweit auch garkein Problem. allerdings soll dies in SCL geschehen. Und das kann ich leider nicht so gut, bzw meine Kentnisse beschränken sich auf Step7 SCL.

    Ich habe die folgenden Eingänge

    50.0, 50.1, 50.2, 50.4
    51.0, 51.1
    Dies sind 6 Eingänge von zwei 4DI Baugruppen.

    Diese möchte ich gerne in einen Hilfsmerker schrieben -> hMCodestecker.

    Kann ich irgendwie auf die einzelnen Bits in dem Byte zugreifen?
    z.B.:

    hMCodestecker.0:=%i50.0;
    (dies funktioniert nicht!)


    Vielen Dank für eure Hilfe!

    Sven
    Zitieren Zitieren SCL : Bits to Byte  

  2. #2
    Registriert seit
    03.01.2006
    Ort
    Im sonnigen Süden von Österreich!
    Beiträge
    1.377
    Danke
    227
    Erhielt 182 Danke für 167 Beiträge

    Standard

    Hallo,

    suche mal nach dem AT-Befehl / Deklaration hier im Forum.
    Für S7-1500 musst du nach dem SLICE Befehl suchen.

    Mit diesen kannst du dann auf einzelne Bits zugreifen.

  3. #3
    Registriert seit
    18.03.2013
    Ort
    Wittlich, RP
    Beiträge
    50
    Danke
    6
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hi, hab dazu heute Mittag schonmal was gesucht. Allerdings war das in dem Format:

    b : Byte
    a_b AT b Array of Byte

    in V12 ist das mit dem Doppelpunkt aber doch nichtmehr drin!?

    Ich weiß noch nicht recht wie ich dann das Array Ansprechen soll.
    Ist mein hMCodestecker das Array?

  4. #4
    Registriert seit
    03.01.2006
    Ort
    Im sonnigen Süden von Österreich!
    Beiträge
    1.377
    Danke
    227
    Erhielt 182 Danke für 167 Beiträge

    Standard

    Hast du ne 1500er?

    Dann lese mal hier weiter.

  5. #5
    Registriert seit
    18.03.2013
    Ort
    Wittlich, RP
    Beiträge
    50
    Danke
    6
    Erhielt 0 Danke für 0 Beiträge

    Standard

    ne ne 1200er

  6. #6
    Registriert seit
    03.01.2006
    Ort
    Im sonnigen Süden von Österreich!
    Beiträge
    1.377
    Danke
    227
    Erhielt 182 Danke für 167 Beiträge

    Standard

    Ok bei der 1200er ist ab der FW V2.0 das selbe:
    http://support.automation.siemens.co...subtype=130000

    Edit: falscher Link

  7. #7
    Registriert seit
    18.03.2013
    Ort
    Wittlich, RP
    Beiträge
    50
    Danke
    6
    Erhielt 0 Danke für 0 Beiträge

    Standard

    das ist doch FUP/KOP was du mir da zeigst!

    gibts das nicht für SCL??

  8. #8
    Registriert seit
    18.03.2013
    Ort
    Wittlich, RP
    Beiträge
    50
    Danke
    6
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hi nochmal!

    ich habe mir den Siemens Artikel nochmal genauer angeschaut.

    Nur zum Verständnis:
    Funktioniert das wenn ich Schreibe?

    hMCodestecker.x1:=%i50.0;

    kann es leider zur zeit nicht testen, erst morgen wieder auf der Arbeit.

  9. #9
    Registriert seit
    02.06.2006
    Beiträge
    223
    Danke
    7
    Erhielt 41 Danke für 35 Beiträge

    Standard

    ja so kannst du auf einzelne bits von einem Wort oder Byte zugreifen. Oder du machst es halt klassisch, definiere eine Variable als Merkerwort und deine nötigen Bit Variablen im selben Merkerbereich wie dein Merkerwort, dann kannst du auch Bitorientiert und Wortorientiert zugreifen.
    TIA legt dir halt automatisch einen symbolischen Namen an wenn du auf ein Bit über die absolute Adresse Probierst zuzugreifen die du als Merkerwort oder Merkerbyte angelegt hast.
    Slice funktioniert aber auch bei Merkerwort oder Merkerbyte

    MW_Eingänge %MW100
    hMCoderstecker1 %M100.0 := %I50.0
    hMCoderstecker2 %M100.1 := %I52.3
    etc

  10. #10
    Registriert seit
    18.03.2013
    Ort
    Wittlich, RP
    Beiträge
    50
    Danke
    6
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    So das funktionierte wunderbar! Danke an die Helfer!!!

    Zum mitschreiben:

    SCL

    byte.X0 - byte.X7 := bit_xyz
    word.b0 - word.b1 := byte_xyz
    dword.w0 - dword.w1 := word_xyz

    Vielen Dank!

Ähnliche Themen

  1. Byte im DB in Bits auflösen
    Von SIMREU im Forum Simatic
    Antworten: 26
    Letzter Beitrag: 11.03.2016, 09:58
  2. 8 Bits in Byte speichern
    Von HelmiMUC im Forum Simatic
    Antworten: 20
    Letzter Beitrag: 05.02.2013, 19:12
  3. Bits in Byte setzen
    Von bass im Forum Simatic
    Antworten: 5
    Letzter Beitrag: 14.07.2011, 14:42
  4. Bits aus Byte
    Von Reto im Forum Simatic
    Antworten: 12
    Letzter Beitrag: 30.01.2007, 23:53
  5. Bits in temporäres Byte mappen und gesetzte Bits zählen
    Von yetibrain im Forum PC- und Netzwerktechnik
    Antworten: 3
    Letzter Beitrag: 19.02.2005, 16:31

Lesezeichen

Berechtigungen

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