23 #ifndef __PLUGINS_OPENRAVE_ROBOT_H 24 #define __PLUGINS_OPENRAVE_ROBOT_H 28 #include <openrave/openrave.h> 37 class OpenRaveManipulator;
38 class OpenRaveEnvironment;
51 virtual void set_offset(
float trans_x,
float trans_y,
float trans_z);
52 virtual void calibrate(
float device_trans_x,
float device_trans_y,
float device_trans_z);
63 virtual bool set_target_rel(
float trans_x,
float trans_y,
float trans_z,
bool is_extension=
false);
65 virtual bool set_target_quat(
float trans_x,
float trans_y,
float trans_z,
float quat_w,
float quat_x,
float quat_y,
float quat_z,
bool no_offset =
false);
66 virtual bool set_target_axis_angle(
float trans_x,
float trans_y,
float trans_z,
float angle,
float axisX,
float axisY,
float axisZ,
bool no_offset =
false);
67 virtual bool set_target_euler(
euler_rotation_t type,
float trans_x,
float trans_y,
float trans_z,
float phi,
float theta,
float psi,
bool no_offset =
false);
78 virtual std::vector< std::vector<OpenRAVE::dReal> >*
get_trajectory()
const;
87 bool set_target_transform(OpenRAVE::Vector& trans, OpenRAVE::Vector& rotQuat,
bool no_offset =
false);
88 bool set_target_euler(OpenRAVE::Vector& trans, std::vector<float>& rotations,
bool no_offset =
false);
89 OpenRAVE::IkParameterization get_5dof_ikparam(OpenRAVE::Transform& trans);
94 OpenRAVE::RobotBasePtr __robot;
95 OpenRAVE::RobotBase::ManipulatorPtr __arm;
100 OpenRAVE::ModuleBasePtr __mod_basemanip;
102 OpenRAVE::PlannerBase::PlannerParametersPtr __planner_params;
103 std::vector< std::vector<OpenRAVE::dReal> >* __traj;
105 float __trans_offset_x;
106 float __trans_offset_y;
107 float __trans_offset_z;
109 bool __display_planned_movements;
virtual void set_target_angles(std::vector< float > &angles)
Set target angles directly.
virtual bool display_planned_movements() const
Getter for __display_planned_movements.
virtual void update_manipulator()
Update motor values from OpenRAVE model.
virtual void set_target_plannerparams(std::string ¶ms)
Set additional planner parameters.
Fawkes library namespace.
virtual OpenRAVE::RobotBasePtr get_robot_ptr() const
Returns RobotBasePtr for uses in other classes.
virtual void set_offset(float trans_x, float trans_y, float trans_z)
Directly set transition offset between coordinate systems of real device and OpenRAVE model...
virtual bool set_target_rel(float trans_x, float trans_y, float trans_z, bool is_extension=false)
Set target, given relative transition.
virtual bool set_target_euler(euler_rotation_t type, float trans_x, float trans_y, float trans_z, float phi, float theta, float psi, bool no_offset=false)
Set target, given transition, and Euler-rotation.
virtual OpenRAVE::ModuleBasePtr get_basemanip() const
Return BaseManipulation Module-Pointer.
virtual bool set_target_object_position(float trans_x, float trans_y, float trans_z, float rot_x)
Set target by giving position of an object.
virtual bool set_target_ikparam(OpenRAVE::IkParameterization ik_param)
Set target by giving IkParameterizaion of target.
virtual bool attach_object(OpenRAVE::KinBodyPtr object)
Attach a kinbody to the robot.
virtual void calibrate(float device_trans_x, float device_trans_y, float device_trans_z)
Calculate transition offset between coordinate systems of real device and OpenRAVE model...
virtual std::vector< std::vector< float > > * get_trajectory_device() const
Return pointer to trajectory of motion from __manip to __target.manip with device angle format...
virtual OpenRAVE::PlannerBase::PlannerParametersPtr get_planner_params() const
Updates planner parameters and return pointer to it.
virtual bool set_target_axis_angle(float trans_x, float trans_y, float trans_z, float angle, float axisX, float axisY, float axisZ, bool no_offset=false)
Set target, given transition, and rotation as axis-angle.
OpenRaveEnvironment class.
virtual void update_model()
Update/Set OpenRAVE motor angles.
virtual bool set_target_quat(float trans_x, float trans_y, float trans_z, float quat_w, float quat_x, float quat_y, float quat_z, bool no_offset=false)
Set target, given transition, and rotation as quaternion.
Struct containing information about the current target.
virtual void load(const std::string &filename, fawkes::OpenRaveEnvironment *env)
Load robot from xml file.
Class containing information about all manipulator motors.
OpenRaveRobot(fawkes::Logger *logger=0)
Constructor.
euler_rotation_t
Euler rotations.
virtual OpenRaveManipulator * get_manipulator() const
Get manipulator.
virtual std::vector< std::vector< OpenRAVE::dReal > > * get_trajectory() const
Return pointer to trajectory of motion from __manip to __target.manip with OpenRAVE-model angle forma...
virtual bool release_all_objects()
Release all grabbed kinbodys from the robot.
virtual ~OpenRaveRobot()
Destructor.
virtual void set_ready()
Set robot ready for usage.
virtual bool set_target_straight(float trans_x, float trans_y, float trans_z)
Set target for a straight movement, given transition.
virtual void set_manipulator(fawkes::OpenRaveManipulator *manip, bool display_movements=false)
Set pointer to OpenRaveManipulator object.
virtual bool release_object(OpenRAVE::KinBodyPtr object)
Release a kinbody from the robot.
virtual target_t get_target() const
Get target.