1.2 티치 & 플레이

ℹ️티치 & 플래이(Teach&Play) 란?

로봇팔의 움직임 또는 로봇팔과 결합한 모듈의 상태 등을 원하는 순서대로 저장하고, 이를 순차적으로 로봇팔이 동작하면서 원하는 형태의 움직임을 만들어낼 수 있는 기능이다.


🎮[컨트롤] 패드를 활용한 티치 & 플레이

circle-info

목표 좌표(좌표1, 좌표2, 좌표3)가 정해져 있는 경우에는 좌표를 수동으로 추가하는 방법도 있지만, 그 경우에는 (좌표1) ➡️ (좌표2) ➡️ (좌표3) 으로 로봇팔이 이동가능한지 확인이 불가능하다. 로봇팔이 이동가능한 범위 및 좌표 개념이 헷갈린다면, [컨트롤] 패드로 로봇팔의 움직임을 확인하면서 [티치&플레이] 기능을 사용하는 것이 좋다.

아래의 세 좌표 순서대로 동작하는 로봇팔의 움직임을 [티치 & 플레이]를 활용해서 만드는 방법을 알아보자.

  • 좌표 1 : (X=-250, Y=180, Z=0)

  • 좌표 2 : (X=250, Y=180, Z=0)

  • 좌표 3 : 홈(X=0, Y=180, Z=0)

  1. [목표 위치 지정]에서 좌표 1(X=-250, Y=180, Z=0)의 위치를 입력하고 [바로 이동하기] 버튼을 클릭한다.

  2. [상태(Status)]에서 로봇팔이 원하는 위치로 이동한 것을 확인하고, [티치&플레이]에서 [현재 좌표 저장] 버튼을 클릭한다. (현재 좌표 목록에 원하는 좌표가 제대로 추가되어있는지 확인한다.)

circle-info

[현재 좌표 저장]버튼을 클릭하여 좌표를 추가할 경우에는 로봇팔의 기본 움직임인 아크(Arc)모드로 동작하게 된다. 로봇팔의 움직임 모드는 1) 아크(Arc)모드, 2)리니어(Linear)모드 가 있다.

  1. [목표 위치 지정]에서 좌표 2(X=250, Y=180, Z=0)의 위치를 입력하고 [바로 이동하기] 버튼을 클릭한다.

  2. [상태(Status)]에서 로봇팔이 원하는 위치로 이동한 것을 확인하고, [티치&플레이]에서 [현재 좌표 저장] 버튼을 클릭한다. (현재 좌표 목록에 원하는 좌표가 제대로 추가되어있는지 확인한다.)

  1. [목표 위치 지정]에서 좌표 2(X=250, Y=180, Z=0)의 위치를 입력하고 [바로 이동하기] 버튼을 클릭한다.

  2. [상태(Status)]에서 로봇팔이 원하는 위치로 이동한 것을 확인하고, [티치&플레이]에서 [현재 좌표 저장] 버튼을 클릭한다. (현재 좌표 목록에 원하는 좌표가 제대로 추가되어있는지 확인한다.)

[티치&플레이] 결과 확인

위와 같이 원하는 로봇팔의 좌표를 모두 추가하였다면, [티치&플레이]의 우측 하단에 있는 [플레이] 버튼을 클릭하여 로봇의 움직임을 확인할 수 있다.

circle-info

🤖 No reachable 에러 발생 사례

[티치 & 플레이][플레이]버튼을 클릭했을때, 로봇팔이 순서대로 동작하다가 No reachable 에러가 발생하면 해당 좌표로의 이동이 불가능 한 것이다.

No reachable 에러가 발생하는 경우는 다음 두 가지이다.

[No reachable 에러 발생하는 상황]

  1. (좌표 2)가 애초에 로봇팔이 갈 수 없는 좌표인 경우

  2. (좌표 1)에서 (좌표 2)로의 이동하는 경로 중에 로봇팔이 갈 수 없는 좌표가 포함되어 있는 것이다.

<No reachable 에러 발생 예시> ☑️(좌표1) X:0, Y:180, Z:0

☑️(좌표2) X:0, Y:180, Z:150

위의 두 좌표를 [티치 & 플레이] 에 저장된 채로 [플레이]버튼을 클릭 했을 때, 다음과 같은 에러가 발생한다.

이 경우에는 로봇팔이 애초에 (좌표 2)로 움직이는것이 불가능하기 때문에 발생한 것이다.

동작 영상

위의 과정을 토대로 [티치&플레이]에 좌표 정보를 추가하고 결과를 확인하는 과정을 아래의 영상을 통해 확인할 수 있다.


🎮 모터 [ON/OFF] 기능을 활용한 티치 & 플레이

이 방법은 정확한 로봇팔의 위치(X, Y, Z좌표)로 로봇팔을 이동해 좌표를 저장하는 것이 아니라 모터를 끄고 로봇팔을 직접 원하는 위치로 이동시켜 좌표를 저장하는 방법이다.

triangle-exclamation

🦾모터 켜짐/꺼짐 상태 이해하기

로봇팔의 움직임은 로봇팔 내부에 있는 모터에 의해 제어된다. 그렇기 때문에 로봇팔에 전원선을 연결하면 모터가 켜지면서 외부의 힘에 힘에 의해 로봇팔이 돌아가지 않는다.

  • 모터 on(켜짐) 상태

모터 on(켜짐) 상태
  • 모터 off(꺼짐) 상태

모터 off(꺼짐) 상태

[티치&플레이] - 모터 off(꺼짐) 상태로 좌표 추가하는 방법

  1. 모터 off(꺼짐) 상태로 만들고, 원하는 위치로 로봇팔 이동시킨다.

  1. 로봇팔의 위치를 고정시킨 채, [티치&플레이]에서 [현재 좌표 저장] 버튼을 클릭한다.

💡별도로 모터 켜짐(on)을 누르지 않아도 [현재 좌표 저장] 버튼을 클릭하면 자동으로 모터가 켜진다.

실행 영상


🎮 수동으로 티치 & 플레이 설정하기

로봇팔 움직임 모드 변경

[티치&플레이]에서 [현재 좌표 저장] 버튼을 클릭하여 좌표의 움직임을 저장할 수도 있지만, 아래의 표시된 [] 버튼을 클릭하여 좌푯값을 수동으로 추가하거나 모듈의 동작도 로봇팔의 움직임으로 추가할 수 있다.

[] 버튼을 클릭하면 다음과 같은 팝업창이 나온다. 기본 움직임 모드가 아크(arc)로 설정되어 있는 것을 볼 수 있다. 이미 추가한 좌표의 움직임을 리니어(linear)모드로 변경하고 싶으면 변경을 원하는 좌표의 편집(Edit)아이콘을 클릭한 다음 리니어(linear)를 선택해주면 된다.

모듈 상태 추가하기(엔드 이펙트 추가하기)

[엔드 이펙트]는 로봇팔에 현재 부착된 모듈(석션 또는 소프트그리퍼)의 상태를 변경할 수 있는 항목이다. 로봇팔 움직임의 초기 엔드 이펙트 값은 전부 [없음]으로 설정되어 있다.

티치&플레이에 항목을 추가하는 [] 버튼을 클릭하여 움직임 모드를 고정(No movement)로 선택하면 로봇팔의 움직임은 없는 상태로 멈춤 시간과 엔드 이펙트를 설정할 수 있다.

엔드 이펙트로 석션 모듈 또는 소프트그리퍼 모듈을 선택할 수 있다.

소프트그리퍼 모듈은 1) 대기, 2) 그립 그리고 3) 열기 총 3개 중에서 원하는 상태를 선택할 수 있고, 석션 모듈은 1) 끄기2) 켜기 상태를 선택할 수 있다.

각 모듈의 상태 별로 어떻게 동작하는지 살펴보자.

소프트 그리퍼(Soft-gripper)

소프트 그리퍼는 대기/그립/열기 총 3개의 상태로 제어가 가능하다. 소프트그리퍼는 비정형 물체를 잡을 때 사용하는 모듈이고, 석션모듈 보다는 가벼운 물체 위주로 잡을 수 있다.

  • 소프트그리퍼 대기(Soft-gripper state : Idle)

소프트그리퍼 대기(Soft-gripper state : Idle)
  • 소프트그리퍼 그립(Soft-gripper state : Grip)

소프트그리퍼 그립(Soft-gripper state : Grip)
  • 소프트그리퍼 열기(Soft-gripper state : Open)

소프트그리퍼 열기(Soft-gripper state : Open)

석션(Suction)

석션은 끄기/열기 총 2개의 상태로 제어가 가능하다. 주로 평평한 물체를 잡을때 사용한다. 물체의 무게가 500g미만일 때, 안정적으로 물체를 옮길 수 있다. 석션 모듈은 2가지 크기의 컵이 있어 옮기고자 하는 물체의 면적에 따라 교체하여 사용하면 된다.

  • 석션 켜기(Suction On)

석션 켜기(Suction On)
  • 석션 끄기(Suction Off)

석션 끄기(Suction Off)
  • 석션 모듈 - 컵 사이즈

: 큰 사이즈의 컵 (면적이 넓은 물체를 잡기 위해 주로 사용됨)

: 작은 사이즈의 컵 (면적이 작은 물체를 잡기 위해 주로 사용됨)

석션 모듈 - 컵 사이즈

📌매크로 사용 방법

[티치&플레이]에 로봇팔의 원하는 움직임을 생성한 것을 하나의 매크로 프로젝트로 관리할 수 있다.

1. 매크로에 프로젝트 저장

  • : [매크로명] 아래에 현재 로봇팔의 움직임을 알아볼 수 있는 이름을 적어준다.

  • : [매크로로 저장] 버튼을 클릭하여 오른쪽 [매크로]에 내가 지정해준 이름으로 프로젝트가 추가된 것을 확인할 수 있다.

2. 저장된 매크로 프로젝트

다음과 같이 {테스트} 라는 이름의 매크로가 저장되어 있을 때, 다음과 같은 기능들을 사용할 수 있다.

  • ▶️재생(Play) : 이 매크로 파일에 저장되어있는 로봇의 움직임이 실행된다.

  • 다운로드(Download) : 매크로 파일이 Text files로 저장된다.

  • 편집(Edit) : 매크로 편집 팝업창이 보여지고 이를 편집할 수 있다.

  • 삭제(Delete) : 매크로를 삭제할 수 있다.

  • 매크로 이름을 클릭하면(EX. 테스트) 다시 [티치&플레이]로 불러와 편집할 수 있다.

circle-exclamation

매크로 프로젝트 관리


📌로봇팔의 움직임 모드 아크(Arc) VS 리니어(Linear)

아크(arc)모드

아크(arc)모드는 쉽게 생각해서 로봇팔이 (좌표1)에서 (좌표2)로 움직일 때, 원을 그리며 움직이는 것이다.

리니어(linear)모드

리니어(linear)모드는 선형적인 움직임으로 직선을 그리며 움직이는 것이다.

로봇팔은 로봇팔의 중심을 기준으로 팔의 길이가 제한적으로 원에 가깝게 움직이기 때문에, 리니어(linear)모드 보다 아크(arc)모드로 움직임을 생성할 때, No reachable 에러가 적게 발생한다. 그렇기 때문에 로봇팔의 기본 움직임은 항상 아크모드로 설정되어 있다.

circle-info

[티치&플레이]에서 수동으로 리니어(linear)모드를 선택하지 않으면 대부분의 로봇팔의 움직임은 기본으로 아크(arc)모드로 동작하게 되어있다.

<아크(arc)모드로 동작하는 경우>

  • [티치&플레이]에서 [현재 좌표 저장] 버튼을 눌러 움직임을 만드는 경우

  • [컨트롤] 패드에서 [목표 위치 지정]을 통해 로봇팔을 이동시키는 경우

아래의 두 좌표로 로봇팔이 아크(arc)모드와 리니어(linear)모드로 각각 움직이는 모습을 통해 차이점을 알아보자.

☑️(좌표1) X:190, Y:270, Z:-3

☑️(좌표2) X:-250, Y:225, Z:-5

  • 아크(arc)모드

아크(arc)모드
  • 리니어(linear)모드

리니어(linear)모드

Last updated