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  2010  2011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  <20222023  2024  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  <20222023  2024 
<== Date ==> <== Thread ==>

Subject: Re: motorRecord with phytron support: record send goto 0 command before reference is done
From: Kevin Peterson via Tech-talk <tech-talk at aps.anl.gov>
To: Bernhard Kuner <Bernhard.Kuner at helmholtz-berlin.de>, tech-talk at aps.anl.gov
Date: Mon, 28 Mar 2022 10:31:29 -0500
Bernhard,

The motor record sets the MIP field to indicate homing is in progress:

https://github.com/epics-modules/motor/blob/R7-1/motorApp/MotorSrc/motorRecord.cc#L1944

postProcess(), which is called after the motor stops, clears the appropriate MIP home bit:

https://github.com/epics-modules/motor/blob/5189abaf68c0449751fdc4d6f50e1c42d000ca2e/motorApp/MotorSrc/motorRecord.cc#L822-L833

The motor record understands the homing to be done when the driver sets the pC_->motorStatusDone_ (and then calls callParamCallbacks()) in phytronAxis::poll():

https://github.com/epics-motor/motorPhytron/blob/9acb974257dc61512017f18f9b823be0495e948d/phytronApp/src/phytronAxisMotor.cpp#L1040

The home/homed bits of the MSTA are helpful when set correctly by the driver, but they are not used by the motor record.

What is the homing type ($(P)$(M)-HOMING_SET) for the motor records for both I1AM01 and I1EM01 motors?

From the communication history, it looks like the motor record's ACCL field is set to 0.205 and the moving poll period is set to 0.5 s. Is this correct?

Kevin


On 3/24/22 05:52, Bernhard Kuner via Tech-talk wrote:
The Question is, how does the motorRecord recognise a finished reference. In the phytronMotor driver there are following status bits processed in the ::poll(*moving) function:

- *moving:  phyMotion command "Mn.m==H" response shows halt or move

- Status bits for limit switches to the according axis controller variables and bit for initialised for motor status home

- INITIALISED -> pC_->motorStatusHomed_

- INITIALISED -> pC_->motorStatusHome_

- setIntegerParam(pC_->axisStatus_, axisStatus);

I suppose INITIALISED is used to flag the record home is done. At last, the whole axisStatus will be set to the axis controller. This controler status is not the motorRecord.MSTA What I found in the sources is that it is there compared to the old status to recognise changes, but not any processing of single bits. Each controler would have its own bits, so it wouldn't make sense to process it in the motorRecord.

Relay strange is, that it works with the other module. There are some other status bits set e.g. the PositioningMode bit, but all these is not used by the phytronMotor support.


Replies:
Re: motorRecord with phytron support: record send goto 0 command before reference is done Bernhard.Kuner via Tech-talk
References:
motorRecord with phytron support: record send goto 0 command before reference is done Bernhard Kuner via Tech-talk

Navigate by Date:
Prev: CA/PVA dissectors for Nozomi Guardian IDS? Ralph Lange via Tech-talk
Next: Re: cross-compiling Base 7.0.6 for win32 Andrew Johnson 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  <20222023  2024 
Navigate by Thread:
Prev: motorRecord with phytron support: record send goto 0 command before reference is done Bernhard Kuner via Tech-talk
Next: Re: motorRecord with phytron support: record send goto 0 command before reference is done Bernhard.Kuner 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  <20222023  2024 
ANJ, 14 Sep 2022 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·