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

Seite 2 von 4 ErsteErste 1234 LetzteLetzte
Ergebnis 11 bis 20 von 35

Thema: Skript struktur auslesen

  1. #11
    Registriert seit
    02.08.2012
    Beiträge
    30
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Gut das sich die Vormatierung in luft auflöst..

  2. #12
    Registriert seit
    30.10.2009
    Ort
    10 km vom Herzen der Natur
    Beiträge
    1.626
    Danke
    120
    Erhielt 340 Danke für 255 Beiträge

    Standard

    Du kannst relativ direkt darauf zugreifen:
    Du legst Deine Variablen an:
    Code:
    Variablenname                 Adresse
    
    Karlheinz                     DB 0 DBW [Datensatznummer_0]
    Hannes                        DB 0 DBW [Datensatznummer_1]
    Fritz                         DB 0 DBW [Datensatznummer_2]
    Franz                         DB 0 DBW [Datensatznummer_3]
    Hans                          DB 0 DBW [Datensatznummer_4]
    Dann brauchst Du noch die Variablen, die in den eckigen Klammern stehen. Diese musst Du auf die jeweils auf die passende Adresse im Baustein ändern, wenn Du einen anderen Datensatz wählst.
    Auf die Variablen kannst Du dann unter ihrem WCCf Namen zugreifen
    Gruß
    Michael

  3. #13
    Registriert seit
    30.10.2009
    Ort
    10 km vom Herzen der Natur
    Beiträge
    1.626
    Danke
    120
    Erhielt 340 Danke für 255 Beiträge

    Standard

    Formatierung geht besser mit Code-Tags (#-Icon)
    Gruß
    Michael

  4. #14
    Registriert seit
    02.08.2012
    Beiträge
    30
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Ok, um zu sehen ob ichs verstanden hab: Ich gebe den DB mit relativer Adresse an, in Abhängigkeit von der variable in Klammern. Da ich die Datensätze nur lesen und gleich in Textfelder speichern will, brauch ich davon ja nur eine, die ich dann für jegliche Zugriffe "missbrauchen" kann. Diese, nennen wir sie Zuugriffsvariable, kann ich ja mittels script incrementieren, um nacheinander auf die einzelnen enthaltenen Datensätze zugrifen zu können.
    Nur würde dann in der Variable nicht nur die Anfangsadresse des UDT drinstehen? Kann ich dort dann auf meine gewünschten Werte zugreifen?

    PS: danke für dei info mit den
    Code:
    Code
    tags

  5. #15
    Registriert seit
    06.10.2009
    Ort
    NRW
    Beiträge
    1.572
    Danke
    63
    Erhielt 259 Danke für 219 Beiträge

    Standard

    Es gibt ja immer viele Lösungswege.

    Ich löse solche Sachen immerso:

    In einem Global-DB wird das UDT in einem Array angelegt. Also 48x mal das UDT für die Datenhaltung.

    Für die Kommunikation mit dem HMI habe ich einen eigenen Global-DB.

    In dem HMI-DB lege ich die Struktur dann 1x ab. Deklararion meinetwegen als "Anzeige"

    Die 8 Strukturelemente von "HMI-DB".Anzeige.irgendwas müssen natürlich einmalig als Ausgabefeld angelegt werden.

    Der Pointer wird dann im HMI entweder per Direkteingabe oder Pfeiltasten beeinflusst. (INT-Variable -> Grenzen überwachen!)

    Gemäß Pointer kopiere ich dann mit BLK_MOVE die entsprechende Struktur aus dem Array des Daten-DB in den HMI-DB rüber.
    Meine Motivation läuft nackig mit einem Cocktail über eine Wiese.

  6. #16
    Registriert seit
    30.10.2009
    Ort
    10 km vom Herzen der Natur
    Beiträge
    1.626
    Danke
    120
    Erhielt 340 Danke für 255 Beiträge

    Standard

    Zitat Zitat von S7_is_confusing Beitrag anzeigen
    Ok, um zu sehen ob ichs verstanden hab: Ich gebe den DB mit relativer Adresse an, in Abhängigkeit von der variable in Klammern.
    Entweder das, dann müsstest Du aber je Datensatz einen eigenen DB anlegen, oder Du lässt alle in einem DB und müsstest dann auf die Variable indirekt zugreifen, so wie in meinem Beispiel, und entsprechend auch für jede Variable der Struktur eine Variable für die Adresse ablegen und entsprechend ändern.
    Zitat Zitat von S7_is_confusing Beitrag anzeigen
    Da ich die Datensätze nur lesen und gleich in Textfelder speichern will, brauch ich davon ja nur eine, die ich dann für jegliche Zugriffe "missbrauchen" kann.
    Im Prinzip erfolgt jeder Zugriff auf die Adresse, die durch die Variablen in Klammern vorgegeben wird.
    Zitat Zitat von S7_is_confusing Beitrag anzeigen

    Diese, nennen wir sie Zuugriffsvariable, kann ich ja mittels script incrementieren, um nacheinander auf die einzelnen enthaltenen Datensätze zugrifen zu können.
    Ja, klar, geht aber auch z.B. über Schaltflächen.
    Zitat Zitat von S7_is_confusing Beitrag anzeigen
    Nur würde dann in der Variable nicht nur die Anfangsadresse des UDT drinstehen? Kann ich dort dann auf meine gewünschten Werte zugreifen?
    Habe ich - denke ich - oben schon beantwortet.
    Zitat Zitat von S7_is_confusing Beitrag anzeigen
    PS: danke für dei info mit den
    Code:
    Code
    tags
    Bitte schön!
    Gruß
    Michael

  7. #17
    Registriert seit
    02.08.2012
    Beiträge
    30
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    OK, werde mich dann mal dranmachen das auszuprobieren, kann aber nix versprechen.

    @Tigerente1974: So wie deine Motivation geht auch mein Verständnis was S7 anbelangt seine eigenen, nicht sonderlich nachvollziehbaren Wege. (Hat sich wohl an Die Siemens Funktionsweise bereits angepasst..) Werde mich erstmal der "Version" von M-Ott widmen, aber trotzdem danke für den Vorschlag

  8. #18
    Registriert seit
    02.08.2012
    Beiträge
    30
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Ähmm.. noch schnell ne Frage hinterher.. Welchen Datentyp hat denn nun meine "DB_variable" ? oO

    Ok, um zu sehen ob ichs verstanden hab: Ich gebe den DB mit relativer Adresse an, in Abhängigkeit von der variable in Klammern.
    Ja, ich hab schon verstanden was du damit meintest, beim zweiten mal durchlesen ist mir dann auch aufgefallen, dass etwas anderes dasteht als gemeint war

  9. #19
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.728
    Danke
    398
    Erhielt 2.406 Danke für 2.002 Beiträge

    Standard

    Zitat Zitat von S7_is_confusing Beitrag anzeigen
    ... müsste ich ja 48*8 = 384 Variablen anlegen. Gibt es da keine andere Möglichkeit, z.B. irgendwie über den Offset der Variable ?
    Hallo,
    das hört sich für mich ein bißchen nach Multiplex-Variable an.
    Da in deinem Bild die Formatierung nicht so funktioniert hat - sieht dein DB etwa so aus ?
    Code:
    Datenblock_1
     - Wert_1
     - Wert_2
     ...
     - Wert_8
    Datenblock_2
    
    usw. - alle Datenblocks sind gleich aufgebaut ?
    Gruß
    Larry

  10. #20
    Registriert seit
    02.08.2012
    Beiträge
    30
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Code:
    DB XXX                                      UDT_mess
    +--------------------+                    +-----------+-----+
    |Name----| Typ-------|                    | Name----- | Typ-|
    +--------+-----------+                    +-----------+-----+
    |mess0---| UDT_mess  |    --->            |param1     |REAL |
    | mess1--| UDT_mess  |                    |param2     |DaT  |
    | .......| UDT_mess  |                    |....       | ....|
    | mess48 | UDT_mess  |                    |param8     | ....|             Meine Struktur ist komplett genause aufgebaut
    +--------+-----------+                    +-----------+---- +    =48.0 byte
    So sollte sie aussehen. Wie gesagt, die Variable vom typ "meine struktur" greift auf DB XXX DW 0 zu.

Ähnliche Themen

  1. Antworten: 0
    Letzter Beitrag: 12.11.2010, 12:17
  2. Antworten: 7
    Letzter Beitrag: 11.09.2009, 14:01
  3. Schrittketten Struktur
    Von MatMer im Forum Programmierstrategien
    Antworten: 25
    Letzter Beitrag: 18.09.2007, 15:13
  4. Aus einer FB Struktur ein Wort auslesen
    Von ottopaul im Forum Simatic
    Antworten: 18
    Letzter Beitrag: 11.07.2007, 00:39
  5. DB-struktur
    Von Pimsti im Forum Simatic
    Antworten: 4
    Letzter Beitrag: 13.06.2006, 12:48

Lesezeichen

Berechtigungen

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