tim010 tim010
/
IR-Radar
ETF-PAI- Kunić Edis, Nuhodžić Muris
main.cpp@1:888aeafa6c13, 2014-06-09 (annotated)
- Committer:
- tim010
- Date:
- Mon Jun 09 16:07:44 2014 +0000
- Revision:
- 1:888aeafa6c13
- Parent:
- 0:c72c81cd99ba
Kuni? Edis, Nuhod?i? Muris
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
tim010 | 0:c72c81cd99ba | 1 | #include "mbed.h" |
tim010 | 0:c72c81cd99ba | 2 | #include "sMotor.h" |
tim010 | 0:c72c81cd99ba | 3 | |
tim010 | 0:c72c81cd99ba | 4 | AnalogIn IR(dp4); |
tim010 | 0:c72c81cd99ba | 5 | Serial pc(USBTX, USBRX); |
tim010 | 0:c72c81cd99ba | 6 | sMotor motor(dp9, dp10, dp11, dp13); // creates new stepper motor: IN1, IN2, IN3, IN4 |
tim010 | 0:c72c81cd99ba | 7 | |
tim010 | 0:c72c81cd99ba | 8 | int step_speed = 1200 ; // set default motor speed |
tim010 | 0:c72c81cd99ba | 9 | int numstep = 512/36; // defines full turn of 360 degree |
tim010 | 1:888aeafa6c13 | 10 | int direction = 1; //0 for right, 1 for left |
tim010 | 0:c72c81cd99ba | 11 | /* distanca { 10 , 15 , 20 , 25 , 30 , 35 , 40 , 45 , 50 , 55 , 60 , 65 , 70 , 75 , 80 , 85 , 90 } |
tim010 | 0:c72c81cd99ba | 12 | naponi { 0.89 , 0.87 , 0.81 , 0.71 , 0.62 , 0.54 , 0.47 , 0.43 , 0.39 , 0.34 , 0.32 , 0.29 , 0.28 , 0.25 , 0.24 , 0.23 , 0.21 } */ |
tim010 | 0:c72c81cd99ba | 13 | |
tim010 | 0:c72c81cd99ba | 14 | int provjeri(float n){ |
tim010 | 1:888aeafa6c13 | 15 | if(n<0.21)return 80; |
tim010 | 0:c72c81cd99ba | 16 | if(n>0.89)return 1; |
tim010 | 0:c72c81cd99ba | 17 | if(n<=0.89 && n>0.87) return 10; |
tim010 | 0:c72c81cd99ba | 18 | if(n<=0.87 && n>0.81) return 15; |
tim010 | 0:c72c81cd99ba | 19 | if(n<=0.81 && n>0.71) return 20; |
tim010 | 0:c72c81cd99ba | 20 | if(n<=0.71 && n>0.62) return 25; |
tim010 | 0:c72c81cd99ba | 21 | if(n<=0.62 && n>0.54) return 30; |
tim010 | 0:c72c81cd99ba | 22 | if(n<=0.54 && n>0.47) return 35; |
tim010 | 0:c72c81cd99ba | 23 | if(n<=0.47 && n>0.43) return 40; |
tim010 | 0:c72c81cd99ba | 24 | if(n<=0.43 && n>0.39) return 45; |
tim010 | 0:c72c81cd99ba | 25 | if(n<=0.39 && n>0.34) return 50; |
tim010 | 0:c72c81cd99ba | 26 | if(n<=0.34 && n>0.32) return 55; |
tim010 | 0:c72c81cd99ba | 27 | if(n<=0.32 && n>0.29) return 60; |
tim010 | 0:c72c81cd99ba | 28 | if(n<=0.29 && n>0.28) return 65; |
tim010 | 0:c72c81cd99ba | 29 | if(n<=0.28 && n>0.25) return 70; |
tim010 | 0:c72c81cd99ba | 30 | if(n<=0.25 && n>0.24) return 75; |
tim010 | 0:c72c81cd99ba | 31 | if(n<=0.24 && n>0.23) return 80; |
tim010 | 1:888aeafa6c13 | 32 | if(n<=0.23 && n>0.21) return 80; |
tim010 | 0:c72c81cd99ba | 33 | } |
tim010 | 0:c72c81cd99ba | 34 | int main() { |
tim010 | 0:c72c81cd99ba | 35 | float a; |
tim010 | 0:c72c81cd99ba | 36 | int brojac=0; |
tim010 | 0:c72c81cd99ba | 37 | while(1) |
tim010 | 0:c72c81cd99ba | 38 | { |
tim010 | 0:c72c81cd99ba | 39 | motor.step(numstep, direction, step_speed); |
tim010 | 0:c72c81cd99ba | 40 | a = IR; |
tim010 | 0:c72c81cd99ba | 41 | brojac++; |
tim010 | 0:c72c81cd99ba | 42 | if(brojac==36){brojac=0;direction=1-direction;} |
tim010 | 0:c72c81cd99ba | 43 | int b=provjeri(a); |
tim010 | 0:c72c81cd99ba | 44 | pc.printf("%d\n", b ); |
tim010 | 0:c72c81cd99ba | 45 | wait(1); |
tim010 | 0:c72c81cd99ba | 46 | } |
tim010 | 0:c72c81cd99ba | 47 | } |