TIA Pumpenzustand anzeigen

Byte0815

Level-2
Beiträge
151
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

Ich versuche mich gerade daran einen Brunnen mit einer Pumpe auf einem 12 Zoll Comfort Panel zu Visualisieren. Zur Zeit lasse ich mir bereits den Füllstand in einer Balkenanzeige anzeigen.
Jetzt wollte ich mir gern die Zustände der Pumpe anzeigen lassen.
Pumpe aus = Grau
Pumpe ein = Grün
Pumpe Störung = Rot (am besten blinkend)

Aktuell bekomme ich es hin das die Pumpe Grau und Grün wird. Jetzt dachte ich daran eine Grafikliste zu erstellen wo :
Bit O Pumpe Grau
Bit 1 Pumpe Grün
Bit 2 Pumpe Rot

Jedoch weiß ich nicht was ich dort genau zuweisen muss

Meine Pumpenlaufmelden ist E0.0
Und Pumpenstörung ist E0.1

Danke im Voraus.
 
Am besten nimmst du eine Integervariable, auf diese Integervariable kannst du nun deine drei Zustände in dem PLC Programm mittels eines Move-Bausteines speichern, indem du deine Bedingungen mit And-Anweisungen unverwechselbar zuweist.

Beispiel: E0.0 & NOT E0.1 -> Move 1 in die Integervariable

Oder

E0.1 -> Move 2 in Integervariable

Oder

NOT E0.1 & NOT E0.0 - > Move 0 in Integervariable

Mit der Integervariable kannst Du nun deine Grafikliste beschalten, oder aber das Objekt direkt animieren, falls dies möglich ist.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Danke erst einmal für die schnelle Antwort.

Ok das habe ich jetzt soweit verstanden ich muss mit meinen Eingängen mittels Move einen Integer Wert erzeugen.

Was ich jetzt aber gerade nicht verstehe habe ich dann nicht wieder 3 Werte ? Nur diesesmal Interger Werte ?

Denn in meinem HMI kann ich ja nur eine Prozessvariable zuweisen



Gesendet von iPhone mit Tapatalk
 
Was ich jetzt aber gerade nicht verstehe habe ich dann nicht wieder 3 Werte ? Nur diesesmal Interger Werte ?
3 Werte in der gleichen Variable, nicht in verschiedenen.
Z.B.:
Code:
// Pumpe aus
#Pumpenstatus := 0;


// Pumpe ein
IF E0.0 THEN
   #Pumpenstatus := 1;
END_IF;

// Pumpe Störung
IF E0.1 THEN
   #Pumpenstatus := 2;
END_IF;
 
Zuviel Werbung?
-> Hier kostenlos registrieren
So aber nur wenn das HMI nicht direkt auf die Variable #Pumpenstatus schaut, sonst flackert die Anzeige unter Umständen, zumindest bei S7-400/1200/1500.
Ich persönlich bin eh' kein Freund davon, dass HMI auf lokale Variablen schauen zu lassen.
:ROFLMAO:
 
Reicht ja auch wenn #Pumpenstatus eine Variable in einer Struct als InOut-Parameter ist.

Eigentlich hast du beim direkten Zugriff auf die Instanzdaten sogar weniger Probleme mit dem parallelen Zugriff als über Parameter und Daten in Global-DBs. Über die Attribute lässt sich ja der HMI-Zugriff auch selektiv einschränken.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
So ich habe das ganze jetzt einmal getestet.
das ganze hat einmal funktioniert. Jetzt macht zwar das Programm was es soll jedoch ändert sich die Farbe der Pumpe im HMI nicht mehr.
Die Pumpe bleibt Grün obwohl sie Rot werden soll
Grafikliste.png
 

Anhänge

  • BAusteine.png
    BAusteine.png
    6,5 KB · Aufrufe: 32
Mein TIA Zeiten sind lange vorbei, aber wenn ich in deiner Visu was von Bitnummer sehe und dein Status ein INt ist kann da was nicht stimmen.
 
3 Werte in der gleichen Variable, nicht in verschiedenen.
Z.B.:
Code:
// Pumpe aus
#Pumpenstatus := 0;


// Pumpe ein
IF E0.0 THEN
   #Pumpenstatus := 1;
END_IF;

// Pumpe Störung
IF E0.1 THEN
   #Pumpenstatus := 2;
END_IF;

So hätte ich es auch gelöst, nur dass es in dem Fall ja sein kann, dass die Pumpe steht und einen Fehler hat. Dann würde das HMI auch verrückt spielen.
Ich würde es dann in etwa so machen.

[FONT=Verdana,Arial,Tahoma,Calibri,Geneva,sans-serif]
Code:
IF E0.1 THEN 
    #Pumpenstatus := 2;
ELSE
     IF E0.0 THEN
         #Pumpenstatus := 1;
     ELSE 
         #Pumpenstatus := 0;
     END_IF;
END_IF;

[/FONT][FONT=Verdana,Arial,Tahoma,Calibri,Geneva,sans-serif]
[/QUOTE]


lg sps31
[/FONT]
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich habe jetzt in der Grafikliste meine Einstellung von Bitnummer (0-31) zu Wert/Bereich geändert jetzt läuft es.

Jetzt habe ich nur noch das Problem das wenn eine Störung auftritt soll die Pumpe rot blinken
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Das geht nicht über die Grafikliste.
Dafür muss die Grafik bereits im HMI positioniert sein.
Wenn du die Grafik nun im HMI auf ihre Position ziehst. -> Linksklick , dann geht unten das Menü auf.
Dann unter Eigenschaften -> Animationen -> Anzeige.

Bei dir sollte dann der Hintergrund aber ebenfalls weiß sein, da du darüber nur die ganze Grafik blinken lassen kannst.
Du müsstest dann so tricksen, dass du die Graue Version drunter legst, die in dem Störfall ebenfalls immer sichtbar ist und dann die Rote version genau drüber legen und Blinken lassen. Das müsste dann den Effekt haben den du haben möchtest.
 
Zurück
Oben