g+
g+ Communities
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  <20112012  2013  2014  Index 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  <20112012  2013  2014 
<== Date ==> <== Thread ==>

Subject: RE: Adding readback zeroing to an asyn analog input
From: Angus Gratton <angus.gratton@anu.edu.au>
To: Mark Rivers <rivers@cars.uchicago.edu>
Cc: tech-talk <tech-talk@aps.anl.gov>
Date: Tue, 04 Jan 2011 11:50:13 +1100
On Sun, 2010-10-31 at 20:56 -0500, Mark Rivers wrote:
> Hi Angus,
>  
> Yes, the motor record will do it.  
>  
> But you can also do it pretty easily with your existing driver.  
>  
> - You make a bo record zeroing the position.  It does 2 things:
>  
> 1) Sends a messsage to your driver through the standard asynInt32 device support for bo.  Your driver flips the register bit, which sets the hardware position registers to 0.
>  
> 2) Forward links to soft ao record that writes 0 to your ao position record.  That write will not actually move the motor, because the hardware registers are already 0.
>  

Hi Mark & others,

I've had a second feature request for this stepper motor. The previous
request (where I used Mark's suggestion) was to support zeroing the set
& current positions. The new request is to support setting the position
by jogging.

So far I have not written a motor record driver, because this stepper
controller is so simple. Adding jog support just entailed writing a
'jog_by' soft record and having the 'ao' set_pos record read from it
with OIF=Incremental.

This works fine, but it breaks the nice simple "write zero to record"
trick that I had before. As best as I can tell, there's no way to
override the VAL value of an ao when it is set to Incremental.

To help explain, here's what I have in VisualDCT: http://imgur.com/cDmol
(note that lots of niceties like alarm levels and limits are not yet
set.) I'm setting OVAL to zero in the screenshot, but have also tried
VAL & RVAL to the same effect (which is, no effect at all.)

I was all set to move to Motor Record soft support, but I see that in
soft support mode the Motor Record doesn't support JOG_BY either.

Should I give up now and write a proper motor record driver for my
simple stepper controller? Or, is there some trick that will allow me to
zero the position, and allow jogging of the set value?

Thanks very much for any & all advice,

Angus


Replies:
RE: Adding readback zeroing to an asyn analog input Mark Rivers

Navigate by Date:
Prev: RE: CSS Meter display and Progress Bar Chen, Xihui
Next: where are the vxworks os library files 王林
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  <20112012  2013  2014 
Navigate by Thread:
Prev: RE: CSS Meter display and Progress Bar Chen, Xihui
Next: RE: Adding readback zeroing to an asyn analog input Mark Rivers
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  <20112012  2013  2014 
ANJ, 18 Nov 2013 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· EPICSv4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·