Go to Post The great thing about autonomous mode is that it doesn't require any additional effort from anyone else on your team... (You could do that yourself...but I've noticed that people will usually offer to do it for you, rather than let the programmer touch power tools.) - jgannon [more]
Home
Go Back   Chief Delphi > Technical > Programming
CD-Media   CD-Spy  
portal register members calendar search Today's Posts Mark Forums Read FAQ rules

 
View Poll Results: How do you choose values for tank drive?
Mathematically (Please define below) 5 29.41%
Path based 3 17.65%
Experimentation 8 47.06%
Other 3 17.65%
Multiple Choice Poll. Voters: 17. You may not vote on this poll

Closed Thread
Thread Tools Rate Thread Display Modes
  #1   Spotlight this post!  
Unread 02-09-2009, 00:02
biojae's Avatar
biojae biojae is offline
Likes Omni drives :)
AKA: Justin Stocking
FTC #5011 (BOT SQUAD) && FTC#72(Garage bots)&& FRC#0399 (Eagle Robotics)
Team Role: College Student
 
Join Date: Oct 2008
Rookie Year: 2008
Location: Lancaster
Posts: 276
biojae is a jewel in the roughbiojae is a jewel in the roughbiojae is a jewel in the rough
Tank Steering

I have noticed that most of the robots here use a skid steering drive.
How do most teams decide which values to use in the autonomous mode for getting to a location on the field?
__________________
FTC Team 72 - No site
FRC Team 399 - http://www.team399.org
2010 Rockwell Collins Innovation in Control Award - (Use of the CAN bus, among other reasons) Phoenix, Arizona!
  #2   Spotlight this post!  
Unread 02-09-2009, 00:13
Chexposito's Avatar
Chexposito Chexposito is offline
Registered User
AKA: Expo
FRC #1730
Team Role: Alumni
 
Join Date: Feb 2009
Rookie Year: 2007
Location: Missouri
Posts: 272
Chexposito is a glorious beacon of lightChexposito is a glorious beacon of lightChexposito is a glorious beacon of lightChexposito is a glorious beacon of lightChexposito is a glorious beacon of lightChexposito is a glorious beacon of light
Re: Tank Steering

we have switches on the robot to flip to indicate what positition it is at. our programers found it easier to do that
  #3   Spotlight this post!  
Unread 02-09-2009, 00:15
biojae's Avatar
biojae biojae is offline
Likes Omni drives :)
AKA: Justin Stocking
FTC #5011 (BOT SQUAD) && FTC#72(Garage bots)&& FRC#0399 (Eagle Robotics)
Team Role: College Student
 
Join Date: Oct 2008
Rookie Year: 2008
Location: Lancaster
Posts: 276
biojae is a jewel in the roughbiojae is a jewel in the roughbiojae is a jewel in the rough
Re: Tank Steering

Quote:
Originally Posted by Chexposito View Post
we have switches on the robot to flip to indicate what positition it is at. our programers found it easier to do that
so, then its just experimented values?
__________________
FTC Team 72 - No site
FRC Team 399 - http://www.team399.org
2010 Rockwell Collins Innovation in Control Award - (Use of the CAN bus, among other reasons) Phoenix, Arizona!
  #4   Spotlight this post!  
Unread 02-09-2009, 00:21
Chexposito's Avatar
Chexposito Chexposito is offline
Registered User
AKA: Expo
FRC #1730
Team Role: Alumni
 
Join Date: Feb 2009
Rookie Year: 2007
Location: Missouri
Posts: 272
Chexposito is a glorious beacon of lightChexposito is a glorious beacon of lightChexposito is a glorious beacon of lightChexposito is a glorious beacon of lightChexposito is a glorious beacon of lightChexposito is a glorious beacon of light
Re: Tank Steering

yes and no, we had a lot of encoders on our robot so we knew exactly how far it went, but the turning we did was experimental. (we had a crab drive)

here's a pic: http://www.teamdriven.us/media_page/...s/102_2390.jpg
  #5   Spotlight this post!  
Unread 02-09-2009, 00:28
biojae's Avatar
biojae biojae is offline
Likes Omni drives :)
AKA: Justin Stocking
FTC #5011 (BOT SQUAD) && FTC#72(Garage bots)&& FRC#0399 (Eagle Robotics)
Team Role: College Student
 
Join Date: Oct 2008
Rookie Year: 2008
Location: Lancaster
Posts: 276
biojae is a jewel in the roughbiojae is a jewel in the roughbiojae is a jewel in the rough
Re: Tank Steering

Quote:
Originally Posted by Chexposito View Post
yes and no, we had a lot of encoders on our robot so we knew exactly how far it went, but the turning we did was experimental. (we had a crab drive)

here's a pic: http://www.teamdriven.us/media_page/...s/102_2390.jpg
oh, crab has several advantages over tank for navigation.
I wish that kinematically modeling a skidsteer was easier for navigation.
If my team would use crab, I would already have made a navigation model, and have a route planning algorithm.
Navigation with skid steer is harder, and it seems no teams have done much with it
__________________
FTC Team 72 - No site
FRC Team 399 - http://www.team399.org
2010 Rockwell Collins Innovation in Control Award - (Use of the CAN bus, among other reasons) Phoenix, Arizona!
  #6   Spotlight this post!  
Unread 02-09-2009, 00:33
MrForbes's Avatar
MrForbes MrForbes is offline
Registered User
AKA: Jim
FRC #1726 (N.E.R.D.S.)
Team Role: Mentor
 
Join Date: Feb 2006
Rookie Year: 2006
Location: Sierra Vista AZ
Posts: 6,033
MrForbes has a reputation beyond reputeMrForbes has a reputation beyond reputeMrForbes has a reputation beyond reputeMrForbes has a reputation beyond reputeMrForbes has a reputation beyond reputeMrForbes has a reputation beyond reputeMrForbes has a reputation beyond reputeMrForbes has a reputation beyond reputeMrForbes has a reputation beyond reputeMrForbes has a reputation beyond reputeMrForbes has a reputation beyond repute
Re: Tank Steering

Quote:
Originally Posted by biojae View Post
Navigation with skid steer is harder, and it seems no teams have done much with it
almost requires some type of position/orientation feedback, eh?

Skids are difficult to predict.
  #7   Spotlight this post!  
Unread 02-09-2009, 00:35
biojae's Avatar
biojae biojae is offline
Likes Omni drives :)
AKA: Justin Stocking
FTC #5011 (BOT SQUAD) && FTC#72(Garage bots)&& FRC#0399 (Eagle Robotics)
Team Role: College Student
 
Join Date: Oct 2008
Rookie Year: 2008
Location: Lancaster
Posts: 276
biojae is a jewel in the roughbiojae is a jewel in the roughbiojae is a jewel in the rough
Re: Tank Steering

Quote:
Originally Posted by squirrel View Post
almost requires some type of position/orientation feedback, eh?

Skids are difficult to predict.
A combination Gyro, encoder, + inertial mesurements?
__________________
FTC Team 72 - No site
FRC Team 399 - http://www.team399.org
2010 Rockwell Collins Innovation in Control Award - (Use of the CAN bus, among other reasons) Phoenix, Arizona!
  #8   Spotlight this post!  
Unread 02-09-2009, 00:41
AdamHeard's Avatar
AdamHeard AdamHeard is offline
Lead Mentor
FRC #0973 (Greybots)
Team Role: Mentor
 
Join Date: Oct 2004
Rookie Year: 2004
Location: Atascadero
Posts: 5,526
AdamHeard has a reputation beyond reputeAdamHeard has a reputation beyond reputeAdamHeard has a reputation beyond reputeAdamHeard has a reputation beyond reputeAdamHeard has a reputation beyond reputeAdamHeard has a reputation beyond reputeAdamHeard has a reputation beyond reputeAdamHeard has a reputation beyond reputeAdamHeard has a reputation beyond reputeAdamHeard has a reputation beyond reputeAdamHeard has a reputation beyond repute
Send a message via AIM to AdamHeard
Re: Tank Steering

Quote:
Originally Posted by biojae View Post
A combination Gyro, encoder, + inertial mesurements?
Pretty solid results have been achieved with just encoders and a gyro. I think the entire 08 season was a testament to this.
  #9   Spotlight this post!  
Unread 02-09-2009, 00:48
biojae's Avatar
biojae biojae is offline
Likes Omni drives :)
AKA: Justin Stocking
FTC #5011 (BOT SQUAD) && FTC#72(Garage bots)&& FRC#0399 (Eagle Robotics)
Team Role: College Student
 
Join Date: Oct 2008
Rookie Year: 2008
Location: Lancaster
Posts: 276
biojae is a jewel in the roughbiojae is a jewel in the roughbiojae is a jewel in the rough
Re: Tank Steering

Quote:
Originally Posted by AdamHeard View Post
Pretty solid results have been achieved with just encoders and a gyro. I think the entire 08 season was a testament to this.
so just a simple formula like

X pos = X0 + (((Left encoder + Right encoder)* wheel radius) /2 ) * cos(Gyro Theta)
Y pos = Y0 + (((Left encoder + Right encoder)* wheel radius) /2 ) * sin(Gyro Theta)
__________________
FTC Team 72 - No site
FRC Team 399 - http://www.team399.org
2010 Rockwell Collins Innovation in Control Award - (Use of the CAN bus, among other reasons) Phoenix, Arizona!
  #10   Spotlight this post!  
Unread 02-09-2009, 00:58
AustinSchuh AustinSchuh is offline
Registered User
FRC #0971 (Spartan Robotics) #254 (The Cheesy Poofs)
Team Role: Engineer
 
Join Date: Feb 2005
Rookie Year: 1999
Location: Los Altos, CA
Posts: 803
AustinSchuh has a reputation beyond reputeAustinSchuh has a reputation beyond reputeAustinSchuh has a reputation beyond reputeAustinSchuh has a reputation beyond reputeAustinSchuh has a reputation beyond reputeAustinSchuh has a reputation beyond reputeAustinSchuh has a reputation beyond reputeAustinSchuh has a reputation beyond reputeAustinSchuh has a reputation beyond reputeAustinSchuh has a reputation beyond reputeAustinSchuh has a reputation beyond repute
Re: Tank Steering

This year, 971 integrated the ground speed sensors to get our position. We couldn't measure sideways sliding, though one more sensor and vex omni wheel would have dealt with that. Our programmer then wrote a PD loop to get the robot to follow a spline.

One of the most important lessons he learned during this process is that it helps a lot to have plots on your computer showing what you wanted, and what the bot did. He used the dashboard port, a piece of ruby code, and Gnuplot to get the data back and display it.

An easy way to go to a position on the field is to write a PD loop that controls the steering to get the angle right, and apply forwards power to get to the point. If you care if you stop there, you'll then need some sort of control for the throttle as well. A simple way to follow a path is to string these points together and move on to the next one when you get close to the first one. This all assumes you have encoders and/or gyros to measure where you are.
  #11   Spotlight this post!  
Unread 02-09-2009, 01:08
Akash Rastogi Akash Rastogi is offline
Jim Zondag is my Spirit Animal
FRC #2170 (Titanium Tomahawks)
Team Role: Mentor
 
Join Date: Feb 2007
Rookie Year: 2006
Location: Manchester, Connecticut
Posts: 7,007
Akash Rastogi has a reputation beyond reputeAkash Rastogi has a reputation beyond reputeAkash Rastogi has a reputation beyond reputeAkash Rastogi has a reputation beyond reputeAkash Rastogi has a reputation beyond reputeAkash Rastogi has a reputation beyond reputeAkash Rastogi has a reputation beyond reputeAkash Rastogi has a reputation beyond reputeAkash Rastogi has a reputation beyond reputeAkash Rastogi has a reputation beyond reputeAkash Rastogi has a reputation beyond repute
Re: Tank Steering

Quote:
Originally Posted by AdamHeard View Post
Pretty solid results have been achieved with just encoders and a gyro. I think the entire 08 season was a testament to this.
Our best results have been from gyros, ecoders, PD loops and PID.

Once StanGPS was released people learned A LOT about how to write a good autonomous.
__________________
My posts and opinions do not necessarily reflect those of my affiliated team.
['16-'xx]: Mentor FRC 2170 | ['11-'13]: Co-Founder/Mentor FRC 3929 | ['06-'10]: Student FRC 11 - MORT | ['08-'12]: Founder - EWCP (OG)
  #12   Spotlight this post!  
Unread 02-09-2009, 01:49
biojae's Avatar
biojae biojae is offline
Likes Omni drives :)
AKA: Justin Stocking
FTC #5011 (BOT SQUAD) && FTC#72(Garage bots)&& FRC#0399 (Eagle Robotics)
Team Role: College Student
 
Join Date: Oct 2008
Rookie Year: 2008
Location: Lancaster
Posts: 276
biojae is a jewel in the roughbiojae is a jewel in the roughbiojae is a jewel in the rough
Re: Tank Steering

Quote:
Originally Posted by AustinSchuh View Post
This year, 971 integrated the ground speed sensors to get our position. We couldn't measure sideways sliding, though one more sensor and vex omni wheel would have dealt with that. Our programmer then wrote a PD loop to get the robot to follow a spline.
Could an accelerometer account for the deflection?

and how was the spline calculated?

Quote:
One of the most important lessons he learned during this process is that it helps a lot to have plots on your computer showing what you wanted, and what the bot did. He used the dashboard port, a piece of ruby code, and Gnuplot to get the data back and display it.
That sounds like an application for a touchscreen dashboard

Quote:
An easy way to go to a position on the field is to write a PD loop that controls the steering to get the angle right, and apply forwards power to get to the point. If you care if you stop there, you'll then need some sort of control for the throttle as well. A simple way to follow a path is to string these points together and move on to the next one when you get close to the first one. This all assumes you have encoders and/or gyros to measure where you are.
The steering seems to me the hardest part. What variables did the PD loop control ?
__________________
FTC Team 72 - No site
FRC Team 399 - http://www.team399.org
2010 Rockwell Collins Innovation in Control Award - (Use of the CAN bus, among other reasons) Phoenix, Arizona!
  #13   Spotlight this post!  
Unread 02-09-2009, 07:51
Unsung FIRST Hero
Al Skierkiewicz Al Skierkiewicz is offline
Broadcast Eng/Chief Robot Inspector
AKA: Big Al WFFA 2005
FRC #0111 (WildStang)
Team Role: Engineer
 
Join Date: Jun 2001
Rookie Year: 1996
Location: Wheeling, IL
Posts: 10,798
Al Skierkiewicz has a reputation beyond reputeAl Skierkiewicz has a reputation beyond reputeAl Skierkiewicz has a reputation beyond reputeAl Skierkiewicz has a reputation beyond reputeAl Skierkiewicz has a reputation beyond reputeAl Skierkiewicz has a reputation beyond reputeAl Skierkiewicz has a reputation beyond reputeAl Skierkiewicz has a reputation beyond reputeAl Skierkiewicz has a reputation beyond reputeAl Skierkiewicz has a reputation beyond reputeAl Skierkiewicz has a reputation beyond repute
Re: Tank Steering

Crab steering should be no harder than any other steering and perhaps more easy. You need to know how far the wheels have driven (preferably more than one to increase accuracy), which direction the steering is turned and where you want the robot to be at various intervals. The big variables occur when you run into objects on the field like goals and other robots. With other steering methods you have to compensate for turning radius when moving in other than a straight line.
As far as travel, we have used wheel encoders, either scratch built optical or off the shelf rotational encoders. The data is then used in calculating the distance traveled by incorporating wheel circumference and rotations. Steering is a simple pot but you should have used that already for feedback control with manual steering. A gyro will help you to maintain preset way points and can help in collision correction. We used one to great effect during 2003 when climbing the ramp in auto.
__________________
Good Luck All. Learn something new, everyday!
Al
WB9UVJ
www.wildstang.org
________________________
Storming the Tower since 1996.
  #14   Spotlight this post!  
Unread 02-09-2009, 09:08
Chris Hibner's Avatar Unsung FIRST Hero
Chris Hibner Chris Hibner is offline
Eschewing Obfuscation Since 1990
AKA: Lars Kamen's Roadie
FRC #0051 (Wings of Fire)
Team Role: Engineer
 
Join Date: May 2001
Rookie Year: 1997
Location: Canton, MI
Posts: 1,488
Chris Hibner has a reputation beyond reputeChris Hibner has a reputation beyond reputeChris Hibner has a reputation beyond reputeChris Hibner has a reputation beyond reputeChris Hibner has a reputation beyond reputeChris Hibner has a reputation beyond reputeChris Hibner has a reputation beyond reputeChris Hibner has a reputation beyond reputeChris Hibner has a reputation beyond reputeChris Hibner has a reputation beyond reputeChris Hibner has a reputation beyond repute
Re: Tank Steering

Quote:
Originally Posted by biojae View Post
Navigation with skid steer is harder, and it seems no teams have done much with it
That's a pretty bold claim, as well has a VERY inaccurate one. A lot of teams have been doing skid steer navigation since autonomous began in 2003.

Here's the best advice I can give you: do NOT put your encoders on your drive wheels - put them on non-driven "dummy" wheels that do nothing but measure distance. By using non-driven wheels, all of the skidding and associated wheel slippage do not influence the measured distance.
__________________
-
An ounce of perception is worth a pound of obscure.
  #15   Spotlight this post!  
Unread 02-09-2009, 09:29
JesseK's Avatar
JesseK JesseK is offline
Expert Flybot Crasher
FRC #1885 (ILITE)
Team Role: Mentor
 
Join Date: Mar 2007
Rookie Year: 2005
Location: Reston, VA
Posts: 3,722
JesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond reputeJesseK has a reputation beyond repute
Re: Tank Steering

I'm pretty sure '08 bots who could run around the field multiple times used more than just gyros and encoders (...like human IR control...).

That said, in the quadrotor world there's only 1 way to go: Butterworth-filtered accelerometers and redundant gyros that failover. The filters help to reduce noise at the circuit level. The gyros are on a reset circuit that resets their power every N seconds to reduce slop (and there's another issue...can't remember the name...where over time their readings become more offset). While one is resetting, the other has valid data. I'm not the circuit genius behind this ... I'm the one who integrated the architecture together to make everything work together as 1 system

In the FRC world, we've used encoders and gyros with success (2007) and failure (2008). Encoders give a # of ticks per rotation, and that can translate into inches per tick. If you poll the gyro every N milliseconds, you can use some trig (using lookup tables on those systems) to calculate your position with pretty good accuracy. Accelerometers have generally been too noisy to be accurate for planar field positioning in our experience. This year we will probably use filters with them for angular arm positioning (shh, don't tell my team that ... ).
__________________

Drive Coach, 1885 (2007-present)
CAD Library Updated 5/1/16 - 2016 Curie/Carver Industrial Design Winner
GitHub

Last edited by JesseK : 02-09-2009 at 09:32.
Closed Thread


Thread Tools
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
need glp programing steering with a steering wheel Matchew Programming 2 10-02-2003 14:20
Under or Over? To tank or Not to tank that tis the question! archiver 2001 2 23-06-2002 22:53
Single Joystick Tank Steering archiver 2001 5 23-06-2002 22:49
tank or go-cart style steering? archiver 2001 17 23-06-2002 22:42
tank steering archiver 2000 10 23-06-2002 22:28


All times are GMT -5. The time now is 01:56.

The Chief Delphi Forums are sponsored by Innovation First International, Inc.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi