9
9
10
10
#include " Robot.h"
11
11
12
- #include < iostream>
13
-
14
12
void Robot::RobotInit () {
15
13
compressor.Stop ();
16
14
}
17
15
18
16
void Robot::RobotPeriodic () {
17
+ // Vision
19
18
UsbCamera floorCamera = CameraServer::GetInstance ()->StartAutomaticCapture (0 );
20
19
UsbCamera driverCamera = CameraServer::GetInstance ()->StartAutomaticCapture (1 );
21
20
driverCamera.SetResolution (320 , 240 );
@@ -42,19 +41,31 @@ void Robot::RobotPeriodic() {
42
41
// Drive
43
42
if (flightStick.GetRawButton (2 ) == 1 ) { // Slow
44
43
if (flightStick.GetRawAxis (1 ) > 0 || flightStick.GetRawAxis (1 ) < 0 ) {
45
- Drive.CurvatureDrive ((flightStick.GetRawAxis (1 ) * pow (time.Get (), 2 )) * -1 * speedSlow, flightStick.GetRawAxis (2 ) * turningSpeedFast, flightStick.GetRawButton (1 ));
44
+ if (0 <time.Get <(f/2 )) {
45
+ Drive.CurvatureDrive ((flightStick.GetRawAxis (1 )/2 *sin ((((2 * M_PI)/f)*time.Get ()) - M_PI_2)+flightStick.GetRawAxis (1 )/2 ) * -1 * speedSlow, flightStick.GetRawAxis (2 ) * turningSpeedSlow, flightStick.GetRawButton (1 ));
46
+ } else {
47
+ Drive.CurvatureDrive (flightStick.GetRawAxis (1 ) * -1 * speedSlow, flightStick.GetRawAxis (2 ) * turningSpeedSlow, flightStick.GetRawButton (1 ));
48
+ }
46
49
} else {
47
50
time.Reset ();
48
51
}
49
- } else if (flightStick.GetRawButton (12 /* Will Change*/ ) == 1 ) { // Fast
52
+ } else if (flightStick.GetRawButton (11 /* Will Change*/ ) == 1 ) { // Fast
50
53
if (flightStick.GetRawAxis (1 ) > 0 || flightStick.GetRawAxis (1 ) < 0 ) {
51
- Drive.CurvatureDrive ((flightStick.GetRawAxis (1 ) * pow (time.Get (), 2 )) * -1 * speedFast, flightStick.GetRawAxis (2 ) * turningSpeedFast, flightStick.GetRawButton (1 ));
54
+ if (0 <time.Get ()<(f/2 )) {
55
+ Drive.CurvatureDrive ((flightStick.GetRawAxis (1 )/2 *sin ((((2 * M_PI)/f)*time.Get ()) - M_PI_2)+flightStick.GetRawAxis (1 )/2 ) * -1 * speedFast, flightStick.GetRawAxis (2 ) * turningSpeedFast, flightStick.GetRawButton (1 ));
56
+ } else {
57
+ Drive.CurvatureDrive (flightStick.GetRawAxis (1 ) * -1 * speedFast, flightStick.GetRawAxis (2 ) * turningSpeedFast, flightStick.GetRawButton (1 ));
58
+ }
52
59
} else {
53
60
time.Reset ();
54
61
}
55
62
} else { // Normal
56
63
if (flightStick.GetRawAxis (1 ) > 0 || flightStick.GetRawAxis (1 ) < 0 ) {
57
- Drive.CurvatureDrive ((flightStick.GetRawAxis (1 ) * pow (time.Get (), 2 )) * -1 * speedNormal, flightStick.GetRawAxis (2 ) * turningSpeedSlow, flightStick.GetRawButton (1 ));
64
+ if (0 <time.Get ()<(f/2 )) {
65
+ Drive.CurvatureDrive ((flightStick.GetRawAxis (1 )/2 *sin ((((2 * M_PI)/f)*time.Get ()) - M_PI_2)+flightStick.GetRawAxis (1 )/2 ) * -1 * speedNormal, flightStick.GetRawAxis (2 ) * turningSpeedSlow, flightStick.GetRawButton (1 ));
66
+ } else {
67
+ Drive.CurvatureDrive (flightStick.GetRawAxis (1 ) * -1 * speedNormal, flightStick.GetRawAxis (2 ) * turningSpeedSlow, flightStick.GetRawButton (1 ));
68
+ }
58
69
} else {
59
70
time.Reset ();
60
71
}
@@ -100,11 +111,11 @@ void Robot::RobotPeriodic() {
100
111
101
112
// Ball Intake
102
113
if (fightStick.GetRawButton (1 ) == 1 ) {
103
- m_leftIntake.Set (. 5 );// +
104
- m_rightIntake.Set (-. 5 );
114
+ m_leftIntake.Set (flywheelIntake );// +
115
+ m_rightIntake.Set (-1 * flywheelIntake );
105
116
} else if (fightStick.GetRawButton (3 ) == 1 ) {
106
- m_leftIntake.Set (-. 5 );
107
- m_rightIntake.Set (. 5 );
117
+ m_leftIntake.Set (-1 * flywheelOutake );
118
+ m_rightIntake.Set (flywheelOutake );
108
119
} else {
109
120
m_leftIntake.Set (0 );
110
121
m_rightIntake.Set (0 );
0 commit comments