17#ifndef JOINT_LIMITS__JOINT_SATURATION_LIMITER_HPP_
18#define JOINT_LIMITS__JOINT_SATURATION_LIMITER_HPP_
23#include "joint_limits/joint_limiter_interface.hpp"
24#include "rclcpp/clock.hpp"
25#include "rclcpp/duration.hpp"
36template <
typename Jo
intLimitsStateDataType>
48 bool on_configure(
const JointLimitsStateDataType & current_joint_states)
override
50 prev_command_ = current_joint_states;
70 const JointLimitsStateDataType & current_joint_states,
71 JointLimitsStateDataType & desired_joint_states,
const rclcpp::Duration & dt)
override;
74 rclcpp::Clock::SharedPtr clock_;
75 JointLimitsStateDataType prev_command_;
78template <
typename Jo
intLimitsStateDataType>
82 clock_ = std::make_shared<rclcpp::Clock>(rclcpp::Clock(RCL_ROS_TIME));
85template <
typename Jo
intLimitsStateDataType>
Definition joint_limiter_interface.hpp:35
Definition joint_saturation_limiter.hpp:38
JointSaturationLimiter()
Constructor.
Definition joint_saturation_limiter.hpp:79
bool on_enforce(const JointLimitsStateDataType ¤t_joint_states, JointLimitsStateDataType &desired_joint_states, const rclcpp::Duration &dt) override
Enforce joint limits to desired position, velocity and acceleration using clamping....
~JointSaturationLimiter()
Destructor.
Definition joint_saturation_limiter.hpp:86
bool on_init() override
Method is realized by an implementation.
Definition joint_saturation_limiter.hpp:46
bool on_configure(const JointLimitsStateDataType ¤t_joint_states) override
Method is realized by an implementation.
Definition joint_saturation_limiter.hpp:48
Definition data_structures.hpp:37