Main Content

La traducción de esta página aún no se ha actualizado a la versión más reciente. Haga clic aquí para ver la última versión en inglés.

loadrobot

Cargar un modelo de robot de árbol de cuerpo rígido desde la biblioteca del robot

Desde R2019b

Descripción

ejemplo

robotRBT = loadrobot(robotname) carga un modelo de robot desde la biblioteca del robot como un objeto rigidBodyTree, especificado por el nombre del modelo de robot robotname.

Para importar su propio modelo de robot desde un archivo de formato universal de descripción de robots (URDF), de macros XML (Xacro), de formato de descripción de simulación (SDF) o un modelo de Simscape™ Multibody™, consulte la función importrobot.

[robotRBT,robotData] = loadrobot(robotname) devuelve información adicional sobre el modelo de robot como una estructura, robotData.

[robotRBT,robotData] = loadrobot(robotname,Name,Value) especifica opciones adicionales mediante uno o más argumentos de par nombre-valor. Por ejemplo, 'Gravity',[0 0 –9.81] establece la propiedad de gravedad en –9,81 m/s2 en la dirección z para el modelo de robot.

Nota

Para utilizar el modelo rigidBodyTree del robot generado por loadrobot con la función smimport (Simscape Multibody), debe descargar e instalar el paquete de soporte Robotics System Toolbox Robot Library Data desde File Exchange. Para obtener más información, consulte Instalar el paquete de soporte Robotics System Toolbox Robot Library Data.

Ejemplos

contraer todo

En este ejemplo se muestra cómo cargar un modelo de robot incluido usando loadrobot. Especifique uno de los nombres de robot seleccionados para obtener un modelo de robot rigidBodyTree que contenga restricciones cinemáticas y dinámicas, así como mallas visuales para la geometría del robot especificado.

gen3 = loadrobot("kinovaGen3");

Muestre el modelo de robot en una figura.

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.

Argumentos de entrada

contraer todo

Nombre del modelo de robot, especificado como uno de estos nombres de modelo de robot válidos:

Modelo de robotVisualización de la mallaDescripción
"abbIrb120"

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

Robot de 6 ejes ABB IRB 120

"abbIrb120T"

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

Robot de 6 ejes ABB IRB 120T

"abbIrb1600"

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

Robot de 6 ejes ABB IRB 1600

"abbYuMi"

Figure contains the mesh of ABB YuMi 2-armed robot

Robot de 2 brazos ABB YuMi

"amrPioneer3AT"

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

Robot móvil Adept MobileRobots Pioneer 3-AT

"amrPioneer3DX"

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

Robot móvil Adept MobileRobots Pioneer 3-DX

"amrPioneerLX"

Figure contains the mesh of Adept MobileRobots Pioneer LX mobile robot

Robot móvil Adept MobileRobots Pioneer LX

"atlas"

Figure contains the mesh of Boston Dynamics ATLAS Humanoid robot

Robot humanoide Boston Dynamics ATLAS®

"clearpathHusky"

Figure contains the mesh of Clearpath Robotics Husky mobile robot

Robot móvil Clearpath Robotics Husky

"clearpathJackal"

Figure contains the mesh of Clearpath Robotics Jackal mobile robot

Robot móvil Clearpath Robotics Jackal

"clearpathTurtleBot2"

Figure contains the mesh of Clearpath Robotics TurtleBot 2 mobile robot

Robot móvil Clearpath Robotics TurtleBot 2

"fanucLRMate200ib"

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

Robot de 6 ejes FANUC LR Mate 200iB

"fanucM16ib"

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

Robot de 6 ejes FANUC M-16iB

"frankaEmikaPanda"

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

Robot de 7 ejes Franka Emika Panda

"kinovaGen3"

Versión 1:

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

Versión 2:

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

Robot de 7 ejes KINOVA® Gen3

"kinovaJacoJ2N6S200"

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

Robot KINOVA JACO® de 2 dedos y 6 DOF con muñeca no esférica

"kinovaJacoJ2N6S300"

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

Robot KINOVA JACO® de 3 dedos y 6 DOF con muñeca no esférica

"kinovaJacoJ2N7S300"

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

Robot KINOVA JACO® de 3 dedos y 7 DOF con muñeca no esférica

"kinovaJacoJ2S6S300"

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

Robot KINOVA JACO® de 3 dedos y 6 DOF con muñeca esférica

"kinovaJacoJ2S7S300"

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

Robot KINOVA JACO® de 3 dedos y 7 DOF con muñeca esférica

"kinovaJacoTwoArmExample"

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

Dos robots KINOVA JACO® de 3 dedos y 6 DOF con muñeca no esférica

"kinovaMicoM1N4S200"

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

Robot KINOVA MICO® de 2 dedos y 4 DOF

"kinovaMicoM1N6S200"

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

Robot KINOVA MICO® de 2 dedos y 6 DOF

"kinovaMicoM1N6S300"

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

Robot KINOVA MICO® de 3 dedos y 6 DOF

"kinovaMovo"

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

Robot móvil de 2 brazos KINOVA MOVO®

"kukaIiwa7"

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

Robot de 7 ejes KUKA LBR iiwa 7 R800

"kukaIiwa14"

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

Robot de 7 ejes KUKA LBR iiwa 14 R820

"meca500r3"

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

Robot de 6 ejes Mecademic Meca500 R3

"omronEcobra600"

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

Robot SCARA de 4 ejes Omron eCobra 600

"puma560"

Figure contains the mesh of PUMA 560 6-axis robot

Robot de 6 ejes PUMA 560

"quanserQArm"

Figure contains the mesh of Quanser QArm 4 DOF robot

Robot Quanser QArm de 4 DOF

"quanserQBot2e"

Figure contains the mesh of Quanser QBot 2e mobile robot

Robot móvil Quanser QBot 2e

"quanserQCar"

Figure contains the mesh of Quanser QCar mobile robot

Robot móvil Quanser QCar

"rethinkBaxter"

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

Robot de 2 brazos Rethink Robotics Baxter

"rethinkSawyer"

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

Robot de 7 ejes Rethink Robotics Sawyer

"robotiq2F85"

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

Pinza de 2 dedos Robotiq 2F-85

La pinza puede utilizarse con estos manipuladores:

  • Universal Robots UR3

  • Universal Robots UR3e

  • Universal Robots UR5

  • Universal Robots UR5e

  • Universal Robots UR10

  • Universal Robots UR10e

  • Universal Robots UR16e

  • KINOVA® Gen3 (versiones 1 y 2)

"robotisOP2"

Figure contains the mesh of ROBOTIS OP2 Humanoid robot

Robot humanoide ROBOTIS OP2

"robotisOpenManipulator"

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

Robot de 4 ejes con pinza ROBOTIS OpenMANIPULATOR

"robotisTurtleBot3Burger"

Figure contains the mesh of ROBOTIS TurtleBot 3 Burger robot

Robot ROBOTIS TurtleBot 3 Burger

"robotisTurtleBot3Waffle"

Figure contains the mesh of ROBOTIS TurtleBot 3 Waffle robot

Robot ROBOTIS TurtleBot 3 Waffle

"robotisTurtleBot3WaffleForOpenManipulator"

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

Robot ROBOTIS TurtleBot 3 Waffle para OpenMANIPULATOR

"robotisTurtleBot3WafflePi"

Figure contains the mesh of ROBOTIS TurtleBot 3 Waffle Pi robot

Robot ROBOTIS TurtleBot 3 Waffle Pi

"robotisTurtleBot3WafflePiForOpenManipulator"

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

Robot ROBOTIS TurtleBot 3 Waffle Pi para OpenMANIPULATOR

"universalUR3"

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

Robot de 6 ejes Universal Robots UR3

"universalUR3e"

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

Robot de 6 ejes Universal Robots UR3e

"universalUR5"

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

Robot de 6 ejes Universal Robots UR5

"universalUR5e"

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

Robot de 6 ejes Universal Robots UR5e

"universalUR10"

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

Robot de 6 ejes Universal Robots UR10

"universalUR10e"

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

Robot de 6 ejes Universal Robots UR10e

"universalUR16e"

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

Robot de 6 ejes Universal Robots UR16e

"valkyrie"

Figure contains the mesh of NASA Valkyrie Humanoid robot

Robot humanoide NASA Valkyrie

"willowgaragePR2"

Figure contains the mesh of Willow Garage PR2 mobile robot

Robot móvil Willow Garage PR2

"yaskawaMotomanMH5"

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

Robot de 6 ejes Yaskawa Motoman MH5

Tipos de datos: char | string

Argumentos de par nombre-valor

Especifique pares de argumentos opcionales como Name1=Value1,...,NameN=ValueN, donde Name es el nombre del argumento y Value es el valor correspondiente. Los argumentos nombre-valor deben aparecer después de los otros argumentos, pero el orden de los pares no importa.

En versiones anteriores a R2021a, use comas para separar cada nombre y valor, y encierre Name entre comillas.

Ejemplo: 'Gravity',[0 0 -9.81] establece la propiedad de gravedad en -9,81 m/s2 en la dirección z para el modelo de robot.

Formato de datos de entrada/salida de las funciones cinemáticas y dinámicas del modelo de robot, especificado como el par separado por comas compuesto por 'DataFormat' y "struct", "row" o "column". Para utilizar funciones dinámicas, debe especificar "row" o "column". Este par nombre-valor establece la propiedad DataFormat del modelo de robot rigidBodyTree.

Aceleración gravitacional experimentada por el robot, especificada como el par separado por comas compuesto por 'Gravity' y un vector de tres elementos con la forma [x y z] en m/s2. Cada elemento se corresponde con la aceleración del marco base del robot en la dirección x, y y z respectivamente. Este par nombre-valor establece la propiedad Gravity del modelo de robot rigidBodyTree.

Versión URDF del modelo de robot, especificada como un escalar numérico.

Modelo de robotVersiones
"kinovaGen3"1: carga el modelo de robot kinovaGen3.urdf
2: carga el modelo de robot kinovaGen3V12.urdf

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

Argumentos de salida

contraer todo

Modelo de robot de árbol de cuerpo rígido, devuelto como un objeto rigidBodyTree. Este modelo incluye todas las restricciones cinemáticas y dinámicas basadas en los archivos de origen del robot especificados en robotData. Algunos modelos también contienen mallas visuales para visualizar las trayectorias del robot.

Información del modelo de robot, devuelta como una estructura compuesta por estos campos. La devolución de un valor para un campo por parte de la función depende del tipo de robot especificado por la entrada de robotname. Los campos no relevantes para ese robot están vacíos.

En esta tabla se describen los campos de la estructura de información del modelo de robot.

CampoDescripción

RobotName

(relevante para todos los tipos de robot)

Nombre del modelo de robot devuelto

FilePath

(relevante para todos los tipos de robot)

Ruta del archivo URDF que se utiliza para crear el modelo de árbol de cuerpo rígido

Source

(relevante para todos los tipos de robot)

Origen URL del modelo de robot

Version

(relevante para todos los tipos de robot)

Número de versión del modelo de robot

WheelRadius

Radio de la rueda del robot en metros

WheelBase

Distancia entre los ejes delantero y trasero en metros

TrackWidth

Distancia entre las ruedas del eje en metros

MaxTranslationalVelocity

Velocidad lineal máxima del robot en m/s

MaxRotationalVelocity

Velocidad angular máxima del robot en rad/s

DriveType

Todos los robots se modelan con una base fija, pero este campo describe el tipo de transmisión real de la base del robot. El tipo de transmisión puede ser cualquiera de los siguientes según el robot especificado:

  • FixedBase: tipo de transmisión de los robots con base fija

  • Differential-Drive: tipo de transmisión de los robots con base móvil de transmisión diferencial

  • Omni-Wheel: tipo de transmisión de los robots con base móvil omnidireccional

  • Ackermann: tipo de transmisión de los robots con base móvil de Ackermann

ManipulatorMotionModel

Modelo de movimiento de un robot manipulador

MobileBaseMotionModel

Modelo de movimiento cinemático de la base móvil. El modelo de movimiento puede ser cualquiera de los siguientes según el robot especificado:

  • Objeto differentialDriveKinematics: modelo de movimiento cinemático de transmisión diferencial para los robots con base móvil de transmisión diferencial

  • Objeto unicycleKinematics: modelo de movimiento cinemático de monociclo para los robots con base móvil omnidireccional

  • Objeto ackermannKinematics: modelo de movimiento cinemático de Ackermann para los robots con base móvil de Ackermann

HasBodyInertiasIndicador que indica si el modelo de robot tiene inercias, indicada como 1 (true) si el modelo de robot tiene al menos un cuerpo con inercia o 0 (false) si el modelo de robot no tiene cuerpos con inercia.

Tipos de datos: struct

Historial de versiones

Introducido en R2019b