Paparazzi UAS  v5.15_devel-230-gc96ce27
Paparazzi is a free software Unmanned Aircraft System.
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
rover_guidance.h File Reference

Basic guidance for rover. More...

#include "math/pprz_algebra_float.h"
#include "generated/airframe.h"
#include "std.h"
+ Include dependency graph for rover_guidance.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  RoverGuidanceSetpoint
struct  RoverGuidancePID
struct  RoverGuidanceControl
struct  RoverGuidance


void rover_guidance_init (void)
void rover_guidance_periodic (void)
void rover_guidance_run (float *heading_sp)
void rover_guidance_enter (void)
void rover_guidance_set_speed_igain (uint32_t igain)
void rover_guidance_set_turn_igain (uint32_t igain)


struct RoverGuidance rover_guidance

Detailed Description

Basic guidance for rover.

Implement standard PID control loop to track a navigation target. Guidance "modes" are using the autopilot generation with the "guidance" state machine.

Definition in file rover_guidance.h.

Data Structure Documentation

struct RoverGuidanceSetpoint

Definition at line 36 of file rover_guidance.h.

+ Collaboration diagram for RoverGuidanceSetpoint:
Data Fields
float heading heading setpoint
uint8_t mask bit 5: vx & vy, bit 6: vz, bit 7: vyaw
struct FloatVect2 pos position setpoint in NED.

position setpoint

struct FloatVect2 speed speed setpoint
struct RoverGuidancePID

Definition at line 46 of file rover_guidance.h.

Data Fields
float d
float d_err
float err
float i
float p
float sum_err
struct RoverGuidanceControl

Definition at line 55 of file rover_guidance.h.

Data Fields
float motor_speed
float motor_turn
struct RoverGuidance

Definition at line 60 of file rover_guidance.h.

+ Collaboration diagram for RoverGuidance:
Data Fields
struct RoverGuidanceControl cmd commands
struct RoverGuidanceSetpoint sp setpoints
struct RoverGuidancePID speed_pid motor speed controller
struct RoverGuidancePID turn_pid turn rate controller

Function Documentation

void rover_guidance_enter ( void  )

Definition at line 124 of file rover_guidance.c.

References RoverGuidanceSetpoint::heading, RoverGuidanceSetpoint::mask, FloatEulers::psi, rover_guidance, RoverGuidance::sp, and stateGetNedToBodyEulers_f().

+ Here is the call graph for this function:

void rover_guidance_periodic ( void  )

Definition at line 67 of file rover_guidance.c.

void rover_guidance_set_speed_igain ( uint32_t  igain)
void rover_guidance_set_turn_igain ( uint32_t  igain)

Variable Documentation