Main Content

randomConfiguration

로봇의 무작위 컨피규레이션 생성

설명

예제

configuration = randomConfiguration(robot)은 지정된 로봇의 무작위 컨피규레이션을 반환합니다. 이 컨피규레이션의 각 조인트 위치는 로봇 모델에서 해당 rigidBodyJoint 객체의 PositionLimits에 의해 설정된 조인트 제한을 따릅니다.

예제

모두 축소

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

예제 로봇을 RigidBodyTree 객체로 불러옵니다.

load exampleRobots.mat

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

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

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

show(puma1);

Figure contains an axes object. The axes object with xlabel X, ylabel Y contains 13 objects of type patch, line. These objects represent base, L1, L2, L3, L4, L5, L6.

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

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

Figure contains an axes object. The axes object with xlabel X, ylabel Y contains 13 objects of type patch, line. These objects represent base, L1, L2, L3, L4, L5, L6.

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

show(puma1,randomConfiguration(puma1));

Figure contains an axes object. The axes object with xlabel X, ylabel Y contains 13 objects of type patch, line. These objects represent base, L1, L2, L3, L4, L5, L6.

입력 인수

모두 축소

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

출력 인수

모두 축소

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

확장 기능

버전 내역

R2016b에 개발됨