更新KUKA程序
This commit is contained in:
15
KUKA/KRC/R1/TP/BrakeTest/BrakeTestAxes.dat
Normal file
15
KUKA/KRC/R1/TP/BrakeTest/BrakeTestAxes.dat
Normal file
@@ -0,0 +1,15 @@
|
||||
&ACCESS RVO
|
||||
&REL 1
|
||||
&COMMENT BrkTst-main task for unconfigured brake test axes
|
||||
&PARAM EDITMASK = *
|
||||
&PARAM DISKPATH = KRC:\R1\TP\BrakeTest
|
||||
DEFDAT BrakeTestAxes PUBLIC
|
||||
;FOLD EXTERNAL DECLARATIONS;%{PE}%MKUKATPBASIS,%CEXT,%VCOMMON,%P
|
||||
;FOLD BASISTECH EXT;%{PE}%MKUKATPBASIS,%CEXT,%VEXT,%P
|
||||
DECL INT SUCCESS
|
||||
;ENDFOLD (BASISTECH EXT)
|
||||
;FOLD USER EXT;%{E}%MKUKATPUSER,%CEXT,%VEXT,%P
|
||||
;ENDFOLD (USER EXT)
|
||||
;ENDFOLD (EXTERNAL DECLERATIONS)
|
||||
|
||||
ENDDAT
|
||||
30
KUKA/KRC/R1/TP/BrakeTest/BrakeTestAxes.src
Normal file
30
KUKA/KRC/R1/TP/BrakeTest/BrakeTestAxes.src
Normal file
@@ -0,0 +1,30 @@
|
||||
&ACCESS RVO
|
||||
&REL 1
|
||||
&COMMENT BrkTst-main task for unconfigured brake test axes
|
||||
&PARAM EDITMASK = *
|
||||
&PARAM DISKPATH = KRC:\R1\TP\BrakeTest
|
||||
DEF BRAKETESTAXES(AxesBitMask: IN)
|
||||
;BRAKETESTAXES(AxesBitMask: IN)
|
||||
;examples for parameter AxesBitMask
|
||||
;no parameter or -1 means all configured axes
|
||||
;'b00000000000011' means axis 1 and 2
|
||||
;'b10000000000001' means axis 1 and 12
|
||||
;'b11000000000000' means axis 11 and 12
|
||||
;FOLD {H}
|
||||
INT AxesBitMask
|
||||
|
||||
ON_ERROR_PROCEED
|
||||
AxesBitMask=AxesBitMask*1
|
||||
|
||||
IF ($ERR.Number<>0) THEN
|
||||
AxesBitMask=-1
|
||||
ERR_CLEAR($ERR)
|
||||
ELSE
|
||||
ERR_RAISE($ERR)
|
||||
ENDIF
|
||||
|
||||
gBraketestForce=true
|
||||
BRAKETESTREQ(AxesBitMask)
|
||||
gBraketestForce=false
|
||||
;ENDFOLD
|
||||
END
|
||||
17
KUKA/KRC/R1/TP/BrakeTest/BrakeTestBack.dat
Normal file
17
KUKA/KRC/R1/TP/BrakeTest/BrakeTestBack.dat
Normal file
@@ -0,0 +1,17 @@
|
||||
&ACCESS RV
|
||||
&REL 1
|
||||
&COMMENT path after test
|
||||
&PARAM EDITMASK = *
|
||||
&PARAM TEMPLATE = C:\KRC\Roboter\Template\vorgabe
|
||||
DEFDAT BrakeTestBack
|
||||
;FOLD EXTERNAL DECLARATIONS;%{PE}%MKUKATPBASIS,%CEXT,%VCOMMON,%P
|
||||
;FOLD BASISTECH EXT;%{PE}%MKUKATPBASIS,%CEXT,%VEXT,%P
|
||||
EXT BAS (BAS_COMMAND :IN,REAL :IN )
|
||||
DECL INT SUCCESS
|
||||
;ENDFOLD (BASISTECH EXT)
|
||||
;FOLD USER EXT;%{E}%MKUKATPUSER,%CEXT,%VEXT,%P
|
||||
;Make here your modifications
|
||||
|
||||
;ENDFOLD (USER EXT)
|
||||
;ENDFOLD (EXTERNAL DECLERATIONS)
|
||||
ENDDAT
|
||||
19
KUKA/KRC/R1/TP/BrakeTest/BrakeTestBack.src
Normal file
19
KUKA/KRC/R1/TP/BrakeTest/BrakeTestBack.src
Normal file
@@ -0,0 +1,19 @@
|
||||
&ACCESS RV
|
||||
&REL 1
|
||||
&COMMENT path after test
|
||||
&PARAM EDITMASK = *
|
||||
&PARAM TEMPLATE = C:\KRC\Roboter\Template\vorgabe
|
||||
DEF BrakeTestBack( )
|
||||
;FOLD INI
|
||||
;FOLD BASISTECH INI
|
||||
GLOBAL INTERRUPT DECL 3 WHEN $STOPMESS==TRUE DO IR_STOPM ( )
|
||||
INTERRUPT ON 3
|
||||
;ENDFOLD (BASISTECH INI)
|
||||
;FOLD USER INI
|
||||
;Make your modifications here
|
||||
|
||||
;ENDFOLD (USER INI)
|
||||
;ENDFOLD (INI)
|
||||
;Teach here the motion to the position after the brake test.
|
||||
|
||||
END
|
||||
19
KUKA/KRC/R1/TP/BrakeTest/BrakeTestPark.dat
Normal file
19
KUKA/KRC/R1/TP/BrakeTest/BrakeTestPark.dat
Normal file
@@ -0,0 +1,19 @@
|
||||
&ACCESS RV
|
||||
&REL 1
|
||||
&COMMENT parkposition
|
||||
&PARAM EDITMASK = *
|
||||
&PARAM TEMPLATE = C:\KRC\Roboter\Template\vorgabe
|
||||
&PARAM DISKPATH = KRC:\R1\TP\BrakeTest
|
||||
DEFDAT BRAKETESTPARK PUBLIC
|
||||
;FOLD EXTERNAL DECLARATIONS;%{PE}%MKUKATPBASIS,%CEXT,%VCOMMON,%P
|
||||
;FOLD BASISTECH EXT;%{PE}%MKUKATPBASIS,%CEXT,%VEXT,%P
|
||||
EXT BAS (BAS_COMMAND :IN,REAL :IN )
|
||||
DECL INT SUCCESS
|
||||
;ENDFOLD (BASISTECH EXT)
|
||||
;FOLD USER EXT;%{E}%MKUKATPUSER,%CEXT,%VEXT,%P
|
||||
;Make here your modifications
|
||||
;ENDFOLD (USER EXT)
|
||||
;ENDFOLD (EXTERNAL DECLERATIONS)
|
||||
DECL E6AXIS XParkPosition={A1 999.000,A2 999.000,A3 999.000,A4 999.000,A5 999.000,A6 999.000,E1 999.000,E2 999.000,E3 999.000,E4 999.000,E5 999.000,E6 999.000}
|
||||
DECL FDAT FParkPosition={TOOL_NO 1,BASE_NO 0,IPO_FRAME #BASE,POINT2[] " "}
|
||||
ENDDAT
|
||||
35
KUKA/KRC/R1/TP/BrakeTest/BrakeTestPark.src
Normal file
35
KUKA/KRC/R1/TP/BrakeTest/BrakeTestPark.src
Normal file
@@ -0,0 +1,35 @@
|
||||
&ACCESS RV
|
||||
&REL 1
|
||||
&COMMENT parkposition
|
||||
&PARAM EDITMASK = *
|
||||
&PARAM TEMPLATE = C:\KRC\Roboter\Template\vorgabe
|
||||
&PARAM DISKPATH = KRC:\R1\TP\BrakeTest
|
||||
DEF BrakeTestPark( )
|
||||
;FOLD INI
|
||||
;FOLD BASISTECH INI
|
||||
GLOBAL INTERRUPT DECL 3 WHEN $STOPMESS==TRUE DO IR_STOPM ( )
|
||||
INTERRUPT ON 3
|
||||
;ENDFOLD (BASISTECH INI)
|
||||
;FOLD USER INI
|
||||
;Make your modifications here
|
||||
;ENDFOLD (USER INI)
|
||||
;ENDFOLD (INI)
|
||||
;Teach here the motion to the parking position. The parking position is needed when the robot has failed the brake test.
|
||||
;FOLD {h}
|
||||
WHILE ParkPositionInNotValid()
|
||||
MsgDialog(SUCCESS,"ParkPositionIsNotValid",brakeTestMdbName[],,,,,,,"Ok")
|
||||
HALT
|
||||
ENDWHILE
|
||||
;ENDFOLD
|
||||
;FOLD SPTP ParkPosition Vel=10 % DEFAULT Tool[1] Base[0] ;%{PE}
|
||||
;FOLD Parameters ;%{h}
|
||||
;Params IlfProvider=kukaroboter.basistech.inlineforms.movement.spline; Kuka.IsGlobalPoint=False; Kuka.PointName=ParkPosition; Kuka.BlendingEnabled=False; Kuka.MoveDataPtpName=DEFAULT; Kuka.VelocityPtp=10; Kuka.VelocityFieldEnabled=True; Kuka.ColDetectFieldEnabled=True; Kuka.CurrentCDSetIndex=0; Kuka.MovementParameterFieldEnabled=True; IlfCommand=SPTP
|
||||
;ENDFOLD
|
||||
SPTP XParkPosition WITH $VEL_AXIS[1] = SVEL_JOINT(10.0), $TOOL = STOOL2(FParkPosition), $BASE = SBASE(FParkPosition.BASE_NO), $IPO_MODE = SIPO_MODE(FParkPosition.IPO_FRAME), $LOAD = SLOAD(FParkPosition.TOOL_NO), $ACC_AXIS[1] = SACC_JOINT(PDEFAULT), $APO = SAPO_PTP(PDEFAULT), $GEAR_JERK[1] = SGEAR_JERK(PDEFAULT), $COLLMON_TOL_PRO[1] = USE_CM_PRO_VALUES(0)
|
||||
;ENDFOLD
|
||||
END
|
||||
;FOLD {h}
|
||||
Global DEFFCT BOOL ParkPositionInNotValid()
|
||||
RETURN ((XParkPosition.A1 == 999) AND (XParkPosition.A2 == 999) AND (XParkPosition.A3 == 999) AND (XParkPosition.A4 == 999) AND (XParkPosition.A5 == 999) AND (XParkPosition.A6 == 999) AND (XParkPosition.E1 == 999) AND (XParkPosition.E2 == 999) AND (XParkPosition.E3 == 999) AND (XParkPosition.E4 == 999) AND (XParkPosition.E5 == 999) AND (XParkPosition.E6 == 999))
|
||||
ENDFCT
|
||||
;ENDFOLD
|
||||
24
KUKA/KRC/R1/TP/BrakeTest/BrakeTestReq.dat
Normal file
24
KUKA/KRC/R1/TP/BrakeTest/BrakeTestReq.dat
Normal file
@@ -0,0 +1,24 @@
|
||||
&ACCESS RVO
|
||||
&REL 1
|
||||
&COMMENT BrkTst-main task
|
||||
&PARAM EDITMASK = *
|
||||
&PARAM DISKPATH = TP/BrakeTest
|
||||
DEFDAT BRAKETESTREQ PUBLIC
|
||||
;FOLD EXTERNAL DECLARATIONS;%{PE}%MKUKATPBASIS,%CEXT,%VCOMMON,%P
|
||||
;FOLD BASISTECH EXT;%{PE}%MKUKATPBASIS,%CEXT,%VEXT,%P
|
||||
DECL INT SUCCESS
|
||||
;ENDFOLD (BASISTECH EXT)
|
||||
;FOLD USER EXT;%{E}%MKUKATPUSER,%CEXT,%VEXT,%P
|
||||
;ENDFOLD (USER EXT)
|
||||
;ENDFOLD (EXTERNAL DECLERATIONS)
|
||||
|
||||
DECL BRAKE_STATE RobotBrkState
|
||||
GLOBAL CHAR brakeTestMdbName[30]
|
||||
brakeTestMdbName[]="BrkTst"
|
||||
|
||||
GLOBAL INT MaxCountResultUnknown = 10
|
||||
GLOBAL BOOL gBraketestForce=false
|
||||
DECL INT CountResultUnknown = 0
|
||||
|
||||
|
||||
ENDDAT
|
||||
122
KUKA/KRC/R1/TP/BrakeTest/BrakeTestReq.src
Normal file
122
KUKA/KRC/R1/TP/BrakeTest/BrakeTestReq.src
Normal file
@@ -0,0 +1,122 @@
|
||||
&ACCESS RVO
|
||||
&REL 1
|
||||
&COMMENT BrkTst-main task
|
||||
&PARAM EDITMASK = *
|
||||
&PARAM DISKPATH = TP/BrakeTest
|
||||
DEF BRAKETESTREQ(AxesBitMask: IN)
|
||||
;BRAKETESTREQ
|
||||
;fold {h}
|
||||
INT Idx, Key, AxesBitMask
|
||||
BOOL Test_Ende
|
||||
BOOL BraketestForce
|
||||
BraketestForce=false
|
||||
IF gBraketestForce THEN
|
||||
BraketestForce=true
|
||||
ENDIF
|
||||
gBraketestForce=false
|
||||
|
||||
ON_ERROR_PROCEED
|
||||
AxesBitMask=AxesBitMask*1
|
||||
|
||||
IF ($ERR.Number<>0) THEN
|
||||
AxesBitMask=-1
|
||||
ERR_CLEAR($ERR)
|
||||
ELSE
|
||||
ERR_RAISE($ERR)
|
||||
ENDIF
|
||||
|
||||
IF Varstate("$pro_ip.si01.name[]")==#declared THEN ;program selected
|
||||
MsgDialog(Key, "DlgPeformManuallyBrakeTest", brakeTestMdbName[], , "Cancel", "GoToPark", "BTman",,,,,FALSE)
|
||||
SWITCH Key ;dialogue answer
|
||||
|
||||
CASE 5
|
||||
BraketestForce=TRUE
|
||||
|
||||
CASE 6
|
||||
BrakeTestStart()
|
||||
BraketestError()
|
||||
|
||||
CASE 7
|
||||
Return
|
||||
|
||||
DEFAULT
|
||||
Return
|
||||
ENDSWITCH
|
||||
ELSE ;cyclic call
|
||||
IF NOT($BRAKETEST_REQ_INT) AND NOT(BraketestForce) THEN
|
||||
Return
|
||||
ENDIF
|
||||
ENDIF
|
||||
|
||||
Test_Ende=false
|
||||
|
||||
RobotBrkState=#BT_UNTESTED
|
||||
|
||||
BrakeTestStart()
|
||||
|
||||
BAS (#INITMOV,0 )
|
||||
repeat
|
||||
|
||||
PTP $AXIS_ACT
|
||||
|
||||
RobotBrkState = Test_BRAKE(AxesBitMask, BraketestForce)
|
||||
|
||||
SWITCH RobotBrkState
|
||||
|
||||
CASE #BT_WARNING,#BT_EXCESSIVE, #BT_MAXUNKNOWN, #BT_READY
|
||||
CountResultUnknown = 0
|
||||
Test_Ende = TRUE
|
||||
|
||||
CASE #BT_ERROR
|
||||
BraketestError()
|
||||
|
||||
CASE #BT_UNKNOWN
|
||||
Test_Ende = BraketestUnknown()
|
||||
|
||||
CASE #BT_UNTESTED
|
||||
Test_Ende = TRUE
|
||||
|
||||
ENDSWITCH
|
||||
|
||||
until Test_Ende
|
||||
|
||||
BrakeTestBack()
|
||||
|
||||
END
|
||||
|
||||
|
||||
DEF BraketestError()
|
||||
INT Key
|
||||
|
||||
Key = 0
|
||||
MsgDialog(Key, "BT_BRAKE_ERROR", brakeTestMdbName[]," ", "GoToPark",,,,,,,FALSE)
|
||||
|
||||
BrakeTestPark()
|
||||
WAIT FOR TRUE
|
||||
|
||||
repeat
|
||||
MsgNotify("ParkPositionReached", brakeTestMdbName[])
|
||||
halt
|
||||
until false
|
||||
|
||||
END
|
||||
|
||||
|
||||
DEFFCT BOOL BraketestUnknown()
|
||||
INT Key
|
||||
Key=0
|
||||
CountResultUnknown = CountResultUnknown + 1
|
||||
|
||||
IF (CountResultUnknown >= MaxCountResultUnknown) THEN
|
||||
|
||||
MsgDialog(Key, "BT_BRAKE_UNKNOWN", brakeTestMdbName[]," ", "TryAgain", "Cancel",,,,,,FALSE)
|
||||
IF Key==7 then
|
||||
Return FALSE
|
||||
ELSE
|
||||
Return TRUE
|
||||
ENDIF
|
||||
ELSE
|
||||
Return TRUE
|
||||
ENDIF
|
||||
ENDFCT
|
||||
;endfold
|
||||
17
KUKA/KRC/R1/TP/BrakeTest/BrakeTestStart.dat
Normal file
17
KUKA/KRC/R1/TP/BrakeTest/BrakeTestStart.dat
Normal file
@@ -0,0 +1,17 @@
|
||||
&ACCESS RV
|
||||
&REL 1
|
||||
&COMMENT path to test
|
||||
&PARAM EDITMASK = *
|
||||
&PARAM TEMPLATE = C:\KRC\Roboter\Template\vorgabe
|
||||
DEFDAT BrakeTestStart
|
||||
;FOLD EXTERNAL DECLARATIONS;%{PE}%MKUKATPBASIS,%CEXT,%VCOMMON,%P
|
||||
;FOLD BASISTECH EXT;%{PE}%MKUKATPBASIS,%CEXT,%VEXT,%P
|
||||
EXT BAS (BAS_COMMAND :IN,REAL :IN )
|
||||
DECL INT SUCCESS
|
||||
;ENDFOLD (BASISTECH EXT)
|
||||
;FOLD USER EXT;%{E}%MKUKATPUSER,%CEXT,%VEXT,%P
|
||||
;Make here your modifications
|
||||
|
||||
;ENDFOLD (USER EXT)
|
||||
;ENDFOLD (EXTERNAL DECLERATIONS)
|
||||
ENDDAT
|
||||
19
KUKA/KRC/R1/TP/BrakeTest/BrakeTestStart.src
Normal file
19
KUKA/KRC/R1/TP/BrakeTest/BrakeTestStart.src
Normal file
@@ -0,0 +1,19 @@
|
||||
&ACCESS RV
|
||||
&REL 1
|
||||
&COMMENT path to test
|
||||
&PARAM EDITMASK = *
|
||||
&PARAM TEMPLATE = C:\KRC\Roboter\Template\vorgabe
|
||||
DEF BrakeTestStart( )
|
||||
;FOLD INI
|
||||
;FOLD BASISTECH INI
|
||||
GLOBAL INTERRUPT DECL 3 WHEN $STOPMESS==TRUE DO IR_STOPM ( )
|
||||
INTERRUPT ON 3
|
||||
;ENDFOLD (BASISTECH INI)
|
||||
;FOLD USER INI
|
||||
;Make your modifications here
|
||||
|
||||
;ENDFOLD (USER INI)
|
||||
;ENDFOLD (INI)
|
||||
;Teach here the motion to the start position of the brake test.
|
||||
|
||||
END
|
||||
Reference in New Issue
Block a user