Hi Martin,
I'm not too sure, but you might be trying to use non-asyn motor device support with an asyn based driver.
drvAsynMotorConfigure configures the Asyn motorSim driver. So the motor record needs to specify DTYP as asynMotor.
Did you copy&paste the whole motor record? It needs more fields configured. For example, are you missing the PORT and ADDR fields in the motor record?
Also, as an aside...
In the latest version of motor there is a newer (asynPortDriver based) version of the simulation driver. To use that the database would stay the same but in the startup script you would have something like:
motorSimController("portname", num_axes, 0, 0)
motorSimAxis("portname", 1, some_more_params…)
motorSimAxis("portname", 2, some_more_params…)
motorSimAxis("portname", 3, some_more_params…)
etc.
where portname needs to be the same as PORT in the motor record. And the second argument to motorSimAxis is the ADDR field.
Cheers,
Matt
On Jun 25, 2013, at 3:01 PM, "Konrad, Martin" <[email protected]> wrote:
> Hi,
> I'm trying to simulate a motor with motorSimSupport but my IOC crashes
> as soon as the record is processed (e.g. by issuing caput test:motor1
> 42). Motor support for my Parker hardware motor works fine. Here is what
> I have:
>
> g6test2App/Db/Makefile:
> g6test2_DBD += asyn.dbd
> g6test2_DBD += drvAsynIPPort.dbd
> g6test2_LIBS += asyn
>
> g6test2_DBD += motorSupport.dbd
> g6test2_DBD += devPC6K.dbd
> g6test2_DBD += motorSoftMotor.dbd
> g6test2_DBD += motorRecord.dbd
> g6test2_DBD += motorSimSupport.dbd
>
> g6test2_LIBS += Parker
> g6test2_LIBS += softMotor
> g6test2_LIBS += motorSimSupport
> g6test2_LIBS += motor
>
>
> Here is the record:
> record(motor, test:motorRad) {
> field(DTYP, "Motor Simulation")
> field(OUT, "test:posRad PP MS")
> }
>
> In st.cmd I have:
> motorSimCreate( 0, 0, -32000, 32000, 0, 1, 1 )
> drvAsynMotorConfigure("motorSim1", "motorSim", 0, 1)
>
> Here is a backtrace:
> Program received signal SIGSEGV, Segmentation fault.
> [Switching to Thread 0x7ffff11a7700 (LWP 7118)]
> 0x00007ffff75593c9 in ?? () from /usr/lib/libmotorSimSupport.so.20130320
> (gdb) bt
> #0 0x00007ffff75593c9 in ?? () from /usr/lib/libmotorSimSupport.so.20130320
> #1 0x00007ffff73413bb in ?? () from /usr/lib/libmotor.so.20130320
> #2 0x00007ffff4b9663b in dbProcess () from /usr/lib/libdbIoc.so.3.14.12.3
> #3 0x00007ffff4b97372 in dbPutField () from /usr/lib/libdbIoc.so.3.14.12.3
> #4 0x00007ffff4ba80a3 in db_put_field () from
> /usr/lib/libdbIoc.so.3.14.12.3
> #5 0x00007ffff4fd40b5 in ?? () from /usr/lib/librsrvIoc.so.3.14.12.3
> #6 0x00007ffff4fd280f in camessage () from /usr/lib/librsrvIoc.so.3.14.12.3
> #7 0x00007ffff4fcf5cb in camsgtask () from /usr/lib/librsrvIoc.so.3.14.12.3
> #8 0x00007ffff60176c7 in ?? () from /usr/lib/libCom.so.3.14.12.3
> #9 0x00007ffff51e0f8e in start_thread () from
> /lib/x86_64-linux-gnu/libpthread.so.0
> #10 0x00007ffff54efe1d in clone () from /lib/x86_64-linux-gnu/libc.so.6
>
> Any ideas?
>
> Martin
>
- Replies:
- Re: motorSimSupport segfaults Martin Konrad
- References:
- motorSimSupport segfaults Konrad, Martin
- Navigate by Date:
- Prev:
motorSimSupport segfaults Konrad, Martin
- Next:
Record Processing Zenon Szalata
- 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:
motorSimSupport segfaults Konrad, Martin
- Next:
Re: motorSimSupport segfaults Martin Konrad
- 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
|