ugv_random_walk.h
Go to the documentation of this file.
1 #ifndef UGV_RANDOM_WALK_H
2 #define UGV_RANDOM_WALK_H
3 
5 #include "cpswarm_msgs/ClosestBound.h"
6 #include "cpswarm_msgs/GetSector.h"
7 #include "position.h"
8 
9 using namespace std;
10 using namespace ros;
11 
15 typedef enum {
20 
25 {
26 public:
30  ugv_random_walk ();
31 
35  ~ugv_random_walk ();
36 
42 
46  void stop ();
47 
48 private:
53  bool new_direction ();
54 
59  bool reflect ();
60 
65  geometry_msgs::Pose select_goal ();
66 
71 
76 
81 
85  double step_size;
86 
90  double direction;
91 
96 };
97 
98 #endif // UGV_RANDOM_WALK_H
99 
behavior_state_t
An enumeration for the state of the behavior algorithm.
random_numbers::RandomNumberGenerator * rng
The random number generator used for selecting a random direction.
An implementation of the coverage class that allows to cover a given area with the random walk algori...
ServiceClient bound_client
Service client for determining closest mission area boundary to the current UGV position.
double step_size
The distance that the UGV travels in one step.
position pos
A helper object for position related tasks.
unsigned int step
ServiceClient clear_sector_client
Service client for determining the sector clear of obstacles.
double direction
The direction in which the UGV is traveling. It is measured in radian, clockwise starting from north...


ugv_random_walk
Author(s): Micha Sende
autogenerated on Sat Feb 6 2021 03:11:46