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

Ergebnis 1 bis 6 von 6

Thema: Maximale DB Größe 64K - Wie wird die Größe gezählt?

  1. #1
    Registriert seit
    04.03.2011
    Beiträge
    25
    Danke
    0
    Erhielt 5 Danke für 3 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo zusammen,

    ich versuchge gerade eine AWL Datei zu übersetzen, in der ich 39136 Bits erstellen möchte. Nun bricht der Übersetzer allerdings folgender Fehler Meldung ab:

    Max Vars Länge von 64K überschritten.

    Wenn ich aber meine Bit Anzahl durch 8 Teile komme ich auf 4392 Bytes, welches ja um einiges geringer ist. Warum also diese Fehlermeldung?

    Besten Dank vorab.

    mfg.
    Markus
    Zitieren Zitieren Maximale DB Größe 64K - Wie wird die Größe gezählt?  

  2. #2
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.181
    Danke
    923
    Erhielt 3.289 Danke für 2.658 Beiträge

    Standard

    Hast Du zwischen Deinen Bits Lücken? (z.B. Alignment zwischen Strukturen oder Arrays)
    Wie sieht die Deklaration/Struktur des DB aus?

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

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  3. #3
    AutomationSE ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    04.03.2011
    Beiträge
    25
    Danke
    0
    Erhielt 5 Danke für 3 Beiträge

    Standard

    Hallo,

    ich denke ich habe keine Lücken zwischen den Bits. Die AWL Quelle sieht wie folgt aus:

    DATA_BLOCK "SUED_1_EG"
    TITLE =
    VERSION : 0.1
    STRUCT
    D0 : BOOL; //
    D1 : BOOL; //
    D2 : BOOL; //
    ....
    D34767 : BOOL; //
    D34768 : BOOL; //
    D34769 : BOOL; //
    END_STRUCT ;
    BEGIN
    D0 := FALSE;
    D1 := FALSE;
    D2 := FALSE;
    D3 := FALSE;
    ....
    D34767 := FALSE;
    D34768 := FALSE;
    D34769 := FALSE;
    END_DATA_BLOCK

    Wenn ich nur die Hälfte der Bits anlege geht das ganze. Im DB Editor sehe ich dann eben als Letzte Adresse die Byte 2150. Ich hab dann auch versucht einfach diese ersten 2150 Bits zu kopieren. Klappt auch soweit, nur wenn ich speichern bekomme ich die Meldung: "Die Schnittstelle überschreitet Größe von 65354 Bytes". Die Anzeige im Editor zeigt beim letzten Bit nur die Adresse 4300.

    Besten Dank vorab.

    Gruß
    Markus

  4. #4
    AutomationSE ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    04.03.2011
    Beiträge
    25
    Danke
    0
    Erhielt 5 Danke für 3 Beiträge

    Standard

    Ich denke mein Problem ist das scheinbar jede Deklaration im Hintergrund 2Byte belegt, so daß ich die Konfiguration mittels Doppelworten wahrscheinlich unterbringen kann. Aus der Online Hilfe:

    Eine einzelne elementare Deklaration benötigt 2 Bytes. Deklarationen in referenzierten Bausteinen wie Multiinstanzen oder UDTs müssen wie STRUCTs berücksichtigt werden, bei denen jede einzelne Komponente 2 Bytes benötigen.

    Trotzdem besten Dank.

    Gruß
    Markus

  5. #5
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.181
    Danke
    923
    Erhielt 3.289 Danke für 2.658 Beiträge

    Standard

    Gemeint ist nicht die DB-Größe sondern die Online-Beschreibung der Baustein-Schnittstelle (im Ladespeicher). Die ist offensichtlich auf eine maximale Größe von ca. 32700 Elementen begrenzt.

    Warum deklarierst Du die tausenden BOOLs einzeln, kannst Du nicht ein "ARRAY [0..34769] OF BOOL" nehmen?
    Oder Du verteilst die Bits auf 2 DBs.

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

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  6. #6
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.181
    Danke
    923
    Erhielt 3.289 Danke für 2.658 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Nachtrag: Arrays gehen nur bis [0..32767]

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

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

Ähnliche Themen

  1. Antworten: 5
    Letzter Beitrag: 04.04.2012, 09:46
  2. Antworten: 0
    Letzter Beitrag: 07.11.2011, 18:17
  3. maximale Größe von FC?
    Von bischkul im Forum Simatic
    Antworten: 5
    Letzter Beitrag: 10.12.2008, 08:56
  4. Maximale Größe Rohdatentag?
    Von BorisDieKlinge80 im Forum HMI
    Antworten: 1
    Letzter Beitrag: 15.05.2008, 22:54
  5. Maximale größe deine DB's?!
    Von Hawkster im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 17.12.2006, 22:11

Lesezeichen

Berechtigungen

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