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

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 12

Thema: Mehrere Werte mit Festwert verlgeichen .. AWL oder SCL

  1. #1
    Registriert seit
    14.05.2012
    Beiträge
    157
    Danke
    28
    Erhielt 4 Danke für 4 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo Leute,

    mein Problem ist, ich will verschiedene werte mit einem Festwert oder nem varibalen Wert vergleichen, jedoch nicht alles 100x tippen. Weiß da jmd was?

    Also quasi so:

    L db1.dbd0
    L 5
    ==D
    S XY

    Nur will ich jetzt quasi statt db1.dbd0 ca. 50 verschiedene DBD´s und wenn eines davon den Wert 5 hat dann soll xy passieren.
    Ich war schon mal mit ldb1.dbd0 ow ldb1.dbd4 dran, aber das hat nicht geklappt.
    Kann mir jmd. helfen? Vor allem wäre mir ein Lösungansatz in AWL UND SCL sehr lieb!!
    Zitieren Zitieren Mehrere Werte mit Festwert verlgeichen .. AWL oder SCL  

  2. #2
    Registriert seit
    19.06.2008
    Ort
    Ostalbkreis
    Beiträge
    3.140
    Danke
    201
    Erhielt 553 Danke für 498 Beiträge

    Standard

    Hallo,

    Schleife programmieren, Datenwort hochzählen und 50 mal vergleichen

    Suchbegriffe: Schleife, indirekte Adressierung, Index, Ar1

  3. #3
    Registriert seit
    06.01.2012
    Ort
    Papenburg
    Beiträge
    114
    Danke
    25
    Erhielt 27 Danke für 13 Beiträge

    Standard

    Hey,

    erstelle dir ein Array mit deinen Werten. Dann durchläufst du dieses mit einer For Schleife in SCL. In der For Schleife kannst du dann deine Abfragen mit einer IF Anweisung erstellen.

    Gruß
    Sascha
    Theorie ist, wenn man alles weiß aber nichts funktioniert. Praxis ist, wenn alles funktioniert aber keiner weiß warum.
    Bei mir ist Theorie und Praxis vereint. Nichts funktioniert und keiner weiß warum.



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

    Django2012 (05.06.2012)

  5. #4
    Avatar von Django2012
    Django2012 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    14.05.2012
    Beiträge
    157
    Danke
    28
    Erhielt 4 Danke für 4 Beiträge

    Standard

    Den Anstoß hab ich gebraucht, das mit der schleife ist schon nicht schlecht. Danke!
    Geändert von Django2012 (05.06.2012 um 12:39 Uhr)

  6. #5
    Registriert seit
    17.06.2003
    Beiträge
    1.269
    Danke
    479
    Erhielt 65 Danke für 57 Beiträge

    Standard

    Und denkt immer daran schön kompliziert zu programmieren so das es möglichst unübersichtlich wird.
    Sicher hast du jetzt viel Zeit fürs Eintippen (kopieren gespart)

  7. #6
    Avatar von Django2012
    Django2012 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    14.05.2012
    Beiträge
    157
    Danke
    28
    Erhielt 4 Danke für 4 Beiträge

    Standard

    Mal noch ne Frage die jetzt nicht unbedingt hier hergehört .... Kann man in SCL "bedingt" springne? Also ich hab mal folgendes probiert :
    VAR_TEMP
    test:INT;/////////////////////
    END_VAR
    label
    m1;
    END_LABEL

    begin
    IF m1.0=true THEN
    GOTO m1;

    END_IF ;
    m1: FOR test:= 0 TO 20 BY 1 DO
    arr.daten[test]:=5 ;
    END_FOR;


    Er beschreibt mir das Array aber jetzt immer. Egal was M1.0 für nen Zustand hat. Für sämtliche Fehler schon mal ein ENTSCHULDIGUNG voraus, ich bin absoluter SCL Neuling und versuch mir das mehr oder weniger selbst beizubringen.

  8. #7
    Registriert seit
    29.03.2004
    Beiträge
    5.735
    Danke
    143
    Erhielt 1.685 Danke für 1.225 Beiträge

    Standard

    Zitat Zitat von Django2012 Beitrag anzeigen
    Er beschreibt mir das Array aber jetzt immer. Egal was M1.0 für nen Zustand hat. Für sämtliche Fehler schon mal ein ENTSCHULDIGUNG voraus, ich bin absoluter SCL Neuling und versuch mir das mehr oder weniger selbst beizubringen.
    Was passiert denn wenn m1.0 nicht true ist, bzw. mit welcher Anweisung wird fortgesetzt.
    Wenn du das hast wird dir irgendwann auffallen dass du durch umstrukturieren des Programmes auch ohne goto auskommst.

  9. #8
    Registriert seit
    14.11.2008
    Beiträge
    66
    Danke
    3
    Erhielt 6 Danke für 6 Beiträge

    Standard

    Ja, es gibt GOTO und IF, also kann man bedingt springen.

    Das Beispiel sieht so aus, als würde es so nicht kompilierfähig sein, weil m1 sowohl als Label als auch als Merkeradresse verwendet wird. Ich würde davon ausgehen, dass solche Dinge Probleme machen können. Aber vielleicht enthält die richtige Funktion ja richtige Namen und hat das Problem nicht.

    Ach so, falls zwischen IF .. THEN .. GOTO und dem Sprunglabel wirklich buchstäblich nichts ist, ist es kein Wunder, dass es immer ausgeführt wird. Und wenn in der Endversion nur ein RETURN dazwischen ist, würde es funktionieren, aber das GOTO wäre gigantischer Overkill. Ein einfaches IF um das FOR herum würde genügen.

    SCL hat IF, FOR, WHILE/REPEAT, RETURN und EXIT, das ist für fast jede Situation genug. GOTO geht auch, ist aber meist nicht nötig.

  10. #9
    Avatar von Django2012
    Django2012 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    14.05.2012
    Beiträge
    157
    Danke
    28
    Erhielt 4 Danke für 4 Beiträge

    Standard

    Zitat Zitat von Drutbluck Beitrag anzeigen

    Ein einfaches IF um das FOR herum würde genügen.
    Quasi so

    IF m1.0=true THEN
    FOR test:= 0 TO 20 BY 1 DO
    arr.daten[test]:=5 ;
    END_FOR;
    end_if;

    ?? Habe gerade kein SCL zur HAnd, erst wieder auf ARbeit...

  11. #10
    Registriert seit
    06.01.2012
    Ort
    Papenburg
    Beiträge
    114
    Danke
    25
    Erhielt 27 Danke für 13 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Ja genau!

    Das "=true" kannst du auch weglassen...
    Theorie ist, wenn man alles weiß aber nichts funktioniert. Praxis ist, wenn alles funktioniert aber keiner weiß warum.
    Bei mir ist Theorie und Praxis vereint. Nichts funktioniert und keiner weiß warum.



Ähnliche Themen

  1. Antworten: 27
    Letzter Beitrag: 07.03.2011, 12:53
  2. Schrittkette IN SCL oder mit SPL in AWL
    Von Bensen83 im Forum Simatic
    Antworten: 4
    Letzter Beitrag: 22.06.2010, 11:40
  3. Heiz und Kühlvorgang in SCL oder AWL
    Von Roland1 im Forum Simatic
    Antworten: 8
    Letzter Beitrag: 20.06.2009, 10:18
  4. Heiz und Kühlvorgang in SCL oder AWL
    Von Roland1 im Forum Simatic
    Antworten: 4
    Letzter Beitrag: 16.06.2009, 18:48
  5. PWM in SCL, AWL oder FUP?
    Von stefanblitz im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 01.02.2009, 20:47

Lesezeichen

Berechtigungen

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