机械手自动化程序

机械手自动化程序
机械手自动化程序

1、主程序main

&ACCESS RVP1

&REL 1

&PARAM DISKPATH = KRC:\R1\Program

DEF Pro_main( )

INT l

;FOLD INI;%{PE}

;FOLD BASISTECH INI

GLOBAL INTERRUPT DECL 3 WHEN $STOPMESS==TRUE DO IR_STOPM ( )

INTERRUPT ON 3

BAS (#INITMOV,0 )

;ENDFOLD (BASISTECH INI)

;FOLD USER INI

;Make your modifications here

;ENDFOLD (USER INI)

GLOBAL INTERRUPT DECL 4 WHEN $IN[10]==FALSE DO Itrpt1 ()

GLOBAL INTERRUPT DECL 5 WHEN $IN[11]==FALSE DO Itrpt1 ()

INTERRUPT DECL 6 WHEN $IN[9]==TRUE DO Itrpt1 ();地轨异常进入中断

INTERRUPT ON 6;开地轨监视中断6

IF NOT Gripper_ChkStatus(1,"C") THEN

Gripper_SetStatus(1,"O")

Part0InLeft = FALSE

Part2InLeft = FALSE

ENDIF

IF NOT Gripper_ChkStatus(2,"C") THEN

Gripper_SetStatus(2,"O")

Part1InRight = FALSE

ENDIF

FOR l = 1 TO 14

$OUT[l] = FALSE

ENDFOR;此循环语句在初始化时把所有端口清零复位。

IF $IN[5] THEN

Machine1_OnlyDrop = TRUE

Machine2_OnlyDrop = TRUE;机台1有首件信号时,机台1与机台2第一次响应只放标志位置1 ELSE

Machine1_OnlyDrop = FALSE

Machine2_OnlyDrop = FALSE

ENDIF

$FLAG[8]=FALSE;FLAG[8]是干什么用的?

;ENDFOLD (INI);初始化完成

$OV_PRO=70;限定系统运行速度

;FOLD PTP HOME Vel

$BWDSTART=FALSE

PDAT_ACT=PDEFAULT

FDAT_ACT=FHOME

BAS(#PTP_PARAMS,100)

$H_POS=XHOME

PTP XHOME

;ENDFOLD

IF $IN_HOME THEN

$OUT[5]=FALSE

$OUT[8]=FALSE

$OUT[11]=FALSE

ENDIF

LOOP

WAIT SEC 0.05

IF $IN[1] AND NOT Part0InLeft AND Gripper_ChkStatus(3,"O") THEN ToPick_Search()

ENDIF

IF Part0InLeft AND ($IN[3] OR Machine1_OnlyDrop) AND Gripper_ChkStatus(1,"C") AND Gripper_ChkStatus(2,"O") THEN

Machine1()

ENDIF

IF Part1InRight AND ($IN[6] OR Machine2_OnlyDrop) AND Gripper_ChkStatus(2,"C") AND Gripper_ChkStatus(1,"O") THEN

Machine2()

ENDIF

IF Part2InLeft AND ($IN[8] OR Machine3_OnlyDrop) AND Gripper_ChkStatus(1,"C") THEN

Machine3()

ENDIF

ENDLOOP

END

DEF Itrpt1 ()

HALT

BRAKE

END

2、取料程序(采用中断的方法自动探料,完成取料作业)

&ACCESS RVO2

&REL 1

&PARAM DISKPATH = KRC:\R1\Program

DEF ToPick_Search( )

;FOLD INI;%{PE}

;FOLD BASISTECH INI

GLOBAL INTERRUPT DECL 3 WHEN $STOPMESS==TRUE DO IR_STOPM ( );单独用了一个系统中断?

INTERRUPT ON 3

BAS (#INITMOV,0 )

;ENDFOLD (BASISTECH INI)

;FOLD USER INI

;Make your modifications here

;ENDFOLD (USER INI)

;ENDFOLD (INI)

INTERRUPT DECL 1 WHEN $IN[10]==TRUE DO FOUND()

SevenAxis_Run(1)

GOTO MARK

;FOLD PTP P1 CONT Vel

$BWDSTART=FALSE

PDAT_ACT=PPDAT2

FDAT_ACT=FP1

BAS(#PTP_PARAMS,100)

PTP XP1 C_DIS

;ENDFOLD

;FOLD PTP P3 CONT Vel

$BWDSTART=FALSE

PDAT_ACT=PPDAT8

FDAT_ACT=FP3

BAS(#PTP_PARAMS,100)

PTP XP3 C_DIS

;ENDFOLD

;FOLD LIN P2 CONT Vel

$BWDSTART=FALSE

LDAT_ACT=LCPDAT2

FDAT_ACT=FP2

BAS(#CP_PARAMS,2)

LIN XP2 C_DIS C_DIS

;ENDFOLD

;FOLD LIN P1 Vel

$BWDSTART=FALSE

LDAT_ACT=LCPDAT1

FDAT_ACT=FP1

BAS(#CP_PARAMS,0.05)

LIN XP1

;ENDFOLD

;FOLD PTP HOME Vel

$BWDSTART=FALSE

PDAT_ACT=PDEFAULT

FDAT_ACT=FHOME

BAS(#PTP_PARAMS,100)

$H_POS=XHOME

PTP XHOME

;ENDFOLD

mark:

Search()

INTERRUPT OFF 1

WAIT SEC 0

XP4=$POS_ACT

;FOLD LIN P4 CONT Vel

$BWDSTART=FALSE

LDAT_ACT=LCPDAT10

FDAT_ACT=FP4

BAS(#CP_PARAMS,2)

LIN XP4 C_DIS C_DIS

;ENDFOLD

Gripper_SetStatus(1,"O")

LIN_REL{Z 15}

LIN_REL{Z -17}

Gripper_SetStatus(1,"C")

Part0InLeft = TRUE

WAIT SEC 0

XP0=$POS_ACT

XP0.Z=XP0.Z+25 ;看一下寻料程序到底是怎么运转的!

;FOLD LIN P0 CONT Vel

$BWDSTART=FALSE

LDAT_ACT=LCPDAT8

FDAT_ACT=FP0

BAS(#CP_PARAMS,0.025)

LIN XP0 C_DIS C_DIS

;ENDFOLD

WAIT SEC 0

IF NOT $IN[10] THEN

GOTO mark

ENDIF

;FOLD LIN P1 CONT Vel

$BWDSTART=FALSE

LDAT_ACT=LCPDAT7

FDAT_ACT=FP1

BAS(#CP_PARAMS,2)

LIN XP1 C_DIS C_DIS

;ENDFOLD

END

DEF Search( )

;FOLD INI;%{PE}

;FOLD BASISTECH INI

GLOBAL INTERRUPT DECL 3 WHEN $STOPMESS==TRUE DO IR_STOPM ( )

INTERRUPT ON 3

BAS (#INITMOV,0 )

;ENDFOLD (BASISTECH INI)

;FOLD USER INI

;Make your modifications here

;ENDFOLD (USER INI)

;ENDFOLD (INI)

INTERRUPT ON 1

;FOLD PTP P1 CONT Vel

$BWDSTART=FALSE

PDAT_ACT=PPDAT6

FDAT_ACT=FP1

BAS(#PTP_PARAMS,100)

PTP XP1 C_DIS

;ENDFOLD

$OUT[16]=TRUE

;FOLD LIN P3 CONT Vel

$BWDSTART=FALSE

LDAT_ACT=LCPDAT11

FDAT_ACT=FP3

BAS(#CP_PARAMS,2)

LIN XP3 C_DIS C_DIS

;ENDFOLD

;FOLD LIN P2 CONT Vel

$BWDSTART=FALSE

LDAT_ACT=LCPDAT5

FDAT_ACT=FP2

BAS(#CP_PARAMS,0.05)

LIN XP2 C_DIS C_DIS

;ENDFOLD

;FOLD LIN P1 Vel

$BWDSTART=FALSE

LDAT_ACT=LCPDAT6

FDAT_ACT=FP1

BAS(#CP_PARAMS,0.02)

LIN XP1

;ENDFOLD

WAIT SEC 0

END

DEF FOUND()

BRAKE

LIN $POS_INT ;rise a little

RESUME

END

3、机台1取放料程序(完成机台1取放料动作与信号交互)

&ACCESS RVO2

&REL 1

&PARAM DISKPATH = KRC:\R1\Program

DEF Machine1( )

;FOLD INI;%{PE}

;FOLD BASISTECH INI

GLOBAL INTERRUPT DECL 3 WHEN $STOPMESS==TRUE DO IR_STOPM ( ) INTERRUPT ON 3

BAS (#INITMOV,0 )

;ENDFOLD (BASISTECH INI)

;FOLD USER INI

;Make your modifications here

;ENDFOLD (USER INI)

;ENDFOLD (INI)

SevenAxis_Run(1)

$OUT[5]=TRUE

;ENDFOLD

IF NOT Machine1_OnlyDrop THEN

;FOLD PTP P1 CONT Vel

$BWDSTART=FALSE

PDAT_ACT=PPDAT4

FDAT_ACT=FP1

BAS(#PTP_PARAMS,100)

PTP XP1 C_DIS

;ENDFOLD

mark:

;FOLD LIN P2 CONT Vel

$BWDSTART=FALSE

LDAT_ACT=LCPDAT4

FDAT_ACT=FP2

BAS(#CP_PARAMS,2)

LIN XP2 C_DIS C_DIS

;ENDFOLD

;FOLD LIN P3 CONT Vel

$BWDSTART=FALSE

LDAT_ACT=LCPDAT5

FDAT_ACT=FP3

BAS(#CP_PARAMS,2)

LIN XP3 C_DIS C_DIS

;ENDFOLD

Gripper_SetStatus(2,"C") LIN_REL{Z 7.5}

Gripper_SetStatus(2,"O")

;FOLD LIN P3 Vel

$BWDSTART=FALSE

LDAT_ACT=LCPDAT1

FDAT_ACT=FP3

BAS(#CP_PARAMS,2)

LIN XP3

;ENDFOLD

Gripper_SetStatus(2,"C") Part1InRight = TRUE

;FOLD LIN P2 Vel

$BWDSTART=FALSE

LDAT_ACT=LCPDAT6

FDAT_ACT=FP2

BAS(#CP_PARAMS,0.05)

LIN XP2

;ENDFOLD

IF NOT $IN[11] THEN

GOTO mark

ENDIF

;FOLD PTP P4 CONT Vel

$BWDSTART=FALSE

PDAT_ACT=PPDAT6

FDAT_ACT=FP4

BAS(#PTP_PARAMS,100)

PTP XP4 C_DIS

;ENDFOLD

;FOLD PTP P5 CONT Vel

$BWDSTART=FALSE

PDAT_ACT=PPDAT10

FDAT_ACT=FP5

BAS(#PTP_PARAMS,100)

PTP XP5 C_DIS

;ENDFOLD

;FOLD PTP P6 CONT Vel

$BWDSTART=FALSE

PDAT_ACT=PPDAT8

FDAT_ACT=FP6

BAS(#PTP_PARAMS,100)

PTP XP6 C_DIS

;ENDFOLD

;FOLD LIN P7 Vel

$BWDSTART=FALSE

LDAT_ACT=LCPDAT7

FDAT_ACT=FP7

BAS(#CP_PARAMS,0.25)

LIN XP7

;ENDFOLD

Gripper_SetStatus(1,"O")

;FOLD PTP P6 CONT Vel

$BWDSTART=FALSE

PDAT_ACT=PPDAT14

FDAT_ACT=FP6

BAS(#PTP_PARAMS,100)

PTP XP6 C_DIS

;ENDFOLD

;FOLD PTP P8 CONT Vel

$BWDSTART=FALSE

PDAT_ACT=PPDAT9

FDAT_ACT=FP8

BAS(#PTP_PARAMS,100)

PTP XP8 C_DIS

;ENDFOLD

ELSE

;FOLD PTP P5 CONT Vel

$BWDSTART=FALSE

PDAT_ACT=PPDAT2

FDAT_ACT=FP5

BAS(#PTP_PARAMS,100)

PTP XP5 C_DIS

;ENDFOLD

;FOLD PTP P6 CONT Vel

$BWDSTART=FALSE

PDAT_ACT=PPDAT13

FDAT_ACT=FP6

BAS(#PTP_PARAMS,100)

PTP XP6 C_DIS

;ENDFOLD

;FOLD LIN P7 Vel

$BWDSTART=FALSE

LDAT_ACT=LCPDAT9

FDAT_ACT=FP7

BAS(#CP_PARAMS,0.25)

LIN XP7

Gripper_SetStatus(1,"O")

;FOLD PTP P6 Vel

$BWDSTART=FALSE

PDAT_ACT=PPDAT12

FDAT_ACT=FP6

BAS(#PTP_PARAMS,100)

PTP XP6

;ENDFOLD

;FOLD PTP P8 CONT Vel

$BWDSTART=FALSE

PDAT_ACT=PPDAT7

FDAT_ACT=FP8

BAS(#PTP_PARAMS,100)

PTP XP8 C_DIS

;ENDFOLD

Machine_Start(1)

;FOLD PTP HOME Vel

$BWDSTART=FALSE

PDAT_ACT=PDEFAULT

FDAT_ACT=FHOME

BAS(#PTP_PARAMS,100)

$H_POS=XHOME

PTP XHOME

;ENDFOLD

ENDIF

IF Machine1_OnlyDrop THEN

Machine1_OnlyDrop = FALSE

ENDIF

Machine_Start(1)

END

4、机台2取放料程序(完成机台2取放料动作与信号交互)

&ACCESS RV2

&REL 6

&PARAM DISKPATH = KRC:\R1\Program

DEF Machine2()

;FOLD INI;%{PE}

;FOLD BASISTECH INI

GLOBAL INTERRUPT DECL 3 WHEN $STOPMESS==TRUE DO IR_STOPM ( ) INTERRUPT ON 3

BAS (#INITMOV,0 )

;ENDFOLD (BASISTECH INI)

;FOLD USER INI

;Make your modifications here

;ENDFOLD (USER INI)

;ENDFOLD (INI)

PTP $POS_ACT

SevenAxis_Run(2)

$OUT[8]=TRUE

IF NOT Machine2_OnlyDrop THEN ;FOLD PTP P1 CONT Vel

$BWDSTART=FALSE

PDAT_ACT=PPDAT3

FDAT_ACT=FP1

BAS(#PTP_PARAMS,100)

PTP XP1 C_DIS

;ENDFOLD

mark:

;FOLD PTP P2 CONT Vel

$BWDSTART=FALSE

PDAT_ACT=PPDAT4

FDAT_ACT=FP2

BAS(#PTP_PARAMS,100)

PTP XP2 C_DIS

;ENDFOLD

;FOLD LIN P3 Vel

$BWDSTART=FALSE

LDAT_ACT=LCPDAT4

FDAT_ACT=FP3

BAS(#CP_PARAMS,2)

LIN XP3

;ENDFOLD

Gripper_SetStatus(1,"C")

LIN_REL{Z 7.5}

Gripper_SetStatus(1,"O")

;FOLD LIN P3 Vel

$BWDSTART=FALSE

LDAT_ACT=LCPDAT0

FDAT_ACT=FP3

BAS(#CP_PARAMS,2)

LIN XP3

;ENDFOLD

Gripper_SetStatus(1,"C")

Part2InLeft = TRUE

;FOLD LIN P2 CONT Vel

$BWDSTART=FALSE

LDAT_ACT=LCPDAT3

FDAT_ACT=FP2

BAS(#CP_PARAMS,0.05)

LIN XP2 C_DIS C_DIS

;ENDFOLD

IF NOT $IN[10] THEN

GOTO mark

ENDIF

;FOLD PTP P4 CONT Vel

$BWDSTART=FALSE

PDAT_ACT=PPDAT7

FDAT_ACT=FP4

BAS(#PTP_PARAMS,100)

PTP XP4 C_DIS

;ENDFOLD

;FOLD PTP P5 CONT Vel

$BWDSTART=FALSE

PDAT_ACT=PPDAT14

FDAT_ACT=FP5

BAS(#PTP_PARAMS,100)

PTP XP5 C_DIS

;ENDFOLD

;FOLD PTP P6 CONT Vel

$BWDSTART=FALSE

PDAT_ACT=PPDAT9

FDAT_ACT=FP6

BAS(#PTP_PARAMS,100)

PTP XP6 C_DIS

;ENDFOLD

;FOLD LIN P7 Vel

$BWDSTART=FALSE

LDAT_ACT=LCPDAT7

FDAT_ACT=FP7

BAS(#CP_PARAMS,0.25)

LIN XP7

;ENDFOLD

Gripper_SetStatus(2,"O")

;FOLD PTP P6 CONT Vel

$BWDSTART=FALSE

PDAT_ACT=PPDAT11

FDAT_ACT=FP6

BAS(#PTP_PARAMS,100)

PTP XP6 C_DIS

;ENDFOLD

;FOLD PTP P8 CONT Vel

$BWDSTART=FALSE

PDAT_ACT=PPDAT12

FDAT_ACT=FP8

BAS(#PTP_PARAMS,100)

PTP XP8 C_DIS

;ENDFOLD

ELSE

;FOLD PTP P5 CONT Vel

$BWDSTART=FALSE

PDAT_ACT=PPDAT13

FDAT_ACT=FP5

BAS(#PTP_PARAMS,100)

PTP XP5 C_DIS

;ENDFOLD

;FOLD PTP P6 CONT Vel

$BWDSTART=FALSE

PDAT_ACT=PPDAT1

FDAT_ACT=FP6

BAS(#PTP_PARAMS,100)

PTP XP6 C_DIS

;ENDFOLD

;FOLD LIN P7 Vel

$BWDSTART=FALSE

LDAT_ACT=LCPDAT1

FDAT_ACT=FP7

BAS(#CP_PARAMS,0.25)

LIN XP7

;ENDFOLD

Gripper_SetStatus(2,"O")

;FOLD LIN P6 CONT Vel

$BWDSTART=FALSE

LDAT_ACT=LCPDAT2

FDAT_ACT=FP6

BAS(#CP_PARAMS,2)

LIN XP6 C_DIS C_DIS

;ENDFOLD

;FOLD PTP P8 CONT Vel

$BWDSTART=FALSE

PDAT_ACT=PPDAT6

FDAT_ACT=FP8

BAS(#PTP_PARAMS,100)

PTP XP8 C_DIS

;ENDFOLD

Machine_Start(2)

;FOLD PTP HOME Vel5:100, 7:DEFAULT

$BWDSTART=FALSE

PDAT_ACT=PDEFAULT

FDAT_ACT=FHOME

BAS(#PTP_PARAMS,100)

$H_POS=XHOME

PTP XHOME

;ENDFOLD

ENDIF

IF Machine2_OnlyDrop THEN

Machine2_OnlyDrop = FALSE

ENDIF

Machine_Start(2)

END

5、机台3取放料程序(完成机台3取放料动作与信号交互)&ACCESS RVP1

&REL 6

DEF Machine3( )

;FOLD INI;%{PE}

;FOLD BASISTECH INI

GLOBAL INTERRUPT DECL 3 WHEN $STOPMESS==TRUE DO IR_STOPM ( ) INTERRUPT ON 3

BAS (#INITMOV,0 )

;ENDFOLD (BASISTECH INI)

;FOLD USER INI

;Make your modifications here

;ENDFOLD (USER INI)

WAIT FOR $FLAG[1]

$FLAG[8]=TRUE

;ENDFOLD (INI)

PTP $POS_ACT

SevenAxis_Run(3)

$OUT[11]=TRUE

;ENDFOLD

;FOLD PTP P1 CONT Vel

$BWDSTART=FALSE

PDAT_ACT=PPDAT6

FDAT_ACT=FP1

BAS(#PTP_PARAMS,100)

PTP XP1 C_DIS

;ENDFOLD

;FOLD PTP P2 CONT Vel

$BWDSTART=FALSE

PDAT_ACT=PPDAT2

FDAT_ACT=FP2

BAS(#PTP_PARAMS,100)

PTP XP2 C_DIS

;ENDFOLD

;FOLD LIN P3 Vel

$BWDSTART=FALSE

LDAT_ACT=LCPDAT1

FDAT_ACT=FP3

BAS(#CP_PARAMS,0.25)

LIN XP3

;ENDFOLD

Gripper_SetStatus(1,"O")

;FOLD LIN P2 CONT Vel

$BWDSTART=FALSE

LDAT_ACT=LCPDAT2

FDAT_ACT=FP2

BAS(#CP_PARAMS,2)

LIN XP2 C_DIS C_DIS

;ENDFOLD

;FOLD PTP P4 CONT Vel

$BWDSTART=FALSE

PDAT_ACT=PPDAT3

FDAT_ACT=FP4

BAS(#PTP_PARAMS,100)

PTP XP4 C_DIS

;FOLD PTP P5 CONT Vel

$BWDSTART=FALSE

PDAT_ACT=PPDAT5

FDAT_ACT=FP5

BAS(#PTP_PARAMS,100)

PTP XP5 C_DIS

;ENDFOLD

Machine_Start(3)

;FOLD PTP HOME Vel

$BWDSTART=FALSE

PDAT_ACT=PDEFAULT

FDAT_ACT=FHOME

BAS(#PTP_PARAMS,100)

$H_POS=XHOME

PTP XHOME

;ENDFOLD

$TIMER_STOP[1]=FALSE

IF $TIMER[1]>0 THEN

$TIMER_STOP[1]=TRUE

ENDIF

IF Machine3_OnlyDrop THEN

Machine3_OnlyDrop = FALSE

ENDIF

Count_Part=Count_Part+1

IF Count_Part>=40 THEN

Count_Part=0

SevenAxis_Run(4)

WAIT SEC 0.1

ENDIF

END

6、地轨运动程序(完成与地轨信号交互及运动交互)&ACCESS RV2

&REL 8

&PARAM EDITMASK = *

&PARAM TEMPLATE = C:\KRC\Roboter\Template\vorgabe DEF SevenAxis_Run(Num:IN)

INT Num

SWITCH Num

CASE 1

PULSE($OUT[1], TRUE,1)

;ENDFOLD

PULSE($OUT[14], TRUE,1)

;ENDFOLD

WAIT FOR $IN[2]

$OUT[1] = FALSE

$OUT[14] = FALSE

CASE 2

PULSE($OUT[2], TRUE,1)

PULSE($OUT[14], TRUE,1)

;ENDFOLD

WAIT SEC 0.5

WAIT FOR $IN[2]

$OUT[2] = FALSE

$OUT[14] = FALSE

CASE 3

6:, 8:1

PULSE($OUT[3], TRUE,1)

;ENDFOLD

PULSE($OUT[14], TRUE,1)

;ENDFOLD

WAIT SEC 0.5

WAIT FOR $IN[2]

$OUT[3] = FALSE

$OUT[14] = FALSE

CASE 4

PULSE($OUT[4], TRUE,1)

;ENDFOLD

PULSE($OUT[14], TRUE,1)

;ENDFOLD

WAIT SEC 0.5

WAIT FOR $IN[2]

$OUT[4] = FALSE

$OUT[14] = FALSE

DEFAULT

MsgQuit("Error")

ENDSWITCH

END

7、机台启动控制程序(完成机台启动,取消工作中信号给开始加工信号)&ACCESS RV2

&REL 3

&PARAM EDITMASK = *

&PARAM TEMPLATE = C:\KRC\Roboter\Template\ExpertVorgabe

DEF Machine_Start(Num:IN)

INT Num

SWITCH Num

CASE 1

$OUT[5]=FALSE

;ENDFOLD

PULSE($OUT[6], TRUE,0.5)

;ENDFOLD

CASE 2

$OUT[8]=FALSE

;ENDFOLD

PULSE($OUT[9], TRUE,0.5)

;ENDFOLD

CASE 3

$OUT[11]=FALSE

;ENDFOLD

PULSE($OUT[12], TRUE,0.5)

;ENDFOLD

DEFAULT

MsgQuit("Error")

ENDSWITCH

END

8、手爪控制程序(完成对手爪的控制)

手爪1控制点位为OUT[16],对应检测为IN[10],对应中断4手爪2控制点位为OUT[15],对应检测为IN[11],对应中断5 &ACCESS RV2

&REL 50

&PARAM EDITMASK = *

&PARAM TEMPLATE = C:\KRC\Roboter\Template\vorgabe

DEF Gripper_SetStatus(Num:IN,Status:IN)

INT Num

CHAR Status

SWITCH Num

CASE 1

SWITCH Status

CASE "O"

IF NOT $T1 THEN

INTERRUPT OFF 4

ENDIF

$OUT[16] = FALSE

WAIT SEC 0.3

WAIT FOR NOT $IN[10]

Part0InLeft = FALSE

Part2InLeft = FALSE

CASE "C"

IF NOT $T1 THEN

INTERRUPT ON 4

ENDIF

$OUT[16] = TRUE

WAIT SEC 0.5

WAIT FOR $IN[10]

DEFAULT

MsgQuit("Element Error")

ENDSWITCH

CASE 2

SWITCH Status

CASE "O"

IF NOT $T1 THEN

INTERRUPT OFF 5

ENDIF

INTERRUPT OFF 89

$OUT[15] = FALSE

WAIT SEC 0.3

WAIT FOR NOT $IN[11]

Part1InRight = FALSE

CASE "C"

IF NOT $T1 THEN

INTERRUPT ON 5

ENDIF

$OUT[15] = TRUE

WAIT SEC 0.5

WAIT FOR $IN[11]

Part1InRight = TRUE

DEFAULT

MsgQuit("Element Error")

ENDSWITCH

DEFAULT

MsgQuit("Element Error")

ENDSWITCH

END

9、手爪真空检测(完成对掉料状况的检测)

&ACCESS RV2

&REL 10

&PARAM EDITMASK = *

&PARAM TEMPLATE = C:\KRC\Roboter\Template\FunctionVorgabe DEFFCT BOOL Gripper_ChkStatus(Num:IN,Status:IN)

INT Num

CHAR Status

SWITCH Num

CASE 1

SWITCH Status

CASE "O"

IF NOT $OUT[16] AND NOT $IN[10] THEN

RETURN TRUE

ELSE

RETURN FALSE

ENDIF

CASE "C"

IF $OUT[16] AND $IN[10] THEN

RETURN TRUE

ELSE

RETURN FALSE

ENDIF

DEFAULT

MsgQuit("Element Error")

RETURN FALSE

ENDSWITCH

CASE 2

SWITCH Status

CASE "O"

IF NOT $OUT[15] AND NOT $IN[11] THEN

RETURN TRUE

ELSE

RETURN FALSE

ENDIF

CASE "C"

IF $OUT[15] AND $IN[11] THEN

RETURN TRUE

ELSE

RETURN FALSE

ENDIF

DEFAULT

MsgQuit("Element Error")

RETURN FALSE

ENDSWITCH

CASE 3

SWITCH Status

CASE "O"

IF NOT $OUT[15] AND NOT $OUT[16] AND NOT $IN[10] AND NOT $IN[11] THEN RETURN TRUE

ELSE

RETURN FALSE

ENDIF

CASE "C"

IF $OUT[15] AND $OUT[16] AND $IN[10] AND $IN[11] THEN

RETURN TRUE

ELSE

RETURN FALSE

ENDIF

DEFAULT

MsgQuit("Element Error")

RETURN FALSE

ENDSWITCH

DEFAULT

MsgQuit("Element Error")

RETURN FALSE

ENDSWITCH

ENDFCT

10、装夹检测子程序(完成对每台机的装夹检测与装夹异常信号交互)

11、后台监视程序(对安全姿态信号自动触发等后台程序进行配置)

&ACCESS R

&COMMENT HandlerOnRobotFault

DEF IR_STOPM ( )

;-----------------------------------

; Error Handling Robot Controller

; Switch OFF and Switch ON processes

; KRC Version >= V5.5

;-----------------------------------

;FOLD DECLARATIONS

;FOLD USER DECL

; Please insert user defined declarations

;ENDFOLD (USER DECL)

;FOLD BASISTECH DECL

BOOL ApplicationRunFlag

DECL CHAR ID[3]

;ENDFOLD (BASISTECH DECL)

;ENDFOLD (DECLARATIONS)

;FOLD BASISTECH INIT

INTERRUPT OFF 3

STOPM_FLAG=TRUE ;Reflects state of interrupt 3 to activate/deactivate $Stopmess interrupt ID[]="CTL"

If ($STOPMESS==TRUE) THEN

BRAKE

;ENDFOLD (BASISTECH INIT)

;FOLD USER STOP

;Make your modifications here

;ENDFOLD (USER STOP)

;FOLD BASISTECH STOP

P00 (#EXT_ERR,#PGNO_GET,ID[],128 )

ApplicationRunFlag=FALSE

IF (Appl_Run>0) THEN

IF $OUT[Appl_Run] THEN

ApplicationRunFlag=TRUE

$OUT[Appl_Run]=FALSE

ENDIF

ENDIF

REPEAT

POWER=SYNC()

HALT

UNTIL (($STOPMESS==FALSE) AND ($POWER_FAIL==FALSE))

;ENDFOLD (BASISTECH STOP)

;FOLD BASISTECH RESTART

P00 (#EXT_ERR,#PGNO_GET,ID[],0 )

IF (ApplicationRunFlag==TRUE) THEN

IF (Appl_Run>0) THEN

$OUT[Appl_Run]=TRUE

ENDIF

ENDIF

;ENDFOLD (BASISTECH RESTART)

;FOLD USER RESTART

;Make your modifications here

;ENDFOLD (USER RESTART)

;FOLD BASISTECH REACTIVATE

Endif

INTERRUPT ON 3

STOPM_FLAG=FALSE ;Reflects state of interrupt 3 to activate/deactivate $Stopmess interrupt ;ENDFOLD (BASISTECH REACTIVATE)

END

机械手地模拟控制

自动化专业综合设计报告 设计题目:机械手的模拟控制 所在实验室:PLC实验室 指导教师:由枫秋 学生姓名韩璐 班级文自082-1 学号200890517106 撰写时间:2012-03-1 成绩评定:

一、设计目的 用PLC设计机械手的模拟控制。 二、设计要求 有一机械手,有手动操作和自动操作两种方式,其控制要求如下: (1)按动启动按钮后,传送带A运行直到光电开关PS检测到有工件时传送带A 才停止。 (2)当光电开关PS检测到工件时,机械手臂先下降,下降到位后机械手夹紧工件,2S后开始上升,而机械手臂保持夹紧。上升到位左转,左转到位下降,下降到位后机械手松开,2S后机械手上升。上升到位后,传送带B开始运行,同时机械手右转,右转到位,传送带B停止,此时传送带A运行直到光电开关PS检测到有工件时传送带A才停止……循环。 (3)手动操作,每个动作均能单独操作,用于将机械手复归至原点。 (4)自动停止时有两种情况,一种是停在当前位置,当下一次启动时从当前位置继续进行,另一种是按下停止按钮时,不马上停止而是一个周期结束后停在原点位置。 三、设计内容 1、输入输出分配表 机械手的输入信号主要有启动开关、停止开关、检测信号PS、上升限位开关、下降限位开关、左转限位开关、右转限位开关、手动下降开关、手动上升开关、手动左转开关、手动右转开关共十个输入信号,机械手中各个输入按钮和限位开关在PLC 控制中对应的端口号如表1所示 机械手的输出信号主要有传送带A运行、传送带B运行、机械手下降、机械手上升、机械手左转、机械手右转、机械手夹紧共七个输出信号,机械手各输出信号在PLC 控制中对应的端口号如表2所示

机械手的PLC控制(完整)

江苏信息职业技术学院毕业设计报告 毕业设计报告课题:机械手的PLC控制 系部:机电系 专业:电气自动化 班级:电气1332 姓名:王琪 学号:2013321026 指导老师:贾君贤 2016-6

摘要 机械手是工业自动化系统中传统的任务执行机构,是机器人的关键部件之 一。机械手的机械结构采用滚珠丝杆、滑杆、等机械器件组成;电气方面有交流 电机、传感器、等电子器件组成。该装置涵盖了可编程控制技术,位置控制技术、检测技术等,是机电一体化的典型代表仪器之一。本文介绍的机械手是由PLC 输出三路脉冲,控制机械手横轴和竖轴的精确定位,微动开关将位置信号传给 PLC主机;位置信号由接近开关反馈给PLC主机,通过交流电机的正反转来控制 机械手手爪的张合,从而实现机械手精确运动的功能。本课题拟开发的物料搬运机械手可在空间抓放物体,动作灵活多样,可代替人工在高温和危险的作业区进 行作业,并可根据工件的变化及运动流程的要求随时更改相关参数。 关键词:机械手 PLC 交流电机

目录 摘要 (1) 引言 (3) 第一章机械手机械结构 (4) 1.1传动机构 (4) 1.2机械手夹持器和机座的结构 (6) 第二章机械手PLC及电机的应用 (8) 2.1 PLC简介 (8) 2.2 PLC内部原理 (10) 2.3 机械手PLC选择及参数 (12) 2.4 机械手电机的选用 (13) 第三章机械手PLC控制系统设计 (14) 3.1 机械手的工艺过程 (14) 3.2PLC控制系统 (16) 致答谢词 (21) 参考文献 (21)

引言 在现代工业中,随着工业现代化的进一步发展,自动化已经成为现代企业中的重要支柱,无人车间、无人生产流水线等等,已经随处可见。同时,现代 生产中,存在着各种各样的生产环境,如高温、放射性、有毒气体、有害气 体场合以及水下作业等,这些恶劣的生产环境不利于人工进行操作。 工业机械手是近代自动控制领域中出现的一项新的技术,是现代控制理 论与工业生产自动化实践相结合的产物,并以成为现代机械制造生产系统中 的一个重要组成部分。工业机械手是提高生产过程自动化、改善劳动条件、 提高产品质量和生产效率的有效手段之一。尤其在高温、高压、粉尘、噪声 以及带有放射性和污染的场合,应用得更为广泛。在我国,近几年来也有较 快的发展,并取得一定的效果,受到机械工业和铁路工业部门的重视。 本课题拟开发物料搬运机械手,采用日本三菱公司的FX2N系列PLC,对机械手的上下、左右以及抓取运动进行控制。该装置机械部分有滚珠丝杠、 滑轨、机械抓手等;电气方面由交流电机、操作台等部件组成。我们利用可 编程技术,结合相应的硬件装置,控制机械手完成各种动作。 由于时间仓促和个人水平限制,我的设计存在着许多还没来得及解决的 问题,希望广大老师、同学能够给予批评指正并予以解决。

机械手自动操作控制的PLC程序设计

机械手自动操作控制的PLC程序设计目录 1机械手的工作原理 1.1 机械手的概述……………………………………………………………………1 1.2 机械手的工作方式………………………………………………………………2 2机械手控制程序设计 2.1 输入和输出点分配表及原理接线图……………………………………………3 2.2 控制程序…………………………………………………………………………4 3梯形图及指令表 3.1 梯形图 (9) 3.2 指令表....................................................................................11 总结..........................................................................................13 参考文献.................................................................................... 14 附录 (15) 机械手自动操作控制的PLC程序设计 1机械手的工作原理 1.1 机械手的概述 能模仿人手和臂的某些动作功能~用以按固定程序抓取、搬运物件或操作工具的自动操作装置。它可代替人的繁重劳动以实现生产的机械化和自动化~能在有害环境下操作以保护人身安全~因而广泛应用于机械制造、冶金、电子、轻工和原子能等部门。

机械手主要由手部和运动机构组成。手部是用来抓持工件,或工具,的部件~根据被抓持物件的形状、尺寸、重量、材料和作业要求而有多种结构形式~如夹持型、托持型和吸附型等。运动机构~使手部完成各种转动,摆动,、移动或复合运动来实现规定的动作~改变被抓持物件的位置和姿势。运动机构的升降、伸缩、旋转等独立运动方式~称为机械手的自由度。为了抓取空间中任意位置和方位的物体~需有6个自由度。自由度是机械手设计的关键参数。自由度越多~机械手的灵活性越大~通用性越广~其结构也越复杂。一般专用机械手有2,3个自由度。机械手的种类~按驱动方式可分为液压式、气动式、电动式、机械式机械手,按适用范围可分为专用机械手和通用机械手两种,按运动轨迹控制方式可分为点位控制和连续轨迹控制机械手等。 机械手通常用作机床或其他机器的附加装置~如在自动机床或自动生产线上装卸和传递工件~在加工中心中更换刀具等~一般没有独立的控制装置。有些操作装置需要由人直接操纵~如用于原子能部门操持危险物品的主从式操作手也常称为机械手。机械手虽然目前还不如人手那样灵活~但它具有能不断重复工作和劳动、不知疲劳、不怕危险、抓举重物的力量比人手大等特点~因此~机械手已受到许多部门的重视~并越来越广泛地得到了应用~例如: 1、机床加工工件的装卸~特别是在自动化车床、组合机床上使用较为普遍。 2、在装配作业中应用广泛~在电子行业中它可以用来装配印制电路板~在机械行业中它可以用来组装零部件。 3、可在劳动条件差~单调重复易子疲劳的工作环境工作~以代替人的劳动。 4、可在危险场合下工作~如军工品的装卸、危险品及有害物的搬运等。 5、宇宙及海洋的开发~军事工程及生物医学方面的研究和试验。 1 机械手自动操作控制的PLC程序设计

PLC机械手操作控制系统

摘要 在现代工业中 , 生产过程的机械化、自动化已成为突出的主题。随着工业现代化的进一步发展,自动化已经成为现代企业中的重要支柱,无人车间、无人生产流水线等等。已经随处可见。同时,现代生产中,存在着各种各样的生产环境,如高温、放射性、有 毒气体、有害气体场合以及水下作业等,这写恶劣的生产环境不利于人工进行操作。工 业机械手是近代自动控制领域中出现的一项新的技术,是现代控制理论与工业生产自动 化实践相结合的产物。并以为现代机械制造生产系统中的一个重要组成部分。工业机械 手是提高生产过程自动化、改善劳动条件、提高产品质量和身效益的有效手段之一。尤 其在高温、高压、粉尘、噪声以及带有放射性和污染的场合,应用得更为广泛。在我国, 近几年来也有较快的发展,并取得一定的效果,受到机械工业和铁路工业部门的重视。 机械手是在自动化生产过程中发展起来的一种新装置。广泛应用于工业生产和其他领域。PLC已在工业生产过程中得到广泛应用,应用 PLC控制机械手能实现各种规定工序动作,对生产过程有着十分重要的意义。论文以介绍 PLC在机械手搬运控制中的应用,设计了一套可行的机械手控制系统,并给出了详细的 PLC程序。设计完成的机械手可以在空间抓放、搬运物体等,动作灵活多样。 整个搬运机构能完成四个自由度动作,手臂伸缩、手臂旋转、手爪上下、手爪紧松。关键词:可编程控制器 ,PLC, 机械手操作控制系统 .

目录 第一章概述 (1) 1.1 PLC 控制系统 (1) 1.1.1PLC 的产生 (1) 1.1.2PLC 的特点及应用 (2) 1.2选题背景 (3) 1.2.1机械手简介 (3) 第二章PLC 控制系统设计 (6) 2.1总体设计 (6) 2.1.1制定控制方案 (6) 2.1.2系统配置 (6) 2.1.3控制要求 (9) 2.1.4控制面板 (12) 2.1.5 外部接线图 (13) 2.2.2手动方式状态 (16) 2.2.3回原点状态转移图: (19) 2.2.4自动方式状态 (19) 第三章控制系统内部软组件 (21) 3.1 内部软组件的概述 (21) 3.1.1输入继电器 (21) 3.1.2输出继电器 (21) 3.1.3辅助继电器 (22) 3.1.4状态组件 (23) 3.1.5定时器 (23) 错误!未定义书签。致谢 ........................................................................................................... 参考文献 (24)

机械手自动操作控制的PLC程序设计

中北大学 信息商务学院 课程设计说明书 学生姓名:学号: 系:机械自动化系 专业:机械设计制造及其自动化 题目:数控技术课程设计 ——机械手自动操作控制的PLC程序设计 指导教师:职称: 职称: 2016年12月5日

中北大学 信息商务学院 课程设计任务书 2016/2017 学年第 1 学期 所在系:机械工程系 专业:机械设计制造及其自动化 学生姓名:学号: 课程设计题目:数控技术课程设计 —机械手自动操作控制的PLC程序设计起迄日期:2016年12月5日~2016年12月9日课程设计地点:中北大学信息商务学院 指导教师: 系主任:暴建岗 下达任务书日期: 2016 年12月 5日

课程设计任务书 1.设计目的: 通过对机械手自动操作控制的PLC程序设计,使学生在熟练机械手的动作顺序与原理的基础上,学会应用PLC。 2.设计内容和要求(包括原始数据、技术参数、条件、设计要求等): 机械手将工件从A工作台搬到B工作台。机械手的工作过程由8个动作完成一个循环,如图所示。取放工件的上升/下降和左移/右移分别用YV1、YV3、YV4和YV5控制,夹具的夹紧和放松由电磁阀YV2控制。当工件搬到B工作台返回时,用光电开关SQ7发出无工件信号。 (1)采用内部移位寄存器M100~ M117逐位输出方式实现顺序控制,移位条件是对各限位开关(SQ1~SQ6)的状态检测来决定。 (2)夹紧或放松动作,分别用定时器T450、T451延时控制。 (3)采用具有保持功能的辅助继电器M202驱动夹紧阀。 通过本课程设计,完成 ①输入输出信号分析与PLC I/O分配图 ②PLC选型 ③主要元器件型号的选择 ④主接线图设计 ⑤完成梯形图设计并完成相应指令。 3.设计工作任务及工作量的要求〔包括课程设计计算说明书(论文)、图纸、实物样品等〕:

机械手自动控制设计

滁州职业技术学院成人高等教育毕业设计 课题:机械手的动作控制 设计时间: 班级:09级机电一体化(3)班 学号: 姓名: 指导教师:李文萱

2011届机电一体化专业(09级机电3班)毕业设计任务书 -----机械手动作的控制 一、任务描述 机械手是能模仿人手和臂的某些动作功能,用以按固定程序抓取、搬运物件或操作工具的自动操作装置。它可代替人的繁重劳动以实现生产的机械化和自动化,能在有害环境下操作以保护人身安全,因而广泛应用于机械制造、冶金、电子、轻工和原子能等部门。械手通常用作机床或其他机器的附加装置,如在自动机床或自动生产线上装卸和传递工件,在加工中心中更换刀具等,有些操作装置需要由人直接操纵。 二、设计目的 通过本次设计让学生了解一般PLC控制系统设计的过程、设计要求、应完成的工作内容和具体设计方法,同时也是对既往知识的复习、巩固和灵活应用的过程,可以提高学生的整体观,为今后走向工作岗位提供实践经验。 三、控制任务和一般要求 示意图中为一个机械手取与放的搬运系统,原点为左上方所达到的极限位置,搬运过程是机械手将工件由A传送到B。分别设计出手动和自动控制的程序。 1.上升和下降,左移和右移的执行均由双线圈二位电磁阀推动气缸来完成。 2.当某个电磁阀线圈通电,就一直保持现有的机械动作,例如一但下降的电磁阀线圈通电,机械手下降,即使此时线圈断电,机械手要仍然要保持现有的下降动作状态,直到相反方向的电磁阀线圈通电为止。 3.夹紧/放松由单线圈二位电磁阀推动气缸完成,线圈通电执行夹紧动作,线圈断电执行放松动作。 4.设备装有上、下限位和左、右限位开关;夹紧和放松可以由限位开关来实现也可以利用定时器来实现。 5.当工件处于B处上方准备下放时,为确保安全,用光电开关检测B处有无 工件,只有在B处无工件时才能发出下放信号。

机械手自动操作控制的PLC程序设计(3)

目录 1机械手的工作原理 1.1 机械手的概述 (1) 1.2 机械手的工作方式 (2) 2机械手控制程序设计 2.1 输入和输出点分配表及原理接线图 (3) 2.2 控制程序 (4) 3梯形图及指令表 3.1 梯形图 (9) 3.2 指令表 (11) 总结 (13) 参考文献 (14) 附录 (15)

1机械手的工作原理 1.1机械手的概述 能模仿人手和臂的某些动作功能,用以按固定程序抓取、搬运物件或操作工具的自动操作装置。它可代替人的繁重劳动以实现生产的机械化和自动化,能在有害环境下操作以保护人身安全,因而广泛应用于机械制造、冶金、电子、轻工和原子能等部门。 机械手主要由手部和运动机构组成。手部是用来抓持工件(或工具)的部件,根据被抓持物件的形状、尺寸、重量、材料和作业要求而有多种结构形式,如夹持型、托持型和吸附型等。运动机构,使手部完成各种转动(摆动)、移动或复合运动来实现规定的动作,改变被抓持物件的位置和姿势。运动机构的升降、伸缩、旋转等独立运动方式,称为机械手的自由度。为了抓取空间中任意位置和方位的物体,需有6个自由度。自由度是机械手设计的关键参数。自由度越多,机械手的灵活性越大,通用性越广,其结构也越复杂。一般专用机械手有2~3个自由度。机械手的种类,按驱动方式可分为液压式、气动式、电动式、机械式机械手;按适用范围可分为专用机械手和通用机械手两种;按运动轨迹控制方式可分为点位控制和连续轨迹控制机械手等。 机械手通常用作机床或其他机器的附加装置,如在自动机床或自动生产线上装卸和传递工件,在加工中心中更换刀具等,一般没有独立的控制装置。有些操作装置需要由人直接操纵,如用于原子能部门操持危险物品的主从式操作手也常称为机械手。机械手虽然目前还不如人手那样灵活,但它具有能不断重复工作和劳动、不知疲劳、不怕危险、抓举重物的力量比人手大等特点,因此,机械手已受到许多部门的重视,并越来越广泛地得到了应用,例如: 1、机床加工工件的装卸,特别是在自动化车床、组合机床上使用较为普遍。 2、在装配作业中应用广泛,在电子行业中它可以用来装配印制电路板,在机械行业中它可以用来组装零部件。 3、可在劳动条件差,单调重复易子疲劳的工作环境工作,以代替人的劳动。 4、可在危险场合下工作,如军工品的装卸、危险品及有害物的搬运等。 5、宇宙及海洋的开发,军事工程及生物医学方面的研究和试验。

基于PLC的机械手控制系统设计

基于PLC机械手控制系统设计 摘要:工业机械手是近几十年发展起来的一种高科技自动生产设备。工业机械手也是工业机器人的一个重要分支。他的特点是可以通过编程来完成各种预期的作业,在构造和性能上兼有人和机器各自的优点,尤其体现在人的智能和适应性。机械手作业的准确性和环境中完成作业的能力,在国民经济领域有着广泛的发展空间。 机械手是一种能自动控制并可从新编程以变动的多功能机器,他有多个自由度,可以搬运物体以完成在不同环境中的工作。 一、机械手简介 工业机械手是近几十年发展起来的一种高科技自动化生产设备。工业机械手是工业机器人的一个重要分支。它的特点是可通过编程来完成各种预期的作业任务,在构造和性能上兼有人和机器各自的优点,尤其体现了人的智能和适应性。机械手作业的准确性和各种环境中完成作业的能力,在国民经济各领域有着广阔的发展前景。 机械手技术涉及到力学、机械学、电气液压技术、自动控制技术、传感器技术和计算机技术等科学领域,是一门跨学科综合技术。 1、机械手分类 机械手一般分为三类。第一类是不需要人工操作的通用机械手,它是一种独立的不附属于某一主机的装置。它可以根据任务的需要编制程序,以完成各项规定工作。它的特点是除具备普通机械的物理性能外,还具备通用机械、记忆智能的三元机械。第二类是需要人工操作的,称为操作机。它起源于原子、军事工业,先是通过操作机来完成特定的作业,后来发展到用无线电信号操作机械手来进行探测月球、火星等。第三类是专用机械手,主要附属于自动机床或自动线上,用于解决机床上下料和工件传送。这种机械手在国外称为“Mechanical Hand”,它是为主机服务的,由主机驱动,除少数外,工作程序一般是固定的,因此是专用的。 本项目要求设计的机械手模型可归为第一类,即通用机械手。在现代生产企业中,自动化程度较高,大量应用机械手。通过本次设计,可以增强对工业机械手的认识,同时并熟悉掌握PLC技术、位置控制技术、气动技术等工业控制常用的技术。 2、机械手控制系统设计步骤 根据工艺要求确定被控系统必须完成的动作,确定这些动作之间的关系及完成这些动作的顺序。(2)分配输入、输出设备,即确定哪些外围设备是送信号给PLC的,哪些外围设备是接收来自PLC的信号的,同时还要将PLC的输入、输出点与之一一对应,对I/O进行分配。在此基础上确定PLC的选型。(3)根据控制系统的控制要求和所选PLC的I/O点的情况及高功能模块的情况,设计PLC用户程序,此时可采用梯形田、助记符或流程图语言形式的用户程序。PLC的用户程序体现

机械手设计说明书(步进电机)

第一章前言 1.1 研究的目的及意义 机械手作为前沿的产品应自动化设备更新时的需要,可以大量代替单调往复或高精度需求的工作,在先进制造领域中扮演着极其重要的角色。它可以搬运货物、分拣物品、代替人的繁重劳动。可以实现生产的机械化和自动化,能在高温、腐蚀及有毒气体等环境下操作以保护人身安全,可以广泛应用于机械制造、冶金、电子、轻工业和原子能等部门。 随着工业的高速发展,机械手作为前沿的产品应自动化设备更新时的需要,已经在工业生产中得到了广泛的应用。它可以搬运货物、分拣物品、用以代替人的繁重及单调劳动,实现生产的机械化和自动化;并能在高温、腐蚀及有毒气体等有害环境下操作以保护人身安全,被广泛应用于机械制造、冶金、电子、轻工业和原子能等部门。 可编程控制器(PLC)是以中央处理器为核心,综合了计算机和自动控制等先进技术,具有可靠性高、功能完善、组合灵活、编程简单、功耗低等优点,已成为目前在机械手控制系统中使用最多的控制方式。使用PLC的自动控制系统具有体积小,可靠高,故障率低,动作精度高等优点。 适应工业需要,本课题试图开发PLC对物料分拣机械手的控制,并借助必要的精密传感器,使其能够对不同颜色的物料按预先设定的程序进行分拣,动作灵活多样,适用于可变换生产品种的中小批量自动化生产,广泛应用于柔性生产线。采用PLC控制,是一种预先设定的程序进行物料分拣的自动化装置,可部分代替人工在高温和危险的作业区进行单调持久的作业,并且在产品变化或临时需要对机械手进行新的分配任务时,可以允许方便的改动或重新设计其新部件,而对于位置改变时,只要重新编程,并能很快地投产,降低安装和转换工作的费用。本设计主要完成机械手的硬件部分与软件部分设计。主要包括执行系统、驱动系统和控制系统的设计。 1.2 机械手在国内外现状和发展趋势 机械手最早应用在汽车制造工业,常用于焊接、喷漆、上下料和搬运。机械手延伸和扩大了人的手足和大脑功能,它可替代人从事危险、有害、有毒、低温

机械手自动化控制模板

1、机械手发展经历与主要构成 机械手是能模仿人手和臂的某些动作功能,用以按固定程序抓取、搬运物件或操作工具的自动操作装置。机械手是最早出现的工业机器人,也是最早出现的现代机器人。 1.1发展历史 机械手首先是从美国开始研制的。1954年美国戴沃尔最早提出了工业机器人的概念,并申请了专利。该专利的要点是借助伺服技术控制机器人的关节,利用人手对机器人进行动作示教,机器人能实现动作的记录和再现。这就是所谓的示教再现机器人。现有的机器人差不多都采用这种控制方式。1958年美国联合控制公司研制出第一台机械手铆接机器人。作为机器人产品最早的实用机型(示教再现)是1962年美国AMF公司推出的“VERSTRAN”和UNIMATION公司推出的“UNIMATE”。这些工业机器人主要由类似人的手和臂组成它可代替人的繁重劳动以实现生产的机械化和自动化,能在有害环境下操作以保护人身安全,因而广泛应用于机械制造、冶金、电子、轻工、原子能和制药等行业。 1.2构成部分 机械手主要由手部、运动机构和控制系统三大部分组成。手部是用来抓持工件(或工具)的部件,根据被抓持物件的形状、尺寸、重量、材料和作业要求而有多种结构形式,如夹持型、托持型和吸附型

等。运动机构,使手部完成各种转动(摆动)、移动或复合运动来实现规定的动作,改变被抓持物件的位置和姿势。运动机构的升降、伸缩、旋转等独立运动方式,称为机械手的自由度。为了抓取空间中任意位置和方位的物体,需有6个自由度。自由度是机械手设计的关键参数。自由度越多,机械手的灵活性越大,通用性越广,其结构也越复杂。一般专用机械手有2~3个自由度。控制系统是通过对机械手每个自由度的电机的控制,来完成特定动作。同时接收传感器反馈的信息,形成稳定的闭环控制。控制系统的核心通常是由单片机或dsp等微控制芯片构成,通过对其编程实现所要功能。 1.3机械手分类 机械手的种类,按驱动方式可分为液压式、气动式、电动式、机械式机械手;按适用范围可分为专用机械手和通用机械手两种;按运动轨迹控制方式可分为点位控制和连续轨迹控制机械手等。 1.4多关节机械手的优势 多关节机械手的优点是:动作灵活、运动惯性小、通用性强、能抓取靠近机座的工件,并能绕过机体和工作机械之间的障碍物进行工作。随着生产的需要,对多关节手臂的灵活性,定位精度与作业空间等提出越来越高的要求。多关节手臂也突破了传统的概念,其关节数量可以从三个到十几个甚至更多,其外形也不局限于像人的手臂,而根据不同的场合有所变化,多关节手臂的优良性能是单关节机械手所不能比拟的。

机械手自动化控制模板

1、机械手发展经历及主要构成 机械手是能模仿人手和臂的某些动作功能,用以按固定程序抓取、搬运物件或操作工具的自动操作装置。机械手是最早出现的工业机器人,也是最早出现的现代机器人。 1.1发展历史 机械手首先是从美国开始研制的。1954年美国戴沃尔最早提出了工业机器人的概念,并申请了专利。该专利的要点是借助伺服技术控制机器人的关节,利用人手对机器人进行动作示教,机器人能实现动作的记录和再现。这就是所谓的示教再现机器人。现有的机器人差不多都采用这种控制方式。1958年美国联合控制公司研制出第一台机械手铆接机器人。作为机器人产品最早的实用机型(示教再现)是1962年美国AMF公司推出的“VERSTRAN”和UNIMATION公司推出的“UNIMATE”。这些工业机器人主要由类似人的手和臂组成它可代替人的繁重劳动以实现生产的机械化和自动化,能在有害环境下操作以保护人身安全,因而广泛应用于机械制造、冶金、电子、轻工、原子能和制药等行业。 1.2构成部分 机械手主要由手部、运动机构和控制系统三大部分组成。手部是用来抓持工件(或工具)的部件,根据被抓持物件的形状、尺寸、重量、材料和作业要求而有多种结构形式,如夹持型、托持型和吸附型等。运动机构,使手部完成各种转动(摆动)、移动或复合运动来实现规定的动作,改变被抓持物件的位置和姿势。运动机构的升降、伸缩、旋转等独立运动方式,称为机械手的自由度。为了抓取空间中任意位置和方位的物体,需有6个自由度。自由度是机械手设计的关键参数。自由度越多,机械手的灵活性越大,通用性越广,其结构也越复杂。一般专用机械手有2~3个自由度。控制系统是通过对机械手每个自由度的电机的控制,来完成特定动作。同时接收传感器反馈的信息,形成稳定的闭环控制。控制系统的核心通常是由单片机或dsp等微控制芯片构成,通过对其编程实现所要功能。 1.3机械手分类 机械手的种类,按驱动方式可分为液压式、气动式、电动式、机械式机械手;按适用范围可分为专用机械手和通用机械手两种;按运动轨迹控制方式可分为点

机械手控制电路毕业设计---机械手控制电路设计

毕业设计 机械手控制电路设计

摘要 随着科学技术的日新月异,自动化程度要求越来越高,市场竞争激烈、人工成本上涨,以往人工操作的搬运和固定方式输送带为主的传统物件搬运方式、不但占用空间而且不容易变更生产线结构,加上需要人力监督操作,更增加了生产成本,原有的生产装料装置远远不能满足当前高度自动化的需要。因此减轻劳动强度,保障生产可靠性、安全性,降低生产成本,减少环境污染、提高产品的质量及经济效益是企业生产所必须面临的重大的问题。 本文在纵观了近年来机械手发展状况的基础上,结合机械手方面的设计,对机械手技术进行了系统的分析,提出了用电磁阀和PLC控制的设计方案。采用整体化的设计思想,充分考虑了软、硬件各自的特点并进行互补优化。对物料分拣机械手的整体结构、执行结构、驱动系统和控制系统进行了分析和设计。在其驱动系统中采用气动驱动,控制系统中选择PLC的控制单元来完成系统功能的初始化、机械手的移动、故障报警等功能。最后提出了一种简单、易于实现、理论意义明确的控制策略 关键词:机械手,PLC,控制电路

第一章绪论 在现代工业中,生产过程的机械化、自动化已成为突出的主题。化工等连续性生产过程的自动化已基本得到解决。但在机械工业中,加工、装配等生产是不连续的。专用机床是大批量生产自动化的有效办法;程控机床、数控机床、加工中心等自动化机械是有效地解决多品种小批量生产自动化的重要办法。但除切削加工本身外,还有大量的装卸、搬运、装配等作业,有待于进一步实现机械化。机器手的出现并得到应用,为这些作业的机械化奠定了良好的基础。它能模仿人手和臂的某些动作功能,用以按固定程序抓取、搬运物件或操作工具的自动操作装置。它可代替人的繁重劳动以实现生产的机械化和自动化,能在有害环境下操作以保护人身安全,广泛应用于机械制造、冶金、电子、轻工和原子能等部门 1.1本课题的设计的目的和意义 随着我国经济迅速发展,很多行业技术水平不但提高微电子技术、计算机技术和自动化技术就是其中最快的技术之一,机械手在早期的应用时在汽车制造方面,进行一般的焊接、喷漆、搬运物料等。但是面临一些人工无法完成的工作,机械手成为了人的代替品,因此,随着人把机械手运用到更加恶劣的环境中,他可以有效的代替人从事危险、有害、有毒、低温和高温等恶劣环境中工作;替代人完成繁重、单调重复劳动,提高劳动生产率,保证产品质量。目前机械手主要用于制造业中。 随着科学技术的发展和计算机技术的广泛应用,人们对机械手的安全性,可靠性、准确性的要求越来越高,以继电器组成的控制系统实现机械手控制的方法已经不能满足人们的需要。可编程控制器因为稳定可靠、结构简单、功能强大和使用方便,已经成为应用最广泛的装置,成为现代工业自动化的主要支柱之一。机械手控制要求接入设备使用简单,系统编程过程简单,具有人性化,PLC控制机械手改善了机械手的灵活性。因此PLC控制机械手得到广泛应用

基于plc的机械手控制系统设计

前言 随着我国工业生产的飞跃发展,自动化程度的迅速提高,实现工件的装卸、转向、输送或操持焊枪、喷枪、扳手等工具进行加工、装配等作业的自动化,已愈来愈引起人们的重视。 机械手是在机械化、自动化生产过程中发展起来的一种新型装置。近年来,随着电子技术特别是电子计算机的广泛应用,机器人的研制和生产已成为高技术领域内迅速发展起来的一门新兴技术,它更加促进了机械手的发展,使得机械手能更好地实现与机械化和自动化的有机结合。 机械手是模仿着人手的部分动作,按给定程序、轨迹和要求实现自动抓取、搬运或操作的自动机械装置。在工业生产中应用的机械手被称为“工业机械手”。机械手虽然目前还不如人手那样灵活,但它具有能不断重复工作和劳动、不知疲劳、不怕危险、抓举重物的力量比人手大等特点,因此,机械手已受到许多部门的重视,并越来越广泛地得到了应用,生产中应用机械手可以提高生产的自动化水平和劳动生产率;可以减轻劳动强度、保证产品质量、实现安全生产;尤其在高温、高压、低温、低压、粉尘、易爆、有毒气体和放射性等恶劣的环境中,它代替人进行正常的工作,意义更为重大。 本文将通过西门子PLC控制机械手,PLC是可编程控制器(Programmable Logic Controller)的简称,是在继电顺序控制基础上发展起来的以微处理器为核心的通用的工业自动化控制装置。随着电子技术和计算机技术的迅猛发展,PLC的功能也越来越强大,更多地具有计算机的功能。目前PLC已经在智能化、网络化方面取得了很好的发展。该系统利用西门子PLC,在步进电机驱动下,完成对机械手在搬运过程中的下降、夹紧、上升、右旋、下降、放松、上升、左旋等全过程自动化控制,并对非正常情况实行自动报警和自动保护,实现企业的机电一体化,提高企业的生产效率。

自动装配生产线上机械手PLC控制系统的设计

自动装配生产线上机械手PLC控制系统的设计

第1章绪论 1.1本课题在国内外研究现状 1.1.1 国内研究综述 在我国,汽车工业仍然是工业机械手主要的使用领域。但我国在工业机械手生产企业中,年产销量在100台以上、产值过5000万元的规模企业非常少,国外大型公司年产量都达5000到10000台,销售额为数十亿美元。目前国内机械手的保有量在4000台左右,井将以每年800~1000台左右的速度快速增长。工业机械手应用前景极为广阔。虽然目前国内生产工业机械手的企业并不多,很多产品的生产技术还主要依靠进口,高科技的技术主要还掌握在国际龙头厂商手里。国内机械手厂家主要还是受到控制系统的困扰,没有比较成熟稳定的伺服系统,所以不能生产高端机器。我国本土企业生产的机械手产品还主要流通在中低端市场,因此决定了很多本土生产企业在争夺市场时主要还是采取价格战。随着技术的进步,日臻成熟,会有更多的厂商加入此行业。我国国家“863'’机械手技术主题自成立以来一直重视机械手技术在产业中的推广和应用和推进机械手技术以提升传统产业,利用机械手技术发展高新产业。目前,政府正在使用各种办法加大中国装备制造业在市场中占据的份额,井提供优惠措施鼓励更多企业使用机械手及技术以提升技术水平。国内越来越多的企业在生产中采用了工业机械手,各种机械手生产厂家的销售量都有大幅度的提高。 1.1.2 国外研究综述 目前世界高端工业机械手均有高精化,高速化,多轴化,轻量化的发展趋势。定位精度可以满足微米及亚微米级要求,运行速度可以达到3M/S,量产产品达到6轴,负载2KG的产品系统总重已突破100KG。现代式工业中,生产过程的机械化,自动化已成为突出的主题。化工等连续性生产过程的自动化已基本得到解决。采用全自动化机械手进行装配更是目前研究的重点,国外已研究采用摄像机和力传感装置和微型计算机连在一起,能确定零件的方位达到镶装的目的。但在

搬运机械手PLC控制系统设计方案【毕业设计方案】

搬运机械手PLC控制系统设计 摘要 随着工业自动化的普及和发展,控制器的需求量逐年增大,搬运机械手的应用也逐渐普及,主要在汽车,电子,机械加工、食品、医药等领域的生产流水线或货物装卸调运, 可以更好地节约能源和提高运输设备或产品的效率,以降低其他搬运方式的限制和不足,满足现代经济发展的要求。 本机械手的机械结构主要包括由两个电磁阀控制的液压钢来实现机械手的上升下降运动及夹紧工件的动作,两个转速不同的电动机分别通过两线圈控制电动机的正反转,从而实现小车的快进、慢进、快退、慢退的运动运动;其动作转换靠设置在各个不同部位的行程开关(SQ1---SQ9>产生的通断信号传输到PLC控制器,通过PLC内部程序输出不同的信号,从而驱动外部线圈来控制电动机或电磁阀产生不同的动作,可实现机械手的精确定位;其动作过程包括:下降、夹紧、上升、慢进、快进、慢进、延时、下降、放松、上升、慢退、快退、慢退;其操作方式包括:回原位、手动、单步、单周期、连续;来满足生产中的各种操作要求。 关键词:搬运机械手,可编程控制器 generated on-off signal transmission to the PLC controller, through the PLC internal different output signal, which drives the external coil to control the motor or solenoid valves have a different action, the robot can achieve precise positioning。 their course of action include: decline in clamping increased, slow forward, fast forward, slow progress, the extension of , the drop in, relax, rise, slow back, rewind, slow

(完整版)基于PLC的物料分拣机械手自动化控制系统设计

韶关学院 毕业设计 题目: 基于PLC的物料分拣机械手自动化控制 系统设计 学生姓名:陈浩 学号: 12101102015 系(院): 物理与机电工程学院自动化系 专业:自动化专业 班级:2012级2班 指导教师姓名及职称:韩竺秦讲师

起止时间:2015年10月一2016年_5_月

基于PLC的机械手分拣控制系统设计 摘要:在现今的生活上,科技日新月益的进展之下,机械手在先进制造领域中扮演着极其重要的角色。它可以搬运货物、分拣物品、代替人的繁重劳动,可以实现生产的机械化和自动化,能在有害环境下操作以保护人身安全。机械手臂的应用也将会越来越广泛,机械手是近几十年发展起来的一种高科技自动生产设备,作业的准确性和环境中完成作业的能力。因此被广泛应用于机械制造、冶金、电子、轻工和原子能等部门。 结合近年来整个机械手的发展,并分析了机械手系统和机械手方面的设计,提出了用气 动驱动和PLC控制设计方案。考虑了软、硬件各自的特点,对物料分拣机械手的整体结构、 驱动系统、执行结构和控制系统进行了分析和设计,我们可以采用整体化的设计思想并进行 互补和优化。在气动驱动和PLC控制设计方案中,其驱动系统中采用气动驱动,控制系统中选择PLC的控制单元来完成系统功能的初始化、机械手的移动、故障报警,分拣等功能。我 们很容易得出了一种简单、易于实现、理论意义明确的控制策略。 通过以上部分的分析,得出了经济,实用,高可靠的材料分拣机械手设计方案,对于其他经济的PLC控制系统的设计也有一定的参考价值。 关键词:机械手;触摸屏(HMI);可编程控制器(PLC);自动化控制;物料分拣

机械手自动化定位控制编程毕业论文

机械手自动化定位控制编程毕业论文 序 是一种能机械手自动化定位控制编程并可重新序以变动的多功能机器,它有多个自由度,可用来搬运物体以完成在各个不同环境中工作。 1962年,美国联合控制公司在上述方案的基础上又试制成一台数控示教再现型机械手。商名为Unimate(即万能自动)。运动系统仿照坦克炮塔,臂可以回转、俯仰、伸缩、用液压驱动;控制系统用磁鼓作为存储装置。不少球坐标通用机械手就是在这个基础上发展起来的。同年该公司和普鲁曼公司合并成立万能自动公司,专门生产工业机械手。 1962年美国机械制造公司也实验成功一种叫Vewrsatran机械手。该机械手的中央立柱可以回转、升降采用液压驱动控制系统也是示教再现型。虽然这两种机械手出现在六十年代初,但都是国外工业机械手发展的基础。 1978年美国Unimate公司和斯坦福大学,麻省理工学院联合研制一种Unimate-Vicarm型工业机械手,装有小型电子计算机进行控制,用于装配作业,定位误差小于±1毫米。联邦德国机械制造业是从1970年开始应用机械手,主要用于起重运输、焊接和设备的上下料等作业。 联邦德国KnKa公司还生产一种点焊机械手,采用关节式结构和程序控制。 日本是工业机械手发展最快、应用最多的国家。自1969年从美国引进两种机械手后大力从事机械手的研究。 前苏联自六十年代开始发展应用机械手,至1977年底,其中一半是国产,一半是进口。 工业机械手是近几十年发展起来的一种高科技自动化生产设备。工业机械手的是工业机器人的一个重要分支。它的特点是可通过编程来完成各种预期的作业任务,在构造和性能上兼有人和机器各自的优点,尤其体现了人的智能和适应性。机械手作业的准确性和各种环境中完成作业的能力,在国民经济各领域有着广阔的发展前景。

机械手的PLC控制(完整)

毕业设计报告 课题:机械手的PLC控制 系部:机电系 专业:电气自动化 班级:电气1332 姓名:王琪 学号:26 指导老师:贾君贤 2016-6 摘要 机械手是工业自动化系统中传统的任务执行机构,是机器人的关键部件之一。机械手的机械结构采用滚珠丝杆、滑杆、等机械器件组成;电气方面有交流电机、传感器、等电子器件组成。该装置涵盖了可编程控制技术,位置控制技术、检测技术等,是机电一体化的典型代表仪器之一。本文介绍的机械手是由PLC 输出三路脉冲,控制机械手横轴和竖轴的精确定位,微动开关将位置信号传给PLC主机;位置信号由接近开关反馈给PLC主机,通过交流电机的正反转来控制机械手手爪的张合,从而实现机械手精确运动的功能。本课题拟开发的物料搬运机械手可在空间抓放物体,动作灵活多样,可代替人工在高温和危险的作业区进行作业,并可根据工件的变化及运动流程的要求随时更改相关参数。 关键词:机械手 PLC 交流电机 目录 摘要 (1)

引言 (3) 第一章机械手机械结构 (4) 1.1传动机构 (4) 1.2机械手夹持器和机座的结构 (6) 第二章机械手PLC及电机的应用 (8) 2.1 PLC简介 (8) 2.2 PLC内部原理 (10) 2.3 机械手PLC选择及参数 (12) 2.4 机械手电机的选用 (13) 第三章机械手PLC控制系统设计 (14) 3.1 机械手的工艺过程 (14) 3.2PLC控制系统 (16) 致答谢词 (21) 参考文献 (22) 引言 在现代工业中,随着工业现代化的进一步发展,自动化已经成为现代企业中的重要支柱,无人车间、无人生产流水线等等,已经随处可见。同时,现代生产中,存在着各种各样的生产环境,如高温、放射性、有毒气体、有害气体场合以及水下作业等,这些恶劣的生产环境不利于人工进行操作。 工业机械手是近代自动控制领域中出现的一项新的技术,是现代控制理论与工业生产自动化实践相结合的产物,并以成为现代机械制造生产系统中的一个重要组成部分。工业机械手是提高生产过程自动化、改善劳动条件、提高产品质量和生产效率的有效手段之一。尤其在高温、高压、粉尘、噪声以及带有放射性和污染的场合,应用得更为广泛。在我国,近几年来也有较快的发展,并取得一定的效果,受到机械工业和铁路工业部门的重视。 本课题拟开发物料搬运机械手,采用日本三菱公司的FX2N系列PLC,对机械手的上下、左右以及抓取运动进行控制。该装置机械部分有滚珠丝杠、滑轨、机械抓手等;电气方面由交流电机、操作台等部件组成。我们利用可编程技术,结合相应的硬件装置,控制机械手完成各种动作。

相关文档
最新文档