YASKAWA표준 인터페이스 명령어

현재 최신 버전 (1.3.0)에 대한 매뉴얼을 보고 계십니다. 다른 버전에 액세스하려면 페이지 오른쪽 상단 모서리에 있는 '버전 전환' 버튼을 클릭하세요.

■ 현재 사용하고 있는 제품의 버전이 확실하지 않은 경우에는 언제든지 당사 기술 지원팀에 문의하시기 바랍니다.

이 부분에서는 YASKAWA로봇과 Mech-Mind 온라인 측정 시스템 간의 TCP 통신에서 사용되는 표준 인터페이스 명령어를 설명합니다. 여기서 로봇(클라이언트)은 Mech-Mind온라인 측정 시스템(서버)으로 명령어를 전송하고, Mech-Mind온라인 측정 시스템은 처리된 데이터를 로봇으로 반환합니다.

명령어 개요

명령어 이름 필수 호출 여부 설명

통신 초기화하기

로봇과 통신하는 IPC의 IP 주소, 포트 번호 및 통신 시간 초과 대기 시간을 설정합니다.

TCP 통신 연결 설정하기

로봇과 온라인 측정 시스템 간의 TCP 프로토콜 통신 연결을 설정합니다.

TCP 프로토콜 통신 연결 끊기

로봇과 온라인 측정 시스템 간의 TCP 프로토콜 통신 연결을 끊습니다.

프로젝트 전환하기

아니오

로봇이 Mech-Metrics에 프로젝트 전환 시작을 알립니다.

측정 시작하기

로봇이 Mech-Metrics에 새 대상 물체 측정 시작을 알리고, 대상 물체 이름, 대상 물체 SN 및 기타 대상 물체 정보를 Mech-Metrics에 전송합니다.

특징 측정 실행하기

해당 측정 특징의 Mech-MSR프로젝트 실행을 트리거합니다. 여러 번 측정해야 하는 경우, 이 명령어를 여러 번 호출할 수 있습니다.

측정 작업 종료하기

로봇이Mech-Metrics에 측정 종료를 알리고, 대상 물체 측정 결과를 조회합니다.

측정 중 대상 물체 SN 전달하기

아니오

일부 시나리오에서는 측정 시작 시 대상 물체 SN을 가져올 수 없습니다. 예를 들어 측정 중 스캔하여 가져와야 하는 경우가 있습니다. 이 명령어는 대상 물체 측정 중 대상 물체 SN을 전달하는 데 사용됩니다.

대상 물체 이력 데이터 조회하기

아니오

대상 물체 SN을 전달하여 Mech-Metrics 소프트웨어 기본 화면을 해당 대상 물체의 데이터 보기로 전환합니다.

캘리브레이션

예 (자동 캘리브레이션 프로그램)

로봇의 핸드-아이 캘리브레이션(외부 파라미터 캘리브레이션)에 사용됩니다

주의사항

시작하기 전에 다음 주의사항을 확인하시기 바랍니다:

  • YASKAWA로봇 명령어 호출에 관한 설명:

    • 명령어의 파라미터 리스트 중의 각 파라미터 사이를 영어 쉼표로 구분합니다.

    • 명령어 호출 시 파라미터: 입력한 파라미터는 기본적으로 문자열 상수이고 출력한 파라미터는 기본적으로 문자열 상수이며 백그라운드 프로그램에 해당 전역 변수가 있습니다.

    • 통신 연결 및 통신 연결 끊기는 두 개의 독립 명령어 (TCP 통신 연결 설정하기 그리고TCP 프로토콜 통신 연결 끊기)로, 로봇과 비전 시스템 간의 통신을 자주 연결하고 끊는 것을 방지합니다.

  • 데이터 단위:

    • 관절 각도의 단위는 도(°)입니다.

    • 로봇의 플랜지 포즈 또는 말단장치 포즈는 위치와 포즈로 구성되며 위치는 XYZ 좌표로 표시되며 단위는 밀리미터(mm)입니다. 포즈는 오일러 각도로 표시되며 단위는 각도(°)입니다.

통신 초기화

로봇 통신을 위한 IPC의 IP 주소, 포트 번호 및 통신이 제한된 시간을 설정하는 명령어입니다.

호출 시점

이 명령어를 사용한 후, 사용자는 TCP 프로토콜 통신 연결을 설정해야 로봇과 온라인 측정 시스템 간의 TCP 프로토콜 통신 연결을 설정할 수 있습니다. 초기화는 한 번만 수행하면 됩니다.

명령어 형식

MSR_INIT_SOCKET("IP_Address;Server_Port;Time_Out")

파라미터를 입력

IP_Address

이 파라미터는 IPC의 IP 주소입니다. 데이터 유형은 string입니다.

Server_Port

이 파라미터는 IPC 와 로봇이 통신을 구축할 때 사용하는 포트 번호입니다. 이 파라미터 값은 Mech-MSR 소프트웨어의 TCP ASCII 서비스 통신 구성(표준 통신 방식)에 설정된 호스트 포트 번호와 일치해야 합니다. 데이터 유형은 num입니다.

Time_Out

이 파라미터는 통신의 타임아웃 대기 시간을 의미하며 단위는 분입니다.

예시

CALL JOB:MSR_INIT_SOCKET("192.168.1.20;50000;5")

위 예시에서 로봇이 연결하려는 IPC의 IP 주소는 192.168.1.20이고 포트 번호는 50000이며 타임아웃 대기 시간은 5분입니다.

TCP 통신 연결 설정하기

이 명령어는 로봇과 온라인 측정 시스템 간의 TCP 프로토콜 통신 연결을 설정하는데 사용됩니다.

호출 시점

이 명령어는 통신 초기화 명령어를 호출한 후 즉시 사용되야 합니다.

명령어 형식

MSR_OPEN_SOCKET

예시

CALL JOB:MSR_OPEN_SOCKET

위 예시는 로봇과 온라인 측정 시스템 간의 TCP 프로토콜 통신을 설정함을 나타냅니다.

TCP 프로토콜 통신 연결 끊기

이 명령어는 로봇과 온라인 측정 시스템 간의 TCP 프로토콜 통신 연결을 끊습니다.

호출 순서

Mech-MSR 프로젝트의 결과를 받은 후, 이 명령어를 호출하여 통신을 종료하고 결과를 변수에 덤프할 수 있습니다. 오랫동안 통신을 종료하지 않으면, 로봇 프로그램에서 통신이 비정상적으로 종료되었다는 오류가 반환될 수 있습니다.

명령어 형식

MSR_CLOSE_SOCKET

프로젝트 전환

로봇이 Mech-Metrics에 프로젝트 전환 시작을 알립니다.

호출 시점

프로젝트 전환 시작 전.

명령어 형식

MSR_SWITCH_PROJECT ARGF"RobotID;Job; regStatus"

파라미터를 입력

RobotID

이 파라미터는 대상 물체 번호를 나타냅니다. 대상 물체 번호는 1~99 사이의 정수입니다. 지정한 대상 물체 번호는 대상 물체 번호 구성화면에서 이미 구성되어 있어야 합니다.. 데이터 유형은 num입니다.

Job

이 파라미터는 프로젝트 번호를 의미합니다. 지정한 프로젝트 번호는 프로젝트 전환 규칙을 통해 이미 구성되어 있어야 합니다. 데이터 유형은 num입니다.

파라미터를 출력

regStatus

이 파라미터는 I형 변수로, 명령어 실행 후 반환되는 상태 코드를 수신합니다.

8105: 명령어 실행 성공을 나타냅니다.

-99: 로봇 통신 오류를 나타냅니다.

예시

CALL JOB:MSR_SWITCH_PROJECT ARGF"1;1;80"

위 예시는 대상 물체 번호가 1이고 프로젝트 번호가 1인 프로젝트로 전환하며, 명령어 상태 코드를 I 변수 80에 저장함을 나타냅니다.

측정 시작하기

로봇이 Mech-Metrics에 새 대상 물체 측정 시작을 알리고, 대상 물체 이름, 대상 물체 SN 및 기타 대상 물체 정보를 Mech-Metrics에 전송합니다.

호출 시점

새 대상 물체 측정 시작 시.

명령어 형식

MSR_START_MEASURE("RobotID; Qc_Mode; CustomData[0]; CustomData[1]; CustomData[2]; CustomData[3]; CustomData[4]; CustomData[5]; CustomData[6]; CustomData[7]; Reg_Num", "Piece_Name", "Piece_SN;regStatus")

입력 파라미터

RobotID

이 파라미터는 대상 물체 번호를 나타냅니다. 대상 물체 번호는 1~99 사이의 정수입니다. 지정한 대상 물체 번호는 대상 물체 번호 구성 화면에서 이미 구성되어 있어야 합니다. 데이터 유형은 num입니다.

Piece_Name

이 파라미터는 측정할 대상 물체의 이름을 나타냅니다. 대상 물체 이름은 문자와 숫자를 포함할 수 있으며, 길이는 20자를 초과할 수 없습니다. 데이터 유형은 string입니다.

Piece_SN

이 파라미터는 대상 물체 SN을 나타냅니다. 대상 물체 SN은 대상 물체 시리얼 넘버라고도 하며, 해당 대상 물체의 고유 식별자입니다. 대상 물체 SN은 문자와 숫자를 포함할 수 있으며, 길이는 30자를 초과할 수 없습니다. 데이터 유형은 string입니다.

Qc_Mode

이 파라미터는 대상 물체의 품질 검사 모드를 나타냅니다. 데이터 유형은 num입니다. 각 파라미터 값의 의미는 다음과 같습니다:

  • 1: 전수 검사입니다.

  • 2: 부분 검사입니다.

  • 기타: 기존 설정을 사용합니다.

CustomData[0]-CustomData[7]

이 파라미터는 선택 파라미터이며, 대상 물체의 사용자 정의 정보를 제공하는 데 사용됩니다. 데이터 유형은 num입니다. 사용자 정의 파라미터는 Mech-Metrics에 더 많은 대상 물체 정보를 제공해야 할 때만 사용합니다. 이 명령어는 최대 8개의 사용자 정의 파라미터를 지원하며, 각 사용자 정의 파라미터의 값은 1~8 사이의 정수입니다.

사용자 정의 파라미터를 사용해야 하는 경우:

  1. Mech-Metrics 소프트웨어 구성 화면 상단의 기능 영역에서 통신  통신 명령어 구성을 선택하고, 지정한 사용자 정의 파라미터(예: 사용자 정의 파라미터 1)에 대해 해당 파라미터 값(1~8)의 의미를 구성합니다.

  2. 이 명령어에서 지정한 사용자 정의 파라미터를 설정합니다.

출력 파라미터

Reg_Num

이 파라미터는 I 레지스터 번호를 나타내며, 해당 레지스터는 소프트웨어에서 반환한 이번 실행이 연속 실행인지 단일 실행인지를 저장하는 데 사용됩니다.

0: 단일 실행입니다.

1: 연속 실행입니다.

단일 실행으로 지정한 경우, 로봇 측에서는 다음 명령어를 한 번씩 실행합니다: 측정 시작하기특징 측정 실행측정 작업 종료. 여러 특징을 측정해야 하는 경우, 특징 측정 명령어를 여러 번 실행하십시오. 예를 들어 사용자가 두 개의 특징을 측정해야 하는 경우, 단일 실행 시 로봇 측에서 다음 명령어를 한 번씩 실행해야 합니다. 프로그램 시작 측정 시작하기특징 측정 실행특징 측정 실행측정 작업 종료 프로그램 종료.

연속 실행으로 지정한 경우, 로봇 측에서 한 라운드의 명령어를 실행한 후 측정 시작하기 위치로 돌아가 반복 실행합니다. 특정 라운드의 측정 시작하기에서 단일 실행이 반환되면, 로봇 프로그램은 해당 라운드의 명령어 실행을 완료한 후 중지됩니다.

  • 기본적으로 Mech-Metrics는 로봇에 0을 반환하여 이번 실행이 단일 실행임을 알립니다.

  • 반동적 반복정밀도 테스트에서는 Mech-Metrics가 로봇에 1을 반환하여 이번 실행이 연속 실행임을 알립니다. 반동적 반복정밀도 테스트 중에는 로봇을 수동으로 이동하거나 대상 물체를 수동으로 장착할 필요가 없으므로, 로봇은 여러 명령어를 연속으로 실행할 수 있습니다.

regStatus

이 파라미터는 I형 변수로, 명령어 실행 후 반환되는 상태 코드를 수신합니다.

8100: 명령어 실행 성공을 나타냅니다.

-99: 로봇 통신 오류를 나타냅니다.

예시

CALL JOB:MSR_START_MEASURE ARGF"1;2;3;1;1;1;1;1;1;10;80" ARGF"Piece01" ARGF"STRING"

위 예시는 로봇이 Mech-Metrics에 새 대상 물체 측정 시작을 알리고, 대상 물체 번호 1, 부분 검사 모드(2), 8개 사용자 정의 파라미터(3;1;1;1;1;1;1;10), 대상 물체 이름 및 대상 물체 SN을 소프트웨어에 전송함을 나타냅니다.

특징 측정 실행

해당 측정 특징의 Mech-MSR프로젝트 실행을 트리거합니다.

호출 시점

로봇이 측정 특징 촬영 위치에 도달했습니다.

명령어 형식

MSR_MEASURE_FEASURE("RobotID; Measure_Index; regStatus")

파라미터를 입력

RobotID

이 파라미터는 대상 물체 번호를 나타냅니다. 대상 물체 번호는 1~99 사이의 정수입니다. 지정한 대상 물체 번호는 대상 물체 번호 구성화면에서 이미 구성되어 있어야 합니다.. 데이터 유형은 num입니다.

Measure_Index

이 파라미터는 측정할 특징의 측정 번호를 나타냅니다. 데이터 유형은 num입니다. 측정 번호는 해당 특징의 고유 식별자입니다. 측정 특징 번호는 1~999 사이의 정수입니다.

파라미터를 출력

regStatus

이 파라미터는 I형 변수로, 명령어 실행 후 반환되는 상태 코드를 수신합니다.

8101: 명령어 실행 성공을 나타냅니다.

-99: 로봇 통신 오류를 나타냅니다.

예시

CALL JOB:MSR_MEASURE_FEASURE ARGF"1;1;80"

위 예시는 로봇 측에서 대상 물체 번호가 1이고 측정 특징의 측정 번호가 1인 Mech-MSR 프로젝트 실행을 트리거하고, 명령어 상태 코드를 변수 80에 저장함을 나타냅니다.

측정 작업 종료

로봇이Mech-Metrics에 측정 종료를 알리고, 대상 물체 측정 결과를 조회합니다.

호출 시점

마지막 측정 특징의 촬영이 완료되어 대상 물체 측정이 완료되었습니다.

명령어 형식

MSR_END_MEASURE("RobotID; Reg_Judge; Reg_Num1; Reg_Num2; Reg_Num3; regStatus")

파라미터를 입력

RobotID

이 파라미터는 대상 물체 번호를 나타냅니다. 대상 물체 번호는 1~99 사이의 정수입니다. 지정한 대상 물체 번호는 대상 물체 번호 구성화면에서 이미 구성되어 있어야 합니다.. 데이터 유형은 num입니다.

파라미터를 출력

Reg_Judge

이 파라미터는 I 레지스터 번호를 나타내며, 해당 레지스터는 대상 물체 판정 결과를 저장하는 데 사용됩니다. 1은 정상, 0은 불량을 의미합니다.

Reg_Num1, Reg_Num2, Reg_Num3

이 파라미터는 I 레지스터 번호를 나타내며, 대상 물체의 측정 항목 수를 저장하는 데 사용됩니다. 데이터 유형은 num입니다. 구체적인 내용은 다음과 같습니다:

  • Reg_Num는 대상 물체가 1급 공차대를 초과한 측정 항목 수를 저장합니다.

  • Reg_Num는 대상 물체가 2급 공차대를 초과한 측정 항목 수를 저장합니다.

  • Reg_Num는 대상 물체가 3급 공차대를 초과한 측정 항목 수를 저장합니다.

regStatus

이 파라미터는 I형 변수로, 명령어 실행 후 반환되는 상태 코드를 수신합니다.

8102: 명령어 실행 성공을 나타냅니다.

-99: 로봇 통신 오류를 나타냅니다.

예시

CALL JOB:MSR_END_MEASURE ARGF"1;11;31;32;33;80"

위 예시는 로봇이 Mech-Metrics 측정 종료(대상 물체 번호 1)를 알리고, 동시에 Mech-Metrics가 측정 결과를 반환하며, 대상 물체 판정 결과를 번호 11의 숫자 레지스터에 저장하고, 대상 물체가 1급, 2급, 3급 공차대를 초과한 측정 항목 수를 각각 번호 31, 32, 33의 숫자 레지스터에 저장하며, 명령어 상태 코드를 번호 80의 숫자 레지스터에 저장함을 나타냅니다.

측정 중 대상 물체 SN 전달

일부 시나리오에서는 측정 시작 시 대상 물체 SN을 가져올 수 없습니다. 예를 들어 측정 중 스캔하여 가져와야 하는 경우가 있습니다. 이 명령어는 대상 물체 측정 중 대상 물체 SN을 전달하는 데 사용됩니다.

호출 시점

대상 물체 측정 과정 중 임의의 시점.

명령어 형식

MSR_SET_PIECE_INFO("RobotID;regStatus", "Piece_SN")

파라미터를 입력

RobotID

이 파라미터는 대상 물체 번호를 나타냅니다. 대상 물체 번호는 1~99 사이의 정수입니다. 지정한 대상 물체 번호는 대상 물체 번호 구성화면에서 이미 구성되어 있어야 합니다.. 데이터 유형은 num입니다.

Piece_SN

이 파라미터는 대상 물체 SN를 나타냅니다. 대상 물체 SN은 대상 물체 시리얼 넘버라고도 하며, 해당 대상 물체의 고유 식별자입니다. 대상 물체 SN은 문자와 숫자를 포함할 수 있으며, 길이는 30자를 초과할 수 없습니다. 데이터 유형은 string입니다.

파라미터를 출력

regStatus

이 파라미터는 I형 변수로, 명령어 실행 후 반환되는 상태 코드를 수신합니다.

8103: 명령어 실행 성공을 나타냅니다.

-99: 로봇 통신 오류를 나타냅니다.

예시

CALL JOB:MSR_SET_PIECE_INFO ARGF"1;80" ARGF"STRING"

이 예시는 로봇이 Mech-Metrics에 대상 물체 SN(대상 물체 번호 1)을 전달함을 나타냅니다.

대상 물체 이력 데이터 조회하기

외부에서 대상 물체 SN을 전달하여 Mech-Metrics 소프트웨어 기본 화면을 전달된 번호의 대상 물체로 전환합니다.

호출 시점

비측정 중의 임의의 시점.

명령어 형식

MSR_VIEW_PIECE_DATA("RobotID;regStatus", "Piece_SN")

파라미터를 입력

RobotID

이 파라미터는 대상 물체 번호를 나타냅니다. 대상 물체 번호는 1~99 사이의 정수입니다. 데이터 유형은 num입니다.

Piece_SN

이 파라미터는 대상 물체 SN를 나타냅니다. 대상 물체 SN은 대상 물체 시리얼 넘버라고도 하며, 해당 대상 물체의 고유 식별자입니다. 대상 물체 SN은 문자와 숫자를 포함할 수 있으며, 길이는 30자를 초과할 수 없습니다. 데이터 유형은 string입니다.

파라미터를 출력

regStatus

이 파라미터는 I형 변수로, 명령어 실행 후 반환되는 상태 코드를 수신합니다.

8104: 명령어 실행 성공을 나타냅니다.

-99: 로봇 통신 오류를 나타냅니다.

예시

CALL JOB:MSR_VIEW_PIECE_DATA ARGF"1;80" ARGF"STRING"

위 예시는 로봇이 대상 물체 SN을 Mech-Metrics에 전달하고(대상 물체 번호 1), Mech-Metrics 소프트웨어 기본 화면을 해당 대상 물체의 데이터 보기로 전환하며, 명령어 상태 코드를 번호 80의 숫자 레지스터에 저장함을 나타냅니다.

캘리브레이션

이 명령어는 로봇 핸드-아이 캘리브레이션(카메라 외부 파라미터 캘리브레이션)에 사용됩니다. 이 명령어는 Mech-MSR카메라 메뉴 바에 있는 3D 카메라 캘리브레이션도구와 함께 사용해야 합니다.

호출 순서

정식 측정 전에 이 명령어를 호출하여 로봇 핸드-아이 캘리브레이션을 수행해야 합니다.

명령어 형식

MSR_CALIB("Move_Type;Pos_Jps;Wait_Time;Rnum;Ext;Pos")

파라미터를 입력

{Move_Type}

이 파라미터는 로봇의 이동 유형이며, 유효한 값은 1 또는 2입니다.

  • 1: 직선 운동.

  • 2: 관절 운동.

{Pos_Jps}

이 파라미터는 캘리브레이션 포인트의 포즈 유형을 지정하며, 유효한 값은 1 또는 2입니다.

  • 1: 말단장치 포즈.

  • 2: 관절 각도.

{Wait_time}

이 파라미터는 로봇이 캘리브레이션 포인트 위치로 이동한 후 흔들림을 피하기 위해 기다리는 시간입니다. 기본값은 2(s)입니다. 단위는 초입니다. 데이터 유형은 num입니다.

{Ext}

이 파라미터는 외부 축 데이터를 지정합니다. 단위는 밀리미터입니다. 7번째 축이 존재하고 현장에서 로봇이 이를 제어하는 경우, 이 파라미터는 특정 외부 축 데이터로 설정해야 합니다. 그렇지 않으면, 이 파라미터는 0으로 설정해야 합니다.

파라미터를 출력

TOP_Status

명령어 상태 코드를 저장하는 데 사용됩니다.

예시

CALL JOB:MSR_CALIB("2;1;2;6;0;99")

위의 예시에서, 캘리브레이션 포인트의 포즈 형식은 말단장치 포즈로 표현됩니다. 로봇은 관절 각도 유형을 기반으로 캘리브레이션 포인트로 이동한 후 2초 동안 대기합니다. 외부 축이 존재하지 않습니다. 캘리브레이션 포인트의 포즈 데이터는 레지스터 P99에 저장됩니다.

이 페이지가 도움이 되었습니까?

다음 방법을 통해 피드백을 보내주실 수 있습니다:

저희는 귀하의 개인정보를 소중히 다룹니다.

당사 웹사이트는 최상의 사용자 경험을 제공하기 위해 쿠키를 사용하고 있습니다. "모두 수락"을 클릭하시면 쿠키 사용에 동의하시는 것이며, "모두 거부"를 클릭하시면 이 웹사이트 방문 시 귀하의 정보가 추적되거나 기억되지 않도록 단일 쿠키만 사용됩니다.