Main Content

이 번역 페이지는 최신 내용을 담고 있지 않습니다. 최신 내용을 영문으로 보려면 여기를 클릭하십시오.

homeConfiguration

로봇의 홈 컨피규레이션 구하기

설명

예제

configuration = homeConfiguration(robot)은 로봇 모델의 홈 컨피규레이션을 반환합니다. 홈 컨피규레이션은 각 비고정 조인트의 HomePosition 속성을 순서대로 나열한 목록입니다.

예제

모두 축소

rigidBodyTree 모델을 사용하여 만든 로봇의 여러 다른 컨피규레이션을 표시합니다. homeConfiguration 함수 또는 randomConfiguration 함수를 사용하여 모든 조인트 위치를 정의하는 구조체를 생성합니다.

Robotics System Toolbox™ loadrobot 함수를 사용하여 FANUC LR Mate 200ib를 불러옵니다. 이는 rigidBodyTree 객체로 반환됩니다.

robot = loadrobot("fanucLRMate200ib");
showdetails(robot)
--------------------
Robot: (9 bodies)

 Idx     Body Name            Joint Name            Joint Type     Parent Name(Idx)   Children Name(s)
 ---     ---------            ----------            ----------     ----------------   ----------------
   1          base        base_link-base                 fixed         base_link(0)   
   2        link_1               joint_1              revolute         base_link(0)   link_2(3)  
   3        link_2               joint_2              revolute            link_1(2)   link_3(4)  
   4        link_3               joint_3              revolute            link_2(3)   link_4(5)  
   5        link_4               joint_4              revolute            link_3(4)   link_5(6)  
   6        link_5               joint_5              revolute            link_4(5)   link_6(7)  
   7        link_6               joint_6              revolute            link_5(6)   flange(8)  tool0(9)  
   8        flange        joint_6-flange                 fixed            link_6(7)   
   9         tool0          link_6-tool0                 fixed            link_6(7)   
--------------------

로봇의 홈 컨피규레이션을 위한 구조체를 만듭니다. 구조체는 로봇 모델의 각 바디에 대한 조인트 이름과 위치를 가집니다.

config = homeConfiguration(robot)
config=1×6 struct array with fields:
    JointName
    JointPosition

show를 사용하여 홈 컨피규레이션을 표시합니다. 컨피규레이션 입력값을 지정할 필요는 없습니다.

show(robot);

Figure contains an axes object. The axes object with xlabel X, ylabel Y contains 26 objects of type patch, line. These objects represent base_link, base, link_1, link_2, link_3, link_4, link_5, link_6, flange, tool0, link_1_mesh, link_2_mesh, link_3_mesh, link_4_mesh, link_5_mesh, link_6_mesh, base_link_mesh.

컨피규레이션을 수정하고 두 번째 조인트 위치를 pi/2로 설정합니다. 변경된 로봇 컨피규레이션을 표시합니다.

config(2).JointPosition = pi/2;
show(robot,config);

Figure contains an axes object. The axes object with xlabel X, ylabel Y contains 26 objects of type patch, line. These objects represent base_link, base, link_1, link_2, link_3, link_4, link_5, link_6, flange, tool0, link_1_mesh, link_2_mesh, link_3_mesh, link_4_mesh, link_5_mesh, link_6_mesh, base_link_mesh.

무작위 컨피규레이션을 만들고 표시합니다.

show(robot,randomConfiguration(robot));

Figure contains an axes object. The axes object with xlabel X, ylabel Y contains 26 objects of type patch, line. These objects represent base_link, base, link_1, link_2, link_3, link_4, link_5, link_6, flange, tool0, link_1_mesh, link_2_mesh, link_3_mesh, link_4_mesh, link_5_mesh, link_6_mesh, base_link_mesh.

입력 인수

모두 축소

로봇 모델로, rigidBodyTree 객체로 지정됩니다.

출력 인수

모두 축소

로봇 컨피규레이션으로, 로봇 모델의 모든 바디에 대한 조인트 이름과 위치를 나타내는 구조체 또는 조인트 위치 벡터로 반환됩니다. homeConfiguration(robot), randomConfiguration(robot)을 사용하거나 구조체에 조인트 위치를 직접 지정하여 컨피규레이션을 생성할 수 있습니다. 벡터 형식의 configuration을 사용하려면 robotDataFormat 속성을 'row' 또는 'column'으로 설정합니다.

확장 기능

버전 내역

R2016b에 개발됨