FTC Build a Better Robot - patronumbots.com · FTC Build a Better Robot Cougar Robotics 4251 . ......

Post on 05-Jun-2018

246 views 0 download

Transcript of FTC Build a Better Robot - patronumbots.com · FTC Build a Better Robot Cougar Robotics 4251 . ......

COUGAR ROBOTICS

COUGAR

ROBOTICS

Thank You to Our Sponsors!

COUGAR

ROBOTICS

Twitter and Instagram Hashtag

#betterbot13

COUGAR

ROBOTICS

FTC

Build a Better Robot

Cougar Robotics 4251

Game Analysis

Points! Points! Points!

• Where are the points?

• What are the limits?

• Are there unlimited points opportunities?

o Like lifting in Bowled Over!

Time

• How long will things take?

• Are there low/no value goals that will simply

waste time?

Other Robots

• How easy will defense be?

o Rack was easy to defend in Ring It Up!

• How many robots does it take to accomplish

a given task?

o Lifting in Ring It Up!

Exercise - Discussion

• Ring It Up! Season...

Your Robot

• What qualities should a robot have, let’s take

drivetrain for example

o Ring It Up! - powerful, hold/take a position in front of

rack

Scoring opportunities space constrained

o Bowled Over - agility, speed more important than

power

Scoring opportunities all over the field

o Get Over It! - drive train that could navigate all the

terrain.

Scouting

Criteria For Rating Robots

• Create a scouting sheet based on how well

robots do certain tasks

• Game analysis improves after seeing actual

matches

• Use numbers to keep picks as objective as

possible

• Criteria are constantly evolving as season

goes on

Exercise - Scouting Example

Design Principles and

Strategies

Design Principles and Strategies • KISS

o Keep It Super Simple

• Tool Design First

• Leapfrog Development

o Never go backwards

• Repetitive Testing o Repetitive Testing

o Repetitive Testing

o Repetitive Testing

o Repetitive Testing

• Competitive Development

Exercise - Discussion

• Design Principles

Goal Setting

• What do you want to accomplish this

season?

• What do you want to accomplish by your first

tournament?

• How hard do you want to work?

• How well does that effort align with your

goals?

• What do you want your coach to do to help

you achieve these goals?

Practical Applications

Chassis/Drivetrain • Stiff & Stable Frame

• Maneuverability

o Rocker in a 6 wheel tank-drive chassis

o Omni wheels on corners or one end

• Ability to go where you want/need to for the

game

• Going the right speed

• Practice driving before the tournament

o Be prepared to drive on all parts of the field

Other

• Isolate your motors from impacts

• Traction < Torque

• Mechanical Alignment

• Program the knowns

o Heights on rack

• 8 motors, 3 lego motors, 12 servos

Exercise - Measure Pulling Force

• Use luggage scale to test pulling force

o Invite other teams to try it with their robot

Useful Tidbits

Heartbeat

• Using a twitching servo before both

autonomous and tele-op as a heartbeat

• A proactive robot health check so you can

know when to call for a power cycle

• Last controller on the daisy chain

• We did this last year, but the rules have

changed so we can’t do this

• What can we do instead?

• We will show you how to make one in the

programming section...

Heartbeat

Checklists

• Checklist on body

of robot for field

setup

• Checklist in pit for

between match

maintenance

Checklists

Exercise - Checklists

• Exercise: Help teams write their own

personalized checklists

Common Sense

Mechanics

Making Parts

• Flat metal bends

• Tapping holes o Steel vs aluminum

• File, sand, polish

o Rounded plastic corners (using a torch)

o No sharp corners or edges in general

• Double drilling your channel

Double Drilled vs Regular

Tools, and Using them

• Color coding tools

• Good mechanics have their own tools

• Removing cross-threaded machine screws o Vice grips

o Drill out

• Removing rounded out machine screws

o Vice grips

o Easy outs

Easy Outs

Building Practices

• Keeping screws and set screws in

o Nylocks

o Lock-tite and pre-nylon threaded set screws

• Don’t transmit loads thru axles

• Understanding friction/traction

o Surface area doesn’t change friction

o F=µFn

• Components under tension & compression

Regular Wheel With Sprocket

Calculating Loads on Lever Arms

• Margin of Safety

o At least a 2:1

• Exercise

o Use a lever arm on your robot or make one

including:

A DC motor

At least one gear change

A lever arm on the end

o Using your setup, calculate the reasonable max

weight your lever arm could elevate

Calculating Loads on Lever Arms

Motor Power Table

Motor Name Speed (RPM)

Speed

(Radians/Seco

nd) Torque (oz/in)

Torque

(Newton/meter

s) Power (Watts)

DC 12 volt

Motor 150 16 300 2.12 33.26

PF XL 220 23 56 0.40 9.11

NXT Servo 170 18 70 0.49 8.80

PF M 405 42 15 0.11 4.49

180 Servo 60 6 84 0.59 3.73

PF E 780 82 5 0.04 2.88

Continuous

Servo 43 5 39 0.27 1.24

Common Sense

Electronics

Miscellaneous

• Tin wires

• Use a power bus

• Redundant power supply

• Charged batteries

• Power supply and DC motor power

consumption

Daisy Chained Electronics

Anderson Powerpoles®

• Tamiya vs Powerpole®

Powerpole® is a registered trademark of Anderson Power Products®

Exercise - Tinning Wires and

Anderson Powerpoles®

• Tin Wires

• Converting to Powerpoles®

Powerpole® is a registered trademark of Anderson Power Products®

Grounding

• Ground the frame

• Connect the frame

• Plastic acts as a capacitor

• Ground your plastic

• Ground your electronics

Exercise - Grounding

• Build your own grounding chains

Samantha Bracket

Electronics Testing

Exercise - Samantha Bracket

• Build your own Samantha Brackets

The Coach,

Teaching “Basic” Things

• Measure Twice Cut Once

• Pilot Holes

• Tinning Wires

• Drill Press Jigs

• Using a Fence with a Saw

• File, Sand, Polish

• Torch or Heatgun?

• Bending Plastic with a jig

• Precise Drilling (for double drilled extrusions)

• Chain 180° Around Sprockets

Programing

RobotC vs LabView

• Smaller programs can hold more function on

the brick

• Faster Execution Time

• (this is older information, LabView has

improved)

Version Now!

• 4251-42-teleop

• Keep old version of working program

• Make sure you test multiple times before

the competition!

Heartbeat

task taskLookAlive()

{

for(;;)

{

servo[servoRingLock] = RINGUNLOCKED + 10;

wait1Msec(1000);

servo[servoRingLock] = RINGUNLOCKED;

wait1Msec(1000);

}

}

StartTask(taskLookAlive);

waitForStart(); /* wait for start of tele-op phase */

StopTask(taskLookAlive);

Program the Knowns

• Known values in the game

o Heights on the rack

• Increase driver speed

• Decrease driver error

Preset Positions

Shorten FCS Timeout

nNoMessageCounterLimit = 150; //stop robot

faster on disconnects (default is 750)

Exercise - Shorten FCS Timeout

● Version Now!

● Make this change

nNoMessageCounterLimit = 150; //stop robot faster

Drive Code

Make your own!

Preface

• Why?

o Customization/personalization

o Driver specific

o Game specific

o You understand it better

Parabola and Dead-Zone

• Square the joystick value

• Subtract 100

• Multiply it by 100/(128*128) or 0.0062387

o This gives you a value from 0-100

• Multiply the sign back into the value

• Return the number

Parabola and Dead-Zone

More on Drive Logic

• Low gear/Programmatic Gear Shifts

• Going straight

• Top Hat arcade drive

• Regular tank drive

• Built in PID logic

o Slow but strong

Anti-Stall Logic (Autonomous)

• Only watch when power is applied to the

motors

• Store the encoder value

• Wait a short time

• If the encoder value is very similar, the motor

is stalled

Example Of Anti-Stall Logic

Anti-Stall Logic if(abs(driveSpeed) > 0)

{

if(abs(currentRightEncoder - previousRightEncoder) < 4)

rightStallCounter++;

else

rightStallCounter = 0;

}

else

rightStallCounter = 0;

if(rightStallCounter > 200)

{

//writeDebugStreamLine("RIGHT STALLED");

motor[motorRight] = 0;

motor[motorRight2] = 0;

motor[motorLeft] = 0;

motor[motorLeft2] = 0;

rightStallCounter = 0;

wait10Msec(200);

Other...

• Multi-threaded Programming

o Pros

allow multiple things to happen at once

timing can be simpler

easy to automate routines

o Cons

CPU time

CPU/Process interruption

keeping track of everything

o We use it

o It is a personal preference

3rd Party Driver Suite

• Using Xander's 3rd party driver suite

Automated Functions • Automate routine functions

• Robots are good at

o Doing the same thing

o Repetitive tasks

o Controlling/manipulating multiple parts at once

• Humans are less capable of

o Exact repetition

o Performing under pressure

• Bowled Over arm

o Video

o Code (switch to RobotC)

Bowled Over Robot

Sensors, MUXes,

SMUXes, and Wires

MUXes

• HiTechnic Sensor MUX

• HiTechnic Touch MUX

NXT Sensors

• Gyro

• IR-Seeker

• Light

• Accelerometer

• Angle

• Color

• Ultrasonic

• EOPD

Encoders and Thermal Motor

Cables

• Encoders are used to measure distance

• More accurate than time-based movement

• Will keep pushing until travels far enough

• Fragile and expensive, so be careful

• Only use thermal cables for testing

Exercise - Encoders

• Learning to install and remove encoders

Custom Parts

CAD Programs

• PTC Creo Pro

• Autodesk Inventor

• Gear Generator o http://woodgears.ca/gear/index.html

Tools

• Laser Cutter

• CNC Machine

• Sheet Metal Shear o Metal

o Polycarb and PETG

• Sheet Metal Brake

• Machine Lathe

Steel and Plastic

• When to use steel

• Your best plastics o PETG

o Delrin

o Polycarbonate

3D Printing

• When to print your own parts

• Web order 3D printing (Shapeways) o Some companies can print steel

What to Buy

Important Tetrix and non-Tetrix

Parts

• Extra Channel

• “L”s, “C”s, and inside “C”s

• Other size and length (still 6/32) nuts and

bolts

• Plastics

o PETG

o Delrin

• McMaster Carr

o Nylocks

o Locking set screws

o Countersunk screws

Sources of Information

Open Workshop

Thank You for Coming Today!

COUGAR

ROBOTICS

Contact Information

• Coach Jamie- coach@cougarrobot.com

• Coach Judy- scientist@cougarrobot.com

• Kids- o joey@cougarrobot.com

o evan@cougarrobot.com

o sean@cougarrobot.com

o nathan@cougarrobot.com

o reeve@cougarrobot.com

Credits

• www.ollivier.nl

o Reference files on Drilling and Tapping

• www.eskimo.com/~billb/emotor/chargdet.html

o Static detector