Hello,

I was recently debugging a problem in our code base and tracked the
issue down to differences between calling gettimeofday() from our
non-realtime code and calling clock_gettime() from our realtime
control loop.  A little poking around with Google led me to clocktest
program in the Xenomai testsuite.  We are routinely seeing differences
of around 4 minutes (~240 seconds) between gettimeofday() and
clock_gettime() immediately after a reboot.  The clocks continue to
drift apart (or together) at the rate of about 50us/s.

My question is, is this large of a disparity between clocks normal?
Are there any tricks or techniques for getting the clocks to be
synchronized?  In our application we have a realtime control loop
reading data from motor control boards at a rate of 1KHz.  The data is
timestamped by the realtime loop.  The non-realtime code can doing
more heavyweight computation on that data.  It uses the timestamp to
correlate the data with other data read from non-realtime sensors
(cameras, laser scanners, etc...).  Some of this data may even be
collected on other computers running on the robot (and connected via
gigabit Ethernet).  What do others do to synchronize time between
realtime, non-realtime, and other network attached computers?

A little more about my setup:
  kernel - 2.6.24.3
  xenomai - v2.4.5
  adeos patch - adeos-ipipe-2.6.24-x86-2.0-07.patch
  processor - 2.5 GHz Core 2 Duo

Thanks for any info you can provide...

-R

_______________________________________________
Xenomai-help mailing list
[email protected]
https://mail.gna.org/listinfo/xenomai-help

Reply via email to