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

Ergebnis 1 bis 4 von 4

Thema: Alarm Logging / TimeStamp in Millisekunden anzeigen

  1. #1
    Registriert seit
    09.01.2006
    Beiträge
    8
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo zusammen!

    Ich möchte mir unter WinCC6.0 SP3a gerne die Millisekunden der Timestamps anzeigen lassen. Genauso wie es mit dem Table und AlarmControl ja auch funktioniert. Für diese Aktion würde ich VB preferieren. Ich habe Testweise ein externes VB Programm geschrieben um mich generell mit der Zeit Problematik zu beschäftigen. Beim Zugriff mit diesem kleinen Programm auf den OPC Server bin ich ohne grosse Probleme in der Lage die enthaltenen Millisekunden im Timestamp einer Variablen zu extrahieren. Innerhalb eines VB Scripts in der Runtime bekomme ich nur Millisekundenwerte von 999 und 000. Beim Vergleich der erhaltenen Double-werte aus dem Timestamp durch das Externe Programm und durch die VB Aktion, sieht man sehr gut, dass der Timestamp während der Runtime dahingehend verändert wird, dass die Millisekunden weggerundet werden. Wie kann ich WinCC dieses Verhalten austreiben?
    Geändert von DAU-JONES (05.03.2006 um 13:33 Uhr)
    Zitieren Zitieren Alarm Logging / TimeStamp in Millisekunden anzeigen  

  2. #2
    DAU-JONES ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    09.01.2006
    Beiträge
    8
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hmm keiner eine Idee?

    Zumindest Irgendein Feedback wäre nett Ohne hängt man irgendwie in der Luft und plagt sich mit Fragen wie: "War die Frage zu dumm, zu unverständlich oder schlicht zu simpel um darauf zu antworten?"

    regards

    Hier mal der VB Code meiner Action gebunden an Ausgabe/Änderung:

    Code:
    Sub OutputValue_OnPropertyChanged(ByVal Item, ByVal value)           
    Dim Zeit
    Dim Daypart
    Dim Millisec
    Dim objTag
    Dim objStaticText
    Set objTag = HMIRuntime.Tags("MyTag")
    objTag.Read()
    Zeit =  objTag.timestamp
    
    Set objStaticText = ScreenItems("StatischerText1")
    Daypart = "0," & Mid(CDbl(zeit),7)
    Millisec = CLng(86400000 * daypart)
    Millisec = Mid(Millisec,Len(Millisec)-2)
    objStaticText.Text = zeit & "." & Millisec
    End Sub

  3. #3
    Registriert seit
    15.11.2005
    Beiträge
    89
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hallo DAU-Jones !

    Zumindest Irgendein Feedback wäre nett Ohne hängt man irgendwie in der Luft und plagt sich mit Fragen wie: "War die Frage zu dumm, zu unverständlich oder schlicht zu simpel um darauf zu antworten?"
    Weder noch: hab schlicht und ergreifend einfach keine Ahnung

    So, nun ist ein Feedback vorhanden. Nicht böse sein, aber vielleicht meldet
    sich ja noch jemand der Dir weiterhilft.

    Schönen Tag, nairolf
    _________________________________________
    Solls funktionieren, oder darfs auch Siemens sein?

  4. #4
    DAU-JONES ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    09.01.2006
    Beiträge
    8
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hier eine kleiner Zwischenbericht für Interessierte,

    Nachdem ich mit der Hotline von Siemens bzgl. des Millisekundenproblems Kontakt aufgenommen habe gibt es folgendes zu konstatieren.

    VBS
    Timestamps sind abrufbar, aber nur mit einer Sekundengenauigkeit

    C-Script
    Keine Möglichkeit TimeStamps vom OPC zu bekommen(O-Ton ODK Hotline)

    Lösung

    Nach eingehenden Versuchen mit VB bin ich zu der Überzeugung gelangt, dass es doch möglich ist. Der Weg ist allerdings recht steinig. Ich habe mein kleines VB Programm zu einer ActiveX.dll umgeschrieben. Innerhalb dieser DLL verweise ich auf die opcdaauto.dll bzw sopcdaauto.dll. Durch diese gekapselten DLL's bin ich in der Lage mit dem OPC aus einen VBS Script zu kommunizieren. Dies funktioniert, da ich meine eigene DLL innerhalb von VBS via CreateObjekt referenzieren kann. Die opcdaauto.dll und die siemensche Entsprechung sind nämlich nicht referenzierbar. Erste Versuche ergeben eine funktionierende Kommunikation. Bisher habe ich es leider noch nicht geschafft einen Timestamp zu erhalten, was wahrscheinlich daran liegt, dass ich die Verbindung nach dem Ereignis OPCGROUP_Datachange wieder trenne. Mitunter geht das ein wenig zu schnell. Wie auch immer, sollte ich die endgültige Lösung haben lasse ich es Euch wissen.
    Bigamie ist der Versuch ein problem zu lösen, indem man es verdoppelt.

Ähnliche Themen

  1. WinCC Alarm Logging
    Von jackjones im Forum HMI
    Antworten: 5
    Letzter Beitrag: 27.08.2009, 14:49
  2. Alarm Logging WinCC V7.0
    Von franzlurch im Forum HMI
    Antworten: 0
    Letzter Beitrag: 17.09.2008, 07:47
  3. Alarm Logging
    Von tarzipan7 im Forum HMI
    Antworten: 4
    Letzter Beitrag: 07.12.2007, 16:56
  4. WinCC Alarm Logging
    Von 1schilcher im Forum HMI
    Antworten: 1
    Letzter Beitrag: 16.01.2006, 12:45
  5. WinCC Alarm Logging
    Von 1schilcher im Forum HMI
    Antworten: 0
    Letzter Beitrag: 04.01.2006, 00:28

Lesezeichen

Berechtigungen

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