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

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 20

Thema: Umwandeln Hex in Dez mit S7-300

  1. #1
    Registriert seit
    17.09.2003
    Ort
    Zell bei Dietfurt a.d. Altmühl
    Beiträge
    357
    Danke
    8
    Erhielt 27 Danke für 25 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo SPS Freunde.

    Habe ein kleines Problem. Wie kann ich eine Hexadezimale Zahl (0123..ABCDEF) in eine Dezimale Zahl umwandeln. Bekomme diesen Wert von einem FU und soll nun die Stromaufnahme des FU an einem Leistsystem anzeigen. Das Leitsystem kann aber keinen Hexwert in eine Dezimalnzahl umwandeln. In Step 7 habe ich keinen Befehl gefunden der mir das macht. Vieleicht habt ihr eine paar Tipps wie ich das in der
    S7-300 relativ einfach lösen kann.
    MfG

    Hubert

    \"Never change a running system. \"
    Zitieren Zitieren Umwandeln Hex in Dez mit S7-300  

  2. #2
    Registriert seit
    14.01.2004
    Ort
    Hattorf
    Beiträge
    3.201
    Danke
    297
    Erhielt 311 Danke für 266 Beiträge

  3. #3
    Registriert seit
    20.08.2003
    Beiträge
    275
    Danke
    38
    Erhielt 32 Danke für 31 Beiträge

    Standard

    Hallo,
    wenn es sich wirklich um Heaxadezimalzahlen handelt, dann ist es eine reine Frage der Interpretation des Bitmusters und die Zahl muss nicht umgewandelt werden.

    Bsp.: im MB 10 steht die Dualzahl 0010 1010 --> Hexadezimal 16#2A = Dezimalzahl 42
    ganz einfach kannst du dieses testen indem du in der Variablentabelle das MB 10 als Hexadezimalzahl (Anzeigeformat HEX) und als Dezimalzahl (Anzeigeformat DEZ) betrachtetst,

    Zur Darstellung im Leitsystem einfach das Anzeigeformat auf "Dezimal" einstellen und der Wert vom FU wird richtig dargestellt.

    Gruß, Rayk

  4. #4
    Registriert seit
    08.10.2009
    Beiträge
    2
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hallo.Wie mache ich das selbe in die andere Richtung. Ich will auf der Visu Wert 31 eingeben und diesen muss ich dann als 1F weitergeben an einen Motorenbaustein.
    Sprich ich muss die 31 dezimal in 1F hexadezimal umwandeln.
    Zitieren Zitieren In die andere Richtung  

  5. #5
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.727
    Danke
    398
    Erhielt 2.404 Danke für 2.002 Beiträge

    Standard

    ... wie es Rayk schon erklärt hat ... Hex 1F und Dez 31 sind absolut dasselbe - die Zahl wird von der Anzeige einfach nur anders dargestellt - der Inhalt ändert sich nicht.

    Gruß
    LL

  6. #6
    Registriert seit
    19.01.2007
    Ort
    Ruhrpott-West
    Beiträge
    383
    Danke
    97
    Erhielt 99 Danke für 74 Beiträge

    Standard

    Hallo Christian,

    die "Umwandlung" läuft in beide Richtungen. Um genau zu sein ist es gar keine Umwandlung, sondern nur die Darstellung eines Wertes in verschiedenen Zahlensystemen.
    Die Information im Byte ist immer dieselbe. Egal wie die Darstellung aussieht.

    Gruß
    maweri
    Es ist schon alles gesagt worden - nur noch nicht von jedem!

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

    Standard

    Hallo,
    ich denke das geschilderte Problem bezieht sich darauf,
    das in der Visu der wert 31 ( Dezimal ) eingegeben wird,
    und dieser in der Steuerung als Hex Wert übergeben wird,
    sprich Hex 31 => 49 dezimal.
    würde mich auch mal interessieren.
    gruß thomas

  8. #8
    Registriert seit
    19.01.2007
    Ort
    Ruhrpott-West
    Beiträge
    383
    Danke
    97
    Erhielt 99 Danke für 74 Beiträge

    Standard

    Das funktioniert so aber nicht.
    Wenn in der Visu 31(dez) steht, dann ist dieser Wert auch im Byte hinterlegt.
    dez: 31
    hex: 1F
    bin: 0001 1111
    Selbst wenn der FU, die Steuerung oder was auch immer den Wert als hex interpretiert, so liest er 1F(hex) und nicht 31(hex).

    Schwieriger wird's wenn man z.B. eine Seriennummer (16stellig) in 8 Byte hexdezimal hinterlegt hat:
    1.Byte 23(hex)
    2.Byte 45(hex)
    3.Byte 67(hex)
    ...
    und rauskommen soll:
    234567...(dez)
    Und dann noch jede Stelle als CHAR weitergeben. (Den Fall habe ich nämlich gerade) Dann geht das Rechnen los.

    Das ist aber für gewöhnlich bei Parameterübergaben nicht der Fall.
    Es ist schon alles gesagt worden - nur noch nicht von jedem!

  9. Folgender Benutzer sagt Danke zu maweri für den nützlichen Beitrag:

    thomas_1975 (09.10.2009)

  10. #9
    Registriert seit
    08.10.2009
    Beiträge
    2
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    ok,wenn dass so ist, sollte es kein Problem darstellen.ich war mir nur nicht sicher, ob wenn ich 31 dez ins byte schreibe und dort 31 als dezimalzahl abgelegt wird, ob der Rollenmotor dann die 31als eine hex zahl anschaut. dann nähmlich stimmt der wert überhaupt nicht wenn er die 31 dez als 31 hex intepretiert, anstatt 1F!

  11. #10
    Registriert seit
    24.02.2010
    Beiträge
    68
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo zusammen,

    habe ein ähnliches Problem.
    Wert aus der Visu ist in Hex, INT move es in WORD bleibt aber HEX.
    Zähler interpretiert HEX aber als DEZ.
    Wie wandle ich HEX in DEZ um? Bekomme immer Programmierfehler sobald ein Buchstabe aus dem HEX code als Wert anliegt, ansonsten keine Probleme!
    Zitieren Zitieren Zähler  

Ähnliche Themen

  1. von FUB in SCL umwandeln ?
    Von feelix1 im Forum Simatic
    Antworten: 28
    Letzter Beitrag: 20.03.2008, 10:15
  2. Umwandeln!
    Von sr-83 im Forum Simatic
    Antworten: 36
    Letzter Beitrag: 04.09.2007, 16:12
  3. Umwandeln
    Von isensa im Forum Simatic
    Antworten: 12
    Letzter Beitrag: 24.07.2006, 00:59
  4. S5 umwandeln
    Von Holle6 im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 14.09.2005, 06:06
  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
  •