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

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

Thema: Instanz-DB-Nummer innerhalb instanziiertem FB per Programmcode ermitteln - Wie?

  1. #1
    Registriert seit
    13.05.2008
    Beiträge
    316
    Danke
    43
    Erhielt 23 Danke für 15 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Moin moin


    ist es möglich, innerhalb eines FBs die zugehörige Instanz DB Nummer zu ermitteln? Wenn ja, wie? Die Instanz-DB Nummer von außen als Parameter anzugeben finde ich "nicht so elegant".


    Gruß
    Zitieren Zitieren Instanz-DB-Nummer innerhalb instanziiertem FB per Programmcode ermitteln - Wie?  

  2. #2
    Registriert seit
    30.08.2003
    Beiträge
    2.189
    Danke
    30
    Erhielt 256 Danke für 227 Beiträge

    Standard

    Hallo,

    L DINO

    André
    www.raeppel.de
    mit innovativen SPS-Tools schneller ans Ziel ....

  3. Folgender Benutzer sagt Danke zu sps-concept für den nützlichen Beitrag:

    Beren (08.03.2015)

  4. #3
    Registriert seit
    17.11.2004
    Beiträge
    59
    Danke
    10
    Erhielt 4 Danke für 2 Beiträge

    Standard

    Guten Morgen,

    ich möchte dieses Thema noch mal aufgreifen da ich das gleiche Problem habe. Ich will im FB die Nummer des aktuell gültigen Instanz-DB´s auslesen.
    Wie ja oben steht soll das mit "L DINO" gehen. ich habe eine 1500er CPU und TIA meckert die Programmzeile bei übersetzen an - es soll zuerst ein Instanz-DB aufgeschlagen werden, aber der entsprechende DB ist doch dann eh zur Laufzeit aufgeschlagen.
    Ich raffs nicht.

    Hat jemand ne Idee

    TIA Portal V13 SP1 Update 9
    Gruß Schibi

  5. #4
    Registriert seit
    13.05.2016
    Beiträge
    32
    Danke
    0
    Erhielt 6 Danke für 6 Beiträge

    Standard

    AUF #DB
    L DBNO
    Dann ist die DB-Nummer geladen

  6. #5
    Registriert seit
    17.11.2004
    Beiträge
    59
    Danke
    10
    Erhielt 4 Danke für 2 Beiträge

    Standard

    das funktioniert so aber nicht

    Unbenannt.JPG

    Dafür müsste ich ja wissen welchen DB ich aufschlagen soll. Da sich der Instanz-DB aber bei jedem Aufruf des FB´s ändert kann ich das schlecht vorraussehen.
    Geändert von Schibi (25.07.2016 um 09:07 Uhr)
    Gruß Schibi

  7. #6
    Registriert seit
    17.11.2004
    Beiträge
    59
    Danke
    10
    Erhielt 4 Danke für 2 Beiträge

    Standard

    habe jetzt rausgefunden dass bei der 1500er die Befehle AUF und AUFDI nur für Datenbausteine mit Standardzugriff (mit absoluten Adressen) anwendbar sind.
    Gruß Schibi

  8. #7
    Registriert seit
    22.11.2006
    Ort
    CH
    Beiträge
    3.424
    Danke
    710
    Erhielt 612 Danke für 469 Beiträge

    Standard

    Zitat Zitat von Schibi Beitrag anzeigen
    habe jetzt rausgefunden dass bei der 1500er die Befehle AUF und AUFDI nur für Datenbausteine mit Standardzugriff (mit absoluten Adressen) anwendbar sind.
    Was ja auch logisch ist. Da du ja nur mit absoluten Zugriffen dann weiterarbeiten kannst.
    Aber dürfen wir erfahren was du vorhast? Das hört sich so extrem nach "wir basteln da was" an.

    mfG René

  9. #8
    Registriert seit
    17.11.2004
    Beiträge
    59
    Danke
    10
    Erhielt 4 Danke für 2 Beiträge

    Standard

    Ich habe im HMI wiederkehrende Anlagenteile, die ich über Multiplexvariablen versorgen möchte. Jetzt ist es aber so dass Muxen auf optimierte Datenbausteine nicht funktioniert.
    So gehts bei nicht oprimierten DB´s - DB [DB_Nummer].DBD4 , aber bei optimierten DB´s leider nicht so DB [DB_Nummer]."Sollwert Kühlen".
    Aus diesem Grund habe ich versucht das Multiplexen in die Steuerung zu verlegen. Ich möchte die HMI Variablen über einen Global DB versorgen. Aus diesem DB werden dann je nach Wert einer Indexvariable in den richtigen Instanzen DB umgemovet.
    Im FB sollte also die entsprechente Nummer des Instanzen DB´s ausgelesen werden und mit der Indexvariable verglichen werden. Im FB wird der Inhalt des globalen DB als Struktur angeschaltet und bei Gleichheit der Indexvariablen und der Instanz-DB Nummer ensprechende schreib/lese Befehle ausgeführt werden.

    Wenn ich die Instanz-DB Nummer nicht im FB auslesen kann dann bleibt nur die Möglichkeit diese über die Schnittstelle von außen anzuschalten. Oder ich verzichte auf die optimierten DB´s. dann muss ich aber leider auch auf die Option "Laden ohne Reinitialisieren" verzichten (an diese hatte ich mich schon sehr gewöhnt)
    Gruß Schibi

  10. #9
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    10.085
    Danke
    838
    Erhielt 2.969 Danke für 2.393 Beiträge

    Standard

    Zitat Zitat von Schibi Beitrag anzeigen
    Ich habe im HMI wiederkehrende Anlagenteile, die ich über Multiplexvariablen versorgen möchte. Jetzt ist es aber so dass Muxen auf optimierte Datenbausteine nicht funktioniert.
    Anstatt Adress-multiplexen kann man Variablen-multiplexen nehmen. Dann muß man allerdings alle verwendeten Variablen als Multiplex-Variablen projektieren (mit Variablen-Liste für jeden möglichen Index-Wert) - das kann in Arbeit ausarten.

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

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  11. #10
    Registriert seit
    17.11.2004
    Beiträge
    59
    Danke
    10
    Erhielt 4 Danke für 2 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Ja das hab ich mir auch mal angeguckt, ist aber tatsächlich sehr sehr aufwändig. Ich verstehe einfach nicht warum Siemens das Konzept der Symbolischen Programmierung nicht konsequent durchzieht also auch beim Multiplexen.
    Hab deswegern schon mit Siemens telefoniert, scheint auch nicht zu kommen in absehbarer Zeit.
    Gruß Schibi

Ähnliche Themen

  1. CFC / SCL - Nummer des Instanz-DB ermitteln?
    Von TVG206 im Forum Simatic
    Antworten: 4
    Letzter Beitrag: 04.12.2015, 13:19
  2. Antworten: 2
    Letzter Beitrag: 19.09.2012, 10:39
  3. Wie Setze ich Programmcode in Step 7 um
    Von Björn im Forum Programmierstrategien
    Antworten: 4
    Letzter Beitrag: 25.02.2010, 11:22
  4. Im FB die Instanz-DB Nummer ermitteln
    Von Dotzi im Forum Simatic
    Antworten: 1
    Letzter Beitrag: 13.02.2008, 11:33
  5. Re: Nummer des Instanz- DB's ermitteln?
    Von Cliff im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 01.03.2007, 10:49

Lesezeichen

Berechtigungen

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