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

Seite 2 von 3 ErsteErste 123 LetzteLetzte
Ergebnis 11 bis 20 von 27

Thema: Script programmierung

  1. #11
    Registriert seit
    14.04.2014
    Beiträge
    45
    Danke
    20
    Erhielt 4 Danke für 4 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Unter V13 Advanced kann man im script auf UDT´s zugreifen, allerdings nur, wenn man die Variable absolut adressiert, bsp:

    Code:
    dim scripttag
    
    scripttag=Smarttags("struct.structvar1")
    Indirekte Adressierung geht, wenn die Variable im selben script einmal absolut referenziert wurde:
    Code:
    dim scripttag, i, var
    i=1
    var="struct.structvar"& cstr(i)
    scripttag=Smarttags(var)
    
    if false then
    smarttags("scruct.structvar1")=1
    end if

  2. #12
    zloyduh ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    11.12.2008
    Beiträge
    226
    Danke
    92
    Erhielt 2 Danke für 2 Beiträge

    Standard

    Ist es den möglich, die gesamte Strucktur in eine Lockale Strucktur zu kopieren und anschliessend sie Daten auslesen?

  3. #13
    Registriert seit
    14.04.2014
    Beiträge
    45
    Danke
    20
    Erhielt 4 Danke für 4 Beiträge

    Standard

    Wenn Du mit Lokaler Struktur eine lokale Struktur im VB-Script meinst, nein. Strukturen im VB-Script gibt es nicht.
    Wie viele Variablen hat Deine Struktur denn?
    Du kannst den Umweg nutzen, den ich unten genannt habe, wenn Du aus bestimmten Gründen über eine Indexierung durch eine Laufvariable benötigst.
    Das ist natürlich doppelt gemoppelt, wenn es nur ums Umkopieren geht, kannst Du auch einfach deine Struktur per Drag&Drop aus der Variablentabelle ins Script ziehen und dort händisch die Variablen zuweisen.

  4. #14
    zloyduh ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    11.12.2008
    Beiträge
    226
    Danke
    92
    Erhielt 2 Danke für 2 Beiträge

    Standard

    Die Struktur besteht aus 3 Parameter (Länge, Winkel 1, Winkel 2)
    Allerdings wird diese Struktur als Array [1..30] aufgerufen.
    Ergibt eine ganze Menge Daten

    Also muss ich (wenn ich alles richtig Verstanden habe) jede Variable einzeln aufrufen

    So in etwa?

    Code:
    Var1= SmartTags(DB.mySTRUCT[1].Var1
    Var2=SmartTags(DB.mySTRUCT[1].Var2
    Var3=SmartTags(DB.mySTRUCT[1].Var3
    
    Var4= SmartTags(DB.mySTRUCT[2].Var1
    Var5=SmartTags(DB.mySTRUCT[2].Var2
    Var6=SmartTags(DB.mySTRUCT[2].Var3
    Geändert von zloyduh (08.12.2014 um 11:33 Uhr)

  5. #15
    Registriert seit
    14.04.2014
    Beiträge
    45
    Danke
    20
    Erhielt 4 Danke für 4 Beiträge

    Standard

    mach mal ein screenshot von Deinen Variablen in WinCC V13 die Du austauschen möchtest, vielleicht habe ich Dich falsch verstanden.

  6. #16
    zloyduh ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    11.12.2008
    Beiträge
    226
    Danke
    92
    Erhielt 2 Danke für 2 Beiträge

    Standard

    hier der Inhalt meines DB:
    (die Daten sollen aus dem DB in eine csv-Datei eingetragen werden und nach der Bearbeitung auch wieder zurück in den DB importiert werden (das aber später))


    Der Bediener der Maschine bekommt einen USB-Stick wo der Auftrag in vorn einer csv_Datei abgelegt ist diese muss er importierern. Es muss aber auch anders herum funktioneren (das wo ich jetzt dran bin) also die Einträge aus dem DB in eine csv-Detei exportieren.

    DB.jpg
    Geändert von zloyduh (08.12.2014 um 12:15 Uhr)

  7. #17
    Registriert seit
    14.04.2014
    Beiträge
    45
    Danke
    20
    Erhielt 4 Danke für 4 Beiträge

    Standard

    Du musst unterscheiden zwischen PLC-Datatype in der PLC und UDT (UserDataType) in WinCC.
    Das ist nicht dasselbe.
    Du hast jetzt einen Screenshot von der PLC Seite gemacht.
    Diese verbindest Du ja in WinCC mit Externen WCC-Variablen.

    Diese kannst Du entweder als UDT anlegen oder einzeln.

    Bis Update 3 oder 4 war es nicht möglich in einem Script die Elemente eines UDT indiziert zu adressieren, wenn man dem Script diese nicht wenigstens einmal absolut beigebracht hat.
    Ob dies immer noch so ist, weiß ich nicht.
    Einzelne Variablen lassen sich über Smarttags indiziert adressieren, da ist dann die PLC-Anbindung unkomfortabel.

    Wenn ich hier Mist erzähle, möge bitte jemand bescheid geben.

  8. #18
    zloyduh ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    11.12.2008
    Beiträge
    226
    Danke
    92
    Erhielt 2 Danke für 2 Beiträge

    Standard

    Also jetzt bin ich komplett aus dem Konzept

    Muss ich eine interne Struktur in WinCC anlegen und diese mit der Steuerung verbinden?
    Und in dem Script mit der intern angelegten Struktur arbeiten?


    Fragen über Fragen

  9. #19
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.726
    Danke
    398
    Erhielt 2.402 Danke für 2.001 Beiträge

    Standard

    Ich kann es mich nicht vorstellen.
    So, wie ich es sehe, mußt du dir jede Variable (der Struktur und des Array's) einzeln anlegen.
    Danach kannst du dann darauf zugreifen wie in deinem Code-Beispiel ...

    Gruß
    Larry

  10. #20
    Registriert seit
    14.04.2014
    Beiträge
    45
    Danke
    20
    Erhielt 4 Danke für 4 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von zloyduh Beitrag anzeigen
    Muss ich eine interne Struktur in WinCC anlegen und diese mit der Steuerung verbinden?
    Und in dem Script mit der intern angelegten Struktur arbeiten?
    Du kannst eine Struktur in WinCC anlegen und diese mit der Struktur in der PLC verbinden. Dies geht allerdings nicht symbolisch, sondern nur absolut adressiert. Sprich du adressierst das erste Bit der PLC-Struktur auf das erste Bit der WinCC-Struktur.
    Dann ist allerdings die Scriptbearbeitung umständlich.

    Für die Scriptbearbeitung ist es einfacher wenn du die Variablen einzeln anlegst.
    Unter TIA ist es möglich, Die PLC-Variablen per Drag and Drop in WinCC hineinzuziehen. Dann musst Du nicht jede Variable händisch anlegen.

    Dann kannst du diese im Script indexiert adressieren.

Ähnliche Themen

  1. Workshop Script-Programmierung mbNET und mbSPIDER
    Von MB Connect Line GmbH im Forum Werbung und Produktneuheiten
    Antworten: 0
    Letzter Beitrag: 25.09.2013, 08:58
  2. Wetter Script
    Von emilio20 im Forum HMI
    Antworten: 6
    Letzter Beitrag: 11.11.2010, 21:44
  3. Tageswert Script
    Von paula23 im Forum HMI
    Antworten: 3
    Letzter Beitrag: 11.08.2009, 09:43
  4. WinCC Script -> VB Script
    Von Rdata im Forum Simatic
    Antworten: 1
    Letzter Beitrag: 27.08.2008, 12:04
  5. VB-Script in C-Script konv.
    Von Krumnix im Forum HMI
    Antworten: 2
    Letzter Beitrag: 20.09.2006, 16:14

Lesezeichen

Berechtigungen

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