0% found this document useful (0 votes)
11 views

Programming I - Hardware Overview

Uploaded by

arjunalwe24
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
11 views

Programming I - Hardware Overview

Uploaded by

arjunalwe24
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 38

PROGRAMMING I

Hardware Overview
HOW FRC WORKS
New game released in January

2 months to build a robot

Compete at district events, provincials and

worlds

3 phases in each game -> auto, tele-op,

endgame
Timeline
SEPTEMBER OCTOBER NOVEMBER JANUARY

REEFSCAPE Kickoff
Recruitment Continue training Finish training
Work with design to
Start training Overtime Sunday Continue tuning
start writing code
swerve

FEBRUARY MARCH APRIL MAY

Code finished Finish testing code Provincials 2025 Off-season


Tune drivetrain Comps begin Worlds⁉️
Centennial
Humber
SUBSYSTEMS
DRIVETRAIN - TANK
Parallel wheels, controlled

separately

One side moves slower to turn


DRIVETRAIN - SWERVE
Square chassis

Wheels on each corner

2 motors per wheel, 8 motors total

Wheels can rotate in place as well

as spin

Field-oriented control (FOC)


TANK SWERVE
+ 🤑 + Faster

+ Easier to program & build + Better maneuverability

+ Easier to drive
INTAKE
Used to pick up game

pieces

Over-bumper or under-

bumper
SHOOTERS
Fixed angle, angled,

turret
HANG/CLIMBER
Motored, Pneumatic,

Single stage or multi-

stage
ARM ELEVATOR
ELECTRONICS
ROBORIO

Robot brain

Everything is wired to it
COPROCESSOR
Separate microcomputers such as

Raspberry Pis and Orange Pis are

used for vision processing

Interface with roboRIO using

ethernet
APRIL TAGS
Easily identified by vision

systems

Placed around the field

Help robot calculate its

position
POWER DISTRIBUTION HUB

Battery -> PDH -> Everything

else
RADIO
Main way to connect to robot

Connect to network or

ethernet

Ethernet only at comps


ROBOT SIGNAL LIGHT
Indicates robot state

Off: No power, RIO off, RSL not

wired

Solid: Robot on & disabled

Blinking: Robot on & enabled


GYROSCOPE
Tells us the angle of the robot

Pigeon, NavX, etc.

Must be centred on the robot

Sometimes have accelerometers to

measure distance --> UNRELIABLE


READING MOTOR CURVES
Stall Current: Max current that a motor can

draw, usually when it can’t move

Stall Torque: Max rotational force a motor can

exert, usually when it can’t move

Peak Power: Best performance without stalling


MOTORS MUST BE CURRENT-LIMITED

DRAWING STALL CURRENT CAN BURN OUT THE

MOTOR OR BROWNOUT THE ROBOT


CURRENT LIMITING
1. Look at peak power

2. Note the associated current

3. Limit current to current @ peak power, or less to

keep the motor running for longer


Current limit: ~40A
CIM/MINI-CIM
Brushed Heavy

Can take abuse Inefficient

Cheap Slow

Useful for low-to-mid

power mechanisms
BRUSHLESS MOTORS
+ Fast

+ Light

+ Efficient

- Cannot take as much abuse

- $$$$$
NEO LINE
Better than CIMs

Compact

Neo 550 < Neo 1.1 < Neo Vortex

1.1s are the most common

Magnet can fall out

Low current limit (20-40A)

Useful for most mechanisms


FALCON 500
Better than all the Neos

Used for high-power mechanisms &

drivetrains
KRAKEN X60
Best FRC motor by far

Robust

Expensive
MOTOR CONTROLLERS
Allow us to communicate with motors

Some motors only work with specific

motor controllers

Some motors have built-in controllers


SPARK MAX: runs CIMs, Victor SPX & Talon SRX:
Mini CIMs, Neo 550s & 1.1s runs CIMs & Mini CIMs

TalonFX: Built into


Krakens & Falcons
ENCODERS
Measure rotational movement

Can be used to measure distance

travelled, angle, etc.

3 main types: built-in, on-shaft,

magnetic
ENCODERS
Relative/Quadrature Encoders Absolute/Duty-Cycle Encoders
Measure number of shaft Measures angle of shaft

rotations Keeps angle through power cycle

Calculate distance, velocity

Automatically set to 0 when

robot boots
ENCODERS
All brushless motors need encoders

May or may not be reliable depending on

the motor

Neo encoders -> not good

Kraken, Falcon encoders -> pretty good


ENCODERS
Need to consider gear ratios for encoders

Big gear to small gear -> increases speed

Small gear to big gear -> increase torque

If the encoder is on the input shaft -> apply

gear ratio
CANBUS
Helps connect devices to roboRIO

All devices are assigned an ID

Devices connected in a chain --> if one

device is disconnected, the whole chain

goes down
LEARN JAVA
HOMEWORK
(Optional) Work on CodeHS

Test week 3

Review hardware slides

Install required software before

next class

You might also like