On 12/10/20 2:18 PM, Manoussakis, Adamandios via Tech-talk wrote:
> Hey Everyone,
>
>
>
> Looking for some clarification on how EPICs timestamps work in general, with the archiver, and also what is the proper way to handle timestamps with hardware devices (eg digitizers). My understanding of the timestamp is for example a waveform record will get a time associated with it (depending on if its from ioc boot or ntp) when it is processed. But that may not be in sync with the digitizer itself own timestamp of when its capture a waveform. If I then have the archiver monitoring that PV and the waveform is processed the timestamp shown in the archiver would be the timestamp that the record grabs at processing (which should be when say a value changed in the waveform triggering the processing of that record).
>
>
>
> Is this correct way of thinking of the timestamping of the data for epics records?
What you describe, taking CPU time when processed, is the default.
However, it is not the only possibility. When supported by a driver,
the TSE field may be set to "-2" to allow the driver to provide a
timestamp. Further, as a special case, the TSEL field may be pointed
at the TIME field of another record to copy timestamps between records.
eg.
> record(ai, "$(P)A") {
> field(DTYP, "My Driver")
> field(INP , "...")
> field(TSE , "-2") # "My Driver" support must assign TIME
> field(FLNK, "$(P)B")
> }
> field(ai, "$(P)B") {
> field(INP , "$(P)A") # copy value
> field(TSEL, "$(P)A.TIME") # copy time
> }
> If so what is the best way to go about syncing multiple waveform records to make sure your data is synced, seems like your records might get processed not exactly at the same time?
>
>
>
> Would it be best to create an X PV waveform record that stores the timestamps of the digitizer itself to line up with your Y PV waveform record?
Digitizers I've dealt with haven't needed a timebase (X axis) scale which changed
between updates. Usually I the only variables are sampling rate, and number of
samples.
> Associated CS Studio question, if I pass my waveform record to a XY plot is the only way to plot against my time to create an X PV waveform and pass that as well to XY Plot, currently I only see a way to give it a min/max value for the x scale and have it plot the Y data per point.
>
>
>
> Thanks
>
- Replies:
- RE: Timestamping Confusion Manoussakis, Adamandios via Tech-talk
- References:
- Timestamping Confusion Manoussakis, Adamandios via Tech-talk
- Navigate by Date:
- Prev:
Re: pvput to channelName of NTMultiChannel is having colon parsed Michael Davidsaver via Tech-talk
- Next:
Re: Interpreting pvget -d Michael Davidsaver via Tech-talk
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
<2020>
2021
2022
2023
2024
- Navigate by Thread:
- Prev:
Timestamping Confusion Manoussakis, Adamandios via Tech-talk
- Next:
RE: Timestamping Confusion Manoussakis, Adamandios via Tech-talk
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
<2020>
2021
2022
2023
2024
|