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

Ergebnis 1 bis 7 von 7

Thema: OB240, Step 5

  1. #1
    Registriert seit
    23.03.2006
    Ort
    Thüringen
    Beiträge
    2.005
    Danke
    162
    Erhielt 278 Danke für 199 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,
    mal eine grundlegende Frage zu Schieberegistern (OB 240/241/242). Die Parametrierung und Initialisierung derselben erfolgt laut Handbuch durch den Aufruf des OB 240 mit vorheriger Angabe des Parametrierungs FB. Nun habe ich in der Software zwei DBs, den 192 und 193. Zunächst der DB 192:
    0: KF = +00000;
    1: KF = +00015;
    2: KF = +00224;
    3: KF = +00014;
    4: KF = +00000;
    5: KF = +00000;
    6: KF = +00000;
    7: KF = +00000;
    8: KF = +00000;
    Wenn ich das richtig interpretiere ist mein Schieberegister 15 Bytes lang, der Basiszeiger ist das MB 224 und der nächste Zeiger relativ zum Basiszeiger 14 Bytes darüber, sollte also MB238 sein? Habe ich da falsch gedacht? Scheint erstmal logisch, unklar wird es beim DB 193:
    0: KF = +00000;
    1: KF = +00150;
    2: KF = +00226;
    3: KF = +00001;
    4: KF = +00148;
    5: KF = +00149;
    6: KF = +00000;
    7: KF = +00000;
    8: KF = +00000;
    Hier verstehe ich bei den zwei letzten relativen Zeigern die Welt nicht mehr - wo sollen die liegen? Wird hier ein Überlauf provoziert? Basiszeiger ist MB 226, plus 148 - soviele Merkerbytes hat die Kiste duch gar nicht?!

    Gruß
    Mario
    Zitieren Zitieren OB240, Step 5  

  2. #2
    Registriert seit
    09.06.2007
    Beiträge
    398
    Danke
    25
    Erhielt 46 Danke für 44 Beiträge

    Standard

    Welche CPU?
    Es gab doch welche, die indirekt die doppelte Speichergröße adressieren konnten, wenn ich mich nicht ganz irre.

  3. #3
    mariob ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    23.03.2006
    Ort
    Thüringen
    Beiträge
    2.005
    Danke
    162
    Erhielt 278 Danke für 199 Beiträge

    Standard

    Hallo,
    CPU 922, ich habe aber nur das Handbuch zur 228, scheint aber auch für die 922 gültig zu sein. Vielleicht unterliege ich auch einem Irrtum, ich lese nochmal nach, ist es möglich das im Falle von FB 192 MB226 der Basiszeiger ist, dann MB227 der zweite und die 14 Bytes die Anzahl der Zellen dazwischen? Das würde 1. den Abstand der zwei Merkerbytes 224 / 226 erklären - 225 wäre dann der erste Zeiger erstes Schieberegister. Und 2.beim zweiten Schieberegister, welches eine Länge von 150 Bytes hat wären dann 3 relative Zeiger die dann die aufeinanderfolgenden Merkerbytes 227 / 228 / 229 belegen. Und die Zeiger liegen dann ja in den 150 Bytes mit 148 / 149 Zellen dazwischen.

    Gruß
    Mario

  4. #4
    Registriert seit
    09.06.2007
    Beiträge
    398
    Danke
    25
    Erhielt 46 Danke für 44 Beiträge

    Standard

    Such mal bei Siemens nach 6ES5998-0UL12 (15MB gescannt)
    (http://support.automation.siemens.co...55&treeLang=de)

    Seite 513 im Reader = Seite 102 im Text.

    Das sollte die passende Anleitung sein!

  5. #5
    mariob ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    23.03.2006
    Ort
    Thüringen
    Beiträge
    2.005
    Danke
    162
    Erhielt 278 Danke für 199 Beiträge

    Standard

    Danke,
    ist im Programmierhandbuch für die CPU 928 auch so beschrieben, ich denke das ich das schon irgendwie verstanden habe, lasse das ganze nochmal über Nacht einwirken (vielleicht mit einem Single Malt verdünnt) und lese morgen nochmal. Auf jeden Fall ist auch der Programmtext nach meiner letzten Interpretation plausibel. Auf alle Fälle danke für die Mühe.

    Gruß
    Mario

  6. #6
    Registriert seit
    09.06.2007
    Beiträge
    398
    Danke
    25
    Erhielt 46 Danke für 44 Beiträge

    Standard

    Ich verstehe es folgendermaßen:

    0: KF = +00000; immer 0
    1: KF = +00150; SR 150 Byte lang
    2: KF = +00226; Merker-Byte-Adresse Basiszeiger hier MB 226,
    3: KF = +00001; Zusatzzeiger 2. SR-Byte(abgebildet auf MB 227)
    4: KF = +00148; Zusatzzeiger 149. SR-Byte(abgebildet auf MB 228 )
    5: KF = +00149; Zusatzzeiger 150. SR-Byte(abgebildet auf MB 229)
    6: KF = +00000; Reserve für Zeiger
    7: KF = +00000; Reserve für Zeiger
    8: KF = +00000; immer 0

    Davor liegt dann demgemäß in deinem Beispiel auf MB 224 der Basiszeiger, also das erste Byte, des anderen SR und auf MB 225 das letzte Byte (= Nr.14).
    Es können maximal 6 (hier 4 bzw. 2 ) Zeiger vergeben werden, in diesem Fall müsste man sich 6 hintereinanderliegende Merkerbytes reservieren, um beliebige, mit einem Offset adressierte SR-Ausschnitte direkt auf Merker abzubilden und evtl. auch beschreiben zu können.

    Es müssten also die MB 224 bis 229. in irgendeiner Form in deinem Programm verwurstet sein. Ich hasse S5.
    Geändert von Ludewig (01.02.2009 um 17:47 Uhr)

  7. #7
    mariob ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    23.03.2006
    Ort
    Thüringen
    Beiträge
    2.005
    Danke
    162
    Erhielt 278 Danke für 199 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Danke Ludwig,
    ich komme eigentlich aus der Assemblerecke, von daher hätte ich jetzt mit Step 5 und hassen einen gewissen Gewissenskonflikt. Sicher kann man vieles eleganter lösen oder hätte es können und von daher ist hassen schon in Ordnung. Überholt ist das ganze allemal. OT aus.
    In dem meinen von Dir kommentierten Beispiel sieht die Verwurstung im Quelltext so aus, das da eine Adresse durchgeschoben wird, also ein Wort. Deswegen der erste Zeiger Basisadresse +1 und die zwei letzten Zeiger (irgendwie habe ich mit der Begrifflichkeit ein Problem) sind auch direkt aufeinanderfolgend. Sie werden mit Wortbefehlen (MW 226, MW22 bearbeitet und dann als Adressen verwendet. Deswegen auch die Plausibilität meiner Interpretation. Danke für die Bestätigung. Mein größeres Problem sind derzeit die direkten Speicherzugriffe in der Büchse, dazu habe ich hier aber einen eigenen Beitrag.

    Gruß
    Mario

Ähnliche Themen

  1. Antworten: 0
    Letzter Beitrag: 31.05.2011, 10:59
  2. Funktionsaufrufe Online step by step ansehen
    Von snowleopard1702 im Forum Simatic
    Antworten: 7
    Letzter Beitrag: 03.05.2011, 07:41
  3. Antworten: 10
    Letzter Beitrag: 29.10.2010, 17:06
  4. Antworten: 2
    Letzter Beitrag: 24.01.2006, 06:01
  5. wert von step 5 v7.15/ step 7 v5.1 und mehr...
    Von Anonymous im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 20.04.2005, 17:42

Lesezeichen

Berechtigungen

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