Project

General

Profile

Statistics
| Revision:

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

History | View | Annotate | Download (798 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 LEFT 0
10
#define RIGHT 1
11

    
12
#define FORWARD 1
13
#define BACKWARD 0
14
#define SENDER 1
15
#define RECEIVER 0
16

    
17
#define INFINITE -1
18
#define L 13.5
19

    
20
#define DT .102
21

    
22
#define DIST(x1, y1, x2, y2)    (sqrt(((x1)-(x2))*((x1)-(x2)) + ((y1)-(y2))*((y1)-(y2))))
23
#define LOOK_AHEAD              30
24
#define LOOK_AHEAD_ERR_THRES    5
25
#define VELOCITY                20
26

    
27
typedef struct state
28
{
29
        double x;
30
        double y;
31
        double theta;
32

    
33
        double vl;
34
        double vr;
35
        
36
        double vl_ref;
37
        double vr_ref;
38
} state;
39

    
40
typedef struct {
41
    double *x;
42
    double *y;
43
} curv_t;
44

    
45
state robot;
46

    
47
void updatePosition();
48

    
49
void setAttriv(int file);
50

    
51
void pos_control_curve(curv_t *ref, int len);
52

    
53
void velocityControl(double*, double*);
54
 
55

    
56

    
57
#endif