full stage tested with ioc. all 5 axis working with EPICS caqtdm ui
This commit is contained in:
@@ -23,4 +23,6 @@ pattern {DESC ,P ,M ,PORT ,ADDR ,DIR,VMAX,VELO,JVEL
|
|||||||
{ "Rotation Y" ,"$(P_M)","MOTOR_ROT_Y1","$(PORT_M)","$(M1)",0 ,2 ,2 ,2 ,1 ,0.1 ,20 ,-0.001,3 ,"deg",0 ,0}
|
{ "Rotation Y" ,"$(P_M)","MOTOR_ROT_Y1","$(PORT_M)","$(M1)",0 ,2 ,2 ,2 ,1 ,0.1 ,20 ,-0.001,3 ,"deg",0 ,0}
|
||||||
{ "Translation X","$(P_M)","MOTOR_X1" ,"$(PORT_M)","$(M2)",0 ,2 ,2 ,2 ,1 ,0.1 ,20 ,-0.001,3 ,"mm",0 ,0}
|
{ "Translation X","$(P_M)","MOTOR_X1" ,"$(PORT_M)","$(M2)",0 ,2 ,2 ,2 ,1 ,0.1 ,20 ,-0.001,3 ,"mm",0 ,0}
|
||||||
{ "Translation Y","$(P_M)","MOTOR_Y1" ,"$(PORT_M)","$(M3)",0 ,2 ,2 ,2 ,1 ,0.1 ,20 ,-0.001,3 ,"mm",0 ,0}
|
{ "Translation Y","$(P_M)","MOTOR_Y1" ,"$(PORT_M)","$(M3)",0 ,2 ,2 ,2 ,1 ,0.1 ,20 ,-0.001,3 ,"mm",0 ,0}
|
||||||
|
{ "TransBase X", "$(P_M)","MOTOR_AX" ,"$(PORT_M)","$(M7)",0 ,2 ,2 ,2 ,1 ,0.1 ,20 ,-0.001,3 ,"mm",0 ,0}
|
||||||
|
{ "TransBase Z", "$(P_M)","MOTOR_AZ" ,"$(PORT_M)","$(M8)",0 ,2 ,2 ,2 ,1 ,0.1 ,20 ,-0.001,3 ,"mm",0 ,0}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -13,11 +13,17 @@ M1=1
|
|||||||
M2=$(M1)+1
|
M2=$(M1)+1
|
||||||
M3=$(M1)+2
|
M3=$(M1)+2
|
||||||
#M4=$(M1)+3
|
#M4=$(M1)+3
|
||||||
|
M7=$(M1)+6
|
||||||
|
M8=$(M1)+7
|
||||||
|
|
||||||
powerPmacCreateAxis($(PORT), $(M1))
|
powerPmacCreateAxis($(PORT), $(M1))
|
||||||
powerPmacCreateAxis($(PORT), $(M2))
|
powerPmacCreateAxis($(PORT), $(M2))
|
||||||
powerPmacCreateAxis($(PORT), $(M3))
|
powerPmacCreateAxis($(PORT), $(M3))
|
||||||
#powerPmacCreateAxis($(PORT), $(M4))
|
#powerPmacCreateAxis($(PORT), $(M4))
|
||||||
|
powerPmacCreateAxis($(PORT), $(M7))
|
||||||
|
powerPmacCreateAxis($(PORT), $(M8))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# Load databse
|
# Load databse
|
||||||
dbLoadTemplate("$(ESB_MX_TEMPLATES)/ESB_MX.subs", "PORT_M=$(PORT),P_M=$(P),M1=$(M1),M2=$(M2),M3=$(M3)")
|
dbLoadTemplate("$(ESB_MX_TEMPLATES)/ESB_MX.subs", "PORT_M=$(PORT),P_M=$(P),M1=$(M1),M2=$(M2),M3=$(M3),M7=$(M7),M8=$(M8)")
|
||||||
|
|||||||
@@ -30,11 +30,11 @@
|
|||||||
//Enc 4: Test Servo: Incremental encoder mounted with motor 1 1 rev = 2000 enc count (500 inc_ quadrature encoder)
|
//Enc 4: Test Servo: Incremental encoder mounted with motor 1 1 rev = 2000 enc count (500 inc_ quadrature encoder)
|
||||||
//Enc 5: Test Servo: Trinamic QBL 4208 hall sensor 1 rev = 24 enc count (hall sensor encoder)
|
//Enc 5: Test Servo: Trinamic QBL 4208 hall sensor 1 rev = 24 enc count (hall sensor encoder)
|
||||||
|
|
||||||
//Mot 6: Test Stepper: Vextra PK244M 200 poles 1 rev = 100*2048 phase_step (2 stepper motor)
|
//Mot 7: Stada Stepper: 670mA 200 poles 1 rev = 100*2048 phase_step (2 stepper motor)
|
||||||
//Enc 6: Test Stepper: inc_enc 1 rev = 1600 enc_step
|
//Enc 7: Renishaw absolute BiSS
|
||||||
|
|
||||||
//Mot 7: Test Stepper: Vextra PK244M 200 poles 1 rev = 100*2048 phase_step (2 stepper motor)
|
//Mot 8: Stada Stepper: 670mA 200 poles 1 rev = 100*2048 phase_step (2 stepper motor)
|
||||||
//Enc 7: Test Stepper: ssi_enc multiturn 1 rev = 4096 enc_step
|
//Enc 8: Renishaw absolute BiSS
|
||||||
|
|
||||||
//$$$***
|
//$$$***
|
||||||
//!common()
|
//!common()
|
||||||
|
|||||||
@@ -77,3 +77,22 @@ Motor[1].pPhaseEnc=Acc84B[0].Chan[0].SerialEncDataA.a
|
|||||||
!encoder_inc(enc=4,tbl=4,mot=4)# ,posSf=13000./650000)
|
!encoder_inc(enc=4,tbl=4,mot=4)# ,posSf=13000./650000)
|
||||||
!encoder_inc(enc=5,tbl=5,mot=5)# ,posSf=13000./650000)
|
!encoder_inc(enc=5,tbl=5,mot=5)# ,posSf=13000./650000)
|
||||||
|
|
||||||
|
//Stada stage
|
||||||
|
//----------------------------------------------------
|
||||||
|
//512000 ustep == 50000 encCnt == 2500um
|
||||||
|
//posSf = userUnits/encoder_steps
|
||||||
|
//servoSf=motor_u_steps/userUnits
|
||||||
|
|
||||||
|
!encoder_biss(enc=7,numBits=32,posSf=1./20)
|
||||||
|
!encoder_biss(enc=8,numBits=32,posSf=1./20)
|
||||||
|
!motor(mot=7,current=200,JogSpeed=0.5,invDir=1,servoSf=204.8)
|
||||||
|
!motor(mot=8,current=200,JogSpeed=0.5,invDir=1,servoSf=204.8)
|
||||||
|
|
||||||
|
//turn off servon and inpos below ... user units (here 1um)
|
||||||
|
Motor[7].InPosBand=1;Motor[7].Servo.BreakPosErr=Motor[7].InPosBand
|
||||||
|
Motor[8].InPosBand=1;Motor[8].Servo.BreakPosErr=Motor[8].InPosBand
|
||||||
|
|
||||||
|
//holding current
|
||||||
|
!holding_current(m7=[0,200],m8=[0,200])
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
63
logbook.md
63
logbook.md
@@ -921,9 +921,70 @@ caput SAR-ESB_MX:ASYN.AOUT 'enable plc 1'
|
|||||||
|
|
||||||
tweak param 13.6.2017
|
tweak param 13.6.2017
|
||||||
---------------------
|
---------------------
|
||||||
|
|
||||||
|
with stada stage 21.7.2017
|
||||||
|
--------------------------
|
||||||
telnet SAR-CPPM-EXPMX1 50001
|
telnet SAR-CPPM-EXPMX1 50001
|
||||||
ctrl-T
|
ctrl-T
|
||||||
ctrl-R
|
ctrl-X
|
||||||
|
|
||||||
|
$$$***
|
||||||
|
!common()
|
||||||
|
!mx-stage()
|
||||||
|
|
||||||
|
#7j:512000
|
||||||
|
511999.9988954368 49999
|
||||||
|
|
||||||
|
Motor8:#8,16p
|
||||||
|
511999.9922968491 49976
|
||||||
|
|
||||||
|
RL32-BAS050C15...
|
||||||
|
512000 ustep == 50000 encCnt == 2.5mm -> 50nm/encCnt
|
||||||
|
|
||||||
|
OpenLoop:
|
||||||
|
!encoder_sim(enc=7)
|
||||||
|
!encoder_sim(enc=8)
|
||||||
|
!encoder_biss(enc=7,tbl=15,mot=15)
|
||||||
|
!encoder_biss(enc=8,tbl=16,mot=16)
|
||||||
|
!motor(mot=7,current=200,JogSpeed=102.4*1,invDir=1,HomeOffset=39263)
|
||||||
|
!motor(mot=8,current=200,JogSpeed=102.4*1,invDir=1)//,HomeOffset=39762)
|
||||||
|
|
||||||
|
!encoder_biss(enc=7,tbl=15,mot=15)
|
||||||
|
!encoder_biss(enc=8,tbl=16,mot=16)
|
||||||
|
!motor(mot=7,current=200,JogSpeed=102.4*1,invDir=1)
|
||||||
|
!motor(mot=8,current=200,JogSpeed=102.4*1,invDir=1)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Status Review 2.8.2017
|
||||||
|
----------------------
|
||||||
|
|
||||||
|
cd ~/Documents/prj/SwissFEL/epics_ioc_modules/ESB_MX;PBInspect --cfg PBinspect.pbi --host SAR-CPPM-EXPMX1
|
||||||
|
cd ~/Documents/prj/SwissFEL/epics_ioc_modules/ESB_MX/cfg/;gpasciiCommander --host SAR-CPPM-EXPMX1 -i
|
||||||
|
$$$***
|
||||||
|
!common()
|
||||||
|
!mx-stage()
|
||||||
|
enable plc 1 //homing
|
||||||
|
|
||||||
|
#1j:1000 //rotate 1 deg
|
||||||
|
#2j:1000 //x-stage parker 1000um
|
||||||
|
#3j:1000 //y-stage parker 1000um
|
||||||
|
#4,5p //position of interferometer (if connected)
|
||||||
|
#7,8j/
|
||||||
|
#7j:1000 //x-stage stada 1000um
|
||||||
|
#8j:1000 //z-stage stada 1000um
|
||||||
|
|
||||||
|
|
||||||
|
telnet SAR-CPPM-EXPMX1 50001
|
||||||
|
ctrl-T
|
||||||
|
ctrl-X
|
||||||
|
|
||||||
|
ssh x06mx-cons-1
|
||||||
|
cd /scratch/ESB_MX/ESB_MX/qt
|
||||||
|
caqtdm -macro 'P=SAR-ESB_MX' ESB_MX_exp.ui
|
||||||
|
Press homing or following line:
|
||||||
|
caput SAR-ESB_MX:ASYN.AOUT 'enable plc 1'
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -47,13 +47,15 @@
|
|||||||
<property name="geometry">
|
<property name="geometry">
|
||||||
<rect>
|
<rect>
|
||||||
<x>20</x>
|
<x>20</x>
|
||||||
<y>80</y>
|
<y>70</y>
|
||||||
<width>725</width>
|
<width>725</width>
|
||||||
<height>72</height>
|
<height>120</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<property name="macro">
|
<property name="macro">
|
||||||
<string>
|
<string>
|
||||||
|
P=$(P),M=MOTOR_AX;
|
||||||
|
P=$(P),M=MOTOR_AZ;
|
||||||
P=$(P),M=MOTOR_ROT_Y1;
|
P=$(P),M=MOTOR_ROT_Y1;
|
||||||
P=$(P),M=MOTOR_X1;
|
P=$(P),M=MOTOR_X1;
|
||||||
P=$(P),M=MOTOR_Y1</string>
|
P=$(P),M=MOTOR_Y1</string>
|
||||||
@@ -62,7 +64,7 @@ P=$(P),M=MOTOR_Y1</string>
|
|||||||
<string notr="true">ESB_MX_motor.ui</string>
|
<string notr="true">ESB_MX_motor.ui</string>
|
||||||
</property>
|
</property>
|
||||||
<property name="numberOfItems" stdset="0">
|
<property name="numberOfItems" stdset="0">
|
||||||
<number>3</number>
|
<number>5</number>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
<widget class="QWidget" name="horizontalLayoutWidget">
|
<widget class="QWidget" name="horizontalLayoutWidget">
|
||||||
@@ -197,8 +199,8 @@ P=$(P),M=MOTOR_Y1</string>
|
|||||||
<widget class="caMessageButton" name="camessagebutton">
|
<widget class="caMessageButton" name="camessagebutton">
|
||||||
<property name="geometry">
|
<property name="geometry">
|
||||||
<rect>
|
<rect>
|
||||||
<x>640</x>
|
<x>620</x>
|
||||||
<y>160</y>
|
<y>20</y>
|
||||||
<width>100</width>
|
<width>100</width>
|
||||||
<height>22</height>
|
<height>22</height>
|
||||||
</rect>
|
</rect>
|
||||||
|
|||||||
Reference in New Issue
Block a user