Action to limit the forwards motion of the robot based on range sensor readings.
More...
#include <ArActionLimiterForwards.h>
Inherits ArAction.
|
| ArActionLimiterForwards (const char *name="speed limiter", double stopDistance=250, double slowDistance=1000, double slowSpeed=200, double widthRatio=1) |
| Constructor. More...
|
|
virtual ArActionDesired * | fire (ArActionDesired currentDesired) |
|
virtual ArActionDesired * | getDesired (void) |
|
virtual const ArActionDesired * | getDesired (void) const |
|
void | setParameters (double stopDistance=250, double slowDistance=1000, double slowSpeed=200, double widthRatio=1) |
|
virtual | ~ArActionLimiterForwards () |
| Destructor.
|
|
virtual void | activate (void) |
| Activate the action.
|
|
| ArAction (const char *name, const char *description="") |
| Constructor.
|
|
virtual void | deactivate (void) |
| Deactivate the action.
|
|
virtual const ArArg * | getArg (int number) const |
| Gets the numbered argument. More...
|
|
virtual ArArg * | getArg (int number) |
| Gets the numbered argument.
|
|
virtual const char * | getDescription (void) const |
| Gets the long description of the action.
|
|
virtual const char * | getName (void) const |
| Gets the name of the action.
|
|
virtual int | getNumArgs (void) const |
| Find the number of arguments this action takes.
|
|
ArRobot * | getRobot () const |
| Get the robot we are controlling, which was set by setRobot()
|
|
virtual bool | isActive (void) const |
| Returns whether the action is active or not.
|
|
virtual void | log (bool verbose=true) const |
| Log information about this action using ArLog.
|
|
virtual void | setRobot (ArRobot *robot) |
| Sets the robot this action is driving. More...
|
|
virtual | ~ArAction () |
| Desructor.
|
|
|
ArActionDesired | myDesired |
|
bool | myLastStopped |
|
double | mySlowDist |
|
double | mySlowSpeed |
|
double | myStopDist |
|
double | myWidthRatio |
|
std::map< int, ArArg > | myArgumentMap |
|
std::string | myDescription |
|
bool | myIsActive |
|
std::string | myName |
|
int | myNumArgs |
|
ArRobot * | myRobot |
| The robot we are controlling, set by the action resolver using setRobot()
|
|
|
static bool | getDefaultActivationState (void) |
| Gets the default activation state for all ArActions.
|
|
static void | setDefaultActivationState (bool defaultActivationState) |
| Sets the default activation state for all ArActions.
|
|
void | setNextArgument (ArArg const &arg) |
| Sets the argument type for the next argument (must only be used in a constructor!)
|
|
static bool | ourDefaultActivationState = true |
|
Action to limit the forwards motion of the robot based on range sensor readings.
This action uses the sensors to find a maximum forwared speed to travel at; when the range sensor (e.g. sonar or laser) detects obstacles closer than the given parameters, this action requests that the robot decelerate or stop.
- Examples:
- actionGroupExample.cpp, actsColorFollowingExample.cpp, gotoActionExample.cpp, gpsRobotTaskExample.cpp, gripperExample.cpp, teleopActionsExample.cpp, and triangleDriveToActionExample.cpp.
◆ ArActionLimiterForwards()
ArActionLimiterForwards::ArActionLimiterForwards |
( |
const char * |
name = "speed limiter" , |
|
|
double |
stopDistance = 250 , |
|
|
double |
slowDistance = 1000 , |
|
|
double |
slowSpeed = 200 , |
|
|
double |
widthRatio = 1 |
|
) |
| |
Constructor.
- Parameters
-
name | name of the action |
stopDistance | distance at which to stop (mm) |
slowDistance | distance at which to slow down (mm) |
slowSpeed | speed allowed at slowDistance, scales to 0 at slow distance (mm/sec) |
widthRatio | Ratio of the width of the box to look at to the robot radius (multiplier) |
◆ setParameters()
void ArActionLimiterForwards::setParameters |
( |
double |
stopDistance = 250 , |
|
|
double |
slowDistance = 1000 , |
|
|
double |
slowSpeed = 200 , |
|
|
double |
widthRatio = 1 |
|
) |
| |
- Parameters
-
stopDistance | distance at which to stop (mm) |
slowDistance | distance at which to slow down (mm) |
slowSpeed | speed allowed at slowDistance, scales to 0 at slow distance (mm/sec) |
widthRatio | Ratio of the width of the box to look at to the robot radius (multiplier) |
The documentation for this class was generated from the following files:
- ArActionLimiterForwards.h
- ArActionLimiterForwards.cpp