Twincat 3 PLC HMI Symbol Farbe ändern

Boderbaer

Level-1
Beiträge
73
Reaktionspunkte
1
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen,

iwi stehe ich auf dem Schlauch bzw. finde die Option nicht.
Wenn ich in TC3 in der Visu ein Symbol einfüge, z.B. den Arrow Bold Down, ist dieser immer grau.
Verwende ihn als OneMouseClick um eine Variable zu Schalten.

Die Variablen Schaltung funktioniert einwandfrei, nur möchte ich gerne die Standard Farbe des Pfeils ändern sowie
wenn die Variable "toggelt" (also der Button gedrückt ist) ihm eine Andere Farbe geben (z.B. grün).

Geht das?
Grund ist, das ich Pfeile benötige (nach oben und unten) und diese Farblich dargestellt werden müssen, wenn diese gedrückt sind.
Leider gibt es ja in TC3 nicht die Möglichkeit irgendwelche "Visualisierungs Pakete" zu installieren oder hinzuzufügen.

Hoffe das ihr mir helfen könnt.

Danke schon mal im Voraus.

PS: Aktuellste Twincat 3 Version installiert.

Grüße
 
Hallo,

keiner ne Idee?
Benötige eigentlich "nur" Pfeile wo als Buttons fungieren und farblich je nach Variable dargestellt werden können... :)

Grüße
 
Ich würde (z.B. mit Inkscape) verschiedene Farbversionen des Bildes erstellen, und dann über einen ImagePool und dynamische Bildumschaltung einbinden.

Oder alternativ nicht die Farbe des Pfeils ändern, sondern die Füllfarbe des Buttons (also Hintergrund).


(Das originale SVG-Bild aus der Bibliothek zu extrahieren bleibt dem geneigten Leser als leichte Übung überlassen)
 
Zuletzt bearbeitet:
Grüßt euch.
Danke für die Antworten. Das mit den Bildern einblenden / überblenden hatte ich mir auch schon gedacht.
Erinnert mich iwi an Factory Talk oder PanelBuilder32 :)

Hoffe das hier irgendwann mal Updates gibt, das man Bibliotheken mit Visu Elementen downloaden und einbinden kann...
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Boderbaer,

das habe ich auch mal gemacht. Bei jedem Symbol hast du die Möglichkeit, eine Farbvariable für eine Farbdarstellung zu verwenden. Deine Farbvariable ist ein DWORD Datentyp.

Du solltest hierzu nur aufpassen, dass das 1.Byte ein tranparenter Wert ist. Die andere Bytes sind der Wert für Farben Rot Grün und Blau.

VG
 
Hay,

sry.. hab das heute erstmals ausprobieren können.

Hab nun bei (Expert Häkchen drin):

-> Color variables -> Toggle color => Mein Schalteingang (BOOL) deklariert als E1
Bei Color und Alarm Color hab ich mal: 16#FF8080 eingetragen.

Das schalten hab ich über
-> Inputconfiguration -> OnMouseClick -> Toggle a Variable: Mein Eingang E1

Das Toggeln des Eingangs per Mausklick funktioniert einwandfrei. Leider schaltet aber die Farbe nicht um auf 16#FF8080 (Bluelight).

Was mache ich falsch?
Kapier es nicht....


Danke schon mal auf eure Hilfe.

PS: Eddi, könntest nicht doch das Programm mir zukommen lassen? Benötige es nicht für die Arbeit, sondern für das Private Programm zu Hause :ROFLMAO:

Grüße
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

wie letztes Mal geschrieben habe, musst Du einen DWORD mit 4 Bytes bei dem Feld von Color und Alarm Color geben.

Der Wert für Color und Alarm Color muss unterschiedlich sein, sonst siehst Du keinen Unterschied der Farbe bei Toggle.

D.h. 16#FFFF8080, der erste Byte FF ist Transparent-Wert.

Probiert mal, es muss funktionieren.
 
Zuletzt bearbeitet:
HMI2.jpg


Hoy PhuongTran1983,
hab das nun mal ausprobiert, aber bin echt zu blöde um das zu schnallen.
Nach dem 16# hatte ich auch mal FF stehen (anstatt 00 ) sowie andere Werte, da es ja der Transparentwert ist.

Aber es tut sich einfach nichts. Auch wenn ich ne WebVisu daraus mache und mit dem Browser das HMI Teste, ändert sich an der Farbe nichts.

Wo liegt der Fehler?

PS: Die Schalter daneben sind nur Symbolisch, um zu kontrollieren ob der "OneClick" auch funktioniert.
Die Lampe "A1" geht an und es sollte eigentlich auch sich die Farbe vom Pfeil ändern... tut sich aber nicht :-(

Danke dir.
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Hay,

einem Beitrag davor hab ich ein Bild angehängt, wie ich es eingestellt habe.
Worin liegt der Fehler? Mit diesem Code 16#FF8080 und einem anderem beim Alarm hab ich auch schon getestet, aber keinen
Erfolg erhalten :-(
 
Hallo Boderbaer,
die Lösung in Kurzform hat StructuredTrash schon in #3 gegeben,
Zeichne den Pfeil als Polygon, dann kannst Du auch die Farbe ändern.
hier mal die Langform. Um auf Deine Frage aus #10 zu antworten, der Fehler liegt liegt darin, dass Du die Farbe von dem Teil eines Elements ändern möchtest der sich nicht ändern lässt, oder präziser, die Farbvariable ist für etwas anderes da. Über die Farbvariable kannst Du die Farbe des Rahmens bei diesen Symbolen ändern, dieser ist jedoch standardmäßig deaktiviert. Die Farbe des Objektes/Inhalts kannst Du bei einigen Objekten aus Basic und beim Button ändern, sonst wüsste ich nicht, dass dies bei weiteren Objekten geht.
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
OK, danke. Hatte gedacht, dass es doch iwi einfach möglich sein müsste.
Wie bekomme ich bei dem Polygon mehr Points?
Hab insgesamt 5 Points, bräuchte aber mehr um den Pfeil zu schließen.

Danke nochmals.
Grüße
 
Zuviel Werbung?
-> Hier kostenlos registrieren
komplexe Polygonzüge mache ich manchmal auch über "Dynamic Points", da kann man einfach im Programm ein ARRAY OF VisuElems.VisuStructPoint anlegen, und übergibt dann ADR(array) und die Anzahl der Punkte als Variable (oder Konstante). Das finde ich unter bestimmten Umständen übersichtlicher. Ob das Performanceprobleme bereitet, kann ich nicht sagen.
 
Zuletzt bearbeitet:
Zurück
Oben