Forgot to CC tech-talk.
-----Original Message-----
From: Mark Rivers
Sent: Tuesday, June 18, 2019 9:05 AM
To: 'Torsten Bögershausen' <[email protected]>; Mark Davis <[email protected]>; Davis, Mark <[email protected]>
Subject: RE: Animatics SmartMotor setup
Hi Mark,
What Torsten says is true for Model 2 and Model 3 motor drivers. However the SmartMotorSrc driver is an old Model 1 driver, so the driver is not derived from asynPortDriver and it only has the single asyn port to the underlying drvAsynIPPort.
The OUT field syntax for Model 1 drivers is:
field(OUT,"#C$(C) S$(S) @")
where $(C) is the card number, and $(S) is the signal number. So for the first axis on the first controller it would be
field(OUT, "#C0 S0 @")
Mark
-----Original Message-----
From: [email protected] <[email protected]> On Behalf Of Torsten Bögershausen via Tech-talk
Sent: Tuesday, June 18, 2019 6:45 AM
To: Mark Davis <[email protected]>; Davis, Mark <[email protected]>; [email protected]
Subject: Re: Animatics SmartMotor setup
Hej Mark,
you need 2 asyn ports, one for the motorRecord to talk to your "Animatics SmartMotor" asynMotorDriver.
The second one to let the "Animatics SmartMotor" asynMotorDriver talk to the real hardware.
We call them "MCU1" and "MC_CPU1", better suggestions are welcome.
A simplified setup is here:
## The db file:
record(motor,"$(PREFIX)$(MOTOR_NAME)")
{
field(DESC,"$(DESC)")
field(DTYP,"asynMotor")
field(OUT,"@asyn($(MOTOR_PORT),$(AXIS_NO))")
}
##st.cmd
epicsEnvSet("ASYN_PORT", "MC_CPU1")
epicsEnvSet("MOTOR_NAME", "IOC:m1")
epicsEnvSet("MOTOR_PORT", "MCU1")
epicsEnvSet("AXIS_NO", "1")
drvAsynIPPortConfigure("$(ASYN_PORT)","$(IPADDR):$(IPPORT)",0,0,0)
EthercatMCCreateController("$(MOTOR_PORT)", "$(ASYN_PORT)", "$(NUMAXES)", "200", "1000")
EthercatMCCreateAxis("$(MOTOR_PORT)", "$(AXIS_NO)",)
I hope that hopes a little bit.
/Torsten
On 18/06/19 13:11, Davis, Mark via Tech-talk wrote:
>
> Can anyone provide an example of how to setup and use an Animatics SmartMotor?
>
> From what I could figure out looking at the code, I expect it is
> something along these lines:
>
> # For a connection via a Moxa Ethernet-to-serial adapter:
> drvAsynIPPortConfigure("TapeStation", "192.168.137.99:4001")
>
> # SmartMotorSetup(maxCtlrCount, pollRate) SmartMotorSetup(1, 5)
>
> # SmartMotorConfig(cardNum, "asynPortName") SmartMotorConfig(0,
> "TapeStation")
>
>
> And then the motor record would look something like this:
>
> record(motor, "MyMotor")
> {
> field(DTYP, "SmartMotor")
> field(OUT, "@0 TapeStation ????")
> ...
> }
>
>
> Is that even close? The one I am most unsure of is what to use for
> the OUT value in the motor record.
>
> Mark Davis
> NSCL/FRIB
>
- References:
- Animatics SmartMotor setup Davis, Mark via Tech-talk
- Re: Animatics SmartMotor setup Torsten Bögershausen via Tech-talk
- Navigate by Date:
- Prev:
Re: PVA Client in python Florian Feldbauer via Tech-talk
- Next:
Re: Animatics SmartMotor setup Torsten Bögershausen 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: Animatics SmartMotor setup Torsten Bögershausen via Tech-talk
- Next:
Re: Animatics SmartMotor setup Torsten Bögershausen 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
|