FRC Robotics Camp @ MetLife
Monday Agenda
What is FRC?
FIRST Robotics Competition
With...
Challenge to...
Guidance from...
Opportunity to...
Competition Breakdown
Each year around January…
Example Match
Pitt County Competition Recap Video
State Championship Competition Recap Video
Impact
FIRST Robotics Competition teams get to:
Team Basics
What does a team need?
What is the time commitment?
Steps to Starting an FRC Team
Events
Scholarships
A big advantage to participating in FIRST is gaining access to millions in college scholarships made available by colleges, universities, and corporations who support FIRST. This is exclusive financial help open only to FIRST team members, giving them a competitive leg up on other students seeking educational funds.
FIRST Values
Where is Robotics Used?
What is Robotics?
Manufacturing
Medical
Agriculture
Social Robots
Military
Space Missions
FRC Awards
FRC Awards
FRC Awards
FRC Awards
FRC Awards
FRC Awards
FRC Awards
Chairman’s Award
Time for a Kahoot!!
Basic Mechanical Design Process
Brainstorming
Minimum Requirements
Possible Mechanisms
Prototypes
Further Prototyping
Put on robot
CAD
Manufacture Completed Parts
Further iterations
Developing a Strategy
Strategy Building for the FIRST Robotics Competition
Agenda
Quote
“The general who wins the battle makes many calculations in his temple before the battle is fought. The general who loses makes but few calculations beforehand.”
-Sun Tzu, Art of War
What is a Strategy?
The 4 Steps in Developing a Strategy
Introduction
Goals
Analyzing
Analyzing the Game
Determine Scoring Possibilities
Chokehold Strategies
Find the Most Optimal Strategy
Cost to Reward Ratio
Finalize Your Strategy
Develop a list of Potential Functions/Robot Capabilities
Prioritization of Robot Functions
Capabilities of Functions
Trade Offs
Golden Rules and Simplicity
Simplicity is Key
Build Season
Review
FRC Robotics Camp @ MetLife
Tuesday Agenda
Motors & Gearboxes
Motors
Motors
Approved FRC Motors
|
| Free Speed�(RPM) | Free Current�(A) | Maximum Power (W) | Stall Torque�(N · m) (in · lb) | Stall Current�(A) |
CIM Motor | | 5330 | 2.7 | 337 | 2.41 (21.33) | 131 |
Mini CIM Motor | | 5840 | 3 | 215 | 1.41 (12.48) | 89 |
BAG Motor | | 13180 | 1.8 | 149 | 0.43 (3.8) | 53 |
775pro | | 18730 | 0.7 | 347 | 0.71 (6.28) | 134 |
AndyMark RS775-125 | | 5800 | 1.6 | 43 | 0.28 (2.47) | 18 |
BaneBots RS-775 18V | | 13050 | 2.7 | 246 | 0.72 (6.37) | 97 |
AndyMark 9015 | | 14270 | 3.7 | 134 | 0.36 (3.18) | 71 |
BaneBots RS-550 | | 19000 | 0.4 | 190 | 0.38 (3.36) | 84 |
Motor Torque Calculation
Servos
Gears
Gears
Chains & Gears
What are they used for?
Ratios
Chain Stretch & Tensioners
Belts/Pulleys
Gears
How to calculate the distance between gears
= (1.5in/2)+(2.6i./2)
= .75 + 1.3
= 2.05in
Calculators
Chain/Gear Mechanism Examples
Belt/Gear Mechanism Examples
KAHOOT!!!!!!!
Hands On
Time for you to tinker around!
Thanks!
Any Questions?
Drivetrains
Outline
Purpose of a Drivetrain
Types of Wheels
Types of Wheels
Types of Drivetrains
Tank
Swerve/Crab
Slide
Mecanum
Holonomic
Compare Drivetrains
Define drivetrain attributes to compare
Define drivetrain attributes to compare
Define drivetrain attributes to compare
Compare Drivetrains
Compare Drivetrains
Compare Drivetrains
Compare Drivetrains
Compare Drivetrains
Comparison of weighted tables for different resource teams
When to Choose a Swerve Drive
| Tank | Swerve | Slide | Mecan | Holo |
Swerve | 79% | 80% | 63% | 63% | 59% |
| Swerve |
Agility | 10 |
Strength | 10 |
Motors | 2 |
Program | 2 |
Drive | 2 |
Traverse | 0 |
Design | 2 |
When to Choose a Slide Drive
| Slide |
Agility | 10 |
Strength | 0 |
Motors | 1 |
Program | 3 |
Drive | 1 |
Traverse | 0 |
Design | 3 |
| Tank | Swerve | Slide | Mecan | Holo |
Slide | 78% | 67% | 89% | 87% | 79% |
When to Choose a Mecanum Drive
| Mecan |
Agility | 10 |
Strength | 0 |
Motors | 5 |
Program | 2 |
Drive | 2 |
Traverse | 0 |
Design | 3 |
| Tank | Swerve | Slide | Mecan | Holo |
Mecan | 82% | 60% | 83% | 88% | 82% |
Designing a Tank Drivetrain
Speed Reduction
Speed Reduction
Centre of Gravity (CoG)
Centre of Gravity (CoG)
Key Design Attributes
Four Wheel Tank Drive
Driven direction
Four Wheel Tank Drive
Friction force (scrub)
Driven direction
Six Wheel Tank Drive
Standard Kit of Parts Drivetrain
Driver Controls
Different Controllers
Different Controller Layouts for Driving
Tank Drive
or
Arcade Drive
or
Curve Drive (Cheesy Drive)
Quick Turn (X)
How do you train to become a good driver?
Time for you to Drive the Robot!!!
Introduction to Programming
Wednesday Agenda
Introduction to Programming
What Do You Know About
Our Goals Today
5 Lessons to Get You Started
Environment and Tools
The RoboRIO
VSCode
GradleRIO
Driver Station
How do you drive the robot?
How to get the Driver Station
Components of the Driver Station
Driver Station - Operations Tab
Driver Station - Diagnostics Tab
Driver Station - Setup Tab
Driver Station - USB Devices Tab
Driver Station - Shortcut Keys
Driver Station - Voltage
How do you connect to the robot?
What is this “FMS”?
What can you do if you have a problem or a question during competition?
Lesson 01 Exercise
Open the DS and Connect to the Robot
Hello World Program
FRC Programming Languages
Structure of an FRC Program
public class Robot extends TimedRobot {
void robotInit() {}
void robotPeriodic() {}
void autonomousInit() {}
void autonomousPeriodic() {}
void teleopInit() {}
void teleopPeriodic() {}
void disabledInit() {}
void disabledPeriodic() {}
}
Demo
Lesson 02 Exercise
Print Hello World for 5 Seconds and Stop
Driving the Robot
Talon SRX Motor Controller
Programming the Talon SRX
TalonSRX master = new TalonSRX(1);
master.set(ControlMode.PercentOutput, 0.75);
master.setInverted(true/false);
TalonSRX slave = new TalonSRX(2);
slave.follow(master);
slave.setInverted(true/false);
Motors on the Drivetrain
Programming Drive
public class Robot extends TimedRobot {
TalonSRX master = new TalonSRX(1);
TalonSRX slave = new TalonSRX(2);
void autonomousPeriodic() {
master.setInverted(true/false);
slave.follow(master);
master.set(ControlMode.PercentOutput, 0.75);
}
}
Demo
Lesson 03 Exercise
Drive for 5 seconds during autonomous at 50%
Closed Loop
Disadvantages of Open Loop
Bang Bang Control
Proportional Control
Proportional-Integral-Derivative (PID) Control
Simple PID Implementation
public class PID {
double totalerror = 0, lasterror = 0, dt = 0.02;
double kP = 0.0, kI = 0.0, kD = 0.0;
double getOutput(double target, double current) {
double error = target - current;
totalerror += error;
double prop = kP * error;
double integ = kI * totalError * dt;
double deriv = kD * (error - lastError) / dt;
lastError = error;
return prop + integ + deriv;
}
}
Demo
Lesson 04 Exercise
Drive 10 feet. (kP = 0.1)
The Sky’s the Limit
What More Can You Do?
Generation of Trajectories using 5th Degree Polynomials
Velocity Parameterization
Non Linear Field Relative Positioning
Advanced Robotics Literature for Trajectory Following
Vision for Aiming at a Target
Vision and Bang Bang Control
Deep Learning
Demo
Interested in Programming?
Driver POV during match
Competition Fails: Expect the Unexpected
FRC Robotics Camp @ MetLife
Thursday Agenda
Computer Aided Design (CAD)
What is CAD?
Why use CAD?
Uses in FRC
Real-World Applications
CNC Programming
If you have access to precision manufacturing tools, you will need to design the parts in CAD first. Then you can program toolpaths from the CAD software itself.
Sketches
Sketches Cont.
SolidWorks Demo
Intakes & Wheels
Game Piece Mechanisms
Prototype and Test All Options
Robot Decoy Tests
Rollers Vs Wheels
Motor Speed and Torque
Modifications
Pneumatics
Ground Rules
Applications of Pneumatics
Pneumatic System Components
Pneumatics Board Layout
High-pressure (120 psi) side
Low-pressure (60 psi or less) side
Simple pneumatics board
Parts of a Piston
Types of Cylinders
There are three basic types of pneumatic cylinders: single acting, double acting, and telescoping. Single acting pistons have a spring to by themselves after firing, double action pistons hold their positions, and telescoping cylinders have multiple strokes stacked onto each other.
Electrical
What is Electrical?
Summary of Topics
Wires
Flush Cuts
Strippers
Crimpers
Connectors (APP)
Make A Wire Activity
Connectors (Wagos)
Soldering Stations + Shrink Tube
The FRC System
Battery + Power Switch
Power Distribution Panel(PDP)
roboRIO
Breakers and Fuses
Motor Controllers
Routers
VRM & PCM
The Big Picture
Extraneous Circuits
FRC Robotics Camp @ MetLife
Quickbuild
You guys will be building a basic robot frame now!!
FRC Robotics Camp @ MetLife
Awards
Most Studious
Rose Gualteros
Most Focused
Sriman Badhri
Most Improved
Navya Solkhan
Most Spontaneous
Christopher Gale
Most Eager
Olivia Hankins
Most Curious
Claire Gualteros
Most Enthusiastic
Alistaire Rowell
Most Interactive
Jermaine Best
Most Team Spirit
Jack Lowermilk
Most Positive
Collin Jones
Most Dedicated
Mark Ortega
Most Committed
Evelyn Wentz
Best CAD
Malachy Oates
Best Programmer
Nishvath Ramananandan
Best Pneumatics
Pranet Sharma
Best Electrical
Preston Hadley
Best Driver
Marcus Quan
Best Gamer
Landon Cook
Most Creative
Yes you can have laptop #19
Aniruddh Nukal