Tip changes with flow controls

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

  • Tip changes with flow controls

    Having to write a program that will skip certain pieces of the program under certain conditions. My question is, will the tip changes in the skipped pieces be skipped also?...or will the demon still demand their execution?

    I know that it's funny about it's tip change code... I have thought about using only move/all commands to attempt to "hide" the tip changes from the demon's gaze.

    Not sure if that will work...
    Negative, Ghostrider...the pattern is full...

  • #2
    F1 Help, look up definition of F5 Checkbox "Reset Global Settings When Branching"

    Comment


    • #3
      Originally posted by Josh Carpenter View Post
      F1 Help, look up definition of F5 Checkbox "Reset Global Settings When Branching"
      Doesn't quite answer my question, Josh. Thanks for the tip, though.

      The help file doesn't specify whether or not it will execute the tip change...

      "If you select the check box,
      When PC-DMIS reads the GOTO statement, it jumps to MYLABEL. And then it searches up, using the first encountered TIP/ command: TIP/T1A0B0"

      What does it mean "searches up, using the first encountered TIP/ command" ?

      I don't want all of my settings reset either...
      Negative, Ghostrider...the pattern is full...

      Comment


      • #4
        The best way to do this is to write a test program and prove it out for yourself. There are multiple ways you could crash your machine with that type of branching, and a text explanation here will not enlighten you.

        Comment


        • #5
          Originally posted by Rookie View Post
          Doesn't quite answer my question, Josh. Thanks for the tip, though.

          The help file doesn't specify whether or not it will execute the tip change...

          "If you select the check box,
          When PC-DMIS reads the GOTO statement, it jumps to MYLABEL. And then it searches up, using the first encountered TIP/ command: TIP/T1A0B0"

          What does it mean "searches up, using the first encountered TIP/ command" ?

          I don't want all of my settings reset either...
          Think about it:
          1) Using a tip, let's say A0B0. Now Branch -> jump ahead in program to label.
          2) skip over a tip change that's only needed for some measurement also skipped.
          3) Execution resumes at the label. Here A0B0 is to be used.
          Now... do you want PC-DMIS to look up, as in upwards in a scrolling sense, back to the skipped Tip change... and use it? Not in this case. But in some other case you might.

          Does this make it more clearer?

          Comment


          • #6
            Originally posted by Josh Carpenter View Post
            Think about it:
            1) Using a tip, let's say A0B0. Now Branch -> jump ahead in program to label.
            2) skip over a tip change that's only needed for some measurement also skipped.
            3) Execution resumes at the label. Here A0B0 is to be used.
            Now... do you want PC-DMIS to look up, as in upwards in a scrolling sense, back to the skipped Tip change... and use it? Not in this case. But in some other case you might.

            Does this make it more clearer?
            I don't want it to look anywhere but the label that I told it to go to... Why would it look "upwards"?
            Negative, Ghostrider...the pattern is full...

            Comment


            • #7
              Originally posted by Rookie View Post
              I don't want it to look anywhere but the label that I told it to go to... Why would it look "upwards"?
              What Josh is saying is when you are branching, (you) look up the program and make sure you're at the right tip angle. after your label incase you were skipping something with a T1A90B90 and you needed it to go to T1A0B0 just make sure you have a move point so it's clear and the right angle selected for each branch.

              also like previously mentioned no amount of text will get you through this... this will be trial and error
              XYZ_IJK
              pc-dmis 2012 mr1, 2013mr1
              calypso 5.4 sp1

              Comment


              • #8
                Originally posted by Rookie View Post
                Having to write a program that will skip certain pieces of the program under certain conditions. My question is, will the tip changes in the skipped pieces be skipped also?...or will the demon still demand their execution?

                I know that it's funny about it's tip change code... I have thought about using only move/all commands to attempt to "hide" the tip changes from the demon's gaze.

                Not sure if that will work...
                If by 'skipping' you have removed that section of the old program whilst creating a new program.... then no.

                If it is not there in the program it cannot be read. You now have the responsibility to ensure the next 'go to' or ‘measure’ is legal & the rest of the program is smooth in operation without any extra travels.

                If you are using some other means to 'skip' sections of program the responsibility is back with you again to maintain control over the Cmm.
                Poleaxe

                Beware the environment you live in for it will shape you
                Be careful the friends you choose for you will become like them.

                sigpic

                Comment


                • #9
                  TIPA0B0
                  [section of program]
                  TIPA90B0
                  [section of program]
                  conditional condition, if this, do this, if not, do other
                  [this]
                  [section of program]
                  TIPA90B-180
                  [section of program]
                  [other]
                  At this point, it will LOOK UP through the program to see WHAT TIP is active. If it is 'skipping' [this] to get to [other] because of the conditional, then the probe that WAS being used before it 'jumped' was TIP A90B0, but [other] is using TIPA90B-180 because that was the LAST TIP ACTUALLY USED. So, it will instantly change to TIPA90B-180 because that is the 'active' tip for this part of the program, but it just jumped the from TIPA90B0.... what is going to happen?????
                  Last edited by Matthew D. Hoedeman; 02-21-2014, 05:09 PM.
                  sigpic
                  Originally posted by AndersI
                  I've got one from September 2006 (bug ticket) which has finally been fixed in 2013.

                  Comment


                  • #10
                    Tip changes with flow controls

                    Originally posted by Poleaxe View Post
                    If by 'skipping' you have removed that section of the old program whilst creating a new program.... then no.

                    If it is not there in the program it cannot be read. You now have the responsibility to ensure the next 'go to' or ‘measure’ is legal & the rest of the program is smooth in operation without any extra travels.

                    If you are using some other means to 'skip' sections of program the responsibility is back with you again to maintain control over the Cmm.
                    No, I am writing the program so that during a rework or repair situation, the program can execute the reworked sections of the part instead of the whole thing.

                    The data from the hits is stored in a serialized folder created from a script and read back in at the reporting stage.

                    The nonconformances are documented, repaired and re-inspected.

                    Just trying to make sure that it's not going to step on every tip change in the program, guys.😁


                    Thanks
                    Last edited by Rookie; 02-21-2014, 07:52 PM.
                    Negative, Ghostrider...the pattern is full...

                    Comment


                    • #11
                      All of the posts in this thread are correct but I can see how you might still be confused if you haven't tried it yourself. The advice from Chally to write a simple test program and prove the behavior to yourself is the way to go. To sum up what others have already said:

                      If you have "Reset global settings while branching" activated then the program will always use the first tip angle that it finds ABOVE the current position of the cursor. I never leave this setting activated. I understand why it is available and can see that it will speed up programming in a very minor way in some situations but 9 times out of 10 I think it will just cause unexpected behavior.

                      If you uncheck this setting then the program will continue to use the current tip angle until it reads another tip angle command, end of story. This means that you MUST put in a tip angle command at each place in the program that the cursor could possibly jump to in order to be sure that the correct angle is always active. This might make for a few extra lines of code but it won't give you any unexpected surprises.

                      This applies to all "global" settings. See the help file for a list of all settings that will be affected. Common examples are speed settings, distance settings (prehit/retract, etc), format settings, and other such things that remain active throughout the program until explicitly modified.
                      2013MR1 SP6
                      Global Frames, Tesastar-M Heads, LSP-X1M/H Probes

                      Comment


                      • #12
                        Thanks all. I am using for move logic and for tip control. Don't mind the extra code.

                        Thanks everyone for the help


                        Sent from my iPhone using Tapatalk
                        Negative, Ghostrider...the pattern is full...

                        Comment


                        • #13
                          I always have "Reset global settings while branching" UNchecked. I always use conditional logic - my whole part measurement routine is inside a logic block because I run parts on multi-part fixtures and loop to each fixture station based upon how many parts are to be run.
                          I'm pretty sure that I remember this correctly...
                          That a tip that was active in a previous logic block is NOT active in the current logic block.
                          Therefore, if tip needs to be active in a logic block, I need to call that tip in that logic block - before I do any dcc moves or touches.

                          So I'd say, you should call a tip in each logic routine in which a tip will be used (in the context of having "Reset global settings while branching" UNchecked.
                          "It ain't those parts of the Bible that I can't understand that bother me, it is the parts that I do understand." Mark Twain

                          Comment


                          • #14
                            I know this is an old post but my question relates to the topic.

                            I want to uncheck the "reset global settings when branching" box for my current program but another programmer has a program that utilizes this feature. If I uncheck the box for my program will it stay checked for his? Are these settings saved to the computer or just the program?
                            Last edited by ToneLoke; 02-10-2015, 07:48 PM.

                            Comment


                            • #15
                              The setting is global.


                              Sent from my iPhone using Tapatalk
                              Negative, Ghostrider...the pattern is full...

                              Comment

                              Related Topics

                              Collapse

                              Working...
                              X