Tobis Programm forked to not destroy your golden files

Dependencies:   mbed

Fork of Robocode by PES 2 - Gruppe 1

Committer:
cittecla
Date:
Thu Mar 02 08:48:50 2017 +0000
Revision:
19:baa8371d55b4
Parent:
18:a82994e67297
Child:
20:859c7aebf8a6
Motor Values initiated, functions declared

Who changed what in which revision?

UserRevisionLine numberNew contents of line
cittecla 18:a82994e67297 1 /**
cittecla 18:a82994e67297 2 * Movement function library
cittecla 18:a82994e67297 3 * Handels Movement of the Robot
cittecla 18:a82994e67297 4 **/
cittecla 18:a82994e67297 5
cittecla 18:a82994e67297 6
cittecla 18:a82994e67297 7 #include "mbed.h"
cittecla 19:baa8371d55b4 8 #include "move.h"
cittecla 18:a82994e67297 9
cittecla 19:baa8371d55b4 10 static double time_counter = 0.0f;
cittecla 19:baa8371d55b4 11 static double timer0 = 0.0f;
cittecla 19:baa8371d55b4 12
cittecla 19:baa8371d55b4 13 static float correction_value = 1.01f;
cittecla 19:baa8371d55b4 14 static float power_value_slow = 0.6f;
cittecla 19:baa8371d55b4 15 static float power_value_medium = 0.7f;
cittecla 19:baa8371d55b4 16 static float power_value_fast = 0.8f;
cittecla 19:baa8371d55b4 17 static float ludicrous_value = 1.0f;
cittecla 19:baa8371d55b4 18
cittecla 19:baa8371d55b4 19 //motor stuff
cittecla 19:baa8371d55b4 20 DigitalOut enableMotorDriver(PB_2);
cittecla 19:baa8371d55b4 21 PwmOut pwmL(PA_8);
cittecla 19:baa8371d55b4 22 PwmOut pwmR(PA_9);
cittecla 18:a82994e67297 23
cittecla 18:a82994e67297 24 void move_init()
cittecla 18:a82994e67297 25 {
cittecla 19:baa8371d55b4 26 pwmL.period(0.00005f); // Setzt die Periode auf 50 μs
cittecla 19:baa8371d55b4 27 pwmR.period(0.00005f);
cittecla 19:baa8371d55b4 28
cittecla 19:baa8371d55b4 29 pwmL = 0.5f; // Setzt die Duty-Cycle auf 50%
cittecla 19:baa8371d55b4 30 pwmR = 0.5f;
cittecla 19:baa8371d55b4 31 enableMotorDriver = 0;
cittecla 18:a82994e67297 32 }
cittecla 18:a82994e67297 33
cittecla 18:a82994e67297 34 void move_forward_slow()
cittecla 18:a82994e67297 35 {
cittecla 19:baa8371d55b4 36 pwmL = power_value_slow;
cittecla 19:baa8371d55b4 37 pwmR = 1-power_value_slow*correction_value;
cittecla 19:baa8371d55b4 38 enableMotorDriver = 1;
cittecla 18:a82994e67297 39 }
cittecla 18:a82994e67297 40
cittecla 18:a82994e67297 41 void move_forward_medium()
cittecla 18:a82994e67297 42 {
cittecla 19:baa8371d55b4 43 pwmL = power_value_medium;
cittecla 19:baa8371d55b4 44 pwmR = 1-power_value_medium*correction_value;
cittecla 19:baa8371d55b4 45 enableMotorDriver = 1;
cittecla 18:a82994e67297 46 }
cittecla 18:a82994e67297 47
cittecla 18:a82994e67297 48 void move_forward_fast()
cittecla 18:a82994e67297 49 {
cittecla 19:baa8371d55b4 50 pwmL = power_value_fast;
cittecla 19:baa8371d55b4 51 pwmR = 1-power_value_fast*correction_value;
cittecla 19:baa8371d55b4 52 enableMotorDriver = 1;
cittecla 18:a82994e67297 53 }
cittecla 18:a82994e67297 54
cittecla 18:a82994e67297 55 void move_backward_slow()
cittecla 18:a82994e67297 56 {
cittecla 19:baa8371d55b4 57 pwmL = 1-power_value_slow*correction_value;
cittecla 19:baa8371d55b4 58 pwmR = power_value_slow;
cittecla 19:baa8371d55b4 59 enableMotorDriver = 1;
cittecla 18:a82994e67297 60 }
cittecla 18:a82994e67297 61
cittecla 19:baa8371d55b4 62 void move_backward_medium()
cittecla 18:a82994e67297 63 {
cittecla 19:baa8371d55b4 64 pwmL = 1-power_value_slow*correction_value;
cittecla 19:baa8371d55b4 65 pwmR = power_value_slow;
cittecla 19:baa8371d55b4 66 enableMotorDriver = 1;
cittecla 18:a82994e67297 67 }
cittecla 18:a82994e67297 68
cittecla 19:baa8371d55b4 69 void move_backward_fast()
cittecla 18:a82994e67297 70 {
cittecla 19:baa8371d55b4 71 pwmL = 1-power_value_slow*correction_value;
cittecla 19:baa8371d55b4 72 pwmR = power_value_slow;
cittecla 19:baa8371d55b4 73 enableMotorDriver = 1;
cittecla 19:baa8371d55b4 74 }
cittecla 18:a82994e67297 75
cittecla 19:baa8371d55b4 76 void stop_movement()
cittecla 19:baa8371d55b4 77 {
cittecla 19:baa8371d55b4 78 enableMotorDriver = 1;
cittecla 18:a82994e67297 79 }
cittecla 18:a82994e67297 80
cittecla 18:a82994e67297 81