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

Ergebnis 1 bis 10 von 10

Thema: Daten von Touch Panel auf dem Rechner archivieren

  1. #1
    Registriert seit
    22.07.2009
    Beiträge
    6
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Schön guten Tag!

    Ich drehe langsam am Rad...

    Ich möchte meine Daten von dem Touch Panel auf dem Rechner über ein Netzwerk ablegen bzw. archivieren...
    Wenn ich mein Programm zum testen auf dem Rechner starte, funktioniert das ganze und die Daten werden auf dem Rechner abgelegt..

    aber wenn ich mein Projekt auf dem Touch Panel starte und möchte die Daten archivieren passiert garnichts...

    mein Skriptfile für die archivierung sieht folgendermaßen aus:




    Dim FName, fso, DataSet

    FName = \\sps\Ordner\Daten.txt

    Set fso = CreateObject("Scripting.FileSystemObject")

    If Not fso.FileExists(FName) Then
    fso.CreateTextFile FName
    End If

    DataSet = "Momentaner Druck: " & ";" & SmartTags("pressure")
    Set fout = fso.OpenTextFile(FName,8, True)
    fout.WriteLine(DataSet)
    fout.Close


    was ich nicht verstehe, wieso das ganze auf dem rechner zum testzwecken funktioniert und wenn ich das in der anlage ausprobieren möchte geht das nicht..

    der zugriff auf das netzwerk ist vorhanden

    habe ich vielleicht was übersehen, brauche unbedingt hilfe

    Vielen Dank im Voraus!!!!!!!!!!!!!!!
    Geändert von buba1983 (24.09.2009 um 15:07 Uhr)
    Zitieren Zitieren Daten von Touch Panel auf dem Rechner archivieren  

  2. #2
    Registriert seit
    02.09.2009
    Beiträge
    3
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Ist es ein CE System, dann ist der Befehlsvorrat anders als beim normalen Rechner. Das dateihandling ist anders, da gab es aber schon Beiträge im Forum.

  3. #3
    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

    Siehe bitte dazu z.Bsp. diesen aktuellen Thread: http://www.sps-forum.de/showthread.php?t=30324

    Es gibt eine Suchfunktion im Forum, auch darüber sind noch einige Hinweise zu finden.
    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

  4. #4
    buba1983 ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    22.07.2009
    Beiträge
    6
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    ja auf dem Touch Panel ist WinCE und der Rechner hat XP drauf...
    was muss ich dann ändern?

  5. #5
    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

    nur mal so nebenher ... dein TP kann aber schon Scripte ? Welches TP hast du im Einsatz ?

  6. #6
    buba1983 ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    22.07.2009
    Beiträge
    6
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    MP270 ja kann er

  7. #7
    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

    Das steht alles in den Beiträgen von PN/DP in dem von mir bereits geposteten Link!
    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

  8. #8
    buba1983 ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    22.07.2009
    Beiträge
    6
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    ja bei mir funktioniert ja alles und ich sehe auch den ordner den ich auf dem rechner freigegeben habe, aber sobald ich von Touch panel was archivieren möchte passiert garnicht, auf dem rechner ist das kein problem ich drücke den Button und die datei escheint in dem ordner sofort....
    wie gesagt auf dem tp passiert garnicht....

  9. #9
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.192
    Danke
    925
    Erhielt 3.292 Danke für 2.661 Beiträge

    Standard

    Zitat Zitat von buba1983 Beitrag anzeigen
    wie gesagt auf dem tp passiert garnicht....
    Ist es genau das selbe WCCf-Projekt, das Du testest?
    Mal auf das MP270 transferiert, mal als Runtime bzw. im Simulator auf dem PC gestartet?

    Wenn Dein Skript auf dem MP270 tatsächlich gestartet wird, dann muß eine Systemmeldung etwa
    in der Art "ActiveX konnte nicht erstellt werden..." kommen.

    Das ActiveX-Objekt "Scripting.FileSystemObject" gibt es auf dem MP270 nicht (WinCE),
    sondern nur auf Deinem PC (irgendein Win32).

    Wenn Du die Meldung nicht siehst, mach in ein Bild eine Meldeanzeige rein
    und/oder mach in die Vorlage ein Meldefenster rein für die Meldeklasse "System".

    Unbedingt lesen:
    FAQ: Protool/WinCCflex Daten lesen / schreiben mit VB-Script
    siehe da besonders die unten angehängte VBScript_WinCE.pdf

    Der Link in #3 von Ralle hätte Dich auch dahin geführt.
    Zitat Zitat von Ralle Beitrag anzeigen
    Siehe bitte dazu z.Bsp. diesen aktuellen Thread: http://www.sps-forum.de/showthread.php?t=30324
    Ab Beitrag #8 wird es für Dich interessant.

    Hier mal ein Beispiel, wie Panel-Variablen in eine INI-Datei gespeichert werden können.
    Weil ich meine Panel-Projekte auch auf dem PC vollständig testen will, habe ich ein Settings-Bild
    im Projekt, wo ich auf Panel und PC unterschiedliche Speicherpfade eingeben kann. Die Eingaben
    speichere ich dann in eine INI-Datei, die beim Runtime-Start wieder gelesen wird.

    Das Beispiel mußt Du natürlich für Deine Belange anpassen (prüfen ob Datei existiert, Append-Mode,
    was ganz anderes in die Datei schreiben).

    Beachte und vergleiche die unterschiedlichen Befehle, je nachdem, ob das Skript unter WinCE (MP270)
    oder Win32 (PC-Windows) läuft.

    Code:
    ' Sub SettingsIniSpeichern()
    ' SystemPfade und Einstellungen in Ini-Datei speichern
    ' Skript kann unter OP-WinCE und PC-Windows laufen
    Const ForWriting = 2
    Dim fso, f, inifile
    
    inifile = "Settings.ini"
    If Not FolderExist("\FLASH") Then
        ShowSystemAlarm "Ordner '\FLASH' nicht vorhanden. Kann '" & inifile & "' nicht speichern."
        Exit Sub
    Else
        inifile = "\FLASH\" & inifile
        If SmartTags("_System\!_RT-Sim_!") Then 'PC-Windows
            Set fso = CreateObject("Scripting.FileSystemObject")
            Set f = fso.CreateTextFile(inifile, True)
            f.WriteLine  "[WCF-RT Anlage1]"
            f.WriteLine  "path_CF-Card=" & SmartTags("_System\path_CF-Card")
            f.WriteLine  "path_Warte-PC=" & SmartTags("_System\path_Warte-PC")
            f.Close
        Else 'WinCE
            Set f = CreateObject("FileCtl.File")
            f.Open inifile, ForWriting
            f.LinePrint "[WCF-RT Anlage1]"
            f.LinePrint "path_CF-Card=" & SmartTags("_System\path_CF-Card")
            f.LinePrint "path_Warte-PC=" & SmartTags("_System\path_Warte-PC")
            f.Close
        End If
        ShowSystemAlarm "Systempfade in '" & inifile & "' gespeichert."
    End If
    Code:
    ' Function FolderExist(Path) prüft, ob ein angegebener Ordner existiert
    ' z.B. ob eine MemoryCard im angegebenen Slot steckt
    ' oder der angegebene Netzwerk-Pfad erreichbar ist
    ' Rückgabewert muß True/False sein!
    ' Skript kann unter OP-WinCE und PC-Windows laufen
    ' Path darf unter WinCE wildcards *? enthalten
    ' !!! unter WinCE führt ein Aufruf "If FolderExist(SmartTags("Strinvariable")) ..."
    '     zu einem Runtim-Error "ungültiger Procedur-Call"
    '     -> SmartTags("Strinvariable") muß explizit einer Skript-Variablen zugewiesen werden !!!
    '     -> z.B. path = SmartTags("Strinvariable") : If FolderExist(path) ...  <- das funktioniert
    '
    Dim fso
    
    FolderExist = False
    If SmartTags("_System\!_RT-Sim_!") Then 'PC-Windows
        Set fso = CreateObject("Scripting.FileSystemObject")
        If fso.FolderExists(Path) Then FolderExist = True
    Else 'WinCE
        Set fso = CreateObject("FileCtl.FileSystem")
        If fso.Dir(Path) <> "" Then FolderExist = True
    End If
    Damit ich meine Panel-Projekte komplett unter Windows XP testen/simulieren kann,
    habe ich im WCCflexible-Projekt eine interne Panel-Variable "_System\!_RT-Sim_!"
    vom Typ Byte, deren Startwert ich auf 0 oder 1 festlege, je nachdem, ob die Runtime
    auf dem Panel oder auf dem WinXP-Testsystem laufen soll:
    0=RT auf WinCE-OP / 1=RT auf PC (Simulation/Test)

    Gruß Harald
    Zitieren Zitieren Skript-Beispiele  

  10. #10
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.192
    Danke
    925
    Erhielt 3.292 Danke für 2.661 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Und hier das Einlesen der oben geschriebenen INI-Datei.
    Beim Runtime-Start wird in einem Start-Skript aufgerufen: SettingsIniLaden 1
    Und an einer "Laden"-Schaltfläche im Settings-Bild: SettingsIniLaden 0

    Real werden in die INI-Datei noch viel mehr Werte geschrieben und wieder rausgelesen.

    Code:
    ' Sub SettingsIniLaden(verbose)
    ' SystemPfade und Einstellungen aus Ini-Datei lesen
    ' Skript kann unter OP-WinCE und PC-Windows laufen
    Const ForReading = 1
    Dim fso, f, inifile
    
    inifile = "\FLASH\Settings.ini"
    If Not FileExist(inifile) Then
        If verbose = 0 Then ShowSystemAlarm "Datei '" & inifile & "' nicht gefunden."
        Exit Sub
    Else 'Settings.ini ist vorhanden
        If SmartTags("_System\!_RT-Sim_!") Then 'PC-Windows
            Set fso = CreateObject("Scripting.FileSystemObject")
            Set f = fso.OpenTextFile(inifile, ForReading, False)
            Do While f.AtEndOfStream = False
                SetSysVar f.ReadLine
            Loop
            f.Close
        Else 'WinCE
            Set f = CreateObject("FileCtl.File")
            f.Open inifile, ForReading
            Do While f.EOF = False
                SetSysVar f.LineInputString
            Loop
            f.Close
        End If
    End If
    Code:
    ' Sub SetSysVar(sline)
    ' zerlegt einen String der Art "varname = stringvalue" und weist dann varname den stringvalue zu
    Dim field, varname, svalue
    
    If sline = "" Then Exit Sub 'wg. Split()
    field = Split(sline, "=")
    If UBound(field) <> 0 Then ' "=" war enthalten, field(0): "varname ", field(1): " string"
        varname = Trim(field(0)) : svalue = Trim(field(1))
        Select Case varname
            Case "path_CF-Card"    SmartTags("_System\path_CF-Card") = svalue
            Case "path_Warte-PC"   SmartTags("_System\path_Warte-PC") = svalue
        End Select
    End If
    Code:
    ' Function FileExist(Path) prüft, ob die angegebene Datei vorhanden ist
    ' Rückgabewert muß True/False sein!
    ' Skript kann unter OP-WinCE und PC-Windows laufen
    ' Path darf unter WinCE wildcards *? enthalten
    Dim fso
    
    FileExist = False
    If SmartTags("_System\!_RT-Sim_!") Then 'PC-Windows
        Set fso = CreateObject("Scripting.FileSystemObject")
        If fso.FileExists(Path) Then FileExist = True
    Else 'WinCE
        Set fso = CreateObject("FileCtl.FileSystem")
        If fso.Dir(Path) <> "" Then FileExist = True
    End If
    Gruß Harald
    Zitieren Zitieren INI-Datei einlesen  

Ähnliche Themen

  1. WinCC Daten archivieren
    Von Sonic.pn im Forum HMI
    Antworten: 4
    Letzter Beitrag: 27.01.2010, 00:26
  2. touch panel
    Von holschin im Forum Suche - Biete
    Antworten: 0
    Letzter Beitrag: 26.12.2009, 10:57
  3. S7 200 Touch panel, PC
    Von mario318i im Forum Simatic
    Antworten: 32
    Letzter Beitrag: 21.04.2008, 21:05
  4. Touch Panel an S7
    Von Andy258 im Forum Simatic
    Antworten: 9
    Letzter Beitrag: 20.02.2007, 17:27
  5. Daten archivieren
    Von andre im Forum Simatic
    Antworten: 7
    Letzter Beitrag: 01.03.2006, 16:39

Lesezeichen

Berechtigungen

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