DB aus einer Zahl aufrufen !

S

scrabble

Guest
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Leute !

Ich habe ien Problem. Wir haben 500 DB's mit der selben Structur(die heissen alle Pool-DB). In einem anderen DB werden die Nummer der DB's vergeben je nachdem ob sie frei sind. Jetzt steht in dem DB eine Zahl diese Zahl sagt mir z.B. das meine Daten im DB 3300 stehen. Jetzt mein Problem ich will diesen DB an eine andere Steuerung schicken, wie bekomme ich es hin,dass ich immer den richtigen DB schicke. Jetzt ein kleiner Programmauszug im Anhang. Ich hoffe mir kann jemand helfen.
Im Bild ver.gif sieht man die Übertragung zu einer ander SPS.
Im Bild ver_2.gif ist der Haupt-DB mit der DB-Nummer( diese ändert sich immer).

Mfg
 

Anhänge

  • ver.gif
    ver.gif
    6,3 KB · Aufrufe: 60
  • ver_2.jpg
    ver_2.jpg
    31,9 KB · Aufrufe: 30
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Volker !

Ich danke dir für die grosse Hilfe. Wir werden es am Wochenende testen, ich gebe dir dann ein Feedback ob es so funktioniert hat.

mfg
scrabble :D
 
Hallo Volker !

Ich habe es für mich mal so zusammen gestellt. Jetzt ist meine frage. Habe ich dich richtig verstanden oder ist dass falsch was ich mir gebaut habe?

Mfg
Scrabble
 

Anhänge

  • Any Zeiger.gif
    Any Zeiger.gif
    9,2 KB · Aufrufe: 34
nein das ist falsch.
in das lb2 gehört der datentyp und nicht der speicherbereich. der gehört in das lb6
ausserdem solltest du das sld nicht vergessen. hier zwar egal, wegen 0, aber dann ist es auch für andere anfangsadressen richtig.

Code:
     LAR1  P##t_q                     //zeiger ins adressregister laden
      L     W#16#10                     //SyntaxID. bei AWL immer 10
      T     LB [AR1,P#0.0]
      L     W#16#4                      //Typ word
      T     LB [AR1,P#1.0]
      L     300               //Anzahl worte
      T     LW [AR1,P#2.0]
      L     #pool_db_nr                   //Quell-DB
      T     LW [AR1,P#4.0]
      L     0                    //Anfang der Quelle
      SLD   3
      T     LD [AR1,P#6.0]
      L     84                    //speicherbereich db
      T     LB [AR1,P#6.0]
 
Zurück
Oben