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  <20102011  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  <20102011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: MDrive - a novice in trouble
From: Ron Sluiter <[email protected]>
To: James Rezende Piton <[email protected]>
Cc: "[email protected]" <[email protected]>
Date: Fri, 12 Nov 2010 14:16:08 -0600
Hello James,

The error message "card does not exist" is most likely
an indication of a communication failure.

I presume you have read the README file describing
how to configure the MDrive for the EPICS motor record
support.  If not, the file is located with the motor distribution
here,
<motor>/motorApp/ImsSrc/README

Note that the EPICS MDrive driver assumes the MDrive
is configured for "party mode communication".

You should also have the following lines in your st.cmd file,
as shown in the <motor>/iocBoot/WithAsyn/st.cmd.Vx file.

MDriveSetup(1, 10)
MDriveConfig(0, "a-Serial[0]")

If you have configured the MDrive correctly and are still getting the "card does not exits" message, then the easiest way to diagnose a communication problem is, in general, to use an asyn record,

dbLoadRecords("$(ASYN)/db/asynRecord.db","P=<IOCname>:,R=Record,PORT=<serial port name>,ADDR=0,OMAX=0,IMAX=0")

Connect the asyn record to the MDrive's serial port, then send it a message; e.g., "1 PR VR". You should get a response showing you the MDrive firmware version.

Hope this helps,
Ron


On 11/12/2010 1:14 PM, James Rezende Piton wrote:
Hello, Mark

Thank you very much for the reply. I really appreciate your help.

As you told me, I moved back to the basic_asyn_motor.db and the proper C,S values
for OUT. So the "syntax" error disappeared. dbDumpRecord shows now
the substitution for OUT:

(...)
grecord(motor,"IOC:m2") {
        field(DESC,"motor 2")
        field(DTYP,"MDrive")
        field(VELO,"1")
(...)
        field(OUT,"#C0 S1 @")
(...)
        field(HVEL,"0.1")
}

But I still have the same result:

Illegal field value PV: IOC:m1 motor_init_record_com(): card does not exist!

I checked:

epics> asynReport
L0 multiDevice:No canBlock:Yes autoConnect:Yes
Serial line /dev/ttyUSB0: Connected
L1 multiDevice:No canBlock:Yes autoConnect:Yes
Serial line /dev/ttyS0: Connected

I also dealt with Eos and asynOctetSetOutputEos and
asynOctetSetInputEos, just in case.

With asyn-4-13 testGpibSerial I can communicate and send commands
through the PV. For instance, I can get the parameter list produced
by the controller, showing it's ok.

As a novice, I played around a lot. I printed the variables card, brdcnt and
brdptr->exists with that message about motor_init_record_com()
(in motorApp/MotorSrc/motordevCom.cc). I added a second serial port (and
its needed MDriveConfig) to see the corresponding change in the
number of boards:

Illegal field value PV: IOC:m1 motor_init_record_com(): card does not exist! card =0 of 2 cards, existing= 0 (NO=0)

The problem is due to brdptr->exists, that is obviously false. But what should I
do to have the "card" 0 available?

Have a nice weekend!
James




References:
MDrive - a novice in trouble James Rezende Piton
RE: MDrive - a novice in trouble Mark Rivers
Re: MDrive - a novice in trouble James Rezende Piton

Navigate by Date:
Prev: Re: MDrive - a novice in trouble James Rezende Piton
Next: Re: Patch to subArray record Andrew Johnson
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  <20102011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: MDrive - a novice in trouble James Rezende Piton
Next: RE: MDrive - a novice in trouble Mark Rivers
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  <20102011  2012  2013  2014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 12 Nov 2010 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·