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

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

Thema: Messwerte in einen DB schreiben

  1. #21
    Registriert seit
    15.10.2007
    Ort
    St.Pölten
    Beiträge
    875
    Danke
    98
    Erhielt 200 Danke für 188 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    ja ja hast recht.gibs mir ich bin schon draufgekommen,dass das ein blödsinn war von mir.
    danke vl
    Beginne jeden Tag mit einem lächeln,es kann dir nämlich während des Tages sehr schnell vergehen.

  2. #22
    Registriert seit
    03.09.2008
    Beiträge
    48
    Danke
    7
    Erhielt 2 Danke für 2 Beiträge

    Standard

    www.oscat.de

    die Funktion ARRAY_MAX liefert die gewünschte Funktion. Einfach mal unter Punkt 6.11 in version 3.11 in die Doku schauen.

    Gruß Key

  3. #23
    Registriert seit
    21.12.2009
    Beiträge
    34
    Danke
    5
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hallo,

    da ihr mir vor paar Jahren hier schon mal helfen konntet, hoffe ich, dass mir jemand für eine ähnliche Anwendung auch den entscheidenden Tipp geben kann.
    Ich möchte eine Berechnung für Positionen durchführen. Die Anzahl der benötigten Positionen kann variieren, je nach Auftrag mal 10, 20, 35, usw...
    Ich dachte mir dies am besten in einem Array lösen zu können, solange berechnen bis ich die Anzahl der benötigten Positionen habe, dann die Berechnung stoppen.

    Da ich diese mehrmals in der Steuerung benötige, wollte ich mir einen FB schreiben welchen ich dann als Multiistanz mehrmals aufrufen kann.
    Nun habe ich das Problem, das ich nicht genau weiß, wie ich einen "internen" Bereich bei so etwas aufrufe.

    L L#10000
    AUF DB1
    T DBD [MD 0]
    L MD 0
    L P#4.0
    +D
    T MD 0

    Den zweiten Befehl, sprich einen sep. DB aufrufen, möchte ich ja nicht, sondern er soll den DB verwenden welchen ich angebe, wenn ich den FB in einem anderen FB aufrufe.

    Funktioniert das, oder bin ich auf dem Holzweg?

    Danke und Gruß

  4. #24
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.716
    Danke
    398
    Erhielt 2.399 Danke für 1.999 Beiträge

    Standard

    Hallo,
    ich bin mir nicht sicher, ob ich deine Anfrage korrekt verstanden habe ...

    Du möchtest die im STAT-Bereich deines FB's deklarierten Variablen indirekt adressiert aufrufen ?
    Und du möchtest hier mit einem Array arbeiten ?
    Meine erste Wahl für so etwas wäre hier immer SCL ...!
    Wenn du es aber in AWL (unbedingt) machen möchtest dann würde ich mir den Pointer auf das interne Symbol bilden - also etwa so :
    Code:
    LAR1 p##MeinArray
    TAR2
    +AR1
    Das AR2 mußt du deshalb aufaddieren, da du ja Multi-Instanzfähig sein möchtest - das AR2 beinhaltet hier das Offset der Instanz. Du mußt nur mit den Befehl +AR1 aufpassen. Der addiert nur im 16-Bit-Bereich auf. Wenn deine Daten sehr hoch in der Instanz liegen dann mußt du hier ggf. noch händisch arbeiten.
    Nun kannst du dein Index-Offset noch aufaddieren und du kommst an die Adresse des Array-Elementes.

    Gruß
    Larry

  5. #25
    Registriert seit
    21.12.2009
    Beiträge
    34
    Danke
    5
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hallo,

    vielen Dank für die schnelle Antwort!
    Ja genau, ich möchte meinen Array im STAT-Bereich des FB's verwenden und dort die Werte reinschreiben.

    Hab leider noch nicht soviel Erfahrung in SCL gemacht, wie sehe das denn dort aus?
    In AWL hört sich schon recht kompliziert an, dachte das ginge da quasi ähnlich wie wenn ich dies über einen externen DB aufrufe.
    Aber das ist ja dann leider nicht so.

    Gruß

  6. #26
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.716
    Danke
    398
    Erhielt 2.399 Danke für 1.999 Beiträge

    Standard

    ... wenn SCL für dich eine Option ist dann sollten wir über AWL & Co. hier nicht mehr weiter nachdenken ...

    Beschreib doch mal etwas konkreter was du so zu tun beabsichtigst ...

  7. #27
    Registriert seit
    21.12.2009
    Beiträge
    34
    Danke
    5
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Ich muss für eine Anwendung ausrechnen wie viele Artikel in einen Karton rein passen. Dies lässt sich je relativ einfach ermitteln. Je nach Auftrag unterscheiden sich die Kartongröße, also Länge x breite kann variieren, auch die Artikel können variieren, rund oder rechteckig in verschiedenen Abmaßen. Es wird aber immer Sortenrein gepackt.
    Wie viele Artikel in eine Reihe in X und Y passt, weiß ich. Nun möchte ich für jede Reihe die Position in X und Y errechnen. Wenn es 24 Reihen in Y und 20 Reihen in X gibt, dann entsprechend viele Positionen, es können aber auch 50 und 100 Reihen sein, dann soll mir der Baustein 150 Positionen in den STAT reinschreiben.
    Dort hole ich mir dann die Positionen heraus und der Bediener kann sich das Packmuster anschauen und die Werte können nach bestätigen des Bedieners übergeben werden.
    Bei runden Artikel sollen diese zusätzliche noch nebeneinander oder versetzt ineinander gesetzt werden um ggf. Platz zu sparen.
    Die Formeln hierzu habe ich, das ist kein Problem, hab ich auch schon in AWL alles gerechnet. Nur möchte ich diese Formeln mit den Auswahlen, ob eckig oder rund, wenn rund welches Muster in einen FB packen, und dieser soll dann die Positionen für die benötigte Anzahl von Reihen in X und Y ausgeben.

  8. #28
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.716
    Danke
    398
    Erhielt 2.399 Danke für 1.999 Beiträge

    Standard

    OK ... das macht ja auch Sinn so ...
    Und wie soll es nun weiter gehen ?
    AWL und Pointer ? Oder SCL ?

  9. #29
    Registriert seit
    21.12.2009
    Beiträge
    34
    Danke
    5
    Erhielt 0 Danke für 0 Beiträge

    Standard

    In SCL habe ich leider bisher noch nicht so viel gemacht, was aber nicht heißt dass ich es net gerne versuchen würde.
    In AWL mit den Pointer hattest du ja geschrieben dass dort einiges zu beachten sei...

    Die Formeln habe ich halt bisher in AWL, versuch das gerne aber auch in SCL umzuschreiben.

    Was ginge denn deiner Meinung nach schneller bzw. ist Sinnvoller?

  10. #30
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.716
    Danke
    398
    Erhielt 2.399 Danke für 1.999 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Ich würde es gar nicht erst in AWL versuchen wollen - auch wenn ich es vielleicht könnte.
    IN SCL ergibt das m.E. einen ziemlich gut überschaubaren Code in einer Schleife.
    Ich vermute, dass dein aktueller AWL-Baustein ziemlich lang ist, bei dem, was es so machen kann.
    Ansonsten poste ihn doch einfach mal - dann sehen wir mal, wie eine Umsetzung zu SCL gehen könnte ...

    Gruß
    Larry

Ähnliche Themen

  1. Antworten: 5
    Letzter Beitrag: 24.10.2013, 10:37
  2. Wago 750 Messwerte in Array schreiben
    Von emsbootsmann im Forum Sonstige Steuerungen
    Antworten: 14
    Letzter Beitrag: 21.10.2012, 16:30
  3. Daten in einen DB schreiben
    Von Stefan_01 im Forum Programmierstrategien
    Antworten: 9
    Letzter Beitrag: 01.10.2008, 07:15
  4. Inhalt eines DB in einen DB Schreiben
    Von nonguru im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 15.08.2008, 18:04
  5. Antworten: 5
    Letzter Beitrag: 21.06.2007, 17:04

Lesezeichen

Berechtigungen

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