Project

General

Profile

Statistics
| Revision:

root / branches / encoders / code / behaviors / spline / server / internals.h @ 1301

History | View | Annotate | Download (748 Bytes)

1
#ifndef INTERNALS_H
2
#define INTERNALS_H
3

    
4
#define LS 0
5
#define LD 1
6
#define RS 2
7
#define RD 3
8

    
9
#define FORWARD 1
10
#define BACKWARD 0
11
#define SENDER 1
12
#define RECEIVER 0
13

    
14
#define INFINITE -1
15
#define L 10.0
16

    
17
#define DT .1
18

    
19
#define DIST(x1, y1, x2, y2)    (sqrt(pow(((x1)-(x2)), 2) + pow(((y1)-(y2)), 2)))
20
#define LOOK_AHEAD              1
21
#define LOOK_AHEAD_ERR_THRES    0.05
22
#define VELOCITY                1
23

    
24
typedef struct state
25
{
26
        double x;
27
        double y;
28
        double theta;
29

    
30
        short vl;
31
        short vr;
32
        
33
        int vl_ref;
34
        int vr_ref;
35
} state;
36

    
37
typedef struct {
38
    double *x;
39
    double *y;
40
} curv_t;
41

    
42
state robot;
43

    
44
void updatePosition();
45

    
46
void setAttriv(int file);
47

    
48
void pos_control_curv(curv_t *ref, int len);
49

    
50
void velocityControl(double*, double*);
51
 
52

    
53

    
54
#endif