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

Seite 2 von 2 ErsteErste 12
Ergebnis 11 bis 18 von 18

Thema: Kurve als CSV speichern

  1. #11
    Registriert seit
    30.03.2005
    Beiträge
    2.096
    Danke
    0
    Erhielt 673 Danke für 541 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hier mal ein kurzes Programmbeispiel für das Kopieren eines Datensatzes (ARRAY) in WinCC flexible in VBScript :

    Code:
    ' Datensatz (ARRAY) kopieren
     
    Dim i
     
    For i = 0 To 9  
        SmartTags("Datensatz_2")(i) = SmartTags("Datensatz_1")(i) 
    Next
    Gruß Kai
    Angehängte Grafiken Angehängte Grafiken

  2. Folgender Benutzer sagt Danke zu Kai für den nützlichen Beitrag:

    Steff_F (13.10.2008)

  3. #12
    Steff_F ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    13.10.2008
    Beiträge
    29
    Danke
    4
    Erhielt 7 Danke für 4 Beiträge

    Standard

    Danke für die tolle Hilfe!
    Das abspeichern funktioniert jetzt. Musste nur den Code noch so ändern, dass die Variablen in eine Spalte geschrieben werden, weil Excel keine 999 Spalten anzeigen kann.

    Dataset = CStr(Now) & ";"
    For i = 0 To 998
    Dataset = Dataset & CStr(SmartTags("NormierteMessreihe.NormierteMesswerte_P")(i)) & Chr(10) & ";"
    Next


    Jetzt muss ich nur noch den Code so ändern, dass die anderen 4 Messreihen in den Spalten daneben abgelegt werden.

    Gruß

  4. #13
    Steff_F ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    13.10.2008
    Beiträge
    29
    Danke
    4
    Erhielt 7 Danke für 4 Beiträge

    Standard

    Hallo,

    habe hier nochmals die fertigen Scripte zugefügt, fals nochmals jemand vor dem gleichen Problem stehen sollte.

    Gruß
    Angehängte Dateien Angehängte Dateien

  5. #14
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.726
    Danke
    398
    Erhielt 2.401 Danke für 2.001 Beiträge

    Standard

    ... wenn du diese Werte in Excel weiter verwenden willst ...
    Warum speicherst du dann nicht jede Kurve in eine Spalte und die Einzelwerte dann Zeilenweise untereinander ? Das würde dann in Excel die Sache etwas vereinfachen ...

    Gruß
    LL

  6. #15
    Registriert seit
    06.10.2004
    Ort
    Kopenhagen.
    Beiträge
    4.626
    Danke
    377
    Erhielt 801 Danke für 642 Beiträge

    Standard

    Das syntax ist wie so:

    SmartTags("ODBC\FromDB\arrayToCDR")(0) = rst.Fields(0).Value

    ODBC\FromDB\arrayToCDR ist ein ARRAY Tag.

    rst.Fields ist ein VBS Array von typ ADO Recordset.


    Ich vermute es wird funktionieren mit ein Index variabel:

    SmartTags("ODBC\FromDB\arrayToCDR")(i) = rst.Fields(i).Value


    Dies wird nicht funktionieren:
    CStr(SmartTags("Prot.Messung[i].P_Sys"))

    So weit das ich weiss kann man nicht WinCC Flex ARRAYs erzeugen von STRUCTs oder UDTs. Nur "einfache" variabel typen wie INTs, DINTs oder REALs.

    edit: Oho, ich hatte nicht gesehen das ihr es schon gelöst hatte.
    Jesper M. Pedersen

  7. #16
    Steff_F ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    13.10.2008
    Beiträge
    29
    Danke
    4
    Erhielt 7 Danke für 4 Beiträge

    Standard

    ... wenn du diese Werte in Excel weiter verwenden willst ...
    Warum speicherst du dann nicht jede Kurve in eine Spalte und die Einzelwerte dann Zeilenweise untereinander ? Das würde dann in Excel die Sache etwas vereinfachen ...
    Genau das mache ich ja jetzt, nachdem ich mein Script fertig habe. (Siehe Anhang oben)

    Code:
     Dataset = CStr(Now)  &  ";" 
    For i = 0 To 998
       Dataset = Dataset & CStr(SmartTags("NormierteMessreihe.NormierteMesswerte_P")(i))& ";" &_
               CStr(SmartTags("NormierteMessreihe.NormierteMesswerte_P_DRV")(i))& ";" &_
               CStr(SmartTags("NormierteMessreihe.NormierteMesswerte_P_MST")(i))& ";" &_
               CStr(SmartTags("NormierteMessreihe.NormierteMesswerte_I")(i))& ";" &_        
               CStr(SmartTags("NormierteMessreihe.NormierteMesswerte_Q")(i)) & Chr(10) & ";"
     
    Next
    Funzt jetzt prima!
    Die Datei wird auch automatisch mit aktuellem Datum und Auftragsnummer erzeugt.

    Gruß

  8. #17
    Registriert seit
    24.10.2003
    Ort
    Zug, Schweiz
    Beiträge
    73
    Danke
    2
    Erhielt 1 Danke für 1 Beitrag

    Standard

    Genau so was wie Steff damals verwendet hat möchte ich auch anwenden.
    Meine ergänzende Frage ist nur noch, funktioniert das mit dem speichern der Messwerten in ein CSV file auch mit einem CE Panel (MP377) oder nur auf PC mit Runtime Lizenz.
    Ihr Steuerungs-Spezialist für:
    Elektro-Design, EL-Schema, Sicherheitstechnik, SPS-Programmierung, Inbetriebnahme und Projektleitung.

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

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,
    das sollte auch auf dem MP377 funktionieren. Du mußt hier nur beachten, dass durch WinCE andere VB-Befehle zum Einsatz kommen ...

    Gruß
    LL

Ähnliche Themen

  1. Durchfluss berechnen mit Qh Kurve
    Von omit im Forum Simatic
    Antworten: 30
    Letzter Beitrag: 21.09.2014, 22:10
  2. Baustein für nichtlineare Kurve
    Von williwuff im Forum Simatic
    Antworten: 5
    Letzter Beitrag: 21.09.2011, 19:39
  3. Stützpunkt Kurve
    Von paula23 im Forum Simatic
    Antworten: 24
    Letzter Beitrag: 25.01.2011, 17:30
  4. WinCCFlex2008 SP1- Kurve anzeigen...
    Von AndreK im Forum HMI
    Antworten: 7
    Letzter Beitrag: 19.01.2011, 13:41
  5. Kurve als Sollwert...
    Von AndreK im Forum Simatic
    Antworten: 6
    Letzter Beitrag: 05.04.2010, 20:55

Lesezeichen

Berechtigungen

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