Anon Anon
/
MicroMousewithFloodFill
Updated with the Algorithm
Fork of MM_rat_Assignment4-newwest by
main.cpp@1:fb18b43590e6, 2017-11-21 (annotated)
- Committer:
- Showboo
- Date:
- Tue Nov 21 23:06:09 2017 +0000
- Revision:
- 1:fb18b43590e6
- Parent:
- 0:f7fc09f9c7ce
- Child:
- 2:7da65637e512
Update
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Showboo | 0:f7fc09f9c7ce | 1 | #include "mbed.h" |
Showboo | 0:f7fc09f9c7ce | 2 | #include "QEI.h" |
Showboo | 0:f7fc09f9c7ce | 3 | #include "header.h" |
Showboo | 0:f7fc09f9c7ce | 4 | |
Showboo | 0:f7fc09f9c7ce | 5 | inline void pulse_ir(int in){ |
Showboo | 1:fb18b43590e6 | 6 | for(int i = 0; i < 4; i++){ |
Showboo | 0:f7fc09f9c7ce | 7 | LeftIR = in; |
Showboo | 1:fb18b43590e6 | 8 | |
Showboo | 0:f7fc09f9c7ce | 9 | FrontLeftIR = in; |
Showboo | 0:f7fc09f9c7ce | 10 | FrontRightIR = in; |
Showboo | 0:f7fc09f9c7ce | 11 | RightIR = in; |
Showboo | 1:fb18b43590e6 | 12 | } |
Showboo | 0:f7fc09f9c7ce | 13 | } |
Showboo | 0:f7fc09f9c7ce | 14 | |
Showboo | 0:f7fc09f9c7ce | 15 | int main() { |
Showboo | 0:f7fc09f9c7ce | 16 | pid lman, rman; |
Showboo | 1:fb18b43590e6 | 17 | lman.kp = .009f; |
Showboo | 0:f7fc09f9c7ce | 18 | lman.ki = .0f; |
Showboo | 0:f7fc09f9c7ce | 19 | lman.kd = .0f; |
Showboo | 0:f7fc09f9c7ce | 20 | rman.kp = .5f; |
Showboo | 0:f7fc09f9c7ce | 21 | rman.ki = .1f; |
Showboo | 0:f7fc09f9c7ce | 22 | rman.kd = .4f; |
Showboo | 0:f7fc09f9c7ce | 23 | |
Showboo | 0:f7fc09f9c7ce | 24 | lpwmf.period(0.01f); |
Showboo | 1:fb18b43590e6 | 25 | lpwmb.period(0.01f); |
Showboo | 0:f7fc09f9c7ce | 26 | lpwmf = 0; //Previously started on, replace with lpwmf = lbase to make it start on (not a good idea) |
Showboo | 1:fb18b43590e6 | 27 | rpwmb=0; |
Showboo | 0:f7fc09f9c7ce | 28 | rpwmf.period(0.01f); |
Showboo | 1:fb18b43590e6 | 29 | rpwmb.period(0.01f); |
Showboo | 1:fb18b43590e6 | 30 | rpwmb=0; |
Showboo | 0:f7fc09f9c7ce | 31 | rpwmf = 0; |
Showboo | 1:fb18b43590e6 | 32 | |
Showboo | 0:f7fc09f9c7ce | 33 | pid ir_lman, ir_rman; |
Showboo | 1:fb18b43590e6 | 34 | ir_lman.kp = .0001f; |
Showboo | 0:f7fc09f9c7ce | 35 | ir_lman.ki = .0f; |
Showboo | 0:f7fc09f9c7ce | 36 | ir_lman.kd = .0f; |
Showboo | 0:f7fc09f9c7ce | 37 | ir_rman.kp = .5f; |
Showboo | 0:f7fc09f9c7ce | 38 | ir_rman.ki = .1f; |
Showboo | 0:f7fc09f9c7ce | 39 | ir_rman.kd = .4f; |
Showboo | 0:f7fc09f9c7ce | 40 | t_time.start(); |
Showboo | 0:f7fc09f9c7ce | 41 | while(1){ |
Showboo | 0:f7fc09f9c7ce | 42 | float dt = t_time.read(); |
Showboo | 1:fb18b43590e6 | 43 | float lspeed = 0; float rspeed = 0; |
Showboo | 1:fb18b43590e6 | 44 | LeftIR = 1; |
Showboo | 1:fb18b43590e6 | 45 | wait(.01f); |
Showboo | 1:fb18b43590e6 | 46 | FrontLeftIR=1; |
Showboo | 1:fb18b43590e6 | 47 | wait(.01f); |
Showboo | 1:fb18b43590e6 | 48 | FrontRightIR=1; |
Showboo | 1:fb18b43590e6 | 49 | wait(.01f); |
Showboo | 1:fb18b43590e6 | 50 | RightIR=1; |
Showboo | 0:f7fc09f9c7ce | 51 | ProcessIR(dt, ir_lman, lspeed, rspeed); |
Showboo | 0:f7fc09f9c7ce | 52 | lpwmb = 0; rpwmb = 0; |
Showboo | 1:fb18b43590e6 | 53 | lpwmf = lspeed; rpwmf = rspeed; |
Showboo | 1:fb18b43590e6 | 54 | LeftIR = 0; |
Showboo | 1:fb18b43590e6 | 55 | wait(.01f); |
Showboo | 1:fb18b43590e6 | 56 | FrontLeftIR=0; |
Showboo | 1:fb18b43590e6 | 57 | wait(.01f); |
Showboo | 1:fb18b43590e6 | 58 | FrontRightIR=0; |
Showboo | 1:fb18b43590e6 | 59 | wait(.01f); |
Showboo | 1:fb18b43590e6 | 60 | RightIR=0; |
Showboo | 0:f7fc09f9c7ce | 61 | t_time.reset(); |
Showboo | 0:f7fc09f9c7ce | 62 | } |
Showboo | 0:f7fc09f9c7ce | 63 | } |