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

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

Thema: Step 5 DB-Inhalte von einem DB in den nächsten

  1. #1
    Registriert seit
    19.10.2006
    Beiträge
    86
    Danke
    18
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo allerseits.
    Als Gelegenheitsprogrammierer stehe ich vor folgender Aufgabenstellung:

    Aus mehreren S5-135U mit VPA CPU (928-3UC11) sollen Zählerständen, die als INT und DINT in einem DB abgelegt sind zu einer bestimmten Uhrzeit 1:1 in einen weiteren, identischen DB kopiert werden. So sollen die Tageswerte für 24 Stunden erhalten bleiben, während im Ausgangs-DB weitergezählt wird.
    Timer etc. funktionieren. Nur das Verschieben der DB-Inhalte erscheint mir aufwändig, zumal ich auch einen dritten DB mit Werten von Vorgestern kopieren möchte. Gibt es hier eine Operation wie in S7: SFC20 BLK MOV, ggf. sogar wie dort unabhängig von der Datenstruktur (Wort/Doppelwort)? Wie würde die aussehen, wenn ich z.B aus DB10 die DW0 bis DW10 in den DB11 kopieren wollte? In der Aufgabe kommen ca. 120 werte auf mich zu. Ich wäre Euch Profis für eine Hilfe sehr dankbar.
    Ich fordere die Anerkennung von Boolimie als Berufskrankheit.
    Zitieren Zitieren Step 5 DB-Inhalte von einem DB in den nächsten  

  2. #2
    Registriert seit
    19.07.2010
    Beiträge
    1.289
    Danke
    213
    Erhielt 267 Danke für 233 Beiträge

    Standard

    In der 948ér gabs mal einen OB182 der dem BLK MOV recht ähnlich war. Der müsste m.E. in der 928 auch laufen.

    Edit: Sorry, läuft nur in der 948. Dann musst du dir manuell einen Baustein basteln der das macht.
    Geändert von Aventinus (07.11.2011 um 14:10 Uhr) Grund: Edit
    mfG Aventinus

  3. #3
    Registriert seit
    06.10.2004
    Beiträge
    278
    Danke
    17
    Erhielt 34 Danke für 30 Beiträge

    Standard

    Hallo,
    OB 182 (Datenbereich kopieren) läuft richtig ab CPU 928B. Andere Lösung = indirekte Addresierung mit B Befehl + Übetragungsschleife

  4. #4
    Registriert seit
    15.04.2011
    Beiträge
    1.122
    Danke
    229
    Erhielt 208 Danke für 176 Beiträge

    Standard

    Zitat Zitat von Aventinus Beitrag anzeigen
    In der 948ér gabs mal einen OB182 der dem BLK MOV recht ähnlich war. Der müsste m.E. in der 928 auch laufen.

    Edit: Sorry, läuft nur in der 948. Dann musst du dir manuell einen Baustein basteln der das macht.
    Hallo Aventinus,

    Du hast Recht. Auch die CPU 928B hat lt. Programmieranleitung einen OB182 (Datenbereich kopieren) als integrierte Sonderfunktion. Habe die entsprechenden Seiten mal angehangen.
    Angehängte Dateien Angehängte Dateien
    Gruß
    190B

  5. #5
    Registriert seit
    13.09.2010
    Beiträge
    2.292
    Danke
    178
    Erhielt 375 Danke für 355 Beiträge

    Standard

    Hallo zusammen !

    Zitat Zitat von Aventinus Beitrag anzeigen
    Dann musst du dir manuell einen Baustein basteln der das macht.
    Zitat Zitat von Taddy Beitrag anzeigen
    Andere Lösung = indirekte Addresierung mit B Befehl + Übetragungsschleife

    ja, sehe ich auch so !

    Hab´deshalb mal mein altes Handbuch bemüht ...

    Ich hoffe, es hilft weiter

    Code:
     
    NAME: COPY
    BEZ: DBQ B    ; Quell-DB
    BEZ: DBZ B    ; Ziel-DB
    BEZ: ANZA DKF ; Anzahl
    BEZ: AQU EW   ; Anfang in Quelle
    BEZ: AZI EW   ; Anfang in Ziel
    
              LW =AQU            ;Parameter in MW laden
              T MW 2 
              LW =AZI
              T MW 4
              LW =ANZ
              T MB 6
    
    M826:  B =DBQU                ; 1.Wert aus Quelle laden
              B MW 2
              L DW 0
              B=DBZ               ; in 1. Wert im Ziel ablegen
              B MW 4
              T DW 0
              L MW 6              ; Anzahl dekremetieren
              D 1
              T MB 6
              L KB 0              ; Pruefen, ob Anzahl erreicht
              !=F
              BEB                 ; Aussprung, wenn ja
    
              L MW 2              ; wenn nicht, Paremeter fuer
              I 1                 ; naechsten Wert setzen
              T MW 2
              L MW 4
              I 1
              T MW 4
              SPA =M826           ; und dann nochmal...
              BE
    Sollte auch auf deiner CPU laufen !

    Gruss

    P.S. Tippfehler sind geschenkt !
    kind regards
    SoftMachine
    Zitieren Zitieren S5-DB kopieren  

  6. #6
    Registriert seit
    23.04.2009
    Ort
    Allgäu
    Beiträge
    3.042
    Danke
    241
    Erhielt 863 Danke für 617 Beiträge

    Standard

    Ich glaube urlicht hat seine Lösung schon in diesem Thread gefunden:
    http://www.sps-forum.de/showthread.p...675#post361675

    PS: Ich würde auch den Befehl TNB empfehlen = Byteweiser Blocktransfer wie der BLKMOVE bei S7
    Achtung kann aber nur 0...255 Byte pro Block (nicht Wort)
    Gruß
    Paule
    ----------------------------------------------------------------------------
    > manchmal verliert man und manchmal gewinnen die anderen <

  7. Folgender Benutzer sagt Danke zu Paule für den nützlichen Beitrag:

    Aventinus (08.11.2011)

  8. #7
    Registriert seit
    13.09.2010
    Beiträge
    2.292
    Danke
    178
    Erhielt 375 Danke für 355 Beiträge

    Standard

    Hi Paule,

    jo, da warst du warst schneller...

    Hab´auch gerade den 2. Thread von Urlicht gefunden

    Na, nu hat er 2 Lösungen zum Probieren..

    Gruss
    kind regards
    SoftMachine

  9. #8
    Registriert seit
    06.10.2004
    Beiträge
    278
    Danke
    17
    Erhielt 34 Danke für 30 Beiträge

    Standard

    Hallo,
    in der Lösung von SoftMachine ist ein kleiner Fehler

    LW =ANZ
    T MB 6 <------ wenn MB 6

    L MW 6 <---- dann auch hier, oder beide MW 6

    Eins im MB 6 = 256 im MW 6.
    Geändert von Taddy (08.11.2011 um 05:55 Uhr)

  10. #9
    Registriert seit
    19.10.2006
    Beiträge
    86
    Danke
    18
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Danke für die Lösungen. Werde ich morgen ausprobieren.
    Ich fordere die Anerkennung von Boolimie als Berufskrankheit.

  11. #10
    Registriert seit
    19.10.2006
    Beiträge
    86
    Danke
    18
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Vielen Dank, hat sehr geholfen.
    Ich fordere die Anerkennung von Boolimie als Berufskrankheit.

Ähnliche Themen

  1. TIA-Portal Inhalte der DBs sicher!
    Von m.beeken im Forum Simatic
    Antworten: 9
    Letzter Beitrag: 01.07.2011, 08:41
  2. Antworten: 27
    Letzter Beitrag: 08.12.2010, 23:32
  3. Mehrere Inhalte übergeben
    Von Deep Blue im Forum Simatic
    Antworten: 17
    Letzter Beitrag: 29.06.2007, 00:00
  4. 8) viel spass die nächsten 18 tage
    Von volker im Forum Stammtisch
    Antworten: 6
    Letzter Beitrag: 08.02.2006, 02:47
  5. DB Inhalte
    Von Anonymous im Forum Simatic
    Antworten: 6
    Letzter Beitrag: 29.09.2003, 18:42

Lesezeichen

Berechtigungen

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