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: | Aerotech Automation1 motor questions |
From: | John Dobbins via Tech-talk <tech-talk at aps.anl.gov> |
To: | "tech-talk at aps.anl.gov" <tech-talk at aps.anl.gov> |
Cc: | "Eric J. Edwards" <ericjedwards at cornell.edu> |
Date: | Thu, 5 Dec 2024 20:53:15 +0000 |
All,
We have a new device which includes a single axis Aerotech Automation1 motor.
I have downloaded and built
(Alma 9, base-7.0.6, motor - current master, Automation1 - master from October )
The IOC starts up but as there is little documentation I don't know what to expect.
Ultimately, we will be controlling this motor from SPEC (from Certified Scientific Software). We will need to
Enable/Disable Motor
Brake On/Off
Home
Put new positions
When the IOC starts up I find it reports a position. I can command a move. Zero position seems to agree with the Automation1 software reported zero position but when I command a move the change in raw isn't what I expect. I should mention - I am told this
set-up combines two encodes to achieve higher resolution. I need to find out more about this.
Note in the motor record: MRES and ERES both = 0. Changing them seemed to have no effect.
RMP always equals REP and change reasonable except for the scale factor.
I see that there exists the record:
record(waveform, "$(P)ExecuteCommand")
{
field(DESC, "Execute an AeroScript command")
field(DTYP, "asynOctetWrite")
field(FTVL, "CHAR")
field(NELM, "256")
field(INP, "@asyn($(PORT),0,$(TIMEOUT=4))AUTOMATION1_C_EXECUTE_COMMAND")
}
Can I, for example send the Aeroscript command "DriveBrakeOff(1)" as a string to that record?
Any help appreciated.
Thanks,
|