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

Seite 1 von 4 123 ... LetzteLetzte
Ergebnis 1 bis 10 von 34

Thema: UDT in SCL erstellen

  1. #1
    Registriert seit
    02.02.2009
    Ort
    Thüringen
    Beiträge
    218
    Danke
    91
    Erhielt 11 Danke für 7 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo zusammen,
    habe folgende Frage: wenn ich den Datentyp UDT im SCL verwenden will kann man doch verschiedene Datentypen zu einer Variable bzw einem "Baustein" zusammenfassen, oder? Hab nun mal versucht diesen zu verwenden
    Code:
    TYPE 
    MESSWERTE: STRUCT 
                    Wert1 : INT := 5;
                    Wert2 : INT := 10;
                    Wert3 : INT := 20;
                    
               END_STRUCT; 
    END_TYPE
    Bekomme aber immer die Fehlermeldung: "Symbolischer Bausteinname Meswerte nicht erkannt". Muss ich dazu vorher erst den UDT in einem DB aufrufen, oder vielleicht als Variable deklarieren? Quasi so:
    Code:
    VAR_INPUT
    .
    .
    END_VAR
    Wenn ja, wie?
    " Immer schön locker durch die Hose atmen"
    Zitieren Zitieren UDT in SCL erstellen  

  2. #2
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.263
    Danke
    537
    Erhielt 2.708 Danke für 1.957 Beiträge

    Standard

    Entweder du schreibst es absolut:

    Code:
    TYPE UDTxxx
        STRUCT
        // Typbeschreibung
    
        END_STRUCT
    
    END_TYPE
    wobei xxx die Nummer der UDT ist

    oder du gibst es symbolisch vor und legst dann ein Symbol vom Typ UDTxxx an, daß Messwerte heißt und schreibst:

    Code:
    TYPE Messwerte
        STRUCT
        // Typbeschreibung
    
        END_STRUCT
    
    END_TYPE
    Wobei xxx immer die gewünschte Nummer ist.
    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

  3. Folgender Benutzer sagt Danke zu Ralle für den nützlichen Beitrag:

    Felse (23.03.2009)

  4. #3
    Registriert seit
    06.10.2004
    Ort
    Kopenhagen.
    Beiträge
    4.639
    Danke
    377
    Erhielt 803 Danke für 644 Beiträge

    Standard

    Es gibt ein weitere möglicheit: In SCL gibt es der option: Create Block Numbers automatically.
    Jesper M. Pedersen

  5. Folgende 5 Benutzer sagen Danke zu JesperMP für den nützlichen Beitrag:

    bernipaul (31.12.2014),Felse (23.03.2009),mh-werner (06.09.2009),Panzerknacker (07.09.2009),Ralle (23.03.2009)

  6. #4
    Avatar von Felse
    Felse ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    02.02.2009
    Ort
    Thüringen
    Beiträge
    218
    Danke
    91
    Erhielt 11 Danke für 7 Beiträge

    Standard

    Danke, das geht schonmal, wenn ich diese UDTs dann als array aufrufen will (sofern das geht) Quasi:
    Code:
    VAR_INPUT
        
        ARRAY [1..5] OF UDT;
        
    END_VAR
    1. Wie geht das?
    2. Kann man dabei trotzdem die einzelnen Variablen des UDTs verarbeiten?
    " Immer schön locker durch die Hose atmen"

  7. #5
    Avatar von Felse
    Felse ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    02.02.2009
    Ort
    Thüringen
    Beiträge
    218
    Danke
    91
    Erhielt 11 Danke für 7 Beiträge

    Standard

    Zitat Zitat von JesperMP Beitrag anzeigen
    Es gibt ein weitere möglicheit: In SCL gibt es der option: Create Block Numbers automatically.
    Kannst du das vielleicht mal bitte genauer beschreiben?
    " Immer schön locker durch die Hose atmen"

  8. #6
    Registriert seit
    06.10.2004
    Ort
    Kopenhagen.
    Beiträge
    4.639
    Danke
    377
    Erhielt 803 Danke für 644 Beiträge

    Standard

    Jesper M. Pedersen

  9. #7
    Registriert seit
    06.10.2004
    Ort
    Kopenhagen.
    Beiträge
    4.639
    Danke
    377
    Erhielt 803 Danke für 644 Beiträge

    Standard

    Zitat Zitat von Felse Beitrag anzeigen
    Kannst du das vielleicht mal bitte genauer beschreiben?
    Mein STEP7 ist auf englisch eingestellt, so es heisst etwas anders in Deiner, aber der Meinung ist ja klar.
    Du findest es unter Options .. Customize .. und unter den Reiter Create Block (alles auf englisch).
    Jesper M. Pedersen

  10. Folgender Benutzer sagt Danke zu JesperMP für den nützlichen Beitrag:

    Felse (23.03.2009)

  11. #8
    Avatar von Felse
    Felse ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    02.02.2009
    Ort
    Thüringen
    Beiträge
    218
    Danke
    91
    Erhielt 11 Danke für 7 Beiträge

    Standard

    Vielleicht stimmt da was mit meiner Installation nicht, aber Optionen kann ich im SCL Editor nirgendwo finden und den Rest auch nicht, ist aber erstmal egal, der Link hilft mir schonmal.
    " Immer schön locker durch die Hose atmen"

  12. #9
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.263
    Danke
    537
    Erhielt 2.708 Danke für 1.957 Beiträge

    Standard

    Zitat Zitat von Felse Beitrag anzeigen
    Danke, das geht schonmal, wenn ich diese UDTs dann als array aufrufen will (sofern das geht) Quasi:
    Code:
    VAR_INPUT
        
        ARRAY [1..5] OF UDT;
        
    END_VAR
    1. Wie geht das?
    2. Kann man dabei trotzdem die einzelnen Variablen des UDTs verarbeiten?
    1.
    Code:
    VAR_INPUT
        
        My_Array: ARRAY [1..5] OF UDTxxx;
        
    END_VAR
    Immer an die Nummer denken oder symbolisch, wenn das Symbol bereits angelegt ist.

    2. Im SCL-Editor unter "Extras/Einstellungen/Bausteine erzeugen".
    Wenn es das bei dir nicht gibt, kann es evt. sein, daß dein SCL-Editor eine ältere Version ist und das noch nicht unterstützt.
    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

  13. Folgender Benutzer sagt Danke zu Ralle für den nützlichen Beitrag:

    Felse (23.03.2009)

  14. #10
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.794
    Danke
    398
    Erhielt 2.417 Danke für 2.013 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    @Felse:
    Das was Jesper meinte heißt in Deutsch :
    Extras - Einstellungen - [Bausteine erzeugen] und hier das Feld "Bausteinnummer automatisch erzeugen" anklicken.

    Die Zugriffe auf die UDT-Unter-Elemente im ARRAY erfolgen dann etwa so :
    Code:
    x := myArray[2].UDT_Variable_1 ;
    Gruß
    LL

  15. Folgender Benutzer sagt Danke zu Larry Laffer für den nützlichen Beitrag:

    Felse (23.03.2009)

Ähnliche Themen

  1. LDB erstellen
    Von Servernexus im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 07.02.2012, 19:19
  2. Active X erstellen
    Von Lupo im Forum Programmierstrategien
    Antworten: 14
    Letzter Beitrag: 03.01.2009, 11:13
  3. Datei auf MMC erstellen?
    Von baalrok im Forum HMI
    Antworten: 3
    Letzter Beitrag: 26.08.2008, 22:48
  4. FB/FC erstellen
    Von Black Scorpion im Forum Simatic
    Antworten: 5
    Letzter Beitrag: 02.05.2008, 18:24
  5. FB erstellen?
    Von ottopaul im Forum Simatic
    Antworten: 39
    Letzter Beitrag: 29.03.2008, 13:25

Lesezeichen

Berechtigungen

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