Paparazzi UAS v7.0_unstable
Paparazzi is a free software Unmanned Aircraft System.
Loading...
Searching...
No Matches
rover_guidance_steering.c File Reference
#include "firmwares/rover/guidance/rover_guidance_steering.h"
#include "generated/airframe.h"
#include "generated/autopilot_core_guidance.h"
#include "autopilot.h"
#include "state.h"
#include "filters/pid.h"
+ Include dependency graph for rover_guidance_steering.c:

Go to the source code of this file.

Macros

#define AUTOPILOT_CORE_GUIDANCE_C
 
#define ROVER_GUIDANCE_POS_KP   1.f
 Mandatory dependencies header.
 
#define ROVER_GUIDANCE_HEADING_KP   1.f
 
#define ROVER_GUIDANCE_SPEED_KP   10.f
 
#define ROVER_GUIDANCE_SPEED_KI   100.f
 
#define ROVER_GUIDANCE_MAX_POS_ERR   10.f
 
#define ROVER_GUIDANCE_MAX_SPEED   10.f
 
#define ROVER_GUIDANCE_PROXIMITY_DISTANCE   2.f
 

Functions

void rover_guidance_steering_init (void)
 INIT function.
 
void rover_guidance_steering_periodic (void)
 
void rover_guidance_steering_heading_ctrl (float omega)
 CTRL functions.
 
void rover_guidance_steering_speed_ctrl (void)
 
void rover_guidance_steering_setpoints (struct EnuCoor_f pos_sp, float *heading_sp)
 
void rover_guidance_steering_pid_reset (void)
 PID RESET function.
 
void rover_guidance_steering_kill (void)
 
void rover_guidance_steering_set_speed_pgain (float pgain)
 
void rover_guidance_steering_set_speed_igain (float igain)
 

Variables

rover_ctrl guidance_control
 
static struct PID_f rover_pid
 
static float time_step
 

Macro Definition Documentation

◆ AUTOPILOT_CORE_GUIDANCE_C

#define AUTOPILOT_CORE_GUIDANCE_C

Definition at line 23 of file rover_guidance_steering.c.

◆ ROVER_GUIDANCE_HEADING_KP

#define ROVER_GUIDANCE_HEADING_KP   1.f

Definition at line 41 of file rover_guidance_steering.c.

◆ ROVER_GUIDANCE_MAX_POS_ERR

#define ROVER_GUIDANCE_MAX_POS_ERR   10.f

Definition at line 53 of file rover_guidance_steering.c.

◆ ROVER_GUIDANCE_MAX_SPEED

#define ROVER_GUIDANCE_MAX_SPEED   10.f

Definition at line 57 of file rover_guidance_steering.c.

◆ ROVER_GUIDANCE_POS_KP

#define ROVER_GUIDANCE_POS_KP   1.f

Mandatory dependencies header.

Definition at line 37 of file rover_guidance_steering.c.

◆ ROVER_GUIDANCE_PROXIMITY_DISTANCE

#define ROVER_GUIDANCE_PROXIMITY_DISTANCE   2.f

Definition at line 61 of file rover_guidance_steering.c.

◆ ROVER_GUIDANCE_SPEED_KI

#define ROVER_GUIDANCE_SPEED_KI   100.f

Definition at line 49 of file rover_guidance_steering.c.

◆ ROVER_GUIDANCE_SPEED_KP

#define ROVER_GUIDANCE_SPEED_KP   10.f

Definition at line 45 of file rover_guidance_steering.c.

Function Documentation

◆ rover_guidance_steering_heading_ctrl()

void rover_guidance_steering_heading_ctrl ( float  omega)

CTRL functions.

Definition at line 98 of file rover_guidance_steering.c.

References BoundDelta, BoundSpeed, rover_ctrl::cmd, sr_cmd_t::delta, DRIVE_SHAFT_DISTANCE, foo, guidance_control, and stateGetHorizontalSpeedNorm_f().

+ Here is the call graph for this function:

◆ rover_guidance_steering_init()

◆ rover_guidance_steering_kill()

void rover_guidance_steering_kill ( void  )

◆ rover_guidance_steering_periodic()

void rover_guidance_steering_periodic ( void  )

Definition at line 90 of file rover_guidance_steering.c.

References foo.

◆ rover_guidance_steering_pid_reset()

void rover_guidance_steering_pid_reset ( void  )

PID RESET function.

Definition at line 151 of file rover_guidance_steering.c.

References reset_pid_f(), and rover_pid.

+ Here is the call graph for this function:

◆ rover_guidance_steering_set_speed_igain()

void rover_guidance_steering_set_speed_igain ( float  igain)

Definition at line 168 of file rover_guidance_steering.c.

References guidance_control, rover_ctrl::ki, rover_ctrl::kp, rover_pid, set_gains_pid_f(), and PID_f::sum.

+ Here is the call graph for this function:

◆ rover_guidance_steering_set_speed_pgain()

void rover_guidance_steering_set_speed_pgain ( float  pgain)

Definition at line 162 of file rover_guidance_steering.c.

References guidance_control, rover_ctrl::ki, rover_ctrl::kp, rover_pid, and set_gains_pid_f().

+ Here is the call graph for this function:

◆ rover_guidance_steering_setpoints()

◆ rover_guidance_steering_speed_ctrl()

void rover_guidance_steering_speed_ctrl ( void  )

Variable Documentation

◆ guidance_control

◆ rover_pid

◆ time_step

float time_step
static