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

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

Thema: Großes WORD selber machen

  1. #1
    Registriert seit
    20.08.2007
    Beiträge
    112
    Danke
    13
    Erhielt 10 Danke für 8 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,

    mal ne Frage, in Codesys V3 gibt es ja den Datentyp LWORD (64Bit großes Word). Gibt es eine Möglichkeit ein eigenes WORD zu erzeugen, dass größer als 64Bit ist, sich aber genauso Verunden und verodern lässt, wie BOOL, BYTE, WORD; DWORD und LWORD?

    Gruß wonderfulworld
    Solls was Rechtes sein, oder darfs auch was von Siemens sein?
    Zitieren Zitieren Großes WORD selber machen  

  2. #2
    Registriert seit
    11.12.2009
    Beiträge
    2.113
    Danke
    388
    Erhielt 390 Danke für 271 Beiträge

    Standard

    Was ist an

    WORD1 AND WORD2 AND WORD3 ...

    oder

    WORD1 OR WORD2 OR WORD3 ...

    so schlimm?

    Grüße

    Marcel
    Stell Dir vor es geht, und keiner kriegts hin!

  3. #3
    wonderfulworld ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    20.08.2007
    Beiträge
    112
    Danke
    13
    Erhielt 10 Danke für 8 Beiträge

    Standard

    Daran ist garnichts schlimm. Aber was hat das jetzt mit meiner Frage zu tun? Ich brauche für einen konkreten Anwendungsfall so ein großes Word.(Das warum ist mir gerade ein bisschen zu kompliziert hier zu erleutern) und wollte wissen ob es bei Codesys V3 die Möglichkeit gibt, sich so ein WORD zu basteln. Dass man das auch anders lösen kann, ist mir auch klar. Aber in diesen einen Fall, wäre ein großes WORD halt die elegantere Lösung. Wenn das nicht geht, ist das auch OK. Aber ich dachte, frag mal lieber. Codesys V3 hat soviel Möglichkeiten, da weiß man nie, was es alles gibt.
    Gruß wonderfulworld
    Geändert von wonderfulworld (24.06.2014 um 14:56 Uhr)
    Solls was Rechtes sein, oder darfs auch was von Siemens sein?

  4. #4
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.166
    Danke
    921
    Erhielt 3.286 Danke für 2.655 Beiträge

    Standard

    Da vermutlich noch keine SPS ein WORD > 64 Bit nativ unterstützt, müßtest Du diesen Datentyp selber der SPS beibringen. Ist aber eigentlich nicht schwer. Du mußt halt nur alle Operationen, welche Du anwenden willst, selber als Functions schreiben und die Variablen dieses Datentyps als STRUCT oder ARRAY OF BYTE (oder irgendwas) oder als STRING übergeben.

    Allerdings sehe ich wie Marcel keinen dringenden Grund, einen solchen Datentyp zu erfinden. Das was Du vorhast läßt sich doch bestimmt auch mit LWORD erledigen. Oder mit einem ARRAY. Erzähl doch mal mehr ...

    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
    06.10.2004
    Ort
    Kopenhagen.
    Beiträge
    4.622
    Danke
    377
    Erhielt 799 Danke für 642 Beiträge

    Standard

    Wofür brauchst du ein Zahlenwert das nicht innerhalb von −(263) und 263 − 1 liegen kann ?

    Nur als interesse.
    Jesper M. Pedersen

  6. #6
    wonderfulworld ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    20.08.2007
    Beiträge
    112
    Danke
    13
    Erhielt 10 Danke für 8 Beiträge

    Standard

    Bei unserem Schieberegister haben wir bisher für jede Spur einen Bit in einem BYTE als Gut/Schlechtmeldung genutzt. Um dieses Schieberegister drumherum haben wir jetzt auch eine relativ große Bibliothek von Bausteinen und Funktionen geschrieben. Jetzt gibt es aber bei uns immer wieder Maschinen mit mehr als 32 Einträge pro Schiebetakt. Das heißt jetzt nicht, dass wir eine 32-Spurige Maschine bauen, sondern dass Trays in der Maschine gibt, die mehr als 32 Produkte beinhalten. (32 war bei Codesys V2 die Grenze, aber so wie ich unsere Konstruktion kenne, werden die die Grenze von 64 auch bald sprengen. ). Deshalb haben wir gerade bei uns die Diskussion, ob wir nicht auf ein anderes Schieberegister umsteigen. Mit der Konsequenz, viel gut geteste Bausteine wegzuwerfen bzw. umzuschreiben. Deshalb hier die Frage. Wie ihr seht, ist auch neue UND und ODER Funktionen zu schreiben, nicht die Lösung.
    Gruß
    wonderfulworld
    Solls was Rechtes sein, oder darfs auch was von Siemens sein?

  7. #7
    Registriert seit
    24.02.2009
    Beiträge
    1.242
    Danke
    23
    Erhielt 276 Danke für 235 Beiträge

    Standard

    Da wird euch wohl nichts anderes Übrig bleiben als etwas neues zu programmieren. Wenn ihr euer Schieberegister mit einem Array umsetzt, dann seit ihr in Zukunft fast nach oben offen was die Länge betrifft.

  8. #8
    Registriert seit
    06.10.2004
    Ort
    Kopenhagen.
    Beiträge
    4.622
    Danke
    377
    Erhielt 799 Danke für 642 Beiträge

    Standard

    Jepp, einfach mit ARRAYs arbeiten.
    Das wird auch sauberer denke ich.
    Jesper M. Pedersen

  9. #9
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.166
    Danke
    921
    Erhielt 3.286 Danke für 2.655 Beiträge

    Standard

    Hätte man das Bit-Schieberegister mit einem ARRAY OF BOOL realisiert, dann würde sich das wahrscheinlich leicht auf 100 Bits vergrößern lassen. Allerdings hätte man das dann ohne die Word-"Schweinereien" sauber programmieren müssen... naja, hinterher ist man immer schlauer.

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

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  10. #10
    wonderfulworld ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    20.08.2007
    Beiträge
    112
    Danke
    13
    Erhielt 10 Danke für 8 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Das Array hat halt den Nachteil, dass es nicht so schön zum Debuggen ist. Deshalb sind wir eigentlich schon Fans vom WORD : )
    Solls was Rechtes sein, oder darfs auch was von Siemens sein?

Ähnliche Themen

  1. Einen String in ein großes Array of Byte eintragen.
    Von Ralle im Forum CODESYS und IEC61131
    Antworten: 3
    Letzter Beitrag: 03.02.2015, 10:16
  2. Antworten: 0
    Letzter Beitrag: 13.05.2014, 14:01
  3. Antworten: 0
    Letzter Beitrag: 30.01.2013, 18:14
  4. Antworten: 0
    Letzter Beitrag: 09.10.2012, 16:29
  5. Großes Problem mit Mitsubishi SC-09 Adapter
    Von revelation19 im Forum Sonstige Steuerungen
    Antworten: 6
    Letzter Beitrag: 05.01.2012, 13:42

Lesezeichen

Berechtigungen

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