Classes | Public Member Functions | Protected Member Functions | Protected Attributes | Static Protected Attributes | List of all members
safety_limiter::SafetyLimiterNode Class Reference

Classes

class  polygon
 
class  vec
 

Public Member Functions

 SafetyLimiterNode ()
 
void spin ()
 

Protected Member Functions

void cbCloud (const sensor_msgs::PointCloud2::ConstPtr &msg)
 
void cbDisable (const std_msgs::Bool::ConstPtr &msg)
 
void cbParameter (const SafetyLimiterConfig &config, const uint32_t)
 
void cbPredictTimer (const ros::TimerEvent &event)
 
void cbTwist (const geometry_msgs::Twist::ConstPtr &msg)
 
void cbWatchdogReset (const std_msgs::Empty::ConstPtr &msg)
 
void cbWatchdogTimer (const ros::TimerEvent &event)
 
void diagnoseCollision (diagnostic_updater::DiagnosticStatusWrapper &stat)
 
geometry_msgs::Twist limit (const geometry_msgs::Twist &in)
 
geometry_msgs::Twist limitMaxVelocities (const geometry_msgs::Twist &in)
 
double predict (const geometry_msgs::Twist &in)
 

Protected Attributes

double acc_ [2]
 
bool allow_empty_cloud_
 
std::string base_frame_id_
 
pcl::PointCloud< pcl::PointXYZ >::Ptr cloud_accum_
 
bool cloud_clear_
 
double d_escape_
 
double d_margin_
 
diagnostic_updater::Updater diag_updater_
 
double disable_timeout_
 
double downsample_grid_
 
double dt_
 
std::string fixed_frame_id_
 
polygon footprint_p
 
float footprint_radius_
 
bool has_cloud_
 
bool has_collision_at_now_
 
bool has_twist_
 
ros::Duration hold_
 
ros::Time hold_off_
 
double hz_
 
ros::Time last_cloud_stamp_
 
ros::Time last_disable_cmd_
 
double max_values_ [2]
 
ros::NodeHandle nh_
 
std::unique_ptr< dynamic_reconfigure::Server< SafetyLimiterConfig > > parameter_server_
 
boost::recursive_mutex parameter_server_mutex_
 
ros::NodeHandle pnh_
 
ros::Publisher pub_cloud_
 
ros::Publisher pub_status_
 
ros::Publisher pub_twist_
 
double r_lim_
 
ros::Time stuck_started_since_
 
std::vector< ros::Subscribersub_clouds_
 
ros::Subscriber sub_disable_
 
ros::Subscriber sub_twist_
 
ros::Subscriber sub_watchdog_
 
tf2_ros::Buffer tfbuf_
 
tf2_ros::TransformListener tfl_
 
double timeout_
 
double tmax_
 
geometry_msgs::Twist twist_
 
double vel_ [2]
 
ros::Duration watchdog_interval_
 
bool watchdog_stop_
 
ros::Timer watchdog_timer_
 
double yaw_escape_
 
double yaw_margin_
 
double z_range_ [2]
 

Static Protected Attributes

static constexpr float EPSILON = 1e-6
 

Detailed Description

Definition at line 101 of file safety_limiter.cpp.

Constructor & Destructor Documentation

safety_limiter::SafetyLimiterNode::SafetyLimiterNode ( )
inline

Definition at line 159 of file safety_limiter.cpp.

Member Function Documentation

void safety_limiter::SafetyLimiterNode::cbCloud ( const sensor_msgs::PointCloud2::ConstPtr &  msg)
inlineprotected

Definition at line 721 of file safety_limiter.cpp.

void safety_limiter::SafetyLimiterNode::cbDisable ( const std_msgs::Bool::ConstPtr &  msg)
inlineprotected

Definition at line 755 of file safety_limiter.cpp.

void safety_limiter::SafetyLimiterNode::cbParameter ( const SafetyLimiterConfig &  config,
const uint32_t   
)
inlineprotected

Definition at line 320 of file safety_limiter.cpp.

void safety_limiter::SafetyLimiterNode::cbPredictTimer ( const ros::TimerEvent event)
inlineprotected

Definition at line 286 of file safety_limiter.cpp.

void safety_limiter::SafetyLimiterNode::cbTwist ( const geometry_msgs::Twist::ConstPtr &  msg)
inlineprotected

Definition at line 695 of file safety_limiter.cpp.

void safety_limiter::SafetyLimiterNode::cbWatchdogReset ( const std_msgs::Empty::ConstPtr &  msg)
inlineprotected

Definition at line 271 of file safety_limiter.cpp.

void safety_limiter::SafetyLimiterNode::cbWatchdogTimer ( const ros::TimerEvent event)
inlineprotected

Definition at line 276 of file safety_limiter.cpp.

void safety_limiter::SafetyLimiterNode::diagnoseCollision ( diagnostic_updater::DiagnosticStatusWrapper stat)
inlineprotected

Definition at line 763 of file safety_limiter.cpp.

geometry_msgs::Twist safety_limiter::SafetyLimiterNode::limit ( const geometry_msgs::Twist &  in)
inlineprotected

Definition at line 556 of file safety_limiter.cpp.

geometry_msgs::Twist safety_limiter::SafetyLimiterNode::limitMaxVelocities ( const geometry_msgs::Twist &  in)
inlineprotected

Definition at line 576 of file safety_limiter.cpp.

double safety_limiter::SafetyLimiterNode::predict ( const geometry_msgs::Twist &  in)
inlineprotected

Definition at line 354 of file safety_limiter.cpp.

void safety_limiter::SafetyLimiterNode::spin ( )
inline

Definition at line 256 of file safety_limiter.cpp.

Member Data Documentation

double safety_limiter::SafetyLimiterNode::acc_[2]
protected

Definition at line 127 of file safety_limiter.cpp.

bool safety_limiter::SafetyLimiterNode::allow_empty_cloud_
protected

Definition at line 146 of file safety_limiter.cpp.

std::string safety_limiter::SafetyLimiterNode::base_frame_id_
protected

Definition at line 140 of file safety_limiter.cpp.

pcl::PointCloud<pcl::PointXYZ>::Ptr safety_limiter::SafetyLimiterNode::cloud_accum_
protected

Definition at line 121 of file safety_limiter.cpp.

bool safety_limiter::SafetyLimiterNode::cloud_clear_
protected

Definition at line 122 of file safety_limiter.cpp.

double safety_limiter::SafetyLimiterNode::d_escape_
protected

Definition at line 131 of file safety_limiter.cpp.

double safety_limiter::SafetyLimiterNode::d_margin_
protected

Definition at line 130 of file safety_limiter.cpp.

diagnostic_updater::Updater safety_limiter::SafetyLimiterNode::diag_updater_
protected

Definition at line 156 of file safety_limiter.cpp.

double safety_limiter::SafetyLimiterNode::disable_timeout_
protected

Definition at line 125 of file safety_limiter.cpp.

double safety_limiter::SafetyLimiterNode::downsample_grid_
protected

Definition at line 138 of file safety_limiter.cpp.

double safety_limiter::SafetyLimiterNode::dt_
protected

Definition at line 129 of file safety_limiter.cpp.

constexpr float safety_limiter::SafetyLimiterNode::EPSILON = 1e-6
staticprotected

Definition at line 154 of file safety_limiter.cpp.

std::string safety_limiter::SafetyLimiterNode::fixed_frame_id_
protected

Definition at line 139 of file safety_limiter.cpp.

polygon safety_limiter::SafetyLimiterNode::footprint_p
protected

Definition at line 693 of file safety_limiter.cpp.

float safety_limiter::SafetyLimiterNode::footprint_radius_
protected

Definition at line 137 of file safety_limiter.cpp.

bool safety_limiter::SafetyLimiterNode::has_cloud_
protected

Definition at line 149 of file safety_limiter.cpp.

bool safety_limiter::SafetyLimiterNode::has_collision_at_now_
protected

Definition at line 151 of file safety_limiter.cpp.

bool safety_limiter::SafetyLimiterNode::has_twist_
protected

Definition at line 150 of file safety_limiter.cpp.

ros::Duration safety_limiter::SafetyLimiterNode::hold_
protected

Definition at line 143 of file safety_limiter.cpp.

ros::Time safety_limiter::SafetyLimiterNode::hold_off_
protected

Definition at line 144 of file safety_limiter.cpp.

double safety_limiter::SafetyLimiterNode::hz_
protected

Definition at line 123 of file safety_limiter.cpp.

ros::Time safety_limiter::SafetyLimiterNode::last_cloud_stamp_
protected

Definition at line 120 of file safety_limiter.cpp.

ros::Time safety_limiter::SafetyLimiterNode::last_disable_cmd_
protected

Definition at line 142 of file safety_limiter.cpp.

double safety_limiter::SafetyLimiterNode::max_values_[2]
protected

Definition at line 135 of file safety_limiter.cpp.

ros::NodeHandle safety_limiter::SafetyLimiterNode::nh_
protected

Definition at line 104 of file safety_limiter.cpp.

std::unique_ptr<dynamic_reconfigure::Server<SafetyLimiterConfig> > safety_limiter::SafetyLimiterNode::parameter_server_
protected

Definition at line 117 of file safety_limiter.cpp.

boost::recursive_mutex safety_limiter::SafetyLimiterNode::parameter_server_mutex_
protected

Definition at line 116 of file safety_limiter.cpp.

ros::NodeHandle safety_limiter::SafetyLimiterNode::pnh_
protected

Definition at line 105 of file safety_limiter.cpp.

ros::Publisher safety_limiter::SafetyLimiterNode::pub_cloud_
protected

Definition at line 107 of file safety_limiter.cpp.

ros::Publisher safety_limiter::SafetyLimiterNode::pub_status_
protected

Definition at line 108 of file safety_limiter.cpp.

ros::Publisher safety_limiter::SafetyLimiterNode::pub_twist_
protected

Definition at line 106 of file safety_limiter.cpp.

double safety_limiter::SafetyLimiterNode::r_lim_
protected

Definition at line 134 of file safety_limiter.cpp.

ros::Time safety_limiter::SafetyLimiterNode::stuck_started_since_
protected

Definition at line 152 of file safety_limiter.cpp.

std::vector<ros::Subscriber> safety_limiter::SafetyLimiterNode::sub_clouds_
protected

Definition at line 110 of file safety_limiter.cpp.

ros::Subscriber safety_limiter::SafetyLimiterNode::sub_disable_
protected

Definition at line 111 of file safety_limiter.cpp.

ros::Subscriber safety_limiter::SafetyLimiterNode::sub_twist_
protected

Definition at line 109 of file safety_limiter.cpp.

ros::Subscriber safety_limiter::SafetyLimiterNode::sub_watchdog_
protected

Definition at line 112 of file safety_limiter.cpp.

tf2_ros::Buffer safety_limiter::SafetyLimiterNode::tfbuf_
protected

Definition at line 114 of file safety_limiter.cpp.

tf2_ros::TransformListener safety_limiter::SafetyLimiterNode::tfl_
protected

Definition at line 115 of file safety_limiter.cpp.

double safety_limiter::SafetyLimiterNode::timeout_
protected

Definition at line 124 of file safety_limiter.cpp.

double safety_limiter::SafetyLimiterNode::tmax_
protected

Definition at line 128 of file safety_limiter.cpp.

geometry_msgs::Twist safety_limiter::SafetyLimiterNode::twist_
protected

Definition at line 119 of file safety_limiter.cpp.

double safety_limiter::SafetyLimiterNode::vel_[2]
protected

Definition at line 126 of file safety_limiter.cpp.

ros::Duration safety_limiter::SafetyLimiterNode::watchdog_interval_
protected

Definition at line 145 of file safety_limiter.cpp.

bool safety_limiter::SafetyLimiterNode::watchdog_stop_
protected

Definition at line 148 of file safety_limiter.cpp.

ros::Timer safety_limiter::SafetyLimiterNode::watchdog_timer_
protected

Definition at line 113 of file safety_limiter.cpp.

double safety_limiter::SafetyLimiterNode::yaw_escape_
protected

Definition at line 133 of file safety_limiter.cpp.

double safety_limiter::SafetyLimiterNode::yaw_margin_
protected

Definition at line 132 of file safety_limiter.cpp.

double safety_limiter::SafetyLimiterNode::z_range_[2]
protected

Definition at line 136 of file safety_limiter.cpp.


The documentation for this class was generated from the following file:


safety_limiter
Author(s): Atsushi Watanabe
autogenerated on Wed May 12 2021 02:20:36