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

Ergebnis 1 bis 10 von 10

Thema: Byte in INT umwandeln

  1. #1
    Registriert seit
    24.08.2013
    Ort
    Mittelhessen
    Beiträge
    35
    Danke
    5
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo Leute. ich brauch mal wieder Hilfe. Mit eurer Hilfe ist es mir gelungen aus SFC1-Baustein die Stunden heraus zu holen. Jetzt will ich die diesen Wert auf einen INT-Vergleicher geben, um bei Überschreitung eine Pumpe freizugeben. Hintergrund der Aktion ist: Die Pumpe soll einmal am Tag laufen [Blockierschutz]. Also, wie kann ich Byte in INT umwandeln. Bin auch schon auf "Umwandlungsoperationen Übersicht" leider hatte ich kein Erfolg. Gruß
    Zitieren Zitieren Byte in INT umwandeln  

  2. #2
    Registriert seit
    06.10.2004
    Ort
    Kopenhagen.
    Beiträge
    4.631
    Danke
    377
    Erhielt 802 Danke für 643 Beiträge

    Standard

    In STL:

    L "byte_wert"
    T "int_wert"

    In LAD oder FBD, MOVE verwenden.
    Jesper M. Pedersen

  3. #3
    Registriert seit
    27.06.2009
    Ort
    am Nordharz
    Beiträge
    3.717
    Danke
    443
    Erhielt 920 Danke für 740 Beiträge

    Standard

    In FUP/KOP BYTE zu INT verschieben, in AWL Byte in Akku laden und dann zum INT-Speicher transferieren und in SCL mit Byte_to_Int.

  4. #4
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.207
    Danke
    927
    Erhielt 3.293 Danke für 2.662 Beiträge

    Standard

    Stunde (und auch die anderen Zeitteile) aus DATE_AND_TIME von SFC1 ist ein Byte BCD-codiert.
    Genaugenommen muß die Umwandlung mit BCD-to-Int gemacht werden:

    AWL:
    Code:
    L #bStunde
    BTI
    T #IStunde
    FUP/KOP:
    #bStunde --> MOVE --> #tempWord --> BCD_I --> #IStunde

    Harald
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  5. #5
    Registriert seit
    24.08.2013
    Ort
    Mittelhessen
    Beiträge
    35
    Danke
    5
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hallo,
    ich sehe den Wald vor lauter Bäume nicht.

    L DB2.DBB 4
    BTI
    T DB80.DBB 2

    So habe ich es gemacht. Wenn ich jetzt DB80 auf den INT-Vergleicher setze kommt es zu einem Typen-Konflikt.
    Was mach ich falsch.

    Gruß

  6. #6
    Registriert seit
    06.10.2004
    Ort
    Kopenhagen.
    Beiträge
    4.631
    Danke
    377
    Erhielt 802 Danke für 643 Beiträge

    Standard

    haralds Auge ist schärfer als meine.

    Probier mit
    L DB2.DBB 4
    BTI
    T DB80.DBW 2

    edit:
    Zum Typen-Konflikt:
    In DB80, muss die Bytes 2-3 als ein INT deklariert werden.
    Geändert von JesperMP (15.10.2013 um 22:10 Uhr)
    Jesper M. Pedersen

  7. #7
    Registriert seit
    15.04.2011
    Beiträge
    1.122
    Danke
    229
    Erhielt 208 Danke für 176 Beiträge

    Standard

    Zitat Zitat von ertrinkender Beitrag anzeigen
    L DB2.DBB 4
    BTI
    T DB80.DBB 2
    Probier es mal so......

    L DB2.DBB 4
    BTI
    T DB80.DBW 2
    Gruß
    190B

  8. #8
    Registriert seit
    24.08.2013
    Ort
    Mittelhessen
    Beiträge
    35
    Danke
    5
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hallo Leute,

    vielen Dank für eure Hilfe.
    Durch eure Anmerkungen bin ich erst auf das wirkliche Problem gestoßen.
    Dies lag ein paar Netzwerke drüber!!!

    Wie sagt "Erfahrender Benutzer" immer so schön:
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    Vielen Dank nochmals, bis zum nächsten Problem.
    Dies steht schon vor der Tür

  9. #9
    Registriert seit
    15.04.2011
    Beiträge
    1.122
    Danke
    229
    Erhielt 208 Danke für 176 Beiträge

    Standard

    Zitat Zitat von ertrinkender Beitrag anzeigen
    Durch eure Anmerkungen bin ich erst auf das wirkliche Problem gestoßen.
    Dies lag ein paar Netzwerke drüber!!!
    Und was war das wirkliche Problem?
    Gruß
    190B

  10. #10
    Registriert seit
    24.08.2013
    Ort
    Mittelhessen
    Beiträge
    35
    Danke
    5
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo 190B,

    ich habe versucht eine Hexadezimal-Zahl mit dem BTI-Umwandler zu transferieren.
    Ganz schön pfiffig, ne!!!
    Nach langem Suchen ist es mir dann wie Schuppen von den Augen gefallen. Gut das es den Siemens-Diagnose-Puffer gibt.

    Gruß

Ähnliche Themen

  1. INT oder DINT in CHAR/BYTE Umwandeln
    Von MAVI im Forum Simatic
    Antworten: 41
    Letzter Beitrag: 29.04.2016, 12:51
  2. Umwandeln von INT nach Byte u Byte + n
    Von Gerold im Forum Simatic
    Antworten: 4
    Letzter Beitrag: 07.04.2009, 10:07
  3. S7 Time in int umwandeln
    Von Jürgen.F im Forum Simatic
    Antworten: 8
    Letzter Beitrag: 25.09.2008, 16:23
  4. REAL in BYTE umwandeln
    Von Terence_Hill im Forum Simatic
    Antworten: 4
    Letzter Beitrag: 18.01.2008, 20:03
  5. Int umwandeln
    Von kolbendosierer im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 28.03.2005, 13:16

Lesezeichen

Berechtigungen

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