LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Alarms on a display

Hello Yaridia,

there are time functions in the time&dialog palette (LV7.1) that give you timestamps.
As Uwe said, make up a cluster with all relevant informations you need (e.g. timestamp, type of error, error level, explanatory text for user etc.).
If you want to have your data grouped on display, you should organize your data first... (Or you can do a massive hard-coding - with problems when reorganizing the display...)

Best regards,
GerdW


using LV2016/2019/2021 on Win10/11+cRIO, TestStand2016/2019
0 Kudos
Message 11 of 24
(1,417 Views)
If you receive new data and append them to an array, they are automatically sorted by time, e.g. newer data is added after existing ones.
If you really need the date_of_reception, use a cluster of (your_datatype,  timestamp, color).
Your code could work like this pseudocode:
Create a while loop and add a shift register. Feed an empty array of the cluster from outside the loop to the left side of the shift register.
While <Stop> not pressed do
  Wait on new data
  retrieve the actual time (Get_Date/Time_in_seconds from the date_&_time palette)
  Bundle those together with a desired color by name into the cluster and append this to the array as gotten it from the inside of the left shift register.
  Wire the updated array into the right inner side of the shift register.
  reverse the array and feed this to an array display
While_End

See the attached example.
HTH   and
Greetings from Germany!
--
Uwe

0 Kudos
Message 12 of 24
(1,417 Views)

Hello Uwe!!!

 

Now I have another problem. Like "array" could I use the "reverse" without problem, but I need to see a text too, I mean, when I see the bit 0 muss I see – for instance – "WECS PASSIVE FAILURE" an so on. But I have no chance to add a text. When I do that, the reverse doesn't work. Have you got a suggestion?

 

Have a nice day and in advance thanks very much!!!

 

Yaridia

0 Kudos
Message 13 of 24
(1,410 Views)
Yaridia,

sounds your English is more problematic than mine - we can switch back if you think 😉

To your Q:
If the string is always the same, than you can use the boolean text, that -in my example- says now 'On' or 'Off', dependng on the boolean value.
If you need to display a whole list of different, but well-defined strings, I'd suggest to add an enum to the cluster. Those enums define a list of predefined names or strings that are handled via a kind of number or index. Think of it as a list of, say student, names. Number 0 is 'smith', number 1 is 'Miller' and so on. Using an enum makes it easier to handle those strings, as there is no chance of a typo.
If an enum does not fit your needs, you may use a simple string instead.
Edit the cluster in such a way, that the boolean text is no longer visibel and put the enum or text on top of all others. make its background transparent as well.

BTW, having such a cluster with several elements, it is always a good idea to make this cluster a type definition. Double-click the cluster to edit it. In the new window, change the selection box that states 'control' to 'Type Def' or, as the optics of this cluster seems to be relevant, to 'Strict Type Def'. Do all the optics, sizing, positioning, coloring etc and save this. Now you can bundle the apropriate string value into each cluster element for newly incoming data...
Greetings from Germany!
--
Uwe

0 Kudos
Message 14 of 24
(1,406 Views)
Lieber Uwe,

Englischesprache ist nicht meine Muttersprache, trotz versuche ich das Beste. So, wenn du möchtest kann ich dir alles aber auf Deutsch fragen. Oder mindestens das versuchen.

Schönen Abend.

Yaridia

0 Kudos
Message 15 of 24
(1,401 Views)
Hello Uwe!!!

Today I did a cluster with the boolean and I saw what I need, the reverse order the bits. But when I try to do a "blinking" it does not work. I send you the VI where I show you what I did. I really improved very much but at the same time I fined a new thing. I tried to do that, that the bits blinking, how? Well from the cluster I can get Property Node than Controls[ ] and I added a Index Array and finaly the "Blinking" property and a boolean constant. But it works only for one bit.  Do you have a better idea?

Greetings and have a great day!!!

Yaridia

0 Kudos
Message 16 of 24
(1,391 Views)
As I already said in an earlier posting, in an array all properties except the value, are equal to all elements. If you try to make one element blinking, all will blink.
Your only chance is to change the color of the colorbox of the apropriate array element between two values, say light-red and dark-red. But this needs a whole lot of extra coding which simply is not worth it. try to use a better set of colors, for example more bright colors for elements that require attention. The differrence in color contrast, however, needs to be quite high. So you really need something like a bright red for attention and some dark-red for normal-red values.
Greetings from Germany!
--
Uwe


0 Kudos
Message 17 of 24
(1,386 Views)

Thanks and I will try to do today.

Have a nice day!!!

Yaridia

0 Kudos
Message 18 of 24
(1,379 Views)
Hello!!!

Until today the application is a little different, I mean, I must to show only the present activ boolean and to do that I am using a "cluster". But the question is if I can hide and show them? You know if that is posible? Have you got any example?

I know, I make a lot questions but practice makes perfect or no?

Best Regards
Yaridia

0 Kudos
Message 19 of 24
(1,365 Views)
* Create a reference (Ref) to that cluster

* Feed Ref into a property node (Application control); choose the property 'visibel'; Make it 'write' and feed a True or False into this in order to show/hide the complete cluster.
* If you want to show just a component of the cluster,  choose the property 'Controls'. This results in an array of all componen
ts of the cluster. Now feed this array into a while loop; right-click onto the border connection and choose Autoindex. From inside the loop, wire the Ref from that to a 2nd property node. Choose the property 'name' and decide if the actual control is the one you are interested in. If so, finish the loop and feed that Ref out of it. Now you can choose this Ref as explained above.

See 'untitled.vi'
Greetings from Germany!
--
Uwe

0 Kudos
Message 20 of 24
(1,359 Views)