표준 인터페이스 명령어 설명

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

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

이 부분에서는 백호프 PLC와 Mech-Mind 비전 시스템 간의 EtherNet/IP 통신에서 사용되는 표준 인터페이스 명령어를 설명합니다. PLC(클라이언트)는 Mech-Mind 비전 시스템(서버)에게 명령어를 전송하고, Mech-Mind 비전 시스템은 처리된 데이터를 PLC에 반환합니다.

send receive

주의사항

  • 데이터 단위:

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

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

  • 비전 포인트 또는 웨이 포인트:

    • 비전 포인트: Mech-Vision에서 인식되는 물체입니다. 비전 포인트에는 물체 포즈, 레이블, 속도, 치수, 사용자 정의 데이터 등을 포함한 정보가 있습니다.

    • 웨이 포인트: 로봇이 계획된 경로를 따라 이동할 때 도달하는 각 지점입니다. 웨이 포인트에는 로봇 포즈, 레이블, 이동 유형, 속도 등의 정보가 있습니다. 웨이 포인트는 다음 두 가지 유형으로 나눠집니다.

      • 비전 이동 웨이 포인트: “비전 이동" 스텝에 해당하는 웨이 포인트입니다.

      • 비(非) 비전 이동 웨이 포인트: “비전 이동" 스텝 이외의 다른 이동 유형 스텝에 해당하는 웨이 포인트입니다.

Mech-Vision 프로젝트 실행하기

기능 소개

이 명령어는 Mech-Vision 프로젝트 실행을 트리거하는 데 사용됩니다. Mech-Vision 프로젝트가 실행되면 비전 시스템은 카메라를 작동시켜 이미지를 캡처하고, 반환된 이미지를 알고리즘으로 처리하여 일련의 비전 포인트 또는 웨이 포인트를 생성합니다.

  • 비전 포인트: Mech-Vision에서 인식한 대상 물체입니다. 비전 포인트에는 물체 포즈, 레이블, 속도, 치수, 사용자 정의 데이터 등의 정보가 포함됩니다.

  • 웨이 포인트: 로봇이 계획 경로를 따라 이동하면서 순차적으로 도달해야 하는 점입니다. 웨이 포인트에는 로봇 포즈, 레이블, 이동 유형, 속도 등의 정보가 포함됩니다.

호출 순서

기능 블록

cmd1

입력 파라미터

Vision_Proj_Num

이 파라미터는 Mech-Vision 프로젝트 번호입니다. 데이터 유형은 USINT입니다. Mech-Vision 프로젝트 번호(프로젝트 이름 앞의 숫자)는 Mech-Vision 프로젝트 리스트에서 확인할 수 있습니다.

Req_Pose_Num

이 파라미터는 Mech-Vision 프로젝트에서 획득할 비전 포인트 또는 웨이 포인트 수량의 목표값을 나타냅니다. 데이터 유형은 USINT입니다. 값은 0 또는 0보다 큰 정수입니다. 구체적인 설명은 다음과 같습니다.

Mech-Vision 프로젝트에 "경로 계획" 스텝이 있으면 이 파라미터는 "예상 웨이 포인트 수"를 나타내고, "경로 계획" 스텝이 없으면 "예상 비전 포인트 수"를 나타냅니다.
  • 0: Mech-Vision 프로젝트를 통해 모든 비전 포인트 또는 웨이 포인트를 획득합니다.

  • 0보다 큰 정수: Mech-Vision 프로젝트를 통해 지정한 수량의 비전 포인트 또는 웨이 포인트를 획득합니다.

    • Mech-Vision 프로젝트에서 출력되는 비전 포인트 또는 웨이 포인트의 총량이 이 파라미터 값보다 작으면, 출력되는 모든 비전 포인트 또는 웨이 포인트를 획득합니다.

    • Mech-Vision 프로젝트에서 출력되는 비전 포인트 또는 웨이 포인트의 총량이 이 파라미터 값과 같거나 크면, 지정된 수량의 비전 포인트 또는 웨이 포인트를 획득합니다.

Robot_Pose_Type

이 파라미터는 실제 로봇의 포즈가 Mech-Vision 프로젝트에 입력되는 형식을 지정합니다. 데이터 유형은 USINT입니다. 값은 0, 1, 2 또는 3입니다. 구체적인 설명은 다음과 같습니다.

Robot_Pose

이 파라미터는 로봇의 포즈를 지정합니다. 데이터 유형은 ARRAY[0..1, 0..5] OF DINT입니다. 이 파라미터의 데이터 구조는 2차원 ARRAY이며, ARRAY[0]은 로봇 관절 각도, ARRAY[1]은 로봇 플랜지 포즈입니다.

아래 표는 Robot_Pose_Type과 Robot_Pose 파라미터 값의 관계와 설명입니다.

Robot_Pose_Type Robot_Pose 설명 적용 시나리오

0

[[0,0,0,0,0,0]],[0,0,0,0,0,0]]

이 명령어는 Mech-Vision 프로젝트에 로봇 포즈를 전달할 필요가 없습니다.

Mech-Vision 프로젝트에서 "경로 계획" 스텝을 사용하는 경우, 경로 계획의 시작점은 경로 계획 도구에서 설정한 Home 포인트입니다.

카메라 설치 방식이 Eye to Hand이고, 프로젝트에서 사전 촬영이 필요 없는 경우 이 설정을 사용합니다.

1

로봇 현재 관절 각도 + 현재 플랜지 포즈

이 명령어는 로봇의 관절 각도와 플랜지 포즈를 Mech-Vision 프로젝트에 전달해야 합니다.

카메라 설치 방식이 Eye In Hand이면 반드시 이 설정을 사용해야 합니다.

갠트리 로봇을 사용하는 시나리오를 제외한 대부분의 시나리오에서 이 설정을 권장합니다.

2

로봇 현재 플랜지 포즈

이 명령어는 로봇의 현재 플랜지 포즈를 Mech-Vision 프로젝트에 전달해야 합니다.

이 설정은 갠트리 로봇을 사용하는 시나리오에서 권장됩니다.

3

사용자 정의 관절 각도

이 명령어는 사용자 정의 관절 각도를 Mech-Vision 프로젝트에 전달해야 합니다.

이 관절 각도 데이터는 Mech-Vision 프로젝트의 "경로 계획" 스텝에 시작점으로 전송됩니다. 즉, 로봇은 이 시작점에서 경로 계획의 첫 번째 웨이 포인트로 이동합니다.

카메라 설치 방식이 Eye to Hand이고, 프로젝트에서 사전 촬영이 필요한 경우 이 설정을 사용합니다.

관절 각도와 플랜지 포즈의 부동 소수점 값은 먼저 10000을 곱해 32비트 부호 있는 정수로 변환한 후, Robot_Pose에 설정해야 합니다.

Start_Vision

이 파라미터는 Mech-Vision 프로젝트 실행을 트리거합니다. 상승 에지에서 유효합니다. 데이터 유형은 BOOL입니다.

Trigger_Acknowledge

이 파라미터는 Command_Trigger 신호가 비전 시스템을 성공적으로 트리거했는지 여부를 피드백합니다. 데이터 유형은 BOOL입니다. 1은 트리거 성공을 의미하고, 0은 Command_Trigger 신호를 수신하지 못했음을 의미합니다.

출력 파라미터

Vision_Proj_Num_O

이 파라미터는 Mech-Vision 프로젝트 번호를 의미합니다. 데이터 유형은 USINT입니다.

Req_Pose_Num_O

이 파라미터는 Mech-Vision 프로젝트에서 획득할 비전 포인트 또는 웨이 포인트 수량의 목표값을 의미합니다. 데이터 유형은 USINT입니다. 0은 Mech-Vision 프로젝트에서 모든 비전 포인트 또는 웨이 포인트를 획득함을 의미합니다.

Robot_Pose_Type_O

이 파라미터는 실제 로봇의 포즈가 Mech-Vision 프로젝트에 입력되는 형식을 의미합니다. 데이터 유형은 USINT입니다. 값은 0, 1, 2 또는 3입니다.

Robot_Pose_JPS

이 파라미터는 로봇의 관절 각도를 나타냅니다. 데이터 유형은 ARRAY[0..5] OF DINT입니다.

Robot_Pose_TCP

이 파라미터는 로봇의 플랜지 포즈를 나타냅니다. 데이터 유형은 ARRAY[0..5] OF DINT입니다.

Command

이 파라미터는 명령 코드를 나타내며 기능 블록을 통해 자동으로 할당됩니다. 데이터 유형은 DINT입니다.

Command_Trigger

이 파라미터는 명령어 스위치를 의미하며 기능 블록을 통해 자동으로 트리거됩니다. 데이터 유형은 BOOL입니다.

전역 변수 MM.FromCamera의 반환 데이터

MM.FromCamera.STATUS_CODE

이 파라미터는 명령어 실행 상태 코드를 저장하는 데 사용됩니다. 데이터 유형은 DINT입니다. 명령어가 정상적으로 수행되면 상태 코드는 1102입니다. 명령어 실행이 비정상일 경우 상태 코드는 해당 오류 코드입니다. 자세한 내용은 "표준 인터페이스 상태 코드 및 오류 분석"을 참조하십시오.

예시

cmd2

위 예시에서는 MM.Camera_User.Step_Num을 4로 설정하고 MM_Start_Vis FB를 활성화합니다. 이후 MM.Camera_User.Start_Vis에 상승 에지가 발생하면 PLC가 Mech-Vision 프로젝트 1의 실행을 트리거하고, Mech-Vision 프로젝트 1이 모든 비전 포인트 또는 웨이 포인트를 반환하도록 요청합니다. 동시에 로봇의 현재 관절 각도와 플랜지 포즈를 Mech-Vision에 전달합니다.

비전 결과 획득하기

기능 소개

이 명령어는 Mech-Vision에서 출력한 비전 결과, 즉 일련의 비전 포인트를 획득하는 데 사용됩니다. 비전 포인트의 물체 포즈, 즉 "출력" 스텝의 "poses" 포트에서 출력되는 데이터는 비전 시스템에 의해 로봇의 말단장치 포즈로 변환됩니다. 과정은 다음과 같습니다.

"출력" 스텝의 첫 번째 입력 포트가 대상 물체 중심점이면, "출력" 스텝은 대상 물체 중심점을 해당 픽 포인트로 변환합니다. 따라서 이 명령어를 실행하여 얻은 대상 물체 포즈는 실제로 대상 물체 중심점의 포즈가 아니라 픽 포인트의 포즈입니다.
get tcp
  1. 물체 포즈의 형식을 사원수를 오일러 각으로 전환합니다.

  2. X축을 중심으로 물체의 포즈를 180° 회전하여 Z축 방향을 아래쪽으로 가리키도록 합니다.

    convert tcp

호출 순서

Mech-Vision 프로젝트 실행하기 명령어를 먼저 호출한 후 사용해야 합니다.

기능 블록

cmd3

입력 파라미터

Vision_Proj_Num

이 파라미터는 Mech-Vision 프로젝트 번호입니다. 데이터 유형은 USINT입니다. Mech-Vision 프로젝트 번호(프로젝트 이름 앞의 숫자)는 Mech-Vision 프로젝트 리스트에서 확인할 수 있습니다.

Get_VisData

이 파라미터는 비전 결과 획득을 트리거합니다. 상승 에지에서 유효합니다. 데이터 유형은 BOOL입니다.

Data_Ready

이 파라미터는 획득한 비전 결과가 읽기 가능한지 여부를 나타내며, 여러 비전 포인트를 수신할 때 사용됩니다. 데이터 유형은 BOOL입니다. 1은 읽기 가능을 의미하고, 0은 읽기 불가를 의미합니다.

Send_Pose_Num

이 파라미터는 Mech-Vision가 반환한 비전 포인트 수를 나타냅니다. 데이터 유형은 USINT입니다. 값은 0 또는 0보다 큰 정수입니다.

Target_Pose

이 파라미터는 획득한 비전 결과에서 단일 비전 포인트의 포즈를 나타냅니다. 포즈 형식은 TCP 포즈입니다. 데이터 유형은 ARRAY[0..5] OF DINT입니다.

Target_Label

이 파라미터는 획득한 비전 결과에서 비전 포인트의 레이블을 나타냅니다. 이 레이블은 포즈와 일대일로 대응됩니다. 데이터 유형은 DINT입니다.

Trigger_Acknowledge

이 파라미터는 Command_Trigger 신호가 비전 시스템을 성공적으로 트리거했는지 여부를 피드백합니다. 데이터 유형은 BOOL입니다. 1은 트리거 성공을 의미하고, 0은 Command_Trigger 신호를 수신하지 못했음을 의미합니다.

출력 파라미터

Vision_Proj_Num_O

이 파라미터는 Mech-Vision 프로젝트 번호를 의미합니다. 데이터 유형은 USINT입니다.

Target_Pose_O

이 파라미터는 획득한 비전 결과의 각 비전 포인트 포즈를 나타냅니다. 포즈 형식은 TCP 포즈입니다. 데이터 유형은 ARRAY[0..29,0..5] OF DINT입니다.

올바른 TCP 포즈 데이터를 얻으려면 Target_Pose_O 배열의 요소를 10000으로 나누어야 합니다.

Target_Label_O

이 파라미터는 획득한 비전 결과의 각 비전 포인트 레이블을 나타냅니다. 이 레이블은 포즈와 일대일로 대응됩니다. 데이터 유형은 ARRAY[0..29] OF DINT입니다.

DataAck

이 파라미터는 Mech-Vision가 반환한 데이터가 읽혀지고 캐시되었는지 여부를 확인하는 데 사용됩니다. 데이터 유형은 BOOL입니다.

Command

이 파라미터는 명령 코드를 나타내며 기능 블록을 통해 자동으로 할당됩니다. 데이터 유형은 DINT입니다.

Command_Trigger

이 파라미터는 명령어 스위치를 의미하며 기능 블록을 통해 자동으로 트리거됩니다. 데이터 유형은 BOOL입니다.

전역 변수 MM.FromCamera의 반환 데이터

MM.FromCamera.STATUS_CODE

이 파라미터는 명령어 실행 상태 코드를 저장하는 데 사용됩니다. 데이터 유형은 DINT입니다. 명령어가 정상적으로 수행되면 상태 코드는 1100입니다. 명령어 실행이 비정상일 경우 상태 코드는 해당 오류 코드입니다. 자세한 내용은 "표준 인터페이스 상태 코드 및 오류 분석"을 참조하십시오.

이 명령어를 호출한 후 비전 시스템이 기본적으로 10초 이내에 처리 결과를 반환하지 않으면 타임아웃 오류 상태 코드를 반환합니다. Mech-Vision 툴 바의 로봇 통신 구성  다음  고급 설정에서 필요에 따라 이 기본 시간 제한을 변경할 수 있습니다.

set vis time

MM.FromCamera.SEND_POSE_TYPE

이 파라미터 값이 2이면 Mech-Vision가 반환한 포즈 형식이 TCP 포즈임을 의미합니다. 데이터 유형은 USINT입니다.

예시

cmd4

위 예시에서는 MM.Camera_User.Step_Num을 6으로 설정하고 MM_Get_VisData FB를 활성화합니다. 이후 MM.Camera_User.Get_VisData에 상승 에지가 발생하면 Mech-Vision 프로젝트 1의 비전 결과를 획득합니다.

Mech-Vision 파라미터 레시피 전환하기

기능 소개

이 명령어는 Mech-Vision 프로젝트에서 사용하는 파라미터 레시피를 전환하는 데 사용됩니다. 아래 이미지는 Mech-Vision 프로젝트에서 파라미터 레시피를 수동으로 전환하는 방법을 보여줍니다. 파라미터 레시피와 관련된 정보는 파라미터 레시피 내용을 참조하십시오.

set recipe

호출 순서

이 명령어는 Mech-Vision 프로젝트 실행하기 명령어를 호출하기 전에 사용해야 합니다.

기능 블록

cmd5

입력 파라미터

Vision_Proj_Num

이 파라미터는 Mech-Vision 프로젝트 번호입니다. 데이터 유형은 USINT입니다. Mech-Vision 프로젝트 번호(프로젝트 이름 앞의 숫자)는 Mech-Vision 프로젝트 리스트에서 확인할 수 있습니다.

Vision_Recipe_Num

이 파라미터는 Mech-Vision 프로젝트의 파라미터 레시피 번호를 나타냅니다. 데이터 유형은 USINT입니다. 파라미터 레시피 번호를 확인하는 방법에 대한 자세한 내용은 "파라미터 레시피 번호 보기"를 참조하십시오.

Switch_Recipe

이 파라미터는 Mech-Vision 파라미터 레시피 전환을 트리거합니다. 상승 에지에서 유효합니다. 데이터 유형은 BOOL입니다.

Trigger_Acknowledge

이 파라미터는 Command_Trigger 신호가 비전 시스템을 성공적으로 트리거했는지 여부를 피드백합니다. 데이터 유형은 BOOL입니다. 1은 트리거 성공을 의미하고, 0은 Command_Trigger 신호를 수신하지 못했음을 의미합니다.

출력 파라미터

Vision_Proj_Num_O

이 파라미터는 Mech-Vision 프로젝트 번호를 의미합니다. 데이터 유형은 USINT입니다.

Vision_Recipe_Num_O

이 파라미터는 Mech-Vision 프로젝트의 파라미터 레시피 번호를 나타냅니다. 데이터 유형은 USINT입니다.

Command

이 파라미터는 명령 코드를 나타내며 기능 블록을 통해 자동으로 할당됩니다. 데이터 유형은 DINT입니다.

Command_Trigger

이 파라미터는 명령어 스위치를 의미하며 기능 블록을 통해 자동으로 트리거됩니다. 데이터 유형은 BOOL입니다.

전역 변수 MM.FromCamera의 반환 데이터

MM.FromCamera.STATUS_CODE

이 파라미터는 명령어 실행 상태 코드를 저장하는 데 사용됩니다. 데이터 유형은 DINT입니다. 명령어가 정상적으로 수행되면 상태 코드는 1107입니다. 명령어 실행이 비정상일 경우 상태 코드는 해당 오류 코드입니다. 자세한 내용은 "표준 인터페이스 상태 코드 및 오류 분석"을 참조하십시오.

예시

cmd6

위 예시에서는 MM.Camera_User.Step_Num을 2로 설정하고 MM_Switch_Recipe FB를 활성화합니다. 이후 MM.Camera_User.Switch_Recipe에 상승 에지가 발생하면 Mech-Vision 프로젝트 1의 파라미터 레시피가 번호 1의 파라미터 레시피로 전환됩니다.

Mech-Vision가 계획한 경로 획득하기

기능 소개

이 명령어는 Mech-Vision에서 계획한 경로, 즉 일련의 웨이 포인트를 획득하는 데 사용됩니다. 경로는 "경로 계획 도구"를 통해 생성되며, 아래 그림과 같이 구성 마법사 버튼을 클릭하면 "경로 계획 도구"를 사용할 수 있습니다. "경로 계획" 스텝에 관한 자세한 설명은 "경로 계획"을 참조하십시오.

Mech-Vision "출력" 스텝의 포트 유형 파라미터는 "사전 정의(로봇 경로)"로 설정해야 합니다.
get plan path step

호출 순서

Mech-Vision 프로젝트 실행하기 명령어를 먼저 호출한 후 사용해야 합니다.

기능 블록

cmd7

입력 파라미터

Vision_Proj_Num

이 파라미터는 Mech-Vision 프로젝트 번호입니다. 데이터 유형은 USINT입니다. Mech-Vision 프로젝트 번호(프로젝트 이름 앞의 숫자)는 Mech-Vision 프로젝트 리스트에서 확인할 수 있습니다.

Request_Pose_Type

이 파라미터는 웨이 포인트를 얻기 위한 포즈 유형을 지정하는 데 사용됩니다. 데이터 유형은 USINT입니다. 유효한 값은 1 또는 2입니다.

  • 1: 관절 각도.

  • 2: 말단장치 포즈.

Get_VisData

이 파라미터는 Mech-Vision 계획 경로 획득을 트리거합니다. 상승 에지에서 유효합니다. 데이터 유형은 BOOL입니다.

Data_Ready

이 파라미터는 획득한 계획 경로가 읽기 가능한지 여부를 나타내며, 여러 웨이 포인트를 수신할 때 사용됩니다. 데이터 유형은 BOOL입니다. 1은 읽기 가능을 의미하고, 0은 읽기 불가를 의미합니다.

Send_Pose_Num

이 파라미터는 Mech-Vision가 반환한 웨이 포인트 수를 나타냅니다. 데이터 유형은 USINT입니다. 값은 0 또는 0보다 큰 정수입니다.

Target_Pose

이 파라미터는 획득한 계획 경로에서 단일 웨이 포인트의 포즈를 나타냅니다. 데이터 유형은 ARRAY[0..5] OF DINT입니다.

Target_Label

이 파라미터는 획득한 계획 경로에서 단일 웨이 포인트의 레이블을 나타냅니다. 이 레이블은 포즈와 일대일로 대응됩니다. 데이터 유형은 DINT입니다.

Target_Tool_ID

이 파라미터는 획득한 계획 경로에서 단일 웨이 포인트의 말단장치 번호를 나타냅니다. 이 말단장치 번호는 포즈와 일대일로 대응됩니다. 데이터 유형은 DINT입니다.

Trigger_Acknowledge

이 파라미터는 Command_Trigger 신호가 비전 시스템을 성공적으로 트리거했는지 여부를 피드백합니다. 데이터 유형은 BOOL입니다. 1은 트리거 성공을 의미하고, 0은 Command_Trigger 신호를 수신하지 못했음을 의미합니다.

출력 파라미터

Vision_Proj_Num_O

이 파라미터는 Mech-Vision 프로젝트 번호를 의미합니다. 데이터 유형은 USINT입니다.

Request_Pose_Type_O

이 파라미터는 웨이 포인트의 포즈 유형을 나타냅니다. 데이터 유형은 USINT입니다. 1은 관절 각도를 의미하고, 2는 TCP 포즈를 의미합니다.

Target_Pose_O

이 파라미터는 획득한 계획 경로의 각 웨이 포인트 포즈를 나타냅니다. 포즈 형식은 TCP 포즈 또는 관절 각도이며, 정확한 형식은 Request_Pose_Type 파라미터 값에 따라 달라집니다. 데이터 유형은 ARRAY[0..29,0..5] OF DINT입니다.

올바른 포즈 데이터를 얻으려면 Target_Pose_O 배열의 요소를 10000으로 나누어야 합니다.

Target_Label_O

이 파라미터는 획득한 계획 경로의 각 웨이 포인트 레이블을 나타냅니다. 이 레이블은 포즈와 일대일로 대응됩니다. 데이터 유형은 ARRAY[0..29] OF DINT입니다.

Target_Tool_ID_O

이 파라미터는 획득한 계획 경로의 각 웨이 포인트 말단장치 번호를 나타냅니다. 이 말단장치 번호는 포즈와 일대일로 대응됩니다. 데이터 유형은 ARRAY[0..29] OF DINT입니다.

DataAck

이 파라미터는 Mech-Vision가 반환한 데이터가 읽혀지고 캐시되었는지 여부를 확인하는 데 사용됩니다. 데이터 유형은 BOOL입니다.

Command

이 파라미터는 명령 코드를 나타내며 기능 블록을 통해 자동으로 할당됩니다. 데이터 유형은 DINT입니다.

Command_Trigger

이 파라미터는 명령어 스위치를 의미하며 기능 블록을 통해 자동으로 트리거됩니다. 데이터 유형은 BOOL입니다.

전역 변수 MM.FromCamera의 반환 데이터

MM.FromCamera.STATUS_CODE

이 파라미터는 명령어 실행 상태 코드를 저장하는 데 사용됩니다. 데이터 유형은 DINT입니다. 명령어가 정상적으로 수행되면 상태 코드는 1103입니다. 명령어 실행이 비정상일 경우 상태 코드는 해당 오류 코드입니다. 자세한 내용은 "표준 인터페이스 상태 코드 및 오류 분석"을 참조하십시오.

이 명령어를 호출한 후 비전 시스템이 기본적으로 10초 이내에 처리 결과를 반환하지 않으면 타임아웃 오류 상태 코드를 반환합니다. Mech-Vision 툴 바의 로봇 통신 구성  다음  고급 설정에서 필요에 따라 이 기본 시간 제한을 변경할 수 있습니다.

set vis time

MM.FromCamera.SEND_POSE_TYPE

이 파라미터는 웨이 포인트의 포즈 형식을 의미하며 값은 Request_Pose_Type의 입력 값과 같습니다. 데이터 유형은 USINT입니다. 1은 관절 각도를 의미하고, 2는 TCP 포즈를 의미합니다.

MM.FromCamera.VISUAL_POINT_INDEX

이 파라미터는 전체 경로에서 경로 계획 도구의 "비전 이동" 스텝에 해당하는 웨이 포인트(비전 이동 웨이 포인트)의 위치 번호를 나타냅니다. 데이터 유형은 USINT입니다. 경로에 비전 이동 웨이 포인트가 없는 경우 이 파라미터의 값은 0입니다.

예를 들어, 계획된 경로가 "이동_1", "이동_2", "비전 이동", "이동_3" 스텝으로 구성된 경우 비전 이동 웨이 포인트의 위치 번호는 3입니다.

예시

cmd8

위 예시에서는 MM.Camera_User.Step_Num을 8로 설정하고 MM_Get_Planned_VisData FB를 활성화합니다. 이후 Camera_User.Get_VisData에 상승 에지가 발생하면 Mech-Vision 프로젝트 1이 반환한 계획 경로를 획득하며, 웨이 포인트의 포즈 형식은 관절 각도입니다.

Mech-Viz 프로젝트 실행하기

기능 소개

이 명령어는 Mech-Viz 프로젝트 실행을 트리거하는 데 사용됩니다. Mech-Viz는 Mech-Vision에서 출력한 비전 결과를 기반으로 로봇의 이동 경로를 계획합니다.

Mech-Viz 프로젝트 리소스 화면에서 프로젝트 명칭을 마우스 오른쪽 버튼으로 클릭하여 해당 프로젝트를 자동으로 로드하기를 선택합니다.

기능 블록

cmd9

입력 파라미터

Robot_Pose_Type

이 파라미터는 실제 로봇 포즈가 Mech-Viz 프로젝트에 전달되는 방식을 지정합니다. 값의 범위는 0, 1, 2입니다. 아래 표는 자세한 내용을 설명합니다. 데이터 유형은 USINT입니다.

Robot_Pose

이 파라미터는 로봇의 포즈를 지정합니다. 데이터 유형은 ARRAY[0..1, 0..5] OF DINT입니다. 이 파라미터의 데이터 구조는 2차원 ARRAY이며, ARRAY[0]은 로봇 관절 각도, ARRAY[1]은 로봇 플랜지 포즈입니다.

아래 표는 Robot_Pose_Type과 Robot_Pose 파라미터 값의 관계와 설명입니다.

Robot_Pose_Type Robot_Pose 설명 적용 시나리오

0

[[0,0,0,0,0,0],[0,0,0,0,0,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이면 이 설정을 권장합니다.

관절 각도와 플랜지 포즈의 부동 소수점 값은 먼저 10000을 곱해 32비트 부호 있는 정수로 변환한 후, Robot_Pose에 설정해야 합니다.
카메라가 Eye To Hand 방식으로 장착되는 경우 Robot_Pose_Type를 2로 설정하는 이유는 무엇입니까?

아래 이미지는 로봇이 배치 영역에서 어떻게 작동하는지 보여줍니다.

이 경우 Robot_Pose_Type1로 설정하면 로봇의 현재 포즈가 Mech-Viz로 전송되고, 실제 로봇은 첫 번째 웨이 포인트에 도달하기 전에 다른 위치로 이동할 가능성이 있습니다. 그러나 시뮬레이션된 로봇은 현재 위치에서 Mech-Viz 프로젝트의 첫 번째 웨이 포인트로 직접 이동합니다. 그 결과 실제 로봇과 시뮬레이션 로봇의 경로가 일치하지 않을 수 있습니다. 이러한 불일치는 잠재적으로 예상하지 못한 안전 위험을 초래할 수 있으며, 특히 시뮬레이션된 로봇 경로에서 충돌이 감지되는 경우 더욱 그렇습니다.

반면 Robot_Pose_Type2로 설정하면 로봇 티치 펜던트에 설정한 이미지 캡처 포즈를 Mech-Viz로 전송합니다. 따라서 실제 로봇이 이미지 캡처 영역에 있을 때 실제 Mech-Viz가 다음 경로 계획을 시작할 수 있으므로 사이클 타임을 단축할 수 있습니다.

결론적으로 Eye To Hand 방식의 프로젝트에서는 Robot_Pose_Type를 2로 설정하는 것이 권장됩니다.

robot example

Start_Viz

이 파라미터는 Mech-Viz 프로젝트 실행을 트리거합니다. 상승 에지에서 유효합니다. 데이터 유형은 BOOL입니다.

Trigger_Acknowledge

이 파라미터는 Command_Trigger 신호가 비전 시스템을 성공적으로 트리거했는지 여부를 피드백합니다. 데이터 유형은 BOOL입니다. 1은 트리거 성공을 의미하고, 0은 Command_Trigger 신호를 수신하지 못했음을 의미합니다.

출력 파라미터

Robot_Pose_Type_O

이 파라미터는 실제 로봇의 포즈가 Mech-Viz 프로젝트에 입력되는 형식을 의미합니다. 데이터 유형은 USINT입니다. 값은 0, 1 또는 2입니다.

Robot_Pose_JPS

이 파라미터는 로봇의 관절 각도를 나타냅니다. 데이터 유형은 ARRAY[0..5] OF DINT입니다.

Robot_Pose_TCP

이 파라미터는 로봇의 플랜지 포즈를 나타냅니다. 데이터 유형은 ARRAY[0..5] OF DINT입니다.

Command

이 파라미터는 명령 코드를 나타내며 기능 블록을 통해 자동으로 할당됩니다. 데이터 유형은 DINT입니다.

Command_Trigger

이 파라미터는 명령어 스위치를 의미하며 기능 블록을 통해 자동으로 트리거됩니다. 데이터 유형은 BOOL입니다.

전역 변수 MM.FromCamera의 반환 데이터

MM.FromCamera.STATUS_CODE

이 파라미터는 명령어 실행 상태 코드를 저장하는 데 사용됩니다. 데이터 유형은 DINT입니다. 명령어가 정상적으로 수행되면 상태 코드는 2103입니다. 명령어 실행이 비정상일 경우 상태 코드는 해당 오류 코드입니다. 자세한 내용은 "표준 인터페이스 상태 코드 및 오류 분석"을 참조하십시오.

예시

cmd10

위 예시에서는 MM.Camera_User.Step_Num을 14로 설정하고 MM_Start_Viz FB를 활성화합니다. 이후 MM.Camera_User.Start_Viz에 상승 에지가 발생하면 Mech-Viz 프로젝트 실행을 트리거합니다.

Mech-Viz 프로젝트 중지하기

기능 소개

이 명령어는 실행 중인 Mech-Viz 프로젝트를 중지하는 데 사용됩니다.

호출 순서

Mech-Viz 프로젝트 실행하기 명령어를 먼저 호출한 후 사용해야 합니다.

기능 블록

cmd11

입력 파라미터

Stop_Viz

이 파라미터는 실행 중인 Mech-Viz 프로젝트 중지를 트리거합니다. 상승 에지에서 유효합니다. 데이터 유형은 BOOL입니다.

Trigger_Acknowledge

이 파라미터는 Command_Trigger 신호가 비전 시스템을 성공적으로 트리거했는지 여부를 피드백합니다. 데이터 유형은 BOOL입니다. 1은 트리거 성공을 의미하고, 0은 Command_Trigger 신호를 수신하지 못했음을 의미합니다.

출력 파라미터

Command

이 파라미터는 명령 코드를 나타내며 기능 블록을 통해 자동으로 할당됩니다. 데이터 유형은 DINT입니다.

Command_Trigger

이 파라미터는 명령어 스위치를 의미하며 기능 블록을 통해 자동으로 트리거됩니다. 데이터 유형은 BOOL입니다.

전역 변수 MM.FromCamera의 반환 데이터

MM.FromCamera.STATUS_CODE

이 파라미터는 명령어 실행 상태 코드를 저장하는 데 사용됩니다. 데이터 유형은 DINT입니다. 명령어가 정상적으로 수행되면 상태 코드는 2104입니다. 명령어 실행이 비정상일 경우 상태 코드는 해당 오류 코드입니다. 자세한 내용은 "표준 인터페이스 상태 코드 및 오류 분석"을 참조하십시오.

예시

cmd12

위 예시에서는 MM.Camera_User.Step_Num을 16으로 설정하고 MM_Stop_Viz FB를 활성화합니다. 이후 MM.Camera_User.Stop_Viz에 상승 에지가 발생하면 Mech-Viz 프로젝트가 정지됩니다.

Mech-Viz 메시지 분기 아웃 포트 설정하기

기능 소개

이 명령어는 "메시지 분기" 스텝의 아웃 포트를 설정하는 데 사용됩니다. Mech-Viz 프로젝트가 "메시지 분기" 스텝까지 실행되면, 이 명령어로 지정한 아웃 포트를 기다립니다.

set branch

호출 순서

Mech-Viz 프로젝트 실행하기 명령어를 먼저 호출한 후 사용해야 합니다.

기능 블록

cmd13

입력 파라미터

Branch_Name

이 파라미터는 메시지 분기 스텝 번호를 지정합니다. 데이터 유형은 USINT입니다. 값은 양의 정수여야 합니다. 스텝 번호는 스텝 파라미터 패널에 표시됩니다. 예를 들어 위 이미지에서 스텝 번호는 1입니다.

Branch_Exit_Port

이 파라미터는 "메시지 분기" 스텝의 아웃 포트 번호를 지정하는 데 사용됩니다. 데이터 유형은 USINT입니다. 값은 양의 정수여야 합니다. 파라미터 값을 N으로 설정하면 Mech-Viz 프로젝트는 "메시지 분기" 스텝의 N-1 아웃 포트를 따라 계속 실행됩니다.

Set_Branch

이 파라미터는 Mech-Viz 메시지 분기 아웃 포트 설정을 트리거합니다. 상승 에지에서 유효합니다. 데이터 유형은 BOOL입니다.

Trigger_Acknowledge

이 파라미터는 Command_Trigger 신호가 비전 시스템을 성공적으로 트리거했는지 여부를 피드백합니다. 데이터 유형은 BOOL입니다. 1은 트리거 성공을 의미하고, 0은 Command_Trigger 신호를 수신하지 못했음을 의미합니다.

출력 파라미터

Branch_Name_O

이 파라미터는 메시지 분기 스텝 번호를 나타냅니다. 데이터 유형은 USINT입니다.

Branch_Exit_Port_O

이 파라미터는 "메시지 분기" 스텝의 아웃 포트 번호를 나타냅니다. 데이터 유형은 USINT입니다.

Command

이 파라미터는 명령 코드를 나타내며 기능 블록을 통해 자동으로 할당됩니다. 데이터 유형은 DINT입니다.

Command_Trigger

이 파라미터는 명령어 스위치를 의미하며 기능 블록을 통해 자동으로 트리거됩니다. 데이터 유형은 BOOL입니다.

전역 변수 MM.FromCamera의 반환 데이터

MM.FromCamera.STATUS_CODE

이 파라미터는 명령어 실행 상태 코드를 저장하는 데 사용됩니다. 데이터 유형은 DINT입니다. 명령어가 정상적으로 수행되면 상태 코드는 2105입니다. 명령어 실행이 비정상일 경우 상태 코드는 해당 오류 코드입니다. 자세한 내용은 "표준 인터페이스 상태 코드 및 오류 분석"을 참조하십시오.

예시

cmd14

위 예시에서는 MM.Camera_User.Step_Num을 20으로 설정하고 MM_Set_Branch FB를 활성화합니다. 이후 MM.Camera_User.Set_Branch에 상승 에지가 발생하면 Mech-Viz 프로젝트가 번호 1의 "메시지 분기" 스텝에서 아웃 포트 0을 따라 계속 실행됩니다.

Mech-Viz의 현재 인덱스 설정하기

기능 소개

이 명령어는 인덱스를 갖춘 스텝의 "현재 인덱스" 값을 설정하는 데 사용됩니다. "인덱스" 파라미터가 있는 스텝에는 "배열대로 이동", "순서대로 이동", "자체 정의 파렛트 패턴", "미리 설정한 파렛트 패턴" 등이 포함됩니다.

set index

호출 순서

일반적으로 인덱스를 갖춘 스텝 앞에는 "메시지 분기" 스텝이 있습니다. PLC는 먼저 Mech-Viz 프로젝트 실행하기 명령어를 호출하고, 그다음 Mech-Viz의 현재 인덱스 설정하기 명령어를 호출하며, 마지막으로 Mech-Viz 메시지 분기 아웃 포트 설정하기 명령어를 호출합니다. 이는 Mech-Viz가 현재 인덱스 값을 설정할 충분한 시간을 확보하기 위한 것입니다.

기능 블록

cmd15

입력 파라미터

Index_Name

이 파라미터는 인덱스 유형 스텝의 스텝 번호를 지정하는 데 사용됩니다. 데이터 유형은 USINT입니다. 값은 양의 정수여야 합니다. 스텝 번호는 스텝 파라미터 패널에 표시됩니다. 예를 들어 위 이미지에서 스텝 번호는 3입니다.

Index_Counter

이 파라미터는 인덱스를 갖춘 스텝의 "현재 인덱스" 값을 지정하는 데 사용됩니다. 데이터 유형은 USINT입니다. 값은 양의 정수여야 합니다. 이 파라미터 값을 "N"으로 설정하면 해당 스텝의 "현재 인덱스" 값은 "N-1"이 됩니다.

Set_Index

이 파라미터는 Mech-Viz의 현재 인덱스 설정을 트리거합니다. 상승 에지에서 유효합니다. 데이터 유형은 BOOL입니다.

Trigger_Acknowledge

이 파라미터는 Command_Trigger 신호가 비전 시스템을 성공적으로 트리거했는지 여부를 피드백합니다. 데이터 유형은 BOOL입니다. 1은 트리거 성공을 의미하고, 0은 Command_Trigger 신호를 수신하지 못했음을 의미합니다.

출력 파라미터

Index_Name_O

이 파라미터는 인덱스 유형 스텝의 스텝 번호를 나타냅니다. 데이터 유형은 USINT입니다.

Index_Counter_O

이 파라미터는 인덱스를 갖춘 스텝의 "현재 인덱스" 값을 나타냅니다. 데이터 유형은 USINT입니다.

Command

이 파라미터는 명령 코드를 나타내며 기능 블록을 통해 자동으로 할당됩니다. 데이터 유형은 DINT입니다.

Command_Trigger

이 파라미터는 명령어 스위치를 의미하며 기능 블록을 통해 자동으로 트리거됩니다. 데이터 유형은 BOOL입니다.

전역 변수 MM.FromCamera의 반환 데이터

MM.FromCamera.STATUS_CODE

이 파라미터는 명령어 실행 상태 코드를 저장하는 데 사용됩니다. 데이터 유형은 DINT입니다. 명령어가 정상적으로 수행되면 상태 코드는 2106입니다. 명령어 실행이 비정상일 경우 상태 코드는 해당 오류 코드입니다. 자세한 내용은 "표준 인터페이스 상태 코드 및 오류 분석"을 참조하십시오.

예시

cmd16

위 예시에서는 MM.Camera_User.Step_Num을 18로 설정하고 MM_Set_Index FB를 활성화합니다. 이후 MM.Camera_User.Set_Index에 상승 에지가 발생하면 Mech-Viz 프로젝트에서 번호가 5인 스텝의 현재 인덱스를 3으로 설정합니다.

Mech-Viz가 계획한 경로 획득하기

기능 소개

이 명령어는 Mech-Viz 프로젝트에서 계획한 경로, 즉 일련의 웨이 포인트를 획득하는 데 사용됩니다.

웨이 포인트는 로봇이 계획 경로를 따라 이동하면서 순차적으로 도달해야 하는 점입니다. 웨이 포인트에는 로봇 포즈, 레이블, 이동 유형, 속도 등의 정보가 포함됩니다. 웨이 포인트는 다음 두 가지 유형으로 나뉩니다.

  • 비전 이동 웨이 포인트: "비전 이동" 스텝에 해당하는 웨이 포인트입니다.

  • 비전 이동이 아닌 웨이 포인트: "비전 이동" 스텝 이외의 다른 이동 유형 스텝에 해당하는 웨이 포인트입니다.

호출 순서

이 명령어는 Mech-Viz 프로젝트 실행하기 명령어를 호출한 후 사용해야 합니다.

기능 블록

cmd17

입력 파라미터

Request_Pose_Type

이 파라미터는 웨이 포인트를 얻기 위한 포즈 유형을 지정하는 데 사용됩니다. 데이터 유형은 USINT입니다. 유효한 값은 1 또는 2입니다.

  • 1: 관절 각도.

  • 2: 말단장치 포즈.

Get_VizData

이 파라미터는 Mech-Viz 계획 경로 획득을 트리거합니다. 상승 에지에서 유효합니다. 데이터 유형은 BOOL입니다.

Data_Ready

이 파라미터는 획득한 계획 경로를 읽을 수 있는지 여부를 나타내며, 여러 웨이 포인트를 수신할 때 전용으로 사용됩니다. 데이터 유형은 BOOL입니다. 1은 읽을 수 있음을 의미하고, 0은 읽을 수 없음을 의미합니다.

Send_Pose_Num

이 파라미터는 Mech-Viz가 반환한 웨이 포인트의 개수를 나타냅니다. 데이터 유형은 USINT입니다. 값은 0 또는 0보다 큰 정수입니다.

Target_Pose

이 파라미터는 획득한 계획 경로에서 단일 웨이 포인트의 포즈를 나타냅니다. 데이터 유형은 ARRAY[0..5] OF DINT입니다.

Target_Label

이 파라미터는 획득한 계획 경로에서 단일 웨이 포인트의 레이블을 나타냅니다. 이 레이블은 포즈와 일대일로 대응됩니다. 데이터 유형은 DINT입니다.

Target_Tool_ID

이 파라미터는 획득한 계획 경로에서 단일 웨이 포인트의 말단장치 번호를 나타냅니다. 이 말단장치 번호는 포즈와 일대일로 대응됩니다. 데이터 유형은 DINT입니다.

Trigger_Acknowledge

이 파라미터는 Command_Trigger 신호가 비전 시스템을 성공적으로 트리거했는지 여부를 반환합니다. 데이터 유형은 BOOL입니다. 1은 트리거 성공을 의미하고, 0은 Command_Trigger 신호를 수신하지 못했음을 의미합니다.

출력 파라미터

Request_Pose_Type_O

이 파라미터는 웨이 포인트의 포즈 유형을 나타냅니다. 데이터 유형은 USINT입니다. 1은 관절 각도이고, 2는 TCP 포즈입니다.

Target_Pose_O

이 파라미터는 획득한 계획 경로에 있는 각 웨이 포인트의 포즈를 나타냅니다. 포즈 형식은 TCP 포즈 또는 관절 각도이며, 정확한 형식은 Request_Pose_Type 파라미터 값에 따라 달라집니다. 데이터 유형은 ARRAY[0..29,0..5] OF DINT입니다.

올바른 포즈 데이터를 얻으려면 Target_Pose_O 배열 요소를 10000으로 나누어야 합니다.

Target_Label_O

이 파라미터는 획득한 계획 경로에 있는 각 웨이 포인트의 레이블을 나타냅니다. 이 레이블은 포즈와 일대일로 대응됩니다. 데이터 유형은 ARRAY[0..29] OF DINT입니다.

Target_Tool_ID_O

이 파라미터는 획득한 계획 경로에 있는 각 웨이 포인트의 말단장치 번호를 나타냅니다. 이 말단장치 번호는 포즈와 일대일로 대응됩니다. 데이터 유형은 ARRAY[0..29] OF DINT입니다.

DataAck

이 파라미터는 Mech-Viz가 반환한 데이터가 읽혀 캐시되었는지 여부를 확인하는 데 사용됩니다. 데이터 유형은 BOOL입니다.

Command

이 파라미터는 명령 코드를 나타내며 기능 블록을 통해 자동으로 할당됩니다. 데이터 유형은 DINT입니다.

Command_Trigger

이 파라미터는 명령 스위치를 의미하며 기능 블록을 통해 자동으로 트리거됩니다. 데이터 유형은 BOOL입니다.

전역 변수 MM.FromCamera의 반환 데이터

MM.FromCamera.STATUS_CODE

이 파라미터는 명령어 실행 상태 코드를 저장하는 데 사용됩니다. 데이터 유형은 DINT입니다. 명령어가 정상적으로 수행되면 상태 코드는 2100입니다. 명령어 실행이 비정상일 경우 상태 코드는 해당 오류 코드입니다. 자세한 내용은 "표준 인터페이스 상태 코드 및 오류 분석"을 참조하십시오.

이 명령어를 호출한 후 비전 시스템이 기본적으로 10초 이내에 처리 결과를 반환하지 않으면 타임아웃 오류 상태 코드를 반환합니다. Mech-Vision 툴 바의 로봇 통신 구성  다음  고급 설정에서 필요에 따라 이 기본 시간 제한을 변경할 수 있습니다.

set viz time

MM.FromCamera.SEND_POSE_TYPE

이 파라미터는 웨이 포인트의 포즈 형식을 의미하며 값은 Request_Pose_Type의 입력 값과 같습니다. 데이터 유형은 USINT입니다. 1은 관절 각도이고, 2는 TCP 포즈입니다.

MM.FromCamera.VISUAL_POINT_INDEX

이 파라미터는 전체 경로에서 Mech-Viz 프로젝트의 "비전 이동" 스텝에 해당하는 웨이 포인트(비전 이동 웨이 포인트)의 위치 번호를 나타냅니다. 데이터 유형은 USINT입니다. 경로에 비전 이동 웨이 포인트가 없는 경우 이 파라미터의 값은 0입니다.

예를 들어, 계획된 경로가 "이동_1", "이동_2", "비전 이동", "이동_3" 스텝으로 구성된 경우 비전 이동 웨이 포인트의 위치 번호는 3입니다.

예시

cmd18

위 예시에서는 MM.Camera_User.Step_Num을 22로 설정하고 MM_Get_VizData FB를 활성화합니다. 이후 MM.Camera_User.Get_VizData에 상승 에지가 발생하면 Mech-Viz 프로젝트가 계획한 경로를 획득하며, 웨이 포인트의 포즈 형식은 관절 각도입니다.

진공 그리퍼의 DO 신호 가져오기

기능 소개

이 명령어는 Mech-Viz 프로젝트에서 계획한 멀티 파티션 진공 그리퍼의 제어 신호를 획득하는 데 사용됩니다. 이 명령어를 사용하기 전에 Mech-Viz에서 다음 구성을 완료해야 합니다.

  • Mech-Viz 소프트웨어의 "비전 이동" 스텝에서 피킹 방법상자 디팔레타이징으로 선택합니다.

    vision move viz
  • Mech-Viz 소프트웨어에서 말단장치 이름을 더블클릭한 후 말단장치 유형디팔레타이징 진공 그리퍼로 설정하고 디팔레타이징 진공 그리퍼 구성을 클릭하여 필요에 따라 DO 신호를 구성하십시오.

    sucker viz

호출 순서

이 명령어는 Mech-Viz가 계획한 경로 획득하기 명령어 호출 후에 사용해야 합니다. 즉, PLC는 먼저 계획 경로를 획득한 다음 비전 이동 웨이 포인트에 해당하는 진공 그리퍼 DO 신호를 가져옵니다.

기능 블록

cmd19

입력 파라미터

Get_DoList

이 파라미터는 진공 그리퍼의 DO 신호 가져오기를 트리거합니다. 상승 에지에서 유효합니다. 데이터 유형은 BOOL입니다.

Trigger_Acknowledge

이 파라미터는 Command_Trigger 신호가 비전 시스템을 성공적으로 트리거했는지 여부를 반환합니다. 데이터 유형은 BOOL입니다. 1은 트리거 성공을 의미하고, 0은 Command_Trigger 신호를 수신하지 못했음을 의미합니다.

출력 파라미터

Command

이 파라미터는 명령 코드를 나타내며 기능 블록을 통해 자동으로 할당됩니다. 데이터 유형은 DINT입니다.

Command_Trigger

이 파라미터는 명령 스위치를 의미하며 기능 블록을 통해 자동으로 트리거됩니다. 데이터 유형은 BOOL입니다.

전역 변수 MM.FromCamera의 반환 데이터

MM.FromCamera.STATUS_CODE

이 파라미터는 명령어 실행 상태 코드를 저장하는 데 사용됩니다. 데이터 유형은 DINT입니다. 명령어가 성공적으로 Mech-Viz에서 DO 신호 목록을 획득하면 상태 코드는 2102입니다. 명령어 실행이 비정상일 경우 상태 코드는 해당 오류 코드입니다. 자세한 내용은 "표준 인터페이스 상태 코드 및 오류 분석"을 참조하십시오.

MM.FromCamera.DO_LIST

이 파라미터는 명령어가 반환한 64개의 DO 신호를 나타냅니다. 데이터 유형은 ARRAY[0..7] OF BYTE입니다. 각 BYTE는 8비트를 차지하며, 각 비트는 0 또는 1의 DO 신호를 나타냅니다. 따라서 8개의 BYTE를 사용하면 64개의 DO 신호를 나타낼 수 있습니다.

예시

cmd20

위 예시에서는 MM.Camera_User.Step_Num을 24로 설정하고 MM_Get_DoList FB를 활성화합니다. 이후 MM.Camera_User.Get_DoList에 상승 에지가 발생하면 Mech-Viz가 반환한 DO 신호 목록이 MM.FromCamera.DO_LIST에 저장됩니다.

Mech-Vision 프로젝트에 대상 물체 치수 입력하기

기능 소개

이 명령어는 Mech-Vision 프로젝트에 대상 물체 치수를 입력하는 데 사용됩니다. 입력하는 대상 물체 치수는 "물체 치수 읽기" 스텝의 상자 치수 설정 파라미터 값입니다. 아래 그림을 참조하십시오.

이 명령어를 사용할 때 Mech-Vision 프로젝트에는 "물체 치수 읽기" 스텝이 하나만 있어야 하며, 그렇지 않으면 비전 시스템이 오류를 반환합니다.
read object dimensions

호출 순서

이 명령어는 Mech-Vision 프로젝트 실행하기 명령어를 호출하기 전에 사용해야 합니다.

기능 블록

cmd21

입력 파라미터

Vision_Proj_Num

이 파라미터는 Mech-Vision 프로젝트 번호입니다. 데이터 유형은 USINT입니다. Mech-Vision 프로젝트 번호(프로젝트 이름 앞의 숫자)는 Mech-Vision 프로젝트 리스트에서 확인할 수 있습니다.

External_Input_Box_Dimension

이 파라미터는 Mech-Vision 프로젝트에 입력하는 대상 물체 치수입니다. 순서대로 길이, 너비, 높이이며 단위는 밀리미터(mm)입니다. 이 값은 "물체 치수 읽기" 스텝에서 읽히며 X 방향 길이, Y 방향 길이, Z 방향 길이에 설정됩니다. 데이터 유형은 ARRAY[0..9] OF DINT입니다.

사용자는 대상 물체 크기 데이터를 먼저 10000배 한 뒤 32비트 부호 있는 정수로 변환하고, 이를 External_Input_Box_Dimension[0-2] 배열에 저장해야 합니다.

Set_Box_Dimension

이 파라미터는 Mech-Vision 프로젝트에 대상 물체 치수 입력하기를 트리거합니다. 상승 에지에서 유효합니다. 데이터 유형은 BOOL입니다.

Trigger_Acknowledge

이 파라미터는 Command_Trigger 신호가 비전 시스템을 성공적으로 트리거했는지 여부를 반환합니다. 데이터 유형은 BOOL입니다. 1은 트리거 성공을 의미하고, 0은 Command_Trigger 신호를 수신하지 못했음을 의미합니다.

출력 파라미터

Vision_Proj_Num_O

이 파라미터는 Mech-Vision 프로젝트 번호를 의미합니다. 데이터 유형은 USINT입니다.

External_Input_Box_Dimension_O

이 파라미터는 Mech-Vision 프로젝트에 입력한 대상 물체 치수를 나타냅니다. 데이터 유형은 ARRAY[0..9] OF DINT입니다.

Command

이 파라미터는 명령 코드를 나타내며 기능 블록을 통해 자동으로 할당됩니다. 데이터 유형은 DINT입니다.

Command_Trigger

이 파라미터는 명령 스위치를 의미하며 기능 블록을 통해 자동으로 트리거됩니다. 데이터 유형은 BOOL입니다.

전역 변수 MM.FromCamera의 반환 데이터

MM.FromCamera.STATUS_CODE

이 파라미터는 명령어 실행 상태 코드를 저장하는 데 사용됩니다. 데이터 유형은 DINT입니다. 명령어가 정상적으로 수행되면 상태 코드는 1108입니다. 명령어 실행이 비정상일 경우 상태 코드는 해당 오류 코드입니다. 자세한 내용은 "표준 인터페이스 상태 코드 및 오류 분석"을 참조하십시오.

예시

cmd22

위 예시에서는 MM.Camera_User.Step_Num을 0으로 설정하고 MM_Set_Box_Dimension FB를 활성화합니다. 이후 MM.Camera_User.Set_Box_Dimension에 상승 에지가 발생하면 Mech-Vision 프로젝트의 "물체 치수 읽기" 스텝에 있는 대상 물체 치수가 External_Input_Box_Dimension[0-2] 파라미터 값으로 설정됩니다.

프로젝트 상태 가져오기

기능 소개

이 명령어는 Mech-Vision 프로젝트가 준비되었는지 확인하는 데 사용됩니다.

기능 블록

cmd26

입력 파라미터

Get_Status

이 파라미터는 Mech-Vision 프로젝트가 준비되었는지 확인합니다. 상승 에지에서 유효합니다. 데이터 유형은 BOOL입니다.

Trigger_Acknowledge

이 파라미터는 Command_Trigger 신호가 비전 시스템을 성공적으로 트리거했는지 여부를 반환합니다. 데이터 유형은 BOOL입니다. 1은 트리거 성공을 의미하고, 0은 Command_Trigger 신호를 수신하지 못했음을 의미합니다.

출력 파라미터

Command

이 파라미터는 명령 코드를 나타내며 기능 블록을 통해 자동으로 할당됩니다. 데이터 유형은 DINT입니다.

Command_Trigger

이 파라미터는 명령 스위치를 의미하며 기능 블록을 통해 자동으로 트리거됩니다. 데이터 유형은 BOOL입니다.

전역 변수 MM.FromCamera의 반환 데이터

MM.FromCamera.STATUS_CODE

이 파라미터는 명령어 실행 상태 코드를 저장하는 데 사용됩니다. 데이터 유형은 DINT입니다. 명령어가 정상적으로 수행되면 상태 코드는 1101입니다. 명령어 실행이 비정상일 경우 상태 코드는 해당 오류 코드입니다. 자세한 내용은 "표준 인터페이스 상태 코드 및 오류 분석"을 참조하십시오.

예시

cmd27

위 예시에서는 MM.Camera_User.Step_Num을 26으로 설정하고 MM_Get_Status FB를 활성화합니다. 이후 MM.Camera_User.Get_Status에 상승 에지가 발생하면 Mech-Vision 프로젝트가 준비되었는지 확인합니다.

목표 데이터 지우기

기능 소개

이 명령어는 이미 획득한 포즈, 레이블, 말단장치 번호를 지우는 데 사용됩니다.

기능 블록

cmd28

입력 파라미터

Start_Empty

이 파라미터는 획득한 포즈, 레이블, 말단장치 번호를 삭제합니다. 이 파라미터는 설정되면 적용됩니다. 데이터 유형은 BOOL입니다.

입출력 파라미터

Target_Pose

이 파라미터는 비전 포인트 또는 웨이 포인트의 포즈를 나타냅니다. 데이터 유형은 ARRAY[0..29,0..5] OF DINT입니다.

Target_Label

이 파라미터는 비전 포인트 또는 웨이 포인트의 레이블을 나타냅니다. 데이터 유형은 ARRAY[0..29] OF DINT입니다.

Target_Tool_ID

이 파라미터는 비전 포인트 또는 웨이 포인트의 말단장치 번호를 나타냅니다. 데이터 유형은 ARRAY[0..29] OF DINT입니다.

예시

cmd29

위 예시에서는 MM.Camera_User.Step_Num을 10으로 설정하고 MM_Empty_Target FB를 활성화합니다. 이후 MM.Camera_User.Start_Empty가 설정되면 Target_Pose, Target_Label, Target_Tool_ID가 초기화됩니다.

알림 스텝 메시지 가져오기

기능 소개

Mech-Vision 프로젝트 또는 Mech-Viz 프로젝트가 "알림" 스텝까지 실행되면, 비전 시스템은 "알림" 스텝에서 미리 설정한 메시지를 반환합니다.

Mech-Vision 또는 Mech-Viz 프로젝트에서 "알림" 스텝이 실행되면, 메시지는 비전 시스템 버퍼에 3초 동안만 남아 있습니다. 따라서 이 명령어를 호출하는 시점을 적절히 제어해야 메시지를 성공적으로 가져올 수 있습니다. 또한 PLC가 메시지를 수신한 후에는 프로그램에서 ToCamera.CLEAR_NOTIFY를 트리거하여 한 번의 신호 교환 주기 펄스를 생성하고, 이를 통해 해당 레지스터 데이터를 초기화해야 합니다.

이 명령어를 호출하기 전에 "알림" 스텝은 다음 요구 사항을 충족해야 합니다.

  • Mech-Vision 프로젝트의 "알림" 스텝

    1. "알림" 스텝을 다른 스텝의 오른쪽에 연결합니다. 아래 이미지에서는 "출력" 스텝을 예로 들었습니다.

      notify 1
    2. "출력" 스텝의 파라미터 패널에서 출력이 있을 때 제어 흐름 트리거 파라미터를 선택하십시오.

      notify 5
    3. "알림" 스텝의 파라미터 패널에서 "서비스 이름"에 Standard Interface Notify를 입력합니다. 이 값은 입력 후 수정할 수 없습니다. "메시지"에는 필요에 따라 1001과 같은 양의 정수를 입력하십시오.

      notify 2
  • Mech-Viz 프로젝트의 "알림" 스텝

    1. "알림" 스텝을 작업 흐름의 적절한 위치에 추가합니다.

      notify 3
    2. "알림" 스텝의 파라미터 패널에서 표준 인터페이스를 선택하고, "메시지"에는 필요에 따라 1000과 같은 양의 정수를 입력하십시오.

      notify 4

호출 순서

이 명령어는 Mech-Vision 프로젝트 실행하기 명령어 또는 Mech-Viz 프로젝트 실행하기 명령어 호출 직후 즉시 사용해야 합니다.

기능 블록

cmd30

입력 파라미터

Get_Notify

이 파라미터는 알림 스텝 메시지 가져오기를 트리거합니다. 상승 에지에서 유효합니다. 데이터 유형은 BOOL입니다.

Trigger_Acknowledge

이 파라미터는 Command_Trigger 신호가 비전 시스템을 성공적으로 트리거했는지 여부를 반환합니다. 데이터 유형은 BOOL입니다. 1은 트리거 성공을 의미하고, 0은 Command_Trigger 신호를 수신하지 못했음을 의미합니다.

출력 파라미터

Command

이 파라미터는 명령 코드를 나타내며 기능 블록을 통해 자동으로 할당됩니다. 데이터 유형은 DINT입니다.

Command_Trigger

이 파라미터는 명령 스위치를 의미하며 기능 블록을 통해 자동으로 트리거됩니다. 데이터 유형은 BOOL입니다.

전역 변수 MM.FromCamera의 반환 데이터

MM.FromCamera.NOTIFY_MSG

이 파라미터는 알림 메시지를 저장합니다. 현재는 양의 정수만 지원합니다. 데이터 유형은 DINT입니다.

예시

"알림" 스텝에서 설정한 메시지가 777이라고 가정할 때, PLC가 자동 모드에서 메시지를 가져오는 예는 다음과 같습니다.

cmd31

자동 모드에서 MM.Camera_User.Step_Num을 7로 설정하고 이때 mm.FromCamera.NOTIFY_MSG가 777이 아니면 MM_Get_Custom_Notify 기능을 활성화합니다. 변수 MM.Camera_User.Get_Notify에 상승 에지가 발생하면 "알림" 스텝에서 미리 설정한 메시지를 가져옵니다. 메시지 수신에 성공하면 mm.FromCamera.NOTIFY_MSG 값이 777로 변경됩니다. 그렇지 않으면 값은 변경되지 않고 PLC는 3초 후에 해당 오류 정보를 표시합니다.

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

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

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

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