frc7540 / timberwolfrobotics2020 Goto Github PK
View Code? Open in Web Editor NEWLicense: Other
License: Other
Due to the way the project was created, a few .log
files managed to end up in the root directory of this project and need to be removed.
$ ls
2020FRCsoftware replay_pid5848.log
README.md replay_pid6476.log
Normally, the .gitignore
file would have helped us here, but the autogenerated one is within the 2020FRCsoftware
folder, and thus doesn't cover these files. Even if it did, these files already exist.
So, we need to delete these from the repository.
create control panel cmds that runs pneumatics, senses color, and runs motor after a single button press. should be done for both functions 1 and 2 of the control panel
Currently, it is possible for the shooter subsystem to be set to speeds greater than 1.0 and less than -1.0. This should not happen.
We need to modify Shooter.java
such that:
speedUp()
, if fastSpeed
is greater than 1.0, set it to 1.0speedDown()
, if slowSpeed
is less than -1.0, set it to -1.0look through the docks to see how to switch between autonomous cmds using m_autoSelected in robot.java
add sequential commands to have a toggle that pulls feeder out, runs / stops running, pulls feeder in
wire up cmds to run control panel motor, pneumatics, and color sensor values
When Boolean returns true, the robot fidgets and doesn't align properly.
Goals:
pneumatics for pulling in/out (communicate with solenoid)
running wheels motor
Goals:
Drive off line
Computer Vision
Shoot
write code for pneumatics that push up the color sensor/motor mechanism
since we are no longer going to be using the feeder, remove the code
Goals:
color sensor
run wheel motor
run flip motor (maybe)
create run shooter cmd
This project should not exist under a particular team member. We should create a group to manage this project. This will make things like setting up a website a bit cleaner down the road.
issue 66, but in autonomous
During testing, we found that the hopper motor would stop after a few seconds and broke the flow of the shooter. Remove the timers in the sequential cmds to fix this
run a motor for the agitator in the hopper
The way FIRST likes things, the driver is on one controller and the operator is on another.
We should start by ensuring the binds for our existing subsystems are for the second controller.
Part of the robot game is to have some kind of autonomous functionality.
Using the resources we have for writing commands, we should prototype a quick autonomous script.
To get started, we should create a command that will drive the robot forward (slowly) for three seconds and then stop. You may need to create a command group to do this kind of action.
create autonomous code for starting position 3 (right)
create autonomous code for the 1st possible starting position (left)
create sequential cmd to back up/align/shoot
add in sliders that change the values of motors such as the hopper, agitator, shooter, autonomous
create sequential cmds to make them run off single buttons. These should be on the operator controller.
write multiple autonomous code sets and look into switches to access them
The README.md
file needs some basic information:
That's it. We can add other stuff later.
We need to remap the buttons for the controls making them all usable in a coherent and user-friendly manner.
Goals:
run main shooter motor
run motor from ball feed in hopper
Tasks:
Add a Hopper Motor
Add a class for Hopper Motor
Functions for HopperOn and HopperOff
Add command for HopperFeedBall
allow default cmds to work in simulator
We need the hopper motor to run in intervals to feed the balls to the shooter in a controlled manner.
We need a set of compound commands that run parallel versions of existing feeder commands:
FeederDeployAndStartCommand.java
FeederRetractAndStopCommand.java
create a parallel command to run the agitator and hopper at the same time
don't delete, but deactivate all feeder code
Change commands, and subsystems to new wpilibj2 libraries
Reorganize commands into packages so it is easier to see what i going on in the command folder
It would be nice if we could have variable speed control for the shooter. To do this, we should start by adding a setSpeed(double speed)
method to Shooter.java
There is a folder called src/.vscode
that holds preferences for VSCode. This shouldn't be in a subdirectory, and should be either moved to .vscode
or removed entirely (if removed, we should also add it to the .gitignore
file.
Right now, the drive subsystem takes controller input directly. Lets open this up with a method in Drive.java
to accept raw X/Y inputs.
We also need to create an additional command (DriveStopCommand.java
) to stop the robot.
assign default commands to all necessary subsystems
create autonomous code for starting position 2 (middle)
Since we generated this code and we are generally using FRC stuff, things like this ended up on the top of our files:
/*----------------------------------------------------------------------------*/
/* Copyright (c) 2018 FIRST. All Rights Reserved. */
/* Open Source Software - may be modified and shared by FRC teams. The code */
/* must be accompanied by the FIRST BSD license file in the root directory of */
/* the project. */
/*----------------------------------------------------------------------------*/
As far as what this means to us, it means we should make sure the appropriate license file is sitting in the root directory of this repository.
We need to create 4 commands:
FeederDeployCommand.java
FeederRetractCommand.java
FeederStartCommand.java
FeederStopCommand.java
The Can motors aren't receiving input which affects the shooter and intake motors. The way we solve this is by setting their default commands to something to the effect of stop or do nothing.
make a subsystem that creates a cameraserver instance for the driver camera connected directly to the roborio
Create a feeder subsystem knowing the current configuration of the feeder system.
So far, we know this will include at least one motor. We need to determine what type and if more motors will be used and start building a subsystem so that it's ready when the hardware is.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.