ISISComputingGroup / IBEX

Top level repository for IBEX stories
5 stars 2 forks source link

SANS2D: check motor setup #6919

Closed FreddieAkeroyd closed 2 years ago

FreddieAkeroyd commented 2 years ago

A grep of SANS2D Galil.in shows the following initialisation strings

 Initialisation = "CN ,1"
 Initialisation = "ITA=0.004\0APLA=0.8\0AOFA=0.0"
 Initialisation = "ITB=0.004\0APLB=0.8\0AOFB=0"
 Initialisation = "ITC=0.004\0APLC=0.8\0AOFC=0"
 Initialisation = "ITD=0.004\0APLD=0.8\0AOFD=0"
 Initialisation = "ITE=0.004\0APLE=0.8\0AOFE=0"
 Initialisation = "KSA=16\0AITA=0.004"
 Initialisation = "KSA=16\0AITA=0.004\0A'GAH=D\0A'GRH=2.8804\0A'GRH=0.7201\0A'KSD=16\0A'KSH=16\0A'SH DH"
 Initialisation = "KSB=16\0AITB=0.004"
 Initialisation = "KSC=16\0AITC=0.004"
 Initialisation = "KSD=16\0AITD=0.004"
 Initialisation = "KSE=16\0AITE=0.004"

coinfirm that these are captured and applied correctly by IBEX

KS -> existing stepsmooth PV IT is not currently done, will add as PV

CN ,1 i believe changes the sense of the home switch and driving motors - isis default is CN -1,-1 CN parameters are limittype,hometype

existing PVS LIMITTYPE_CMD = 1 -> 1, 0 -> -1 HOMETYPE_CMD = 1 -> 1, 0 -> -1

This looks for apply to "Sans2d 3 Big Jaws AH-21434" galil

PL not present, will need to be added POLE OF not present, will need to be added, but 0 is default BIAS_VOLTAGE

FreddieAkeroyd commented 2 years ago
[G0]
Name = "Sans2d 1 Aperture Strips"
Axis A Motor Name = "S1"
Axis A Initialisation = "KSA=16\0AITA=0.004"
Axis B Motor Name = "S2"
Axis B Initialisation = "KSB=16\0AITB=0.004"
Axis C Motor Name = "S3"
Axis C Initialisation = "KSC=16\0AITC=0.004"
Axis D Motor Name = "S4"
Axis D Initialisation = "KSD=16\0AITD=0.004"
Axis E Motor Name = "S5"
Axis E Initialisation = "KSE=16\0AITE=0.004"
Axis F Motor Name = "Sample Jaw Down"
Axis F Initialisation = ""
Axis G Motor Name = "Sample Jaw Up"
Axis G Initialisation = ""
Axis H Motor Name = "Sample Jaw Left"
Axis H Initialisation = ""
[G1]
Name = "Sans2d 2 Waveguide Blocks"
Axis A Motor Name = "G1"
Axis A Initialisation = "ITA=0.004\0APLA=0.8\0AOFA=0.0"
Axis B Motor Name = "G2"
Axis B Initialisation = "ITB=0.004\0APLB=0.8\0AOFB=0"
Axis C Motor Name = "G3"
Axis C Initialisation = "ITC=0.004\0APLC=0.8\0AOFC=0"
Axis D Motor Name = "G4"
Axis D Initialisation = "ITD=0.004\0APLD=0.8\0AOFD=0"
Axis E Motor Name = "G5"
Axis E Initialisation = "ITE=0.004\0APLE=0.8\0AOFE=0"
Axis F Motor Name = "Sample Jaw Right"
Axis F Initialisation = ""
Axis G Motor Name = "G1 Monitor"
Axis G Initialisation = ""
Axis H Motor Name = "G3 Monitor"
Axis H Initialisation = ""
[G2]
Name = "Sans2d 3 Big Jaws AH-21434"
Axis A Motor Name = "Jaw Right"
Axis A Initialisation = "CN ,1"
Axis B Motor Name = "Jaw Left"
Axis B Initialisation = "CN ,1"
Axis C Motor Name = "Jaw Up"
Axis C Initialisation = "CN ,1"
Axis D Motor Name = "Jaw Down"
Axis D Initialisation = "CN ,1"
Axis E Motor Name = "Sample Changer X"
Axis E Initialisation = ""
Axis F Motor Name = "Sample Changer Y"
Axis F Initialisation = ""
Axis G Motor Name = "Tilt"
Axis G Initialisation = ""
Axis H Motor Name = "Rotate"
Axis H Initialisation = ""
[G3]
Name = "Sans2d 4 Tank Rear Axes"
Axis A Motor Name = "Rear Det Z"
Axis A Initialisation = "KSA=16\0AITA=0.004"
Axis B Motor Name = "Beam Stop X"
Axis B Initialisation = ""
Axis C Motor Name = "Beam Stop 2 Y"
Axis C Initialisation = ""
Axis D Motor Name = "Rear Strip"
Axis D Initialisation = ""
Axis E Motor Name = "Rear Det X"
Axis E Initialisation = "KSA=16\0AITA=0.004"
Axis F Motor Name = "Beam Stop 1 Y"
Axis F Initialisation = ""
Axis G Motor Name = "Beam Stop 3 Y"
Axis G Initialisation = ""
Axis H Motor Name = "Rear Baffle Z"
Axis H Initialisation = "KSA=16\0AITA=0.004\0A'GAH=D\0A'GRH=2.8804\0A'GRH=0.7201\0A'KSD=16\0A'KSH=16\0A'SH DH"
[G4]
Name = "Sans2d 5 Tank Front Axes"
Axis A Motor Name = "Front Det Z"
Axis A Initialisation = "KSA=16\0AITA=0.004"
Axis B Motor Name = "Front Beam Stop"
Axis B Initialisation = ""
Axis C Motor Name = "Front Baffle Z"
Axis C Initialisation = "KSA=16\0AITA=0.004"
Axis D Motor Name = "Front Strip"
Axis D Initialisation = ""
Axis E Motor Name = "Front Det X"
Axis E Initialisation = ""
Axis F Motor Name = "Front Det Rot"
Axis F Initialisation = ""
Axis G Motor Name = "S6"
Axis G Initialisation = ""
Axis H Motor Name = "Big_Rot"
Axis H Initialisation = ""
[G5]
Name = "Rotating Rack"
Axis A Motor Name = "Rack Rot 1"
Axis A Initialisation = ""
Axis B Motor Name = "Rack Rot 2"
Axis B Initialisation = ""
Axis C Motor Name = "Rack Rot 3"
Axis C Initialisation = ""
Axis D Motor Name = "Rack Rot 4"
Axis D Initialisation = ""
FreddieAkeroyd commented 2 years ago
REM KS -> STEPSMOOTH_SP
REM IT -> ITCSMOOTH_SP
REM PL -> POLE_SP
REM OF -> BIASVOLTAGE_SP

caput %MYPVPREFIX%MOT:MTR0101_STEPSMOOTH_SP 16
caput %MYPVPREFIX%MOT:MTR0101_ITCSMOOTH_SP .004

caput %MYPVPREFIX%MOT:MTR0102_STEPSMOOTH_SP 16
caput %MYPVPREFIX%MOT:MTR0102_ITCSMOOTH_SP .004

caput %MYPVPREFIX%MOT:MTR0103_STEPSMOOTH_SP 16
caput %MYPVPREFIX%MOT:MTR0103_ITCSMOOTH_SP .004

caput %MYPVPREFIX%MOT:MTR0104_STEPSMOOTH_SP 16
caput %MYPVPREFIX%MOT:MTR0104_ITCSMOOTH_SP .004

caput %MYPVPREFIX%MOT:MTR0105_STEPSMOOTH_SP 16
caput %MYPVPREFIX%MOT:MTR0105_ITCSMOOTH_SP .004

REM

caput %MYPVPREFIX%MOT:MTR0201_ITCSMOOTH_SP .004
caput %MYPVPREFIX%MOT:MTR0201_POLE_SP .8
caput %MYPVPREFIX%MOT:MTR0201_BIASVOLTAGE_SP 0

caput %MYPVPREFIX%MOT:MTR0202_ITCSMOOTH_SP .004
caput %MYPVPREFIX%MOT:MTR0202_POLE_SP .8
caput %MYPVPREFIX%MOT:MTR0202_BIASVOLTAGE_SP 0

caput %MYPVPREFIX%MOT:MTR0203_ITCSMOOTH_SP .004
caput %MYPVPREFIX%MOT:MTR0203_POLE_SP .8
caput %MYPVPREFIX%MOT:MTR0203_BIASVOLTAGE_SP 0

caput %MYPVPREFIX%MOT:MTR0204_ITCSMOOTH_SP .004
caput %MYPVPREFIX%MOT:MTR0204_POLE_SP .8
caput %MYPVPREFIX%MOT:MTR0204_BIASVOLTAGE_SP 0

caput %MYPVPREFIX%MOT:MTR0205_ITCSMOOTH_SP .004
caput %MYPVPREFIX%MOT:MTR0205_POLE_SP .8
caput %MYPVPREFIX%MOT:MTR0205_BIASVOLTAGE_SP 0

REM

caput %MYPVPREFIX%MOT:DMC03:HOMETYPE_CMD 1

REM

caput %MYPVPREFIX%MOT:MTR0401_STEPSMOOTH_SP 16
caput %MYPVPREFIX%MOT:MTR0401_ITCSMOOTH_SP .004

REM not sure about this, axis does KSA when it should KSE etc. in SECI

REM caput %MYPVPREFIX%MOT:MTR0405_STEPSMOOTH_SP 16
REM caput %MYPVPREFIX%MOT:MTR0405_ITCSMOOTH_SP .004

REM caput %MYPVPREFIX%MOT:MTR0408_STEPSMOOTH_SP 16
REM caput %MYPVPREFIX%MOT:MTR0408_ITCSMOOTH_SP .004

REM

caput %MYPVPREFIX%MOT:MTR0501_STEPSMOOTH_SP 16
caput %MYPVPREFIX%MOT:MTR0501_ITCSMOOTH_SP .004

REM again not sure about this, axis does KSA when it should KSE etc. in SECI

REM caput %MYPVPREFIX%MOT:MTR0503_STEPSMOOTH_SP 16
REM caput %MYPVPREFIX%MOT:MTR0503_ITCSMOOTH_SP .004
FreddieAkeroyd commented 2 years ago

In the single GALIL version there was

IN:SANS2D:MOT:MTR0401.PREM KSA=16;ITA=0.004;
IN:SANS2D:MOT:MTR0501.PREM KSA=16;ITA=0.004;

this got lost going to GALILMUL, hence it probably didn't work until the values were set in the controller. However better to use the STEPSMOOTH_SP and ITCSMOOTH_SP PVs

FreddieAkeroyd commented 2 years ago

Tested on SASN2D with @RaiBishal