a

Dependencies:   HMC6352 PID mbed

main.h

Committer:
akudohune
Date:
2013-04-19
Revision:
0:8215f0743d86

File content as of revision 0:8215f0743d86:



#define RATE    0.052
#define Long    1.0
#define ENTER   0
#define EXIT    1
#define MOT_NUM 4
#define MOTDRIVER_WAIT  300 //ms
#define BAUD_RATE       115200
#define ON      1
#define OFF     0

#define PING_ERROR  0xFFFF

#define MOT1    1.0
#define MOT2    1.0
#define MOT3    1.0
#define MOT4    1.0

#define OUT_LIMIT   30.0
#define MAX_POW     100
#define MIN_POW     -100

DigitalOut led1(LED1); 
DigitalOut led2(LED2);
DigitalOut led3(LED3);
DigitalOut led4(LED4);
//BusOut mbedleds(LED4,LED3,LED2,LED1); 
HMC6352 compass(p9, p10);
Serial driver(p28, p27); // tx, rx 
Serial device2(p13, p14);  // tx, rx
Serial pc(USBTX, USBRX); // tx, rx 
DigitalIn StartButton(p21);
DigitalIn CalibEnterButton(p22);
DigitalIn CalibExitButton(p23);
DigitalIn EEPROMButton(p24);
PID pid(0.45, 1.0, 0.013, RATE);      //battery is low power version 30.0 0.58 1.0 0.015    battery is high power version   30.0 0.42, 1.0, 0.013
Ticker pidUpdata;
Timer timer1;
LocalFileSystem local("local");  // マウントポイントを定義(ディレクトリパスになる)

enum{
    HOME_WAIT,
    DIFFENCE,
    WARNING
};



int speed[MOT_NUM] = {0};
uint8_t state = HOME_WAIT;

static float inputPID = 180.0;
static double standard;
static float compassPID = 0.0;


extern string StringFIN;

extern uint8_t direction;
extern uint8_t Distance;
extern uint8_t IR_found;

extern void PidUpdata(void);
extern void array(int,int,int,int);

extern void dev_rx(void);
extern void dev_tx(void);

extern float ultrasonicVal[4];

#define BACK_SONIC  ultrasonicVal[2]
#define RIGHT_SONIC ultrasonicVal[1]
#define LEFT_SONIC  ultrasonicVal[3]