final

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers main.h Source File

main.h

00001 
00002 
00003 #define RATE    0.052
00004 #define Long    1.0
00005 #define ENTER   0
00006 #define EXIT    1
00007 #define MOT_NUM 4
00008 #define MOTDRIVER_WAIT  300 //ms
00009 #define BAUD_RATE       115200
00010 #define BAUD_RATE2      19200
00011 #define BUT_WAIT        0.3 //s
00012 #define ON      1
00013 #define OFF     0
00014 
00015 #define PING_ERROR  0xFFFF
00016 
00017 #define MOT1    1.0
00018 #define MOT2    1.0
00019 #define MOT3    1.0
00020 #define MOT4    1.0
00021 
00022 #define PID_BIAS    0.0
00023 #define REFERENCE   180.0
00024 #define MINIMUM     0.0
00025 #define MAXIMUM     360.0
00026 
00027 #define PID_CYCLE   0.06    //s
00028 
00029 #define P_GAIN  0.60    
00030 #define I_GAIN  0.0
00031 #define D_GAIN  0.010
00032 
00033 #define OUT_LIMIT   30.0
00034 #define MAX_POW     100
00035 #define MIN_POW     -100
00036 
00037 DigitalOut led1(LED1); 
00038 DigitalOut led2(LED2);
00039 DigitalOut led3(LED3);
00040 DigitalOut led4(LED4);
00041 BusOut mbedleds(LED4,LED3,LED2,LED1); 
00042 HMC6352 compass(p9, p10);
00043 Serial driver(p28, p27);    // tx, rx 
00044 Serial device2(p13, p14);   // tx, rx
00045 Serial pc(USBTX, USBRX);    // tx, rx 
00046 DigitalIn StartButton(p21);
00047 DigitalIn CalibEnterButton(p22);
00048 DigitalIn CalibExitButton(p23);
00049 DigitalIn EEPROMButton(p24);
00050 PID pid(P_GAIN,I_GAIN,D_GAIN, 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   power is low but perfect 20.0 0.45, 0.0, 0.010
00051 Ticker pidUpdata;
00052 Timer timer1;
00053 Timer Survtimer;
00054 LocalFileSystem local("local");  // マウントポイントを定義(ディレクトリパスになる)
00055 
00056 enum{
00057     HOME_WAIT,
00058     DIFFENCE,
00059     WARNING,
00060     HOLD,
00061 };
00062 
00063 
00064 double standTu = 0;
00065 int speed[MOT_NUM] = {0};
00066 uint8_t hold_flag = 0;
00067 uint8_t state = HOME_WAIT;
00068 
00069 float inputPID = 180.0;
00070 static double standard;
00071 float compassPID = 0.0;
00072 
00073 extern int diff;
00074 
00075 extern string StringFIN;
00076 
00077 extern uint8_t direction;
00078 extern uint8_t Distance;
00079 extern uint8_t IR_found;
00080 extern uint8_t xbee;
00081 
00082 extern void array(int,int,int,int);
00083 
00084 extern void dev_rx(void);
00085 extern void dev_tx(void);
00086 
00087 extern uint16_t ultrasonicVal[4];
00088 
00089 #define FRONT_SONIC ultrasonicVal[0]
00090 #define BACK_SONIC  ultrasonicVal[2]
00091 #define RIGHT_SONIC ultrasonicVal[1]
00092 #define LEFT_SONIC  ultrasonicVal[3]    
00093 
00094