LRT14
1.0
|
Drives the robot in a calculated arc turn. To get a turn velocity from a forward velocity and a desired arc radius, use the following formula: Turn = Forward * Robot Width / (2 * Desired Radius), derived from arc radius formula (Desired Radius = Robot Width / (1 - Slower Wheel / Faster Wheel) - Robot Width / 2, where Slower Wheel = Forward - Turn and Faster Wheel = Forward + Turn). Turn is always the same sign as Forward, so add a sign to velocitySetpoint. More...
#include <Arc.h>
Public Member Functions | |
bool | Start () |
Starts the task. | |
bool | Run () |
Runs one cycle of the task. | |
bool | Abort () |
Aborts the task. | |
void | AllocateResources () |
Calls AllocateResource() on resources used in by this task. | |
void | Configure () |
Overload this function to apply new configuration when configuration is loaded. | |
![]() | |
Automation (const char *name, bool requiresAbortCycles=false, bool queueIfBlocked=false, bool restartable=false) | |
Creates an automation routine. | |
bool | Update () |
Updates the task for one cycle, including calling Run(). | |
bool | StartAutomation (Event *trigger=NULL) |
Tries to start this task. | |
bool | AbortAutomation (Event *trigger=NULL) |
Tries to aborts this task. | |
void | ContinueAutomation (Event *trigger) |
Sets the task to continue. | |
bool | CheckResources () |
Allocates resources used by this task. Checks if this task is blocked. | |
void | DeallocateResources () |
Clears all resources allocated by this task. | |
bool | IsRestartable () |
Gets whether a task can be restarted (started again when already running). | |
bool | QueueIfBlocked () |
Gets whether a task should continue to be started if blocked. | |
bool | RequiresAbortCycles () |
Gets whether a task requires running cycles before aborting. | |
const char * | GetName () |
Gets the name of the automation routine. | |
Additional Inherited Members | |
![]() | |
static bool | GetAllocation (ControlResource::Enum resource) |
Gets the task that allocated a resource. | |
![]() | |
bool | AllocateResource (ControlResource::Enum resource) |
Allocates a resource to be used. | |
bool | Aborting () |
Gets whether this task is aborting (abort event fired and requires abort cycles). | |
bool | Continued () |
Returns whether this task has been continued. | |
Event * | GetStartEvent () |
Returns the event that started this task. | |
Event * | GetAbortEvent () |
Returns the event that aborted this task. | |
Event * | GetContinueEvent () |
Returns the event that continued this task. | |
Drives the robot in a calculated arc turn. To get a turn velocity from a forward velocity and a desired arc radius, use the following formula: Turn = Forward * Robot Width / (2 * Desired Radius), derived from arc radius formula (Desired Radius = Robot Width / (1 - Slower Wheel / Faster Wheel) - Robot Width / 2, where Slower Wheel = Forward - Turn and Faster Wheel = Forward + Turn). Turn is always the same sign as Forward, so add a sign to velocitySetpoint.
|
virtual |
Aborts the task.
Implements Automation.
|
virtual |
Runs one cycle of the task.
Implements Automation.
|
virtual |
Starts the task.
Implements Automation.