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

Results 1 to 10 of 10

Thread: Anny auf Lokaldaten geht nicht bei DPRead???

  1. #1
    Join Date
    17.06.2004
    Location
    Offenau
    Posts
    4,078
    Danke
    210
    Erhielt 466 Danke für 366 Beiträge

    Default


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo, Ich möchte folgendes machen:
    Code:
       L     W#16#1002                   //Typ BYTE
          T     LW     0
          L     #EW_GROESSE                 //Anzahl Bytes
          T     LW     2
          L     0                           //Quell-DB
          T     LW     4
          L     14                          //Startadresse SCANNERDATEN in Lokaldaten
          SLD   3
          OD    DW#16#86000000              //86 Lokaldatenbereich (84 DB)
          T     LD     6
    
          CALL  "DPRD_DAT"
           LADDR  :=#EW_ANFANG
           RET_VAL:=#RET_VAL_INT
           RECORD :=#ANY_AUF_SCANNERDATEN
    der Pointer Any_auf_Scannerdaten fängt in den Lokaldaten bei adresse 0 an, die Scannerdaten als array bei 14.

    Wenn Ich nun das Scannerdaten array auf 32 Bytes verkleinere und direkt an den SFC anlege funktionierts, wenn ich aber das über diesen any machen will (in #EW_GROESSE steht 32) gehts nicht.

    Rückgabewert vom SFC 8325 bedeutet:

    Bereichsfehler beim Schreiben eines Parameters.Dieser Fehlercode zeigt an, daß sich der Parameter x in einem Bereich befindet, der für die Systemfunktion unzulässig ist. Die Beschreibung der jeweiligen Funktion gibt die Bereiche an, die für die Funktion unzulässig sind.
    ---------------------------------------------
    Jochen Kühner
    https://github.com/jogibear9988/DotN...ToolBoxLibrary - Bibliothek zur Kommunikation mit PLCs und zum öffnen von Step 5/7 Projekten
    Reply With Quote Reply With Quote Anny auf Lokaldaten geht nicht bei DPRead???  

  2. #2
    Join Date
    29.09.2008
    Location
    Land der Frühaufsteher
    Posts
    104
    Danke
    6
    Erhielt 22 Danke für 21 Beiträge

    Default

    Hallo,

    dein #Any_auf_Scannerdaten ist ja schon ein Pointer. Ich vermute Pointer im Pointer geht nicht und der SFC versucht direkt auf L0.0 zu Schreiben.
    MfG
    FrankW

    ....Wer lesen kann ist klar im Vorteil.....

  3. #3
    Join Date
    30.08.2003
    Posts
    2,234
    Danke
    31
    Erhielt 258 Danke für 229 Beiträge

    Default

    Hallo,

    leg ab LW0 eine Variable vom Typ ANY an. Dann kannst du zwar nicht mehr direkt symbolisch zugreifen, aber das hast du ja eh nicht durchgängig gemacht. Wies scheint hast dus so gemacht.

    Aber wenn du das Array gleich symbolisch ranschreibst ists ein ANY für den SFC

    André
    Last edited by sps-concept; 08.12.2008 at 13:54.
    www.raeppel.de
    mit innovativen SPS-Tools schneller ans Ziel ....

  4. #4
    Join Date
    27.05.2004
    Location
    Thüringen/Berlin
    Posts
    13,806
    Danke
    746
    Erhielt 3,127 Danke für 2,231 Beiträge

    Default

    der Pointer Any_auf_Scannerdaten fängt in den Lokaldaten bei adresse 0 an, die Scannerdaten als array bei 14.
    Ich hab daraus eigentlich geschlossen, daß er den Any in den Lokaldaten auch angelegt hat.
    Gruß
    Ralle

    ... there\'re 10 kinds of people ... those who understand binaries and those who don\'t …
    and the third kinds of people … those who love TIA-Portal

  5. #5
    Join Date
    30.08.2003
    Posts
    2,234
    Danke
    31
    Erhielt 258 Danke für 229 Beiträge

    Default

    lt Hilfe steht für RECORD das:

    RECORD OUTPUT ANY E, A, M, D, L
    Also sind Lokaldaten ok. Und mit L P#L 14.0 kommts auch aufs Gleiche.

    P.S.: Ists ein FC oder FB? Wenn FB könnteste mal mit statischen Variablen experimentieren.

    André
    Last edited by sps-concept; 08.12.2008 at 14:03.
    www.raeppel.de
    mit innovativen SPS-Tools schneller ans Ziel ....

  6. #6
    Join Date
    30.08.2003
    Posts
    2,234
    Danke
    31
    Erhielt 258 Danke für 229 Beiträge

    Default

    Hallo,

    ich habs Ändere mal das:

    OD DW#16#87000000 // 87 = vorheriger Lokaldatenbereich
    FF - Fiel Fergnügen!

    André
    www.raeppel.de
    mit innovativen SPS-Tools schneller ans Ziel ....
    Reply With Quote Reply With Quote ich habs  

  7. #7
    Join Date
    06.10.2003
    Posts
    4,475
    Danke
    619
    Erhielt 772 Danke für 606 Beiträge

    Default

    Quote Originally Posted by Jochen Kühner View Post
    ..Wenn Ich nun das Scannerdaten array auf 32 Bytes verkleinere und direkt an den SFC anlege funktionierts, wenn ich aber das über diesen any machen will (in #EW_GROESSE steht 32) gehts nicht...
    Ich kann nicht wirklich nachvollziehen, warum es in einem Fall funktioniert und im anderen Fall nicht. Die SFC14 muss (sollte) natürlich auf die Vorgänger-Lokaldaten schreiben. In beiden Fällen zeigt der Any auf L14.0. Wird der Any von der SFC bei symbolischer Adressierung anders interpretiert als beim Selberbasteln?


    Gruß, Onkel
    Der höchste Lohn für unsere Bemühungen ist nicht das, was wir dafür bekommen, sondern das, was wir dadurch werden.
    John Ruskin

  8. #8
    Join Date
    08.08.2007
    Location
    Dresden
    Posts
    9,882
    Danke
    1,064
    Erhielt 2,056 Danke für 1,632 Beiträge

    Default

    Quote Originally Posted by Onkel Dagobert View Post
    Ich kann nicht wirklich nachvollziehen, warum es in einem Fall funktioniert und im anderen Fall nicht. Die SFC14 muss (sollte) natürlich auf die Vorgänger-Lokaldaten schreiben. In beiden Fällen zeigt der Any auf L14.0. Wird der Any von der SFC bei symbolischer Adressierung anders interpretiert als beim Selberbasteln?


    Gruß, Onkel
    um das zu beurteilen sollte man sich den code mal in der makro-darstellung also MC7-code ansehen.
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

  9. #9
    Join Date
    06.10.2003
    Posts
    4,475
    Danke
    619
    Erhielt 772 Danke für 606 Beiträge

    Default

    Hallo 4L,

    He? Makro-darstellung, wie macht man das denn?


    Gruß, Onkel
    Der höchste Lohn für unsere Bemühungen ist nicht das, was wir dafür bekommen, sondern das, was wir dadurch werden.
    John Ruskin

  10. #10
    Join Date
    08.08.2007
    Location
    Dresden
    Posts
    9,882
    Danke
    1,064
    Erhielt 2,056 Danke für 1,632 Beiträge

    Default


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Quote Originally Posted by Onkel Dagobert View Post
    Hallo 4L,

    He? Makro-darstellung, wie macht man das denn?


    Gruß, Onkel
    die von WGertzen vorgeschlagene lösung:

    Dazu über "erreichbare Teilnehmer" online gehen, den FC löschen und dann im OB1 (oder wo auch immer der FC aufgerufen wird) online gehen und den
    Aufruf ansehen.
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

Similar Threads

  1. Replies: 1
    Last Post: 05.03.2020, 11:03
  2. WinCC WinCC 7.2 Bleistift geht, bei mir nicht
    By derwestermann in forum HMI
    Replies: 3
    Last Post: 09.12.2016, 17:50
  3. TIA Was geht bei TIA V13 nicht!
    By rostiger Nagel in forum Simatic
    Replies: 5
    Last Post: 13.10.2014, 12:33
  4. Replies: 7
    Last Post: 19.02.2008, 20:04
  5. Problem mit BLKMOV bei Zugriff auf V-Lokaldaten
    By armadillo in forum Simatic
    Replies: 2
    Last Post: 11.02.2006, 06:38

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •