Eurobot2012_Primary
Dependencies: mbed Eurobot_2012_Primary
Diff: motors/motors.cpp
- Revision:
- 22:7ba09c0af0d0
- Parent:
- 2:cffa347bb943
- Child:
- 23:1901cb6d0d95
--- a/motors/motors.cpp Tue May 01 16:54:44 2012 +0000 +++ b/motors/motors.cpp Thu May 03 14:20:04 2012 +0000 @@ -25,7 +25,8 @@ Encoder2 (p27, p28, NC, 1856 ,QEI::X4_ENCODING), //connects to motor2 quadracture encoders Motor1A(p17), Motor1B(p18), Motor2A(p19), Motor2B(p13), //connects to direction pins Motor1Enable(p25), Motor2Enable(p26), //Connects to control board enable pins to control motors speeds. PWM pins. Remember enable must be set before the direction pins changed!! - PIDControllerMotor1(3.5, 0.5, 0, 0.010), PIDControllerMotor2(3.5, 0.5, 0, 0.010) { + //PIDControllerMotor1(2.25, 0.3, 0.00001, 0.010), PIDControllerMotor2(2.25, 0.3, 0.00001, 0.010) + PIDControllerMotor1(3.5, 0.5, 0.0, 0.010), PIDControllerMotor2(3.5, 0.5, 0.0, 0.010){ //Initialise PID controllers PIDControllerMotor1.setMode(MANUAL_MODE); @@ -307,16 +308,18 @@ Motor1B = 0; //pwm the h bridge driver range 0 to 1 type float. - } else if (speed1 < 0) { + } else if (speed1 <= 0) { //Motor1 backwards Motor1Enable = (float)abs(speed1)/127; Motor1A = 0; Motor1B = 1; - } else if (speed1 ==0) { + } + /* + else if (speed1 ==0) { _stop(1,0); } - + */ if (speed2 > 0) { //Motor2 forwards Motor2Enable = (float)speed2/127; @@ -324,14 +327,17 @@ Motor2A = 1; Motor2B = 0; - } else if (speed2 < 0) { + } else if (speed2 <= 0) { //Motor2 backwards Motor2Enable = (float)abs(speed2)/127; Motor2A = 0; Motor2B = 1; - } else if (speed2 == 0) { + } + /* + else if (speed2 == 0) { _stop(0,1); } + */ }