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

Seite 3 von 6 ErsteErste 12345 ... LetzteLetzte
Ergebnis 21 bis 30 von 55

Thema: TIA und Step7 erzeugen unterschiedliche Array-Offsets?

  1. #21
    LowLevelMahn ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    22.11.2007
    Beiträge
    731
    Danke
    6
    Erhielt 89 Danke für 62 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    das sieht doch OK aus - ein String[3] ist 5 Bytes lang - und bei dir ist das auch so, und genau so auch in Step7

    BOOL 0.0 -> kein alignment, size = 1 bit => OK
    STRING[3] 2.0 -> strings werden word aligned, size = string[3]=5 bytes => OK
    BYTE 7.0 -> byte wird bytealigned, size = 1 byte => OK
    INT 8.0 -> wird word aligned size = 2 bytes => OK
    BYTE 10.0 -> wird byte aligned, size = 1 byte => OK
    INT 12.0 -> wird word aligned, size = 2 byte => OK
    Geändert von LowLevelMahn (18.02.2013 um 19:14 Uhr)
    Zitieren Zitieren wiso?  

  2. #22
    Registriert seit
    25.06.2007
    Ort
    Dresden
    Beiträge
    3.930
    Danke
    465
    Erhielt 878 Danke für 634 Beiträge

    Standard

    Zitat Zitat von LowLevelMahn Beitrag anzeigen
    das sieht doch OK aus - ein String[3] is 5 Bytes lang - und bei dir ist das auch so, und genau so auch in Step7
    .. bei mir belegt in STEP7 Classic ein STRING[3] SECHS Byte

    und ein ARRY[0..1] of STRING[3] ZWÖLF Byte!

    NUR wenn danach ein reines BYTE kommt füllt das den Rest auf, aber natürlich nicht beim ARRAY, denn dort bleibt das 6te Byte unbelegt

    Frank
    Geändert von IBFS (18.02.2013 um 19:19 Uhr)

  3. #23
    LowLevelMahn ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    22.11.2007
    Beiträge
    731
    Danke
    6
    Erhielt 89 Danke für 62 Beiträge

    Standard

    Wie jetzt ... bei mir belegt in STEP7 Classic ein STRING[3] SECHS Byte
    in Arrays - aber nicht wenn freistehend - wie gesagt es ist nicht ganz so trivial und bedenke das du das Alignment nicht siehst

    schreib mal

    BOOL bit1
    STRING[3]
    BOOL bit2
    ARRAY[1..2] of string[3]
    BOOL bit3

    dann siehst du die Längen besser - es gibt fuer alle Typen ein wenig anderes Verhalten

  4. #24
    Registriert seit
    15.01.2005
    Ort
    In der Mitte zwischen Bayreuth/Weiden
    Beiträge
    6.725
    Danke
    314
    Erhielt 1.519 Danke für 1.282 Beiträge

    Standard

    Ja muss meine Meinung wohl revidieren, ein klein wenig zumindestens, hatte nicht geahnt, das das bei Step7 auch schon so war.
    Das ist dann wohl einer von wenigen Fällen wo das übliche Word-Alignment für den Allerwertesten ist.

    Also ist das Problem:
    Im Array hält sich TIA im Unterschied zu Step7 pro Feld an die 3 Byte Länge. Step7 macht hingegen im Array pro Feld 4 Bytes.

    Wenn man das ganze jetzt mit den nicht-Array String vergleicht, ist eigentlich sogar eher Step7 fehlerhaft und TIA korrekt.

    Mfg
    Manuel
    Angehängte Grafiken Angehängte Grafiken
    Geändert von MSB (18.02.2013 um 19:21 Uhr)
    Warum denn einfach, wenn man auch Siemens einsetzen kann!

    Wer die grundlegenden Freiheiten aufgibt, um vorübergehend ein wenig Sicherheit zu bekommen, verdient weder Freiheit noch Sicherheit (B. Franklin).

  5. #25
    Registriert seit
    25.06.2007
    Ort
    Dresden
    Beiträge
    3.930
    Danke
    465
    Erhielt 878 Danke für 634 Beiträge

    Standard

    Zitat Zitat von LowLevelMahn Beitrag anzeigen
    dann siehst du die Längen besser - es gibt fuer alle Typen ein wenig anderes Verhalten
    sei es wie es sei, aber ich will mir bei der Migration über solchen Unsinn keine Gedanken machen müssen.

    Für echte NEUANFÄNGE ist die 1500er da, alles andere soll so bleiben wie es ist, sonst erleben wir in den nächsten 15 Jahren Parallelbetrieb noch viel mehr Chaos.

    Frank
    Geändert von IBFS (18.02.2013 um 19:20 Uhr)

  6. #26
    LowLevelMahn ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    22.11.2007
    Beiträge
    731
    Danke
    6
    Erhielt 89 Danke für 62 Beiträge

    Standard

    wohl einer von wenigen Fällen wo das übliche Word-Alignment für den Allerwertesten ist
    so "üblich" ist das Word-Alignment dann auch wieder nicht

    Also ist das Problem:
    Im Array hält sich TIA im Unterschied zu Step7 pro Feld an die 3 Byte Länge. Step7 macht hingegen im Array pro Feld 4 Bytes.

    Wenn man das ganze jetzt mit den nicht-Array String vergleicht, ist eigentlich sogar eher Step7 fehlerhaft und TIA korrekt.
    Zu kurz gedacht - komplexe Typen wie Arrays, Struct und Strings werden Word-Aligned (wegen der Performance)
    wenn du jetzt bei String[3] nur die 5 statt die 6 nimmst ist nur der erste Index in dem Array Word-Aligned, der Rest nur noch
    Byte-Aligned - also ist TIA falsch

    Es macht gar keinen Sinn mit 50% Halbwissen+Vermutung irgendwelche Statements zu machen - die sind im Normalfall dann
    einfach zu 100% falsch
    Geändert von LowLevelMahn (18.02.2013 um 19:30 Uhr)

  7. #27
    Registriert seit
    30.08.2010
    Ort
    Östereich
    Beiträge
    1.458
    Danke
    502
    Erhielt 217 Danke für 192 Beiträge

    Standard

    Und nur 15 Jahre Parallelbetrieb halte ich für ein bisschen Kurzsichtig.

    OK Parallelbetrieb , aber 300 und 400 wirds noch viel länger welche geben.
    Elektrotechnik und Elektronik funktioniert mit Rauch (Beweis: Tritt Rauch aus, funktioniert auch das Bauteil nicht mehr)

  8. #28
    Registriert seit
    15.01.2005
    Ort
    In der Mitte zwischen Bayreuth/Weiden
    Beiträge
    6.725
    Danke
    314
    Erhielt 1.519 Danke für 1.282 Beiträge

    Standard

    Zitat Zitat von LowLevelMahn Beitrag anzeigen
    Zu kurz gedacht - komplexe Typen wie Arrays, Struct und Strings werden Word-Aligned (wegen der Performance)
    wenn du jetzt bei String[3] nur die 5 statt die 6 nimmst ist nur der erste Index in dem Array Word-Aligned, der Rest nur noch
    Byte-Aligned - also ist TIA falsch
    Im Prinzip kannst du das jetzt drehen wie du willst, und es ist im Prinzip auch egal, nur sollte es identisch sein.
    Warum denn einfach, wenn man auch Siemens einsetzen kann!

    Wer die grundlegenden Freiheiten aufgibt, um vorübergehend ein wenig Sicherheit zu bekommen, verdient weder Freiheit noch Sicherheit (B. Franklin).

  9. #29
    LowLevelMahn ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    22.11.2007
    Beiträge
    731
    Danke
    6
    Erhielt 89 Danke für 62 Beiträge

    Standard

    sei es wie es sei, aber ich will mir bei der Migration über solchen Unsinn keine Gedanken machen müssen.
    Im Prinzip kannst du das jetzt drehen wie du willst, und es ist im Prinzip auch egal, nur sollte es identisch sein.
    ...

    Ist das eigentlich normale SPSler Mentalität: Kurz 1-3 Posts voll in ein Fremdthema einsteigen und dann schnell wieder rausrudern - sowas sehe ich hier ständig
    Zitieren Zitieren Ich muss mich eben noch an euch SPSler gewöhnen  

  10. #30
    Registriert seit
    25.06.2007
    Ort
    Dresden
    Beiträge
    3.930
    Danke
    465
    Erhielt 878 Danke für 634 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von LowLevelMahn Beitrag anzeigen
    ...

    Ist das eigentlich normale SPSler Mentalität: Kurz 1-3 Posts voll in ein Fremdthema einsteigen und dann schnell wieder rausrudern - sowas sehe ich hier ständig
    Also ich habe 6 Beiträge geschrieben, aber egal ....

    ich betrachte es nicht als meine Aufgabe haufenweise Fehler in einer REGULÄR für GELD gekauften Software nachzustellen. Mir reicht das, was in diesem Zusammenhang jetzt aufgefallen ist.

    Wenn das ein BETA wäre oder ich mit einem externen SW-Test beauftragt wäre, dann von mir aus. Aber ich muss mit meiner Programmierarbeit Geld verdienen und ich bin es, der nachher dem Kunden

    nur mit größer Mühe erklären könnte ---- Ich bin daran nicht schuld ----

    Der Programmierer ist bei Maschinenfehlern immer Schuld. Wer damit nicht leben kann, soll Bäcker werden. Falls aber der Backautomat dann auch mit der V11 programmiert worden wäre, dann wäre selbst das nicht empfehlenswert.

    Frank

Ähnliche Themen

  1. B+R Automation Studio und Siemens STEP7, TIA und WinCC flexible
    Von Sudoku im Forum CODESYS und IEC61131
    Antworten: 0
    Letzter Beitrag: 18.09.2012, 07:57
  2. Step7/TIA und Wago safety
    Von mrtommyt im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 12.12.2011, 08:02
  3. Antworten: 15
    Letzter Beitrag: 07.07.2011, 22:15
  4. WinCC und Step7 Software automatisch erzeugen
    Von WinCC_Novize im Forum HMI
    Antworten: 4
    Letzter Beitrag: 05.11.2010, 00:00
  5. Unterschiedliche Bestellnummern in Step7 v5.3
    Von Anonymous im Forum Simatic
    Antworten: 9
    Letzter Beitrag: 03.10.2005, 16:16

Lesezeichen

Berechtigungen

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