Skip to main content

4.7.2. 로봇 작업프로그램

4.7.2. 로봇 작업프로그램

 

아래 코드는 Hi5제어기의 RS232 통신을 이용하여 비전시스템과 연동하는 로봇 작업 프로그램 예제입니다. HRVision 2D와 통신해야 하는 부분에 아래 코드를 추가해 주십시오.

 

        ' P1, P2 : 로봇 파지점 

        P1=(X1,Y1,Z1,RX1,RY1,RZ1,CFG) ‘파지작업점 상단

        P2=(X2,Y2,Z2,RX2,RY2,RZ2,CFG) ‘파지작업점

        R1=(0,0,0,0,0,0)R

        R8=(0,0,0,0,0,0)R

        CLR232C 2       ‘COM2 Port Buffer Clear

        _TEINPUT=13    ‘Carriage Return

        _TEINPUT=10    ‘Line Feed

        V1$=""

        V2$=""

S1      MOVE P,S=100%,A=0,T=1  ‘로봇 대기 위치

        V3$="MODEL 01"

        PRINT #2,V3$

        DELAY 0.5

        V4$="START 01"         ‘2D Vision Calculation

        PRINT #2,V4$

        INPUT #2,V1$,4

        V2$=LEFT$(V1$,2)

        IF V2$="OK" THEN

        GOTO *VisionOK

        ELSE

        GOTO *VisionNG

        ENDIF    

        *VisionOK

        DELAY 0.5

        R8.CFG.REQ=2

        PRINT #2,"SHIFT 8"

        WAIT R8.CFG.ASSIGN,3,*ERROR

        PRINT #0,"X :";R8.X,"Y :";R8.Y,"RZ :";R8.RZ

수행할 작업

S3      MOVE P,P1+R8,S=80%,A=0,T=1

S4      MOVE L,P2+R8,S=80%,A=0,T=1

        END

        *VisionNG

        PRINT #0,"Vision NG“

        END

        *ERROR

        PRINT #0,"Comm. NG“

        END

 

 

 

 

Hi4a 제어기를 사용할 경우에는 “SHIFT데이터수신 부분을 아래와 같이 변경하여야만 실행 됩니다.

 

 

R1.CFG=4

        PRINT #2,"SHIFT 1"

        WAIT R1.CFG AND &B10000,3,*VisionNG

 

 

아래 코드는 Ethernet 통신을 수행할 경우의 로봇 작업 프로그램 예제입니다. HRVision 2D와 통신해야 하는 부분에 아래 코드를 추가해 주십시오.

 

' P1, P2 : 로봇 파지점 

        P1=(X1,Y1,Z1,RX1,RY1,RZ1,CFG) ‘파지작업점 상단

        P2=(X2,Y2,Z2,RX2,RY2,RZ2,CFG) ‘파지작업점

        R1=(0,0,0,0,0,0)R

        R8=(0,0,0,0,0,0)R

        'ENET Comm. Setup

        'Vision PC

        ENET1.IP="10.8.1.179"

        ENET1.RPORT=2000

        ENET1.LPORT=5000

        ENET1.OPEN 1

        _TEINPUT=13    ‘Carriage Return

        _TEINPUT=10    ‘Line Feed

        'Buffer Clear

        CLR_RBUF ENET1  ‘ENET Buffer Clear

        V1$=""

        V2$=""

S1      MOVE P,S=100%,A=0,T=1  ‘로봇 대기 위치

        V3$="MODEL 01"

        PRINT ENET1,V3$

        V4$="START 01"         ‘2D Vision Calculation

        PRINT ENET1,V4$

        INPUT ENET1,V1$,4

        V2$=LEFT$(V1$,2)

        IF V2$="OK" THEN

        GOTO *VisionOK

        ELSE

        GOTO *VisionNG

        ENDIF    

        *VisionOK

R1.CFG.REQ=3

        PRINT ENET1," SHIFT 8" ‘Depth Data Request

WAIT R8.CFG.ASSIGN,3,*ERROR

        PRINT #0,"X :";R8.X,"Y :";R8.Y,"RZ :";R8.RZ

수행할 작업

S3      MOVE P,P1+R8,S=80%,A=0,T=1

S4      MOVE L,P2+R8,S=80%,A=0,T=1

        END

        *VisionNG

        PRINT #0,"Vision NG“

        END

        *ERROR

        PRINT #0,"Comm. NG“

        END