#include <ArActionBumpers.h>
Inheritance diagram for ArActionBumpers:
Public Member Functions | |
ArActionBumpers (const char *name="bumpers", double backOffSpeed=100, int backOffTime=3000, int turnTime=3000, bool setMaximums=false) | |
Constructor. | |
double | findDegreesToTurn (int bumpValue, int whichBumper) |
virtual ArActionDesired * | fire (ArActionDesired currentDesired) |
Fires the action, returning what the action wants to do. | |
virtual ArActionDesired * | getDesired (void) |
Gets what this action wants to do (for display purposes). | |
virtual | ~ArActionBumpers () |
Destructor. | |
Protected Attributes | |
double | myBackOffSpeed |
int | myBackOffTime |
int | myBumpMask |
ArActionDesired | myDesired |
bool | myFiring |
double | myHeading |
bool | mySetMaximums |
double | mySpeed |
ArTime | myStartBack |
int | myStopTime |
int | myTurnTime |
ArTime | stoppedSince |
This class basically responds to the bumpers the robot has, what the activity things the robot has is decided by the param file. If the robot is going forwards and bumps into something with the front bumpers, it will back up and turn. If the robot is going backwards and bumps into something with the rear bumpers then the robot will move forward and turn.
Definition at line 44 of file ArActionBumpers.h.
|
Constructor.
Definition at line 38 of file ArActionBumpers.cpp. References ArAction::setNextArgument(). |
|
Fires the action, returning what the action wants to do.
Implements ArAction. Definition at line 111 of file ArActionBumpers.cpp. References ArMath::addAngle(), ArMath::fabs(), ArRobot::getStallValue(), ArRobot::getTh(), ArRobot::getVel(), ArRobot::hasFrontBumpers(), ArRobot::hasRearBumpers(), ArTime::mSecSince(), ArActionDesired::reset(), ArActionDesired::setDeltaHeading(), ArActionDesired::setHeading(), ArActionDesired::setMaxNegVel(), ArActionDesired::setMaxVel(), ArTime::setToNow(), ArActionDesired::setVel(), and ArMath::subAngle(). |