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

Ergebnis 1 bis 6 von 6

Thema: SCL Variablen dynamisch zusammensetzten

  1. #1
    Registriert seit
    20.03.2012
    Beiträge
    13
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,

    ist es in TIA möglich, SCL Variablen dynamisch zusammen zu setzten. Dabei denke ich nicht über die Benutzung eines Arrays nach.

    MFG
    Zitieren Zitieren SCL Variablen dynamisch zusammensetzten  

  2. #2
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.191
    Danke
    923
    Erhielt 3.292 Danke für 2.661 Beiträge

    Standard

    Den Variablenname kann man nicht dynamisch zusammensetzen.

    Warum willst Du das tun? Was willst Du tun? Welche CPU willst Du programmieren?

    Harald
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  3. #3
    pantau86 ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    20.03.2012
    Beiträge
    13
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hab mich doch für ein Array entschieden, weil es anders nicht geht. Danke trotzdem

  4. #4
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.222
    Danke
    533
    Erhielt 2.698 Danke für 1.950 Beiträge

    Standard

    Zitat Zitat von PN/DP Beitrag anzeigen
    Den Variablenname kann man nicht dynamisch zusammensetzen.

    Warum willst Du das tun? Was willst Du tun? Welche CPU willst Du programmieren?

    Harald
    Ich kann ihn verstehen. Das Konzept einer reinen symololischen Programmierung wird erst dann wirklich vollständig, wenn man zur Laufzeit symbolische Variablennamen zusammensetzen und die Werte dieser Variablen auslesen kann. Ich habe meine Typanwahl innerhalb der SPS in Datenbausteinen (1 DB je Typ) organisiert. Das geht nicht wirklich symbolisch, denn wie soll ich den richtigen DB anwählen? Klar, eine lange Caseanweisung wäre machbar, aber das ist nicht schön.

    "Zusammensetzen" hieße:

    Typ 1 : DB Type_001
    Typ 2 : Db Type_002

    Wählt am Panel jemand Type 2, dann kommt eine INT 2 im Programm an.
    Ich setze dann einfach zusammen : Type_ + 002 --> Type_002 und kopiere z.Bsp. die Daten schön symbolisch um.
    Das geht so leider nicht, also wieder die "Krücke" peek, poke und Freunde.
    Gruß
    Ralle

    ... there\'re 10 kinds of people ... those who understand binaries and those who don\'t …
    and the third kinds of people … those who love TIA-Portal

  5. #5
    Registriert seit
    23.07.2009
    Ort
    Österreich
    Beiträge
    2.351
    Danke
    452
    Erhielt 692 Danke für 517 Beiträge

    Standard

    Zitat Zitat von Ralle Beitrag anzeigen
    Wählt am Panel jemand Type 2, dann kommt eine INT 2 im Programm an.
    Ich setze dann einfach zusammen : Type_ + 002 --> Type_002 und kopiere z.Bsp. die Daten schön symbolisch um.
    Das geht so leider nicht, also wieder die "Krücke" peek, poke und Freunde.
    In WinCC und WinCC-Flex machen wir ja auch seit Jahren nix anderes.
    Insofern ist die Frage des TE nicht sonders verwunderlich...
    Sei es in C oder Vbs...
    Code:
    Nr = 1
    
    Value = SmartTags("MeineVariable_" & CStr(Nr))
    Dann wäre die Programmierung der indirekten Variablenzugriffe zumindest auf allen Systemen gleich...
    Das aber in ner PLC umzusetzen dürfte wohl schwer sein.... schade. Die Möglichkeiten wären damit wohl unbegrenzt.
    If at first you don't succeed, you're not Van Damme!
    ... or maybe using TIA!

  6. #6
    Registriert seit
    04.11.2015
    Beiträge
    17
    Danke
    4
    Erhielt 3 Danke für 3 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Gemäss einem Insider bei Siemens sind dynamische Arrays geplant. Auf wann konnte ich ihm aber nicht entlocken. Aber schon eher ein "in den nächsten Jahren" als in zehn.

    Auch mit dem Variant sollen noch einige Neuerungen geplant sein. Vieleicht gibts dann ja bald ein Array_Tag1[Int_Tag1...Int_Tag2] of typeof(Variant_Tag1)

    Gerade für Standartbausteine, wie einen dynamischen Ringbuffer, welcher mit Int, DINT, Real etc. arbeiten kann, wäre dies doch sehr spannend.
    Geändert von EXOR (23.11.2015 um 07:53 Uhr)

Ähnliche Themen

  1. DATE zusammensetzten aus T M J
    Von Sony15ab im Forum Simatic
    Antworten: 11
    Letzter Beitrag: 23.05.2016, 07:08
  2. scl array dynamisch
    Von dentech im Forum Simatic
    Antworten: 2
    Letzter Beitrag: 23.10.2012, 09:52
  3. TIA V11 SCL DB Dynamisch ansprechen
    Von MrEASY im Forum Simatic
    Antworten: 19
    Letzter Beitrag: 25.08.2011, 08:29
  4. SCL: FB Aufruf unter SCL mit Variablen DB
    Von ThorstenK im Forum Programmierstrategien
    Antworten: 32
    Letzter Beitrag: 10.02.2011, 19:15
  5. Ausgang dynamisch zuordnen in SCL
    Von thomasgull im Forum Simatic
    Antworten: 1
    Letzter Beitrag: 03.08.2010, 20:22

Stichworte

Lesezeichen

Berechtigungen

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