Giter Site home page Giter Site logo

timberwolfrobotics2020's People

Contributors

deadjared avatar freddy4747 avatar ironispain avatar jdavis999 avatar maxs2004 avatar sdauk555 avatar shanealv avatar

Watchers

 avatar  avatar

timberwolfrobotics2020's Issues

remove .log files

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.

color sensor sequential cmds

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

constrain the shooter speed range

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:

  • in speedUp(), if fastSpeed is greater than 1.0, set it to 1.0
  • in speedDown(), if slowSpeed is less than -1.0, set it to -1.0

Autonomous switch cmd

look through the docks to see how to switch between autonomous cmds using m_autoSelected in robot.java

feeder

add sequential commands to have a toggle that pulls feeder out, runs / stops running, pulls feeder in

Control panel

wire up cmds to run control panel motor, pneumatics, and color sensor values

General: Intake

Goals:
pneumatics for pulling in/out (communicate with solenoid)
running wheels motor

Move project to a group.

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.

remove timers from hopper motor

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

Agitator

run a motor for the agitator in the hopper

bind operator commands to second controller

The way FIRST likes things, the driver is on one controller and the operator is on another.

  • The driver is responsible for driving the robot
  • The operator is responsible for every other component (feeder, shooter, control panel, etc.)

We should start by ensuring the binds for our existing subsystems are for the second controller.

Back up for 3 Seconds in Autonomous

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.

auto pos. 3

create autonomous code for starting position 3 (right)

auto pos. 1

create autonomous code for the 1st possible starting position (left)

autonomous

create sequential cmd to back up/align/shoot

Shuffleboard sliders

add in sliders that change the values of motors such as the hopper, agitator, shooter, autonomous

control panel buttons

create sequential cmds to make them run off single buttons. These should be on the operator controller.

autonomous modes

write multiple autonomous code sets and look into switches to access them

Add Content to the README

The README.md file needs some basic information:

  • What is this project?

That's it. We can add other stuff later.

Remap

We need to remap the buttons for the controls making them all usable in a coherent and user-friendly manner.

General: Shooter

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

Hopper motor

We need the hopper motor to run in intervals to feed the balls to the shooter in a controlled manner.

agitator + hopper

create a parallel command to run the agitator and hopper at the same time

Package organization

Reorganize commands into packages so it is easier to see what i going on in the command folder

add a shooter setSpeed Method

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

remove src/.vscode folder

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.

Extend Drive Subsystem to accept arbitrary input.

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.

auto pos. 2

create autonomous code for starting position 2 (middle)

Check license information

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.

Create basic Feeder commands

We need to create 4 commands:

  • FeederDeployCommand.java
  • FeederRetractCommand.java
  • FeederStartCommand.java
  • FeederStopCommand.java

Can motor bug

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.

add in drive camera

make a subsystem that creates a cameraserver instance for the driver camera connected directly to the roborio

create feeder subsystem

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.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.