Main Content

loadrobot

로봇 라이브러리에서 강체 트리 로봇 모델 불러오기

R2019b 이후

설명

예제

robotRBT = loadrobot(robotname)은 로봇 라이브러리에서 로봇 모델 이름 robotname으로 지정된 로봇 모델을 rigidBodyTree 객체로 불러옵니다.

URDF(Unified Robot Description Format) 파일, Xacro(XML Macros) 파일, SDF(Simulation Description Format) 파일이나 Simscape™ Multibody™ 모델에서 사용자 고유의 로봇 모델을 가져오려면 importrobot 함수를 참조하십시오.

[robotRBT,robotData] = loadrobot(robotname)은 로봇 모델에 대한 추가 정보를 구조체 robotData로 반환합니다.

[robotRBT,robotData] = loadrobot(robotname,Name,Value)는 하나 이상의 이름-값 쌍의 인수를 사용하여 추가 옵션을 지정합니다. 예를 들어 'Gravity',[0 0 –9.81]은 로봇 모델의 z 방향으로 중력 속성을 –9.81 m/s2으로 설정합니다.

참고

loadrobotsmimport (Simscape Multibody) 함수를 함께 사용해서 생성한 로봇의 rigidBodyTree 모델을 사용하려면 File Exchange에서 Robotics System Toolbox Robot Library Data 지원 패키지를 다운로드하고 설치해야 합니다. 자세한 내용은 Robotics System Toolbox Robot Library Data 지원 패키지 설치하기 항목을 참조하십시오.

예제

모두 축소

이 예제에서는 loadrobot을 사용하여 포함된 로봇 모델을 불러오는 방법을 보여줍니다. 선택된 로봇 이름 중 하나를 지정하여, 지정된 로봇 기하에 대한 기구학 제약 조건과 동적 제약 조건, 시각적 메시를 포함하는 rigidBodyTree 로봇 모델을 가져옵니다.

gen3 = loadrobot("kinovaGen3");

Figure에 로봇 모델을 표시합니다.

show(gen3);

Figure contains an axes object. The axes object with xlabel X, ylabel Y contains 25 objects of type patch, line. These objects represent base_link, Shoulder_Link, HalfArm1_Link, HalfArm2_Link, ForeArm_Link, Wrist1_Link, Wrist2_Link, Bracelet_Link, EndEffector_Link, Shoulder_Link_mesh, HalfArm1_Link_mesh, HalfArm2_Link_mesh, ForeArm_Link_mesh, Wrist1_Link_mesh, Wrist2_Link_mesh, Bracelet_Link_mesh, base_link_mesh.

입력 인수

모두 축소

로봇 모델의 이름으로, 다음의 유효한 로봇 모델 이름 중 하나로 지정됩니다.

로봇 모델메시 시각화설명
"abbIrb120"

Figure contains the mesh of ABB IRB 120 6-axis robot

ABB IRB 120 6축 로봇

"abbIrb120T"

Figure contains the mesh of ABB IRB 120T 6-axis robot

ABB IRB 120T 6축 로봇

"abbIrb1600"

Figure contains the mesh of ABB IRB 1600 6-axis robot

ABB IRB 1600 6축 로봇

"abbYuMi"

Figure contains the mesh of ABB YuMi 2-armed robot

ABB YuMi 2개 팔 로봇

"amrPioneer3AT"

Figure contains the mesh of Adept MobileRobots Pioneer 3-AT mobile robot

Adept MobileRobots Pioneer 3-AT 이동 로봇

"amrPioneer3DX"

Figure contains the mesh of Adept MobileRobots Pioneer 3-DX mobile robot

Adept MobileRobots Pioneer 3-DX 이동 로봇

"amrPioneerLX"

Figure contains the mesh of Adept MobileRobots Pioneer LX mobile robot

Adept MobileRobots Pioneer LX 이동 로봇

"atlas"

Figure contains the mesh of Boston Dynamics ATLAS Humanoid robot

Boston Dynamics ATLAS® 휴머노이드 로봇

"clearpathHusky"

Figure contains the mesh of Clearpath Robotics Husky mobile robot

Clearpath Robotics Husky 이동 로봇

"clearpathJackal"

Figure contains the mesh of Clearpath Robotics Jackal mobile robot

Clearpath Robotics Jackal 이동 로봇

"clearpathTurtleBot2"

Figure contains the mesh of Clearpath Robotics TurtleBot 2 mobile robot

Clearpath Robotics TurtleBot 2 이동 로봇

"fanucLRMate200ib"

Figure contains the mesh of FANUC LR Mate 200iB 6-axis robot

FANUC LR Mate 200iB 6축 로봇

"fanucM16ib"

Figure contains the mesh of FANUC M-16iB 6-axis robot

FANUC M-16iB 6축 로봇

"frankaEmikaPanda"

Figure contains the mesh of Franka Emika Panda 7-axis robot

Franka Emika Panda 7축 로봇

"kinovaGen3"

버전 1:

Figure contains the mesh of version 1 of KINOVA Gen3 7-axis robot

버전 2:

Figure contains the mesh of version 2 of KINOVA Gen3 7-axis robot

KINOVA® Gen3 7축 로봇

"kinovaJacoJ2N6S200"

Figure contains the mesh of KINOVA JACO 2-fingered 6 DOF robot with non-spherical wrist

KINOVA JACO® 2개 손가락 6 DOF 로봇(비구형 손목 포함)

"kinovaJacoJ2N6S300"

Figure contains the mesh of KINOVA JACO 3-fingered 6 DOF robot with non-spherical wrist

KINOVA JACO® 3개 손가락 6 DOF 로봇(비구형 손목 포함)

"kinovaJacoJ2N7S300"

Figure contains the mesh of KINOVA JACO 3-fingered 7 DOF robot with non-spherical wrist

KINOVA JACO® 3개 손가락 7 DOF 로봇(비구형 손목 포함)

"kinovaJacoJ2S6S300"

Figure contains the mesh of KINOVA JACO 3-fingered 6 DOF robot with spherical wrist

KINOVA JACO® 3개 손가락 6 DOF 로봇(구형 손목 포함)

"kinovaJacoJ2S7S300"

Figure contains the mesh of KINOVA JACO 3-fingered 7 DOF robot with spherical wrist

KINOVA JACO® 3개 손가락 7 DOF 로봇(구형 손목 포함)

"kinovaJacoTwoArmExample"

Figure contains the mesh of Two KINOVA JACO 3-fingered 6 DOF robots with non-spherical wrist

Two KINOVA JACO® 3개 손가락 6 DOF 로봇(비구형 손목 포함)

"kinovaMicoM1N4S200"

Figure contains the mesh of KINOVA MICO 2-fingered 4 DOF robot

KINOVA MICO® 2개 손가락 4 DOF 로봇

"kinovaMicoM1N6S200"

Figure contains the mesh of KINOVA MICO 2-fingered 6 DOF robot

KINOVA MICO® 2개 손가락 6 DOF 로봇

"kinovaMicoM1N6S300"

Figure contains the mesh of KINOVA MICO 3-fingered 6 DOF robot

KINOVA MICO® 3개 손가락 6 DOF 로봇

"kinovaMovo"

Figure contains the mesh of KINOVA MOVO 2-armed mobile robot

KINOVA MOVO® 2개 팔 이동 로봇

"kukaIiwa7"

Figure contains the mesh of KUKA LBR iiwa 7 R800 7-axis robot

KUKA LBR iiwa 7 R800 7축 로봇

"kukaIiwa14"

Figure contains the mesh of KUKA LBR iiwa 14 R820 7-axis robot

KUKA LBR iiwa 14 R820 7축 로봇

"meca500r3"

Figure contains the mesh of Mecademic Meca500 R3 6-axis robot

Mecademic Meca500 R3 6축 로봇

"omronEcobra600"

Figure contains the mesh of Omron eCobra 600 4-axis SCARA robot

Omron eCobra 600 4축 SCARA 로봇

"puma560"

Figure contains the mesh of PUMA 560 6-axis robot

PUMA 560 6축 로봇

"quanserQArm"

Figure contains the mesh of Quanser QArm 4 DOF robot

Quanser QArm 4 DOF 로봇

"quanserQBot2e"

Figure contains the mesh of Quanser QBot 2e mobile robot

Quanser QBot 2e 이동 로봇

"quanserQCar"

Figure contains the mesh of Quanser QCar mobile robot

Quanser QCar 이동 로봇

"rethinkBaxter"

Figure contains the mesh of Rethink Robotics Baxter 2-armed robot

Rethink Robotics Baxter 2개 팔 로봇

"rethinkSawyer"

Figure contains the mesh of Rethink Robotics Sawyer 7-axis robot

Rethink Robotics Sawyer 7축 로봇

"robotiq2F85"

Figure contains the mesh of Robotiq 2F-85 2-finger gripper

Robotiq 2F-85 2개 손가락 그리퍼

이 그리퍼와 함께 사용할 수 있는 매니퓰레이터의 목록은 다음과 같습니다.

  • Universal Robots UR3

  • Universal Robots UR3e

  • Universal Robots UR5

  • Universal Robots UR5e

  • Universal Robots UR10

  • Universal Robots UR10e

  • Universal Robots UR16e

  • KINOVA® Gen3(버전 1과 버전 2)

"robotisOP2"

Figure contains the mesh of ROBOTIS OP2 Humanoid robot

ROBOTIS OP2 휴머노이드 로봇

"robotisOpenManipulator"

Figure contains the mesh of ROBOTIS OpenMANIPULATOR 4-axis robot with gripper

ROBOTIS OpenMANIPULATOR 4축 로봇(그리퍼 포함)

"robotisTurtleBot3Burger"

Figure contains the mesh of ROBOTIS TurtleBot 3 Burger robot

ROBOTIS TurtleBot 3 Burger 로봇

"robotisTurtleBot3Waffle"

Figure contains the mesh of ROBOTIS TurtleBot 3 Waffle robot

ROBOTIS TurtleBot 3 Waffle 로봇

"robotisTurtleBot3WaffleForOpenManipulator"

Figure contains the mesh of ROBOTIS TurtleBot 3 Waffle robot for OpenMANIPULATOR

ROBOTIS TurtleBot 3 Waffle 로봇(OpenMANIPULATOR 용)

"robotisTurtleBot3WafflePi"

Figure contains the mesh of ROBOTIS TurtleBot 3 Waffle Pi robot

ROBOTIS TurtleBot 3 Waffle Pi 로봇

"robotisTurtleBot3WafflePiForOpenManipulator"

Figure contains the mesh of ROBOTIS TurtleBot 3 Waffle Pi robot for OpenMANIPULATOR

ROBOTIS TurtleBot 3 Waffle Pi 로봇(OpenMANIPULATOR 용)

"techmanTM5-700"

Figure contains the mesh of Techman TM5-700 6-axis robot with Camera

Techman TM5-700 6축 로봇(카메라 포함)

"techmanTM5x-700"

Figure contains the mesh of Techman TM5X-700 6-axis robot without Camera

Techman TM5X-700 6축 로봇(카메라 미포함)

"techmanTM5-900"

Figure contains the mesh of Techman TM5-900 6-axis robot with Camera

Techman TM5-900 6축 로봇(카메라 포함)

"techmanTM5x-900"

Figure contains the mesh of Techman TM5X-900 6-axis robot without Camera

Techman TM5X-900 6축 로봇(카메라 미포함)

"techmanTM12"

Figure contains the mesh of Techman TM12 6-axis robot with Camera

Techman TM12 6축 로봇(카메라 포함)

"techmanTM12x"

Figure contains the mesh of Techman TM12X 6-axis robot without Camera

Techman TM12X 6축 로봇(카메라 미포함)

"techmanTM14"

Figure contains the mesh of Techman TM14 6-axis robot with Camera

Techman TM14 6축 로봇(카메라 포함)

"techmanTM14x"

Figure contains the mesh of Techman TM14X 6-axis robot without Camera

Techman TM14X 6축 로봇(카메라 미포함)

"universalUR3"

Figure contains the mesh of Universal Robots UR3 6-axis robot

Universal Robots UR3 6축 로봇

"universalUR3e"

Figure contains the mesh of Universal Robots UR3e 6-axis robot

Universal Robots UR3e 6축 로봇

"universalUR5"

Figure contains the mesh of Universal Robots UR5 6-axis robot

Universal Robots UR5 6축 로봇

"universalUR5e"

Figure contains the mesh of Universal Robots UR5e 6-axis robot

Universal Robots UR5e 6축 로봇

"universalUR10"

Figure contains the mesh of Universal Robots UR10 6-axis robot

Universal Robots UR10 6축 로봇

"universalUR10e"

Figure contains the mesh of Universal Robots UR10e 6-axis robot

Universal Robots UR10e 6축 로봇

"universalUR16e"

Figure contains the mesh of Universal Robots UR16e 6-axis robot

Universal Robots UR16e 6축 로봇

"valkyrie"

Figure contains the mesh of NASA Valkyrie Humanoid robot

NASA Valkyrie 휴머노이드 로봇

"willowgaragePR2"

Figure contains the mesh of Willow Garage PR2 mobile robot

Willow Garage PR2 이동 로봇

"yaskawaMotomanMH5"

Figure contains the mesh of Yaskawa Motoman MH5 6-axis robot

Yaskawa Motoman MH5 6축 로봇

데이터형: char | string

이름-값 인수

선택적 인수 쌍을 Name1=Value1,...,NameN=ValueN으로 지정합니다. 여기서 Name은 인수 이름이고 Value는 대응값입니다. 이름-값 인수는 다른 인수 뒤에 와야 하지만, 인수 쌍의 순서는 상관없습니다.

R2021a 이전 버전에서는 쉼표를 사용하여 각 이름과 값을 구분하고 따옴표로 Name을 묶으십시오.

예: 'Gravity',[0 0 -9.81]은 로봇 모델의 z 방향으로 중력 속성을 –9.81m/s2으로 설정합니다.

로봇 모델의 기구학 함수와 동역학 함수에 대한 입력/출력 데이터 형식으로, 'DataFormat'과 함께 "struct", "row" 또는 "column"이 쉼표로 구분되어 지정됩니다. 동역학 함수를 사용하려면 "row" 또는 "column"을 지정해야 합니다. 이 이름-값 쌍은 rigidBodyTree 로봇 모델의 DataFormat 속성을 설정합니다.

로봇에 작용하는 중력 가속도로, 'Gravity'와 함께 [x y z] 형식의 3개 요소 벡터가 쉼표로 구분되어 지정됩니다(단위: m/s2). 각 요소는 베이스 로봇 프레임의 x, y, z 방향에서의 가속도에 대응됩니다. 이 이름-값 쌍은 rigidBodyTree 로봇 모델의 Gravity 속성을 설정합니다.

로봇 모델의 URDF 버전으로, 숫자형 스칼라로 지정됩니다.

로봇 모델버전
"kinovaGen3"1 –– kinovaGen3.urdf 로봇 모델을 불러옵니다.
2 –– kinovaGen3V12.urdf 로봇 모델을 불러옵니다.

예: loadrobot("kinovaGen3","Version",2)

출력 인수

모두 축소

강체 트리 로봇 모델로, rigidBodyTree 객체로 지정됩니다. 이 모델은 robotData에 지정된 로봇 소스 파일을 기반으로 하는 모든 기구학 제약 조건과 동역학 제약 조건을 포함하고 있습니다. 일부 모델은 로봇 궤적을 시각화하기 위한 시각적 메시도 포함하고 있습니다.

로봇 모델 정보로, 다음 필드를 포함하는 구조체로 반환됩니다. 함수가 필드 값을 반환할지는 robotname 입력값에 의해 지정된 로봇 유형에 따라 다릅니다. 해당 로봇과 관련 없는 필드는 비어 있습니다.

다음 테이블은 로봇 모델 정보 구조체의 필드를 설명합니다.

필드설명

RobotName

(모든 로봇 유형과 관련 있음)

반환된 로봇 모델의 이름

FilePath

(모든 로봇 유형과 관련 있음)

강체 트리 모델을 생성하는 데 사용되는 URDF 파일의 파일 경로

Source

(모든 로봇 유형과 관련 있음)

로봇 모델의 URL 소스

Version

(모든 로봇 유형과 관련 있음)

로봇 모델의 버전 번호

WheelRadius

로봇의 바퀴 반경(단위: 미터)

WheelBase

앞 차축과 뒤 차축 간의 거리(단위: 미터)

TrackWidth

차축에서 바퀴 사이의 거리(단위: 미터)

MaxTranslationalVelocity

로봇의 최대 선속도(단위: m/s)

MaxRotationalVelocity

로봇의 최대 각속도(단위: rad/s)

DriveType

모든 로봇은 고정된 베이스로 모델링되지만 이 필드는 로봇 베이스의 실제 구동 유형을 설명합니다. 구동 유형은 지정된 로봇에 따라 다음 중 하나일 수 있습니다.

  • FixedBase –– 고정 베이스가 있는 로봇의 구동 유형

  • Differential-Drive –– 차동 구동 이동 베이스가 있는 로봇의 구동 유형

  • Omni-Wheel –– 전방향 바퀴 이동 베이스가 있는 로봇의 구동 유형

  • Ackermann –– Ackermann 이동 베이스가 있는 로봇의 구동 유형

ManipulatorMotionModel

매니퓰레이터 로봇의 모션 모델

MobileBaseMotionModel

이동 베이스의 기구학적 모션 모델. 모션 모델은 지정된 로봇에 따라 다음 중 하나일 수 있습니다.

  • differentialDriveKinematics 객체 –– 차동 구동 이동 베이스가 있는 로봇의 차동 구동 기구학 모션 모델

  • unicycleKinematics 객체 –– 전방향 바퀴 이동 베이스가 있는 로봇의 외륜 기구학 모션 모델

  • ackermannKinematics 객체 –– Ackermann 이동 베이스가 있는 로봇의 Ackermann 기구학 모션 모델

HasBodyInertias로봇 모델에 관성이 있는지 나타내는 플래그로, 로봇 모델에 바디 관성이 있는 바디가 하나 이상 있으면 1(true)로 표시되고 로봇 모델에 관성이 있는 바디가 없으면 0(false)으로 표시됩니다.

데이터형: struct

확장 기능

C/C++ 코드 생성
MATLAB® Coder™를 사용하여 C 코드나 C++ 코드를 생성할 수 있습니다.

버전 내역

R2019b에 개발됨

모두 확장