Bismillahirrahmanirohim

Cari Blog Ini

Kamis, 23 Juni 2011

Control System Specifics

Control System Specifics

Pick a year...any year...


2009 <i>FIRST</i> RC
FRC Control System 2009-present


1997 <i>FIRST</i> RC
FRC Control System 1997-1999

2004 <i>FIRST</i> RC
FRC Control System 2004-2008


1996 <i>FIRST</i> RC
FRC Control System 1995-1996

2001 <i>FIRST</i> RC
FRC Control System 2000-2003


1993 <i>FIRST</i> RC
FRC Control System 1993-1994



1992 <i>FIRST</i> RC
FRC Control System 1992


Prior to 2000 the FIRST control systems were loaned to the teams only for the duration of the competition season and had to be returned after the last competition. In 1992 the robots ran tethered to the operator controls. In 1994 the system was a wireless one made by Motorola and had 6 control channels, each of which was Forward/Stop/Reverse. The FIRST IFI control system appeared in 1999, but had to be returned to FIRST at the end of the competition season. In 2000 teams got to keep their control systems and the off-season events were born.


The FIRST Robotics Competition (FRC) control system has several smaller, mini-robot cousins designed and manufactured by Innovation FIRST Inc. (IFI). These can be used to develop software that ports quite easily to the full-sized robot controller and to prototype simple mechanical design concepts. The Vex system is the basis for a robotics competition all it's own.


Vex
Vex 2006-2008
Compatable with the full-size FRC control systems from 2004-2008


Edu or Robovation
Edu 2003-2005 PIC version
Compatable with the full-size FRC control systems from 2004-2008


Isaac 16 Edu
Isaac 16 Edu 2003 pBasic version
Compatable with the full-size FRC control systems from 2000-2003

Edu-Vex-FRC Specs Comparison 2000-2008



Generic Algorithms, Sensor Specifics, General Examples, Topics of Interest



PID Control Theory

"One of the more difficult programming problems to solve in FIRST robotics is accurate control of systems. For example in the 2006 Game ("Aim High") robots used a low-resolution digital camera with a serial output to track a green light. A series of globally accessible variables allowed the robot program to access the results of that tracking while processing. Now here’s where control theory comes in, in order to target the goal with a shooter mechanism we need some way to get it there. Many people recommend PID and this paper goes over the basic math and principles behind using it. It’s meant to be a general overview to help you to develop your own PID control programming."
PID Control Theory Rev. 3 (Adobe PDF, 38.6 KB)


Gyroscope Programming

One of the more common sensors in FIRST Robotics is the Gyro, also known as a Gyroscope, Angular Rate Sensor, and Yaw Rate Sensor. The uses for them are plentiful, from detecting tipping, to making accurate turns, to driving in a straight line.
Gyro Programming for FRC Robots Draft (Adobe PDF, 55.2 KB)


Integer Math

The FIRST Robotics Competition robot controllers up through 2008, as well as, the Vex and Edu mini-robot controllers do not have floating-point processors, so all math is performed as interger math. Floating-point values, e.g., 3.14159, can be used, but what really happens behind the scenes is the compiler includes software that computes real numbers using integer math. That means integer math is much more efficient (many times faster) than floating point math.
Integer math has it's pitfalls that you should be aware of.
Integer Math for FRC Robots (Microsoft Word, 44 KB)


Lookup Tables

Lookup tables are simple ways to take advantage of a table of data, so the data can be easily used in calculations. Examples include complex functions that can be reduced to a table for quick and easy reference, such as, sine/cosine values or points describing an ellipse or complex curve. It could also be a simple table of indexes into some database or something similar. Just for purposes of explanation a lookup table to convert a joystick that a driver is moving to change the robot motor response is shown. This particular example also touches on adjusting the drive table to match the characteristics of the Victor 884 sprrd controller.
Lookup Tables for FRC Robots (Microsoft Word, 122 KB)


Control Buttons

Not the kind you wear, but the ones the driver pushes, and I don't mean knowing how to press your teacher's buttons either. A pretty simple topic, so simple most people don't think much about it. Tell me though how does a button work in code? How do you make a button toggle on/off or act like a deadman switch and only react when you let go of a trigger?
Pressing Buttons on an FRC Robot (Microsoft Word, 45 KB)


Rangefinders

Okay, so you have a rangefinder – ultrasonic, IR, whatever – what do you do with it? Let’s say you already have your rangefinder hooked up and you’re getting readings from it. You can tell something is in front of you and how far away it is to the inch. Now what? Who is your robot going to tell? What can your code do with that? Here's a brief practical application or two for rangefinders.
Practical Applications-Rangefinders for FRC Robot (Microsoft Word, 178 KB)



Programming Workshops



ChiefDelphi Whitepapers:


Search for keyword "Programming"




Suggested References & Reading:

  • The C Programming Language, Brian Kernighan & Dennis Ritchie
  • The C Answer Book, Clovis Tondo & Scott Gimpel (a companion to the above book with solutions to the exercises in that book))
  • Programming Robot Controllers (Robot DNA Series) by Myke Predko
  • Robot Programming : A Practical Guide to Behavior-Based Robotics by Joe Jones, Daniel Roth
  • Physical Computing -- Dan O'Sullivan & Tom Igoe, Thomson Course Technology, 2004

Tidak ada komentar:

Posting Komentar

 
Design by Wordpress Theme | Bloggerized by Free Blogger Templates | coupon codes