Paparazzi UAS  v5.14.0_stable-0-g3f680d1
Paparazzi is a free software Unmanned Aircraft System.
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
obstacle_avoidance.h File Reference

Obstacle avoidance methods. More...

+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

void serial_init (void)
 
void serial_update (void)
 
void serial_start (void)
 
void setAnglesMeasurements (float *anglesMeasurements, float *centersensorRad, float *fieldOfViewRad, uint16_t *size_matrix_local)
 
void pingpong_euler (float *distances_hor, float *horizontalAnglesMeasurements, int horizontalAmountOfMeasurements, float attitude_reference_pitch, float attitude_reference_roll, float dist_treshold)
 
void matrix_2_pingpong (float *distancesMeters, uint16_t *size_matrix, float *distances_hor)
 
void CN_matrix_Kalman_filter (void)
 
void CN_matrix_butterworth (void)
 
void CN_calculate_target (void)
 
void CN_potential_heading (void)
 
void CN_potential_velocity (void)
 
void CN_vector_velocity (void)
 
void CN_vector_escape_velocity (void)
 
void CN_escape_velocity (void)
 

Variables

float F1
 
float F2
 
float Cfreq
 
float Ko
 
float Kg
 
float Dist_offset
 
int8_t dis_treshold
 
float dx_ref
 
float dy_ref
 
float K_goal
 
float K_obst
 
float b_damp
 
float c1_oa
 
float c2_oa
 
float c3_oa
 
float c4_oa
 
float c5_oa
 
float kv
 
float epsilon
 

Detailed Description

Obstacle avoidance methods.

Definition in file obstacle_avoidance.h.

Function Documentation

void CN_calculate_target ( void  )

Definition at line 321 of file obstacle_avoidance.c.

References current_pos, dx_ref, dy_ref, heading_goal_f, OA_method_flag, pos_diff, FloatEulers::psi, stateGetNedToBodyEulers_f(), stateGetPositionNed_f(), target, waypoint_rot, FloatVect2::x, NedCoor_f::x, FloatVect2::y, and NedCoor_f::y.

Referenced by serial_update().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void CN_escape_velocity ( void  )
void CN_matrix_butterworth ( void  )

Definition at line 295 of file obstacle_avoidance.c.

References butter_old, READimageBuffer_old, and size_matrix.

void CN_matrix_Kalman_filter ( void  )

Definition at line 263 of file obstacle_avoidance.c.

References A_kal, H_kal, Pest_new, Q_kal, R_kal, size_matrix, and Xest_new.

void CN_potential_heading ( void  )
void CN_potential_velocity ( void  )
void matrix_2_pingpong ( float *  distancesMeters,
uint16_t size_matrix,
float *  distances_hor 
)

Definition at line 237 of file obstacle_avoidance.c.

References AVOIDANCES_DISTANCES_HOR_COUNT.

Referenced by serial_update().

+ Here is the caller graph for this function:

void pingpong_euler ( float *  distances_hor,
float *  horizontalAnglesMeasurements,
int  horizontalAmountOfMeasurements,
float  attitude_reference_pitch,
float  attitude_reference_roll,
float  dist_treshold 
)

Definition at line 357 of file obstacle_avoidance.c.

References ref_pitch, and ref_roll.

Referenced by serial_update().

+ Here is the caller graph for this function:

void serial_start ( void  )

Definition at line 159 of file obstacle_avoidance.c.

void setAnglesMeasurements ( float *  anglesMeasurements,
float *  centersensorRad,
float *  fieldOfViewRad,
uint16_t size_matrix_local 
)

Definition at line 164 of file obstacle_avoidance.c.

Referenced by serial_update().

+ Here is the caller graph for this function:

Variable Documentation

float b_damp

Definition at line 110 of file obstacle_avoidance.c.

Referenced by CN_potential_heading(), and CN_potential_velocity().

float c1_oa

Definition at line 113 of file obstacle_avoidance.c.

Referenced by CN_potential_heading(), and CN_potential_velocity().

float c2_oa

Definition at line 114 of file obstacle_avoidance.c.

Referenced by CN_potential_heading(), and CN_potential_velocity().

float c3_oa

Definition at line 115 of file obstacle_avoidance.c.

Referenced by CN_potential_heading(), and CN_potential_velocity().

float c4_oa

Definition at line 116 of file obstacle_avoidance.c.

Referenced by CN_potential_heading(), and CN_potential_velocity().

float c5_oa

Definition at line 117 of file obstacle_avoidance.c.

float Cfreq

Definition at line 101 of file obstacle_avoidance.c.

Referenced by CN_vector_escape_velocity(), and CN_vector_velocity().

int8_t dis_treshold

Definition at line 105 of file obstacle_avoidance.c.

float Dist_offset

Definition at line 104 of file obstacle_avoidance.c.

Referenced by CN_vector_escape_velocity(), and CN_vector_velocity().

float dx_ref

Definition at line 80 of file obstacle_avoidance.c.

Referenced by CN_calculate_target().

float dy_ref

Definition at line 81 of file obstacle_avoidance.c.

Referenced by CN_calculate_target().

float epsilon

Definition at line 119 of file obstacle_avoidance.c.

Referenced by CN_potential_heading(), and CN_potential_velocity().

float F1

Definition at line 99 of file obstacle_avoidance.c.

Referenced by CN_vector_escape_velocity(), and CN_vector_velocity().

float F2

Definition at line 100 of file obstacle_avoidance.c.

Referenced by CN_vector_escape_velocity(), and CN_vector_velocity().

float K_goal

Definition at line 111 of file obstacle_avoidance.c.

Referenced by CN_potential_heading(), and CN_potential_velocity().

float K_obst

Definition at line 112 of file obstacle_avoidance.c.

Referenced by CN_potential_heading(), and CN_potential_velocity().

float Kg

Definition at line 103 of file obstacle_avoidance.c.

Referenced by CN_vector_escape_velocity(), and CN_vector_velocity().

float Ko

Definition at line 102 of file obstacle_avoidance.c.

Referenced by CN_vector_escape_velocity(), and CN_vector_velocity().

float kv

Definition at line 118 of file obstacle_avoidance.c.

Referenced by CN_potential_heading(), and CN_potential_velocity().