pre-2019's People
pre-2019's Issues
Create Turret command
Create a command for the Turret subsystem which takes the required angle of the turret relative to its initial position, and make the Turret turn to this angle.
Optimize the command to make the Turret rotate no more than 180°, so for example, if the Turret needs to rotate 270°, make it rotate (-90)°.
Consider making this command the default command of the Turret, as it will be cool to see the turret always aligned with the target.
Create Turret subsystem
Components of the subsystem:
- One motor with one Talon SRX. Use the "Motion Magic" ControlMode of Talon SRX. Read more about it in sections 10.7 and 12.6 of the Software Manual.
- One encoder.
Create shooter subsystem
Components of the subsystem:
- Two motors, one Talon SRX and one Victor SPX. Use the "Velocity" ControlMode of Talon SRX and make the Victor SPX follow the Talon SRX. Read more about the "Velocity" ControlMode in sections 10.3 and 12.4 of the Software Manual.
- One encoder.
Create cube taking command
Create a command to take the cubes inside the Intake. Use a proximity sensor to stop this command when a cube was intaked. You can learn about the usage of a proximity sensor in our code from 2018, in the Gripper's proximity sensor and isCubeInside
method.
Create Intake subsystem
Components:
- Three motors:
- Two motors for the Intake arms, one motor for each arm. Use two Victor SPs for these.
- One motor for folding the arms, one potentiometer attached to it.
Make the robot stop shooting if it moves
Make the Shooter and Conveyor stop operating if the robot senses it's moving while shooting.
Also, check whether setting the neutral mode of the Drivetrain's motor controllers to "brake" will help to prevent the robot from moving while it's shooting. Read more about the Brake/Coast modes of the Talon SRX and the Victor SPX here. (However, we currently use Victor SPs on the Presentation Robot, so wait with this part).
A demonstration of this feature by Team 254 can be seen here (will post the video's link later) (MM:SS).
Create Conveyer subsystem
Components:
- One motor that controls the Conveyer's rotation (ON/OFF control). Use a Victor SP.
- One motor that conveys the balls to the Shooter (ON/OFF control).
Create Conveyor command
Create a command which rotates the Conveyer and conveys the balls into the Shooter.
Create Shooter command
Create a command for the Shooter to make it rotate in a given velocity. The velocity is sent through Network Tables.
Test if motor can be set in initialize()
Several commands work by setting the motor speeds in the init() and immedietley closing. We need to check if this works, or if it has to be in the execute().
Create a shooting command
Create a shooting CommandGroup that conveys balls inside the Shooter, rotates the Turret to the desired angle and shoots them.
IMPORTANT! Make sure the Shooter spins fast enough before balls are conveyed into it.
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.