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

Ergebnis 1 bis 5 von 5

Thema: DB-struktur

  1. #1
    Registriert seit
    13.06.2006
    Beiträge
    12
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Ich implementiere gerade meine ersten S7-300 Projekte und stoße dabei immer wieder auf das selbe problem:
    Ich erstelle für einen Anlagenteil einen FB mit dazugehören InstanzDBs.
    Alle Anlagenparameter werden in einen GlobalenDB (z.B. DB10) abgelegt. Diese Parameter werden dann an die einzelnen FBs der Anlagenteile weitergegeben welche eben gebraucht werden.
    Ich habe nun z.B.: 100 Paramter im DB10 und komme gegen Ende des Projektes drauf das einige Parameter nicht sinnvoll sind und nicht gebraucht werden. Ich kann diese jetzt aber nicht ohne weiteres herauslöschen, da ja die nachfolgenden Parameter dann eine andere Adresse haben und im OB1 wo diese an den einzelnen FBs angehängt sind, sind dann falsche Zuweisungen:
    Bsp.
    An einem Eingang des FB13 hängt eine Varibale DB10.DBW15
    Lösche ich nun eine DWORD-Variable im DB10 vor dieserdann würde die verwendete Variable nun DB10.DBW13 heißen.
    Im OB1 ist am FB13 aber immer nochDB1.DBW15 angehägt.
    Gibt es denn keine Möglichkeit die Variablen mit einen Symbolnamen anzuhängen damit bei einer Änderung des DB10 die Entwicklungsumgebung checkt das alle nachfolgenden aktualisiert werden müssen?!?
    Zitieren Zitieren DB-struktur  

  2. #2
    Pimsti ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    13.06.2006
    Beiträge
    12
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Ich lösche natürlich keine DWORD sondern eine WORD-Variable (2-Byte!) ;O)

  3. #3
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.262
    Danke
    537
    Erhielt 2.707 Danke für 1.956 Beiträge

    Standard

    Das ist ein gefährliches Feld, da man schnell Alles durcheinander bringt.
    Suche mal im Forum unter "Bausteinkonsistenz". Es gibt in Step7 einen Mechanismus für dein Problem. Alle DB-Daten müssen dazu symbolisch angesprochen werden. Mittels der Objekteingenschaften (rechte Maustaste click auf Ordner Bausteine) kann man die Eigenschaften der Konsistenz bestimmen. "Symbolisch Vorrang" heißt, daß bei Änderungen an den Bausteinen, bei den Daten die Symbolik verglichen wird und dann auf das symbolisch richtige Datenwort geändert wird. Das passiert dann bei der Konsistenzprüfung. Man sollte Änderungen an Datenbausteinen in kleinen Schritten vornehmen und dann regelmäßig die Konsienzprüfung durchführen. Vorher immer eine Sicherung anlegen! Es gibt eine ganze Menge Fallstricke, die dann zu Datensalat führen können. Besonders die Arbeit mit Instanz-DB, Udt und deren Deklaration und Nutzung in FB machen häufig Schwierigkeiten und erfordern dann Nacharbeiten per Hand.

    PS: Im Zweifelsfalle ist es oft besser, nicht genutzte Variablen als ReserveXX umzubenennen. Kann viel Ärger ersparen .
    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

  4. #4
    Pimsti ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    13.06.2006
    Beiträge
    12
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Ich habe mich gerade mit der rein symbolischen Adressierung wie du es beschreiben hast, gespielt und dies sieht mich ganz gut an. Nur ist jetzt wichtig dass man ein System in der Namensgebung hat (wie z.B. ungarische Notation beim Java bzw C++ programmieren). Eins ist aber immer noch unkomfortabel:
    Wenn ich im DB meinen Variablennamen ändere dann muss man das auch per Hand überall dort machen wo man diese Variable verwendet hat. Wenn ich in Java z.B. den Variablenname ändere dann wird das auch in allen Methoden durchgezogen.
    Gibts hier auch etwas bei Siemens?

  5. #5
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.262
    Danke
    537
    Erhielt 2.707 Danke für 1.956 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Wenn du nur Variablennamen ändern willst, mußt du für Bausteinkonsistenzprüfung den Operandenvorrang auf Absolut stellen.
    Aber Vorsicht, immer nur eines ändern, Variablennahmen, oder die "Zusammenstellung" von Datenbausteinen.
    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. Struktur in Array
    Von ipacsre im Forum CODESYS und IEC61131
    Antworten: 9
    Letzter Beitrag: 19.05.2010, 20:08
  2. Date_Time Struktur
    Von Nerowinger84 im Forum HMI
    Antworten: 0
    Letzter Beitrag: 15.03.2010, 16:56
  3. Ein- und Ausgänge in Struktur
    Von bonatus im Forum CODESYS und IEC61131
    Antworten: 1
    Letzter Beitrag: 05.06.2009, 14:04
  4. Pointer auf Struktur (SCL)?
    Von momo99 im Forum Simatic
    Antworten: 26
    Letzter Beitrag: 25.03.2009, 10:23
  5. Struktur am Bildbaustein
    Von Neesen im Forum HMI
    Antworten: 4
    Letzter Beitrag: 21.09.2007, 22:06

Lesezeichen

Berechtigungen

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