WinCC Diagramm

Helmpflicht

Level-1
Beiträge
49
Reaktionspunkte
1
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo

Mein erster Beitrag :)


Ich habe folgendes Problem, ich habe einen Durchlaufofen mit 5 Temperaturzonen.

Jetzt muss ich auf meinem WinCC 6.2 den Temperaturverlauf in den Zonen als Liniendiagramm darstellen. Also wenn ich von einer Zone zur nächsten einen Temperaturunterschied von 5 Grad hätte, will ich eine ansteigende gerade im Diagramm haben.

Ist sowas mit WinCC möglich?

Ich hoffe es ist verständlich, was ich meine.


MfG, Helmpflicht :)
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich habs nicht verstanden, willst du alles in ein diagramm machen oder 5 Diagramme ??? also mal davon abgesehen das ich nicht so recht weiss wo du hin willst, würde ich eine Feste Skale Temperatur nehmen und alle 5 Temperaturen in ein Diagramm packen. Die Linien wären dann alle paralell übereinander.

Servus.
 
Ich vermute Du willst die Temperaturen nicht zeitlich aufgelöst darstellen sondern die verschiedenen Temperatursensoren örtlich aufgelöst darstellen.
Wenn dem so ist, dann benutze im Graphics Designer und wähle den Poligonzug als graphisches Objekt aus. Die Eckpunkte sind Deine Temperaurmesspunkte und die Koordinaten sind Wert und Ort der Temperaturen. Die Temperaturvariablen bindest Du am besten über ein Script an.
Vielleicht ist dies etwas umständlich, aber vor ein paar Jahren haben wir mal den Temperaurverlauf in Wärmespeichern so dargestellt.
 
Also, ich möchte das so haben:

Der erste Punkt im Diagramm stellt Zone 1 mit beispielsweise 50°C da , der zweite Punkt zeigt die Isttemperatur von Zone 2 mit z.B. 60°C und dann eben noch Zone 3 mit 70°C und so weiter bis Zone 5.

Die einzelnen Punkte sind dann mit ner Linie verbunden und fertig ist das Diagramm.

Geht sowas?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich vermute Du willst die Temperaturen nicht zeitlich aufgelöst darstellen sondern die verschiedenen Temperatursensoren örtlich aufgelöst darstellen.
Wenn dem so ist, dann benutze im Graphics Designer und wähle den Poligonzug als graphisches Objekt aus. Die Eckpunkte sind Deine Temperaurmesspunkte und die Koordinaten sind Wert und Ort der Temperaturen. Die Temperaturvariablen bindest Du am besten über ein Script an.
Vielleicht ist dies etwas umständlich, aber vor ein paar Jahren haben wir mal den Temperaurverlauf in Wärmespeichern so dargestellt.


Danke, das werde ich gleich mal ausprobieren.


//Edit:

Das funktioniert ganz gut, aber leider kenne ich mich mit Scripten nicht so aus und wenn ich den einzelnen Punkten des Poligonzugs eine Variable zuweisen will, kann ich das nur bei einem Punkt machen. Die anderen bleiben auf der "Nulllinie".
 
Zuletzt bearbeitet:
Ich vermute Du willst die Temperaturen nicht zeitlich aufgelöst darstellen sondern die verschiedenen Temperatursensoren örtlich aufgelöst darstellen.
Wenn dem so ist, dann benutze im Graphics Designer und wähle den Poligonzug als graphisches Objekt aus. Die Eckpunkte sind Deine Temperaurmesspunkte und die Koordinaten sind Wert und Ort der Temperaturen. Die Temperaturvariablen bindest Du am besten über ein Script an.
Vielleicht ist dies etwas umständlich, aber vor ein paar Jahren haben wir mal den Temperaurverlauf in Wärmespeichern so dargestellt.

Das funktioniert ganz gut, aber leider kenne ich mich mit Scripten nicht so aus und wenn ich den einzelnen Punkten des Poligonzugs eine Variable zuweisen will, kann ich das nur bei einem Punkt machen. Die anderen bleiben auf der "Nulllinie".

Hier einmal ein Programmbeispiel in VBScript für den Zugriff auf ein Polygonzug als Grafikobjekt im Graphics Designer.

Den 5 Eckpunkten des Polygonzuges werden jeweils eine Konstante als x-Koordinate und eine Variable als y-Koordinate zugewiesen.

Das VBScript ist als Aktion in Global Script projektiert.

Code:
Option Explicit
Function action
 
' Polygonzug
 
' Index-Eigenschaft
'
' Legt die Nummer des Eckpunktes fest oder gibt sie zurück, dessen 
' Positionskoordinaten geändert oder angezeigt werden sollen.
 
' ActualPointLeft-Eigenschaft
'
' Legt die x-Koordinate des aktuellen Eckpunktes in Bezug auf den 
' Bildursprung (links oben) fest oder gibt sie zurück.
 
' ActualPointTop-Eigenschaft
'
' Legt die y-Koordinate des aktuellen Eckpunktes in Bezug auf den 
' Bildursprung (links oben) fest oder gibt sie zurück.
 
 
Dim Polygonzug
 
Dim PointTop
 
 
Set Polygonzug = HMIRuntime.Screens("Bild_1").ScreenItems("Polygonzug")
 
PointTop = 320
 
 
' Eckpunkt 1
 
Polygonzug.Index = 1
 
Polygonzug.ActualPointLeft = 100
 
Polygonzug.ActualPointTop = PointTop - HMIRuntime.Tags("Eckpunkt_1").Read
 
 
' Eckpunkt 2
 
Polygonzug.Index = 2
 
Polygonzug.ActualPointLeft = 200
 
Polygonzug.ActualPointTop = PointTop - HMIRuntime.Tags("Eckpunkt_2").Read
 
 
' Eckpunkt 3
 
Polygonzug.Index = 3
 
Polygonzug.ActualPointLeft = 300
 
Polygonzug.ActualPointTop = PointTop - HMIRuntime.Tags("Eckpunkt_3").Read
 
 
' Eckpunkt 4
 
Polygonzug.Index = 4
 
Polygonzug.ActualPointLeft = 400
 
Polygonzug.ActualPointTop = PointTop - HMIRuntime.Tags("Eckpunkt_4").Read
 
 
' Eckpunkt 5
 
Polygonzug.Index = 5
 
Polygonzug.ActualPointLeft = 500
 
Polygonzug.ActualPointTop = PointTop - HMIRuntime.Tags("Eckpunkt_5").Read
 
 
End Function

Gruß Kai
 

Anhänge

  • WinCC Variablen.jpg
    WinCC Variablen.jpg
    336,8 KB · Aufrufe: 110
  • WinCC Graphics Designer.jpg
    WinCC Graphics Designer.jpg
    546,7 KB · Aufrufe: 122
  • WinCC Runtime.jpg
    WinCC Runtime.jpg
    94,4 KB · Aufrufe: 111
  • VBScript.pdf
    5,5 KB · Aufrufe: 76
Alternativ zu dem VBScript als Aktion bildunabhängig in Global Script kann man das VBScript auch direkt als Aktion am Grafikobjekt Polygonzug im Graphics Designer projektieren.

Den 5 Eckpunkten des Polygonzuges wird hier jeweils eine Variable als y-Koordinate zugewiesen. Die x-Koordinaten der Eckpunkte des Polygonzuges werden nicht verändert. Sie behalten den Wert, den sie bei der Projektierung im Graphics Designer zugewiesen bekommen haben.

Code:
Function Index_Trigger(ByVal Item)
 
' Polygonzug
 
' Index-Eigenschaft
'
' Legt die Nummer des Eckpunktes fest oder gibt sie zurück, dessen 
' Positionskoordinaten geändert oder angezeigt werden sollen.
 
' ActualPointLeft-Eigenschaft
'
' Legt die x-Koordinate des aktuellen Eckpunktes in Bezug auf den 
' Bildursprung (links oben) fest oder gibt sie zurück.
 
' ActualPointTop-Eigenschaft
'
' Legt die y-Koordinate des aktuellen Eckpunktes in Bezug auf den 
' Bildursprung (links oben) fest oder gibt sie zurück.
 
 
' Eckpunkt 1
 
Item.Index = 1
 
Item.ActualPointTop = 320 - HMIRuntime.Tags("Eckpunkt_1").Read
 
 
' Eckpunkt 2
 
Item.Index = 2
 
Item.ActualPointTop = 320 - HMIRuntime.Tags("Eckpunkt_2").Read
 
 
' Eckpunkt 3
 
Item.Index = 3
 
Item.ActualPointTop = 320 - HMIRuntime.Tags("Eckpunkt_3").Read
 
 
' Eckpunkt 4
 
Item.Index = 4
 
Item.ActualPointTop = 320 - HMIRuntime.Tags("Eckpunkt_4").Read
 
 
' Eckpunkt 5
 
Item.Index = 5
 
Item.ActualPointTop = 320 - HMIRuntime.Tags("Eckpunkt_5").Read
 
 
End Function

Gruß Kai
 

Anhänge

  • WinCC Graphics Designer 1.jpg
    WinCC Graphics Designer 1.jpg
    547,9 KB · Aufrufe: 69
  • WinCC Graphics Designer 2.jpg
    WinCC Graphics Designer 2.jpg
    522,9 KB · Aufrufe: 78
  • WinCC Graphics Designer 3.jpg
    WinCC Graphics Designer 3.jpg
    535,3 KB · Aufrufe: 70
  • WinCC Graphics Designer 4.jpg
    WinCC Graphics Designer 4.jpg
    517,4 KB · Aufrufe: 69
  • VBScript.pdf
    4,9 KB · Aufrufe: 60
Zurück
Oben