EPICS Controls Argonne National Laboratory

Experimental Physics and
Industrial Control System

1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  <20102011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  <20102011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: Manipulating time in records
From: Luedeke Andreas <[email protected]>
To: Di Maio Franck <[email protected]>
Cc: Mahajan Kirti <[email protected]>, Makijarvi Petri <[email protected]>, "[email protected]" <[email protected]>
Date: Fri, 22 Oct 2010 15:28:29 +0200
 Di Maio Franck wrote on 10/21/2010 10:46 AM:
> [...] Clarification: 
> For ITER, we'll have a IEEE 1588-2008 network to provide time accuracy "below 1 micro-second", [...]
> [...] A ns precision for a software interrupt is somehow excessive and microsecond precision would fit [...]
Hi Franck,
interesting: cheap and rather powerful.
I'm pretty sure you are the first one in the EPICS community to use this approach.

Normal timing systems do use a separate interconnection of the IOCs, often a
dedicated fibre network.
A common solution these days is the Event-Generator/-Receiver system from
Micro-Research in Finland.
It provides a synchronization in hardware down to the pico-second range and
allows for software trigger with an accuracy only limited by your operating
system, typically in the microsecond range.
This system is then used as well for clock synchronisation.
Of course nobody needs picosecond resolution in a CW machine.

The only missing component for your system is some software "timer" record.
It will trigger execution of records (and other software) at a given time-stamp
or time stamp pattern.
I think if you use doubles for the time-stamps rather than a vector of seconds
and nanoseconds,
like Dirk suggested, your databases will look simpler:
double arithmetic is easier to understand than vector arithmetic.

How do you generate hardware triggers?
If you create an interrupt and write to a binary output, you would spoil you
clock precision, wouldn't you?


Andreas

References:
Manipulating time in records Di Maio Franck
Re: Manipulating time in records Luedeke Andreas
RE: Manipulating time in records Di Maio Franck

Navigate by Date:
Prev: Client failed to connect to local server on VxWorks and Pharlap lorna . zhang
Next: Re: cross-gcc-2.9.6 problem Dirk Zimoch
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  <20102011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: RE: Manipulating time in records Dalesio, Leo
Next: Epics C# Library - questions Jose Patricio Gonzalez
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  <20102011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 22 Oct 2010 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·