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

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

Thema: Ziffer in DINT nullen

  1. #1
    Registriert seit
    24.03.2010
    Ort
    Westerwald
    Beiträge
    161
    Danke
    41
    Erhielt 16 Danke für 8 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    hallo zusammen,
    ich möchte aus einem Dint mit beliebigen wert die ersten 3 stellen Nullen
    zB.
    aus: L#134682 soll L#134000 werden
    wie stell ich das am besten an, hab mir schon den Kopf dran zerbrochen,
    ich glaub ich seh den wald vor lauter bäumen nicht :/ .


    Danke und Gruß
    Zitieren Zitieren Ziffer in DINT nullen  

  2. #2
    Registriert seit
    28.03.2008
    Beiträge
    142
    Danke
    19
    Erhielt 25 Danke für 25 Beiträge

    Standard

    Neu = Wert /1000 * 1000
    Komm und wecke den Teufel unter meiner Schädeldecke. Das Chaos hat die Macht!

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

    plc_typ (08.09.2010)

  4. #3
    Avatar von plc_typ
    plc_typ ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    24.03.2010
    Ort
    Westerwald
    Beiträge
    161
    Danke
    41
    Erhielt 16 Danke für 8 Beiträge

    Standard

    Ich sollte feierabend machen...

    danke

  5. #4
    Registriert seit
    26.01.2010
    Beiträge
    181
    Danke
    5
    Erhielt 30 Danke für 25 Beiträge

    Standard

    Hi, damit gehts auch

    SRD3
    SLD3

  6. #5
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.726
    Danke
    398
    Erhielt 2.401 Danke für 2.001 Beiträge

    Standard

    @Dr.M:
    das ist nicht so ganz das, was der TE haben wollte. Hast du deinen Code mal gegen-gecheckt und dir vergegenwärtigt, was er macht ? SRD 3 ist das gleiche wie "geteilt durch 8".
    Der Beitrag von Boxhead ist schon so korrekt ...

    Gruß
    Larry

  7. #6
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.191
    Danke
    923
    Erhielt 3.292 Danke für 2.661 Beiträge

    Standard

    Zitat Zitat von Dr.M Beitrag anzeigen
    Hi, damit gehts auch

    SRD3
    SLD3
    Oh, da kommt aber ein völlig anderes Ergebnis als gewollt bei 'raus, wenn man nur durch 8 teilt, den Divisionsrest
    wegwirft und dann wieder mit 8 multipliziert. Das passt selbst in hexadezimal-Darstellung nicht zur Aufgabenstellung.

    Übrigens kann man solche Tipps vor Veröffentlichung auch mal kurz in PLCSIM testen.

    PS: LL war natürlich schneller - wie fast immer.

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

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  8. #7
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.726
    Danke
    398
    Erhielt 2.401 Danke für 2.001 Beiträge

    Standard

    Zitat Zitat von PN/DP Beitrag anzeigen
    PS: LL war natürlich schneller - wie fast immer.
    ... oooch komm ....

  9. #8
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.191
    Danke
    923
    Erhielt 3.292 Danke für 2.661 Beiträge

    Blinzeln

    Wenn plc_typ gefragt hätte: "aus DW#2#10001111 soll DW#2#10001000 werden", dann würde der Tipp von Dr.M prima passen.
    Doch leider wollte plc_typ Dezimalziffern entfernen und keine Dualziffern ...

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

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet
    Zitieren Zitieren Dual gedacht?  

  10. #9
    Registriert seit
    26.01.2010
    Beiträge
    181
    Danke
    5
    Erhielt 30 Danke für 25 Beiträge

    Standard

    Oh ja, sorry. Stimmt natürlich.
    War wohl nicht ganz bei der Sache...

  11. #10
    Registriert seit
    06.10.2004
    Ort
    Kopenhagen.
    Beiträge
    4.626
    Danke
    377
    Erhielt 801 Danke für 642 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    L#134682 soll L#134000 werden

    Nicht L#135000 ? Also, mit Rundung ?

    Ohne Rundung ist volgenes korrekt:
    Code:
          L     "original_DINT"
          L     L#1000
          /D    
          L     L#1000
          *D    
          T     "modded_DINT"
    Mit Rundung ist volgenes korrekt:
    Code:
          L     "original_DINT"
          DTR   
          L     1.000000e+003
          /R    
          RND   
          L     L#1000
          *D    
          T     "modded_DINT
    Jesper M. Pedersen

Ähnliche Themen

  1. TP177 : Erste Ziffer von WORD fehlt
    Von smartie im Forum HMI
    Antworten: 3
    Letzter Beitrag: 10.02.2010, 09:34
  2. TargetVisu - Textfeld mit Nullen auffüllen ->GRRRRRRRRRRRR
    Von PLC-Gundel im Forum CODESYS und IEC61131
    Antworten: 2
    Letzter Beitrag: 15.12.2009, 14:05
  3. Int / Dint
    Von Gerri im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 09.07.2008, 11:14
  4. Antworten: 8
    Letzter Beitrag: 10.08.2005, 09:41
  5. Vorbelegung einer Zahl mit Nullen
    Von INST im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 10.02.2005, 09:00

Lesezeichen

Berechtigungen

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