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

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

Thema: Datenbausteinaufruf wie bei S5 ... A DB...

  1. #1
    Registriert seit
    08.01.2007
    Ort
    Dülmen
    Beiträge
    393
    Danke
    58
    Erhielt 24 Danke für 17 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Was ich möchte:
    1. In der IN.Schnittstelle des FC einen Daten DB angeben
    2. Den im FC dann aufschlagen, wie zu S5 Zeiten mit A DB (xx)
    3. in dem FC dann die Daten des DB bearbeiten können... ohne jedesmal DBxx.DBWxx eingeben zu müssen, einfach nur DBWxx

    Mir erschließt sich die schreibweise dafür nicht...
    zu 1. in welchem Format in der IN Schnittstelle ? Als z.b. Byte und dann indirekt den DB öffnen?
    zu 2. call DB (byte) wird wohl nicht gehen... was ist unter S7 der Befehl für "A DBxx"
    zu 3. kann man dann direkt so schreiben z.B.
    L MW 100
    T DBW2

    Ich habe das in der Form nocht nicht gemacht! Und in diesem Fall ist ein Instanz DB nicht gewünscht.
    Ich möchte eine Maschinenfunktion (die ich noch oft in anderen Anlagen brauchen werde) erzeugen. Mir ist es aber zu blöde bei kleinen Anlagenanpassungen jedesmal den I-DB neu zu erzeugen...
    Dann lieber eine Standard Datenablage... ich muß nur halt die DB Nummer umbennen können und den Aufruf des Ablagefachs für den FC jeweils anpassen können.

    Danke für eure Mühe und Geduld... ich werde mir auf jeden Fall noch mal die "F1" Taste unter S7 zu rate ziehen...
    Zitieren Zitieren Datenbausteinaufruf wie bei S5 ... A DB...  

  2. #2
    Registriert seit
    08.08.2007
    Ort
    Dresden
    Beiträge
    9.648
    Danke
    1.059
    Erhielt 2.046 Danke für 1.627 Beiträge

    Standard

    INT, BYTE ... egal

    und

    Code:
    *
          L     #db_nr_in
          T     #db_nr_temp         //muß umkopiert werden, da DB [#nr] nicht mit IN-funktioniert
     
          AUF   DB [#db_nr_temp]
    Geändert von vierlagig (24.04.2008 um 10:06 Uhr)
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

  3. Folgender Benutzer sagt Danke zu vierlagig für den nützlichen Beitrag:

    AndreK (24.04.2008)

  4. #3
    AndreK ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    08.01.2007
    Ort
    Dülmen
    Beiträge
    393
    Danke
    58
    Erhielt 24 Danke für 17 Beiträge

    Lächeln

    Den Rest habe ich schon hinbekommen...

    Der Knackpunkt war das der AUF DB (IN) so nicht geht.

    Danke! Kommt genau zur richtigen Zeit
    Zitieren Zitieren ahhh ja...  

  5. #4
    Registriert seit
    08.11.2006
    Ort
    Uckermark
    Beiträge
    903
    Danke
    201
    Erhielt 256 Danke für 208 Beiträge

    Standard

    Muss denn der DB- Aufruf am in- Parameter des FC variabel sein?

    Wenn nicht, den IN des FC einfach als Block_DB deklarieren.

    .
    Angehängte Grafiken Angehängte Grafiken
    Geändert von OHGN (24.04.2008 um 10:15 Uhr)
    Neue Ideen begeistern jene am meisten, die auch mit den alten nichts anzufangen wussten.
    Karl Heinrich Waggerl (1897-1973)

  6. Folgender Benutzer sagt Danke zu OHGN für den nützlichen Beitrag:

    vierlagig (24.04.2008)

  7. #5
    AndreK ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    08.01.2007
    Ort
    Dülmen
    Beiträge
    393
    Danke
    58
    Erhielt 24 Danke für 17 Beiträge

    Standard

    ... rufe ich diesen im Programm auf...

    Wenn ich iin der IN Schnittstelle als Beispiel
    DD as BlockDB einfüge...

    Wie rufe ich den dann in AWL auf?
    AUF DB [DD] geht nicht...?

    ich könnte auch einfach in der ersten AWl zeile den AUF DB xx einfach ändern... aber ich wollte auch wissen wie es geht
    Geändert von AndreK (24.04.2008 um 10:18 Uhr) Grund: Nachtrag...
    Zitieren Zitieren Und wie...  

  8. #6
    Registriert seit
    08.08.2007
    Ort
    Dresden
    Beiträge
    9.648
    Danke
    1.059
    Erhielt 2.046 Danke für 1.627 Beiträge

    Standard

    Zitat Zitat von AndreK Beitrag anzeigen
    ... rufe ich diesen im Programm auf...

    Wenn ich iin der IN Schnittstelle als Beispiel
    DD as BlockDB einfüge...

    Wie rufe ich den dann in AWL auf?
    AUF DB [DD] geht nicht...?
    mit
    Code:
    *
    AUF   #DD
    beim bausteinaufruf steht dann DBxy am IN DD

    ...danke OHGN, schöne idee
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

  9. Folgender Benutzer sagt Danke zu vierlagig für den nützlichen Beitrag:

    AndreK (24.04.2008)

  10. #7
    AndreK ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    08.01.2007
    Ort
    Dülmen
    Beiträge
    393
    Danke
    58
    Erhielt 24 Danke für 17 Beiträge

    Reden

    Noch besser
    Zitieren Zitieren Mmmhhh...  

  11. #8
    Registriert seit
    18.09.2004
    Ort
    Münsterland/NRW
    Beiträge
    4.719
    Danke
    729
    Erhielt 1.159 Danke für 970 Beiträge

    Standard

    Hier mal ein Beispielprojekt, wie die DB-Nummern Übergabe an FCs/FBs funktioniert
    Angehängte Dateien Angehängte Dateien

  12. #9
    Registriert seit
    03.01.2006
    Ort
    Im sonnigen Süden von Österreich!
    Beiträge
    1.377
    Danke
    227
    Erhielt 183 Danke für 168 Beiträge

    Standard

    Zitat Zitat von AndreK Beitrag anzeigen
    Ich habe das in der Form nocht nicht gemacht! Und in diesem Fall ist ein Instanz DB nicht gewünscht.
    Ich möchte eine Maschinenfunktion (die ich noch oft in anderen Anlagen brauchen werde) erzeugen. Mir ist es aber zu blöde bei kleinen Anlagenanpassungen jedesmal den I-DB neu zu erzeugen...
    Dann lieber eine Standard Datenablage... ich muß nur halt die DB Nummer umbennen können und den Aufruf des Ablagefachs für den FC jeweils anpassen können.
    Hallo!

    Warum ist eigentlich kein Instanz DB erwünscht?

    Wenn du kleine Programmänderungen durchführst und keine neuen Variablen einfügst / änderst dann musst du keinen neuen Instanz DB generieren.
    Wenn du neue Variablen brauchst dann musst du dies sowohl im normalen DB ändern oder auch im FB was zur folge hat das du beide DB's in die SPS laden müsstest. Also auch keinen Vorteil dadurch bekommst.

    Der große Nachteil an deiner Variante ist das du keine Symbolik mehr hast weil du ja mit L DBWx auf die Daten zugreifst.
    Eine andere Möglichkeit die es noch gibt deinen DB Variable zu machen für ein neues Projekt ist wenn du Symbolisch Programmierst und auf den Datenbausteinbereich mit vollem Namen zugreifst. Also L "Meine_Daten".Daten
    Mit dieser Variante bräuchtest dann nur im neuen Projekt die DB Nummer ändern, in der Symboltabelle ebenfalls die DB Nummer ändern und dann Bausteinkonsistenz prüfen. Danach wird Überall im Programm die DB Nummer geändert. Also hinter "Meine_Daten" würde sich jetzt eine andere DB Nummer verbergen.

    godi

  13. Folgender Benutzer sagt Danke zu godi für den nützlichen Beitrag:

    AndreK (24.04.2008)

  14. #10
    AndreK ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    08.01.2007
    Ort
    Dülmen
    Beiträge
    393
    Danke
    58
    Erhielt 24 Danke für 17 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    ich stimme dir in allen Punkten zu. Das mit der Symbolik ist nicht so wichtig. Es es nicht die große Komplexität der einzelnen Komponenten.

    Ich möchte das jetzt so machen, weil die Grundstruktur der Funktion, also der Ablauf der Schritte ist immer gleich. Es kann aber immer sein das in den verschiedenen Anlagen da mal ein Sensor dazu kommt oder woanders einer wegfällt die ganze Aufrufprozedur geändert werden muß.

    So kann ich mich bei der IBN hinsetzen und ohne großartig jedesmal den I-DB neu zu setzen, und damit die schon angepassten Parameter zu überschreiben, einfach was hinzufügen.

    Zu Step 5 Zeiten habe ich einfach den Online DB kopiert, was hinzugefügt und wieder zurückgeschieben... war das schön. Verstehe nicht wieso das unter Step7 so blöd gelöst wurde...
    Zitieren Zitieren Ok  

Ähnliche Themen

  1. Indirekter Datenbausteinaufruf in SCL
    Von Anonymous im Forum Simatic
    Antworten: 5
    Letzter Beitrag: 13.09.2005, 14:47

Lesezeichen

Berechtigungen

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