주요 콘텐츠

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

geometricJacobian

로봇 컨피규레이션에 대한 기하 야코비 행렬

설명

jacobian = geometricJacobian(robot,configuration,endeffectorname) 은 로봇 모델에 지정된 엔드 이펙터 이름과 컨피규레이션에 대한 베이스를 기준으로 기하 야코비 행렬을 계산합니다.

예제

jacobian = geometricJacobian(robot,configuration,framename)framename에 의해 지정된 프레임에 대한 기하 야코비 행렬을 계산합니다.

예제

예제

모두 축소

로봇의 특정 엔드 이펙터와 컨피규레이션에 대한 기하 야코비 행렬을 계산합니다.

Robotics System Toolbox™ loadrobot 함수를 사용하여 PUMA 560 로봇을 rigidBodyTree 객체로 불러옵니다.

puma = loadrobot("puma560");

무작위 컨피규레이션을 적용한 Puma 로봇에서 바디 "link7"의 기하 야코비 행렬을 계산합니다.

geoJacob = geometricJacobian(puma,randomConfiguration(puma),"link7")
geoJacob = 6×6

   -0.0000   -0.5752   -0.5752   -0.4266   -0.7683   -0.5213
    0.0000    0.8180    0.8180   -0.3000   -0.3776    0.8377
    1.0000   -0.0000   -0.0000    0.8533   -0.5168    0.1629
    0.1696    0.0823    0.3087   -0.0407    0.0198         0
   -0.5577    0.0578    0.2171   -0.0200    0.0210         0
    0.0000    0.5538    0.2224   -0.0274   -0.0448         0

입력 인수

모두 축소

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

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

엔드 이펙터 이름으로, string형 스칼라 또는 문자형 벡터로 지정됩니다. 로봇 모델의 어떤 바디도 엔드 이펙터가 될 수 있습니다.

데이터형: char | string

프레임 이름으로, string형 스칼라 또는 문자형 벡터로 지정됩니다. 이 프레임은 로봇 모델에서 어떠한 프레임도 될 수 있습니다.

데이터형: char | string

출력 인수

모두 축소

configuration이 지정된 엔드 이펙터의 기하 야코비 행렬로, 6×n 행렬로 반환됩니다. 여기서 n은 로봇의 자유도입니다. 야코비 행렬은 베이스 좌표 프레임을 기준으로 엔드 이펙터에 조인트-공간 속도를 매핑합니다. 엔드 이펙터 속도는 다음과 같습니다.

Equation for calculating linear velocities of the end effector using the Jacobian and joint velocities

ω는 각속도, υ는 선속도, 는 조인트-공간 속도입니다.

세부 정보

모두 축소

참고 문헌

[1] Featherstone, Roy. Rigid Body Dynamics Algorithms. Springer US, 2008. DOI.org (Crossref), doi:10.1007/978-1-4899-7560-7.

확장 기능

모두 확장

버전 내역

R2016b에 개발됨

모두 확장