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  2010  2011  2012  <20132014  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  2010  2011  2012  <20132014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
<== Date ==> <== Thread ==>

Subject: Re: motor record: soft motor & DMOV
From: "Konrad, Martin" <[email protected]>
To: Ron Sluiter <[email protected]>, "[email protected]" <[email protected]>
Date: Thu, 29 Aug 2013 18:46:24 +0000
Hi Ron,
 > What we are looking for is if you get the diagnostic message,
>> "soft_dinp_func(): HARDMOVE set for %s.\n"
> when the soft motor gets stuck (presumably) in the "Moving" state.
Nope, it definitely can get stuck without this message (see the attached 
log file for details). The log file was obtained by sending the radius 
soft motor to a new position and the angle soft motor to the same 
position it had at IOC start:

$ caput test:tgtPosRad 12.4; caput test:tgtPosAng 246; caput 
test:cmdGo.PROC 1
Old : test:tgtPosRad                 0
New : test:tgtPosRad                 12.4
Old : test:tgtPosAng                 0
New : test:tgtPosAng                 246
Old : test:cmdGo.PROC                0
New : test:cmdGo.PROC                1

> In addition, you may want to do a camonitor on the soft motors MIP field.
$ camonitor test:motor{Rad,Ang}.MIP
test:motorRad.MIP              *** Not connected (PV not found)
test:motorAng.MIP              *** Not connected (PV not found)
test:motorRad.MIP              2013-08-29 14:32:38.095683 0
test:motorAng.MIP              2013-08-29 14:32:38.095665 0
test:motorRad.MIP              2013-08-29 14:32:56.620749 32

Again,

caput test:doneMoving_ 0; caput test:doneMoving_ 1

resets MIP to 0 and DMOV to 1.

Best regards,

Martin

P.S.: I already used my new doneMoving_ logic ("A && B && C") for this 
test (cf. 
https://github.com/mark0n/stripperFoilPlatterTestbed/commit/ac0cabdc5da0800e6fe2cb88e195db2f87dee485).
$ ./st.cmd 
#!../../bin/linux-x86_64-debug/g6test2
## You may have to change g6test2 to something else
## everywhere it appears in this file
< envPaths
epicsEnvSet("ARCH","linux-x86_64-debug")
epicsEnvSet("IOC","iocg6test2")
epicsEnvSet("TOP","/home/marko/work/stripperFoilPlatter/motorTest/iocs/g6test2")
epicsEnvSet("SNCSEQ","/home/marko/work/stripperFoilPlatter/motorTest/seq-2.1.13")
epicsEnvSet("ASYN","/home/marko/work/stripperFoilPlatter/motorTest/asyn4-18")
epicsEnvSet("MOTOR","/home/marko/work/stripperFoilPlatter/motorTest/motorR6-8")
epicsEnvSet("LIBCGAL","/usr/lib")
epicsEnvSet("LIBGMP","/usr/lib/x86_64-linux-gnu")
epicsEnvSet("LIBGMPXX","/usr/lib/x86_64-linux-gnu")
epicsEnvSet("EPICS_BASE","/usr/lib/epics")
cd /home/marko/work/stripperFoilPlatter/motorTest/iocs/g6test2
epicsEnvSet("SIM","#")
epicsEnvSet("HW","")
## Register all support components
dbLoadDatabase "dbd/g6test2.dbd"
g6test2_registerRecordDeviceDriver pdbbase
var drvPC6Kdebug -1
var devSoftdebug 6
## Load record instances
dbLoadRecords("db/g6test2.db", "PREFIX=test")
dbLoadRecords("db/hwMotor.db", "PREFIX=test")
#dbLoadRecords("db/simMotor.db", "PREFIX=test")
# motors at test-bed
drvAsynIPPortConfigure("GT6Krad", "192.168.238.4:5002", 0, 0, 0)
asynOctetConnect("GT6Krad", "GT6Krad")
asynOctetSetInputEos("GT6Krad", 0, ">")
asynOctetSetOutputEos("GT6Krad", 0, "\r")
drvAsynIPPortConfigure("GT6Kang", "192.168.238.5:5002", 0, 0, 0)
asynOctetConnect("GT6Kang", "GT6Kang")
asynOctetSetInputEos("GT6Kang", 0, ">")
asynOctetSetOutputEos("GT6Kang", 0, "\r")
PC6KSetup(2, 60)
PC6KConfig(0, "GT6Krad")
PC6KConfig(1, "GT6Kang")
# simulated motors (start card, start axis, low limit, high limit, home posn, # cards, # axes to setup)
#motorSimCreate(0, 0, -1000000, 1000000, 0, 1, 2)
# Setup the Asyn layer (portname, low-level driver drvet name, card, number of axes on card)
#drvAsynMotorConfigure("sim1", "motorSim", 0, 2)
var insideLimitsASubDebug 0
var coordinateTransformASubDebug 0
cd /home/marko/work/stripperFoilPlatter/motorTest/iocs/g6test2/iocBoot/iocg6test2
iocInit
Starting iocInit
############################################################################
## EPICS R3.14.12.3-6 $Date: Mon 2012-12-17 14:11:47 -0600$
## EPICS Base built May 22 2013
############################################################################
update(): dmov=1 for test:motorAng.
update(): DMOV=1 for test:motorAng.
update(): dmov=1 for test:motorRad.
update(): DMOV=1 for test:motorRad.
iocRun: All initialization complete
#${HW}PC6KUpLoad(0,"../../minimalControllerInit.prg")
#${HW}PC6KUpLoad(1,"../../minimalControllerInit.prg")
## Start any sequence programs
#seq sncxxx,"user=markoHost"
seq sncCalibration, "PREFIX=test"
Sequencer release 2.1.13, compiled Thu Aug 29 11:51:21 2013
Spawning sequencer program "sncCalibration", thread 0x100a5a0: "sncCalibration"
soft_rdbl_func(): updated RMP = 12500 for test:motorRad.
update(): dmov=0 for test:motorRad.
update(): DMOV=1 for test:motorRad.
soft_rdbl_func(): updated RMP = 246000 for test:motorAng.
update(): dmov=0 for test:motorAng.
update(): DMOV=1 for test:motorAng.
sncCalibration[0]: all channels connected & received 1st monitor
entering state uncalibrated
soft_dinp_func(): Done moving set for test:motorAng.
update(): dmov=1 for test:motorAng.
update(): DMOV=1 for test:motorAng.
soft_dinp_func(): Done moving set for test:motorRad.
update(): dmov=1 for test:motorRad.
update(): DMOV=1 for test:motorRad.
epics> update(): dmov=0 for test:motorAng.
update(): DMOV=1 for test:motorAng.
update(): dmov=0 for test:motorRad.
update(): DMOV=1 for test:motorRad.

epics> dbpr test:motorRad 4
ACCL: 0.2           ACKS: NO_ALARM      ACKT: YES           ADEL: 0             
ALST: 0             ASG:                ASP: (nil)          ATHM: 0             
BACC: 0.5           BDST: 0             BKPT: 00            BVEL: 0             
CARD: -1            CBAK: 0x10029d0     CDIR: 0             CNEN: Disable       
DCOF: 0             DESC:               DHLM: 0             
DIFF: -0.10000633110869                 DINP:DB_LINK test:doneMoving_ NPP NMS   
DIR: Pos            DISA: 0             DISP: 0             DISS: NO_ALARM      
DISV: 1             DLLM: 0             DLY: 0              DMOV: 0             
DOL:CONSTANT        DPVT: 0x1000520     DRBV: 12.5000063311087                  
DSET: 0x7ff163c13128                    DTYP: Soft Channel  DVAL: 12.4          
EGU: in             ERES: 1.0e-03       EVNT: 0             FLNK:CONSTANT 0     
FOF: 0              FOFF: Variable      FRAC: 1             HHSV: NO_ALARM      
HIGH: 0             HIHI: 0             HLM: 0              HLS: 0              
HLSV: NO_ALARM      HOMF: 0             HOMR: 0             HOPR: 0             
HSV: NO_ALARM       HVEL: 0             ICOF: 0             INIT:               
JAR: 0              JOGF: 0             JOGR: 0             JVEL: 0             
LCNT: 0             LDVL: 12.4          LLM: 0              LLS: 0              
LLSV: NO_ALARM      LOCK: YES           LOLO: 0             LOPR: 0             
LOW: 0              LRLV: 0             LRVL: 12400         LSET: 0x1000ef0     
LSPG: Go            LSV: NO_ALARM       LVAL: 12.4          LVIO: 0             
MDEL: 0             MIP: 32             MISS: 0             
MLIS: 00 25 03 3c f1 7f 00 00 60 1a 03 3c f1 7f 00 00 04 00 00 00               
MLOK: 40 ba ff 00 00 00 00 00           MLST: 0             MMAP: 0             
MOVN: 0             MRES: 1.0e-03       MSTA: 2             NAME: test:motorRad 
NMAP: 0             NSEV: NO_ALARM      NSTA: NO_ALARM      NTM: NO             
NTMF: 2             OFF: 0              OMSL: supervisory   
OUT:DB_LINK test:fwdRad_ PP NMS         PACT: 0             PCOF: 0             
PHAS: 0             PINI: NO            POST:               PP: 0               
PPN: (nil)          PPNR: (nil)         PREC: 2             PREM:               
PRIO: LOW           PROC: 0             PUTF: 0             
RBV: 12.5000063311087                   RCNT: 0             RDBD: 0.01          
RDBL:DB_LINK test:rdPosPolar_.VALA NPP MS                   RDES: 0xfbcdc0      
RDIF: -100          REP: 0              RHLS: 0             RINP:CONSTANT       
RLLS: 0             RLNK:CONSTANT       RLV: 0              RMOD: Default       
RMP: 12500          RPRO: 0             RRBV: 12500         RRES: 1             
RSET: 0x7ff1637ff380                    RTRY: 0             RVAL: 12400         
RVEL: 0             S: 0                SBAK: 0             SBAS: 0             
SCAN: Passive       SDIS:CONSTANT       SET: Use            SEVR: NO_ALARM      
SMAX: 0             SPMG: Go            SPVT: (nil)         SREV: 200           
SSET: 0             STAT: NO_ALARM      
STOO:DB_LINK test:stopPistonMotors_.PROC NPP NMS            STOP: 0             
STUP: OFF           SUSE: 0             SYNC: 0             TDIR: 0             
TIME: 2013-08-29 14:32:56.620748812     TPRO: 0             TSE: 0              
TSEL:CONSTANT       TWF: 0              TWR: 0              TWV: 0.1            
UDF: 0              UEIP: No            UREV: 0.2           URIP: Yes           
VAL: 12.4           VBAS: 0             VELO: 0             VERS: 6.8           
VMAX: 0             VOF: 0              
epics>

References:
motor record: soft motor & DMOV Konrad, Martin
RE: motor record: soft motor & DMOV Mooney, Tim M.
Re: motor record: soft motor & DMOV Konrad, Martin

Navigate by Date:
Prev: RE: Build problem of EPICS R3.14.12.3 for ARM processor in Linux Emmanuel Mayssat
Next: Re: Build problem of EPICS R3.14.12.3 for ARM processor in Linux Andrew Johnson
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  <20132014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
Navigate by Thread:
Prev: Re: motor record: soft motor & DMOV Konrad, Martin
Next: Re: motor record: soft motor & DMOV Konrad, Martin
Index: 1994  1995  1996  1997  1998  1999  2000  2001  2002  2003  2004  2005  2006  2007  2008  2009  2010  2011  2012  <20132014  2015  2016  2017  2018  2019  2020  2021  2022  2023  2024 
ANJ, 20 Apr 2015 Valid HTML 4.01! · Home · News · About · Base · Modules · Extensions · Distributions · Download ·
· Search · EPICS V4 · IRMIS · Talk · Bugs · Documents · Links · Licensing ·