11-17-2009 06:47 AM
Hi,
I have a position control vi for indexing elements inside array and displaying corresponding time and date. I have large number of control signals inside my block, but I have removed all irrelevant blocks and signal for this discussion. I have replaced all unnecessary controls with constant values, so don't waste time analyzing it.
If you take a look at my vi, you will see Star/Stop control, Position control and a time stamp indicator (Waveform time) with a time/date browse button from another time stamp control. I have all desired functionalities, but I have problem when using browse button for setting up time. I can't set my time two times in a row at same value because I'm comparing "Last entered time stamp" value with current one just entered. I would not like to completely change my blocks because I'm using a lot of property nodes and variables inside my project. I'm just looking for a way to figure out if time/date browse button has been pressed so I could jump to desired point in my recorded waveform.
Solved! Go to Solution.
11-17-2009 07:24 AM
11-17-2009 07:25 AM - edited 11-17-2009 07:29 AM
Hi,
Since I dont have LV8.6, One suggestion would be
Using an event structure, add a value change event to timestamp control and you can get the current value and old value. If older than this values are required you can use a shift register to get it.
Find the attachment of using old value in a event structure
Edit- I must work hard on my typing skills...
11-17-2009 07:43 AM - edited 11-17-2009 07:44 AM
Well, there is a few problems.
Time/date browse button shown on front panel belongs to Last entered time stamp control. Waveform time is a indicator. I have only moved browse button.
I must allow case in which user always jumps to same position (e.g. user can use browse button for rewinding). In this case Last entered time stamp will have constant value during execution. I must be able to make difference between setting time with browse button and setting position with slider. I'm looking for some kind of event like time browse button pressed but unfortunately labview doesn't detect such events.
I have attached lv8.0 version.
11-17-2009 08:06 AM - edited 11-17-2009 08:09 AM
I am not sure if I have understood your problem correctly. Could you eloberate a bit? (There are no event for a browse button click but there are many ways to fullfil your requuirement)
1. You can change your Waveform Time Indicator to a Control and check its browse button visible. Use property node/local variable to update the latest value from Last Time Entered Tmestamp
2. Use shift register for timestamp previous values to make a comparison.
PS- Block diagram doesnot follow left to right flow. wires are routed backwards. Keep the wires right/up/down direction never in the backward (left) direction.
11-17-2009 09:16 AM - edited 11-17-2009 09:23 AM
I can't change Waveform Time Indicator to a Control because that would make other controls much complex (not shown in attached vi)
I have modified my block to the simplest form. I have changed some control names.
There is now only one problem - how can I detect if user has pressed time/date browse button? I'm not interested at this point which value has been entered.
I need to replace User has entered value in Jump to time/date with some kind of Boolean logic or event case.
11-17-2009 10:01 AM