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

Ergebnis 1 bis 4 von 4

Thema: Instanz-DB aufschalgen - Wozu ?

  1. #1
    Registriert seit
    15.05.2015
    Beiträge
    161
    Danke
    6
    Erhielt 36 Danke für 35 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,

    ich kenne die Befehle AUF DB[..] und AUF DI[..]. Das aufschlagen eines DBs und das anschließende hantieren mit des Inhalt ist mir geläufig und ich verstehe auch den Sinn. Warum kann man allerdings einen DB als I-DB öffnen ? Ich verstehe nicht wozu das gut sein soll einen Global-DB als Instanz-DB aufzuschlagen Und kann man nachdem man einen DB als I-DB aufgeschlagen hat noch symbolisch auf die Variablen des "echten" Instanz-DBs (sprich die Schnittstellen-Variablen) zugreifen ?
    Zitieren Zitieren Instanz-DB aufschalgen - Wozu ?  

  2. #2
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    10.791
    Danke
    884
    Erhielt 3.160 Danke für 2.560 Beiträge

    Standard

    Das ist nützlich, falls man mal gleichzeitig zwei DB öffnen will, z.B. um (in einer Schleife) indirekt von einem in einen anderen DB zu kopieren (oder zu vergleichen):
    Code:
          AUF   DB [#DB1]
          AUF   DI [#DB2]
          L     DBD [AR1,P#0.0]   //indirekt lesen aus dem als "DB" geöffneten DB
          T     DID [AR2,P#0.0]   //indirekt schreiben in den als "DI" geöffneten DB
    Vorsicht:
    Wenn man in einem FB einen anderen als den eigenen IDB als DI öffnet, dann kann man nicht mehr auf die eigenen Instanzvariablen zugreifen - die Zugriffe greifen auf den anderen "fremden" DB zu.

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

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  3. #3
    Registriert seit
    29.03.2004
    Beiträge
    5.600
    Danke
    141
    Erhielt 1.653 Danke für 1.203 Beiträge

    Standard

    "AUF DI" wird im Hintergrund verwendet, wenn du mit "CALL FB x, DB y" einen FB aufrufst. Ist wahrscheinlich nur eine Nettigkeit/Schlampigkeit von Siemens, dass sie dich dieses Register auch in AWL modifizieren lassen.
    Du musst ja auch nicht unbedingt jeden Befehlstyp in deinem Programm verwenden. Es hat bisher auch noch keiner gefragt, wie er die Anweisungen zur Behandlung des Master Control Relay in seinem Programm einbauen kann.
    Die Genialität einer Konstruktion liegt in ihrer Einfachheit – Kompliziert bauen kann jeder.

    (Sergei Pawlowitsch Koroljow, sowjetischer Konstrukteur von Raketen und Weltraumpionier)

  4. #4
    TP-Inc ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    15.05.2015
    Beiträge
    161
    Danke
    6
    Erhielt 36 Danke für 35 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Danke für Antworten. ��
    Lg

Ähnliche Themen

  1. Adressregister retten, wozu ?
    Von Outrider im Forum Simatic
    Antworten: 12
    Letzter Beitrag: 12.11.2012, 20:08
  2. SCL : Instanz in Instanz
    Von Larry Laffer im Forum Simatic
    Antworten: 11
    Letzter Beitrag: 16.02.2009, 11:01
  3. Wozu verwendet ihr C++?
    Von Jumper im Forum Stammtisch
    Antworten: 4
    Letzter Beitrag: 15.02.2009, 23:10
  4. Antworten: 13
    Letzter Beitrag: 18.01.2008, 12:47
  5. Safety Komponenten - WOZU??
    Von CaptainDan im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 16.08.2007, 22:13

Lesezeichen

Berechtigungen

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