dRonin  adbada4
dRonin firmware
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
paths.c File Reference

Path calculation library with common API. More...

#include "pios.h"
#include "paths.h"
#include "uavobjectmanager.h"
#include "pathdesired.h"

Go to the source code of this file.

Functions

static void path_endpoint (const float *start_point, const float *end_point, const float *cur_point, struct path_status *status)
 Compute progress towards endpoint. Deviation equals distance. More...
 
static void path_vector (const float *start_point, const float *end_point, const float *cur_point, struct path_status *status)
 Compute progress along path and deviation from it. More...
 
static void path_circle (const float *center_point, float radius, const float *cur_point, struct path_status *status, bool clockwise)
 Circle location continuously. More...
 
static void path_curve (const float *start_point, const float *end_point, float radius, const float *cur_point, struct path_status *status, bool clockwise)
 Compute progress along circular path and deviation from it. More...
 
void path_progress (const PathDesiredData *pathDesired, const float *cur_point, struct path_status *status)
 Compute progress along path and deviation from it. More...
 

Detailed Description

Path calculation library with common API.

Author
Tau Labs, http://taulabs.org, Copyright (C) 2012-2014
The OpenPilot Team, http://www.openpilot.org Copyright (C) 2012.
dRonin, http://dronin.org Copyright (C) 2015 Paths are represented by the structure PathDesired and also take in PositionActual. This library then computes the error from the path which includes the vector tangent to the path at the closest location and the distance of that vector. The distance along the path is also returned in the path_status.
See Also
The GNU Public License (GPL) Version 3

Definition in file paths.c.