Points Shifting During Loop

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

  • Points Shifting During Loop

    I have run into a problem which I cannot seem to figure out. I have to run a program 50 times for a capability study and so what I have done to make life easier is a double loop for a line of 4 parts. What I think is happening is when I run the program and it goes through the loop, it then offsets the manual alignment and measures the next part. If I make any changes to the program without disabling the loop and running it offline then all the alignments go out of whack and the probe will jump between the parts.

    My solution is simply to do what I described, however, on the last part (written on 2014, I use 2015.1) this doesn't solve my problem. It measures the first part just fine, then after the offset, it measures a datum hole and moves to a round slot datum and when it takes a sample hit the probe moves all the way back to the first part.

    When I Draw the path I see that this is the only place it does this, and it does it for each part after the first. That is, it takes the sample point and then goes back to the first part, then back to the part being measured.

    Simply Removing the sample points on that slot then fixes the drawn path but crashes PC-DMIS when I run it on my machine.

    I am done work for the day but I was hoping someone may have some insight based in my (admittedly long winded) description.

  • #2
    Please post code.

    Comment


    • #3
      Originally posted by bfire85 View Post
      Please post code.
      I just got into the lab, so here is the code. I have taken another stab at it and simply removing the sample points on DATUM_C seems to work now and doesn't crash PC-DMIS however if I include SLTR1 in the loop with sample points, or include the sample points on DATUM_C i get the issue where it keeps going back to the first part but only for one of the sample points.

      Also, is there something like a spoiler tag to hide potentially unnecessary code?

      Code:
      STARTUP    =ALIGNMENT/START,RECALL:USE_PART_SETUP,LIST=YES
                  ALIGNMENT/END
                  MODE/MANUAL
                  PREHIT/3
                  RETRACT/3
                  TOUCHSPEED/ 6
                  MOVESPEED/ 80
                  FORMAT/TEXT,OPTIONS, ,HEADINGS,SYMBOLS, ;NOM,TOL,MEAS,DEV,OUTTOL,MAXMIN, 
                  LOADPROBE/1BY25_SHANK
                  TIP/T1A0B0, SHANKIJK=0, 0, -1, ANGLE=0
      
                  COMMENT/OPER,NO,FULL SCREEN=NO,AUTO-CONTINUE=NO,
                  Place probe in CIR1
                  ================================================
      
      READ       =FEAT/POINT,CARTESIAN
                  THEO/<13.035,4.399,-0.346>,<0,0,-1>
                  ACTL/<-397.133,-977.083,526.984>,<0,0,-1>
                  READPOINT/
      
      A2           =ALIGNMENT/START,RECALL:STARTUP,LIST=YES
                      ALIGNMENT/TRANS,XAXIS,READ
                      ALIGNMENT/TRANS,YAXIS,READ
                      ALIGNMENT/TRANS,ZAXIS,READ
                    ALIGNMENT/END
      
                    CLEARP/ZMINUS,-40,ZMINUS,-40,ON
                    MODE/DCC
      
      CIR1         =FEAT/CONTACT/CIRCLE/DEFAULT,CARTESIAN,IN,LEAST_SQR
                    THEO/<0,0,0>,<0,0,-1>,6.67
                    ACTL/<0.011,0.009,-0.935>,<0.0115922,0.0094263,-0.9998884>,6.67
                    TARG/<0,0,0>,<0,0,-1>
                    START ANG=0,END ANG=360
                    ANGLE VEC=<-1,0,0>
                    DIRECTION=CCW
                    SHOW FEATURE PARAMETERS=NO
                    SHOW CONTACT PARAMETERS=YES
                      NUMHITS=4,DEPTH=2,PITCH=0
                      SAMPLE METHOD=SAMPLE_HITS
                      SAMPLE HITS=3,SPACER=2
                      AVOIDANCE MOVE=BOTH,DISTANCE=10
                      FIND HOLE=DISABLED,ONERROR=NO,READ POS=NO
                    SHOW HITS=NO
      
      SLTR1        =FEAT/CONTACT/ROUND SLOT/DEFAULT,CARTESIAN,IN
                    THEO/<-21.035,0,0>,<0,0,-1>,<1,0,0>,6.67,7.67
                    ACTL/<-20.598,-0.236,-1.19>,<0.0128399,0.0113686,-0.9998529>,<0.9999083,0.0041591,0.0128879>,6.727,7.755
                    TARG/<-21.035,0,0>,<0,0,-1>,<1,0,0>
                    MEAS ANGLE=90
                    SHOW FEATURE PARAMETERS=NO
                    SHOW CONTACT PARAMETERS=YES
                      NUMHITS=6,DEPTH=2
                      SAMPLE METHOD=SAMPLE_HITS
                      SAMPLE HITS=3,SPACER=1
                      AVOIDANCE MOVE=BOTH,DISTANCE=10
                      FIND HOLE=DISABLED,ONERROR=NO,READ POS=NO
                    SHOW HITS=NO
      
      PNT-1        =FEAT/CONTACT/SURFACE POINT/DEFAULT,CARTESIAN
                    THEO/<3.459,7.847,0>,<0,0,-1>
                    ACTL/<3.757,8.284,-0.814>,<0,0,-1>
                    TARG/<3.459,7.847,0>,<0,0,-1>
                    SNAP=NO
                    SHOW FEATURE PARAMETERS=NO
                    SHOW CONTACT PARAMETERS=YES
                      SAMPLE METHOD=SAMPLE_HITS
                      SAMPLE HITS=0,SPACER=0
                      AVOIDANCE MOVE=BOTH,DISTANCE=10
                    SHOW HITS=NO
      
      PNT-2        =FEAT/CONTACT/SURFACE POINT/DEFAULT,CARTESIAN
                    THEO/<-26.824,7.435,0>,<0,0,-1>
                    ACTL/<-26.525,7.862,-1.176>,<0,0,-1>
                    TARG/<-26.824,7.435,0>,<0,0,-1>
                    SNAP=NO
                    SHOW FEATURE PARAMETERS=NO
                    SHOW CONTACT PARAMETERS=YES
                      SAMPLE METHOD=SAMPLE_HITS
                      SAMPLE HITS=0,SPACER=0
                      AVOIDANCE MOVE=BOTH,DISTANCE=10
                    SHOW HITS=NO
      
      PNT-3        =FEAT/CONTACT/SURFACE POINT/DEFAULT,CARTESIAN
                    THEO/<-10.788,2.981,0>,<0,0,-1>
                    ACTL/<-10.487,3.405,-1.023>,<0,0,-1>
                    TARG/<-10.788,2.981,0>,<0,0,-1>
                    SNAP=NO
                    SHOW FEATURE PARAMETERS=NO
                    SHOW CONTACT PARAMETERS=YES
                      SAMPLE METHOD=SAMPLE_HITS
                      SAMPLE HITS=0,SPACER=0
                      AVOIDANCE MOVE=BOTH,DISTANCE=10
                    SHOW HITS=NO
      
      PLN1         =FEAT/PLANE,CARTESIAN,TRIANGLE,NO
                    THEO/<-11.385,6.088,0>,<0,0,-1>
                    ACTL/<-11.085,6.517,-1.004>,<0.0118229,0.0083312,-0.9998954>
                    CONSTR/PLANE,BF,PNT-1,PNT-2,PNT-3,,
                    OUTLIER_REMOVAL/OFF,3
                    FILTER/OFF,WAVELENGTH=0
      
      A1           =ALIGNMENT/START,RECALL:STARTUP,LIST=YES
                      ALIGNMENT/LEVEL,ZPLUS,PLN1
                      ALIGNMENT/TRANS,ZAXIS,PLN1
                      ALIGNMENT/ROTATE_CIRCLE,XPLUS,TO,CIR1,AND,SLTR1,ABOUT,ZPLUS
                      ALIGNMENT/TRANS,XAXIS,CIR1
                      ALIGNMENT/TRANS,YAXIS,CIR1
                    ALIGNMENT/END
      
                    CLEARP/ZPLUS,50,ZPLUS,50,ON
      
      V1           =LOOP/START,ID=NO,NUMBER=12,START=1,SKIP=,
                      OFFSET:XAXIS=0,YAXIS=0,ZAXIS=0,ANGLE=0
      
      V2             =LOOP/START,ID=NO,NUMBER=4,START=1,SKIP=,
                        OFFSET:XAXIS=0,YAXIS=124,ZAXIS=0,ANGLE=0
      
                        MOVE/CLEARPLANE
      
      DATUM B          =FEAT/CONTACT/CIRCLE/DEFAULT,CARTESIAN,IN,LEAST_SQR
                        THEO/<0,0,0>,<0,0,1>,6.67
                        ACTL/<1.554,-3.041,2.025>,<0.0054552,-0.0027391,0.9999814>,6.711
                        TARG/<0,0,0>,<0,0,1>
                        START ANG=0,END ANG=360
                        ANGLE VEC=<1,0,0>
                        DIRECTION=CCW
                        SHOW FEATURE PARAMETERS=NO
                        SHOW CONTACT PARAMETERS=YES
                          NUMHITS=8,DEPTH=2,PITCH=0
                          SAMPLE METHOD=SAMPLE_HITS
                          SAMPLE HITS=3,SPACER=2
                          AVOIDANCE MOVE=BOTH,DISTANCE=10
                          FIND HOLE=CENTER,ONERROR=NO,READ POS=NO
                        SHOW HITS=NO
      
      PROJ_DATUM B      =FEAT/CIRCLE,CARTESIAN,OUT,YES
                        THEO/<0,0,0>,<0,0,-1>,15
                        ACTL/<1.554,-3.041,2.025>,<-0.0054552,0.0027391,-0.9999814>,6.711
                        CONSTR/CIRCLE,REV,DATUM B
      
      B-1              =FEAT/CONTACT/SURFACE POINT/DEFAULT,CARTESIAN
                        THEO/<0.168,-6.14,0>,<0,0,1>
                        ACTL/<0.145,-6.129,1.91>,<0,0,1>
                        TARG/<0.168,-6.14,0>,<0,0,1>
                        SNAP=NO
                        SHOW FEATURE PARAMETERS=NO
                        SHOW CONTACT PARAMETERS=YES
                          SAMPLE METHOD=SAMPLE_HITS
                          SAMPLE HITS=0,SPACER=5
                          AVOIDANCE MOVE=AFTER,DISTANCE=3
                        SHOW HITS=NO
      
      B-2              =FEAT/CONTACT/SURFACE POINT/DEFAULT,CARTESIAN
                        THEO/<-3.199,-3.062,0>,<0,0,1>
                        ACTL/<-3.226,-3.082,2.051>,<0,0,1>
                        TARG/<-3.199,-3.062,0>,<0,0,1>
                        SNAP=NO
                        SHOW FEATURE PARAMETERS=NO
                        SHOW CONTACT PARAMETERS=YES
                          SAMPLE METHOD=SAMPLE_HITS
                          SAMPLE HITS=0,SPACER=5
                          AVOIDANCE MOVE=AFTER,DISTANCE=3
                        SHOW HITS=NO
      
      B-3              =FEAT/CONTACT/SURFACE POINT/DEFAULT,CARTESIAN
                        THEO/<-6.407,0.078,0>,<0,0,1>
                        ACTL/<-6.417,0.106,-6.129>,<0,0,1>
                        TARG/<-6.407,0.078,0>,<0,0,1>
                        SNAP=NO
                        SHOW FEATURE PARAMETERS=NO
                        SHOW CONTACT PARAMETERS=YES
                          SAMPLE METHOD=SAMPLE_HITS
                          SAMPLE HITS=0,SPACER=5
                          AVOIDANCE MOVE=AFTER,DISTANCE=3
                        SHOW HITS=NO
      
      B-4              =FEAT/CONTACT/SURFACE POINT/DEFAULT,CARTESIAN
                        THEO/<-2.722,3.726,0>,<0,0,1>
                        ACTL/<-2.716,3.738,2.067>,<0,0,1>
                        TARG/<-2.722,3.726,0>,<0,0,1>
                        SNAP=NO
                        SHOW FEATURE PARAMETERS=NO
                        SHOW CONTACT PARAMETERS=YES
                          SAMPLE METHOD=SAMPLE_HITS
                          SAMPLE HITS=0,SPACER=5
                          AVOIDANCE MOVE=AFTER,DISTANCE=3
                        SHOW HITS=NO
      
      B-5              =FEAT/CONTACT/SURFACE POINT/DEFAULT,CARTESIAN
                        THEO/<1.884,6.011,0>,<0,0,1>
                        ACTL/<1.886,6.021,2.03>,<0,0,1>
                        TARG/<1.884,6.011,0>,<0,0,1>
                        SNAP=NO
                        SHOW FEATURE PARAMETERS=NO
                        SHOW CONTACT PARAMETERS=YES
                          SAMPLE METHOD=SAMPLE_HITS
                          SAMPLE HITS=0,SPACER=5
                          AVOIDANCE MOVE=AFTER,DISTANCE=3
                        SHOW HITS=NO
      
      B-6              =FEAT/CONTACT/SURFACE POINT/DEFAULT,CARTESIAN
                        THEO/<3.567,2.521,0>,<0,0,1>
                        ACTL/<3.572,2.524,2.021>,<0,0,1>
                        TARG/<3.567,2.521,0>,<0,0,1>
                        SNAP=NO
                        SHOW FEATURE PARAMETERS=NO
                        SHOW CONTACT PARAMETERS=YES
                          SAMPLE METHOD=SAMPLE_HITS
                          SAMPLE HITS=0,SPACER=5
                          AVOIDANCE MOVE=AFTER,DISTANCE=3
                        SHOW HITS=NO
      
      B-7              =FEAT/CONTACT/SURFACE POINT/DEFAULT,CARTESIAN
                        THEO/<6.299,-1.476,0>,<0,0,1>
                        ACTL/<6.302,-1.481,2.003>,<0,0,1>
                        TARG/<6.299,-1.476,0>,<0,0,1>
                        SNAP=NO
                        SHOW FEATURE PARAMETERS=NO
                        SHOW CONTACT PARAMETERS=YES
                          SAMPLE METHOD=SAMPLE_HITS
                          SAMPLE HITS=0,SPACER=5
                          AVOIDANCE MOVE=AFTER,DISTANCE=3
                        SHOW HITS=NO
      
      B-8              =FEAT/CONTACT/SURFACE POINT/DEFAULT,CARTESIAN
                        THEO/<3.281,-2.904,0>,<0,0,1>
                        ACTL/<3.281,-2.904,0>,<0,0,1>
                        TARG/<3.281,-2.904,0>,<0,0,1>
                        SNAP=NO
                        SHOW FEATURE PARAMETERS=NO
                        SHOW CONTACT PARAMETERS=YES
                          SAMPLE METHOD=SAMPLE_HITS
                          SAMPLE HITS=0,SPACER=5
                          AVOIDANCE MOVE=AFTER,DISTANCE=3
                        SHOW HITS=NO

      Comment


      • #4
        EDIT: I should say that this is not my code, it was sent to me by another company. What I've done to speed things up is add the readpoint and the alignment A2 as well as move the MODE/DCC command from right after A1 to right after A2. I thought that I was careful enough not to mess anything up, but apparently not.

        Code:
        datum c          =feat/contact/round slot/default,cartesian,in
                          theo/<21.035,0,0>,<0,0,1>,<-1,0,0>,6.67,7.67
                          actl/<20.738,0.536,0>,<0,0,1>,<-0.9999966,0.0026083,0>,6.711,7.759
                          targ/<21.035,0,0>,<0,0,1>,<-1,0,0>
                          meas angle=180
                          show feature parameters=no
                          show contact parameters=yes
                            numhits=12,depth=1.8
                            sample method=sample_hits
                            sample hits=3,spacer=1.5
                            avoidance move=both,distance=10
                            find hole=disabled,onerror=no,read pos=no
                          show hits=no
        
        proj_datum c      =feat/circle,cartesian,out,yes
                          theo/<21.035,0,0>,<0,0,1>,15
                          actl/<20.738,0.536,0>,<0,0,1>,15
                          constr/circle,cast,datum c,independent
                          comment/oper,no,full screen=no,auto-continue=no,
        
        c-1              =feat/contact/surface point/default,cartesian
                          theo/<21.63,-6.529,0>,<0,0,1>
                          actl/<21.622,-6.534,0.763>,<0,0,1>
                          targ/<21.63,-6.529,0>,<0,0,1>
                          snap=no
                          show feature parameters=no
                          show contact parameters=yes
                            sample method=sample_hits
                            sample hits=0,spacer=5
                            avoidance move=after,distance=3
                          show hits=no
        
        c-2              =feat/contact/surface point/default,cartesian
                          theo/<16.643,-3.144,0>,<0,0,1>
                          actl/<16.611,-3.127,0.747>,<0,0,1>
                          targ/<16.643,-3.144,0>,<0,0,1>
                          snap=no
                          show feature parameters=no
                          show contact parameters=yes
                            sample method=sample_hits
                            sample hits=0,spacer=5
                            avoidance move=after,distance=3
                          show hits=no
        
        c-3              =feat/contact/surface point/default,cartesian
                          theo/<14.126,0.337,0>,<0,0,1>
                          actl/<14.094,0.35,0.743>,<0,0,1>
                          targ/<14.126,0.337,0>,<0,0,1>
                          snap=no
                          show feature parameters=no
                          show contact parameters=yes
                            sample method=sample_hits
                            sample hits=0,spacer=5
                            avoidance move=after,distance=3
                          show hits=no
        
        c-4              =feat/contact/surface point/default,cartesian
                          theo/<16.837,3.964,0>,<0,0,1>
                          actl/<16.848,3.985,0.71>,<0,0,1>
                          targ/<16.837,3.964,0>,<0,0,1>
                          snap=no
                          show feature parameters=no
                          show contact parameters=yes
                            sample method=sample_hits
                            sample hits=0,spacer=5
                            avoidance move=after,distance=3
                          show hits=no
        
        c-5              =feat/contact/surface point/default,cartesian
                          theo/<20.952,7.106,0>,<0,0,1>
                          actl/<20.968,7.125,0.697>,<0,0,1>
                          targ/<20.952,7.106,0>,<0,0,1>
                          snap=no
                          show feature parameters=no
                          show contact parameters=yes
                            sample method=sample_hits
                            sample hits=0,spacer=5
                            avoidance move=after,distance=3
                          show hits=no
        
        c-6              =feat/contact/surface point/default,cartesian
                          theo/<24.438,4.254,0>,<0,0,1>
                          actl/<24.455,4.268,0.696>,<0,0,1>
                          targ/<24.438,4.254,0>,<0,0,1>
                          snap=no
                          show feature parameters=no
                          show contact parameters=yes
                            sample method=sample_hits
                            sample hits=0,spacer=5
                            avoidance move=after,distance=3
                          show hits=no
        
        c-7              =feat/contact/surface point/default,cartesian
                          theo/<27.536,-0.001,0>,<0,0,1>
                          actl/<27.541,0.006,0.707>,<0,0,1>
                          targ/<27.536,-0.001,0>,<0,0,1>
                          snap=no
                          show feature parameters=no
                          show contact parameters=yes
                            sample method=sample_hits
                            sample hits=0,spacer=5
                            avoidance move=after,distance=3
                          show hits=no
        
        c-8              =feat/contact/surface point/default,cartesian
                          theo/<24.97,-3.096,0>,<0,0,1>
                          actl/<24.941,-3.094,0.726>,<0,0,1>
                          targ/<24.97,-3.096,0>,<0,0,1>
                          snap=no
                          show feature parameters=no
                          show contact parameters=yes
                            sample method=sample_hits
                            sample hits=0,spacer=5
                            avoidance move=after,distance=3
                          show hits=no
        
        a-1              =feat/contact/surface point/default,cartesian
                          theo/<-2.015,8.726,0>,<0,0,1>
                          actl/<-2.086,8.734,0.81>,<0.0041021,0.0021273,0.9999893>
                          targ/<-2.015,8.726,0>,<0,0,1>
                          snap=no
                          show feature parameters=no
                          show contact parameters=yes
                            sample method=sample_hits
                            sample hits=0,spacer=5
                            avoidance move=after,distance=3
                          show hits=no
        
        a-2              =feat/contact/surface point/default,cartesian
                          theo/<5.31,8.739,0>,<0,0,1>
                          actl/<5.339,8.756,0.764>,<0.0041021,0.0021273,0.9999893>
                          targ/<5.31,8.739,0>,<0,0,1>
                          snap=no
                          show feature parameters=no
                          show contact parameters=yes
                            sample method=sample_hits
                            sample hits=0,spacer=5
                            avoidance move=after,distance=3
                          show hits=no
        
        a-3              =feat/contact/surface point/default,cartesian
                          theo/<17.658,8.61,0>,<0,0,1>
                          actl/<17.693,8.616,0.712>,<0.0041021,0.0021273,0.9999893>
                          targ/<17.658,8.61,0>,<0,0,1>
                          snap=no
                          show feature parameters=no
                          show contact parameters=yes
                            sample method=sample_hits
                            sample hits=0,spacer=5
                            avoidance move=after,distance=3
                          show hits=no
        
        a-4              =feat/contact/surface point/default,cartesian
                          theo/<30.278,7.959,0>,<0,0,1>
                          actl/<30.313,7.966,0.665>,<0.0041021,0.0021273,0.9999893>
                          targ/<30.278,7.959,0>,<0,0,1>
                          snap=no
                          show feature parameters=no
                          show contact parameters=yes
                            sample method=sample_hits
                            sample hits=0,spacer=5
                            avoidance move=after,distance=3
                          show hits=no
        
        a-5              =feat/contact/surface point/default,cartesian
                          theo/<28.002,0.191,0>,<0,0,1>
                          actl/<27.977,0.175,0.703>,<0.0041021,0.0021273,0.9999893>
                          targ/<28.002,0.191,0>,<0,0,1>
                          snap=no
                          show feature parameters=no
                          show contact parameters=yes
                            sample method=sample_hits
                            sample hits=0,spacer=5
                            avoidance move=after,distance=3
                          show hits=no
        
        a-6              =feat/contact/surface point/default,cartesian
                          theo/<10.388,1.651,0>,<0,0,1>
                          actl/<10.322,1.65,0.753>,<0.0041021,0.0021273,0.9999893>
                          targ/<10.388,1.651,0>,<0,0,1>
                          snap=no
                          show feature parameters=no
                          show contact parameters=yes
                            sample method=sample_hits
                            sample hits=0,spacer=5
                            avoidance move=after,distance=3
                          show hits=no
        
        a-7              =feat/contact/surface point/default,cartesian
                          theo/<-5.058,0.349,0>,<0,0,1>
                          actl/<-5.112,0.362,0.826>,<0.0041021,0.0021273,0.9999893>
                          targ/<-5.058,0.349,0>,<0,0,1>
                          snap=no
                          show feature parameters=no
                          show contact parameters=yes
                            sample method=sample_hits
                            sample hits=0,spacer=5
                            avoidance move=after,distance=3
                          show hits=no
        
        pln2             =feat/plane,cartesian,triangle,no
                          theo/<12.08,5.175,0>,<0,0,1>
                          actl/<12.066,5.181,0.748>,<0.0041021,0.0021273,0.9999893>
                          constr/plane,bf,a-1,a-2,a-3,a-4,a-5,a-6,a-7,,
                          outlier_removal/off,3
                          filter/off,wavelength=0
        
        align_dcc        =alignment/start,recall:a1,list=yes
                            alignment/iterate
                              pnt target rad=5,start label=,fixture tol=0.05,error label=
                              meas all feat=no,level axis=zaxis,rotate axis=yaxis,origin axis=xaxis
                            level=a-1,a-2,a-3,a-4,a-5,a-6,a-7,,
                            rotate=datum b,datum c,,
                            origin=datum b,,
                          alignment/end
        
        
                          prehit/2
                          retract/2
        Last edited by plopperzz; 01-10-2020, 07:23 AM.

        Comment


        • KIRBSTER269
          KIRBSTER269 commented
          Editing a comment
          Can I see the End of your program? Do You have 2 LOOP/END commands and are they created with the correct Loop Command from the top. I'm assuming, you are setting up 4 parts, then you have a LOOP/END. Then a Comment after that, so you can put up the next 4 Parts and then a LOOP/END after that?

        • plopperzz
          plopperzz commented
          Editing a comment
          I just posted it for you. It is running fine for me now that i removed the sample hits. I discovered that it is not the sample hits or moving the alignment that is causing PCDMIS to crash, however. This is my main issue now; The original programmer added SLOT_ITEM 9-10, a set of points to measure a round slot and we need to dimension the form only, however that simple addition of code to do so is what is causing PCDMIS to crash. I am awaiting tech supports call about this right now. It measures formandlocation just fine but for some reason it has a problem with formonly...

        • KIRBSTER269
          KIRBSTER269 commented
          Editing a comment
          maybe recreate those callouts, and you have to get rid of spaces, even though they say its ok now, the "-" minus signs
          Example: SLOT_ITEM 9-10
          Change: SLOT_ITEM_9_10

      • #5
        PC DMIS looping doesn't work well for advanced programs. We can get this done but we'll change up your approach a bit.

        1) Get the "-"s out of you program. For naming conventions, it it HIGHLY advised that you ONLY use letters, numbers, and underscores. NO special characters. PC DMIS looks at certain things as math functions and the "-" sign is one of those things.


        2) Use a DO LOOP with an origin driven by a generic point that is driven by variables based off of an operator input comment. Below is my program I use..I use one loop for my serial number capturing and another for my prg.

        Code:
        GROUP_COUNTPROMPT_AND_SERIALNUMBER=GROUP/SHOWALLPARAMS=YES
        COUNT_PROMPT   =COMMENT/INPUT,NO,FULL SCREEN=NO,
                      How many parts are you inspecting?
                      ASSIGN/TOTAL_PARTS=COUNT_PROMPT.INPUT
                      ASSIGN/SER=0
                      DO/
                        ASSIGN/SER=SER+1
        SER_PROMPT     =COMMENT/INPUT,NO,FULL SCREEN=NO,
                        Please enter the Serial Number of the
                        "part at FIXTURE POSITION# "+SER+"."
        RUN_PROMPT     =COMMENT/INPUT,NO,FULL SCREEN=NO,
                        Please enter the Run Number of the
                        "part at FIXTURE POSITION# "+SER+"."
                        ASSIGN/SER_NUM[SER]=SER_PROMPT.INPUT
                        ASSIGN/RUN_NUM[SER]=RUN_PROMPT.INPUT
                      UNTIL/SER==TOTAL_PARTS
                    ENDGROUP/ID=GROUP_COUNTPROMPT_AND_SERIALNUMBER
                    RECALL/ALIGNMENT,EXTERNAL,FIXT_ALN_FAKE
                    ASSIGN/CURR_POS=0
                    DO/
                      ASSIGN/CURR_POS=CURR_POS+1
                      COMMENT/REPT,
                      "Serial Number: "+SER_NUM[CURR_POS]
                      COMMENT/REPT,
                      "Run Number: "+RUN_NUM[CURR_POS]
                      ASSIGN/PROG_NAME=GETPROGRAMINFO ("PARTNAME")
                      ASSIGN/REPORT_NAME="X:\\XXXXXX\\XXXXXXX\\XXXXXX\\PALLET_MACRO_MASTER\\"+PROG_NAME+"__"+SER_NUM[CURR_POS]+"-.PDF"
                      IF/CURR_POS==1
                        ASSIGN/FIXT_X=0
                        ASSIGN/FIXT_Y=0
                        ASSIGN/FIXT_Z=0
                      END_IF/
                      IF/CURR_POS==2
                        ASSIGN/FIXT_X=6
                        ASSIGN/FIXT_Y=0
                        ASSIGN/FIXT_Z=0
                      END_IF/
                      IF/CURR_POS==3
                        ASSIGN/FIXT_X=12
                        ASSIGN/FIXT_Y=0
                        ASSIGN/FIXT_Z=0
                      END_IF/
                      IF/CURR_POS==4
                        ASSIGN/FIXT_X=0
                        ASSIGN/FIXT_Y=6
                        ASSIGN/FIXT_Z=0
                      END_IF/
                      IF/CURR_POS==5
                        ASSIGN/FIXT_X=6
                        ASSIGN/FIXT_Y=6
                        ASSIGN/FIXT_Z=0
                      END_IF/
                      IF/CURR_POS==6
                        ASSIGN/FIXT_X=12
                        ASSIGN/FIXT_Y=6
                        ASSIGN/FIXT_Z=0
                      END_IF/
                      RECALL/ALIGNMENT,EXTERNAL,FIXT_ALN_FAKE
        PO_PNT       =GENERIC/POINT,DEPENDENT,CARTESIAN,$
                      NOM/XYZ,<0+0,0+0,0+0>,$
                      MEAS/XYZ,<FIXT_X,FIXT_Y,FIXT_Z>,$
                      NOM/IJK,<0+0,0+0,0+0>,$
                      MEAS/IJK,<0+0,0+0,0+0>
        A1_INIT_ALN  =ALIGNMENT/START,RECALL:FIXT_ALN_FAKE,LIST=YES
                        ALIGNMENT/TRANS,XAXIS,PO_PNT
                        ALIGNMENT/TRANS,YAXIS,PO_PNT
                        ALIGNMENT/TRANS,ZAXIS,PO_PNT
                      ALIGNMENT/END
        PRINT/REPORT,EXEC MODE=END,$
                        TO_FILE=ON,AUTO=1,AUTO OPEN=OFF,$
                        TO_PRINTER=OFF,COPIES=1,$
                        TO_DMIS_REPORT=OFF,FILE_OPTION=INDEX,FILENAME=REPORT_NAME,$
                        REPORT_THEORETICALS=NONE,REPORT_FEATURE_WITH_DIMENSIONS=NO,$
                        TO_EXCEL=OFF,$
                        PREVIOUS_RUNS=KEEP_INSTANCES
        UNTIL/CURR_POS==TOTAL_PARTS
        In order for this method to work, you MUST DO THIS: Add a "+0" or a "*1" to EVERY THEO field in your program. Yes, EVERY SINGLE THEO LOCATION FIELD. Also do this to ALL MOVE/POINT, MOVE/INCREMENT, etc... as shown below. This will prevent PC DMIS from changing any of your nominals and everything will follow your variable-ized origin.
        Code:
        CIRXY1       =FEAT/CONTACT/CIRCLE/DEFAULT,CARTESIAN,IN,LEAST_SQR
                      THEO/<0+0,0+0,0+0>,<0,0,1>,2.3642
                      ACTL/<0,0,0>,<0,0,1>,2.3642
                      TARG/<0,0,0>,<0,0,1>
                      START ANG=0,END ANG=360
                      ANGLE VEC=<1,0,0>
                      DIRECTION=CCW
                      SHOW FEATURE PARAMETERS=NO
                      SHOW CONTACT PARAMETERS=NO
        A2           =ALIGNMENT/START,RECALL:A1_INIT_ALN,LIST=YES
                        ALIGNMENT/TRANS,XAXIS,CIRXY1
                        ALIGNMENT/TRANS,YAXIS,CIRXY1
                      ALIGNMENT/END
                      MOVESPEED/ 300*0.9
                      TOUCHSPEED/ 5
                      PREHIT/0.125
                      RETRACT/0.125
                      CHECK/0.125,1
        CIRXY2       =FEAT/CONTACT/CIRCLE/DEFAULT,CARTESIAN,IN,LEAST_SQR
                      THEO/<0+0,0+0,0+0>,<0,0,1>,2.3642
                      ACTL/<0,0,0>,<0,0,1>,2.3642
                      TARG/<0,0,0>,<0,0,1>
                      START ANG=-120,END ANG=240
                      ANGLE VEC=<1,0,0>
                      DIRECTION=CCW
                      SHOW FEATURE PARAMETERS=NO
                      SHOW CONTACT PARAMETERS=NO
        A3           =ALIGNMENT/START,RECALL:A2,LIST=YES
                        ALIGNMENT/TRANS,XAXIS,CIRXY2
                        ALIGNMENT/TRANS,YAXIS,CIRXY2
                      ALIGNMENT/END
                      MOVESPEED/ 300*0.9
                      TOUCHSPEED/ 5
                      PREHIT/0.25
                      RETRACT/0.05
                      CHECK/0.25,1
                      MOVE/INCREMENT,<0+0,0+0,1+0>

        Comment


        • Douglas
          Douglas commented
          Editing a comment
          I never say please in my instruction... maybe I could lighten up a bit.

        • DAN_M
          DAN_M commented
          Editing a comment
          Yes this will protect from changes. +0 or *1 in the NOM FIELD locks your code completely.

          This method will work for what you need.

          I CURRENTLY have the CMM running with 30 parts on it. 6X5 grid. Boss loves it.

        • DAN_M
          DAN_M commented
          Editing a comment
          Douglas I'm young, everyone I work with work with are old enough to be my parents, I try my best to be polite/humble where I can be!

      • #6
        Why is A1 alignment features a -1 in the Z vector while in A0B0 probe rotation?

        Comment


        • bfire85
          bfire85 commented
          Editing a comment
          It's probably the way your model is transformed. Are the manual hits underneath the part and then when you align, it flips the model?

        • plopperzz
          plopperzz commented
          Editing a comment
          No. What does happen though, since i added in that first alignment to automate what the programmer did manually, is the z-axis flips. When i take my readpoint, the z-axis points toward the table then after it does the alignment that was once the manual alignment, the z-axis flips.

        • UKCMM
          UKCMM commented
          Editing a comment
          Your probe A0B0 has vectors of 0,0,-1 this would normally be 0,0,1 this could be the problem with flipped Z vector in the alignment

      • #7
        Here's how I do it with IF_GOTO with variable being entered through a form.
        CNT_1 is a loop counter:
        QTY_1 is a variable for the number of parts being run:

        HTML Code:
        ASSIGN/CNT_1=1
                      MAN_ABC_AL =ALIGNMENT/START,RECALL:MAN_AB_AL,LIST=YES
                      ALIGNMENT/LEVEL,XMINUS,MAN_A_PLN
                      ALIGNMENT/ROTATE_CIRCLE,ZPLUS,TO,MAN_B_CIR,AND,MAN_C_PNT,ABOUT,XPLUS
                      ALIGNMENT/ROTATE_OFFSET,-33,ABOUT,XPLUS
                      ALIGNMENT/TRANS,XAXIS,MAN_A_PLN
                      ALIGNMENT/TRANS,YAXIS,MAN_B_CIR
                      ALIGNMENT/TRANS,ZAXIS,MAN_B_CIR
                    ALIGNMENT/END
                    SAVE/ALIGNMENT,Pentastar_vertical_al1.aln,MACHINETOPARTS
                    ASSIGN/X_OFFSET=ARRAY(0,0,0,0,165.2,165.2,165.2,165.2,329.8,329.8,329.8,329.8)
                    ASSIGN/Y_OFFSET=ARRAY(0,139.5,279,418.5,0,139.5,279,418.5,0,139.5,279,418.5)
        STATION_OFFSET_AL1=ALIGNMENT/START,RECALL:MAN_ABC_AL,LIST=YES
                      ALIGNMENT/TRANS_OFFSET,XAXIS,X_OFFSET[CNT_1]
                      ALIGNMENT/TRANS_OFFSET,YAXIS,Y_OFFSET[CNT_1]
                    ALIGNMENT/END
                    SAVE/ALIGNMENT,Pentastar_vertical_offset_al1.aln,MACHINETOPARTS
                    IF/CNT_1==1
                      RECALL/ALIGNMENT,EXTERNAL,PENTASTAR_VERTICAL_AL1
                    END_IF/
                    IF/CNT_1<>1
                      RECALL/ALIGNMENT,EXTERNAL,PENTASTAR_VERTICAL_OFFSET_AL1
                    END_IF/
        Body of routine
        HTML Code:
        ASSIGN/CNT_1=CNT_1+1
                    IF_GOTO/CNT_1<=QTY_1,GOTO = START_MEAS
        Last edited by BKulpa; 01-10-2020, 09:06 AM. Reason: Clarification of variable

        Comment


        • #8
          Here is the rest of the code.

          Code:
                           PREHIT/2
                            RETRACT/2
          SLRT-T1          =FEAT/CONTACT/EDGE POINT/DEFAULT,CARTESIAN
                            THEO/<-42.2,-179.202,-15.678>,<0.4433198,-0.8963635,0>,<0,0,1>
                            ACTL/<-41.378,-179.356,-16.589>,<0.4433198,-0.8963635,0>,<0,0,1>
                            TARG/<-42.2,-179.202,-15.678>,<0.4433198,-0.8963635,0>,<0,0,1>
                            MEASURE ORDER=SURFACE
                            SHOW FEATURE PARAMETERS=NO
                            SHOW CONTACT PARAMETERS=YES
                              DEPTH=2
                              SAMPLE HITS=1,SPACER=2,INDENT1=2
                              AVOIDANCE MOVE=AFTER,DISTANCE=3
                              ONERROR=NO
          SLRT-T2          =FEAT/CONTACT/EDGE POINT/DEFAULT,CARTESIAN
                            THEO/<-40.016,-178.99,-15.678>,<-0.2617074,-0.9651473,0>,<0,0,1>
                            ACTL/<-39.367,-179.087,-16.636>,<-0.2617074,-0.9651473,0>,<0,0,1>
                            TARG/<-40.016,-178.99,-15.678>,<-0.2617074,-0.9651473,0>,<0,0,1>
                            MEASURE ORDER=SURFACE
                            SHOW FEATURE PARAMETERS=NO
                            SHOW CONTACT PARAMETERS=YES
                              DEPTH=2
                              SAMPLE HITS=1,SPACER=2,INDENT1=2
                              AVOIDANCE MOVE=AFTER,DISTANCE=3
                              ONERROR=NO
          SLRT-T3          =FEAT/CONTACT/EDGE POINT/DEFAULT,CARTESIAN
                            THEO/<-38.21,-180.319,-15.678>,<-0.8441865,-0.5360495,0>,<0,0,1>
                            ACTL/<-37.436,-180.3,-16.687>,<-0.8441865,-0.5360495,0>,<0,0,1>
                            TARG/<-38.21,-180.319,-15.678>,<-0.8441865,-0.5360495,0>,<0,0,1>
                            MEASURE ORDER=SURFACE
                            SHOW FEATURE PARAMETERS=NO
                            SHOW CONTACT PARAMETERS=YES
                              DEPTH=2
                              SAMPLE HITS=1,SPACER=2,INDENT1=2
                              AVOIDANCE MOVE=AFTER,DISTANCE=3
                              ONERROR=NO
          SLRT-T4          =FEAT/CONTACT/EDGE POINT/DEFAULT,CARTESIAN
                            THEO/<-38.03,-181.835,-15.678>,<-0.9467112,0.3220836,0>,<0,0,1>
                            ACTL/<-37.067,-181.883,-16.711>,<-0.9467112,0.3220836,0>,<0,0,1>
                            TARG/<-38.03,-181.835,-15.678>,<-0.9467112,0.3220836,0>,<0,0,1>
                            MEASURE ORDER=SURFACE
                            SHOW FEATURE PARAMETERS=NO
                            SHOW CONTACT PARAMETERS=YES
                              DEPTH=2
                              SAMPLE HITS=1,SPACER=2,INDENT1=2
                              AVOIDANCE MOVE=AFTER,DISTANCE=3
                              ONERROR=NO
          SLRT-T5          =FEAT/CONTACT/EDGE POINT/DEFAULT,CARTESIAN
                            THEO/<-38.615,-183.554,-15.678>,<-0.9467112,0.3220836,0>,<0,0,1>
                            ACTL/<-37.674,-183.61,-16.71>,<-0.9467112,0.3220836,0>,<0,0,1>
                            TARG/<-38.615,-183.554,-15.678>,<-0.9467112,0.3220836,0>,<0,0,1>
                            MEASURE ORDER=SURFACE
                            SHOW FEATURE PARAMETERS=NO
                            SHOW CONTACT PARAMETERS=YES
                              DEPTH=2
                              SAMPLE HITS=1,SPACER=2,INDENT1=2
                              AVOIDANCE MOVE=AFTER,DISTANCE=3
                              ONERROR=NO
          SLRT-T6          =FEAT/CONTACT/EDGE POINT/DEFAULT,CARTESIAN
                            THEO/<-39.841,-184.921,-15.678>,<-0.3181419,0.9480431,0>,<0,0,1>
                            ACTL/<-39.078,-185.183,-16.699>,<-0.3181419,0.9480431,0>,<0,0,1>
                            TARG/<-39.841,-184.921,-15.678>,<-0.3181419,0.9480431,0>,<0,0,1>
                            MEASURE ORDER=SURFACE
                            SHOW FEATURE PARAMETERS=NO
                            SHOW CONTACT PARAMETERS=YES
                              DEPTH=2
                              SAMPLE HITS=1,SPACER=2,INDENT1=2
                              AVOIDANCE MOVE=AFTER,DISTANCE=3
                              ONERROR=NO
          SLRT-T7          =FEAT/CONTACT/EDGE POINT/DEFAULT,CARTESIAN
                            THEO/<-42.021,-184.842,-15.678>,<0.3853053,0.9227891,0>,<0,0,1>
                            ACTL/<-41.329,-184.996,-16.645>,<0.3853053,0.9227891,0>,<0,0,1>
                            TARG/<-42.021,-184.842,-15.678>,<0.3853053,0.9227891,0>,<0,0,1>
                            MEASURE ORDER=SURFACE
                            SHOW FEATURE PARAMETERS=NO
                            SHOW CONTACT PARAMETERS=YES
                              DEPTH=2
                              SAMPLE HITS=1,SPACER=2,INDENT1=2
                              AVOIDANCE MOVE=AFTER,DISTANCE=3
                              ONERROR=NO
          SLRT-T8          =FEAT/CONTACT/EDGE POINT/DEFAULT,CARTESIAN
                            THEO/<-43.512,-183.531,-15.678>,<0.8663636,0.4994137,0>,<0,0,1>
                            ACTL/<-42.805,-183.509,-16.599>,<0.8663636,0.4994137,0>,<0,0,1>
                            TARG/<-43.512,-183.531,-15.678>,<0.8663636,0.4994137,0>,<0,0,1>
                            MEASURE ORDER=SURFACE
                            SHOW FEATURE PARAMETERS=NO
                            SHOW CONTACT PARAMETERS=YES
                              DEPTH=2
                              SAMPLE HITS=1,SPACER=2,INDENT1=2
                              AVOIDANCE MOVE=AFTER,DISTANCE=3
                              ONERROR=NO
          SLRT-T9          =FEAT/CONTACT/EDGE POINT/DEFAULT,CARTESIAN
                            THEO/<-43.599,-182.059,-15.678>,<0.9467112,-0.3220836,0>,<0,0,1>
                            ACTL/<-42.755,-182.141,-16.574>,<0.9467112,-0.3220836,0>,<0,0,1>
                            TARG/<-43.599,-182.059,-15.678>,<0.9467112,-0.3220836,0>,<0,0,1>
                            MEASURE ORDER=SURFACE
                            SHOW FEATURE PARAMETERS=NO
                            SHOW CONTACT PARAMETERS=YES
                              DEPTH=2
                              SAMPLE HITS=1,SPACER=2,INDENT1=2
                              AVOIDANCE MOVE=AFTER,DISTANCE=3
                              ONERROR=NO
          SLRT-T10         =FEAT/CONTACT/EDGE POINT/DEFAULT,CARTESIAN
                            THEO/<-43.07,-180.504,-15.678>,<0.9467112,-0.3220836,0>,<0,0,1>
                            ACTL/<-42.205,-180.594,-16.577>,<0.9467112,-0.3220836,0>,<0,0,1>
                            TARG/<-43.07,-180.504,-15.678>,<0.9467112,-0.3220836,0>,<0,0,1>
                            MEASURE ORDER=SURFACE
                            SHOW FEATURE PARAMETERS=NO
                            SHOW CONTACT PARAMETERS=YES
                              DEPTH=2
                              SAMPLE HITS=1,SPACER=2,INDENT1=2
                              AVOIDANCE MOVE=AFTER,DISTANCE=3
                              ONERROR=NO
          PROJ_CIR7        =FEAT/CIRCLE,CARTESIAN,OUT,LEAST_SQR,NO
                            THEO/<-40.826,-181.982,-15.678>,<0,0,1>,6.2
                            ACTL/<-39.965,-182.167,-16.643>,<0,0,1>,6.284
                            CONSTR/CIRCLE,BF,2D,SLRT-T1,SLRT-T2,SLRT-T3,SLRT-T6,SLRT-T7,SLRT-T8,,
                            OUTLIER_REMOVAL/OFF,3
                            FILTER/OFF,UPR=0
          CIR3             =FEAT/CONTACT/CIRCLE/DEFAULT,CARTESIAN,IN,LEAST_SQR
                            THEO/<-40.826,-181.982,-15.678>,<0,0,1>,6.2
                            ACTL/<-39.937,-182.196,-16.646>,<0.013792,-0.0045164,0.9998947>,6.314
                            TARG/<-40.826,-181.982,-15.678>,<0,0,1>
                            START ANG=16.642,END ANG=125.781
                            ANGLE VEC=<1,0,0>
                            DIRECTION=CCW
                            SHOW FEATURE PARAMETERS=NO
                            SHOW CONTACT PARAMETERS=YES
                              NUMHITS=4,DEPTH=2,PITCH=0
                              SAMPLE METHOD=SAMPLE_HITS
                              SAMPLE HITS=3,SPACER=2
                              AVOIDANCE MOVE=AFTER,DISTANCE=3
                              FIND HOLE=DISABLED,ONERROR=NO,READ POS=NO
                            SHOW HITS=NO
          S2-1             =FEAT/CONTACT/SURFACE POINT/DEFAULT,CARTESIAN
                            THEO/<-39.689,-176.108,-15.678>,<0,0,1>
                            ACTL/<-38.973,-176.123,-16.636>,<0,0,1>
                            TARG/<-39.689,-176.108,-15.678>,<0,0,1>
                            SNAP=NO
                            SHOW FEATURE PARAMETERS=NO
                            SHOW CONTACT PARAMETERS=YES
                              SAMPLE METHOD=SAMPLE_HITS
                              SAMPLE HITS=0,SPACER=5
                              AVOIDANCE MOVE=AFTER,DISTANCE=3
                            SHOW HITS=NO
                            CLEARP/ZPLUS,15,ZPLUS,0,OFF
          S2-2             =FEAT/CONTACT/SURFACE POINT/DEFAULT,CARTESIAN
                            THEO/<-35.147,-180.116,-15.678>,<0,0,1>
                            ACTL/<-34.412,-180.076,-16.719>,<0,0,1>
                            TARG/<-35.147,-180.116,-15.678>,<0,0,1>
                            SNAP=NO
                            SHOW FEATURE PARAMETERS=NO
                            SHOW CONTACT PARAMETERS=YES
                              SAMPLE METHOD=SAMPLE_HITS
                              SAMPLE HITS=0,SPACER=5
                              AVOIDANCE MOVE=AFTER,DISTANCE=3
                            SHOW HITS=NO
          S2-3             =FEAT/CONTACT/SURFACE POINT/DEFAULT,CARTESIAN
                            THEO/<-36.432,-185.804,-15.678>,<0,0,1>
                            ACTL/<-35.739,-185.773,-16.73>,<0,0,1>
                            TARG/<-36.432,-185.804,-15.678>,<0,0,1>
                            SNAP=NO
                            SHOW FEATURE PARAMETERS=NO
                            SHOW CONTACT PARAMETERS=YES
                              SAMPLE METHOD=SAMPLE_HITS
                              SAMPLE HITS=0,SPACER=5
                              AVOIDANCE MOVE=AFTER,DISTANCE=3
                            SHOW HITS=NO
          S2-4             =FEAT/CONTACT/SURFACE POINT/DEFAULT,CARTESIAN
                            THEO/<-42.733,-187.865,-15.678>,<0,0,1>
                            ACTL/<-42.06,-187.838,-16.665>,<0,0,1>
                            TARG/<-42.733,-187.865,-15.678>,<0,0,1>
                            SNAP=NO
                            SHOW FEATURE PARAMETERS=NO
                            SHOW CONTACT PARAMETERS=YES
                              SAMPLE METHOD=SAMPLE_HITS
                              SAMPLE HITS=0,SPACER=5
                              AVOIDANCE MOVE=AFTER,DISTANCE=3
                            SHOW HITS=NO

          Comment


          • #9
            Code:
            s2-4             =feat/contact/surface point/default,cartesian
                              theo/<-42.733,-187.865,-15.678>,<0,0,1>
                              actl/<-42.06,-187.838,-16.665>,<0,0,1>
                              targ/<-42.733,-187.865,-15.678>,<0,0,1>
                              snap=no
                              show feature parameters=no
                              show contact parameters=yes
                                sample method=sample_hits
                                sample hits=0,spacer=5
                                avoidance move=after,distance=3
                              show hits=no
            s2-5             =feat/contact/surface point/default,cartesian
                              theo/<-46.623,-183.373,-15.678>,<0,0,1>
                              actl/<-45.946,-183.391,-16.572>,<0,0,1>
                              targ/<-46.623,-183.373,-15.678>,<0,0,1>
                              snap=no
                              show feature parameters=no
                              show contact parameters=yes
                                sample method=sample_hits
                                sample hits=0,spacer=5
                                avoidance move=after,distance=3
                              show hits=no
            s2-6             =feat/contact/surface point/default,cartesian
                              theo/<-44.975,-176.459,-15.678>,<0,0,1>
                              actl/<-44.261,-176.447,-16.564>,<0,0,1>
                              targ/<-44.975,-176.459,-15.678>,<0,0,1>
                              snap=no
                              show feature parameters=no
                              show contact parameters=yes
                                sample method=sample_hits
                                sample hits=0,spacer=5
                                avoidance move=after,distance=3
                              show hits=no
                              move/clearplane
                              comment/rept,
                              [item 1,d,,--datum-b--]
                              =======================

            Comment


            • #10
              Code:
                    DIM ITEM 1= LOCATION OF CIRCLE DATUM B  UNITS=MM ,$
                    GRAPH=OFF  TEXT=OFF  MULT=10.00  OUTPUT=BOTH  HALF ANGLE=NO
                    AX    NOMINAL       +TOL       -TOL       MEAS        DEV     OUTTOL        MAX        MIN
                    D        6.670      0.050      0.050      6.702      0.032      0.000      6.713      6.692 -------#-
                    END OF DIMENSION ITEM 1
                                COMMENT/REPT,
                                [ITEM 2,WF,,--DATUM C--]
                                [ITEM 3,LF,,]
                                [ITEM 4,TP,,POS|0.3m|A|B|C|]
                                [ITEM 5,X]
                                ===========================
                    DIM ITEM 2,3,4,5= POSITION OF SLOT DATUM C  UNITS=MM ,$
                    GRAPH=OFF  TEXT=OFF  MULT=10.00  OUTPUT=BOTH  FIT TO DATUMS=ON  DEV PERPEN CENTERLINE=OFF  DISPLAY=DIAMETER
                    AX    NOMINAL       +TOL       -TOL      BONUS       MEAS        DEV     OUTTOL
                    X      21.035                                      21.769      0.734           
                    LF      7.670      0.100      0.100      0.191      7.761      0.091      0.000 --------#
                    WF      6.670      0.050      0.050      0.076      6.701      0.031      0.000 -------#-
                    TP        MMC      0.300                 0.076      1.469      1.469      1.093 -------->
                    END OF DIMENSION ITEM 2,3,4,5
                                COMMENT/REPT,
                                [ITEM 9,M,,LN PROF|0.5|A|B|C| LINE PROFILE]
                                ==============================================
              SLOT_ITEM 9-10      =FEAT/SET,CARTESIAN
                                THEO/<-40.911,-181.976,-15.678>,<0,0,1>
                                ACTL/<-40.109,-182.066,-16.643>,<0,0,1>
                                CONSTR/SET,BASIC,SLRT-T1,SLRT-T2,SLRT-T3,SLRT-T4,SLRT-T5,SLRT-T6,SLRT-T7,SLRT-T8,SLRT-T9,SLRT-T10,,
                    DIM ITEM 9= PROFILE OF LINE OF SET SLOT_ITEM 9-10    FORMANDLOCATION  UNITS=MM ,$
                    GRAPH=OFF  TEXT=OFF  MULT=10.00  ARROWDENSITY=100  OUTPUT=BOTH
                    AX    NOMINAL       +TOL       -TOL       MEAS        DEV     OUTTOL        MAX        MIN
                    M        0.000      0.250      0.250      1.775      1.775      1.275      0.848     -0.927 <---|--->
                    DIM ITEM 10= PROFILE OF LINE OF SET SLOT_ITEM 9-10    FORMONLY LEAST_SQR ABOUT ZPLUS  UNITS=MM ,$
                    GRAPH=OFF  TEXT=OFF  MULT=10.00  ARROWDENSITY=100  OUTPUT=BOTH
                    AX    NOMINAL       +TOL       -TOL       MEAS        DEV     OUTTOL        MAX        MIN
                    M        0.000      0.100      0.000      1.775      1.775      1.675      0.848     -0.927 <---|--->
                                COMMENT/REPT,
                                POINTS
                                ======
                    DIM LN_PROF-SLRT-T1= PROFILE OF LINE OF POINT SLRT-T1    FORMANDLOCATION  UNITS=MM ,$
                    GRAPH=OFF  TEXT=OFF  MULT=10.00  ARROWDENSITY=100  OUTPUT=BOTH
                    AX    NOMINAL       +TOL       -TOL       MEAS        DEV     OUTTOL        MAX        MIN
                    M        0.000      0.250      0.250      0.502      0.502      0.252      0.502      0.502 ----|--->
                    DIM LN_PROF-SLRT-T2= PROFILE OF LINE OF POINT SLRT-T2    FORMANDLOCATION  UNITS=MM ,$
                    GRAPH=OFF  TEXT=OFF  MULT=10.00  ARROWDENSITY=100  OUTPUT=BOTH
                    AX    NOMINAL       +TOL       -TOL       MEAS        DEV     OUTTOL        MAX        MIN
                    M        0.000      0.250      0.250     -0.076     -0.076      0.000     -0.076     -0.076 ---#|----
                    DIM LN_PROF-SLRT-T3= PROFILE OF LINE OF POINT SLRT-T3    FORMANDLOCATION  UNITS=MM ,$
                    GRAPH=OFF  TEXT=OFF  MULT=10.00  ARROWDENSITY=100  OUTPUT=BOTH
                    AX    NOMINAL       +TOL       -TOL       MEAS        DEV     OUTTOL        MAX        MIN
                    M        0.000      0.250      0.250     -0.663     -0.663      0.413     -0.663     -0.663 <---|----
                    DIM LN_PROF-SLRT-T4= PROFILE OF LINE OF POINT SLRT-T4    FORMANDLOCATION  UNITS=MM ,$
                    GRAPH=OFF  TEXT=OFF  MULT=10.00  ARROWDENSITY=100  OUTPUT=BOTH
                    AX    NOMINAL       +TOL       -TOL       MEAS        DEV     OUTTOL        MAX        MIN
                    M        0.000      0.250      0.250     -0.927     -0.927      0.677     -0.927     -0.927 <---|----
                    DIM LN_PROF-SLRT-T5= PROFILE OF LINE OF POINT SLRT-T5    FORMANDLOCATION  UNITS=MM ,$
                    GRAPH=OFF  TEXT=OFF  MULT=10.00  ARROWDENSITY=100  OUTPUT=BOTH
                    AX    NOMINAL       +TOL       -TOL       MEAS        DEV     OUTTOL        MAX        MIN
                    M        0.000      0.250      0.250     -0.909     -0.909      0.659     -0.909     -0.909 <---|----
                    DIM LN_PROF-SLRT-T6= PROFILE OF LINE OF POINT SLRT-T6    FORMANDLOCATION  UNITS=MM ,$
                    GRAPH=OFF  TEXT=OFF  MULT=10.00  ARROWDENSITY=100  OUTPUT=BOTH
                    AX    NOMINAL       +TOL       -TOL       MEAS        DEV     OUTTOL        MAX        MIN
                    M        0.000      0.250      0.250     -0.491     -0.491      0.241     -0.491     -0.491 <---|----
                    DIM LN_PROF-SLRT-T7= PROFILE OF LINE OF POINT SLRT-T7    FORMANDLOCATION  UNITS=MM ,$
                    GRAPH=OFF  TEXT=OFF  MULT=10.00  ARROWDENSITY=100  OUTPUT=BOTH
                    AX    NOMINAL       +TOL       -TOL       MEAS        DEV     OUTTOL        MAX        MIN
                    M        0.000      0.250      0.250      0.124      0.124      0.000      0.124      0.124 ----|-#--
                    DIM LN_PROF-SLRT-T8= PROFILE OF LINE OF POINT SLRT-T8    FORMANDLOCATION  UNITS=MM ,$
                    GRAPH=OFF  TEXT=OFF  MULT=10.00  ARROWDENSITY=100  OUTPUT=BOTH
                    AX    NOMINAL       +TOL       -TOL       MEAS        DEV     OUTTOL        MAX        MIN
                    M        0.000      0.250      0.250      0.624      0.624      0.374      0.624      0.624 ----|--->
                    DIM LN_PROF-SLRT-T9= PROFILE OF LINE OF POINT SLRT-T9    FORMANDLOCATION  UNITS=MM ,$
                    GRAPH=OFF  TEXT=OFF  MULT=10.00  ARROWDENSITY=100  OUTPUT=BOTH
                    AX    NOMINAL       +TOL       -TOL       MEAS        DEV     OUTTOL        MAX        MIN
                    M        0.000      0.250      0.250      0.826      0.826      0.576      0.826      0.826 ----|--->
                    DIM LN_PROF-SLRT-T10= PROFILE OF LINE OF POINT SLRT-T10    FORMANDLOCATION  UNITS=MM ,$
                    GRAPH=OFF  TEXT=OFF  MULT=10.00  ARROWDENSITY=100  OUTPUT=BOTH
                    AX    NOMINAL       +TOL       -TOL       MEAS        DEV     OUTTOL        MAX        MIN
                    M        0.000      0.250      0.250      0.848      0.848      0.598      0.848      0.848 ----|--->
                                COMMENT/REPT,
                                [ITEM 10,M,,LN PROF|0.1|]
                                =========================
                                COMMENT/REPT,
                                [ITEM 16,M,,SURF PROF|0.7|A|B|C| SURFACE PROFILE]
                                ================================================

              Comment


              • #11
                Code:
                SURF_ITEM 16-17      =FEAT/SET,CARTESIAN
                                  THEO/<-40.933,-181.621,-15.678>,<0,0,1>
                                  ACTL/<-40.232,-181.608,-16.648>,<0,0,1>
                                  CONSTR/SET,BASIC,S2-1,S2-2,S2-3,S2-4,S2-5,S2-6,,
                      DIM ITEM 16= PROFILE OF SURFACE OF SET SURF_ITEM 16-17    FORMANDLOCATION  UNITS=MM ,$
                      GRAPH=OFF  TEXT=OFF  MULT=10.00  ARROWDENSITY=100  OUTPUT=BOTH
                      AX    NOMINAL       +TOL       -TOL       MEAS        DEV     OUTTOL        MAX        MIN
                      M        0.000      0.350      0.350      1.052      1.052      0.702     -0.887     -1.052 <---|----
                                  COMMENT/REPT,
                                  POINTS
                                  ======
                      DIM SURF_PROF_S2-1= PROFILE OF SURFACE OF POINT S2-1    FORMANDLOCATION  UNITS=MM ,$
                      GRAPH=OFF  TEXT=OFF  MULT=10.00  ARROWDENSITY=100  OUTPUT=BOTH
                      AX    NOMINAL       +TOL       -TOL       MEAS        DEV     OUTTOL        MAX        MIN
                      M        0.000      0.350      0.350     -0.959     -0.959      0.609     -0.959     -0.959 <---|----
                      DIM SURF_PROF_S2-2= PROFILE OF SURFACE OF POINT S2-2    FORMANDLOCATION  UNITS=MM ,$
                      GRAPH=OFF  TEXT=OFF  MULT=10.00  ARROWDENSITY=100  OUTPUT=BOTH
                      AX    NOMINAL       +TOL       -TOL       MEAS        DEV     OUTTOL        MAX        MIN
                      M        0.000      0.350      0.350     -1.041     -1.041      0.691     -1.041     -1.041 <---|----
                      DIM SURF_PROF_S2-3= PROFILE OF SURFACE OF POINT S2-3    FORMANDLOCATION  UNITS=MM ,$
                      GRAPH=OFF  TEXT=OFF  MULT=10.00  ARROWDENSITY=100  OUTPUT=BOTH
                      AX    NOMINAL       +TOL       -TOL       MEAS        DEV     OUTTOL        MAX        MIN
                      M        0.000      0.350      0.350     -1.052     -1.052      0.702     -1.052     -1.052 <---|----
                      DIM SURF_PROF_S2-4= PROFILE OF SURFACE OF POINT S2-4    FORMANDLOCATION  UNITS=MM ,$
                      GRAPH=OFF  TEXT=OFF  MULT=10.00  ARROWDENSITY=100  OUTPUT=BOTH
                      AX    NOMINAL       +TOL       -TOL       MEAS        DEV     OUTTOL        MAX        MIN
                      M        0.000      0.350      0.350     -0.988     -0.988      0.638     -0.988     -0.988 <---|----
                      DIM SURF_PROF_S2-5= PROFILE OF SURFACE OF POINT S2-5    FORMANDLOCATION  UNITS=MM ,$
                      GRAPH=OFF  TEXT=OFF  MULT=10.00  ARROWDENSITY=100  OUTPUT=BOTH
                      AX    NOMINAL       +TOL       -TOL       MEAS        DEV     OUTTOL        MAX        MIN
                      M        0.000      0.350      0.350     -0.895     -0.895      0.545     -0.895     -0.895 <---|----
                      DIM SURF_PROF_S2-6= PROFILE OF SURFACE OF POINT S2-6    FORMANDLOCATION  UNITS=MM ,$
                      GRAPH=OFF  TEXT=OFF  MULT=10.00  ARROWDENSITY=100  OUTPUT=BOTH
                      AX    NOMINAL       +TOL       -TOL       MEAS        DEV     OUTTOL        MAX        MIN
                      M        0.000      0.350      0.350     -0.887     -0.887      0.537     -0.887     -0.887 <---|----
                PLN3             =FEAT/PLANE,CARTESIAN,TRIANGLE,NO
                                  THEO/<-40.933,-181.621,-15.678>,<0,0,1>
                                  ACTL/<-40.232,-181.608,-16.648>,<0.0138316,-0.0056672,0.9998883>
                                  CONSTR/PLANE,BF,S2-1,S2-2,S2-3,S2-4,S2-5,S2-6,,
                                  OUTLIER_REMOVAL/OFF,3
                                  FILTER/OFF,WAVELENGTH=0
                                  COMMENT/REPT,
                
                                  [ITEM 17,M,,FLAT|0.2|ON EMBOSS ONLY]
                                  ====================================
                      DIM ITEM 17= FLATNESS OF PLANE PLN3  UNITS=MM ,$
                      GRAPH=OFF  TEXT=OFF  MULT=10.00  ARROWDENSITY=100  OUTPUT=BOTH
                      AX    NOMINAL       +TOL       -TOL       MEAS        DEV     OUTTOL        MAX        MIN
                      M        0.000      0.200      0.000      0.014      0.014      0.000      0.007     -0.007 #--------
                PLN3             =FEAT/PLANE,CARTESIAN,TRIANGLE,NO
                                  THEO/<-40.933,-181.621,-15.678>,<0,0,1>
                                  ACTL/<-40.232,-181.608,-16.648>,<0.0138316,-0.0056672,0.9998883>
                                  CONSTR/PLANE,BF,S2-1,S2-2,S2-3,S2-4,S2-5,S2-6,,
                                  OUTLIER_REMOVAL/OFF,3
                                  FILTER/OFF,WAVELENGTH=0
                                  COMMENT/REPT,
                                  [ITEM 30,M]
                                  ===========
                
                
                                  STATS/TRANSFER,DIRECTORY=C:\USERS\PUBLIC\DOCUMENTS\WAI\DATAPAGE+\FORSTATSFILES
                                  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=INDEX,FILENAME=,$
                                    REPORT_THEORETICALS=NONE,REPORT_FEATURE_WITH_DIMENSIONS=NO,$
                                    TO_EXCEL_OUTPUT=OFF,
                                    PREVIOUS_RUNS=DELETE_INSTANCES
                                  COMMENT/REPT,
                                  [ITEM 31,ME w. micrometer]
                                  ==========================
                
                                  RECALL/ALIGNMENT,INTERNAL,A1
                                  MOVE/POINT,NORMAL,<-45.436,103.006,53.461>
                                LOOP/END
                                MOVE/POINT,NORMAL,<-38.379,-429.446,286.069>
                              LOOP/END

                Comment


                • #12
                  If you run Offset LOOPs and you want to make any changes to points or any other features. You have to run 1 Part Only OFFLINE, to set everything back to 0,0,0, if you start making changes lets say on the third part, everything is offset in the third position. If you're adding move points at different times say after the second run, then it will be set according to that offset second run. Any editing for LOOPs require everything be set back to Zero. I notice that even that last move point, if that is MM it still converts to 11.2626 IN "Z" 16.907 IN "Y" That is one big OFFSET. You also RECALL alignment A1 at the end which is an alignment outside the LOOP. I don't understand why people continue to put Alignments right before the end of the LOOP, when it does not carry it back to the beginning of the LOOP.
                  (In Memory of my Loving wife, "Ronda" who I lost March 7, 2016. I love you baby.)
                  They say "Nobody's Perfect." I must be Nobody.

                  Comment


                  • plopperzz
                    plopperzz commented
                    Editing a comment
                    I learned that loop from old programs here at work (I've only been doing this for three months now). I often wondered about that last alignment, and I always have those move points initially set to RELEARN so i can make the probe stop approximately where it needs to be to start the new part in order to avoid possible collisions.

                • #13
                  Here is an example from the Help files when you set a rotation in the LOOP (Same goes for OFFSETS). That's why there is no need to put an alignment in the end, doesn't do anything.

                  Capture.JPG
                  (In Memory of my Loving wife, "Ronda" who I lost March 7, 2016. I love you baby.)
                  They say "Nobody's Perfect." I must be Nobody.

                  Comment

                  Related Topics

                  Collapse

                  • JBELL
                    Another Loop Question
                    by JBELL
                    I have searched with no luck for an answer. I am very new to looping and have some questions. Right now, I am doing a Man align then loop commands then...
                    11-04-2015, 03:58 PM
                  • louisd
                    Loopity loopy loops
                    by louisd
                    I'm trying to optimize path of a routine that measures anywhere from 1 to 4 parts set on a fixture (variable QTY.INPUT). Fixture positions are spaced...
                    10-10-2018, 05:49 PM
                  • B. Jacobs
                    Looping Question
                    by B. Jacobs
                    I have three parts that I am running in a loop. I have a question that ya'll may be able to answer for me.
                    By the time my loop gets to the third...
                    09-13-2006, 03:13 PM
                  • Caemgen
                    Loop XACT error
                    by Caemgen
                    Version 2012 Release.

                    I ran a program, no problems.

                    I wanted to run it Friday night after I left, so I looped five times...
                    07-13-2015, 08:02 PM
                  • granpagus
                    Looping With A Twist
                    by granpagus
                    My boss unilaterally designed this fixture … for 13 pc sample. Parts are aprox 4.3X4.3 inch.
                    My plan – start by selecting 1 or 6 parts. Read...
                    02-29-2016, 07:52 PM
                  Working...
                  X