Measure Multiple Parts on Fixture

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Measure Multiple Parts on Fixture

    I have ten parts mounted in a row on a fixture. I want to pick up the first part, print my report, and then move to the next part using a new alignment for the second part. I want to continue doing this for all ten parts. I can get the program to run but it offsets my x values by .625" (the spacing of parts) I can't seem to figure this out. I hope I'm missing something simple. Below is my code. I am grouping what I want to do for each pin so I only opened up the first group two groups. The remaining groups are the same as the 2nd group. I cut out the first part of the program to save some space.


    PLN1 =FEAT/PLANE,CARTESIAN,TRIANGLE
    THEO/<9.8206,15.5258,-24.4111>,<0.0000144,0.0000059,1>
    ACTL/<9.8207,15.5262,-24.4109>,<0.0000262,0.0000008,1>
    MEAS/PLANE,4
    MOVE/CLEARPLANE
    HIT/BASIC,NORMAL,<6.8472,13.9024,-24.411>,<0.0000144,0.0000059,1>,<6.8473,13.9027,-24.4109>,USE THEO=YES
    HIT/BASIC,NORMAL,<6.8473,17.1537,-24.411>,<0.0000144,0.0000059,1>,<6.8475,17.1541,-24.4109>,USE THEO=YES
    HIT/BASIC,NORMAL,<12.7937,17.1537,-24.4111>,<0.0000144,0.0000059,1>,<12.7937,17.1541,-24.411>,USE THEO=YES
    HIT/BASIC,NORMAL,<12.794,13.8934,-24.4111>,<0.0000144,0.0000059,1>,<12.7942,13.8938,-24.411>,USE THEO=YES
    ENDMEAS/
    A1 =ALIGNMENT/START,RECALL:STARTUP,LIST=YES
    ALIGNMENT/LEVEL,ZPLUS,PLN1
    ALIGNMENT/END
    LIN1 =FEAT/LINE,CARTESIAN,UNBOUNDED
    THEO/<12.4223,13.1289,-23.4552>,<-0.999996,-0.0028142,0>
    ACTL/<12.4224,13.1288,-23.4552>,<-0.999996,-0.0028158,0>
    MEAS/LINE,2,ZPLUS
    MOVE/CLEARPLANE
    HIT/BASIC,NORMAL,<12.4223,13.1289,-23.4552>,<-0.0028142,0.999996,0>,<12.4224,13.1288,-23.4551>,USE THEO=YES
    HIT/BASIC,NORMAL,<6.7953,13.1131,-23.4553>,<-0.0028142,0.999996,0>,<6.7955,13.1129,-23.4552>,USE THEO=YES
    ENDMEAS/
    A2 =ALIGNMENT/START,RECALL:A1,LIST=YES
    ALIGNMENT/ROTATE,XPLUS,TO,LIN1,ABOUT,ZPLUS
    ALIGNMENT/END
    CIR1 =FEAT/CIRCLE,CARTESIAN,OUT,LEAST_SQR
    THEO/<-12.4437,-12.3442,-23.2494>,<0,0,1>,0.2397,0
    ACTL/<-12.4444,-12.344,-23.2494>,<0,0,1>,0.2398,0
    MEAS/CIRCLE,8,ZPLUS
    MOVE/CLEARPLANE
    HIT/BASIC,NORMAL,<-12.3239,-12.3442,-23.2494>,<1,0,0>,<-12.3245,-12.3442,-23.2494>,USE THEO=YES
    MOVE/CIRCULAR
    HIT/BASIC,NORMAL,<-12.359,-12.2594,-23.2494>,<0.7071068,0.7071068,0>,<-12.3595,-12.2594,-23.2494>,USE THEO=YES
    MOVE/CIRCULAR
    HIT/BASIC,NORMAL,<-12.4437,-12.2243,-23.2494>,<0,1,0>,<-12.444,-12.2241,-23.2493>,USE THEO=YES
    MOVE/CIRCULAR
    HIT/BASIC,NORMAL,<-12.5285,-12.2594,-23.2494>,<-0.7071068,0.7071068,0>,<-12.5289,-12.259,-23.2494>,USE THEO=YES
    MOVE/CIRCULAR
    HIT/BASIC,NORMAL,<-12.5636,-12.3442,-23.2494>,<-1,0,0>,<-12.5643,-12.3441,-23.2493>,USE THEO=YES
    MOVE/CIRCULAR
    HIT/BASIC,NORMAL,<-12.5285,-12.4289,-23.2494>,<-0.7071068,-0.7071068,0>,<-12.5288,-12.4292,-23.2493>,USE THEO=YES
    MOVE/CIRCULAR
    HIT/BASIC,NORMAL,<-12.4437,-12.464,-23.2494>,<0,-1,0>,<-12.4439,-12.4639,-23.2493>,USE THEO=YES
    MOVE/CIRCULAR
    HIT/BASIC,NORMAL,<-12.359,-12.4289,-23.2494>,<0.7071068,-0.7071068,0>,<-12.3596,-12.4287,-23.2494>,USE THEO=YES
    ENDMEAS/
    Z =FEAT/POINT,CARTESIAN
    THEO/<-12.4609,-14.249,-24.411>,<0,0,1>
    ACTL/<-12.4613,-14.2485,-24.4107>,<0,0,1>
    MEAS/POINT,1,WORKPLANE
    MOVE/CLEARPLANE
    HIT/BASIC,NORMAL,<-12.4609,-14.249,-24.411>,<0,0,1>,<-12.4613,-14.2485,-24.4107>,USE THEO=YES
    ENDMEAS/
    A3 =ALIGNMENT/START,RECALL:A2,LIST=YES
    ALIGNMENT/TRANS,XAXIS,CIR1
    ALIGNMENT/TRANS,YAXIS,CIR1
    ALIGNMENT/TRANS,ZAXIS,Z
    ALIGNMENT/END
    CLEARP/ZPLUS,1.75,ZPLUS,0,ON
    MOVE/CLEARPLANE
    ASSIGN/V1=0
    MOVE/CLEARPLANE
    PREHIT/0.06
    RETRACT/0.06
    MOVESPEED/ 80
    TOUCHSPEED/ 3
    1ST =GROUP/SHOWALLPARAMS=YES
    FPTR =FILE/OPEN,G:\design\12942-01\tooling\cmm\Core_Pin_Sleeve\12942-01_core_pin_sleeve_single.txt,READ
    DO/
    FREAD =FILE/READLINE,FPTR,{VARX} +";"+{vary}+ ";"+{varz}+ ";"+{vari}+ ";"+{varj}+ ";"+{vark}+ ";"+{varob}+ ";"+{ptnbr}+ ";"
    MOVE/CLEARPLANE
    ASSIGN/V2=PTNBR
    MOVE/CLEARPLANE
    IF_GOTO/V1==V2,GOTO = L1
    MOVE/CLEARPLANE
    PTNBR =FEAT/CONTACT/VECTOR POINT/DEFAULT,CARTESIAN
    THEO/<VARX,VARY,VARZ>,<VARI,VARJ,VARK>
    ACTL/<-0.084,-0.0003,1.1776>,<-0.01845,0.0002,0.9998298>
    TARG/<VARX,VARY,VARZ>,<VARI,VARJ,VARK>
    SNAP=NO
    SHOW FEATURE PARAMETERS=NO
    SHOW CONTACT PARAMETERS=YES
    AVOIDANCE MOVE=NO,DISTANCE=0
    SHOW HITS=NO
    DIM LOC1= LOCATION OF POINT PTNBR UNITS=IN ,$
    GRAPH=OFF TEXT=OFF MULT=10.00 OUTPUT=BOTH HALF ANGLE=NO
    AX NOMINAL MEAS DEV
    X -0.0839 -0.0840 -0.0001
    Y -0.0003 -0.0003 0.0000
    Z 1.1777 1.1776 0.0000
    T 0.0000 0.0000 0.0000
    END OF DIMENSION LOC1
    ASSIGN/V1=V2
    MOVE/CLEARPLANE
    L1 =LABEL/
    UNTIL/FREAD == "EOF"
    MOVE/CLEARPLANE
    FILE/CLOSE,FPTR,KEEP
    MOVE/CLEARPLANE
    PRINT/REPORT,EXEC MODE=END,$
    TO_FILE=ON,AUTO=1,AUTO OPEN REPORT=OFF,$
    TO_PRINTER=OFF,COPIES=1,$
    TO_DMIS_REPORT=OFF,FILE_OPTION=OVERWRITE,FILENAME= ,$
    REPORT_THEORETICALS=NONE,REPORT_FEATURE_WITH_DIMEN SIONS=NO,$
    TO_EXCEL_OUTPUT=OFF,
    PREVIOUS_RUNS=KEEP_INSTANCES
    ENDGROUP/ID=1ST
    2ND =GROUP/SHOWALLPARAMS=YES
    CIR2 =FEAT/CIRCLE,CARTESIAN,OUT,LEAST_SQR
    THEO/<0.6249,0,1.15>,<0,0,1>,0.2396,0
    ACTL/<0.6249,0,1.15>,<0,0,1>,0.2398,0
    MEAS/CIRCLE,8,ZPLUS
    MOVE/CLEARPLANE
    HIT/BASIC,NORMAL,<0.7447,0,1.15>,<1,0,0>,<0.7448,0,1.1 5>,USE THEO=YES
    MOVE/CIRCULAR
    HIT/BASIC,NORMAL,<0.7096,0.0847,1.15>,<0.7071068,0.707 1068,0>,<0.7097,0.0848,1.15>,USE THEO=YES
    MOVE/CIRCULAR
    HIT/BASIC,NORMAL,<0.6249,0.1198,1.15>,<0,1,0>,<0.6248, 0.1199,1.15>,USE THEO=YES
    MOVE/CIRCULAR
    HIT/BASIC,NORMAL,<0.5401,0.0847,1.15>,<-0.7071068,0.7071068,0>,<0.54,0.0846,1.15>,USE THEO=YES
    MOVE/CIRCULAR
    HIT/BASIC,NORMAL,<0.505,0,1.15>,<-1,0,0>,<0.505,0,1.15>,USE THEO=YES
    MOVE/CIRCULAR
    HIT/BASIC,NORMAL,<0.5401,-0.0847,1.15>,<-0.7071068,-0.7071068,0>,<0.54,-0.0847,1.1501>,USE THEO=YES
    MOVE/CIRCULAR
    HIT/BASIC,NORMAL,<0.6249,-0.1198,1.15>,<0,-1,0>,<0.6249,-0.1199,1.1501>,USE THEO=YES
    MOVE/CIRCULAR
    HIT/BASIC,NORMAL,<0.7096,-0.0847,1.15>,<0.7071068,-0.7071068,0>,<0.7097,-0.0848,1.15>,USE THEO=YES
    ENDMEAS/
    A4 =ALIGNMENT/START,RECALL:A2,LIST=YES
    ALIGNMENT/TRANS,XAXIS,CIR2
    ALIGNMENT/TRANS,YAXIS,CIR2
    ALIGNMENT/END
    FPTR =FILE/OPEN,G:\design\12942-01\tooling\cmm\Core_Pin_Sleeve\12942-01_core_pin_sleeve_single.txt,READ
    DO/
    FREAD =FILE/READLINE,FPTR,{VARX} +";"+{vary}+ ";"+{varz}+ ";"+{vari}+ ";"+{varj}+ ";"+{vark}+ ";"+{varob}+ ";"+{ptnbr}+ ";"
    MOVE/CLEARPLANE
    ASSIGN/V2=PTNBR
    MOVE/CLEARPLANE
    IF_GOTO/V1==V2,GOTO = L1
    MOVE/CLEARPLANE
    PTNBR =FEAT/CONTACT/VECTOR POINT/DEFAULT,CARTESIAN
    THEO/<VARX,VARY,VARZ>,<VARI,VARJ,VARK>
    ACTL/<-0.0118,0.1194,1.1692>,<-0.0983304,0.9951538,0>
    TARG/<VARX,VARY,VARZ>,<VARI,VARJ,VARK>
    SNAP=NO
    SHOW FEATURE PARAMETERS=NO
    SHOW CONTACT PARAMETERS=YES
    AVOIDANCE MOVE=NO,DISTANCE=0
    SHOW HITS=NO
    DIM LOC1= LOCATION OF POINT PTNBR UNITS=IN ,$
    GRAPH=OFF TEXT=OFF MULT=10.00 OUTPUT=BOTH HALF ANGLE=NO
    AX NOMINAL MEAS DEV
    X -0.0839 -0.6361 -0.5522
    Y -0.0003 0.1194 0.1197
    Z 1.1777 -23.2414 -24.4191
    T 0.0000 0.0613 0.0613
    END OF DIMENSION LOC1
    ASSIGN/V1=V2
    MOVE/CLEARPLANE
    L1 =LABEL/
    UNTIL/FREAD == "EOF"
    MOVE/CLEARPLANE
    FILE/CLOSE,FPTR,KEEP
    MOVE/CLEARPLANE
    PRINT/REPORT,EXEC MODE=END,$
    TO_FILE=ON,AUTO=1,AUTO OPEN REPORT=OFF,$
    TO_PRINTER=OFF,COPIES=1,$
    TO_DMIS_REPORT=OFF,FILE_OPTION=OVERWRITE,FILENAME= ,$
    REPORT_THEORETICALS=NONE,REPORT_FEATURE_WITH_DIMEN SIONS=NO,$
    TO_EXCEL_OUTPUT=OFF,
    PREVIOUS_RUNS=KEEP_INSTANCES
    ENDGROUP/ID=2ND
    3RD =GROUP/SHOWALLPARAMS=NO
    ENDGROUP/ID=3RD
    4TH =GROUP/SHOWALLPARAMS=NO
    ENDGROUP/ID=4TH
    5TH =GROUP/SHOWALLPARAMS=NO
    ENDGROUP/ID=5TH
    6TH =GROUP/SHOWALLPARAMS=NO
    ENDGROUP/ID=6TH
    7TH =GROUP/SHOWALLPARAMS=NO
    ENDGROUP/ID=7TH
    8TH =GROUP/SHOWALLPARAMS=NO
    ENDGROUP/ID=8TH
    9TH =GROUP/SHOWALLPARAMS=NO
    ENDGROUP/ID=9TH
    10TH =GROUP/SHOWALLPARAMS=NO
    ENDGROUP/ID=10TH
    FILE_CLOSE =GROUP/SHOWALLPARAMS=NO
    ENDGROUP/ID=FILE_CLOSE

  • #2
    I think you need to recall your alignment and re-origin X within the DO loop. Not sure what you are doing with the code in your readlines, but looping 10x without updating your X origin within that loop, will do just that... Output 10x the looped offset, whatever you are feeding X as, via the readlines.

    Comment


    • Tinyfxds
      Tinyfxds commented
      Editing a comment
      Thanks for the advice. I will give it a try.

Related Topics

Collapse

Working...
X