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

Seite 3 von 3 ErsteErste 123
Ergebnis 21 bis 25 von 25

Thema: String-Bearbeitung

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

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo


    FUNCTION "DB ->DB übertragen" : INT
    TITLE = Daten kopieren mit dem "variablen ANY-Zeiger"
    //Der Baustein kopiert einen Datenbereich von einem Datenbaustein in
    //einen anderen.
    //Der Datenbereich kann man auf zwei Arten übertragen:
    //1 -> eine bestimmte Bytes-Menge
    //2 -> eine bestimmte Wort-Menge
    //
    //Bespiel 01 (Bytes)
    //------------------
    //Quelle_DB :101 <-- aus dem DB 101
    //Das_erste_Byte :10 <-- ab Byte 10
    //Anzahl_Bytes :8 <-- 8 Bytes übertragen (d.h. 10...17)
    //Das_erste_DW :0 <-- in dem Fall irrelevant
    //Das_letzte_DW :0 <-- in dem Fall irrelevant
    //Bytes_uebertragen :1 <-- der FC soll Bytes-Menge übertragen
    //Wort_uebertragen :0 <-- keine Wörter
    //Ziel_DB :102 <-- Daten sollen in DB 102 transferiert werden
    //Zielanfang :20 <-- und zwar ab Byte 20
    //RAT_VAl :LW 0 <-- falsche Parametrierung
    //
    //Bespiel 02 (Wort)
    //------------------
    //Quelle_DB :101 <-- aus dem DB 101
    //Das_erste_Byte :0 <-- in dem Fall irrelevant
    //Anzahl_Bytes :0 <-- in dem Fall irrelevant
    //Das_erste_DW :2 <-- Das erste DW = DW 02
    //Das_letzte_DW :8 <-- Das letzte DW = DW 08 (d.h. 2,4,6 und
    //Bytes_uebertragen :0 <-- keine Bytes
    //Wort_uebertragen :1 <-- der FC soll Wort-Menge übertragen
    //Ziel_DB :102 <-- Daten sollen in DB 102 transferiert werden
    //Zielanfang :20 <-- und zwar ab Wort 20
    //RAT_VAl :LW 0 <-- falsche Parametrierung
    //
    //Berbeitung:
    //Taddy
    AUTHOR : Taddy
    VERSION : 1.0

    VAR_INPUT
    Quelle_DB : INT ; //Quelle Datenbaustein
    Das_erste_Byte : INT ; //Das erste Byte
    Anzahl_Bytes : INT ; //Anzahl der Bytes
    Das_erste_DW : INT ; //Das erste DW, das übertragen soll
    Das_letzte_DW : INT ; //Das letzte DW, das übertragen soll
    Bytes_uebertragen : BOOL ; //Byte übertragen ?
    Wort_uebertragen : BOOL ; //Wort übertragen ?
    Ziel_DB : INT ; //Ziel Datenbaustein
    Zielanfang : INT ; //Ziel Anfangsadresse
    END_VAR
    VAR_TEMP
    QANY : ANY ; //ANY-Zeiger Quelle
    ZANY : ANY ; //ANY-Zeiger Ziel
    END_VAR
    BEGIN
    NETWORK
    TITLE =
    // Zusammenstellung des Quellzeigers
    //;
    L W#16#1002; //Typ BYTE
    T LW 0;
    //;
    //; Byte ?
    //;
    L #Anzahl_Bytes; //Anzahl Bytes
    U #Bytes_uebertragen;
    SPB M011;
    //;
    //; Wort ?
    //;
    L #Das_letzte_DW; //Anzahl Bytes
    L #Das_erste_DW;
    -I ;
    L 2;
    +I ;
    M011: T LW 2;
    //;
    L #Quelle_DB; //Quell-DB
    T LW 4;
    //;
    //; Byte ?
    //;
    L #Das_erste_Byte;
    U #Bytes_uebertragen;
    SPB M012;
    //;
    //; Wort ?
    //;
    L #Das_erste_DW; //Anfang der Quelle
    M012: SLD 3;
    OD DW#16#84000000;
    T LD 6;
    //;
    NETWORK
    TITLE =
    // Zusammenstellung des Zielzeigers
    //;
    L W#16#1002; //Typ BYTE
    T LW 10;
    //;
    //; Byte ?
    //;
    L #Anzahl_Bytes; //Anzahl Bytes
    U #Bytes_uebertragen;
    SPB M021;
    //;
    //; Wort ?
    //;
    L #Das_letzte_DW; //Anzahl Bytes
    L #Das_erste_DW;
    -I ;
    L 2;
    +I ;
    M021: T LW 12;
    //;
    L #Ziel_DB; //Ziel-DB
    T LW 14;
    //;
    L #Zielanfang; //Anfang der Ziels
    SLD 3;
    OD DW#16#84000000;
    T LD 16;
    //;
    NETWORK
    TITLE =
    // Datenbereich kopieren
    //;
    CALL "SFC 20" (
    SRCBLK := #QANY,
    RET_VAL := #RET_VAL,
    DSTBLK := #ZANY);
    //;
    NETWORK
    TITLE =
    //Ende

    END_FUNCTION

  2. Folgender Benutzer sagt Danke zu Taddy für den nützlichen Beitrag:

    SIGGI (18.03.2009)

  3. #22
    Registriert seit
    20.06.2003
    Ort
    Sauerland.NRW.Deutschland
    Beiträge
    4.849
    Danke
    78
    Erhielt 800 Danke für 543 Beiträge

    Standard

    @taddy
    der code von anna ist in ordnung und müsste eigentlich ohne fehler funktionieren.

    @anna
    werden die daten eigentlich trotz des fehlers der sfc20 kopiert?
    .
    mfg Volker .......... .. alles wird gut ..

    =>Meine Homepage .. direkt zum Download

    Meine Definition von TIA: Total Inakzeptable Applikation

  4. Folgender Benutzer sagt Danke zu volker für den nützlichen Beitrag:

    SIGGI (18.03.2009)

  5. #23
    Anna ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    10.03.2006
    Beiträge
    16
    Danke
    0
    Erhielt 1 Danke für 1 Beitrag

    Unglücklich

    Hallo, Volker!!!!
    Ja ... ich habe es hingekriegt...
    Diese Datenübertragung mit Any-Pointer_Bildung habe ich in einer aderen Funktion, die mehrmals aufgerufen wird, realisiert.....

    Jetzt läuft es fehlerfrei.

    Sie haben mir sehr geholfen...
    Vielen Dank!!!!!

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

    SIGGI (18.03.2009)

  7. #24
    Registriert seit
    18.03.2006
    Beiträge
    21
    Danke
    2
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hab aus neugierde den ganzen Threat gelesen. Sehr interessant, da ich neulich auch son Any Problem an nem SFC hatte.
    Könnte es sein das in deinem AWL in der Zeile
    L P##Any_Quelle <---hier
    L ***
    T LW[AR1,P#0.0]
    gar nicht das AR1 beschieben wird?

    Ich denke
    -->LAR1 P##ANY_Quelle
    würde vielleicht gehen?
    Du kannst bei dir auch sehen, das sich im Status im AR1 nichts ändert.
    Weiss natürlich auch nicht wo die Any_Quelle im Lokal oder sonstwas Bereich liegt.
    Zitieren Zitieren @ Anna  

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

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo
    Bildschirm kopieren -> in Quelle kopieren -> übersetzen -> als FC benutzen. Ich nutze den FC seit Jahren. Man kann mehrere Tausendbyte von A nach B kopieren.

Ähnliche Themen

  1. C-Norm für die Bearbeitung von Gläser
    Von Wignatz im Forum Maschinensicherheit - Normen und Richtlinien
    Antworten: 1
    Letzter Beitrag: 14.07.2011, 08:11
  2. Sinn von indirekter Bearbeitung (BI)?
    Von msg im Forum Simatic
    Antworten: 19
    Letzter Beitrag: 28.06.2011, 22:23
  3. OB35 und zyklische Bearbeitung
    Von hank12 im Forum Simatic
    Antworten: 7
    Letzter Beitrag: 28.06.2009, 19:18
  4. SCL Beispiel für ANY Pointer Bearbeitung
    Von clweb im Forum Simatic
    Antworten: 1
    Letzter Beitrag: 18.08.2008, 20:38
  5. Indirekete Bearbeitung S5 nach S7
    Von Marc_3 im Forum Simatic
    Antworten: 15
    Letzter Beitrag: 13.07.2004, 19:58

Lesezeichen

Berechtigungen

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