Download as pdf or txt
Download as pdf or txt
You are on page 1of 5

EXPERIMENT NO: 2

Name: Vaishnavi Nanaware Roll no: IT730


Branch: BE ITA Batch : A2
DOP: 16/8/2023 Sign:
DOS:

Robotics System Toolbox provides tools and algorithms for designing, simulating, testing, and
deploying manipulator and mobile robot applications. For manipulators, the toolbox includes
algorithms for collision checking, path planning, trajectory generation, forward and inverse
kinematics, and dynamics using a rigid body tree representation. For mobile robots, it includes
algorithms for mapping, localization, path planning, path following, and motion control. The
toolbox lets you build test scenarios and use the provided reference examples to validate
common industrial robotic applications. It also includes a library of commercially available
industrial robot models that you can import, visualize, simulate, and use with the reference
applications.

rigidBody:
Description
The rigidBody object represents a rigid body. A rigid body is the building block for any
tree-structured robot manipulator. Each rigidBody has a rigidBodyJoint object attached to it that
defines how the rigid body can move. Rigid bodies are assembled into a tree-structured robot
model using rigidBodyTree.

Set a joint object to the Joint property before calling addBody to add the rigid body to the robot
model. When a rigid body is in a rigid body tree, you cannot directly modify its properties
because it corrupts the relationships between bodies. Use replaceJoint to modify the entire tree
structure.

Creation
Syntax:
body = rigidBody(name)

Description:
body = rigidBody(name) creates a rigid body with the specified name. By default, the body
comes with a fixed joint.

rigidBodyJoint:
Description
The rigidBodyJoint object defines how a rigid body moves relative to an attachment point. In a
tree-structured robot, a joint always belongs to a specific rigid body, and each rigid body has one
joint.
The rigidBodyJoint object can describe joints of various types. When building a rigid body tree
structure with rigidBodyTree, you must assign the Joint object to a rigid body using the
rigidBody class.

The different joint types supported are:

● fixed — Fixed joint that prevents relative motion between two bodies.
● revolute — Single degree of freedom (DOF) joint that rotates around a given axis. Also
called a pin or hinge joint.
● prismatic — Single DOF joint that slides along a given axis. Also called a sliding joint.

Each joint type has different properties with different dimensions, depending on its defined
geometry.

Creation
Syntax
jointObj = rigidBodyJoint(jname)
jointObj = rigidBodyJoint(jname,jtype)

Description
jointObj = rigidBodyJoint(jname) creates a fixed joint with the specified name.
jointObj = rigidBodyJoint(jname,jtype) creates a joint of the specified type with the specified
name.

Rigid Body Tree Robot Model


The rigid body tree model is a representation of a robot structure. You can use it to represent
robots such as manipulators or other kinematic trees. Use rigidBodyTree objects to create these
models.

A rigid body tree is made up of rigid bodies (rigidBody) that are attached via joints
(rigidBodyJoint). Each rigid body has a joint that defines how that body moves relative to its
parent in the tree. Specify the transformation from one body to the next by setting the fixed
transformation on each joint (setFixedTransform).

You can add, replace, or remove bodies from the rigid body tree model. You can also replace
joints for specific bodies. The rigidBodyTree object maintains the relationships and updates the
rigidBody object properties to reflect this relationship. You can also get transformations between
different body frames using getTransform.

LoadRobot

Description

robotRBT = loadrobot(robotname) loads a robot model from the robot library as a rigidBodyTree
object specified by robot model name robotname.

[robotRBT,robotData] = loadrobot(robotname) returns additional information about the robot


model as a structure, robotData.

[robotRBT,robotData] = loadrobot(robotname,Name,Value) specifies additional options using


one or more name-value pair arguments. For example, 'Gravity',[0 0 –9.81] sets the gravity
property to –9.81 m/s2 in the z-direction for the robot model.

Syntax

robotRBT = loadrobot(robotname)

[robotRBT,robotData] = loadrobot(robotname)

[robotRBT,robotData] = loadrobot(robotname,Name,Value)

1] KinovaGen3
KINOVA® Gen3 7-axis robot

Output:
2] ArmPioneeer3AT

Adept MobileRobots Pioneer 3-AT mobile robot

Output:

3] FrankaEmikaPanda

Franka Emika Panda 7-axis robot

Output:

4] Atlas

Boston Dynamics ATLAS® Humanoid robot


Output:

5] quanserQCar

Quanser QCar mobile robot

Output:

CONCLUSION:
Thus the steps to loading a rigid body tree robot have been executed and studied successfully.

You might also like