
Endelig kildekode med rettelser.
Fork of EndeligKildekode by
robot.cpp@7:a852e63cac3d, 2016-12-09 (annotated)
- Committer:
- kimnielsen
- Date:
- Fri Dec 09 12:32:21 2016 +0000
- Revision:
- 7:a852e63cac3d
- Parent:
- 6:c2d4a02115db
- Child:
- 8:5ca76759a67e
Kildekode til robot
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
kimnielsen | 0:d3dbe632b1a9 | 1 | /* |
kimnielsen | 0:d3dbe632b1a9 | 2 | ============================================================================ |
kimnielsen | 0:d3dbe632b1a9 | 3 | Name : robot.cpp |
kimnielsen | 2:1c27a43bb9b7 | 4 | Author : Team 5 |
kimnielsen | 0:d3dbe632b1a9 | 5 | Version : 0.1 |
kimnielsen | 2:1c27a43bb9b7 | 6 | Date : 13-10-2016 |
kimnielsen | 0:d3dbe632b1a9 | 7 | Copyright : Open for all |
kimnielsen | 4:62a6681510d6 | 8 | Description : Program to serve the platform for Pro1 2016 |
kimnielsen | 0:d3dbe632b1a9 | 9 | ============================================================================ |
kimnielsen | 7:a852e63cac3d | 10 | */ |
kimnielsen | 7:a852e63cac3d | 11 | #include "odometry.h" |
kimnielsen | 0:d3dbe632b1a9 | 12 | #include "mbed.h" |
kimnielsen | 0:d3dbe632b1a9 | 13 | #include "hack_motor.h" |
kimnielsen | 2:1c27a43bb9b7 | 14 | #include <math.h> |
kimnielsen | 0:d3dbe632b1a9 | 15 | |
kimnielsen | 4:62a6681510d6 | 16 | void startfunction( ); |
kimnielsen | 7:a852e63cac3d | 17 | Ticker T1; // create an object T1 of Ticker |
kimnielsen | 0:d3dbe632b1a9 | 18 | |
kimnielsen | 4:62a6681510d6 | 19 | int main() |
kimnielsen | 7:a852e63cac3d | 20 | { |
kimnielsen | 7:a852e63cac3d | 21 | ///////////////////////////////////////////////////////////////////////////// |
kimnielsen | 7:a852e63cac3d | 22 | // Driving setup // |
kimnielsen | 7:a852e63cac3d | 23 | ///////////////////////////////////////////////////////////////////////////// |
kimnielsen | 7:a852e63cac3d | 24 | while(1) //Remember to include if statement to stop robot if it's time to recharge |
kimnielsen | 7:a852e63cac3d | 25 | { |
kimnielsen | 7:a852e63cac3d | 26 | read_analog(); |
kimnielsen | 7:a852e63cac3d | 27 | startfunction(); |
kimnielsen | 7:a852e63cac3d | 28 | get_to_goal(); |
kimnielsen | 7:a852e63cac3d | 29 | robot.stop(); |
kimnielsen | 7:a852e63cac3d | 30 | printf("\n\r DistanceBysensor: %.2f \n", Dcenter()); |
kimnielsen | 7:a852e63cac3d | 31 | wait_ms(2000); |
kimnielsen | 7:a852e63cac3d | 32 | |
kimnielsen | 7:a852e63cac3d | 33 | read_analog(); |
kimnielsen | 7:a852e63cac3d | 34 | startfunction(); |
kimnielsen | 5:cf033e9d4468 | 35 | get_to_goal(); |
kimnielsen | 7:a852e63cac3d | 36 | robot.stop(); |
kimnielsen | 7:a852e63cac3d | 37 | printf("\n\r DistanceBysensor: %.2f \n", Dcenter()); |
kimnielsen | 7:a852e63cac3d | 38 | wait_ms(2000); |
kimnielsen | 7:a852e63cac3d | 39 | |
kimnielsen | 7:a852e63cac3d | 40 | read_analog(); |
kimnielsen | 7:a852e63cac3d | 41 | startfunction(); |
kimnielsen | 7:a852e63cac3d | 42 | get_to_goal(); |
kimnielsen | 7:a852e63cac3d | 43 | robot.stop(); |
kimnielsen | 7:a852e63cac3d | 44 | printf("\n\r DistanceBysensor: %.2f \n", Dcenter()); |
kimnielsen | 7:a852e63cac3d | 45 | wait_ms(2000); |
kimnielsen | 7:a852e63cac3d | 46 | |
kimnielsen | 7:a852e63cac3d | 47 | read_analog(); |
kimnielsen | 7:a852e63cac3d | 48 | startfunction(); |
kimnielsen | 7:a852e63cac3d | 49 | get_to_goal(); |
kimnielsen | 7:a852e63cac3d | 50 | robot.stop(); |
kimnielsen | 7:a852e63cac3d | 51 | printf("\n\r DistanceBysensor: %.2f \n", Dcenter()); |
kimnielsen | 7:a852e63cac3d | 52 | wait_ms(2000); |
kimnielsen | 7:a852e63cac3d | 53 | } |
kimnielsen | 4:62a6681510d6 | 54 | } |
kimnielsen | 4:62a6681510d6 | 55 | /* |
kimnielsen | 2:1c27a43bb9b7 | 56 | ---------------------------------------------------------------------------- |
kimnielsen | 4:62a6681510d6 | 57 | END OF MAIN FUNCTION |
kimnielsen | 7:a852e63cac3d | 58 | ----------------------------------------------------------------------------*/ |
kimnielsen | 4:62a6681510d6 | 59 | void startfunction() |
kimnielsen | 0:d3dbe632b1a9 | 60 | { |
kimnielsen | 0:d3dbe632b1a9 | 61 | T1.attach(&read_analog, 1.0); // attach the address of the read_analog |
kimnielsen | 0:d3dbe632b1a9 | 62 | //function to read analog in every second |
kimnielsen | 0:d3dbe632b1a9 | 63 | tacho_left.rise(&tickLeft); // attach the address of the count function |
kimnielsen | 0:d3dbe632b1a9 | 64 | //to the falling edge |
kimnielsen | 0:d3dbe632b1a9 | 65 | tacho_right.rise(&tickRight); // attach the address of the count function |
kimnielsen | 0:d3dbe632b1a9 | 66 | //to the falling edge |
kimnielsen | 0:d3dbe632b1a9 | 67 | init(); // initialise parameters (just for you to remember if you need to) |
kimnielsen | 7:a852e63cac3d | 68 | wait_ms(2000); //wait 1 secs here before you go |
kimnielsen | 0:d3dbe632b1a9 | 69 | t.start(); // start timer (just demo of how you can use a timer) |
kimnielsen | 0:d3dbe632b1a9 | 70 | } |