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

Seite 1 von 3 123 LetzteLetzte
Ergebnis 1 bis 10 von 21

Thema: Anfänger- Codefrage LD *close*

  1. #1
    Registriert seit
    01.06.2005
    Beiträge
    10
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Moin Ihr!

    Ich hab ein paar Zeilen Code, wo ich nicht sicher bin, ob ich die richtig verstehe.


    Code:
    LD SM 0.1
    Call SBR 0
    srb0:
    Code:
    LD SM 0.0
    MOVW +1, MW 0
    Ich dachte LD bedeutet, dass in diesem Falle SM 0.1 und SM 0.0 in den AKKU geladen werden.
    Und MOVW +1, MW 0, dass in das Merkerword 0 (Merkerbits M0.0 - 1.7 ??) eine +1 geschrieben wird.

    Vom aufbau aber würde ich eher denken, dass LD als Abfrage dient, ob die nächste Zeile ausgeführt werden soll.

    Sorry, wenn ich Euch mit so einem Anfängerkram langweile
    - ist aber vielleicht auch ganz nett, wenn es mal einfache Fragen gibt ^^

    lg
    excite
    Live sucks - Try Virtual Reality!
    Zitieren Zitieren Anfänger- Codefrage LD *close*  

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

    Standard

    Hallo,
    ist fast so, die Aufrufe sind VKE abhängig, sm0.1 ist ein Sondermerker der nur einmal aufgerufen wird und sm0.0 ist immer gesetzt.
    Das alles jetzt auseinanderzerren würde wohl hier den Rahmen sprengen.
    Deshalb empfehle ich Dir schau Dir mal die 1h und 2h Fibel für S7-200 an, hast doch eine 200er? hier mal der Link dazu:
    http://www2.automation.siemens.com/s...l_00/downl.htm

    mfg

    dietmar

  3. #3
    excite ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    01.06.2005
    Beiträge
    10
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    gut, die texte werd ich mir mal anschauen.

    //ja, hab ne 200er - läuft auch (musste sie aber zum zurücksetzen einschicken )

    thx
    Live sucks - Try Virtual Reality!

  4. #4
    excite ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    01.06.2005
    Beiträge
    10
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hab mir den Text angesehen und hab viel wiedererkannt, was ich mal gelernt hab :)

    Ich hoffe ich hab dich und den Text nun richtig verstanden:

    SM 0.0 -> immer 1
    SM0.1 -> im ersten Zyklus 1, sonst 0.

    =>

    LD SM 0.0
    Call sbr1
    ->ruft sbr immer auf


    LD SM 0.1
    Call sbr1
    ->ruft sbr1 nur im ersten zyklus auf.


    Kann ich LD Xm.n so verstehen, dass es Wahr sein muss, damit die nächste Anweisung auszuführen?

    dann würde
    LD M 0.1
    LD M 0.2
    CALL SBR1

    den SBR1 nur aufrufen, wenn M 0.1 und M 0.2 auf 1 'stehen'.


    EDIT:
    Dann wäre
    LD SM 0.0
    CALL SBR1

    äquivalent zu

    CALL SBR1

    ???
    Live sucks - Try Virtual Reality!

  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,
    fast, ab der 2.Zeile muß eine Verknüpfungsoperation vorangestellt werden, sowie U, O, UN usw. LD übergibt nur ein VKE (hoffentlich habe ich das jetzt richtig erklärt ), den Rest hast soweit richtig verstanden.
    Randbemerkung:sm0.1 setzt man z.B. bei schnellen Zählern ein um den Zähler mit allen Parametern zu setzen.

    mfg

    dietmar

  6. #6
    excite ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    01.06.2005
    Beiträge
    10
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    danke
    Live sucks - Try Virtual Reality!

  7. #7
    Registriert seit
    04.07.2005
    Beiträge
    817
    Danke
    54
    Erhielt 11 Danke für 11 Beiträge

    Standard

    Hallo!

    Dieser Befehl: CALL, ist das so wie das = Zeichen wenn z.B. ein Ausgang gesetzt wird oder für was anderes?

    mfg andi
    mfg andi

    Was nicht passt, wird passend gemacht!

  8. #8
    Registriert seit
    16.12.2004
    Ort
    Schleswig-Holstein
    Beiträge
    400
    Danke
    21
    Erhielt 23 Danke für 20 Beiträge

    Standard

    Ich kenne die 200er überhaupt nicht, aber normalerweise ist CALL der Befehl zum Aufruf eines Unterprograms - Subroutine auf English, also in diesem Fall SBR1.

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

    Standard

    Hallo,
    nö, das ist ein Aufruf für ein Unterprogramm.

    mfg

    dietmar

  10. #10
    Registriert seit
    19.06.2003
    Beiträge
    2.200
    Danke
    85
    Erhielt 259 Danke für 175 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Der Befehl CALL bewirkt, wenn er ausgeführt wird, daß als nächstes das Unterprogramm SBR 0 ausgeführt wird. Am Ende von SBR 0 wird dann zurückgesprungen und mit dem Befehl hinter dem CALL weitergemacht.
    Er wird nur ausgeführt, wenn das VKE (Zwischenergebnis der bis dahin ausgeführten logischen Verknüpfungen) "wahr" ist.
    Wird er nicht ausgeführt, wird sofort mit dem Befehl hinter dem CALL weitergemacht.
    Schreibst du CALL ohne LD SM0.0 oder LD SM0.1, so hängt es von den vorher ausgeführten Verknüpfungen ab, was passiert:

    LD E0.0
    U E2.7
    = A0.4
    CALL SBR 13

    ruft SBR 13 genau dann auf, wenn auch A0.4 ein ist.

Ähnliche Themen

  1. Anfänger in SCL
    Von bluebird277 im Forum Simatic
    Antworten: 12
    Letzter Beitrag: 12.11.2010, 08:55
  2. Dateizugriff mit FB_file(open/write/close)
    Von freekadelle im Forum CODESYS und IEC61131
    Antworten: 4
    Letzter Beitrag: 18.08.2009, 21:02
  3. Anfänger
    Von amirheidelberg im Forum Simatic
    Antworten: 15
    Letzter Beitrag: 30.04.2009, 15:08
  4. SPS-Anfänger
    Von tintin im Forum Simatic
    Antworten: 8
    Letzter Beitrag: 30.10.2008, 15:19
  5. Für die Anfänger
    Von nourdine im Forum Simatic
    Antworten: 14
    Letzter Beitrag: 13.06.2008, 11:00

Lesezeichen

Berechtigungen

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