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

Ergebnis 1 bis 7 von 7

Thema: Datenbaustein teilweise auslesen ?

  1. #1
    Anonymous Gast

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo

    Hier mein Problem ich habe einen DB in dem Produktnummern und die dazugehörigen Produktionsdaten als Struct stehen:

    Datensatz1 STRUCT
    ID Nummer
    Solltemperatur
    Neigung
    Druck
    END STRUCT
    Datensatz2 STRUCT
    usw.

    Ich will jetzt aus dem (Global)DB nur die ID Nummer auslesen und weiterverabeiten (es sind 200 Stück). Es gibt da doch bestimmt was besseres als 200mal Lade Transferiere oder ?
    Danke im vorraus
    Zitieren Zitieren Datenbaustein teilweise auslesen ?  

  2. #2
    Registriert seit
    13.03.2004
    Beiträge
    135
    Danke
    10
    Erhielt 6 Danke für 6 Beiträge

    Standard

    Hallo elektriktribbi,

    mein Vorschlag wäre es eine Schleife zu programmieren mit indirekter Adressierung der DB-Adressen. Wobei für den Lade-Befehl bei jedem Schleifendurchlauf der Adressoffset um die Länge der Struktur erhöht wird. Für den Transfer-Befehl wird die Adresse entsprechend dem Abstand der Zieladressen erhöht.

    Wie das im Detail aussieht weiss ich im Moment auch nicht Auswendig kann man sich aber aus der Online-Hilfe ableiten. Beziehungsweise wurde hier auch schon beschríeben.

    Gruss Hagen

  3. #3
    Registriert seit
    14.01.2004
    Ort
    Hattorf
    Beiträge
    3.201
    Danke
    297
    Erhielt 311 Danke für 266 Beiträge

    Standard

    Hallo,
    oder willst Du einmalig die ID's auslesen, dann könntest Du aus dem DB eine Quelle generieren, und nach Excel importieren und dort bearbeiten.

    mfg

    dietmar

  4. #4
    Anonymous Gast

    Standard

    Nein die ID´s müssen leider ständig ausgelesen werden

  5. #5
    Registriert seit
    14.01.2004
    Ort
    Hattorf
    Beiträge
    3.201
    Danke
    297
    Erhielt 311 Danke für 266 Beiträge

    Standard

    Hallo,
    dann ist oben die richtige Methode beschrieben, mußt Du halt mit Pointer arbeiten. Wenn es nicht klappen sollte kannst Du dich ja mal melden, habe jetzt aber auch nichts Fertiges in der Schublade.

    mfg

    dietmar

  6. #6
    Registriert seit
    15.01.2005
    Ort
    In der Mitte zwischen Bayreuth/Weiden
    Beiträge
    6.732
    Danke
    314
    Erhielt 1.519 Danke für 1.282 Beiträge

    Standard

    Hier ein Beispiel zum Einsatz der Pointer:


    Code:
          L     Index 
          L     P#2.0 
          *D    
          T     MD0
    
          L     DBW[MD0]
          T     ID_Indiziert
    Mfg
    Manuel

  7. #7
    Registriert seit
    11.05.2005
    Ort
    Baden-Württemberg
    Beiträge
    669
    Danke
    113
    Erhielt 153 Danke für 124 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hi,

    wenn du die IDs nur in einem anderen DB kopieren willst, dann würde ich mal so ins Rennen gehen:
    (Beispiel ist für REAL-WERTE -> deine STRUCT müsste 16Byte lang sein)

    Code:
    VARIABLEN:
    
    INPUT
    
    QUELL_DB: BLOCK_DB
    QUELL_OFFSET: INT / DINT (kommt drauf an wie hoch du adressieren musst)
    ZIEL_DB: BLOCK_DB
    ZIEL_OFFSET: INT / DINT (s.o.)
    
    TEMPORÄR
    
    tdAR2_SAV: DWORD
    tiLC: INT
    
    
    AWL CODE:
    
    L QUELL_OFFSET
    SLW 3 -> Bei Format INT
    LAR1
    
    TAR2 tdAR2_SAV
    L ZIEL_OFFSET
    SLW 3 -> Bei Format INT
    LAR2
    
    L 200 -> Anzahl
    L1: T tiLC
    AUF QUELL_DB
    L DBD [AR1,p#0.0]
    AUF ZIEL_DB
    T DBD [AR2,p#0.0]
    +AR1 p#16.0 -> STRUCT - Länge
    +AR2 p#4.0
    TAK
    LOOP L1
    
    lar2 tdAR2_SAV

    Das Kopieren sollte grundsätzlich mal so funktionieren.
    Reicht dir das? Was willst denn mit den IDs machen?

    Schöne Grüße Micha
    "arbeite klug, nicht hart" - deutsches Sprichwort

Ähnliche Themen

  1. Datenbaustein per TCP/IP auslesen mit C#
    Von Darkhobbit im Forum Simatic
    Antworten: 10
    Letzter Beitrag: 23.09.2009, 15:22
  2. Datenbaustein auslesen aber wie???
    Von Black Scorpion im Forum Simatic
    Antworten: 6
    Letzter Beitrag: 26.06.2009, 11:53
  3. Antworten: 7
    Letzter Beitrag: 30.07.2008, 13:13
  4. datenbaustein auslesen????
    Von Ibaxx im Forum Simatic
    Antworten: 1
    Letzter Beitrag: 26.09.2007, 13:48
  5. Datenbaustein auslesen
    Von Anonymous im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 20.05.2005, 08:52

Lesezeichen

Berechtigungen

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