include
serl_franka_controllers
joint_position_controller.h
Go to the documentation of this file.
1
// Refered to https://github.com/frankaemika/franka_ros/tree/develop/franka_example_controllers
2
3
#pragma once
4
5
#include <array>
6
#include <string>
7
#include <vector>
8
9
#include <
controller_interface/multi_interface_controller.h
>
10
#include <
hardware_interface/joint_command_interface.h
>
11
#include <
hardware_interface/robot_hw.h
>
12
#include <
ros/node_handle.h
>
13
#include <
ros/time.h
>
14
15
namespace
serl_franka_controllers
{
16
17
class
JointPositionController
:
public
controller_interface::MultiInterfaceController
<
18
hardware_interface::PositionJointInterface> {
19
public
:
20
bool
init
(
hardware_interface::RobotHW
* robot_hardware,
ros::NodeHandle
& node_handle)
override
;
21
void
starting
(
const
ros::Time
&)
override
;
22
void
update
(
const
ros::Time
&,
const
ros::Duration
& period)
override
;
23
24
private
:
25
double
cubicInterpolation
(
double
p0,
double
p1,
double
t
);
26
hardware_interface::PositionJointInterface
*
position_joint_interface_
;
27
std::vector<hardware_interface::JointHandle>
position_joint_handles_
;
28
ros::Duration
elapsed_time_
;
29
std::array<double, 7>
initial_pose_
{};
30
std::array<double, 7>
reset_pose_
{};
31
};
32
33
}
// namespace serl_franka_controllers
serl_franka_controllers
Definition:
cartesian_impedance_controller.h:25
node_handle.h
serl_franka_controllers::JointPositionController::reset_pose_
std::array< double, 7 > reset_pose_
Definition:
joint_position_controller.h:30
time.h
serl_franka_controllers::JointPositionController
Definition:
joint_position_controller.h:17
serl_franka_controllers::JointPositionController::elapsed_time_
ros::Duration elapsed_time_
Definition:
joint_position_controller.h:28
serl_franka_controllers::JointPositionController::cubicInterpolation
double cubicInterpolation(double p0, double p1, double t)
serl_franka_controllers::JointPositionController::init
bool init(hardware_interface::RobotHW *robot_hardware, ros::NodeHandle &node_handle) override
Definition:
joint_position_controller.cpp:18
joint_command_interface.h
hardware_interface::RobotHW
controller_interface::MultiInterfaceController
serl_franka_controllers::JointPositionController::position_joint_handles_
std::vector< hardware_interface::JointHandle > position_joint_handles_
Definition:
joint_position_controller.h:27
t
tuple t
ros::Time
serl_franka_controllers::JointPositionController::starting
void starting(const ros::Time &) override
Definition:
joint_position_controller.cpp:58
robot_hw.h
serl_franka_controllers::JointPositionController::update
void update(const ros::Time &, const ros::Duration &period) override
Definition:
joint_position_controller.cpp:65
hardware_interface::PositionJointInterface
ros::Duration
serl_franka_controllers::JointPositionController::initial_pose_
std::array< double, 7 > initial_pose_
Definition:
joint_position_controller.h:29
serl_franka_controllers::JointPositionController::position_joint_interface_
hardware_interface::PositionJointInterface * position_joint_interface_
Definition:
joint_position_controller.h:26
ros::NodeHandle
multi_interface_controller.h
serl_franka_controllers
Author(s): Jianlan Luo, Charles Xu
autogenerated on Fri Feb 9 2024 03:09:57