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 2025 | 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 2025 |
<== Date ==> | <== Thread ==> |
---|
Subject: | Re: Undefined Timestamp on Motor Record |
From: | William Layne via Tech-talk <[email protected]> |
To: | Dominic Oram - UKRI STFC <[email protected]> |
Cc: | [email protected] |
Date: | Thu, 15 Aug 2019 19:54:39 -0400 |
Hello,
I’m in the process of writing a model 3 motor driver using version 6-11 of the motor record.
I have found some unexpected behaviour on initialisation if the driver has no device connected.
It appears the motor stays in the following state unless a parameter is updated at some point after initialisation (I’m not sure when):
caget –a MOTOR
MOTOR <undefined> 0
If I have no device connected I set motorStatusCommsError_ to 1 on the first call to poll(). However, because all subsequent calls to poll() do not change any parameters I stay in the above state. I would instead expect to see something like:
caget –a MOTOR
MOTOR 2019-08-15 15:57:41.931650 0 COMM INVALID
as in the undefined timestamp situation it’s not obvious to users that there is a comm error.
Setting motorStatusCommsError_ to 1 at some time after initialisation does give me the expected state.
Is this actually expected behaviour? Do other people see something similar?
Thanks,
Dominic Oram
Senior Software Engineer
Experimental Controls
ISIS Neutron and Muon Source