Zachary Sunberg / Mbed 2 deprecated SAILORSbot

Dependencies:   mbed

Committer:
zsunberg
Date:
Thu Aug 06 06:30:50 2015 +0000
Revision:
30:ea511cd81f43
Parent:
29:6aa49bba0d81
Child:
31:e36b7722df56
pid working

Who changed what in which revision?

UserRevisionLine numberNew contents of line
zsunberg 0:9f058fe8cab5 1 #include <stdio.h>
zsunberg 0:9f058fe8cab5 2 #include <stdlib.h>
zsunberg 0:9f058fe8cab5 3 #include "mbed.h"
zsunberg 0:9f058fe8cab5 4 #include "m3pi.h"
zsunberg 0:9f058fe8cab5 5
zsunberg 0:9f058fe8cab5 6 #define BUF_SIZE 128
zsunberg 0:9f058fe8cab5 7 #define ERROR 1
zsunberg 0:9f058fe8cab5 8 #define OK 0
zsunberg 0:9f058fe8cab5 9
zsunberg 0:9f058fe8cab5 10 //max/min speed
zsunberg 30:ea511cd81f43 11 #define MAX 1.0
zsunberg 0:9f058fe8cab5 12 #define MIN 0.1
zsunberg 0:9f058fe8cab5 13
zsunberg 0:9f058fe8cab5 14 DigitalOut xbeeReset(p26); //reset on Xbee
zsunberg 0:9f058fe8cab5 15
zsunberg 0:9f058fe8cab5 16 Serial pc(USBTX, USBRX); // tx, rx, interface with PC
zsunberg 0:9f058fe8cab5 17 Serial xbee(p28, p27); //tx, rx, interface with xbee
zsunberg 0:9f058fe8cab5 18
zsunberg 0:9f058fe8cab5 19 DigitalOut led1(LED1);
zsunberg 0:9f058fe8cab5 20 DigitalOut led2(LED2);
zsunberg 0:9f058fe8cab5 21 DigitalOut led3(LED3);
zsunberg 0:9f058fe8cab5 22 DigitalOut led4(LED4);
zsunberg 0:9f058fe8cab5 23
zsunberg 20:f0ca65974329 24 m3pi pi;
zsunberg 20:f0ca65974329 25
zsunberg 20:f0ca65974329 26 int mode;
zsunberg 20:f0ca65974329 27 #define MANUAL_MODE 0
zsunberg 20:f0ca65974329 28 #define LINE_FOLLOW_MODE 1
zsunberg 23:55f8b1abbf99 29 #define TURN_MODE 2
zsunberg 20:f0ca65974329 30
Zachary Sunberg 25:c4577daa425a 31 bool comm_time;
Zachary Sunberg 25:c4577daa425a 32
zsunberg 20:f0ca65974329 33 volatile double leftspeed;
zsunberg 20:f0ca65974329 34 volatile double rightspeed;
zsunberg 30:ea511cd81f43 35 volatile double line_position;
zsunberg 20:f0ca65974329 36
zsunberg 30:ea511cd81f43 37 char received[1024];
zsunberg 20:f0ca65974329 38 int r_index;
zsunberg 20:f0ca65974329 39 int sensors[5];
zsunberg 20:f0ca65974329 40
Zachary Sunberg 29:6aa49bba0d81 41 // GAINS/Params
zsunberg 20:f0ca65974329 42 //////////////////////////////
zsunberg 30:ea511cd81f43 43 double k_p = 0.3;
zsunberg 30:ea511cd81f43 44 double k_i = 0.0;
zsunberg 30:ea511cd81f43 45 double k_d = 0.0;
zsunberg 30:ea511cd81f43 46 double speed = 0.35;
zsunberg 20:f0ca65974329 47 //////////////////////////////
zsunberg 20:f0ca65974329 48
zsunberg 20:f0ca65974329 49 Ticker communication;
zsunberg 20:f0ca65974329 50 Ticker controls;