dRonin
adbada4
dRonin firmware
|
Files | |
file | pathplanner.c |
Simple path planner which activates a sequence of waypoints. | |
Macros | |
#define | STACK_SIZE_BYTES 1024 |
#define | TASK_PRIORITY PIOS_THREAD_PRIO_LOW |
#define | MAX_QUEUE_SIZE 2 |
#define | UPDATE_RATE_MS 20 |
Functions | |
static void | advanceWaypoint () |
static void | activateWaypoint (int idx) |
static void | pathPlannerTask (void *parameters) |
static void | process_pp_settings () |
static void | waypointsUpdated (const UAVObjEvent *ev, void *ctx, void *obj, int len) |
static void | pathStatusUpdated (const UAVObjEvent *ev, void *ctx, void *obj, int len) |
static void | createPathBox () |
static void | createPathLogo () |
int32_t | PathPlannerStart () |
int32_t | PathPlannerInitialize () |
static void | holdCurrentPosition () |
static void | holdPosition (uint32_t idx) |
static bool | waypointValid (int32_t idx) |
Variables | |
static struct pios_thread * | taskHandle |
static struct pios_queue * | queue |
static PathPlannerSettingsData | pathPlannerSettings |
static WaypointActiveData | waypointActive |
static WaypointData | waypoint |
static bool | path_completed |
static bool | module_enabled |
static volatile bool | pathplanner_config_dirty |
static int32_t | active_waypoint = -1 |
Store which waypoint has actually been pushed into PathDesired. More... | |
static int32_t | previous_waypoint = -1 |
Store the previous waypoint which is used to determine the path trajectory. More... | |
#define MAX_QUEUE_SIZE 2 |
Definition at line 46 of file pathplanner.c.
#define STACK_SIZE_BYTES 1024 |
Definition at line 44 of file pathplanner.c.
#define TASK_PRIORITY PIOS_THREAD_PRIO_LOW |
Definition at line 45 of file pathplanner.c.
#define UPDATE_RATE_MS 20 |
Definition at line 47 of file pathplanner.c.
|
static |
This method is called when a new waypoint is activated
Note: The way this is called, it runs in an object callback. This is safe because the execution time is extremely short. If it starts to take a longer time then the main task look should monitor a flag (such as the waypoint changing) and call this method from the main task.
Definition at line 365 of file pathplanner.c.
|
static |
Increment the waypoint index which triggers the active waypoint method
Definition at line 333 of file pathplanner.c.
|
static |
Definition at line 460 of file pathplanner.c.
|
static |
Definition at line 507 of file pathplanner.c.
|
static |
Initial position hold at current position. This is used at the end of a path or in the case of a problem.
Definition at line 262 of file pathplanner.c.
|
static |
Hold position at a specified waypoint. Used when we reach the end of valid waypoints.
Definition at line 287 of file pathplanner.c.
int32_t PathPlannerInitialize | ( | ) |
Module initialization
Definition at line 101 of file pathplanner.c.
int32_t PathPlannerStart | ( | ) |
Module initialization
Definition at line 84 of file pathplanner.c.
|
static |
Module task
Definition at line 143 of file pathplanner.c.
|
static |
When the PathStatus is updated indicate a new one is available to consume
Definition at line 243 of file pathplanner.c.
|
static |
Definition at line 440 of file pathplanner.c.
|
static |
On changed waypoints or active waypoint update position desired if we are in charge
Definition at line 222 of file pathplanner.c.
|
static |
Definition at line 311 of file pathplanner.c.
|
static |
Store which waypoint has actually been pushed into PathDesired.
Definition at line 78 of file pathplanner.c.
|
static |
Definition at line 73 of file pathplanner.c.
|
static |
Definition at line 57 of file pathplanner.c.
|
static |
Definition at line 75 of file pathplanner.c.
|
static |
Definition at line 54 of file pathplanner.c.
|
static |
Store the previous waypoint which is used to determine the path trajectory.
Definition at line 80 of file pathplanner.c.
|
static |
Definition at line 53 of file pathplanner.c.
|
static |
Definition at line 52 of file pathplanner.c.
|
static |
Definition at line 56 of file pathplanner.c.
|
static |
Definition at line 55 of file pathplanner.c.