Skip to content
This repository has been archived by the owner on Nov 4, 2022. It is now read-only.

Important! Autonomous. #50

Open
2 of 12 tasks
KenwoodFox opened this issue Feb 27, 2022 · 2 comments
Open
2 of 12 tasks

Important! Autonomous. #50

KenwoodFox opened this issue Feb 27, 2022 · 2 comments
Labels
help wanted Extra attention is needed
Milestone

Comments

@KenwoodFox
Copy link
Member

KenwoodFox commented Feb 27, 2022

There are a LOT of parts here, this will be a few late nights... Ill add resources to this issue.

Drivetrain Changes

Changes in rio/autonomous for Driving

  • Create a generateTrajectoryToPose method that accepts a target pose and returns a new Trajectory object that paths the robot from its current pose to the desired pose
  • Create a pickupBall method that accepts a robot pose and ball location, then uses generateTrajectoryToPose, followTrajectory, and any necessary shooter/yoke commands to calculate a path to a ball, follow it, and pick it up
  • Create a goToLocation method that accepts a target pose, and uses followTrajectory and generateTrajectoryToPose to take the robot to that pose
    Changes to rio/autonomous for Shooting
  • Create a shootBall method that moves the robot to a predetermined location with respect to the target and shoots the ball (for now we are going to use a hard-coded pose from which to shoot, rather than using vision targets. We can add vision targets later)
  • Create a findBallWithVision method that returns a list of ball locations, confidences, and distances based on current limelight info. (NOTE: We should further breakdown this step. It requires limelight setup and probably a set of other methods or classes to be built. I haven't bothered doing this yet)
  • Review command groups for more details about command structure in robotpy and propose how we should use these (Adding this because I don't know enough to specify more details)

OTHER Tasks that Joe added

START HERE: https://docs.wpilib.org/en/stable/docs/software/pathplanning/trajectory-tutorial/index.html#trajectory-tutorial as completing this tutorial should address a lot of the boxes above.

@NotSimon5673
Copy link
Contributor

@KenwoodFox would the followTrajectory method be what actually runs the ramseteCommand? I'm trying to work on some of this and don't know if I should do the other two problems above it first.

@KenwoodFox
Copy link
Member Author

We'll prolly let autonomous chooser handle actuallty scheduling the ramseteCommand, see the code here: https://docs.wpilib.org/en/stable/docs/software/pathplanning/trajectory-tutorial/creating-following-trajectory.html

So you wont have to implement that yourself, once you generate a trajectory, you can feed it into the constructer of a new ramsette command and it will follow it iirc

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
help wanted Extra attention is needed
Projects
Status: No status
Development

No branches or pull requests

2 participants