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

명령어 개요
Mech-Vision 관련 명령어 |
Mech-Viz 관련 명령어 |
비전 이동 계획 결과 또는 사용자 정의 데이터를 획득하기 |
비전 이동 계획 결과 또는 사용자 정의 데이터를 획득하기 |
주의사항
-
KUKA로봇 명령어 호출에 관한 설명:
-
명령어의 형식 파라미터 리스트 중의 각파라미터 사이를 쉼표로 구분합니다.
-
각 형식 파라미터 변수는 명령어에서만 유효한 지역 변수로 정의됩니다.
-
명령어의 형식 파라미터 리스트는 입력 파라미터 및 출력 파라미터의 정의를 지원합니다.
-
-
데이터 단위:
-
관절 각도의 단위는 도(°)입니다.
-
로봇의 플랜지 포즈 또는 말단장치 포즈는 위치와 포즈로 구성되며 위치는 XYZ 좌표로 표시되며 단위는 밀리미터(mm)입니다. 포즈는 오일러 각도로 표시되며 단위는 각도(°)입니다.
-
-
비전 포인트 또는 웨이포인트:
-
비전 포인트: Mech-Vision에서 인식되는 물체입니다. 비전 포인트에는 물체 포즈, 레이블, 치수, 사용자 정의 데이터 등을 포함한 정보가 있습니다.
-
웨이포인트: 로봇이 계획된 경로를 따라 이동할 때 도달하는 각 지점입니다. 웨이포인트에는 로봇 포즈, 레이블, 이동 유형 등의 정보가 있습니다. 웨이포인트는 다음 두 가지 유형으로 나눠집니다:
-
비전 이동 웨이포인트: “비전 이동" 스텝에 해당하는 웨이포인트입니다.
-
비(非) 비전 이동 웨이포인트: “비전 이동" 스텝 이외의 다른 이동 유형 스텝에 해당하는 웨이포인트입니다.
-
로봇이 비전 시스템에서 획득할 수 있는 비전 포인트 또는 웨이포인트의 총 개수는 최대 100개입니다. -
통신 초기화
명령어 포맷
MM_Init_Socket(XML_Name,Alive_Flag,Recv_Flag,Time_Out)
입력 파라미터
XML_Name
파라미터는 네트워크 구성 파일로서 문자열로 표시되며 대소문자를 구분합니다. 이 곳의 네트워크 구성 파일은 XML_Kuka_MMIND.xml을 의미합니다. 이 파일은 이미 통신 구성 시 로봇에 복제한 것으로 파일의 구체적 내용은 다음과 같습니다.
<ETHERNETKRL>
<CONFIGURATION>
<EXTERNAL>
<IP>192.168.1.121</IP>
<PORT>50000</PORT>
</EXTERNAL>
<INTERNAL>
<ALIVE Set_Flag="873"/>
</INTERNAL>
</CONFIGURATION>
<RECEIVE>
<RAW>
<ELEMENT Tag="MMRecv" Type="BYTE" Set_Flag="871" Size="660" />
</RAW>
</RECEIVE>
<SEND>
<RAW>
<ELEMENT Tag="MMSend" Type="BYTE" Size="660"/>
</RAW>
</SEND>
</ETHERNETKRL>
이 파일에서 사용자는 <IP> 탭의 값이 IPC의 IP 주소이고 <PORT> 탭의 값이 로봇 통신 구성(Mech-Vision 소프트웨어의 툴 바)에 설정된 호스트 포트 번호임을 확인해야 합니다.
Alive_Flag
이 파라미터는 XML_Kuka_MMIND.xml 파일 중 <ALIVE> 탭의 Set_Flag 값입니다. 위 파일을 예로 들면 해당 파라미터의 값은 873으로 설정해야 합니다. 이 파라미터 값이 해당하는 신호는 ON이며 비전 시스템과 로봇의 통신이 성공함을 의미합니다.
Recv_Flag
이 파라미터는 XML_Kuka_MMIND.xml 파일 중 <RECEIVE> 탭의 Set_Flag 값입니다. 위 파일을 예로 들면 해당 파라미터의 값은 871로 설정해야 합니다. 이 파라미터 값이 해당하는 신호는 ON이며 로봇이 비전 시스템이 발송한 데이터를 수신함을 의미합니다.
Time_Out
이 파라미터는 통신의 타임아웃 대기 시간을 의미하며 단위는 초입니다.
Mech-Vision 프로젝트를 실행하기
기능 소개
이 명령어는 주로 Mech-Vision 프로젝트 작업을 트리거 하는 데 사용됩니다. Mech-Vision 프로젝트가 실행 중일 때 비전 시스템은 카메라를 작동시켜 이미지를 캡처한 다음 반환된 이미지를 알고리즘으로 처리하여 일련의 비전 포인트 또는 웨이포인트를 생성합니다.
|
호출 순서
-
Mech-Vision 프로젝트를 실행하기 전에 프로젝트의 스텝 파라미터를 설정해야 하므로 Mech-Vision 파라미터 레시피를 전환하기 명령어 또는 Mech-Vision 프로젝트에 물체 치수 입력하기 명령어는 Mech-Vision 프로젝트를 실행하기 명령어를 호출하기 전에 호출해야 합니다.
-
Mech-Vision 프로젝트를 실행한 후 비전 시스템은 비전 포인트 또는 웨이포인트를 수신할 수 있으므로 Mech-Vision 프로젝트를 실행하기 명령어는 비전 결과 획득하기, Mech-Vision가 계획한 경로를 획득하기 또는 Mech-Vision 자체 정의한 데이터를 획득하기 명령어를 호출하기 전에 호출해야 합니다.
명령어 포맷
MM_Start_Vis(Job,Pos_Num_Need,SendPos_Type,MM_J)
파라미터를 입력하기
Job
이 파라미터는 Mech-Vision 프로젝트 번호입니다. 데이터 유형은 INT입니다.Mech-Vision 프로젝트 번호(프로젝트 이름 앞의 숫자)는 Mech-Vision 프로젝트 리스트에서 확인할 수 있습니다.
Pos_Num_Need
이 파라미터는 Mech-Vision 프로젝트에서 획득하는 비전 포인트 또는 웨이포인트 수량의 목표값을 나타냅니다. 데이터 유형은 INT입니다.값의 범위는 0이나 0보다 큰 정수이며 구체적으로 다음과 같습니다.
Mech-Vision 프로젝트에 “경로 계획” 스텝이 있으면 이 파라미터는 “예상되는 웨이포인트 수”를 나타내고 “경로 계획” 스텝이 없으면 “예상되는 비전 포인트 수”를 나타냅니다. |
-
0: Mech-Vision 프로젝트를 통해 모든 비전 포인트 또는 웨이포인트를 획득합니다.
-
0보다 큰 정수: Mech-Vision 프로젝트를 통해 일정 수량의 비전 포인트 또는 웨이포인트를 획득합니다.
-
Mech-Vision 프로젝트에서 출력되는 비전 포인트 또는 웨이포인트의 총량이 해당 파라미터의 값보다 작은 경우, 출력되는 모든 비전 포인트 또는 웨이포인트를 획득합니다.
-
Mech-Vision 프로젝트에서 출력되는 비전 포인트 또는 웨이포인트의 총량이 해당 파라미터의 값과 동일하거나 이 값보다 큰 경우, 지정된 수량의 비전 포인트 또는 웨이포인트를 획득합니다.
-
![]() |
SendPos_Type
이 파라미터는 실제 로봇 포즈가 Mech-Vision 프로젝트에 전송되는 방식을 지정합니다. 데이터 유형은 INT입니다. 값의 범위는 0, 1, 2, 3입니다. 아래 표는 자세한 내용을 설명합니다.
SendPos_Type | 설명 | 적용 시나리오 |
---|---|---|
0 |
이 명령어는 Mech-Vision프로젝트로 로봇 포즈를 보낼 필요가 없습니다. Mech-Vision 프로젝트에서 "경로 계획" 스텝을 사용하는 경우 경로 계획의 시작치 위치는 경로 계획 도구에 설정된 원점 위치입니다. |
카메라는 Eye To Hand 방식으로 장착되는 경우 이 설정을 사용해야 합니다. 프로젝트는 사전에 이미지를 캡처할 필요가 없습니다. |
1 |
이 명령어는 로봇의 관절 각도와 플랜지 포즈를 Mech-Vision프로젝트로 입력해야 합니다. |
카메라는 Eye To Hand 방식으로 장착되는 경우 이 설정을 사용해야 합니다. 겐트리 로봇이 사용되는 시나리오 제외한 대부분 시나리오에서는 이 설정을 사용하는 것을 추천합니다. |
2 |
이 명령어는 로봇의 플랜지 포즈를 Mech-Vision프로젝트로 입력해야 합니다. |
이 설정은 겐트리 로봇이 사용되는 시나리오에서 추천됩니다. |
3 |
이 명령어는 사용자가 자체 정의한 관절 각도를 Mech-Vision프로젝트로 입력해야 합니다. 이 관절 각도 데이트는 Mech-Vision 프로젝트의 "경로 계획" 스텝에게 시작점으로 전송되며, 즉 로봇은 이 시작점에서 계획된 경로의 첫 번째 웨이포인트로 이동합니다. |
카메라는 Eye To Hand 방식으로 장착되는 경우 이 설정을 사용해야 합니다. 프로젝트는 사전에 이미지를 캡처할 필요가 있습니다. |
|
MM_J
이 파라미터는 사용자가 자체 정의한 관절 각도(JPs) 데이터입니다. 데이터 유형은 E6AXIS입니다.
-
SendPos_Type 파라미터의 값은 3이라면 이 관절 각도 데이트는 Mech-Vision 프로젝트의 "경로 계획" 스텝에게 시작점으로 전송되며, 즉 로봇은 이 시작점에서 계획된 경로의 첫 번째 웨이포인트로 이동합니다.
-
SendPos_Type 파라미터의 값을 3 이외의 값으로 설정하면 여기서 설정한 관절 각도 데이터는 사용되지 않으나 설정되어야 합니다.
비전 결과 획득하기
기능 소개
이 명령어는 Mech-Vision에서 출력한 비전 결과(일련의 비전 포인트)를 획득하는 데 사용됩니다. 비전 포인트의 물체 포즈(즉, "출력" 스텝의 "poses" 포트에서 출력된 데이터)는 비전 시스템에 의해 로봇의 말단장치 포즈로 변환됩니다. 과정은 다음과 같습니다.
"출력" 스텝의 첫 번째 입력 포트가 대상 물체 중심점이라면, "출력" 스텝은 대상 물체 중심점을 해당하는 픽 포인트로 변환합니다. 따라서 이 명령을 실행하여 얻은 대상 물체 포즈는 실제로 대상 물체 중심점의 포즈가 아니라 픽 포인트의 포즈입니다. |

-
물체 포즈의 형식을 사원수를 오일러 각으로 전환합니다.
-
X축을 중심으로 물체의 포즈를 180° 회전하여 Z축 방향을 아래쪽으로 가리키도록 합니다.
호출 순서
이 명령어는 Mech-Vision 프로젝트를 실행하기 명령어를 호출한 후 사용해야 합니다. 이 명령어를 호출한 후, 포즈 데이터를 접근하기 위해 비전 결과와 계획 경로를 저장하기(말단장치 포즈) 명령어를 호출하십시오.
명령어 포맷
MM_Get_VisData(Job,Pos_Num,MM_Status)
파라미터를 입력하기
Job
이 파라미터는 Mech-Vision 프로젝트 번호입니다. 데이터 유형은 INT입니다.Mech-Vision 프로젝트 번호(프로젝트 이름 앞의 숫자)는 Mech-Vision 프로젝트 리스트에서 확인할 수 있습니다.
파라미터를 출력하기
Pos_Num
이 파라미터는 Mech-Vision 반환한 비전 포인트를 저장합니다.데이터 유형은 INT입니다.
MM_Status
이 파라미터는 해당 명령어의 실행 상태 코드를 저장합니다.데이터 유형은 INT입니다. 명령어가 성공적으로 실행되면 상태 코드는 1100입니다. 명령어 실행이 비정상일 경우 상태 코드는 해당 오류 코드입니다. 자세한 내용은 "표준 인터페이스 상태 코드 및 오류 분석"을 참조하십시오.
이 명령어를 호출한 후 비전 시스템이 기본적으로 10초 이내에 처리 결과를 반환하지 않으면 타임아웃 오류 상태 코드를 반환합니다. Mech-Vision 툴 바의 에서 필요에 따라 이 기본 시간 제한을 변경할 수 있습니다.![]() |
비전 결과와 계획 경로를 저장하기(말단장치 포즈)
계획 경로를 저장하기(관절 각도)
Mech-Vision 파라미터 레시피를 전환하기
기능 소개
이 명령어는 Mech-Vision 프로젝트에서 사용되는 파라미터 레시피를 전환하는 데 사용됩니다. 아래 이미지는 Mech-Vision 프로젝트의 파라미터 레시피를 수동으로 전환하는 방법을 보여줍니다. 파라미터 레시피와 관련된 정보를 획득하려면 파라미터 레시피 내용을 참조하십시오.

호출 순서
이 명령어는 Mech-Vision 프로젝트를 실행하기 명령어를 호출하기 전에 사용해야 합니다.
명령어 포맷
MM_Switch_Model(Job,Model_Number)
파라미터를 입력하기
Job
이 파라미터는 Mech-Vision 프로젝트 번호입니다. 데이터 유형은 INT입니다.Mech-Vision 프로젝트 번호(프로젝트 이름 앞의 숫자)는 Mech-Vision 프로젝트 리스트에서 확인할 수 있습니다.
Model_Number
이 파라미터는 Mech-Vision 프로젝트 중 사용되는 파라미터 레시피의 번호를 나타냅니다. 데이터 유형은 INT입니다. 파라미터 레시피 번호 확인에 대한 자세한 내용은 "파라미터 레시피 번호 보기"를 참조하십시오.
Mech-Vision가 계획한 경로를 획득하기
기능 소개
이 명령어는 Mech-Vision에서 계획된 경로(일련의 웨이포인트)를 획득하는 데 사용됩니다. 경로는 “경로 계획 도구”를 통해 생성되며 아래 그림에 표시된 바와 같이 구성 마법사 버튼을 클릭하면 “경로 계획 도구”를 사용할 수 있습니다. “경로 계획” 스텝에 관한 상세한 설명은 “경로 계획" 내용을 참조하십시오.
Mech-Vision “출력”스텝의 포트 유형 파라미터를 “사전 정의(로봇 경로)”로 설정해야 합니다. |

호출 순서
이 명령어는 Mech-Vision 프로젝트를 실행하기 명령어를 호출한 후 사용해야 합니다. 이 명령을 호출한 후, 포즈 데이터를 접근하기 위해 비전 결과와 계획 경로를 저장하기(말단장치 포즈) 또는 계획 경로를 저장하기(관절 각도) 명령어를 호출하십시오.
명령어 포맷
MM_Get_Vispath(Job,Jps_Pos,Pos_Num,VisPos_Num,MM_Status)
파라미터를 입력하기
Job
이 파라미터는 Mech-Vision 프로젝트 번호입니다. 데이터 유형은 INT입니다.Mech-Vision 프로젝트 번호(프로젝트 이름 앞의 숫자)는 Mech-Vision 프로젝트 리스트에서 확인할 수 있습니다.
Jps_Pos
이 파라미터는 웨이포인트를 얻기 위한 포즈 유형을 지정하는 데 사용됩니다. 데이터 유형은 INT입니다. 유효한 값은 1 또는 2입니다.
-
1: 관절 각도. 이 명령어를 호출한 후, 관절 각도 데이터를 접근하기 위해 계획 경로를 저장하기(관절 각도) 명령어를 호출하십시오.
-
2: 말단장치 포즈. 이 명령어를 호출한 후, 말단장치 포즈 데이터를 접근하기 위해 비전 결과와 계획 경로를 저장하기(말단장치 포즈) 명령어를 호출하십시오.
파라미터를 출력하기
Pos_Num
이 파라미터는 비전 시스템이 반환한 웨이포인트의 수량을 저장합니다. 데이터 유형은 INT입니다. 비전 시스템이 한 번에 보낼 수 있는 기본 최대 웨이포인트 수는 20이므로 이 파라미터의 기본 최댓값은 20입니다. Mech-Vision 툴 바의
에서 필요에 따라 기본 최대 수를 변경할 수 있지만 최대 수는 30으로 제한됩니다.
Mech-Vision가 계획한 경로를 획득하기 명령어를 호출하기 전에 Mech-Vision가 계획한 경로를 획득하기 명령어의 호출 횟수를 줄리기 위해 Mech-Vision 프로젝트를 실행하기 명령어의 Pos_Num_Need를 0으로 설정하십시오. Mech-Vision 프로젝트를 실행하기 명령어의Pos_Num_Need 1로 설정되면 Mech-Vision가 계획한 경로를 획득하기 명령어를 호출할 때마다 하나의 웨이포인트만 획득할 수 있으며 여러 번 호출해야 모든 웨이포인트를 획득할 수 있습니다. |
VisPos_Num
이 파라미터는 전체 경로에서 경로 계획 도구의 "비전 이동" 스텝에 해당하는 웨이포인트(비전 이동 웨이포인트)의 위치 번호를 나타냅니다. 데이터 유형은 INT입니다. 경로에 비전 이동 웨이포인트가 없는 경우 이 파라미터의 값은 0입니다.
예를 들어, 계획된 경로가 "이동_1", "이동_2", "비전 이동", "이동_3" 스텝으로 구성된 경우 비전 이동 웨이포인트의 위치 번호는 3입니다.
MM_Status
이 파라미터는 해당 명령어의 실행 상태 코드를 저장합니다.데이터 유형은 INT입니다. 명령어가 성공적으로 실행되면 상태 코드는 1103입니다. 명령어 실행이 비정상일 경우 상태 코드는 해당 오류 코드입니다. 자세한 내용은 "표준 인터페이스 상태 코드 및 오류 분석"을 참조하십시오.
이 명령어를 호출한 후 비전 시스템이 기본적으로 10초 이내에 처리 결과를 반환하지 않으면 타임아웃 오류 상태 코드를 반환합니다. Mech-Vision 툴 바의 에서 필요에 따라 이 기본 시간 제한을 변경할 수 있습니다.![]() |
Mech-Vision 자체 정의한 데이터를 획득하기
기능 소개
이 명령어는 Mech-Vision “출력” 스텝을 통해 사용자 정의 포트의 데이터를 획득하는 데 사용됩니다. 이 명령을 한 번 호출하면 “출력” 스텝의 모든 포트 데이터가 로봇에 저장됩니다.
"출력" 스텝 파라미터의 편집기 열기를 클릭하여 사용자 정의 포트 설정 창으로 들어갑니다. 여기서 사용자 정의 통신 키 이름은 사용자 정의 포트 이름입니다. 예를 들어 아래 그림의 customeData1 및 customeData2 포트는 사용자 정의 포트입니다.
|

호출 순서
이 명령어는 Mech-Vision 프로젝트를 실행하기 명령어를 호출한 후 사용해야 합니다. 이 명령어를 호출한 후, 사용자 정의 데이터를 접근하기 위해 Mech-Vision 사용자 정의 데이터를 저장하기 명령어를 호출하십시오.
명령어 포맷
MM_Get_Dy_Data(Job,Pos_Num,MM_Status)
파라미터를 입력하기
Job
이 파라미터는 Mech-Vision 프로젝트 번호입니다. 데이터 유형은 INT입니다.Mech-Vision 프로젝트 번호(프로젝트 이름 앞의 숫자)는 Mech-Vision 프로젝트 리스트에서 확인할 수 있습니다.
파라미터를 출력하기
Pos_Num
이 파라미터는 Mech-Vision 반환한 비전 포인트를 저장합니다.데이터 유형은 INT입니다.
MM_Status
이 파라미터는 해당 명령어의 실행 상태 코드를 저장합니다.데이터 유형은 INT입니다. 명령어가 성공적으로 실행되면 상태 코드는 1100입니다. 명령어 실행이 비정상일 경우 상태 코드는 해당 오류 코드입니다. 자세한 내용은 "표준 인터페이스 상태 코드 및 오류 분석"을 참조하십시오.
Mech-Vision 사용자 정의 데이터를 저장하기
호출 순서
이 명령어는 Mech-Vision 자체 정의한 데이터를 획득하기 명령어를 호출한 후 사용해야 합니다.
진공 그리퍼의 DO 신호를 가져오기
기능 소개
이 명령어는 Mech-Vision 또는 Mech-Viz 프로젝트에서 계획한 멀티 파티션 진공 그리퍼의 컨트롤 신호를 획득하는 데 사용됩니다. 로봇은 진공 그리퍼의 DO 신호를 설정하기 명령어를 통해 획득한 DO 신호를 말단장치로 적용합니다.
이 명령어를 사용하기 전에, Mech-Vision 또는 Mech-Viz에서 다음 구성을 수행해야 합니다.
-
Mech-Vision 프로젝트를 구성하기
-
"경로 계획" 스텝 파라미터에서 구성 마법사를 클릭하십시오. 전역 구성에서 상자 디팔레타이징을 활성화합니다.
-
“경로 계획” 스텝 파라미터 패널에서 구성 마법사 버튼을 클릭하고 말단장치의 이름을 더블클릭하며 말단장치 유형을 디팔레타이징 진공 그리퍼로 설정하고 디팔레타이징 진공 그리퍼 구성을 클릭하여 수요에 따라 DO 신호를 구성하십시오.
-
-
Mech-Viz 프로젝트를 구성하기
-
Mech-Viz의 "비전 이동" 스텝에서 피킹 방법 선택 을 상자 디팔레타이징 으로 설정합니다.
-
Mech-Viz 소프트웨어에서 말단장치의 이름을 더블클릭하며 말단장치 유형을 디팔레타이징 진공 그리퍼로 설정하고 디팔레타이징 진공 그리퍼 구성을 클릭하여 수요에 따라 DO 신호를 구성하십시오.
-
호출 순서
-
이 명령어는 Mech-Vision가 계획한 경로를 획득하기, Mech-Viz가 계획한 경로를 획득하기, 비전 이동 계획 결과 또는 사용자 정의 데이터를 획득하기 명령어가 호출된 후 호출됩니다. 즉 로봇이 먼저 이동 경로를 획득하고, 그 다음에 비전 이동 웨이포인트의 그리퍼 DO 신호를 획득합니다.
-
이 명령어는 진공 그리퍼의 DO 신호를 설정하기 명령어를 호출하기 전에 사용해야 합니다.
명령어 포맷
MM_Get_DoList(Resource,BlockNum)
파라미터를 입력하기
Resource
이 파라미터는 DO 신호 리스트의 소스를 지정합니다. 데이터 유형은 INT입니다. 값은 0 또는 양의 정수이며, 구체적인 설명은 아래와 같습니다.
-
0: Mech-Viz에서 DO 신호 리스트를 획득합니다.
-
양의 정수: Mech-Vision에서 DO 신호 리스트를 획득합니다. 여기에 설정된 양의 정수가 Mech-Vision 프로젝트 번호입니다.
BlockNum
이 파라미터는 진공 그리퍼 구성기에서 지정된 파티션 진공 그리퍼의 수입니다. 예를 들어, 위 그림에서 파티션 진공 그리퍼의 수는 3입니다.
이 명령어로 반환되는 DO 신호는 구축된 프로젝트에 따라 달라집니다.
-
Mech-Vision 프로젝트가 계획한 진공 그리퍼의 DO 신호
-
경로 계획 도구의 전역 구성에서 모든 비전 결과를 계획하기가 비활성화된 경우, 이 기능은 이번 라운드에서 계획된 64개의 그리퍼 DO 신호를 반환합니다. 유효한 DO 신호는 0부터 999까지의 0 이상의 정수이며, 유효하지 않은 DO 신호는 -1로, 이는 자리 표시자로 사용됩니다.
예를 들어, 아래 표에서 반환되는 유효한 DO 신호는 1, 3, 5, 6이며 이는 로봇이 위의 DO 신호에 해당하는 값이 ON으로 설정한다는 것을 의미합니다.
첫 번째
두 번째
세 번째
네 번째
다섯 번째
여섯 번째
일곱 번째
여덟 번째
…
63번째
64번째
1
3
5
6
-1
-1
-1
-1
…
-1
-1
-
경로 계획의 전역 구성에서 모든 비전 결과를 계획하기가 활성화되면, Mech-Vision가 동일한 비전 결과를 기반으로 여러 라운드의 계획을 수행할 수 있습니다. 이 명령어로 반환된 64개의 진공 그리퍼 DO 신호는 모든 라운드의 계획 얻어진 것입니다. 이 경우, 각 라운드의 계획 동안 획득한 진공 그리퍼 DO 신호를 구별하기 위해 파티션 진공 그리퍼의 수를 사용할 수 있습니다.
예를 들어, 파티션 진공 그리퍼의 수가 4이고 명령어가 총 64개의 DO 신호를 반환하면, 각 4개의 DO 신호는 각 라운드의 계획 획득된 멀티 파티션 진공 그리퍼 컨트롤 신호입니다.
첫 번째 계획 라운드
두 번째 계획 라운드
…
열여섯 번째 계획 라운드
첫 번째
두 번째
세 번째
네 번째
다섯 번째
여섯 번째
일곱 번째
여덟 번째
…
61번째
62번째
63번째
64번째
1
3
4
-1
1
4
-1
-1
…
-1
-1
-1
-1
-
-
Mech-Viz 프로젝트가 계획한 진공 그리퍼의 DO 신호
-
"비전 이동" 스텝에서 "비전 결과를 재사용하기"를 선택하지 않으면, 이 기능은 이번 라운드에서 계획된 64개의 그리퍼 DO 신호를 반환합니다. 유효한 DO 신호는 0부터 999까지의 0 이상의 정수이며, 유효하지 않은 DO 신호는 -1로, 이는 자리 표시자로 사용됩니다.
예를 들어, 아래 표에서 반환되는 유효한 DO 신호는 1, 3, 5, 6이며 이는 로봇이 위의 DO 신호에 해당하는 값이 ON으로 설정한다는 것을 의미합니다.
첫 번째
두 번째
세 번째
네 번째
다섯 번째
여섯 번째
일곱 번째
여덟 번째
…
63번째
64번째
1
3
5
6
-1
-1
-1
-1
…
-1
-1
-
"비전 이동" 스텝에서 "비전 결과를 재사용하기" 옵션을 선택함을 하고, "비전 이동" 스텝이 루프에서 사용되면, Mech-Viz는 동일한 비전 결과를 기반으로 여러 라운드의 계획을 수행할 수 있습니다. 이 명령어로 반환된 64개의 진공 그리퍼 DO 신호는 모든 라운드의 계획 얻어진 것입니다. 이 경우, 각 라운드의 계획 동안 획득한 진공 그리퍼 DO 신호를 구별하기 위해 파티션 진공 그리퍼의 수를 사용할 수 있습니다.
예를 들어, 파티션 진공 그리퍼의 수가 4이고 명령어가 총 64개의 DO 신호를 반환하면, 각 4개의 DO 신호는 각 라운드의 계획 획득된 멀티 파티션 진공 그리퍼 컨트롤 신호입니다.
첫 번째 계획 라운드
두 번째 계획 라운드
…
열여섯 번째 계획 라운드
첫 번째
두 번째
세 번째
네 번째
다섯 번째
여섯 번째
일곱 번째
여덟 번째
…
61번째
62번째
63번째
64번째
1
3
4
-1
1
4
-1
-1
…
-1
-1
-1
-1
-
진공 그리퍼의 DO 신호를 설정하기
호출 순서
이 명령어는 진공 그리퍼의 DO 신호를 가져오기 명령어를 호출한 후 사용해야 합니다.
Mech-Viz 프로젝트를 실행하기
기능 소개
이 명령어는 Mech-Viz 프로젝트 실행을 트리거하는 데 사용됩니다. Mech-Viz는 Mech-Vision에서 출력한 비전 결과를 기반으로 로봇의 이동 경로를 계획합니다.
Mech-Viz 프로젝트 리소스 화면에서 프로젝트 명칭을 마우스 오른쪽 버튼으로 클릭하여 해당 프로젝트를 자동으로 로드하기를 선택합니다. |
호출 순서
Mech-Viz 프로젝트를 실행하기 전에 프로젝트의 스텝 파라미터를 설정해야 하므로 Mech-Viz 스텝 파라미터 값을 읽어내기 명령어 또는 Mech-Viz 스텝 파라미터를 설정하기 명령어는 Mech-Viz 프로젝트를 실행하기 명령어를 호출하기 전에 호출해야 합니다.
명령어 포맷
MM_Start_Viz(SendPos_Type,MM_J)
파라미터를 입력하기
SendPos_Type
이 파라미터는 실제 로봇 포즈가 Mech-Viz 프로젝트에 전송되는 방식을 지정합니다. 값의 범위는 0, 1, 2입니다. 아래 표는 자세한 내용을 설명합니다. 데이터 유형은 INT입니다.
로봇 포즈 유형 | 설명 | 적용 시나리오 |
---|---|---|
0 |
이 명령어는 Mech-Viz 프로젝트에 로봇 포즈를 입력할 필요가 없으며 Mech-Viz 프로젝트의 시뮬레이션된 로봇은 설정된 Home포인트부터 첫번째 웨이포인트 위치로 이동합니다. |
카메라의 설치 방식은 Eye To Hand 입니다. |
1 |
이 명령어는 로봇의 현재 관절 각도 및 플랜지 포즈를 Mech-Viz 프로젝트로 입력해야 하고 Mech-Viz 프로젝트의 시뮬레이션된 로봇은 입력된 관절 각도부터 척번째 웨이포인트 위치로 이동합니다. |
카메라는 Eye In Hand 방식으로 장착되는 경우 이 방식이 추천됩니다. |
2 |
이 명령어는 아래 그림과 같이 로봇이 이미지 캡처 영역에 있지 않은 경우, Mech-Viz 프로젝트를 미리 트리거하여 다음 라운드의 경로를 계획하기 위해 로봇의 티칭 포인트의 관절 각도(현재 관절 각도가 아니라, 사용자 정의 관절 각도입니다)를 Mech-Viz 프로젝트로 입력해야 합니다. 이 때 Mech-Viz 프로젝트의 시뮬레이션된 로봇은 입력된 티칭 포인트 위치부터 첫번째 웨이포인트 위치로 이동합니다. |
카메라는 Eye To Hand 방식으로 장착되는 경우 이 방식이 추천됩니다. |
카메라는 Eye To Hand 방식으로 장착되는 경우, 로봇 포즈 유형을 2로 사용하는 것을 추천하는 이유는 무엇입니까?
아래 이미지는 로봇이 배치 영역에서 어떻게 작동하는지 보여줍니다.
이런 경우에, SendPos_Type을 1로 설정하면 로봇의 현재 포즈를 Mech-Viz로 전송하고 실제 로봇이 첫 번째 웨이포인트에 도달하기 전에 다른 위치로 이동할 가능성이 있습니다. 그러나 시뮬레이션된 로봇은 현재 위치에서 Mech-Viz 프로젝트의 첫 번째 웨이포인트로 직접 이동합니다. 결과적으로 실제 로봇과 시뮬레이션 로봇의 경로가 일치하지 않을 수 있습니다. 이러한 불일치는 잠재적으로 예상치 못한 안전 위험을 초래할 수 있으며, 특히 시뮬레이션된 로봇의 경로에서 충돌이 감지되는 경우 더욱 그렇습니다.
반면, SendPos_Type을 2로 설정하면, 로봇 티치 펜던트에서 설정한 이미지 캡처 포즈를 Mech-Viz로 전송합니다. 따라서 실제 로봇이 이미지 캡처 영역에 있을 때 실제 Mech-Viz가 다음 경로 계획을 시작할 수 있으며 사이클 타임이 단축될 수 있습니다.
결론적으로 Eye To Hand 방식의 프로젝트에서는 로봇 포즈 유형을 2로 설정하는 것이 추천됩니다.

MM_J
이 파라미터는 사용자가 자체 정의한 관절 각도(JPs) 데이터입니다. 데이터 유형은 E6AXIS입니다.
-
SendPos_Type 파라미터의 값은 2라면 이 관절 각도 데이트는 Mech-Viz 프로젝트에게 시작점으로 전송되며, 즉 로봇은 이 시작점에서 계획된 경로의 첫 번째 웨이포인트로 이동합니다.
-
SendPos_Type 파라미터의 값을 2 이외의 값으로 설정하면 여기서 설정한 관절 각도 데이터는 사용되지 않으나 설정되어야 합니다.
Mech-Viz 메시지 분기 아웃 포트를 설정하기
기능 소개
이 명령어는 "메시지 분기" 스텝의 아웃 포트를 설정하는 데 사용됩니다. Mech-Viz 프로젝트가 "메시지 분기" 스텝까지 실행되면 이 명령으로 지정된 아웃 포트를 기다립니다.

호출 순서
Mech-Viz 프로젝트를 실행하기 명령어를 호출한 후 사용해야 합니다.
Mech-Viz의 현재 인덱스 설정하기
기능 소개
이 명령어는 인덱스를 갖춘 스텝의 “현재 인덱스” 값을 설정하는 데 사용됩니다. "인덱스" 파라미터가 있는 스텝에는 "배열대로 이동", "순서대로 이동 ", "자체 정의한 파렛트 패턴", "미리 설정된 파렛트 패턴" 등이 포함됩니다.

호출 순서
일반적으로 인덱스를 갖춘 스텝 앞에 “메시지 분기” 스텝이 있습니다. 로봇은 우선 Mech-Viz 프로젝트를 실행하기 명령어를 호출하고 Mech-Viz의 현재 인덱스 설정하기 명령어를 호출하며 마지막으로 Mech-Viz 메시지 분기 아웃 포트를 설정하기 명령어를 호출합니다. 이는 Mech-Viz가 현재 인덱스 값을 설정할 충분한 시간을 확보하기 위한 것입니다.
Mech-Viz가 계획한 경로를 획득하기
기능 소개
이 명령어는 Mech-Viz 프로젝트에서 계획된 경로(일련의 웨이포인트)를 획득하는 데 사용됩니다.
웨이포인트: 로봇이 계획된 경로를 따라 이동할 때 도달하는 각 지점입니다. 웨이포인트에는 로봇 포즈, 레이블, 이동 유형 등의 정보가 있습니다. 웨이포인트는 다음 두 가지 유형으로 나눠집니다:
|
호출 순서
이 명령어는 Mech-Viz 프로젝트를 실행하기 명령어를 호출한 후 사용해야 합니다. 이 명령을 호출한 후, 포즈 데이터를 접근하기 위해 비전 결과와 계획 경로를 저장하기(말단장치 포즈) 또는 계획 경로를 저장하기(관절 각도) 명령어를 호출하십시오.
명령어 포맷
MM_Get_VizData(Jps_Pos,Pos_Num,VisPos_Num,MM_Status)
파라미터를 입력하기
Jps_Pos
이 파라미터는 웨이포인트를 얻기 위한 포즈 유형을 지정하는 데 사용됩니다. 데이터 유형은 INT입니다. 유효한 값은 1 또는 2입니다.
-
1: 관절 각도. 이 명령어를 호출한 후, 관절 각도 데이터를 접근하기 위해 계획 경로를 저장하기(관절 각도) 명령어를 호출하십시오.
-
2: 말단장치 포즈. 이 명령어를 호출한 후, 말단장치 포즈 데이터를 접근하기 위해 비전 결과와 계획 경로를 저장하기(말단장치 포즈) 명령어를 호출하십시오.
파라미터를 출력하기
Pos_Num
이 파라미터는 비전 시스템이 반환한 웨이포인트의 수량을 저장합니다. 비전 시스템이 한 번에 보낼 수 있는 기본 최대 웨이포인트 수는 20이므로 이 파라미터의 기본 최댓값은 20입니다. Mech-Vision 툴 바의
에서 필요에 따라 기본 최대 수를 변경할 수 있지만 최대 수는 30으로 제한됩니다.
VisPos_Num
이 파라미터는 전체 경로에서 Mech-Viz 프로젝트의 "비전 이동" 스텝에 해당하는 웨이포인트(비전 이동 웨이포인트)의 위치 번호를 나타냅니다. 데이터 유형은 INT입니다. 경로에 비전 이동 웨이포인트가 없는 경우 이 파라미터의 값은 0입니다.
예를 들어, 계획된 경로가 "이동_1", "이동_2", "비전 이동", "이동_3" 스텝으로 구성된 경우 비전 이동 웨이포인트의 위치 번호는 3입니다.
MM_Status
이 파라미터는 해당 명령어의 실행 상태 코드를 저장합니다.데이터 유형은 INT입니다. 명령어가 성공적으로 실행되면 상태 코드는 2100입니다. 명령어 실행이 비정상일 경우 상태 코드는 해당 오류 코드입니다. 자세한 내용은 "표준 인터페이스 상태 코드 및 오류 분석"을 참조하십시오.
이 명령어를 호출한 후 비전 시스템이 기본적으로 10초 이내에 처리 결과를 반환하지 않으면 타임아웃 오류 상태 코드를 반환합니다. Mech-Vision 툴 바의 에서 필요에 따라 이 기본 시간 제한을 변경할 수 있습니다.![]() |
비전 이동 계획 결과 또는 사용자 정의 데이터를 획득하기
기능 소개
이 명령어는 Mech-Vision 프로젝트의 비전 이동 계획 결과 또는 Mech-Viz포로젝트의 비전 이동 계획 결과나 사용자 정의 데이터를 획득하는 데 사용됩니다. 이 명령을 한 번 호출하면 모든 데이터가 로봇에 저장됩니다.
-
Mech-Vision 프로젝트에서는 여기서 말하는 “비전 이동 계획 결과”는 “경로 계획 도구”(“경로 계획” 스텝 파라미터 패널에서 열 수 있음)의 “비전 이동” 스텝을 통해 계획된 데이터를 가리킵니다. 피킹된 작업물의 레이블, 피킹된 작업물 총수, 이번에 피킹된 작업물의 수, 진공 그리퍼의 엣지/코너 ID, TCP 옵셋량, 작업물 조합의 방향, 단일 작업물의 방향, 작업물 조합의 치수 등 정보가 포함됩니다.
-
Mech-Viz 프로젝트의 경우:
-
비전 이동 계획 결과: Mech-Viz 중 “비전 이동” 스텝을 통해 계획된 데이터를 가리킵니다. 피킹된 작업물의 레이블, 피킹된 작업물 총수, 이번에 피킹된 작업물의 수, 진공 그리퍼의 엣지/코너 ID, TCP 옵셋량, 작업물 조합의 방향, 단일 작업물의 방향, 작업물 조합의 치수 등 정보가 포함됩니다.
-
사용자 정의 데이터: Mech-Vision "출력" 스텝의 사용자 정의 포트에서 출력된 후 Mech-Viz에 의해 전달되는 데이터를 의미합니다.
"출력" 스텝 파라미터의 편집기 열기를 클릭하여 사용자 정의 포트 설정 창으로 들어갑니다. 여기서 사용자 정의 통신 키 이름은 사용자 정의 포트 이름입니다. 예를 들어 아래 그림의 customeData1 및 customeData2 포트는 사용자 정의 포트입니다.
-
미리 설정된 통신 키(아래 그림의 poses, labels, sizes, offsets 등)로 표시되는 포트 데이터는 사용자 정의 데이터에 속하지 않습니다.
-
Mech-Vision “출력” 스텝의 포트 유형을 “사용자 정의”로 설정해야 하며 poses 포트가 존재해야 합니다.
-
-
호출 순서
Mech-Vision 프로젝트를 실행하기 명령어 또는 Mech-Viz 프로젝트를 실행하기 명령어를 호출한 후 사용해야 합니다. 이 명령어를 호출한 후, 비전 이동 계획 결과를 접근하기 위해비전 이동 계획 결과 또는 사용자 정의 데이터를 저장하기 명령어를 호출하십시오.
명령어 포맷
MM_Get_PlanData(Resource,Jps_Pos,Pos_Num,VisPos_Num,MM_Status)
파라미터를 입력하기
Resource
이 파라미터는 비전 이동 계획 결과의 소스를 지정합니다. 데이터 유형은 INT입니다. 값은 0 또는 양의 정수이며, 구체적인 설명은 아래와 같습니다.
-
0: Mech-Viz에서 비전 이동 계획 결과를 획득합니다.
-
양의 정수: Mech-Vision에서 비전 이동 계획 결과를 가져오기. 여기에 설정된 양의 정수가 Mech-Vision 프로젝트 번호입니다.
Jps_Pos
이 파라미터는 예상된 반환 데이터의 포맷입니다. 데이터 유형은 INT입니다.
-
Resource 0으로 설정되면, Jps_Pos 파라미터 유효한 값 범위는 1에서 4까지입니다. 구체적으로 다음과 같습니다.
Jps_Pos 파라미터의 값 예상된 반환 데이터의 설명(자세한 설명은 아래 부분 내용을 참조하십시오. Mech-Vision프로젝트에 사용자 정의 포트가 없으면 사용자 정의 출력 데이터가 반환되지 않습니다.) 1
포즈(관절 각도 형태), 이동 유형, 말단장치의 번호, 속도, 사용자 정의 출력 데이터 1, ..., 사용자 정의 출력 데이터 N
2
포즈(말단장치 포즈 형태), 이동 유형, 말단장치의 번호, 속도, 사용자 정의 출력 데이터 1, ..., 사용자 정의 출력 데이터 N
3
포즈(관절 각도 형태), 이동 유형, 말단장치의 번호, 속도, Mech-Viz 비전 이동 계획 결과, 사용자 정의 출력 데이터 1, ..., 사용자 정의 출력 데이터 N
4
포즈(말단장치 포즈 형태), 이동 유형, 말단장치의 번호, 속도, Mech-Viz 비전 이동 계획 결과, 사용자 정의 출력 데이터 1, ..., 사용자 정의 출력 데이터 N
-
Resource 0 이상의 정수로 설정되면, Jps_Pos 파라미터 유효한 값 범위는 1에서 2까지입니다. 구체적으로 다음과 같습니다.
Jps_Pos 파라미터의 값 예상된 반환 데이터에 관한 설명(아래 설명 참조하십시오) 1
포즈(관절 각도 형태), 이동 유형, 말단장치 번호, 속도, Mech-Vision 비전 이동 계획 결과
2
포즈(말단장치 포즈 형태), 이동 유형, 말단장치 번호, 속도, Mech-Vision 비전 이동 계획 결과
포즈
웨이포인트의 포즈는 로봇 관절 각도(단위:도) 또는 말단장치 포즈(3D 좌표의 단위: mm. 오일러 각의 단위: 도)일 수 있습니다.
이동 유형
로봇의 이동 유형이며, 유효한 값은 1 또는 2입니다.
-
1: 관절 운동.
-
2: 직선 운동.
말단장치 번호
웨이포인트의 말단장치 번호입니다. 값은 “-1”인 경우, 말단장치를 사용하지 않은 것을 의미합니다.
속도
속도의 의미는 프로젝트 유형에 따라 달라집니다. 구체적으로 다음과 같습니다.
-
Mech-Vision 프로젝트의 경우: 속도는 경로 계획 도구에서 "시뮬레이션 속도" 값을 백분율 형태로 나타냅니다.
-
Mech-Viz 프로젝트의 경우: 속도는 백분율로 표시되며, 이는 이동 유형 스텝에 설정된 속도에 Mech-Viz에 설정된 전역 속도를 곱한 값을 나타냅니다.
비전 이동 계획 결과
Mech-Vision이나 Mech-Viz 중 “비전 이동” 스텝을 통해 계획된 데이터를 가리킵니다. 피킹된 작업물의 레이블, 피킹된 작업물 총수, 이번에 피킹된 작업물의 수, 진공 그리퍼의 엣지/코너 ID, TCP 옵셋량, 작업물 조합의 방향, 단일 작업물의 방향, 작업물 조합의 치수 등 정보가 포함됩니다.
명칭 | 설명 | 요소 수 |
---|---|---|
피킹된 작업물의 레이블 |
10개의 정수로 구성되며 기본값은 10개 0입니다. |
10 |
이미 피킹된 작업물의 총 수 |
이미 피킹된 작업물의 총 수입니다. |
1 |
이번에 피킹된 작업물의 수 |
이번에 피킹된 작업물의 수 |
1 |
진공 그리퍼의 엣지/코너 ID |
이번에 작업물을 피킹하는 데 진공 그리퍼에 사용되는 엣지/코너 번호입니다. |
1 |
TCP 옵셋량 |
말단장치 중심을 기준으로 한 작업물 조합 중심의 XYZ 옵셋입니다. |
3 |
작업물 조합의 방향 |
작업물 조합과 진공 그리퍼 길이 사이의 상대적 위치입니다. 값은 0 또는 1입니다. 0은 평행을 나타내고 1은 수직을 나타냅니다. |
1 |
단일 작업물의 방향 |
단일 작업물의 길이와 진공 그리퍼의 길이 사이의 상대적인 위치입니다. 0은 평행을 나타내고 1은 수직을 나타냅니다. |
1 |
작업물 조합의 치수 |
이번에 피킹할 작업물 조합의 길이, 너비, 높이입니다. |
3 |
사용자 정의 출력 데이터
단일 비전 포인트의 모든 사용자 정의 포트의 데이터입니다. 예를 들어, “출력” 스텝의 각 포트에서 출력된 데이터는 아래 표와 같습니다. 이런 경우에, 로봇이 획득한 첫 번째 비전 포인트의 사용자 정의 출력 데이터는 [0, 0, 1] 및 [0, 0]이며 두 번째로 획득한 비전 포인트의 사용자 정의 출력 데이터는 [1, 0, 0] 및 [1, 1]입니다.
포트 이름 |
poses |
labels |
customData1 |
customData2 |
포트 데이터 |
[ [0, 0, 0, 1, 0, 0, 0], [0, 0, 0, 1, 0, 0, 0] ] |
[ "0", "1" ] |
[ [0, 0, 1], [1, 0, 0] ] |
[ [0, 0], [1, 1] ] |
첫 번째 비전 포인트 |
[0, 0, 0, 1, 0, 0, 0] |
0 |
[0, 0, 1] |
[0, 0] |
두 번째 비전 포인트 |
[0, 0, 0, 1, 0, 0, 0] |
1 |
[1, 0, 0] |
[1, 1] |
파라미터를 출력하기
Pos_Num
이 파라미터는 비전 시스템이 반환한 웨이포인트의 개수을 저장합니다.데이터 유형은 INT입니다.
VisPos_Num
이 파라미터는 전체 경로에서 Mech-Viz 프로젝트의 "비전 이동" 스텝에 해당하는 웨이포인트(비전 이동 웨이포인트)의 위치 번호를 나타냅니다. 데이터 유형은 INT입니다. 경로에 비전 이동 웨이포인트가 없는 경우 이 파라미터의 값은 0입니다.
예를 들어, 계획된 경로가 "이동_1", "이동_2", "비전 이동", "이동_3" 스텝으로 구성된 경우 비전 이동 웨이포인트의 위치 번호는 3입니다.
MM_Status
이 파라미터는 해당 명령어의 실행 상태 코드를 저장합니다.데이터 유형은 INT입니다. 명령어가 성공적으로 Mech-Vision 프로젝트의 비전 이동 계획 결과를 획득하면 상태 코드는 1103입니다. 이 명령어는 성공적으로 Mech-Viz 프로젝트의 비전 이동 계획 결과 또는 사용자 정의 데이터를 획득하면 상태 코드는 2100입니다. 명령어 실행이 비정상일 경우 상태 코드는 해당 오류 코드입니다. 자세한 내용은 "표준 인터페이스 상태 코드 및 오류 분석"을 참조하십시오.
비전 이동 계획 결과 또는 사용자 정의 데이터를 저장하기
호출 순서
이 명령어는 비전 이동 계획 결과 또는 사용자 정의 데이터를 획득하기 명령어를 호출한 후 사용해야 합니다.
명령어 포맷
비전 이동 계획 결과 또는 사용자 정의 데이터를 획득하기 명령어에서 지정된 Jps_Pos파라미터 값에 따라 다른 명령어를 선택하십시오.
MM_Get_PlanPose(Serial:IN,Jps_Pos:IN,MM_P:OUT,MM_MoveType:OUT,MM_ToolNum:OUT,MM_Speed:OUT) (Jps_Pos 값이 =2 또는 4일 때)
MM_Get_PlanJps(Serial:IN,Jps_Pos:IN,MM_J:OUT,MM_MoveType:OUT,MM_ToolNum:OUT,MM_Speed:OUT) (Jps_Pos 값이 =1 또는 3일 때)
파라미터를 입력하기
Serial
이 파라미터는 웨이포인트의 인덱스를 지정합니다. 인덱스에 해당하는 웨이포인트 의 비전 이동 계획 결과 또는 사용자 정의 데이터를 변수에 저장됩니다. 데이터 유형은 INT입니다. 인덱스는 1부터 시작합니다.
Jps_Pos
이 파라미터는 비전 이동 계획 결과 또는 사용자 정의 데이터를 획득하기 명령어 중 Jps_Pos의 값과 동일하게 설정되어야 합니다. 데이터 유형은 INT입니다.
파라미터를 출력하기
MM_P
이 파라미터는 지정된 인덱스에 해당하는 웨이포인트의 말단장치 포즈를 저장합니다(이 파라미터는 MM_Get_PlanPose 명령어에서 사용됩니다). 데이터 유형은 E6POS입니다.
MM_J
이 파라미터는 지정된 인덱스에 해당하는 웨이포인트의 관절 각도를 저장합니다(이 파라미터는 MM_Get_PlanJps 명령어에서 사용됩니다). 데이터 유형은 E6AXIS입니다.
MM_MoveType
이 파라미터는 인덱스에 해당하는 웨이포인트의 운동 유형을 저장합니다. 데이터 유형은 INT입니다. 값이 1이면 관절 운동을 나타내고, 값이 2이면 직선 운동을 나타냅니다.
MM_ToolNum
이 파라미터는 지정된 인덱스에 해당하는 웨이포인트의 말단장치 번호를 저장합니다. 데이터 유형은 INT입니다. 말단장치 번호는 “-1”인 경우, 말단장치를 사용하지 않은 것을 의미합니다.
MM_ToolId
이 파라미터는 지정된 인덱스에 해당하는 웨이포인트의 속도를 저장합니다.데이터 유형은 INT입니다.
MM_UserData
이 파라미터는 지정된 인덱스에 해당하는 웨이포인트의 사용자 정의 데이터를 저장합니다. 이 파라미터는 미리 정의된 전역 배열 변수입니다. 데이터 유형은 REAL입니다.
MM_Plan_Results
이 파라미터는 지정된 인덱스에 해당하는 웨이포인트의 비전 이동 계획 결과를 저장합니다. 이 파라미터는 미리 정의된 전역 배열 변수입니다. 데이터 유형은 REAL입니다.
MM_Plan_Results 배열 변수의 구체적인 내용은 아래 표와 같습니다.
데이터 | 설명 | 변수 |
---|---|---|
피킹된 작업물의 레이블 |
10개의 정수로 구성되며 기본값은 10개 0입니다. |
MM_Plan_Results[1] ~ MM_Plan_Results[10] |
이미 피킹된 작업물의 총 수 |
이미 피킹된 작업물의 총 수입니다. |
MM_Plan_Results[11] |
이번에 피킹된 작업물의 수입니다. |
이번에 피킹된 작업물의 수입니다. |
MM_Plan_Results[12] |
진공 그리퍼의 엣지/코너 ID |
이번에 작업물을 피킹하는 데 진공 그리퍼에 사용되는 엣지/코너 번호입니다. |
MM_Plan_Results[13] |
TCP 옵셋량 |
말단장치 중심을 기준으로 한 작업물 조합 중심의 XYZ 옵셋입니다. |
MM_Plan_Results[14] ~ MM_Plan_Results[16] |
작업물 조합의 방향 |
작업물 조합과 진공 그리퍼 길이 사이의 상대적 위치입니다. 값은 0 또는 1입니다. 0은 평행을 나타내고 1은 수직을 나타냅니다. |
MM_Plan_Results[17] |
단일 작업물의 방향 |
단일 작업물의 길이와 진공 그리퍼의 길이 사이의 상대적인 위치입니다. 0은 평행을 나타내고 1은 수직을 나타냅니다. |
MM_Plan_Results[18] |
작업물 조합의 치수 |
이번에 피킹할 작업물 조합의 길이, 너비, 높이입니다. |
MM_Plan_Results[19] ~ MM_Plan_Results[21] |
예시
-
예시 1:
MM_Get_PlanPose(2,4,TcpPose,MoveType,ToolNum,Speed)
default위 예시에서는 두 번째 웨이포인트의 말단장치 포즈, 이동 유형, 말단장치 번호, 속도 각각 TcpPose, MoveType, ToolNum, Speed에 저장하니다. 해당 웨이포인트는 “비전 이동” 스텝의 웨이포인트가 아닌 경우, 후속 처리가 없습니다. 만약 해당 웨이포인트는 “비전 이동” 스텝의 웨이포인트인 경우, 비전 이동 계획 결과를 전역 배열 MM_Plan_Results에 저장하고 사용자 정의 데이터를 전역 배열 MM_UserData에 저장합니다.
-
예시 2:
MM_Get_PlanJps(1,3,JpsPose,MoveType,ToolNum,Speed)
default위 예시에서는 첫 번째 웨이포인트의 관절 각도, 이동 유형, 말단장치 번호, 속도 각각 JpsPose, MoveType, ToolNum, Speed에 저장하니다. 해당 웨이포인트는 “비전 이동” 스텝의 웨이포인트가 아닌 경우, 후속 처리가 없습니다. 만약 해당 웨이포인트는 “비전 이동” 스텝의 웨이포인트인 경우, 비전 이동 계획 결과를 전역 배열 MM_Plan_Results에 저장하고 사용자 정의 데이터를 전역 배열 MM_UserData에 저장합니다.
Mech-Viz 스텝 파라미터 값을 읽어내기
호출 순서
이 명령어는 Mech-Viz 프로젝트를 실행하기 명령어를 호출하기 전에 사용해야 합니다.
명령어 포맷
MM_Get_Property(Get_Id,MM_Status,Viz_Prop)
파라미터를 입력하기
Get_Id
이 파라미터는 property_config 파일에 정의된 구성 ID 필드에 해당합니다. 데이터 유형은 INT입니다.
Mech-Vision 툴 바의 menu:로봇 통신 설정 [다음 > 고급 설정]에서 속성 설정을 클릭하여 property_config 파일을 엽니다. ![]() |
이 명령어를 보내기 전에 사용자는 property_config 파일에서 아래 표시된 형식으로 구성 ID와 해당 스텝 ID 및 파라미터 키 이름을 정의해야 합니다.
read, 구성 ID, 스텝 번호, 키 이름
read |
이 행이 스텝의 파라미터 값을 읽는 데 사용됩니다. |
구성 ID |
양의 정수로 고유 ID를 지정합니다. 하나의 구성 ID는 하나의 스텝 파라미터의 값만 읽을 수 있습니다. 여러 스텝 파라미터의 값을 읽어내려면 다른 구성 ID를 사용하십시오. |
스텝 ID |
읽을 파라미터가 속한 스텝의 번호를 지정합니다. |
키 이름 |
읽을 파라미터와 해당하는 키 이름을 지정하는 데 사용됩니다. |
|
property_config 파일에는 여러 읽기 명령어가 있을 수 있습니다. 이러한 명령어의 구성 ID는 달라야 합니다. |
파라미터를 출력하기
MM_Status
이 파라미터는 해당 명령어의 실행 상태 코드를 저장합니다.데이터 유형은 INT입니다. 명령어가 성공적으로 실행되면 상태 코드는 2109입니다. 명령어 실행이 비정상일 경우 상태 코드는 해당 오류 코드입니다. 자세한 내용은 "표준 인터페이스 상태 코드 및 오류 분석"을 참조하십시오.
Viz_Prop
이 파라미터는 지정된 스텝의 파라미터 값을 저장합니다. 데이터 유형은 REAL입니다.
Mech-Viz 스텝 파라미터를 설정하기
호출 순서
이 명령어는 Mech-Viz 프로젝트를 실행하기 명령어를 호출하기 전에 사용해야 합니다.
명령어 포맷
MM_Set_Property(Set_id,MM_Status)
파라미터를 입력하기
Set_Id
이 파라미터는 property_config 파일에 정의된 구성 ID 필드에 해당합니다. 데이터 유형은 INT입니다.
Mech-Vision 툴 바의 menu:로봇 통신 설정 [다음 > 고급 설정]에서 속성 설정을 클릭하여 property_config 파일을 엽니다. ![]() |
이 명령어를 보내기 전에 사용자는 property_config 파일에서 아래 표시된 형식으로 구성 ID와 해당 스텝 ID, 파라미터 키 이름 및 파라미터 값을 정의해야 합니다.
write, 구성 ID, 스텝 번호, 키 이름, 파라미터 값
write |
이 행이 스텝의 파라미터 값을 설정하는 데 사용됩니다. |
구성 ID |
양의 정수이며 반복적으로 사용할 수 있는 ID를 지정합니다. |
스텝 번호 |
설정할 파라미터가 속한 스텝의 번호를 지정합니다. |
키 이름 |
설정할 파라미터와 해당하는 키 이름을 지정하는 데 사용됩니다. |
파라미터 값 |
설정할 파라미터 값을 지정합니다. |
|
파라미터를 출력하기
MM_Status
이 파라미터는 해당 명령어의 실행 상태 코드를 저장합니다.데이터 유형은 INT입니다. 명령어가 성공적으로 실행되면 상태 코드는 2108입니다. 명령어 실행이 비정상일 경우 상태 코드는 해당 오류 코드입니다. 자세한 내용은 "표준 인터페이스 상태 코드 및 오류 분석"을 참조하십시오.
예시
예를 들어 property_config 파일의 내용은 다음과 같습니다. 1은 구성 번호, 3은 스텝 번호, xOffset, yOffset 및 zOffset은 키 이름을 나타내며, 10은 xOffset에 해당하는 파라미터 값을 나타내고, 20은 yOffset에 해당 파라미터 값을 나타내며 30은 zOffset에 해당하는 파라미터 값을 나타냅니다.
write,1,3,xOffset,10
write,1,3,yOffset,20
write,1,3,zOffset,30
로봇이 다음 명령을 보낸 후 Mech-Viz는 xOffset, yOffset 및 zOffset의 해당 파라미터 값이 각각 10, 20 및 30으로 설정됩니다.
MM_Set_Property(1,StatusCode)
위 예시는 xOffset, yOffset, zOffset에 해당하는 파라미터 값이 각각 10, 20, 30으로 설정되고 명령어 상태 코드가 StatusCode에 저장됨을 나타냅니다.
Mech-Vision 프로젝트에 물체 치수 입력하기
기능 소개
이 명령어는 Mech-Vision프로젝트에 물체 치수를 입력하는 데 사용됩니다. 입력하는 물체 치수는 “물체 사이즈 읽기” 스텝의 상자 사이즈 설정 파라미터의 값입니다. 아래 그림과 같습니다.
이 명령어를 사용할 때 Mech-Vision 프로젝트에는 "물체 치수 읽기" 스텝이 하나만 존재해야 하며 그렇지 않으면 비전 시스템이 오류를 반환합니다. |

호출 순서
이 명령어는 Mech-Vision 프로젝트를 실행하기 명령어를 호출하기 전에 사용해야 합니다.
명령어 포맷
MM_Set_BoxSize(Job,Length,Width,Height)
파라미터를 입력하기
Job
이 파라미터는 Mech-Vision 프로젝트 번호입니다. 데이터 유형은 INT입니다.Mech-Vision 프로젝트 번호(프로젝트 이름 앞의 숫자)는 Mech-Vision 프로젝트 리스트에서 확인할 수 있습니다.
Length、Width、Height
위 세 개의 파라미터는 Mech-Vision 프로젝트에 입력된 물체 치수입니다(순서대로 길이, 너비, 높이이며, 단위는 밀리미터(mm)입니다). 이 값은 "물체 치수 읽기" 스텝에서 읽게 되며 X방향 길이, Y방향 길이 및 Z방향 길이로 설정됩니다. 데이터 유형은 REAL입니다.
알림 스텝의 메시지를 가져오기
기능 소개
Mech-Vision 또는 Mech-Viz 프로젝트가 “알림” 스텝까지 실행될 때, 비전 시스템은 “알림” 스텝에서 미리 설정된 메시지를 반환합니다.
이 명령어를 호출하기 전에 “알림” 스텝은 다음과 같은 요구 사항을 충족해야 합니다.
-
Mech-Vision 프로젝트의 “알림” 스텝
-
“알림” 스텝을 다른 스텝의 오른쪽에 연결합니다. 아래 이미지에서는 "출력" 스텝을 예로 들었습니다.
-
“출력” 스텝 파라미터 패널에서 출력이 있을 때 제어 흐름을 트리거하기 파라미터를 선택하십시오.
-
“알림” 스텝 파라미터 패널에서 “서비스 이름”으로 Standard Interface Notify로 입력하고(입력하면 수정할 수 없음) “메시지”에서 1001(수요에 따라 입력하고 양의 정수만 입력 가능)로 입력하십시오.
-
-
Mech-Viz 프로젝트의 “알림” 스텝
-
“알림” 스텝을 작업 흐름의 올바른 위치에 추가합니다.
-
“알림” 스텝 파라미터 패널에서 표준 인터페이스를 선택하고 “메시지”에서 1000(수요에 따라 입력하고 양의 정수만 입력 가능)로 입력하십시오.
-
호출 순서
Mech-Vision 프로젝트를 실행하기 명령어 또는 Mech-Viz 프로젝트를 실행하기 명령어를 호출한 후 즉시 사용해야 합니다.
캘리브레이션
기능 소개
이 명령어는 로봇 핸드-아이 캘리브레이션(카메라 외부 파라미터 캘리브레이션)에 사용됩니다. 이 명령어는 자동 캘리브레이션을 완료하기 위해 Mech-Vision툴 바의 카메라 캘리브레이션 설정과 함께 사용해야 합니다. KUKA 자동 캘리브레이션를 참조하십시오.
명령어 포맷
MM_Calib(Move_Type,PosJps,WaitTime,E1)
파라미터를 입력하기
Move_Type
이 파라미터는 로봇의 이동 유형이며, 유효한 값은 1 또는 2입니다.
-
1: 직선 운동.
-
2: 관절 운동.
PosJps
이 파라미터는 캘리브레이션 포인트의 포즈 유형을 지정하며, 유효한 값은 1 또는 2입니다.
-
1: 말단장치 포즈.
-
2: 관절 각도.
WaitTime
이 파라미터는 로봇이 캘리브레이션 포인트 위치로 이동한 후 흔들림을 피하기 위해 기다리는 시간입니다. 기본값은 2(s)입니다. 단위는 초입니다. 데이터 유형은 INT입니다.
E1
이 파라미터는 외부 축 데이터를 지정합니다. 단위는 밀리미터입니다. 7번째 축이 존재하고 현장에서 로봇이 이를 제어하는 경우, 이 파라미터는 특정 외부 축 데이터로 설정해야 합니다. 그렇지 않으면, 이 파라미터는 0으로 설정해야 합니다.
Mech-Viz 프로젝트를 중지하기
호출 순서
Mech-Viz 프로젝트를 실행하기 명령어를 호출한 후 사용해야 합니다.
프로젝트 상태 가져오기
명령어 포맷
MM_Get_Status(MM_Status)
파라미터를 출력하기
MM_Status
이 파라미터는 해당 명령어의 실행 상태 코드를 저장합니다.데이터 유형은 INT입니다. 명령어가 성공적으로 실행되면 상태 코드는 1101입니다. Mech-Vision 프로젝트는 준비가 완료됩니다. 명령어 실행이 비정상일 경우 상태 코드는 해당 오류 코드입니다. 자세한 내용은 "표준 인터페이스 상태 코드 및 오류 분석"을 참조하십시오.