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

Seite 3 von 4 ErsteErste 1234 LetzteLetzte
Ergebnis 21 bis 30 von 32

Thema: blkmov in SCL

  1. #21
    Avatar von Felse
    Felse ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    02.02.2009
    Ort
    Thüringen
    Beiträge
    218
    Danke
    91
    Erhielt 11 Danke für 7 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Ja gut, also einfach einen awl - Baustein nehmen diesen ganzen Text darein kopieren und diesen Baustein dann in meinem SCL Prog aufrufen oder wie?
    " Immer schön locker durch die Hose atmen"

  2. #22
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.255
    Danke
    537
    Erhielt 2.705 Danke für 1.954 Beiträge

    Standard

    Zitat Zitat von Felse Beitrag anzeigen
    Ja gut, also einfach einen awl - Baustein nehmen diesen ganzen Text darein kopieren und diesen Baustein dann in meinem SCL Prog aufrufen oder wie?
    Du erzeugst im Quellordner eine AWL-Quelle (Cursor auf den Quellen-Ordner, "Einfügen/St-Software/AWL-Quelle"), öffnest die, kopierst den Code da rein, paßt die FC-Nummer bei Bedarf an, übersetzt die Quelle. Dann steht der Baustein in deinem Bausteinordner. Nun kannst du ihn in SCL aufrufen.
    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

  3. #23
    Avatar von Felse
    Felse ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    02.02.2009
    Ort
    Thüringen
    Beiträge
    218
    Danke
    91
    Erhielt 11 Danke für 7 Beiträge

    Standard

    OK, hab ich so gemacht, hab beim Übersetzen 2 Warnungen erhalten, dass ich sicherstellen soll das mein globaler DB richtig gesetzt ist, den Baustein hat er aber trotzdem erzeugt. Aber wenn ich diesen dann Aufrufe / übersetze ( nach Umbenennen), gehts trotzdem nicht und ich erhalte Fehlermeldungen: Ausdruck nicht korrekt.

    Code:
    (AnzahlDBB := 2 // IN: INT
      ,QuellDB := 100 // IN: INT
      ,QuellDW :=  1// IN: INT
      ,ZielDB := 101 // IN: INT
      ,ZielDW :=  1// IN: INT
      ); // INT
    Hab jetzt einfach die Nr des DB eingefügt, da ja INT Werte gefragt waren, oder ? Was muss ich da tun?
    " Immer schön locker durch die Hose atmen"

  4. #24
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.255
    Danke
    537
    Erhielt 2.705 Danke für 1.954 Beiträge

    Standard

    Zitat Zitat von Felse Beitrag anzeigen
    OK, hab ich so gemacht, hab beim Übersetzen 2 Warnungen erhalten, dass ich sicherstellen soll das mein globaler DB richtig gesetzt ist, den Baustein hat er aber trotzdem erzeugt. Aber wenn ich diesen dann Aufrufe / übersetze ( nach Umbenennen), gehts trotzdem nicht und ich erhalte Fehlermeldungen: Ausdruck nicht korrekt.

    Code:
    (AnzahlDBB := 2 // IN: INT
      ,QuellDB := 100 // IN: INT
      ,QuellDW :=  1// IN: INT
      ,ZielDB := 101 // IN: INT
      ,ZielDW :=  1// IN: INT
      ); // INT
    Hab jetzt einfach die Nr des DB eingefügt, da ja INT Werte gefragt waren, oder ? Was muss ich da tun?
    Die Warnung ist ok, das ist in diesem Falle normal.
    Das ist ein FC. FC haben einen Rückgabeparameter, in diesem Falle gebe ich den Retval des SFC20 zurück, also eine Int! Also muß dem Aufruf des FC in SCL eine Zuweisung vorangestellt werden. (Siehe Aufruf des SFC20, genau so).

    QuellDW := 1 ????
    ZeilDW := 1 ???
    Ich würde meinen 0 oder 2, DW liegen immer an geraden Grenzen.
    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. #25
    Registriert seit
    19.06.2005
    Ort
    in Bayern ganz oben
    Beiträge
    1.360
    Danke
    188
    Erhielt 372 Danke für 290 Beiträge

    Standard

    Hallo Felse,

    eine andere möglichkeit ist den ANY mittels AT Konstrukt direkt zu beschreiben.

    Siehe Beispiel auf der Siemens Seite
    http://support.automation.siemens.co...ew/de/21946854

    Gruss Daniel
    Erfahrung ist eine nützliche Sache. Leider macht man sie immer erst kurz nachdem man sie brauchte...

    OSCAT.lib Step 7

    Open Source Community for Automation Technolgy

    SPS-Forum Chat (Mibbit) | SPS-Forum Chat (MIRC)

  6. #26
    Avatar von Felse
    Felse ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    02.02.2009
    Ort
    Thüringen
    Beiträge
    218
    Danke
    91
    Erhielt 11 Danke für 7 Beiträge

    Standard

    @ralle
    QuellDW := 1 ????
    ZeilDW := 1 ???
    Ich würde meinen 0 oder 2, DW liegen immer an geraden Grenzen.
    Gut das stimmt, daraus hab ich jetzt 0 gemacht. Aber die die Fehlermeldungen bleiben. Ich schreib mal wie ich das denke:
    Code:
    Wert:= (AnzahlDBB := Anzahl der beiden DBs zwischen denen getauscht wird also 2 // IN: INT
     ,QuellDB := Nr des Quell DB also 100 // IN: INT
     ,QuellDW :=  Nr des Quell DW im Quell DB also 0// IN: INT
     ,ZielDB := Nr des Ziel DB also 101  // IN: INT
     ,ZielDW := Nr des Quell DW im Ziel DB also 0// IN: INT
     ); // INT
    In meinem DB 101 stehen noch keine Variable (außer der Platzhaltervar.) drin. Im DB 100 sind verschiedene Variablen mit verschiedenen Datentypen enthalten.
    Ist die Überlegung richtig?
    " Immer schön locker durch die Hose atmen"

  7. #27
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.255
    Danke
    537
    Erhielt 2.705 Danke für 1.954 Beiträge

    Standard

    Dein FC-Aufruf wäre richtig mit den entsprechenden Zahlen.

    Du trägst da normale Int an den FC112 an, entweder fest oder natürlich als Variable. Die DB müssen natürlich existieren und soviele Byte haben, wie kopiert werden sollen. Was gensu in den DB steht (was für Variablen) ist egal, du mußt nur die richtige Länge einstellen.

    Bsp:
    Du willst 2 Real ab DW 0 übertragen.
    Die Länge von 2 Real ist 8 Byte, also 0 bei QuellDW und 8 bei Anzahl DBB.
    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

  8. #28
    Avatar von Felse
    Felse ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    02.02.2009
    Ort
    Thüringen
    Beiträge
    218
    Danke
    91
    Erhielt 11 Danke für 7 Beiträge

    Standard

    Ich bin total blöd, hab jetzt wie im Bsp von dir 2 real Zahlen im DB 100 angelegt (sonst nix) der DB 101 ist leer. Daraus ergibt sich:

    Code:
    Wert:= (AnzahlDBB := 2  // IN: INT
     ,QuellDB := 100 // IN: INT
     ,QuellDW := 0 // IN: INT
     ,ZielDB := 101 // IN: INT
     ,ZielDW := 8// IN: INT
     ); // INT
    Was ist daran noch falsch, ich dreh gleich durch das kann doch nicht so schwer sein.
    " Immer schön locker durch die Hose atmen"

  9. #29
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.786
    Danke
    398
    Erhielt 2.414 Danke für 2.010 Beiträge

    Standard

    ein REAL ist 4 Byte groß ...

  10. #30
    Avatar von Felse
    Felse ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    02.02.2009
    Ort
    Thüringen
    Beiträge
    218
    Danke
    91
    Erhielt 11 Danke für 7 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    richtig, daher auch:
    Code:
    ZielDW := 8// IN: INT
    oder ist das falsch?
    " Immer schön locker durch die Hose atmen"

Ähnliche Themen

  1. BLKMOV für Simatic S5
    Von matziane im Forum Simatic
    Antworten: 6
    Letzter Beitrag: 08.11.2011, 13:39
  2. BLKMOV VS. Einzelanweisungen
    Von BerndHa81 im Forum Simatic
    Antworten: 13
    Letzter Beitrag: 14.12.2010, 08:39
  3. Blkmov
    Von sps_mitte im Forum Simatic
    Antworten: 10
    Letzter Beitrag: 06.08.2010, 12:24
  4. Sfc 20 blkmov
    Von Franz im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 29.12.2008, 14:24
  5. BlkMov
    Von Anonymous im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 15.02.2004, 11:33

Lesezeichen

Berechtigungen

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