외부 이동
기능 설명
이 스텝은 외부 서비스 Adapter에서 대상 포즈를 얻은 후, Mech-Viz에서 경로 계획과 로봇 이동 컨트롤을 수행하는 데 사용됩니다. JPs, TCP, 물체 포즈를 설정하는 것을 지원합니다.
파라미터 설명
이동 스텝 기본 파라미터
웨이포인트를 전송하기
기본적으로 선택되어 있으며 로봇 등 수신자에 현재 웨이포인트를 전송합니다. 이 옵션을 선택하지 않으면 현재 웨이포인트가 전송되지 않지만 이 웨이포인트는 여전히 계획된 경로에 있습니다.
후속 비이동 명령을 원활성있게 수행하기
기본적으로 선택되어 있지 않습니다. 이동 스텝 사이에 비이동 스텝(예: 비전 인식, DO 설정, DI 체크 등)이 연결되면 웨이포인트의 전송 과정을 중지하고 실제 로봇이 실행 중일 때 짧은 일시 중지가 발생하여 로봇이 원활하지 않게 실행됩니다.
이 옵션을 선택하면 현재 이동 스텝의 실행 종료를 기다릴 필요가 없고 계속해서 작업 흐름에 따라 실행할 수 있습니다. 이렇게 하면 로봇 실행 광정에서 자주 멈추는 문제를 피할 수 있고 로봇 동작의 원활성을 높일 수 있지만 스텝이 너무 일찍 종료될 수 있습니다.
스텝은 일찍 종료되는 이유가 무엇입니까?
Mech-Viz 소프트웨어가 실행 중일 때 동시에 로봇에 여러 웨이포인트를 전송합니다. 소프트웨어는 로봇에 보낸 마지막 웨이포인트가 로봇이 반환한 관절 각도와 동일한지 여부만 판단하고 동일하면 로봇이 마지막 웨이포인트에 이미 도달했다는 것으로 간주합니다.
예를 들어 경로에는 10개의 이동 스텝으로 구성되는 경우, 그중 다섯 번째 이동 스텝와 마지막 이동 스텝에 해당하는 포즈가 동일합니다. 로봇이 이동 속도가 느린 경우, 다섯 번째 웨이포인트로 이동한 후 현재 관절 각도(JPs)를 Mech-Viz로 전송합니다. 하지만 이럴 때 다섯 번째 이동 스텝에 해당하는 포즈가 마지막 이동 스텝의 포즈와 동일하기 때문에 Mech-Viz는 로봇이 모든 웨이포인트에 도달한 것으로 잘못 판단하여 명령어가 조기에 종료될 수 있습니다.
배치된 물체와의 충돌을 감지하지 않기
충돌 감지 기능 패널에서 대상 물체 충돌 감지 기능을 활성화한 후 이 옵션을 선택하면, 소프트웨어는 로봇, 말단장치와 이미 배치된 대상 물체 간의 충돌을 감지하지 않습니다. 일반적으로, 피킹 - 배치 설정을 배치로 설정된 스텝 뒤의 이동 스텝에서, 잘못된 충돌 감지를 방지하기 위해 이 파라미터를 선택해야 합니다.
응용 예시:
진공 그리퍼의 TCP는 일반적으로 진공 그리퍼 표면이 아닌 모델 내부에 위치합니다. 이 경우, 상자를 피킹할 때 진공 그리퍼 모델과 상자 모델이 중첩될 수 있습니다. 그러나 소프트웨어는 말단장치와 피킹된 대상 물체 간의 충돌을 감지하지 않으므로, 피킹 중에는 충돌 알람이 트리거되지 않습니다. 하지만 로봇이 상자를 내려놓을 때 피킹된 상자 모델이 시나리오 모델로 전환되면, 소프트웨어는 말단장치와 상자의 시나리오 모델 간의 충돌을 감지하여 충돌 경고를 발행하게 되며, 이는 팔레타이징 작업을 완료하는 데 장애가 됩니다.
이 파라미터를 선택하면, 소프트웨어는 로봇과 말단장치가 배치된 대상 물체와 충돌하는 것을 감지하지 않으므로 이러한 문제를 피할 수 있습니다.
포인트 클라우드 충돌 감지 모드
일반적으로 Auto 모드를 선택하면 됩니다. 즉 충돌 감지 패널에 있는 포인트 클라우드 충돌 감지의 설정을 직접 응용하면 됩니다. 로봇이 대상 물체를 피킹한 후의 이동 스텝에서는 일반적으로 감지하기 모드를 선택할 수 있습니다.
Auto |
기본값. 충돌 감지 패널 중의 포인트 클라우드 충돌 감지 기능이 활성화될 때, "비전 이동" 스텝 및 "비전 이동" 스텝에 의존하는 "상대적인 이동" 스텝에 대해서만 포인트 클라우드 충돌을 감지하고 다른 이동 스텝에 대해 포인트 클라우드 충돌을 감지하지 않습니다. |
체크하지 않기 |
모든 이동 스텝의 포인트 클라우드 충돌을 감지하지 않습니다. |
체크하기 |
모든 이동 스텝의 포인트 클라우드 충돌을 감지합니다. |
물체의 대칭성을 사용하지 않기
이 파라미터는 이동 스텝의 웨이포인트 유형이 대상 물체 포즈로 설정된 경우에만 표시됩니다.
여기서 말하는 '대칭성’은 대상 물체 편집기에서 충돌 모델을 설정할 때 미리 구성한 이미 피킹된 대상 물체의 회전 대칭을 의미합니다.
None |
기본값. 모든 축의 대칭성을 사용합니다. |
AxisZ |
Z축을 중심으로 한 대칭성만 사용하지 않습니다. |
AxisXy |
X 및 Y축을 중심으로 한 대칭성을 사용하지 않습니다. |
All |
모든 대칭성을 사용하지 않고 로봇은 엄격하게 대상 물체의 포즈에 따라 물체를 배치합니다. |
이동 스텝을 통해 대상 물체를 배치할 때, 회전 대칭성을 적용하면 물체의 배치 포즈의 일관성을 보장할 수 없습니다. 모든 대상 물체를 특정 규칙에 따라 엄격하게 배치하려면 All를 선택하세요. |
계획 실패 시의 아웃 포트
이 파라미터를 선택하면, 스텝에 계획 실패 아웃 포트가 추가됩니다.
현재 스텝의 경로 계획이 성공하면 작업 흐름은 성공 아웃 포트를 따라 계속됩니다. 현재 스텝의 경로 계획이 실패하면 작업 흐름은 계획 실패 아웃 포트를 따라 계속됩니다. 동일한 계획 기록 항목에 계획 실패 아웃 포트가 있는 여러 이동 스텝이 포함된 경우, 프로젝트는 첫 번째 이동 스텝의 '계획 실패' 아웃 포트를 따라 계속 실행됩니다.
피킹된 물체의 충돌 감지 모드
구성하기 전에 충돌 감지 패널에서 대상 물체 충돌 감지 기능을 활성화하세요.
충돌을 감지하지 않으면 충돌 위험이 높아집니다. 다음 옵션을 활성화할 때 주의하시기 바랍니다. |
시나리오 물체와의 충돌 감지를 하지 않기
이 옵션을 선택하면 피킹된 대상 물체와 시나리오 물체 모델 간의 충돌이 감지되지 않아 소프트웨어의 충돌 감지 계산량이 줄어들고 경로 계획 속도가 향상되며 전체 사이클 타임이 최적화됩니다.
로봇과의 충돌 감지를 하지 않기
이 옵션을 선택하면 피킹된 대상 물체와 로봇 간의 충돌이 감지되지 않아 소프트웨어 충돌 감지 계산량이 줄어들고 경로 계획 속도가 향상되며 전체 사이클 타임이 최적화됩니다.
포인트 클라우드와의 충돌 감지를 하지 않기
충돌 감지 패널에서 포인트 클라우드 충돌 감지 기능을 활성화한 후 이 옵션을 선택하면, 피킹된 대상 물체와 포인트 클라우드 간의 충돌이 감지되지 않아 소프트웨어 충돌 감지 계산량이 줄어들고 경로 계획 속도가 향상되며 전체 사이클 타임이 최적화됩니다.
서비스 명칭
Adapter가 통신 컴포넌트에서 등록한 외부 서버의 명칭이며 서비스 명칭을 통해 이 스텝의 인터페이스를 획득하고 웨이포인트를 전송하기 위해 이 파라미터는 Adapter와 반드시 일치해야 합니다.
외부 서비스에서 획득한 JPs를 사용하기
기본적으로 선택되어 있지 않습니다. 소프트웨어는 경로를 계획할 때 이전 웨이포인트를 초기 위치로 사용합니다. 이 옵션을 선택하면 경로 계획의 초기 위치는 외부 서비스에서 획득한 로봇 JPs 위치가 됩니다. 이 기능은 일반적으로 Mech-Viz가 로봇의 마스터 컨트롤에 사용되지 않는 시나리오에서 사용됩니다.
인터페이스 예시
class CustomOuterMoveService(OuterMoveService):
def gather_targets(self, di, jps, flange_pose):
self.add_target(self.move_target_type, [0.189430,-0.455540,0.529460,-0.079367,0.294292,-0.952178,0.021236])
CustomOuterMoveService 클래스는 OuterMoveService 클래스에 상속됩니다. self.move_target_type은 0, 1, 2의 값을 갖는 이동 포인트 클래스를 나타내며, 여기서 0은 JPs, 1은 TCP, 2는 물체 포즈를 나타냅니다. Mech-Viz가 외부 이동 스텝까지 실행되면 getMoveTargets()가 호출됩니다. 서비스 이름을 통해 서로 다른 외부 이동 스텝을 구분합니다.
def _register_service(self):
self.outer_move_service = CustomOuterMoveService()
self._outer_move_server, port = register_service(outer_move_service, port)
self.move_target_type가 2(물체 포즈 표시)인 경우 외부 이동 스텝 앞에 피킹을 나타내는 스텝이 필요합니다. 그렇지 않으면, “-물체를 피킹하지 않은 경우 물체의 포즈는 유효하지 않습니다.”라는 오류가 나타납니다. |