AEMBOT's robot code for the 2022 game RAPID REACT.

Related tags

Spring Boot FRC_2022
Overview

FRC_2022

AEMBOT 6443's 2022 FRC Repository

Requirements

To build this repository and to push to the robot, FRC tools including wpilib are required.

  1. Download and install the FRC Game Tools from NI.
  2. Following the guide provided by FIRST, download and install wpilib from GitHub.
  3. Install git (Full instructions here):
  • On Windows, download and install git using the official link
  • On most versions of Linux, git is included with the operating system. If not, you can install it with your package manager:
    • For Debian-based distributions: sudo apt install git-all
    • For RPM-based distributions: sudo dnf install git-all
  • On macOS, the best practice for installing git is to use the Xcode Command Line Tools. Run any git command in a Terminal (eg. git --version), and if git is missing, you will be prompted to install it.

Setup

  1. Clone this repository: You can use VSCode's builtin git tools to do this, or the command line: git clone https://github.com/LibertyRobotics/FRC_2022
  2. To build and deploy the project, use the VSCode keyboard shortcut Shift + F5, or access the Command Palette (Ctrl +Shift + P) and search for the Deploy Command.

About this Project

AEMBOT uses the WPILIB's Command-Based Programming pattern for implementing robot code. In this paradigm, robot sensors and actuators are grouped into subsystems, which expose an interface to Commands, which define the behaviors and states of the robot. Understanding the Command-based model is crucial to understanding this project. Learn more about Command-Based Programming here.

Resources

Robots. Don't. Quit. Robots. Don't. Quit.

Comments
  • Transition to a listener-based approach for the dashboard compressor toggle

    Transition to a listener-based approach for the dashboard compressor toggle

    Previously, we were enabling/disabling the compressor on every robot loop run, which wasn't really necessary. This PR takes advantage of network tables event listeners instead of repeatedly calling an update method.

    I can't really simulate the compressor (or at least I don't know how to), so I'll test this on the real bot when I get a chance before merging. :)

    enhancement 
    opened by 5t0n3 2
  • Merge Oregon State Fair changes

    Merge Oregon State Fair changes

    Here's a short summary of what was changed:

    • Homing and lowering of the new intake was implemented
    • We replaced the PCM and some solenoid ports got swapped; these were updated in Constants.java
    • A compressor toggle was added to the dashboard to avoid the battery voltage drops it causes, but ended up not being necessary
    • Most SmartDashboard.put* calls were commented out to avoid cluttering the dashboard
    • An RPM offset configurable during the match was added in case we were consistently over/undershooting

    I'll probably do some clean-up before finalizing this as well.

    opened by 5t0n3 2
  • Add RAMSETE pathfollowing support

    Add RAMSETE pathfollowing support

    The new FollowTrajectory command can be used to make the robot follow a trajectory, and the TrajectoryCommandGroup builds on this by allowing for other commands to run along a trajectory, being triggered at specific points.

    PathPlannerLib was also installed as a dependency, since PathPlanner provides a nice UI for generating trajectories.

    enhancement priority 
    opened by 5t0n3 0
  • More cleanup & documentation of commands & subsystems

    More cleanup & documentation of commands & subsystems

    To make sure this repository serves as a good reference going into the future, I've been trying to make things more clear & make sure everything is documented. I've documented most commands (and removed some unused ones) at this point, but I still want to do a bit more with the subsystems (I've only looked at DriveSubsystem I think).

    documentation 
    opened by 5t0n3 0
  • Reorganize subsystems/commands to be more readable & consistent

    Reorganize subsystems/commands to be more readable & consistent

    For commands, I tried to rename them to better reflect what they do. I've also started trying to migrate away from InstantCommands since they're meant to be used in only one place, and we were repeating them. Commands were also moved to the respective folders based on the subsystems they act on, or the utilities folder if they don't act on a subsystem.

    In the way of subsystems:

    • I removed some unused code from ShooterSubsystem, and moved calculations to utilities/ShooterMath.java (although this file only has one method).
    • I tried to document the methods in DriveSubsystem more, as well as added odometry back in for use with RAMSETE control.

    I haven't really touched the other subsystems yet, but I might in future commits.

    We should also definitely test these changes before merging them into main.

    enhancement 
    opened by 5t0n3 0
  • Merge Wilsonville changes

    Merge Wilsonville changes

    Here's a short list of at least part of what's included:

    • Got secondary camera working independent of limelight
    • Added & bound a command to reverse the intake/indexer
    • Added a 1-2 ball auto, depending on how the robot is aligned
    • Added a couple commands (IntakeLift, LowerAndSpinIntake) that aren't actually used anywhere
    • Dialed in climb timings a bit (see ClimbTimed)
    • Tried to tune turning feedforward for carpet, which wasn't very successful
    • Got RampThenShoot working, even outside of autonomous
    opened by 5t0n3 0
Owner
AEMBOT Robotics
AEMBOT is a group of FIRST robotics teams, including FRC team 6443 and several FTC teams.
AEMBOT Robotics
AEMBOT's robot code for the 2022 game RAPID REACT.

FRC_2022 AEMBOT 6443's 2022 FRC Repository Requirements To build this repository and to push to the robot, FRC tools including wpilib are required. Do

AEMBOT Robotics 8 Dec 3, 2022
Pigmice robot code for FRC 2022 Rapid React

frc-2022 Robot code for FRC 2022 Rapid React Prerequisites Make sure you have Git installed, as well as some form of code editor. Visual Studio Code i

Pigmice 3 Mar 24, 2022
Team 5468's 2022 FRC robot code. This code is written in Java and is based off of WPILib's Java control system and utilizes a command based system

FRC 2022 Team 5468's 2022 FRC robot code. This code is written in Java and is based off of WPILib's Java control system and utilizes a command based s

null 4 Oct 4, 2022
Robot code for First Robotics Challenge for 2022.

rapid-react-robot-code-2022 Robot code for First Robotics Challenge for 2022. The pictures folder is for the embedded photos. Don't delete it. Prerequ

null 4 Feb 22, 2022
Robot code for FRC 2020 challenge

frc-code Robot code for FRC 2020 challenge STUFF I FOUND ABOUT THE GYROSCOPE also we all need to read the docs from last year. this Ian guy is our god

null 1 Jan 22, 2022
Team 2539's Java training, consisting of a series of projects that combine into a full robot code base.

Java Training Part 1 - Learning Java (Skip this part if you have taken AP Comp Sci) For learning Java, we currently recommend using codecademy, but mo

Krypton Cougars 5 Aug 24, 2022
Hacktoberfest 2022 : Repository for open-source contributions towards Hacktoberfest 2022

Hacktoberfest 2022 OPEN Pull Request - FREE T-SHIRT's ?? DON'T COMMIT ~ PR REPO HAS BEEN EXCULDED ( DON'T KNOW THE EXACT REASON ~ RUMORS ARE THAT THIS

Saurabh Kumar 112 Jan 9, 2023
log4j-scanner is a project derived from other members of the open-source community by CISA's Rapid Action Force team to help organizations identify potentially vulnerable web services affected by the log4j vulnerabilities.

Log4j Scanner This repository provides a scanning solution for the log4j Remote Code Execution vulnerabilities (CVE-2021-44228 & CVE-2021-45046). The

Cybersecurity and Infrastructure Security Agency 1.3k Dec 22, 2022
Repository for FIRST Tech Challenge team 3916 Apex Robotics for the 2021-2022 game year (Freight Frenzy)

FTC Team 3916 - Apex Robotics This is our repo for the 2020-2021 game year - Ultimate Goal Installation Clone this repo. You can do this through the w

Aman Anas 6 Nov 4, 2021
Java & Spring based cryptocurrency trading robot (RPA) that uses the public Binance API

Santini Santini is a Java & Spring based cryptocurrency trading bot that uses the public Binance API. It is run by providing it with API keys generate

Tongjian Cui 22 Apr 19, 2022
Java & Spring based cryptocurrency trading robot (RPA) that uses the public Binance API

Santini is a Java & Spring based cryptocurrency trading bot that uses the public Binance API. It is run by providing it with API keys generated at binance.com (Also provide Santini with Twitter API keys if tweet alerts are desired).

Adam·Michael 22 Apr 19, 2022
Open-sourced version of Chitung the Furry QQ robot

Public Version of Chitung - the Mirai-based Tencent QQ bot. This project aims to provide users with a lite and open version of Chitung. Although Chitu

null 11 Jul 24, 2022
This project uses the artificial potential field method to realize the path planning of the robot, and completes the trajectory optimization through other settings. It can also be combined with laser SLAM, target recognition and other technologies for path planning.

FRCAutoDriver 项目说明 Project Instruction 本项目利用人工势场法,实现机器人的路径规划,并通过其他设置完成轨迹优化,还可以结合激光SLAM、目标识别等技术进行路径规划 This project uses the artificial potential field

ZhangzrJerry 2 Sep 9, 2022
Entornos de Desarrollo - 05 Clean Code y TDD: Pruebas de Software. 1DAM. Curso 2021-2022.

Entornos de Desarrollo - 04 Clean Code y TDD: Pruebas de Software Tema 05. Clean Code y TDD: Pruebas de Software. Curso 2021/2022. Contenidos Introduc

José Luis González Sánchez 19 Nov 3, 2022
Projeto criado na semana Spring React organizado pela escola Dev Superior com foco na prática/aprendizado das tecnologias Spring e React.

DSVendas Projeto criado na semana Spring React organizado pela escola Dev Superior com foco na prática/aprendizado das tecnologias Spring e React. htt

João Gabriel 3 May 18, 2021
In this course, we will learn how to build a complete full-stack web application using Spring boot as backend and React (React Hooks) as frontend

In this course, we will learn how to build a complete full-stack web application using Spring boot as backend and React (React Hooks) as frontend. We will use MySQL database to store and retrieve the data.

Ramesh Fadatare 43 Dec 22, 2022
Sceneform React Native AR Component using ARCore and Google Filament as 3D engine. This the Sceneform Maintained Component for React Native

Discord Server Join us on Discord if you need a hand or just want to talk about Sceneform and AR. Features Remote and local assets Augmented Faces Clo

SceneView Open Community 42 Dec 17, 2022
With react-native-update-in-app library you can easily implement in-app updates in your React Native app using CDN or any other file server

React Native In-App update With react-native-update-in-app library you can easily implement in-app updates in your React Native app using CDN or any o

Nepein Andrey 7 Dec 21, 2022
Spring boot backend for marble guessing game inspired by Squid Game TV series.

Back-end for marble guessing game inspired by Squid Game TV series. Built with Spring-boot and WebSocket.

Zaid 4 Sep 3, 2022