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  2022  2023  <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  2022  2023  <2024
<== Date ==> <== Thread ==>

Subject: Re: Behavior of the soft motor's DINP field
From: Abdalla Ahmad via Tech-talk <tech-talk at aps.anl.gov>
To: Torsten Bögershausen <Torsten.Bogershausen at ess.eu>, "tech-talk at aps.anl.gov" <Tech-talk at aps.anl.gov>
Date: Sun, 7 Jan 2024 12:16:43 +0000
Hello Torsten

Thanks for your feedback. At first, I was thinking it is some kind of a timing issue since the Galil driver is polling at 125Hz but it does not seem like that, I tried the slowest poll rate of 200ms for Galil and the behavior is still the same. The camonitor is working as the GUI, all fields are updated respectively, for better understanding I attached screenshots for the two scenarios in my previous email, with DINP and without DINP.

I am starting to think there might be something to be done in the soft motor source, your feedback is appreciated.

Thanks,
Abdalla


From: Torsten Bögershausen <Torsten.Bogershausen at ess.eu>
Sent: Thursday, January 4, 2024 6:26 PM
To: Abdalla Ahmad <Abdalla.Ahmad at sesame.org.jo>; tech-talk at aps.anl.gov <Tech-talk at aps.anl.gov>
Subject: Re: Behavior of the soft motor's DINP field
 

Hej Abdalla,

thanks for sharing your experience.

I have been digging into the soft motor business recently,

still working on a patch to allow the forward of motor status

(the .MSTA field) into other records.

 

Back to your problem:
There may be a timing problem of some kind,

between the poller towards the Galil and the soft “motor poller”.

(This is my limited understanding).

However, in order to understand your situation better,

could you run a camonitor/pvmonitor on the following fields:

.VAL

.RBV

.DMOV

for all 4 motors:

The 2 physical motors and the 2 logical ones ?

 

From: Tech-talk <tech-talk-bounces at aps.anl.gov> on behalf of Abdalla Ahmad via Tech-talk <Tech-talk at aps.anl.gov>
Reply to: Abdalla Ahmad <Abdalla.Ahmad at sesame.org.jo>
Date: Thursday, 4 January 2024 at 13:00
To: "tech-talk at aps.anl.gov" <Tech-talk at aps.anl.gov>
Subject: Behavior of the soft motor's DINP field

 

Hi

 

I am trying to implement a simple kinematics system for a standard slit motion, where we have the kinematics equation as:

 

Gap = A + B

Center = (A – B)/2

 

I used the motor record’s soft motor implementation which has an example here. The actual motor controller is Galil DMC based on the Galil EPICS driver, the kinematics is working fine but there might be some kind of a bug in the RBV value of the soft motors. If you were to move any motor whether actual or soft, the transform record starts calculating and updates the soft motor RBV accordingly, but the soft motor stops before reaching the actual calculated position due to the fact that the DINP field receives 1 if both motors are done moving (DMOV = 1). For example it is supposed to reach 5 mm but it reaches to 4.97 for example. The error might not be that much but it gets accumulated in each motion. I tried to investigate more and I found the following:

  • Removing the DINP link value “fixes” the behavior? I am not sure if it is fixed or not but the soft motors reach their corresponding values.
  • I remembered that we are configuring our Galil controllers on a 8 ms update rate. I set the update rate to slower values and the issue can be resolved.
  • I looked into the soft motor record’s source code and I noticed that the DINP value is mapped into 3 values: SOFTMOVE = 0, HARDMOVE = 1 and DONE = 2. I am not sure exactly what those mean, but I tried setting these values to the DINP field but it did not work, it seems there is a certain logic happening inside the record that behaves differently on each value.

 

This issue can problematic because the error in the position can be accumulated with each motion, also I am not sure how the SSCAN module will behave in this case. Any insight is really appreciated.

 

Best Regards,

 

Abdalla Al-Dalleh

Control Engineer

SESAME (Synchrotron-light for Experimental Science and Applications in the Middle East)
P.O. Box 7, Allan 19252, Jordan
Tel: +96253511348 , ext. 265

Fax: +96253511423

abdalla.ahmad at sesame.org.jo

www.sesame.org.jo

 


References:
Behavior of the soft motor's DINP field Abdalla Ahmad via Tech-talk
Re: Behavior of the soft motor's DINP field Torsten Bögershausen via Tech-talk

Navigate by Date:
Prev: Re: Behavior of the soft motor's DINP field Abdalla Ahmad via Tech-talk
Next: Re: Behavior of the soft motor's DINP field Maren Purves 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: RE: Behavior of the soft motor's DINP field Pearson, Matthew via Tech-talk
Next: Job opportunity: Head of Accelerator Control Systems at Diamond Light Source Heron, Mark (DLSLtd,RAL,LSCI) 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
ANJ, 09 Jan 2024 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·