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

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

Thema: DINT Maximalwert

  1. #1
    Registriert seit
    25.10.2007
    Beiträge
    7
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo Zusammen,

    Ich habe folgendes Problem:

    Ich soll von einem Leitrechner eine Teile-ID empfangen und weiterverarbeiten, die Teile-ID ist allerdings 10-stellig (JJMMTT0001), da ein DINT nur bis max. +/-2147483648 geht würde die SW nur bis zum Jahr 2021 verwendbar sein.

    das vorzeichen würd ich nicht brauchen weil die zahl immer positiv ist, gibt es ein Möglichkeit das vorzeichen abzuschneiden und statt dessen den Wertebereich zu erhöhen, in einem Anwender lesbaren Format?
    oder gibt es ein anderes Format das ich noch nicht kenne?

    REAL oder DWORD sind auch begrenzt bzw. nicht lesbar...

    Am besten wäre 9999999999 (10-st) aber auch mit 9912319999 wäre mir schon geholfen.

    Bitte um Hilfe wenn jemand eine Idee hat?

    Danke im Vorraus

    Wolfgang
    Zitieren Zitieren DINT Maximalwert  

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

    Standard

    Was bedeutet Weiterverarbeiten?

    Wie wäre es mit einem String?

    Denn Zerteilen und die einzelenen Komponenten JJ MM TT 0001 zu verarbeiten?
    If you open your Mind too much, your Brain will fall out.

  3. #3
    Registriert seit
    09.05.2007
    Beiträge
    188
    Danke
    16
    Erhielt 24 Danke für 23 Beiträge

    Standard

    Zitat Zitat von Wolfi_L Beitrag anzeigen
    Ich soll von einem Leitrechner eine Teile-ID empfangen und weiterverarbeiten, die Teile-ID ist allerdings 10-stellig (JJMMTT0001), da ein DINT nur bis max. +/-2147483648 geht würde die SW nur bis zum Jahr 2021 verwendbar sein.
    Da stellt sich mir die Frage wie Du die Daten empfängst?
    Projektierst Du das selber? Was ist mit splitten?

  4. #4
    Wolfi_L ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    25.10.2007
    Beiträge
    7
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Danke erstmal fürs melden,

    Mit verarbeiten meine ich, intern weiterschleifen bzw. Teile-ID mit Zeitstempel und weiteren Daten in einen Ringpuffer (DB) eintragen sprich die Teile ID wird Teil eines UDT.
    An einen String hätte ich auch schon gedacht, möchte dies aber wenns geht vermeiden da das die Schnittstelle zum PC zusätzlich aufblasen würde bzw. ich intern beim durchsuchen des DB bzw. beim kopieren der Daten in andere DB`s komplexerer Operationen brauchen würde.
    wenns nicht anders geht bleibt mir wahrscheinlich nichts anderes über.

    Hättest du eine Idee um es anders zu realisieren?

    Danke nochmal

    mfg wolfgang

  5. #5
    Registriert seit
    22.11.2005
    Ort
    kl.Odenwald
    Beiträge
    716
    Danke
    111
    Erhielt 85 Danke für 71 Beiträge

    Standard

    Bietet sich da nicht der Datentyp DATE an?

    uupps- gerade gesehen, dass da ja noch ne 4-stellige Int daran hängt.

    Dann geht's mit einfachen Datentypen nicht.
    Geändert von kiestumpe (25.10.2007 um 11:37 Uhr)
    "Das Leben ist viel zu kurz, um schlecht zu essen !"
    (Johann Lafer zur SWR3 Grillparty)

  6. #6
    Wolfi_L ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    25.10.2007
    Beiträge
    7
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Zitat Zitat von Gecht Beitrag anzeigen
    Da stellt sich mir die Frage wie Du die Daten empfängst?
    Projektierst Du das selber? Was ist mit splitten?

    Ich habe das vorhin falsch formuliert, entschuldige...

    Ich empfange die Daten als erstes über Profibus von einer anderen Maschine und muss diese dann einem Leitrechner mit anderen Daten wie Zeitstempel,etc... über MPI in einem DB bereitstellen.

    Deshalb ist zerteilen zwar möglich würde das ganze aber ein bisschen komplexer machen...

    danke mfg wolfgang

  7. #7
    Wolfi_L ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    25.10.2007
    Beiträge
    7
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Zitat Zitat von kiestumpe Beitrag anzeigen
    Bietet sich da nicht der Datentyp DATE an?

    uupps- gerade gesehen, dass da ja noch ne 4-stellige Int daran hängt.

    Dann geht's mit einfachen Datentypen nicht.


    Aber beim Datentype DATE sind Zeichen wie (-) enthalten bzw. kann ich keine fortlaufende Nummer hinten anhängen was teil der ID wäre...

    mfg wolfgang

  8. #8
    Registriert seit
    28.10.2005
    Ort
    Ottweiler, Saar
    Beiträge
    940
    Danke
    259
    Erhielt 124 Danke für 109 Beiträge

    Standard

    Wie wäre es denn, aus der ID eine UNIX-Zeit zu bauen?
    Hat den Vorteil, dass die in ein DINT reinpasst (bis 2037).
    Rechnen kann man auch prima damit, es lässt sich nachvollziehen,
    wann das Teil gefertigt wurde etc.


    PS: nach 2037 sind die DINTs größer oder Du vielleicht pensioniert.

  9. #9
    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 Wolfi_L Beitrag anzeigen
    REAL oder DWORD sind auch begrenzt bzw. nicht lesbar...

    Am besten wäre 9999999999 (10-st) aber auch mit 9912319999 wäre mir schon geholfen.
    begrenzt: ist halt als DWORD zwanzig Jahre später Schluss - 2042

    nicht lesbar: muss das im DB für Menschen mit PG lesbar vorliegen? oder reichts, wenn die Visualisierung aus dem Unlesbaren wieder was
    verständliches macht (falls Visu vorhanden)?

    Deine Daten liegen ja als 9912319999 vor - das lässt sich ja prinzipiell in DINT bzw. DWORD abbilden - natürlich nicht lesbar.

  10. #10
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.222
    Danke
    533
    Erhielt 2.698 Danke für 1.950 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Ich würde das auf jeden Fall aufteilen und in der UDT eine Struct anlegen, die die aufgeteilten Daten enthält. Dann kannst du einmal bei Bedarf die Struct "durchreichen" (geht auch noch eine weitere UDT) und andererseits mit den Einzeldaten als normale INT/DINT arbeiten, ohne daß es irgendwelche Beschränkungen gibt. Zum Umkopieren könnte man dann auch einfach mit dem SFC20 arbeiten.
    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

Ähnliche Themen

  1. Antworten: 1
    Letzter Beitrag: 09.09.2011, 14:43
  2. DINT überlauf
    Von Bensen83 im Forum Antriebstechnik
    Antworten: 1
    Letzter Beitrag: 04.07.2011, 20:07
  3. maximalwert in DB
    Von newman im Forum Simatic
    Antworten: 5
    Letzter Beitrag: 05.06.2010, 14:46
  4. DInt zu any
    Von Bensen83 im Forum Simatic
    Antworten: 1
    Letzter Beitrag: 31.03.2010, 09:00
  5. Int / Dint
    Von Gerri im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 09.07.2008, 11:14

Lesezeichen

Berechtigungen

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