Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
46 commits
Select commit Hold shift + click to select a range
2317b83
added MAXswerve example subsystem
5690Programmers Jan 8, 2025
31d27c5
fixed odometry inversion?(maybe)
5690Programmers Jan 8, 2025
6598acf
Fix CAN IDs and implement driver controller
5690Programmers Jan 10, 2025
9989184
Robot relative swerve drive
5690Programmers Jan 10, 2025
58b5daa
CTRE pigeon partial implementation
5690Programmers Jan 11, 2025
6ed8b4a
CTRE Pigeon implementation (untested)
forty-eridani Jan 12, 2025
7257633
Remove delay (still robot oriented)
5690Programmers Jan 13, 2025
34b37a6
Fix gyro and add basic auto
5690Programmers Jan 15, 2025
7234501
Offset gyro after auto
5690Programmers Jan 15, 2025
1cf0949
Pathplanner path editor working state
5690Programmers Jan 17, 2025
f56c61b
Fix pathplanner bug??
5690Programmers Jan 17, 2025
4fd701b
Fix gyro zeroing at end of auto
5690Programmers Jan 17, 2025
6a48def
Update vendor deps
5690Programmers Jan 25, 2025
7539b74
Add sendable chooser for autos
5690Programmers Jan 25, 2025
ad89ea7
Change constants for 2025 season robot
5690Programmers Jan 28, 2025
477eeec
Add common in gradle include directory
5690Programmers Jan 29, 2025
4bff4d1
Change `pidgey` to `m_pidgey`
5690Programmers Jan 31, 2025
5b945dd
Merge branch 'feature/drive-subsystem' of https://github.com/SubZero-…
5690Programmers Jan 31, 2025
37831be
skeletonized arm subsytem and made a bunch of constants for it
5690Programmers Jan 31, 2025
68d509a
Merge branch 'main' of https://github.com/SubZero-Robotics/2025-Comma…
5690Programmers Feb 3, 2025
4c6ec4b
updated rev names and added the fixed common plus fixed dumb spelling…
5690Programmers Feb 3, 2025
3c1cd42
Finish elevator subsystem skeleton
5690Programmers Feb 4, 2025
0b5340c
changed member and const names to avoid cofusion
5690Programmers Feb 4, 2025
6f3d97c
Instantiate elevator subsystem (linker error)
5690Programmers Feb 5, 2025
0c1c8f4
added intake motor
5690Programmers Feb 7, 2025
ed06e39
commited plagerism of myself (added coral arm skeleton)
5690Programmers Feb 7, 2025
6845cd5
i forgor 💀
5690Programmers Feb 7, 2025
b0b9d75
Inlucde cpp files to fix linker error
5690Programmers Feb 8, 2025
c8860d6
Use sim mechanism for elevator (not working)
5690Programmers Feb 8, 2025
bf70d11
Fix simulation
forty-eridani Feb 10, 2025
4fae910
Merge arm subsystem into elevator subsystem
5690Programmers Feb 10, 2025
47f941f
Amp arm on 2024 bot using Algae arm
5690Programmers Feb 11, 2025
76fb65f
Simulation and instantiation of other classes
5690Programmers Feb 11, 2025
034d99c
Add .cpp files to header to ensure compilation
5690Programmers Feb 11, 2025
516f48b
made concrete methods for AlgeaArmSubsystem
5690Programmers Feb 12, 2025
5e2bd35
Fully implement algae arm subsystem and run intake (doesn't work)
5690Programmers Feb 12, 2025
cc973f2
Algae arm + intaking for both arms
5690Programmers Feb 14, 2025
9aa353d
Slightly tuned PID values
5690Programmers Feb 14, 2025
e2310ba
Create `IntakeSubsystem` class and move arm constants
5690Programmers Feb 14, 2025
61ce52f
Use `IntakeSubsystem` in arms and override periodic in `ElevatorSubsy…
5690Programmers Feb 14, 2025
8715691
made climber subsystem and constants
5690Programmers Feb 14, 2025
7598077
Fix elevator with bigger PID constants
5690Programmers Feb 15, 2025
7e604bf
Add basic PID tunings and change intake subsystem
5690Programmers Feb 15, 2025
fffcd42
Create instance of climber and fix values
5690Programmers Feb 15, 2025
2deeac8
Merge remote-tracking branch 'origin/main' into feature/elevator-subs…
5690Programmers Feb 15, 2025
7629add
Use fixed common
5690Programmers Feb 15, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 4 additions & 1 deletion .vscode/settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -93,6 +93,9 @@
"typeindex": "cpp",
"typeinfo": "cpp",
"valarray": "cpp",
"variant": "cpp"
"variant": "cpp",
"xmemory": "cpp",
"xstring": "cpp",
"xutility": "cpp"
}
}
11 changes: 3 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -84,14 +84,9 @@ Following the WPILib command based structure we have broken our robot up into a

## Digital Input Ports

| Port | Device |
| :---: | :--------------------------: |
| 1 | Center Upper Beam Break |
| 2 | Lower Podium Side Beam Break |
| 3 | Lower Center Beam Break |
| 4 | Lower Amp Side Beam Break |
| 5 | Upper Amp Side Beam Break |
| 6 | Upper Podium Side Beam Break |
| Port | Device |
| :---: | :------------------------------: |
| 1 | Lower Elevator Limit Switch |

## Network Map

Expand Down
5 changes: 3 additions & 2 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -58,11 +58,12 @@ model {

sources.cpp {
source {
srcDir 'src/main/cpp'
srcDirs 'src/main/cpp', 'SubZero-common/lib/cpp'
include '**/*.cpp', '**/*.cc'

}
exportedHeaders {
srcDir 'src/main/include'
srcDirs 'src/main/include', 'SubZero-common/lib/include', 'SubZero-common/lib/cpp'
}
}

Expand Down
6 changes: 6 additions & 0 deletions simgui-ds.json
Original file line number Diff line number Diff line change
Expand Up @@ -88,5 +88,11 @@
"buttonCount": 0,
"povCount": 0
}
],
"robotJoysticks": [
{
"guid": "78696e70757401000000000000000000",
"useGamepad": true
}
]
}
5 changes: 5 additions & 0 deletions src/main/cpp/Robot.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,11 @@ Robot::Robot() {}
*/
void Robot::RobotPeriodic() {
frc2::CommandScheduler::GetInstance().Run();
m_container.Periodic();
}

void Robot::RobotInit() {
m_container.Initialize();
}

/**
Expand Down
21 changes: 18 additions & 3 deletions src/main/cpp/RobotContainer.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -17,10 +17,13 @@
#include <frc/smartdashboard/SmartDashboard.h>
#include <units/angle.h>
#include <units/velocity.h>

#include <iostream>

#include "commands/Autos.h"
#include "commands/ExampleCommand.h"
#include "subsystems/AlgaeArmSubsystem.h"
#include "subsystems/CoralArmSubsystem.h"

RobotContainer::RobotContainer() {
// Initialize all of your commands and subsystems here
Expand Down Expand Up @@ -52,9 +55,10 @@ RobotContainer::RobotContainer() {
}

void RobotContainer::ConfigureBindings() {
frc2::JoystickButton(&m_driverController,
frc::XboxController::Button::kRightBumper)
.WhileTrue(new frc2::RunCommand([this] { m_drive.SetX(); }, {&m_drive}));
m_driverController.A().OnTrue(m_algaeArm.MoveToPositionAbsolute(50_deg));
m_driverController.B().OnTrue(m_algaeArm.MoveToPositionAbsolute(5_deg));
m_driverController.X().OnTrue(m_coralArm.MoveToPositionAbsolute(120_deg));
m_driverController.Y().OnTrue(m_coralArm.MoveToPositionAbsolute(5_deg));
}

frc2::CommandPtr RobotContainer::GetAutonomousCommand() {
Expand All @@ -70,3 +74,14 @@ frc2::CommandPtr RobotContainer::GetAutonomousCommand() {
return pathplanner::PathPlannerAuto(m_autoSelected)
.AndThen(frc2::InstantCommand([this, offset]() { m_drive.OffsetRotation(offset); }).ToPtr());
}

void RobotContainer::Periodic() {
frc::SmartDashboard::PutData("Robot Elevator", &m_elevatorMech);
}

void RobotContainer::Initialize() {
m_elevator.OnInit();
m_coralArm.OnInit();
m_algaeArm.OnInit();
m_climber.OnInit();
}
4 changes: 4 additions & 0 deletions src/main/cpp/subsystems/AlgaeArmSubsystem.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@

#include "subsystems/AlgaeArmSubsystem.h"

#include <frc2/command/RunCommand.h>
3 changes: 3 additions & 0 deletions src/main/cpp/subsystems/CoralArmSubsystem.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
#include "subsystems/CoralArmSubsystem.h"

#include <frc2/command/RunCommand.h>
34 changes: 34 additions & 0 deletions src/main/cpp/subsystems/IntakeSubsystem.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
#include <subsystems/IntakeSubsystem.h>

#include <frc2/command/InstantCommand.h>
#include <frc2/command/FunctionalCommand.h>

frc2::CommandPtr IntakeSubsystem::MoveAtPercent(double percent) {
return frc2::FunctionalCommand(
// On init
[]() {},
// On execute
[this, percent]() {
m_motor.Set(percent);
},
// On end
[this](bool interupted) {
m_motor.StopMotor();
},
// Is finished
[]() {
return false;
},
// Requirements
{this}
).ToPtr();
}

frc2::CommandPtr IntakeSubsystem::Stop() {
return frc2::InstantCommand(
[this]() {
m_motor.StopMotor();
},
{this}
).ToPtr();
}
6 changes: 6 additions & 0 deletions src/main/include/CommonCompile.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
#pragma once

#include <subzero/motor/PidMotorController.cpp>
#include <subzero/singleaxis/BaseSingleAxisSubsystem.cpp>
#include <subzero/singleaxis/RotationalSingleAxisSubsystem.cpp>
#include <subzero/singleaxis/LinearSingleAxisSubsystem.cpp>
Loading
Loading