checking coordinate transform
This commit is contained in:
@@ -73,11 +73,11 @@ open forward
|
||||
|
||||
|
||||
//X=D^-1*S
|
||||
X=+.5*S1 -.5*S2 +(r+.5)*S3 +(r-.5)*S4 +(.5-r)*$sqrt2*S5
|
||||
Y=+.5*S1 +.5*S2 +.25*S3 +.25*S4 +.25*$sqrt2*S5
|
||||
U= -.5*S3 -.5*S4 +.5*$sqrt2*S5
|
||||
V=-.5*S1 +1.*S2 +1.5*S3 -.5*S4 -.5*$sqrt2*S5
|
||||
W=-.5*S1 -1.*S2 +.5*S3 +.5*S4 +.5*$sqrt2*S5
|
||||
X=+.5*S1 -.5*S2 +(r+.25)*S3 +(r-.75)*S4 +(.25-r)*$sqrt2*S5
|
||||
Y=+.5*S1 +.5*S2 +.25*S3 +.25*S4 +.25*$sqrt2*S5
|
||||
U= +1.*S3 +1.*S4 -1.*$sqrt2*S5
|
||||
V=-1.*S1 +1.*S2 +1.5*S3 -.5*S4 -.5*$sqrt2*S5
|
||||
W=-1.*S1 -1.*S2 +.5*S3 +.5*S4 +.5*$sqrt2*S5
|
||||
|
||||
send 1"fwd_res %f %f %f %f %f\\n",X,Y,U,V,W
|
||||
|
||||
@@ -97,11 +97,11 @@ open inverse
|
||||
|
||||
r=$height/$width
|
||||
|
||||
S1=+.5*X +.5*Y +(0) *U -.5*V +.5*W
|
||||
S2=-.5*X +.5*Y +(0) *U +.5*V +.5*W
|
||||
S3=+.5*X +.5*Y -(.5) *U +.5*V -.5*W
|
||||
S4=-.5*X +.5*Y -(.5) *U -.5*V -.5*W
|
||||
S5= .5*$sqrt2*Y +.5*$sqrt2*U -.5*$sqrt2*W
|
||||
S1=+.5*X +.5*Y +(.25-.5*r)*U -.25*V -.25*W
|
||||
S2=-.5*X +.5*Y +(.5*r-.25)*U +.25*V -.25*W
|
||||
S3=+.5*X +.5*Y +(.25-.5*r)*U +.25*V +.25*W
|
||||
S4=-.5*X +.5*Y +(.25+.5*r)*U -.25*V +.25*W
|
||||
S5= .5*$sqrt2*Y -.25*$sqrt2*U +.25*$sqrt2*W
|
||||
|
||||
scl=$sqrt2/$exc
|
||||
AA1=asin(S1*scl)/$camSf
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
|
||||
!MX3_setup()
|
||||
//!MX3_setup_sim() // comment out !MX3_setup() when this is active
|
||||
X3_setup()
|
||||
!MX3_setup_sim() // comment out !MX3_setup() when this is active
|
||||
//!MX3_home()
|
||||
//using 360000 for 1 rev. -> 1.7453292519943296e-05=np.pi/180000
|
||||
//excentricity= 5mm
|
||||
@@ -17,16 +17,16 @@ Coord[1].Tm=-10000 //1000um/FeedTime -> 1mm/sec
|
||||
Coord[1].FeedTime=1000 //default value 1000um
|
||||
|
||||
|
||||
Motor[1].InPosBand=10
|
||||
Motor[2].InPosBand=10
|
||||
Motor[3].InPosBand=10
|
||||
Motor[4].InPosBand=10
|
||||
Motor[5].InPosBand=10
|
||||
|
||||
//motor current off (as cpxcall 16)
|
||||
Motor[1].IdCmd=0;Motor[1].InPosBand=10
|
||||
Motor[2].IdCmd=0;Motor[2].InPosBand=10
|
||||
Motor[3].IdCmd=0;Motor[3].InPosBand=10
|
||||
Motor[4].IdCmd=0;Motor[4].InPosBand=10
|
||||
Motor[5].IdCmd=0;Motor[5].InPosBand=10
|
||||
|
||||
#1..5hmz
|
||||
#1..5j/
|
||||
&1
|
||||
cpx call 16 //lock brakes, motor current off
|
||||
|
||||
|
||||
|
||||
|
||||
26
cfg/stream.cfg
Normal file
26
cfg/stream.cfg
Normal file
@@ -0,0 +1,26 @@
|
||||
# Author : zamofing_t
|
||||
|
||||
#Terminator = CR;
|
||||
#ExtraInput = Ignore;
|
||||
WaitDelay = 40;
|
||||
WriteTimeout = 500;
|
||||
ReplyTimeout = 4000;
|
||||
#ReadTimeout = 500;
|
||||
|
||||
# ---------------- debug DEBUG debug DEBUG----------- #
|
||||
|
||||
debug {
|
||||
out "%s";wait $WaitDelay; in "%#s"
|
||||
}
|
||||
|
||||
#same as debug but without readback
|
||||
debug0 {
|
||||
out "%s";
|
||||
}
|
||||
# end
|
||||
|
||||
moveXYUVW {
|
||||
out "cpx abs linear;call 15; X(%(\$1X.VAL)f)Y(%(\$1Y.VAL)f)U(%(\$1U.VAL)f)V(%(\$1V.VAL)f)W(%(\$1W.VAL)f);call 16";
|
||||
wait $WaitDelay;
|
||||
in "%#s"
|
||||
}
|
||||
Reference in New Issue
Block a user