로봇 조립 계획 - (5) TRIP
부품 조립 순서(BOM 데이터베이스)와 부품과 중간 조립품의 형상 정보(CAD 데이터베이스)를 이용하여 로봇 조립 계획을 생성한다. 로봇 조립 계획은 로봇 팔을 이용하여 부품을 조립하여 완성품을 만드는데 필요한 작업의 순서와 로봇팔의 단위 위치를 정의한다. 로봇 조립 계획은 로봇 팔의 출발 위치와 도착 위치로 정의되는 단위 움직임인 action, 한 부품에 대한 모든 action의 순서인 operation 그리고 조립품에 대한 모든 operation의 순서인 task로 구분할 수 있다. 그러므로 로봇 조립 계획은 대상 최종 조립품에 대한 task와 동일하다.
TRIP에서 로봇 조립 계획을 생성하는 프로그램은 actpy이다. TRIP은 로봇 조립 계획을 BOM 데이터베이스의 BOM에 연결된 robot_path 객체(action 객체와 동일)에 저장한다.

actpy를 실행시킨 후 tripdb를 확인하면 각 중간 조립품 asm0와 asm1에 대한 operation인 op0, op1 그리고 op2가 생성된 것을 알 수 있다. op0은 최초의 base 부품을 준비 장소(p_move: a position for the move part)에서 조립 장소(p_base: a postion for the base part)로 옮기는 operation이다. op1과 op2는 각각 asm0과 asm1 중간 조립품과 최종 제품을 조립하기 위한 operation이다.

select step_oid, oid, item_no from item;
actpy에 의해 생성된 각 operation에 연결된 robot_path(=action) 객체도 확인할 수 있다.

select oid, obj_id, path_type, x, y, z, r, end_eff, time_pose from robot_path;
action은 현재 위치에서 robot_path에 정의된 x, y, z, r(회전 좌표)까지 이동을 뜻한다. 현재 x와 y 좌표는 실제 로봇 조립 계획을 실행할 때 부품이 준비되는 장소(p_move)와 부품이 조립되는 장소(p_base)를 결정되면 계산하므로 결정되지 않은 값 0을 입력하였다. z 값은 해당 operation의 move 부품의 형상 정보와 base 부품의 형상 정보와 로봇 gripper의 depth 정보를 이용하여 계산한다. 특히 base 부품이 중간 조립품일 경우 해당 조립품의 형상 정보를 이용하여 z 값을 계산한다.
다음 글
로봇 조립 실행 읽어보기 >
2023 EDBLab
2023/4/7 처음 2023/4/7