Paparazzi UAS  v5.12_stable-4-g9b43e9b
Paparazzi is a free software Unmanned Aircraft System.
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
obstacle_avoidance.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2015 Roland + Clint
3  *
4  * This file is part of paparazzi.
5  *
6  * paparazzi is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation; either version 2, or (at your option)
9  * any later version.
10  *
11  * paparazzi is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with paparazzi; see the file COPYING. If not, write to
18  * the Free Software Foundation, 59 Temple Place - Suite 330,
19  * Boston, MA 02111-1307, USA.
20  *
21  */
22 
27 #ifndef READ_MATRIX_SERIAL_H
28 #define READ_MATRIX_SERIAL_H
29 
30 extern void serial_init(void);
31 extern void serial_update(void);
32 extern void serial_start(void);
33 void setAnglesMeasurements(float *anglesMeasurements, float *centersensorRad, float *fieldOfViewRad,
34  uint16_t *size_matrix_local);
35 
36 extern void pingpong_euler(float *distances_hor, float *horizontalAnglesMeasurements,
37  int horizontalAmountOfMeasurements, float attitude_reference_pitch, float attitude_reference_roll, float dist_treshold);
38 extern void matrix_2_pingpong(float *distancesMeters, uint16_t *size_matrix, float *distances_hor);
39 
40 //functions CN
41 extern void CN_matrix_Kalman_filter(void);
42 extern void CN_matrix_butterworth(void);
43 extern void CN_calculate_target(void);
44 extern void CN_potential_heading(void);
45 extern void CN_potential_velocity(void);
46 extern void CN_vector_velocity(void);
47 extern void CN_vector_escape_velocity(void);
48 extern void CN_escape_velocity(void);
49 
50 //variables for settings
51 //Vector Method
52 extern float F1;
53 extern float F2;
54 extern float Cfreq;
55 extern float Ko;
56 extern float Kg;
57 extern float Dist_offset;
58 extern int8_t dis_treshold;
59 extern float dx_ref;
60 extern float dy_ref;
61 //Potential Method
62 extern float K_goal;
63 extern float K_obst;
64 extern float b_damp;
65 extern float c1_oa;
66 extern float c2_oa;
67 extern float c3_oa;
68 extern float c4_oa;
69 extern float c5_oa;
70 extern float kv;
71 extern float epsilon;
72 
73 #endif
unsigned short uint16_t
Definition: types.h:16
float Cfreq
float Ko
int8_t dis_treshold
void serial_start(void)
float epsilon
float distances_hor[AVOIDANCES_DISTANCES_HOR_COUNT]
float b_damp
void serial_update(void)
void pingpong_euler(float *distances_hor, float *horizontalAnglesMeasurements, int horizontalAmountOfMeasurements, float attitude_reference_pitch, float attitude_reference_roll, float dist_treshold)
float F2
float dy_ref
uint16_t size_matrix[]
float Dist_offset
void serial_init(void)
void matrix_2_pingpong(float *distancesMeters, uint16_t *size_matrix, float *distances_hor)
float c3_oa
void CN_potential_velocity(void)
void CN_calculate_target(void)
float K_obst
float F1
float dx_ref
float dist_treshold
void CN_matrix_butterworth(void)
float c2_oa
float kv
void CN_escape_velocity(void)
void setAnglesMeasurements(float *anglesMeasurements, float *centersensorRad, float *fieldOfViewRad, uint16_t *size_matrix_local)
void CN_potential_heading(void)
float K_goal
float c1_oa
float c4_oa
float Kg
signed char int8_t
Definition: types.h:15
void CN_vector_velocity(void)
float c5_oa
void CN_vector_escape_velocity(void)
void CN_matrix_Kalman_filter(void)