PCDMIS hangs up during execution

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

  • PCDMIS hangs up during execution

    Micro Excel PFX 4-5-4
    Sharpe 32
    Pcdmis V3.2063

    I have a problem that I have seen some time ago. I used to have operators tell me the CMM is just "hanging there". I do not know why but I attributed it to the fact that someone (don't ask why, I am not sure why operators do half of the stuff they do) closed the graphics window. As soon as PCDMIS got to the first feature after a complete alignment (level, rotate, translate) it would stop. There would be no error, no message in the execute options dialog box, nothing. It would behave just as the operator said, it would "hang there". This always happened when the graphics screen was closed regardless of the program being run. Showing the graphics screen (File, Graphics screen) always fixed this. My problem now is I have written a front end program with VB.net that automates PCDMIS and the problem has come back up. When I run a program through my front end it hangs up at exactly the spot where it would if the graphics window were closed. I have an administrator setting in my front end that sets PCDMIs's .show property to true. When PCDMIS is showing I do not have this problem but the whole reason I wrote the front end was to keep every one's grubby little mits off of PCDMIS so I'd rather not even show it. Has anyone experienced this? Is there anything I could be doing program wise that would cause this? I am going to try a few things but if anyone out there has any info for me it would be a big help, I worked long and hard on a slick front end so I'd hate to not be able to get past this.

    thanks,

    Craig
    <internet bumper sticker goes here>

  • #2
    Sounds like a common problem I have seen, it hangs at the first tip change after it finishes an alignment. All you have to do is click on STOP in the little execute window, then continue. I have what might be a work-around fix for you (depends on how you have written your programs), insert a move/point after the alignment, I usually use an increment move point of 0,0,1 and it will usually get past the hang.
    sigpic
    Originally posted by AndersI
    I've got one from September 2006 (bug ticket) which has finally been fixed in 2013.

    Comment


    • #3
      I know it is a little archaic, but can you insert into your front end---on error resume---??
      Kev
      RFS Means Really Fussy Stuff

      When all you have is a hammer - everything looks like a nail....
      sigpic

      Comment


      • #4
        More info

        OK I guess I was not totally accurate in describing my problem. I have 3.2063 MR3 (although this happens on all MRs), this problem happens on 3 different machines 2 4-5-4s with FB2 controls and a 7-10-7 with a Shape 32. If the graphics screen is minimized (I said closed before, sorry) then at a certain point in a program the CMM will stop and PCDMIS just sits in limbo, it does not throw an error or show anything in the execute options dialog. I will run a couple of programs this way and see if it is always a certain line number in the program code where this happens or not (at this time I can’t confirm it is the same line number regardless of the program but I can say it happens no matter what program I run). It is not hanging up at a tip rotation as there is no tip rotations here other than the tip defined at the beginning of the program. Clicking anything on the execute options dialog box (other than cancel) does nothing. This is the behavior if I run a program with the program running with the graphics screen minimized. I am having another guy run a CMM at his plant (he has 3.2063 no MRs) to emulate this and he is going to get back to me. At this point when I run a program through my front end it behaves exactly as it would if PCDMIS were running with the graphics screen minimized. I added an administrator option to my front end that sets PcdmisApp.visible = True (PcdmisApp is my variable containing the pcdmis application object) so that pcdmis will be visible during execution. When PCDMIS is visible then there is no problem the program runs complete. I can not use an “on error” line in my front end because no error is thrown. I guess I am looking for someone that has had the same problem as the one I get when the graphics screen is minimized and how do you get around it (move increment did not work either).

        Here is a clip of CMM code where I have the problem:

        C1 =COMMENT/YESNO,POSITION THE PROBE AS SHOWN IN
        ,THE SET UP INSTRUCTIONS AND CLICK
        ,YES TO INSPECT
        ,
        ,CLICK NO IF YOU WOULD LIKE TO SEE
        ,THE SET UP INSTRUCTIONS NOW
        IF/C1.INPUT=="NO"
        CS1 =REPORT/FILENAME= C:\PCDMISW\REPORTS\646323028D.RPT, AUTOPRINT=NO
        PARAM/=
        ENDREPORT/
        COMMENT/OPER,POSITION THE PROBE AS SHOWN IN
        ,THE SET UP INSTRUCTINS AND CLICK
        ,OK TO INSPECT
        END_IF/
        LOC_PNT1 =FEAT/POINT,RECT
        THEO/5.5438,7.2509,-20.2476,0,0,1
        ACTL/1.5688,4.3485,-7.2131,0,0,1
        READPOINT/
        AL_FIND1 =ALIGNMENT/START,RECALL:, LIST= YES
        ALIGNMENT/TRANS,XAXIS,LOC_PNT1
        ALIGNMENT/TRANS,YAXIS,LOC_PNT1
        ALIGNMENT/TRANS,ZAXIS,LOC_PNT1
        ALIGNMENT/END
        MODE/DCC
        LOC_DIA1 =FEAT/CIRCLE,RECT,IN,LEAST_SQR
        THEO/0,0,0,0,0,1,0.343
        ACTL/-0.1037,0.0344,0.0001,0,0,1,0.3795
        MEAS/CIRCLE,3,WORKPLANE
        HIT/BASIC,0.1715,0,0,-1,0,0,0.0769,-0.024,0
        HIT/BASIC,-0.0857,0.1485,0,0.5,-0.8660254,0,-0.0686,0.2209,0.0001
        HIT/BASIC,-0.0857,-0.1485,0,0.5,0.8660254,0,0.0258,-0.1044,0.0002
        ENDMEAS/
        MOVE/POINT,0,0,0.3
        LOC_PNT2 =FEAT/POINT,RECT
        THEO/0.4,0,0.1,0,0,1
        ACTL/0.4004,-0.0004,0.2194,0,0,1
        MEAS/POINT,1
        HIT/BASIC,0.4,0,0.1,0,0,1,0.4004,-0.0004,0.2194
        ENDMEAS/
        AL_FIND2 =ALIGNMENT/START,RECALL:AL_FIND1, LIST= YES
        ALIGNMENT/TRANS,ZAXIS,LOC_PNT2
        ALIGNMENT/END
        MOVE/POINT,0.4,0,0.8
        MOVE/POINT,0.25,-3.85,0.8
        PREHIT/ 0.2
        RETRACT/ 0.2
        LOC_DIA2 =FEAT/CIRCLE,RECT,IN,LEAST_SQR
        THEO/0,-4.35,-0.1,0,0,-1,2.06
        ACTL/0.0372,-4.2995,-0.0989,0,0,1,1.7932
        MEAS/CIRCLE,3,WORKPLANE
        HIT/BASIC,0.515,-3.458,-0.1,-0.5,-0.8660254,0,0.4791,-3.5194,-0.0989
        HIT/BASIC,-1.03,-4.35,-0.1,1,0,0,-0.8578,-4.3534,-0.099
        HIT/BASIC,0.515,-5.242,-0.1,-0.5,0.8660254,0,0.4299,-5.1055,-0.0989
        ENDMEAS/
        FIND_CL =FEAT/LINE,RECT,UNBND
        THEO/0,-4.35,0.5,0,1,0
        ACTL/0.0372,-4.2995,-0.0989,-0.0324934,0.999472,0
        CONSTR/LINE,BF,2D,LOC_DIA2,LOC_DIA1,,
        ALFIND3 =ALIGNMENT/START,RECALL:AL_FIND2, LIST= YES
        ALIGNMENT/ROTATE,YPLUS,TO,FIND_CL,ABOUT,ZPLUS
        ALIGNMENT/TRANS,XAXIS,LOC_DIA2
        ALIGNMENT/TRANS,YAXIS,LOC_DIA2
        ALIGNMENT/END
        MOVE/POINT,0.44,-0.65,0.8
        MOVESPEED/ 90
        PREHIT/ 0.07
        RETRACT/ 0.07
        MOVE/POINT,3,-3,0.8
        ZPOS =VIEWSET/
        RECALL/VIEWSET,ZPOS

        *****PCDMIS stops when it reaches this feature below (DTM_B)*****

        DTM_B =FEAT/PLANE,RECT
        THEO/0,0,0,0,0,1
        ACTL/0.3567,5.4223,1.0557,-0.0021159,-0.003529,0.9999915
        MEAS/PLANE,4
        HIT/BASIC,3,-3,0,0,0,1,3.2596,2.3297,1.0231
        MOVE/POINT,3,-3,0.35
        MOVE/POINT,-3,-3,0.35
        HIT/BASIC,-3,-3,0,0,0,1,-2.7367,2.5197,1.0666
        MOVE/POINT,-3,-3,0.35
        MOVE/POINT,-3,3,0.35
        HIT/BASIC,-3,3,0,0,0,1,-2.5459,8.5144,1.0326
        MOVE/POINT,-3,3,0.35
        MOVE/POINT,3,3,0.35
        HIT/BASIC,3,3,0,0,0,1,3.4495,8.325,1.1002
        ENDMEAS/

        here is my front end code for automating PCDMIS if it makes a diference:

        'clean up previous cmm results by deleting the .rtf file
        RtfResults.Text = ""
        mainTabs.SelectedTab = tabResults
        'create a reference to the pcdmis application
        PcdmisApp = CType(CreateObject("PCDLRN.Application"), PCDLRN.Application)
        'create reference to cmm programs
        CmmPrograms = PcdmisApp.PartPrograms

        If File.Exists(AppSettings(2)) Then
        File.Delete(AppSettings(2))
        End If

        'if a part number is selected we will allow execution of the cmm program
        'the main form will be disabled until cmm execution is complete
        'if a part number is not selected the user will get a message box "error"

        If strPartNumber <> "" Then
        'concatenate cmm program file extension(.prg) to part number for exection
        Dim strProgId As String = AppSettings(0) & "\" & strPartNumber & ".prg"
        'disable this form while the cmm runs
        Me.Enabled = False
        'pcdmisapp.visible, yes then pcdmis will show itself to the operator
        If AppSettings(3) = "yes" Then
        'set PCDMIS active (make PCDMIS on top) and maximize it
        PcdmisApp.Visible = True
        PcdmisApp.SetActive()
        PcdmisApp.Maximize()
        End If
        CmmProgram = CmmPrograms.Open(strProgId, "cmm1")
        CmmProgram.EXECUTE()
        CmmProgram.Close()
        PcdmisApp.Quit()
        Thread.CurrentThread.Sleep(5000) 'HACK debug message box. remove for deployment
        'enable this form after cmm exectution is complete
        Me.Enabled = True
        'get the cmm data once the cmm program execution is complete
        GetCmmData()

        'here is your "error handler" for when no part number is selected
        Else
        MsgBox("You must select a part number to inspect")
        End If


        Sorry about any confusion

        Craig
        <internet bumper sticker goes here>

        Comment


        • #5
          Should have read your header when I posted, sorry. The increment move 'fixes' the bug that was added when B&S/Hexagon added the ability to have the machine MOVE while changing the tip rotation (VERY SCARY, if you ask me) but it is only applicable to certain controllers (NOT MINE!) and it crept into all versions/controllers at that time.
          sigpic
          Originally posted by AndersI
          I've got one from September 2006 (bug ticket) which has finally been fixed in 2013.

          Comment


          • #6
            think it's affected by the recalling of the viewset, which may not be possible
            if the graphic window is minimized.
            Try to delete that line (and perhaps also the creation of the viewset, 1 line above) and see if the problem consists.

            Comment


            • #7
              Solved

              Thank you Bitsandmore,

              That solved it. It was never a problem when running PCDMIS I just told the operators to have the graphics screen maximixed at all times. Running a front end poses a new problem though. I guess we will have to keep in mind not to create viewsets when programs will be executed through front end applications.

              Thanks all

              Craig
              <internet bumper sticker goes here>

              Comment


              • #8
                Good to know. Thanks!
                RFS Means Really Fussy Stuff

                When all you have is a hammer - everything looks like a nail....
                sigpic

                Comment

                Related Topics

                Collapse

                Working...
                X