Mark,
Setting RTRY = 0 makes it behave normally.
John
________________________________________
From: Mark Rivers [[email protected]]
Sent: Monday, June 27, 2011 6:58 PM
To: John Dobbins
Cc: [email protected]
Subject: RE: Newport XPS and Motor record
Hi John,
Yes, you are reading that correctly.
The first time the command is sent it times out waiting for a response.
That timeout is normal, because the XPS does not send a response on that
socket until the move completes, and the driver does not wait for that,
it uses a short timeout.
The second time it sends the command it gets a -1 error response. This
error translates as:
Error -1 : Busy socket : previous command not yet finished
The third time it sends the command it get a -22 error response, which
translates as:
Error -22 : Not allowed action
Something is not right!
Here is what I see on my XPS IOC when I turn on the same asynTrace:
ioc13bmd> 2011/06/27 17:48:24.701 164.54.160.83:5001 TCP write 44
GroupMoveAbsolute (GROUP1.POSITIONER,2.1269)
2011/06/27 17:48:24.801 SendAndReceive, sent: 'GroupMoveAbsolute
(GROUP1.POSITIONER,2.1269)'
2011/06/27 17:48:24.801 SendAndReceive, timeout on read
I only see a single GroupMoveAbsolute command sent, not 3.
Do you have a non-zero number of retries (.RTRY) set on the motor? I
wonder if those could be retry attempts, though that does not make
sense, since a retry should not happen until the move completes.
Can you send the output of
dbpr "mymotor",10
Mark
-----Original Message-----
From: John Dobbins [mailto:[email protected]]
Sent: Monday, June 27, 2011 3:40 PM
To: Mark Rivers
Cc: [email protected]
Subject: Re: Newport XPS and Motor record
Mark,
Thanks for the specific suggestions.
The asyTrace output seems to show the move command is sent three times!?
Am I reading this right?
John
epics> 2011/06/27 16:26:49.689 erpxps01:5001 TCP write 52
GroupMoveAbsolute (GROUP2.POSITIONER,11.20009791225)
2011/06/27 16:26:49.790 SendAndReceive, sent: 'GroupMoveAbsolute
(GROUP2.POSITIONER,11.20009791225)'
2011/06/27 16:26:49.790 SendAndReceive, timeout on read
2011/06/27 16:26:49.791 erpxps01:5001 TCP write 52
GroupMoveAbsolute (GROUP2.POSITIONER,11.20009791225)
2011/06/27 16:26:49.791 erpxps01:5001 TCP read 64
-1,GroupMoveAbsolute (GROUP2.POSITIONER,11.20009791225),EndOfAPI
2011/06/27 16:26:49.791 SendAndReceive, sent: 'GroupMoveAbsolute
(GROUP2.POSITIONER,11.20009791225)'
2011/06/27 16:26:49.791 SendAndReceive, read: '-1,GroupMoveAbsolute
(GROUP2.POSITIONER,11.20009791225),EndOfAPI'
2011/06/27 16:26:49.791 erpxps01:5001 TCP write 52
GroupMoveAbsolute (GROUP2.POSITIONER,11.20009791225)
2011/06/27 16:26:49.792 erpxps01:5001 TCP read 65
-22,GroupMoveAbsolute (GROUP2.POSITIONER,11.20009791225),EndOfAPI
2011/06/27 16:26:49.792 SendAndReceive, sent: 'GroupMoveAbsolute
(GROUP2.POSITIONER,11.20009791225)'
2011/06/27 16:26:49.792 SendAndReceive, read: '-22,GroupMoveAbsolute
(GROUP2.POSITIONER,11.20009791225),EndOfAPI'
2011/06/27 16:26:49.792 SendAndReceive unexpected response
=-22,GroupMoveAbsolute (GROUP2.POSITIONER,11.20009791225),EndOfAPI
On 6/27/2011 2:50 PM, Mark Rivers wrote:
> Hi John,
>
>> If I look in the XPS web interface I don't see any errors reported
>> there. Should I expect to see them there?
>
> No, you would not see them there. You can use the terminal interface
in
> the Web page to translate error numbers into messages, but you won't
see
> messages as errors occur.
>
> If the motor is moving normally, but is reporting that error, then I
> wonder if perhaps it is being told to move a second time while it is
> already moving, for example?
>
> You can do
>
> asynReport
>
> to see the names of all of the asyn IP port drivers connected to this
> XPS. There will be several. One is used for status on all axes, and
> there is 1 per axis for issuing "move" commands. You can enable trace
> debugging on these ports with
>
> asynSetTraceIOMask "port",0,2
> asynSetTraceMask "port",0,9
>
> That sets asynTraceIOEscape (to see ASCII messages with escape
> sequences) and asynTraceIODriver, to see messages from the asyn IP
> driver.
>
> With that level of debugging you should be able to see what commands
are
> being sent to the XPS, and which ones are working, and which are
> resulting in the error you see.
>
> Send the output of "dbpr myMotor 10" (which will print all the motor
> record fields) and the contents of the stage definition file for those
> motors, so we can compare maximum velocity, acceleration, limits, etc.
>
> Mark
>
>
> -----Original Message-----
> From: [email protected]
> [mailto:[email protected]] On Behalf Of John Dobbins
> Sent: Monday, June 27, 2011 1:29 PM
> To: [email protected]
> Subject: Re: Newport XPS and Motor record
>
> All,
>
> Thanks for the various replies.
>
> If I look in the XPS web interface I don't see any errors reported
> there. Should I expect to see them there?
>
> The stages actually move normally. And report statuses that would be
> expected, "Ready from Homing", "Reading from Moving", ...
>
> Also I have two different stage types connected and both types produce
> this error.
>
> The XPS configuration was generated by the XPS using that option as
> available in the web interface. Limits, velocities, ... appear to be
set
>
> correctly. So I can't tell what the XPS is complaining about.
>
>
> John
>
> On 6/27/2011 11:57 AM, John Hammonds wrote:
>> I once had a problem that the configured velocity (in the motor
> record)
>> was not allowed by the XPS. It returned the same error code. This
> was
>> a manually configured motor. We had to play around a bit to get the
>> XPS configuration correct.
>>
>> John
>>
>> On 6/27/2011 10:52 AM, Pete Jemian wrote:
>>>
>>> John:
>>>
>>> What is your configuration in the XPS controller?
>>> Can that have some influence?
>>>
>>> Pete
>>>
>>> On 06/27/2011 09:51 AM, [email protected] wrote:
>>>> Hi,
>>>>
>>>> It could also be that the XPS axis is in the wrong 'state'. I think
>>>> it needs to be in 'ready state' (states 10 to 13) to receive move
>>>> commands.
>>>>
>>>> I updated the XPS driver recently. So in the next release of the
>>>> motor support module the driver should indicate if there is a
> problem
>>>> (via the motor record MSTA field). So if the axis is in a state
> which
>>>> means you can't move it then you will be notified by the record
> going
>>>> into alarm state.
>>>>
>>>> Cheers,
>>>> Matthew
>>>>
>>>>
>>>>
>>>>> -----Original Message-----
>>>>> From: [email protected] [mailto:tech-talk-
>>>>> [email protected]] On Behalf Of Mark Rivers
>>>>> Sent: 27 June 2011 15:17
>>>>> To: John Dobbins; EPICS Tech-Talk
>>>>> Subject: RE: Newport XPS and Motor record
>>>>>
>>>>> Hi John,
>>>>>
>>>>> If you translate that error code, -22, using ErrorStringGet in the
> XPS
>>>>> Web terminal interface you will get:
>>>>>
>>>>> 0,Error -22 : Not allowed action
>>>>>
>>>>> So there is something illegal about the request you are making.
Is
> it
>>>>> possible that you are exceeding a soft limit, etc.?
>>>>>
>>>>> Mark
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> -----Original Message-----
>>>>> From: [email protected]
>>>>> [mailto:[email protected]] On Behalf Of John Dobbins
>>>>> Sent: Monday, June 27, 2011 8:38 AM
>>>>> To: EPICS Tech-Talk
>>>>> Subject: Newport XPS and Motor record
>>>>>
>>>>> All,
>>>>>
>>>>> I am using Motor Record R6-4-4 , EPICS R3.14.9, ASYN 4-9 with a
> Newport
>>>>> XPS controller.
>>>>>
>>>>> When I send a new position to an actuator I get a messages in the
> IOC
>>>>> like this:
>>>>>
>>>>> epics> 2011/06/24 12:35:35.552 SendAndReceive unexpected
response
>>>>> =-22,GroupMoveAbsolute (GROUP2.POSITIONER,12.00003072008),EndOfAPI
>>>>>
>>>>> otherwise everything seems to be working, i.e. motor responds
> properly.
>>>>>
>>>>> Does someone know what this means? The XPS set-up portion of my
> st.cmd
>>>>> script is below.
>>>>>
>>>>> Regards and Thanks,
>>>>>
>>>>> John Dobbins
>>>>>
>>>>> Cornell University
>>>>>
>>>>>
>>>>> The XPS set-up portion of my st.cmd script:
>>>>>
>>>>>
>>>>> # cards (total controllers)
>>>>> XPSSetup(1)
>>>>>
>>>>> # card, IP, PORT, number of axes, active poll period (ms), idle
> poll
>>>>> period (ms)
>>>>> XPSConfig(0, "erpxps01", 5001, 3, 10, 500)
>>>>> # asyn port, driver name, controller index, max. axes)
>>>>> drvAsynMotorConfigure("XPS1", "motorXPS", 0, 3)
>>>>>
>>>>> # card, axis, groupName.positionerName, stepsPerUserUnit
>>>>> # PR50CC rotational stage
>>>>> XPSConfigAxis(0,0,"GROUP1.POSITIONER",100)
>>>>> # CMA-12CCCL linear stage
>>>>> XPSConfigAxis(0,1,"GROUP2.POSITIONER",20480)
>>>>> # CMA-12CCCL linear stage
>>>>> XPSConfigAxis(0,2,"GROUP3.POSITIONER",20480)
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>
>>
- References:
- Newport XPS and Motor record John Dobbins
- RE: Newport XPS and Motor record Mark Rivers
- RE: Newport XPS and Motor record matthew.pearson
- Re: Newport XPS and Motor record Pete Jemian
- Re: Newport XPS and Motor record John Hammonds
- Re: Newport XPS and Motor record John Dobbins
- RE: Newport XPS and Motor record Mark Rivers
- Re: Newport XPS and Motor record John Dobbins
- RE: Newport XPS and Motor record Mark Rivers
- Navigate by Date:
- Prev:
Re: Newport XPS and Motor record John Dobbins
- Next:
RE: Newport XPS and Motor record Mark Rivers
- 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: Newport XPS and Motor record John Dobbins
- Next:
Record Alarm/ AsynPortDriver Rime Ateia
- 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
|