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

Seite 1 von 5 123 ... LetzteLetzte
Ergebnis 1 bis 10 von 47

Thema: Problem mit Berechnen einer 32bit Zahl (Drehgeberwert)

  1. #1
    Registriert seit
    25.12.2013
    Beiträge
    65
    Danke
    1
    Erhielt 7 Danke für 7 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo Community,
    mein Name ist Hannes, komme aus dem Bezirk Leoben (Österreich, Steiermark) und bin Instandhaltungselektriker.

    Habe in der Firma ein Problem mit einer Simatic S5. Wir haben einen Roboter (RBG) gekürzt und jetzt muss ich an der Längenmessung etwas ändern.

    Ich habe mir gedacht das ich einfach 2 Messwerte aufnehme und die Differenz zähle ich zum aktuellen Messwert hinzu.

    Ich habe es schon getestet und dies funktioniert soweit, jedoch nur bei kleinen Zahlen bzw wenn ich nur den Wert eines DW ändere.

    Grundsätzlich wird es aktuell so gemacht:

    Messert durch 8 geteilt (laut Kommentar) und in ein MW geschrieben (einmal für das HW und einmal für das LW) und gleichzeitig wird noch das 2te und 3te Byte des Messwertes in ein MW geschrieben.

    Aktuell sieht das Programm so aus:
    Code:
    L DW24
    SRW 3
     T MW140
    und ich habe es geändert in (genauen Wert der Konstante weiß ich nicht):
    Code:
    L DW24
     SRW 3
     T MW140
    
     L MW140
     L KH03a0
     +F
     T MW140

    Jetzt meine Frage wie kann ich das Programm ändern damit das Programm funktioniert.

    Ich hätte mir es so gedacht:

    Messwert aus DW24 und 25 auslesen (32bit Zahl, eigentlich nur 24bit) und Differenz hinzuaddieren. Mit dem Ergebnis rechne ich dann weiter, nur wie mache ich das und was muss ich mit dem Ergebnis machen (in ein DW schreiben oder geht es auch ohne)?

    Leider sind meine Programmierkenntnisse sehr bescheiden. Ich habe in der Schule nur die Grundlagen durchgemacht und den Rest bringe ich mir selbst bei. Gearbeitet habe ich bereits mit Siemens Logo, S5, S7-300 und S7-1200.

    Ich bitte um Hilfe ab dem 13.1 muss das RBG wieder funktionieren. Ich kann es ab dem 7.1. testen.

    MfG Hannes
    Zitieren Zitieren Problem mit Berechnen einer 32bit Zahl (Drehgeberwert)  

  2. #2
    Registriert seit
    25.12.2013
    Beiträge
    65
    Danke
    1
    Erhielt 7 Danke für 7 Beiträge

    Standard

    War 2mal der gleiche Beitrag, hatte Probleme mit dem Rechner. Da ich den Beitrag so nicht löschen kann habe ich es so gemacht.

    MfG Hannes
    Geändert von 021aet04 (26.12.2013 um 09:02 Uhr)
    Zitieren Zitieren Problem mit Berechnen einer 32Bit Zahl (Drehgeberwert)  

  3. #3
    Registriert seit
    17.07.2009
    Ort
    Am Rande der Ostalb
    Beiträge
    5.480
    Danke
    1.141
    Erhielt 1.242 Danke für 973 Beiträge

    Standard

    Verrat uns mal um welche S5-Baureihe (115U,135U,...) mit welcher CPU (z.B. 928B).
    Wenn du nämlich schreibst, dass 32Bit-Werte berechnet werden müssen, dann brauchst du dafür ja 2 Datenworte.
    Wahrscheinlich eben das von dir genannte DW24 und DW25.
    Eine 135U beherrsch 32Bit-Befehle und bei einer 115U gibt es Einschränkungen.

    Falls Du eine 135U oder größer hast, dann sollte es so gehen:
    Code:
    L DD24
    L DH 0000 03A0
    +D
    T DD24
    Gruß
    Dieter

  4. #4
    Registriert seit
    25.12.2013
    Beiträge
    65
    Danke
    1
    Erhielt 7 Danke für 7 Beiträge

    Standard

    Danke für die Antwort. War eben in der Firma und habe alles abgelesen.

    Es ist eine S5-115U CPU 944B und die Drehgeberkarte ist eine WF705.

    MfG Hannes

  5. #5
    Registriert seit
    30.08.2003
    Beiträge
    2.196
    Danke
    30
    Erhielt 258 Danke für 229 Beiträge

    Standard

    Hallo,

    also meines wissens kann die 944B 32Bit Rechenoperationen nur mit den HTB. Aber ein paar Infos wären nicht schlecht. RBG = Regalbediengerät? Was und wo habt ihr gekürzt? Wie werden die Fachpositionen angefahren? Geteacht oder wird die Position errechnet? Ohne Glaskugel kann man hier schlecht etwas sagen. Und etwas mehr Code wäre auch hilfreich.

    André
    www.raeppel.de
    mit innovativen SPS-Tools schneller ans Ziel ....

  6. #6
    Registriert seit
    17.07.2009
    Ort
    Am Rande der Ostalb
    Beiträge
    5.480
    Danke
    1.141
    Erhielt 1.242 Danke für 973 Beiträge

    Standard

    Such mal in der Bausteinliste nach einem FB mit dem Namen ADD:32
    Damit würde es bei der 115U funktionieren.

    Gruß
    Dieter

  7. #7
    Registriert seit
    25.12.2013
    Beiträge
    65
    Danke
    1
    Erhielt 7 Danke für 7 Beiträge

    Standard

    Danke für die Antworten. Mit RBG meine ich Regalbediengerät. Dieses RBG ist ausgelegt für Spulen in der Kabelindustrie (400 und 500mm Spulen).

    Den Hersteller gibt es zwar noch, jedoch gibt es dort niemanden der sich mit dem System auskennt. Soweit ich weiß wurde das System im Jahr 2000 von Siemens auf Beckhoff umgestellt.

    Soweit ich das Programm verstanden habe wird vom Terminal nur der Platz gesendet (mit der Aktion). Der Roboter berechnet sich anschließend die Position (X-Position) mit einem Offset und Abstand der einzelnen Spulen.

    Die Position wird mittels eines SICK DME3000-111 gemessen (Absolutwertgeber). Die Reflektorplatte ist auf dem Teil der gekürzt worden ist, dadurch muss ich das Programm ändern (sonst hätte ich einfach die nicht vorhandenen Plätze gesperrt).


    Programm kann ich aktuell keines posten da das PG in der Firma ist (habe eigentlich Urlaub).

    Bin mir nicht sicher aber ich glaube ich habe irgendwo im Programm schon so ein ADD:32 gesehen.

    MfG Hannes

  8. #8
    Registriert seit
    17.07.2009
    Ort
    Am Rande der Ostalb
    Beiträge
    5.480
    Danke
    1.141
    Erhielt 1.242 Danke für 973 Beiträge

    Standard

    Also wenn ich mich nicht ganz arg irre, dann kann man den DME3000 parametrieren.
    Irgendwo gibt es da auch einen Offset ...

    Das wär wohl der einfachere Weg

  9. #9
    Registriert seit
    30.08.2003
    Beiträge
    2.196
    Danke
    30
    Erhielt 258 Danke für 229 Beiträge

    Standard

    Hallo,

    so wie ich das rauslese wird also der Wert vom DME kleiner, je weiter du ins Regal fährst? Na evtl wird der schon in der SPS verrechnet. Schau mal welche Rechenbausteine im Programm verwendet werden. Vielleicht wird dort der Wert vom DME von der Gesamtlänge abgezogen. Dann könntest du den Wert für die Gesamtlänge korrigieren.

    André
    www.raeppel.de
    mit innovativen SPS-Tools schneller ans Ziel ....

  10. #10
    Registriert seit
    25.12.2013
    Beiträge
    65
    Danke
    1
    Erhielt 7 Danke für 7 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Der Wert wird größer je weiter ich in das Regal fahre. Lagerplatz 1 befindet sich bei der Reflektorplatte. Das ist das Problem, da sich, wenn ich das Programm nicht ändere das gesamte Lager verschiebt.

    Das Lager hat Lagerplatz 1 bis ca. 150 (in X-Richtung), jetzt fällt Lagerplatz 1 bis ca. 17 weg. Wenn ich jetzt, ohne Programmänderung, z.B. vom Platz 100 eine Spule anfordere fährt das RBG zum Platz 117. Ich muss somit die Differenz zum aktuellen Messwert hinzuaddieren. Die Lagerplätze die wegfallen muss ich zusätzlich sperren, das ist aber kein Problem.

    Im Lager befinden sich aktuell Spulen. Die Spulen auslagern ist keine Option, das haben wir schon einmal gemacht (ca. 1 Woche lang 3 Schichtig).

    Das FB indem die Position berechnet wird habe ich schon gefunden, müsste aber nocheinmal schauen. Die einfachste Lösung, finde ich zumindest, wäre dem Messwert auslesen und das Lager, das weggekommen ist, hinzuaddieren. Somit kann man das leichter ändern.

    Der Offset wird im SPS Programm berechnet (steht in einer DB).

    Was noch hinzukommt ist das das RBG mehrere Einlagerer bzw Auslagerer besitzt und auch noch sogenannte SZ-Abläufe (die Spule wird seitlich hingelegt, von dort wird direkt produziert). Das sind alles Fixpunkte. Dort kann ich nichts ändern.


    Hier ist ein Firmenvideo http://www.youtube.com/watch?v=insCRW5HISQ (auf deutsch, gibt es auch in Englisch). Bei 1:11 sieht man ganz kurz einen SZ Ablauf (rechts im Eck).

    Ich hoffe das es jetzt verständlich war, ansonsten mache ich eine Skizze.

    Eventuell bin ich morgen in der Firma.

    MfG Hannes

Ähnliche Themen

  1. Antworten: 4
    Letzter Beitrag: 22.06.2012, 15:16
  2. gegebenen REAL-Wert mit Drehgeberwert vergleichen
    Von refurbishment im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 21.05.2010, 09:21
  3. Antworten: 6
    Letzter Beitrag: 13.02.2008, 09:23
  4. K-Zahl im Gas berechnen.
    Von Bender25 im Forum Simatic
    Antworten: 6
    Letzter Beitrag: 07.06.2007, 13:56
  5. Vorbelegung einer Zahl mit Nullen
    Von INST im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 10.02.2005, 09:00

Lesezeichen

Berechtigungen

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