FTC Build a Better Robot - patronumbots.com · FTC Build a Better Robot Cougar Robotics 4251 . ......
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
Useful Websites
• Official Game Forum
o http://ftcforum.usfirst.org/forum.php
• Chief Delphi
o http://www.chiefdelphi.com/forums/forumdisplay.php?f=146
• ROBOTC Forum
o http://www.robotc.net/forums/viewforum.php?f=52
• Xander Soldaat
o http://botbench.com/blog/
• Cougar Robotics
o http://cougarrobot.com/
• Landroids
o http://landroids.org
More Useful Websites
• Hitechnic
o http://www.hitechnic.com/
• Lego Education
o http://www.legoeducation.us/
• Digikey
o http://www.digikey.com/
• McMaster-Carr
o http://www.mcmaster.com/#
Open Workshop
Thank You for Coming Today!
COUGAR
ROBOTICS
Contact Information
• Coach Jamie- [email protected]
• Coach Judy- [email protected]
• Kids- o [email protected]
Credits
• www.ollivier.nl
o Reference files on Drilling and Tapping
• www.eskimo.com/~billb/emotor/chargdet.html
o Static detector