hexagon logo

A little prog to create an "autocalibration" of a rotary

I wrote this prog to calibrate the rotary, without using the rotary calibration window, so it can be used as an "autocalibration".
It uses 2 spheres, the "sph_rotary_disable" is fixed on the rotary, but sphere fixed on a rotary" isn't selected.
The origin of thermal compensation is fixed at the previous location of the rotary, IGNOREROTAB is ON.
Temp comp is setted on axes only.
By this way, the thermal expansion of the granit has a very few effect on the rotary center.

IGNOREROTAB/ON
            LOADPROBE/LSPX1_L50_D5
            TIP/T1A0B0, SHANKIJK=0, 0, 1, ANGLE=0
            ASSIGN/V7=GETROTABDATA("center")
            TEMPCOMP/ORIGIN=V7.X,V7.Y,V7.Z,CTE=0.0000115,Reference Temp=20
              ,Hi Threshold=40,Lo Threshold=10
              ,PART SENSOR NUM=9
              ,X AXIS TEMP=20.3561,Y AXIS TEMP=20.7799,Z AXIS TEMP=20.4879,PART TEMP=20.7451
            MOVE/ROTAB,0,SHORTEST,
            AUTOCALIBRATE/PROBE, PARAMETER_SET=A0B0, QUALTOOL_MOVED=NO,
                          SHOW_SUMMARY=NO, OVERWRITE_RESULTSFILE=NO
            AUTOCALIBRATE/PROBE, PARAMETER_SET=A0B0_sph_rotary_disable, QUALTOOL_MOVED=YES_DCC,
                          SHOW_SUMMARY=NO, OVERWRITE_RESULTSFILE=NO
            ASSIGN/V1=QUALTOOLDATA("xyz","sph_rotary_disable")-V7
C1         =COMMENT/INPUT,NO,FULL SCREEN=NO,
            Enter the number of positions
            ASSIGN/V8=360/(C1.INPUT)
REF1       =ALIGNMENT/START,RECALL:STARTUP,LIST=YES
              ALIGNMENT/TRANS_OFFSET,XAXIS,V7.X
              ALIGNMENT/TRANS_OFFSET,YAXIS,V7.Y
              ALIGNMENT/TRANS_OFFSET,ZAXIS,V7.Z
            ALIGNMENT/END
            MODE/DCC
            MOVE/POINT,NORMAL,<V1.X,V1.Y,V1.Z+200>
            CLEARP/ZPLUS,200,ZPLUS,0,ON
            ASSIGN/V3=SQRT(DOT(V1.XYZ,V1.XYZ))
            ASSIGN/ANG_R=RAD2DEG(ATAN(V1.Y/V1.X))
            IF/V1.X<0
              ASSIGN/ANG_R=180+ANG_R
            END_IF/
            ASSIGN/V6=0
            MOVE/ROTAB,0,SHORTEST,
V2         =LOOP/START,ID=YES,NUMBER=C1.INPUT,START=1,SKIP=,
              OFFSET:XAXIS=0,YAXIS=0,ZAXIS=0,ANGLE=0
              MOVE/CLEARPLANE
              ASSIGN/V4=COS(DEG2RAD(ANG_R))
              ASSIGN/V5=SIN(DEG2RAD(ANG_R))
SPH1         =FEAT/CONTACT/SPHERE/DEFAULT,CARTESIAN,OUT,LEAST_SQR
              THEO/<V3*V4,V3*V5,V1.Z>,<0,0,1>,20.0001
              ACTL/<-169.2387,43.7966,0.0122>,<0,0,1>,20.0002
              TARG/<V3*V4,V3*V5,V1.Z>,<0,0,1>
              START ANGLE 1=0,END ANG 1=360
              START ANGLE 2=0,END ANG 2=90
              ANGLE VEC=<1,0,0>
              SHOW FEATURE PARAMETERS=NO
              SHOW CONTACT PARAMETERS=NO
              ASSIGN/ANG_R=ANG_R+V8
              ASSIGN/V6=V6+V8
              MOVE/CLEARPLANE
              MOVE/ROTAB,V6,SHORTEST,
            LOOP/END
SCN1       =FEAT/SET,CARTESIAN
            THEO/<0,0,0.0047>,<0,0,1>
            ACTL/<0.0015,-0.0083,0.0028>,<0,0,1>
            CONSTR/SET,BASIC,SPH1[1..C1.INPUT],,
PL1        =FEAT/PLANE,CARTESIAN,TRIANGLE,NO
            THEO/<0,0,0.0047>,<0,0,1>
            ACTL/<0.0015,-0.0083,0.0028>,<0.0000261,-0.0000881,1>
            CONSTR/PLANE,BF,SCN1,,
            OUTLIER_REMOVAL/OFF,3
            FILTER/OFF,WAVELENGTH=0
CE1        =FEAT/CIRCLE,CARTESIAN,OUT,LEAST_SQR,NO
            THEO/<0,0,0.0047>,<0,0,1>,349.6367
            ACTL/<0.0018,-0.0085,0.0028>,<0.0000261,-0.0000881,1>,349.6343
            CONSTR/CIRCLE,BF,3D,SCN1,,
            OUTLIER_REMOVAL/OFF,3
            FILTER/OFF,UPR=0
            CALIBRATEROTAB/PLANE=PL1, CIRCLE=CE1,
            MEAS/XYZ=<490.0105,1690.0224,-797.695>, MEAS/IJK=<0.0000261,-0.0000881,1>



If you wonder why it's necessary to often calibrate the rotary, just imagine that the center "moves" after each homing, or after each time when you answer "Yes, the sphere moved"...
Parents
  • Professor JEFMAN, this sort of endeavour is way above my head, but in my case, thermal expansion would have nothing to do with granite, since the rotary is bolted to an aluminum extrude.
    I think I shall try your offering (keeping in mind mine is a Y- table like the Inspector's.
    Your homing observation is spot-on. Mine has shown to change by .0003 with each machine start. Probably not much in Rotab-land, but with a longer part......who knows? Rolling eyes
Reply
  • Professor JEFMAN, this sort of endeavour is way above my head, but in my case, thermal expansion would have nothing to do with granite, since the rotary is bolted to an aluminum extrude.
    I think I shall try your offering (keeping in mind mine is a Y- table like the Inspector's.
    Your homing observation is spot-on. Mine has shown to change by .0003 with each machine start. Probably not much in Rotab-land, but with a longer part......who knows? Rolling eyes
Children
No Data