File tree Expand file tree Collapse file tree 7 files changed +37
-10
lines changed Expand file tree Collapse file tree 7 files changed +37
-10
lines changed Original file line number Diff line number Diff line change 91
91
],
92
92
"robotJoysticks" : [
93
93
{
94
- "guid" : " Keyboard0"
94
+ "guid" : " 78696e70757401000000000000000000" ,
95
+ "useGamepad" : true
95
96
},
96
97
{
97
- "guid" : " 78696e70757401000000000000000000" ,
98
98
"useGamepad" : true
99
+ },
100
+ {},
101
+ {},
102
+ {},
103
+ {
104
+ "guid" : " Keyboard0"
99
105
}
100
106
]
101
107
}
Original file line number Diff line number Diff line change 45
45
"open" : true
46
46
}
47
47
},
48
- "Intake" : {
49
- "open" : true
50
- },
51
48
"Pivot" : {
52
49
"Motor" : {
53
50
"open" : true
204
201
"window" : {
205
202
"visible" : false
206
203
}
204
+ },
205
+ "Plot <4>" : {
206
+ "plots" : [
207
+ {
208
+ "backgroundColor" : [
209
+ 0.0 ,
210
+ 0.0 ,
211
+ 0.0 ,
212
+ 0.8500000238418579
213
+ ],
214
+ "height" : 332
215
+ }
216
+ ]
207
217
}
208
218
}
209
219
}
Original file line number Diff line number Diff line change @@ -26,8 +26,8 @@ void RobotContainer::ConfigureBindings() {
26
26
27
27
// Triggers
28
28
_driverController.RightTrigger ().WhileTrue (cmd::CmdIntake ());
29
- // Bumpers
30
29
_driverController.LeftTrigger ().WhileTrue (cmd::CmdAimAtSpeakerWithVision (_driverController));
30
+ // Bumpers
31
31
32
32
// Letters
33
33
@@ -36,7 +36,8 @@ void RobotContainer::ConfigureBindings() {
36
36
// Operator
37
37
38
38
// Triggers
39
- _operatorController.RightTrigger ().WhileTrue (cmd::CmdShootSpeaker ());
39
+ _operatorController.RightTrigger ().WhileTrue (cmd::CmdShootSpeaker (_driverController));
40
+
40
41
// Bumpers
41
42
_operatorController.RightBumper ().WhileTrue (cmd::CmdShootPassing ());
42
43
_operatorController.LeftBumper ().WhileTrue (cmd::CmdShootNeutral ());
Original file line number Diff line number Diff line change @@ -22,6 +22,7 @@ frc2::CommandPtr CmdFeedOnceOnTarget() {
22
22
return Sequence (
23
23
WaitUntil ([]{return SubPivot::GetInstance ().IsOnTarget ();}),
24
24
WaitUntil ([]{return SubShooter::GetInstance ().IsOnTarget ();}),
25
+ WaitUntil ([]{return SubVision::GetInstance ().IsFacingTarget ();}),
25
26
SubFeeder::GetInstance ().FeedToShooter ()
26
27
);
27
28
}
@@ -30,11 +31,12 @@ frc2::CommandPtr CmdOuttake(){
30
31
return SubIntake::GetInstance ().Outtake ().AlongWith (SubFeeder::GetInstance ().FeedToIntake ());
31
32
}
32
33
33
- frc2::CommandPtr CmdShootSpeaker (){
34
+ frc2::CommandPtr CmdShootSpeaker (frc2::CommandXboxController& controller ){
34
35
return Parallel (
35
36
SubPivot::GetInstance ().CmdPivotFromVision ([]{ /* default value = 60 degrees(Subwoofer shot)*/
36
37
return SubVision::GetInstance ().GetSpeakerPitch ().value_or (60_deg);}),
37
38
SubShooter::GetInstance ().CmdSetShooterSpeaker (),
39
+ CmdAimAtSpeakerWithVision (controller),
38
40
CmdFeedOnceOnTarget ()
39
41
)
40
42
.FinallyDo ([] {SubShooter::GetInstance ().CmdSetShooterOff ();});
Original file line number Diff line number Diff line change @@ -76,4 +76,12 @@ std::optional<units::degree_t> SubVision::GetSpeakerPitch(){
76
76
} else {
77
77
return {};
78
78
}
79
+ }
80
+
81
+ bool SubVision::IsFacingTarget (){
82
+ if (-2_deg < GetSpeakerYaw () && GetSpeakerYaw () < 2_deg){
83
+ return true ;
84
+ } else {
85
+ return false ;
86
+ }
79
87
}
Original file line number Diff line number Diff line change 19
19
namespace cmd {
20
20
frc2::CommandPtr CmdIntake ();
21
21
frc2::CommandPtr CmdOuttake ();
22
- frc2::CommandPtr CmdShootSpeaker ();
22
+ frc2::CommandPtr CmdShootSpeaker (frc2::CommandXboxController& controller );
23
23
frc2::CommandPtr CmdShootAmp ();
24
24
frc2::CommandPtr CmdShootPassing ();
25
25
frc2::CommandPtr CmdShootNeutral ();
Original file line number Diff line number Diff line change @@ -37,8 +37,8 @@ class SubVision : public frc2::SubsystemBase {
37
37
std::optional<photon::PhotonTrackedTarget> GetSpeakerTarget ();
38
38
std::optional<units::degree_t > GetSpeakerYaw ();
39
39
std::optional<units::degree_t > GetSpeakerPitch ();
40
-
41
40
41
+ bool IsFacingTarget ();
42
42
43
43
private:
44
44
std::string CAM_NAME1 = " arducam" ;
You can’t perform that action at this time.
0 commit comments