<< Click to Display Table of Contents >> Complex color change with scripts |
![]() ![]() ![]() |
If you have to change color depending on several tags you need to use scripts. For example you have 2 tags for every Motor object - State and Speed:
Depending on tag's values for every Motor object use fill color:
State |
Speed |
Color |
0 |
Any |
RED |
1 |
0...500 |
GREEN |
1 |
500...1000 |
YELLOW |
1 |
>1000 |
BLUE |
Let's create Motor graphical object for our example:
Let's open Object properties window by double clicking on it:
And let's create user-defined property - Number and make it's equal 1:
Now we have to create Object type ST script with Execution type - OnDataChange:
Now open Object properties for our Motor object and click Script's collection and add our script:
Now close Collection window and Object properties by clicking OK to confirm our changes. And now we can write our script:
Now we have Motor with setup fill property by script. To copy this Motor and bind fill color property to tags - State2, Speed2 and State3, State3 you no need to setup script for every Motor you only have to duplicate Motor:
And change Number property of the new Motor in the Property sheet:
Click OK to confirm your changes and Run simulation to check your settings:
You can download this project here.