Displaying Timer Onscreen

Recommended Posts

Hi all,

I have an application that requires timing of a user acitvated event. The event will be triggered from the field and relayed to DF via Modbus comms. The same is true for when the event finishes.

I need for DF to time the event as accurately as possible (ignore comms delays, etc) and to display the elapsed time on screen. This is easy by using systime()-myvar where myvar is set at the start of the event. The problem is trying to display the time on screen with a resolution of .01 s. As the page refresh rate is not as fast, the number doesn't change appropriately, I can get the 0.1 resolution to work OK.

Is there any way to display effectively at this accuracy? I have set up a system where the .01 number is generated randomly and it doesn't look too bad but it would be better to have it directly linked to the timed value.

I'm also concerned that when I add some graphics to the page and further sequences that the timer update will get worse.

Many thanks.

Link to comment
Share on other sites

If you are timing between two events, I'm not sure why you are using systime() in your display. You should instead use two variables, one that is set to systime() at the start, and the other which is set to systime() at the end. Lets say they are call "st" and "et". If you want the screen to display the elapsed time after start, but then the final total time once stepped, you can use iif(). First, when you start do:

st = systime()

et = 0

When you stop, do:

et = systime()

In your onscreen display do:

iif(et == 0,systime() - st, et - st)

this causes it to display elapsed time (systime() - st) if the end time doesn't exist yet, and the total time if it does.

Link to comment
Share on other sites

Thanks Guru,

This is essentially what I am doing apart from not using an inline IF.

The problem still exists that I can't display the timer effectively with 10ths of a second resolution. This is due to the page not refreshing fast enough so the 10ths digit doesn't change continuously like if you were looking at a stopwatch.

Link to comment
Share on other sites


This topic is now archived and is closed to further replies.