Understanding The 2008 FRC Robot Controller Chris Gregory FRC1089 – Team Mercury www.mercury1089.com.

Slides:



Advertisements
Similar presentations
Apple Pi Robotics Logic System and Programming Basics 1 1.
Advertisements

US First Robotics Lab View Tutorials Jim Thomas Lawrence Berkeley National Laboratory Team 496 Port Jeff Powerhouse.
Jason Howard. Agenda I. How to download robotc II. What is tele-op used for? III. How to build a basic tele-op program IV. Getting the robot to drive.
Presented by Team 3350 (T-BOTS).  Students should lead their teams in the building, design, and all other aspects of the robot.  Knowledge of the Kit.
A New Technology Transmitter Real Time ScadaLynx Model
1. 2 FRC 2010 Driver Station Doug Norman & Stephanie Brierty National Instruments January 8, 2010 Thanks to Joe Ross – Team 330.
Presented By: Lynbrook Robotics, Team 846 John Chai, David Liu, Aashish Sreenharan, Michael Wachenschwanz, and Toshi Tochibana Available online at lynbrookrobotics.comlynbrookrobotics.com.
Wiring the new control system MVRT 2010 – 2011 Season.
Potentiometer Electric circuit Cell or Battery Resistor Switch Bulb Earth/Ground LED.
Photos and Sensor Instructions
Bread Boarding and Operating The IFI Robotic Control System.
Welcome to Electrical Design and Wiring for F.I.R.S.T Championship 2006 Welcome to Electrical Design and Wiring for F.I.R.S.T Championship 2006.
Part 1: Introduction FRC Introduction  FRC 2907 since 2008  Each area of the robot has a team assigned  The Electronics team is headed this year.
Overview of New System Beta Team from Wilsonville 1425 Wilsonville Robotics – Code Xero 2550 Oregon City Robotics.
FRC LabVIEW Software Overview Joe Hershberger Staff Software Engineer National Instruments.
Erik A. Cokeley Programming Workshop FIRST 2007.
Old control system ( ) MVRT. Main Circuit Breaker Connected to the red wire (power) of the battery When turned off, all power is cut off and robot.
Introduction.
Technical Topics for Teams August BEST GAME RULES.
Module 2: Hardware and Terminology
Embedded Programming and Robotics
1. A guide to wiring your robot. Jerry Skene Past mentor – Chantilly Robotics
Driver Station MVRT 2009 – 2010 Season. Add information Breadboard Classmate PC USB Hub Joysticks Stop Button.
US First Kickoff 2012 Software Programming (And Control System) Daniel Kohn University of Memphis.
Segway Controller Notes. = connection on top layer of circuit board = connection on bottom layer of circuit board Ground Plane: Areas enclosed by the.
Coding for the FIRST Tech Challenge: RobotC Presented by: Audrey Yeoh Acknowledgements: Team Unlimited FTC 0001.
Mentors Workshop Control System Sub-System Mark McLeod Team 358 Festo/Hauppauge H.S. F For I Inspiration and R Recognition of S Science and T Technology.
Coding for the FIRST Tech Challenge: RobotC
Weston Schreiber & Joshua Gabrielse Robotics Summer Training Programming #1: EasyC Basics.
Programming and Controls for FIRST – The Basics Tom Barch, Scott VanBrocklin and Kayla Peltier February 5 th, 2008.
LabVIEW Workshop September 26, 2009 Hauppauge High School SPBLI - FIRST Mark McLeod Advisor Hauppauge Team 358 Northrop Grumman Corp.
Programming and Controls Workshop – The Basics Tom Barch.
The New FTC Platform (Connecting your legacy hardware)
2009 FRC Control System Software Overview Dave Doerr, Mentor, Team 67 November 15, 2008.
Module 1: Introduction to PLC
VEX Parts – Batteries, Logic, and Controls
FRC Robot Framework Labview Made Easy (er) For FIRST Robotics 1.
Mentors Workshop Programming Sub-System Mark McLeod Team 358 Festo/Hauppauge H.S. F For I Inspiration and R Recognition of S Science and T Technology.
JMC – Joint Motion Controller Complete guide to building and testing each JMC.
Beginner Programming Workshop Simona Doboli Assistant Professor Computer Science Department Hosftra University November.
EasyC Programming Workshop January 30, 2008 Hauppauge High School SPBLI - FIRST Mark McLeod Advisor Hauppauge Team 358 Northrop Grumman Corp.
An Objective and Component View (Not included Drive: Balance and Turret: Axis Camera)
Overview What is Arduino? What is it used for? How to get started Demonstration Questions are welcome at any time.
Default_Routine(); - PWM Mapping /******************************************************************** * FUNCTION NAME: Default_Routine * PURPOSE: Performs.
Chapter 10 Advanced Programming, PLC Interfacing, and Troubleshooting
FIRST Electrical Design FIRST Robotics Championship Conference Steven Shade Team 1111 April 16, 2003.
Part II Introduction to Robot Code. How to open a new FRC robot project 1.Open LabVIEW. 2.Click "FRC cRIO Robot Project" in the upper left section "New".
FRC Robot Programming 1.PID Continued 2.Downloading and Deploying Code 3.Program a 2012 Robot from Spec Basic code For FIRST Robotics.
Cass Lake Bena Robotics.  Drivetrains  Electrical System  Operator Interface.
Introduction to Vexnet
Automatic accident avoiding system PROJECT MEMBERS MUTHUKUMAR.K (05ME33) SAKTHIDHASAN.S (05ME39) SAKTHIVEL.N (05ME40) VINOTH.S (05ME56) PROJECT GUIDE:
Photos and Sensor Instructions
Session 11 Intro to FRC API.
Teacher/Mentor Institute Using easyC David Dominguez June 2, 2015 Update Version.
Innovation First Hardware & Default Program The 5¢ Tour... Dr. Joe January 5, 2002.
Cass Lake Bena Robotics Team 3134 & Team  Drivetrains  Electrical System  Operator Interface.
Mechanical Components and Programming Ken Youssefi Introduction to Engineering – E10 1.
1 Microcontrollers. 2 Programmers work in the virtual world Machinery works in the physical world Microcontrollers connect the virtual and physical world.
Programming Applied Sensors in FIRST Robots Chris Elston – Team Download sample code:
FIRST ROBOTICS COMPETETION Introduction to Electrical & Control System Power and Signal Distribution/Interconnection Sensors, Motors, Speed Controllers,
Lesson 1 PLC BASICS. PLC Definition  Programmable Logic Controllers are industrial computers that control machine and other applications.  PLC have.
FRC Robot Electronics.
Introduction to Vexnet
Electronic Automatic Transmissions
Introduction to Team 294 Programming Concepts
Trainings 10/28 Woooooo!!.
Training 11/11/16 Robot Code (WPILib).
Photos and Sensor Instructions
Introduction to Programing the Cortex for BEST
Presentation transcript:

Understanding The 2008 FRC Robot Controller Chris Gregory FRC1089 – Team Mercury

Agenda I. What I will I learn from this workshop? II. What is the Robot Controller? III. How do we communicate with it? IV. Robot States (Modes) V. How does it connect to the rest of your robot? VI. Tips & Tricks VII. Additional Resources VIII. Q & A

I. What will I learn? How the RC interacts with devices in the FRC competition, on and off the field How the RC interacts with devices in the FRC competition, on and off the field How to correctly set up your Robot Controller within your robot How to correctly set up your Robot Controller within your robot The procedure for downloading code to your robot The procedure for downloading code to your robot Tips and Tricks to help you along the way Tips and Tricks to help you along the way

II. What is the Robot Controller?

“Heart and Brains of Robot” “Heart and Brains of Robot” Contains a PIC processor calculating at 10.0 MIPS, with 128k programmable flash memory Contains a PIC processor calculating at 10.0 MIPS, with 128k programmable flash memory Programmable in C using a C18 Compiler Programmable in C using a C18 Compiler What you’re here to learn more about What you’re here to learn more about

III. How do we communicate with the RC? RC Interfaces with Operator Interface (OI) via three methods RC Interfaces with Operator Interface (OI) via three methods Radio-Controlled using your radios (practice)Radio-Controlled using your radios (practice) Connected via Tether CableConnected via Tether Cable Radio-Controlled via the Competition port (At the events)Radio-Controlled via the Competition port (At the events)

Connected Via Tether Cable Robot receives input from OI and controls parts of the robot based on the programmable code Robot receives input from OI and controls parts of the robot based on the programmable code Robot sends data BACK to OI such as battery voltage, which motors are running, etc. Robot sends data BACK to OI such as battery voltage, which motors are running, etc. Use the tether to synchronize your OI and RC, as well as to set your team number Use the tether to synchronize your OI and RC, as well as to set your team number Don’t screw the tether in! Don’t screw the tether in!

Connected Via Tether Cable Connected this way, the OI does not require a power source, as it is run from the robot’s battery Connected this way, the OI does not require a power source, as it is run from the robot’s battery Not a good way to drive the robot around, as the stock tether is only 6’ long Not a good way to drive the robot around, as the stock tether is only 6’ long DON’T SCREW THE TETHER IN!!!!! DON’T SCREW THE TETHER IN!!!!!

Radio-controlled (Practice) Radios connected to both RC and OI Radios connected to both RC and OI (Use a tether cable first to synchronize them the first time you use them)(Use a tether cable first to synchronize them the first time you use them) Useful for testing at home, but no radio control allowed in pits at competition. Useful for testing at home, but no radio control allowed in pits at competition. Operator Interface requires external power (included in KOP) Operator Interface requires external power (included in KOP) Screw the radio into the robot, and keep your radio exposed (BUT NOT VULNERABLE) Screw the radio into the robot, and keep your radio exposed (BUT NOT VULNERABLE)

Radio-Controlled at the Competitions At the competition, the field controls which status your robot is in through the competition port on the OI At the competition, the field controls which status your robot is in through the competition port on the OI Field Techs will shut your robot down if they deem it unsafe Field Techs will shut your robot down if they deem it unsafe You don’t use your OI Radio or power source, those are provided through the competition port You don’t use your OI Radio or power source, those are provided through the competition port

IV. Robot States (Modes) Disabled Disabled How your robot starts and ends in a roundHow your robot starts and ends in a round Autonomous Autonomous Robot controlled through programming routines. USUALLY at the beginning of a round.Robot controlled through programming routines. USUALLY at the beginning of a round. Tele-operated (Practice) Tele-operated (Practice) Normal robot state: students control the machine via the OINormal robot state: students control the machine via the OI Program Program How you download code to the robotHow you download code to the robot

IV. Robot States (Modes) Practice Mode is set by default on power- up if tether cable connected Practice Mode is set by default on power- up if tether cable connected Disable Mode is on by default on competition field or if no radio/tether connected Disable Mode is on by default on competition field or if no radio/tether connected Program Mode enabled by pressing Program button on RC for 4 seconds Program Mode enabled by pressing Program button on RC for 4 seconds Disable/Practice/Autonomous mode can be toggled via a MODE SELECTOR SWITCH that you must purchase/create/obtain Disable/Practice/Autonomous mode can be toggled via a MODE SELECTOR SWITCH that you must purchase/create/obtain

V. How does it connect to the rest of your robot? Main Battery (See Electrical Diagram) Main Battery (See Electrical Diagram) Backup Battery Backup Battery Status/Team Lights (See Manual) Status/Team Lights (See Manual) PWM (Analog) Outputs PWM (Analog) Outputs Relay (Digital) Outputs Relay (Digital) Outputs Analog Inputs Analog Inputs Digital I/O Digital I/O

Backup Battery 7.2V battery pack used to stop RC from resetting if main power is too low 7.2V battery pack used to stop RC from resetting if main power is too low THIS IS REQUIRED FOR USING SERVO MOTORS ON YOUR ROBOT THIS IS REQUIRED FOR USING SERVO MOTORS ON YOUR ROBOT

PWM Outputs Pulse Width Modulation outputs Pulse Width Modulation outputs Primary used for controlling Victor speed controllers and powering Servo Motors Primary used for controlling Victor speed controllers and powering Servo Motors They are ANALOG outputs, effectively allowing variable speed and, in the case of motors and Victors, multiple directions. They are ANALOG outputs, effectively allowing variable speed and, in the case of motors and Victors, multiple directions. You’ll definitely use these to drive You’ll definitely use these to drive

Relay Outputs Digital Outputs that have 4 states each (Forward on/off, reverse on/off) Digital Outputs that have 4 states each (Forward on/off, reverse on/off) Useful for devices that only are fully on or off (such as the air compressor, a solenoid, or a lower- power motor) Useful for devices that only are fully on or off (such as the air compressor, a solenoid, or a lower- power motor) By default, most are controlled by push buttons on your OI joysticks By default, most are controlled by push buttons on your OI joysticks

Analog Inputs These are typically used to hook up to more advanced sensors, such as a sonic range finder, a potentiometer, or a gyro sensor These are typically used to hook up to more advanced sensors, such as a sonic range finder, a potentiometer, or a gyro sensor Allow for more detailed feedback to the Robot, as opposed to an on-off switch Allow for more detailed feedback to the Robot, as opposed to an on-off switch

Digital I/O ports These ports can be assigned IN CODE as input or output, but by default, they are all set as INPUT. These ports can be assigned IN CODE as input or output, but by default, they are all set as INPUT. Typically used for switches on the robot, such as limit switches, the air pressure switch (which shuts off the compressor if you hit the max PSI in your tanks)… Typically used for switches on the robot, such as limit switches, the air pressure switch (which shuts off the compressor if you hit the max PSI in your tanks)… … or autonomous routine switches (if you wanted to have multiple autonomous routines that you could select by flipping a switch on your robot) … or autonomous routine switches (if you wanted to have multiple autonomous routines that you could select by flipping a switch on your robot)

Flux Capacitor Just Kidding!

VI. Tips and Tricks (mostly learned from other teams’ mistakes) Do not drink liquids around your robot controller Do not drink liquids around your robot controller Make sure that your robot controller’s ports are easily accessible at all times – you’ll never know when you need to program or tether quickly Make sure that your robot controller’s ports are easily accessible at all times – you’ll never know when you need to program or tether quickly The backup battery will need a home – try to create a means to secure it, as the connection is a bit “flaky” The backup battery will need a home – try to create a means to secure it, as the connection is a bit “flaky”

VI. Tips and Tricks (mostly learned from other teams’ mistakes) Label your PWM cables!!!! You may find that you need to disconnect a cable, and you need to be able to plug them back in the right spot. Label your PWM cables!!!! You may find that you need to disconnect a cable, and you need to be able to plug them back in the right spot. Invest in, or create your own autonomous/disable switchbox. This will help with testing, as well as safety Invest in, or create your own autonomous/disable switchbox. This will help with testing, as well as safety Keep your wiring clean! Keep your wiring clean! Always keep backups of working code! Always keep backups of working code!

VI. Tips and Tricks (mostly learned from other teams’ mistakes) FOR THE LOVE OF GOD, DO NOT SCREW IN YOUR TETHER CABLE! FOR THE LOVE OF GOD, DO NOT SCREW IN YOUR TETHER CABLE! Treat your robot controller as if it cost you $ plus shipping and handling, because that’s how much it costs to replace it. Treat your robot controller as if it cost you $ plus shipping and handling, because that’s how much it costs to replace it. Secure your RC in a place that the tether port is easily accessible: You will be required to operate in this mode at the competitions Secure your RC in a place that the tether port is easily accessible: You will be required to operate in this mode at the competitions Invest in extra: Main and Backup Batteries, Tether Cables, Victors and Spikes Invest in extra: Main and Backup Batteries, Tether Cables, Victors and Spikes

VII. Additional Resources AndyMark – AndyMark – Place to purchase reliable mode selectorPlace to purchase reliable mode selector IFI Robotics – IFI Robotics – Manufacturer of RC – contains other guides and manuals, as well as links to programming guides and resourcesManufacturer of RC – contains other guides and manuals, as well as links to programming guides and resources ChiefDelphi – ChiefDelphi – Team 47’s homepage, considered the unofficial FIRST “hub”, contains a lot of useful resources on forums. Don’t forget to use the Search button!Team 47’s homepage, considered the unofficial FIRST “hub”, contains a lot of useful resources on forums. Don’t forget to use the Search button!

VIII. Q&A WELCOME TO FIRST!!