A Prolog-based interface to the Unified Robot Description Format (URDF). The package first implements a wrapper around the C++ URDF parser library, and second a mapping into a OWL model of URDF. The OWL model is defined in an ontology that comes with this package.
Here is example Prolog code where urdfprolog generates RDF descriptions of a PR2 robot:
ros_package_path('urdfprolog', X), atom_concat(X, '/urdf/pr2_for_unit_tests.urdf', FileURL), kb_create(urdf:'Robot', Robot), rdf_urdf_load(Robot, FileURL).
The result is a RDF description of the robot's links and joints. However, components are not considered in URDF. For component descriptions, please have a look at the SRDL package.
URDF.pl | ||
---|---|---|
has_base_link/2 | ||
has_base_link_name/2 | ||
has_child_link/2 | ||
has_end_link/2 | ||
has_end_link_name/2 | ||
has_parent_link/2 | ||
has_urdf/2 | True if Object is a part of RootObject, and RootObject is assigned to some URDF description. | |
is_urdf_joint/1 | ||
is_urdf_link/1 | ||
urdf_joint_axis/3 | Get the axis of a joint, expressed as a list [X, Y, Z]. | |
urdf_joint_child_link/3 | Get the name of the link of a joint. | |
urdf_joint_damping/3 | Read the damping value of a joint. | |
urdf_joint_friction/3 | Get the static friction value of a joint. | |
urdf_joint_hard_limits/5 | Read the hard limits of a joint. | |
urdf_joint_origin/3 | Get the origin of a joint, expressed as a pose w.r.t. | |
urdf_joint_parent_link/3 | Get the name the parent link of a joint. | |
urdf_joint_soft_limits/5 | Read the soft limits of a joint. | |
urdf_joint_type/3 | Get the type of a joint. | |
urdf_link_child_joints/3 | Get the list of joint names of all child joints of a link. | |
urdf_link_inertial/5 | Get the inertial origin of a link as a pose w.r.t. | |
urdf_link_parent_joint/3 | Get the name of the parent joint of a link. | |
urdf_load/2 | Same as urdf_load/3 with empty options list. | |
urdf_load/3 | Assert a URDF file as description of an object. | |
urdf_robot_name/2 | Get the name of the currently loaded robot. | |
urdf_root_link/2 | Get the name of the root link of the robot. | |
urdf_set_pose/2 | Assign the initial pose of links described in URDF as the current pose of link entities. | |
urdf_set_pose_to_origin/2 | Same as urdf_set_pose/2 but assigns the base of the URDF to be located exactly at the frame given in the second argument. | |
__init__.pl |