Go to Post I'm pretty sure there is a federal sequester on the bandwidth coming out of LSR. - PayneTrain [more]
Home
Go Back   Chief Delphi > Technical > Control System > FRC Control System
CD-Media   CD-Spy  
portal register members calendar search Today's Posts Mark Forums Read FAQ rules

 
Reply
Thread Tools Rate Thread Display Modes
  #1   Spotlight this post!  
Unread 18-02-2012, 15:42
swwrobotics's Avatar
swwrobotics swwrobotics is offline
Registered User
FRC #2900 (The Mighty Penguins)
Team Role: Mechanical
 
Join Date: Jan 2011
Rookie Year: 2011
Location: Washington D.C.
Posts: 112
swwrobotics is an unknown quantity at this point
Tank or arcade drive?

Hey everyone, just wondering, for this year's game, would it be better to have a tank drive, or arcade drive using the joysticks that came in the kit? Our team is trying to figure out which one we should control the robot with and I was thinking maybe tank drive because it might be more intuitive. Any advice?
Reply With Quote
  #2   Spotlight this post!  
Unread 18-02-2012, 15:54
rzoeller rzoeller is offline
MN GOFIRST Recruitment Officer
AKA: Ryan Zoeller
FRC #2169 (RI3D 'Snow Problem; KING TeC)
Team Role: Alumni
 
Join Date: Nov 2009
Rookie Year: 2007
Location: Savage, MN
Posts: 111
rzoeller is a jewel in the roughrzoeller is a jewel in the roughrzoeller is a jewel in the rough
Re: Tank or arcade drive?

I know our drivers use arcade drive. They feel it offers them more control.
__________________
Ri3D - 'Snow Problem Programmer
MN GOFIRST Recruitment Officer
FRC 2169 Alumni
Reply With Quote
  #3   Spotlight this post!  
Unread 18-02-2012, 17:10
Ether's Avatar
Ether Ether is offline
systems engineer (retired)
no team
 
Join Date: Nov 2009
Rookie Year: 1969
Location: US
Posts: 7,995
Ether has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond repute
Re: Tank or arcade drive?

Quote:
Originally Posted by swwrobotics View Post
Hey everyone, just wondering, for this year's game, would it be better to have a tank drive, or arcade drive using the joysticks that came in the kit? Our team is trying to figure out which one we should control the robot with and I was thinking maybe tank drive because it might be more intuitive. Any advice?
It's personal preference. In other words, do hatever your driver(s) want.


Reply With Quote
  #4   Spotlight this post!  
Unread 19-02-2012, 14:33
gixxy's Avatar
gixxy gixxy is offline
Programming and Arduino Mentor
AKA: Gustave Michel III
FRC #3946 (Tiger Robotics)
Team Role: Mentor
 
Join Date: Nov 2011
Rookie Year: 2012
Location: Ruston, LA
Posts: 207
gixxy is on a distinguished road
Re: Tank or arcade drive?

By default our bot is Tank, but I have a button to switch to Arcade if you have to reach for a different button or switch and want to continue to drive the robot at the same time.
Reply With Quote
  #5   Spotlight this post!  
Unread 19-02-2012, 16:12
delsaner's Avatar
delsaner delsaner is offline
With Upmost Efficiency
AKA: Eric DelSanto
FRC #1676 (Pascack Pioneers)
Team Role: Alumni
 
Join Date: Dec 2007
Rookie Year: 2007
Location: New Jersey
Posts: 823
delsaner has a brilliant futuredelsaner has a brilliant futuredelsaner has a brilliant futuredelsaner has a brilliant futuredelsaner has a brilliant futuredelsaner has a brilliant futuredelsaner has a brilliant futuredelsaner has a brilliant futuredelsaner has a brilliant futuredelsaner has a brilliant futuredelsaner has a brilliant future
Re: Tank or arcade drive?

My personal preference from a performance standpoint is Tank Drive, primarily because precision of movement is allowed more in tank than arcade. I am no programmer, but I presume that Tank Drive is easier to code than arcade. We have used Tank Drive for the last few years, and we have gotten success with it.

As others have said though, it is really up to the drivers. Optimized performance and comfortable environment are generally associated with one another. Ask them and see what they would be more comfortable with.
__________________
"The creations of the hand are confined by reality. The creations of the mind know no such limits."
~MtG - Mind Unbound

Eric DelSanto
Game Announcer
H.E.R.E. Representative
Stevens Institute of Technology - Class of 2016 - BE/ME Mechanical Engineering
Concentration: Robotics, Mechatronics


[2008-2014]: FRC 1676 - The Pascack Pi-oneers
Reply With Quote
  #6   Spotlight this post!  
Unread 19-02-2012, 16:44
Mr. Lim Mr. Lim is offline
Registered User
AKA: Mr. Lim
no team
Team Role: Leadership
 
Join Date: Jan 2004
Rookie Year: 1998
Location: Toronto, Ontario
Posts: 1,125
Mr. Lim has a reputation beyond reputeMr. Lim has a reputation beyond reputeMr. Lim has a reputation beyond reputeMr. Lim has a reputation beyond reputeMr. Lim has a reputation beyond reputeMr. Lim has a reputation beyond reputeMr. Lim has a reputation beyond reputeMr. Lim has a reputation beyond reputeMr. Lim has a reputation beyond reputeMr. Lim has a reputation beyond reputeMr. Lim has a reputation beyond repute
Re: Tank or arcade drive?

Call me crazy, but every year I always insist my driver candidates try "Kaj Drive"

It's similar to Arcade drive, but the Y-axis and X-axis are split respectively onto the left and right thumbsticks on a Logitech Gamepad.


Left thumb controls forward and reverse.

Right thumb controls rotation.


Given how important "driving straight" is when driving up a bridge... you may want to consider this layout over tank. Tank drive is notoriously difficult for driving in straight lines.
__________________
In life, what you give, you keep. What you fail to give, you lose forever...
Reply With Quote
  #7   Spotlight this post!  
Unread 23-02-2012, 18:10
touchdownjesus4's Avatar
touchdownjesus4 touchdownjesus4 is offline
Registered User
AKA: Tyler Vonderhaar
FRC #4028 (Eagle Robotics)
Team Role: Programmer
 
Join Date: Jan 2012
Rookie Year: 2012
Location: Cincinnati, OH
Posts: 64
touchdownjesus4 is on a distinguished road
Re: Tank or arcade drive?

Quote:
Originally Posted by Mr. Lim View Post
Call me crazy, but every year I always insist my driver candidates try "Kaj Drive"

It's similar to Arcade drive, but the Y-axis and X-axis are split respectively onto the left and right thumbsticks on a Logitech Gamepad.


Left thumb controls forward and reverse.

Right thumb controls rotation.


Given how important "driving straight" is when driving up a bridge... you may want to consider this layout over tank. Tank drive is notoriously difficult for driving in straight lines.
I was thinking about doing something like this, just have no idea how to program it. I'm programming in java and currently have it set up to do tank drive but wanted to try out this type of system. How does your team implement this?
Reply With Quote
  #8   Spotlight this post!  
Unread 23-02-2012, 18:43
touchdownjesus4's Avatar
touchdownjesus4 touchdownjesus4 is offline
Registered User
AKA: Tyler Vonderhaar
FRC #4028 (Eagle Robotics)
Team Role: Programmer
 
Join Date: Jan 2012
Rookie Year: 2012
Location: Cincinnati, OH
Posts: 64
touchdownjesus4 is on a distinguished road
Re: Tank or arcade drive?

Quote:
Originally Posted by Ether View Post
left_wheels = (ForwardCommand + ClockwiseRotationCommand)/2

right_wheels = (ForwardCommand - ClockwiseRotationCommand)/2


ForwardCommand and ClockwiseRotationCommand are -1 to +1.


ok so the clockwise rotation command would come from the right joystick and the forward command from the left..

Would you just have the motor set at that speed given by the formula you gave?

Also, why are the values divided by 2?
Reply With Quote
  #9   Spotlight this post!  
Unread 23-02-2012, 19:28
rachelholladay's Avatar
rachelholladay rachelholladay is offline
Registered User
FRC #1912 (Team Combustion)
 
Join Date: Dec 2010
Rookie Year: 2006
Location: Slidell, Louisiana, USA
Posts: 540
rachelholladay has a reputation beyond reputerachelholladay has a reputation beyond reputerachelholladay has a reputation beyond reputerachelholladay has a reputation beyond reputerachelholladay has a reputation beyond reputerachelholladay has a reputation beyond reputerachelholladay has a reputation beyond reputerachelholladay has a reputation beyond reputerachelholladay has a reputation beyond reputerachelholladay has a reputation beyond reputerachelholladay has a reputation beyond repute
Re: Tank or arcade drive?

Orginally our drivers asked for Tank. Then after driving around they wanted it switched to arcade because they felt it gave better control. So teleop driver is now arcade.
That being said, our Kinect-enabled autonomous drive is in Tank.
__________________
Carnegie Mellon School of Computer Science Class of 2017
2012 Dean's List Winner, 2011 NWCIT Award of Aspirations in Computing National Winner

2014 - : FIRST Team 3504 Girls of Steel (Mentor)
2014 Engineering Inspiration

2006 - 2013: FIRST Team 1912 Combustion (Webmaster / Controls Capt / Beta Test Lead / Drive Capt / JrFLL Coach)
2013 Woodie Flowers Finalist for Wendy Holladay. 2010 - 2013 Regional Chairman's Award at the Bayou Regional. 2011 - 2012 Best Website at the Bayou Regional. 2010 - 2013 Beta Test Team for Hardware and LabVIEW. 2012 JrFLL State Expo Coordinator.
Reply With Quote
  #10   Spotlight this post!  
Unread 23-02-2012, 19:30
touchdownjesus4's Avatar
touchdownjesus4 touchdownjesus4 is offline
Registered User
AKA: Tyler Vonderhaar
FRC #4028 (Eagle Robotics)
Team Role: Programmer
 
Join Date: Jan 2012
Rookie Year: 2012
Location: Cincinnati, OH
Posts: 64
touchdownjesus4 is on a distinguished road
Re: Tank or arcade drive?

Quote:
Originally Posted by Ether View Post
correct



left_wheels get set to (ForwardCommand + ClockwiseRotationCommand)/2

right_wheels get set to (ForwardCommand - ClockwiseRotationCommand)/2



So they stay within the range -1 to +1



Alright great, probably could have answered that last question if I actually thought about it a little more.

I'll get some code set up to test out once we get to competition, I can't wait to get more driving practice in!


One other question.. If the value is divided by two would this limit the robot to only go at half speed at any given time?

Last edited by touchdownjesus4 : 23-02-2012 at 19:50.
Reply With Quote
  #11   Spotlight this post!  
Unread 23-02-2012, 19:36
Joe Ross's Avatar Unsung FIRST Hero
Joe Ross Joe Ross is offline
Registered User
FRC #0330 (Beachbots)
Team Role: Engineer
 
Join Date: Jun 2001
Rookie Year: 1997
Location: Los Angeles, CA
Posts: 8,544
Joe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond reputeJoe Ross has a reputation beyond repute
Re: Tank or arcade drive?

Quote:
Originally Posted by touchdownjesus4 View Post
I was thinking about doing something like this, just have no idea how to program it. I'm programming in java and currently have it set up to do tank drive but wanted to try out this type of system. How does your team implement this?
You could use the following method
Code:
public void arcadeDrive(GenericHID moveStick, final int moveAxis, GenericHID rotateStick, final int rotateAxis, boolean squaredInputs)
Set moveStick and rotateStick to your controller and moveAxis to the y axis of the left stick and rotateAxis to the x axis of the right stick.

Quote:
Originally Posted by Ether View Post
left_wheels = (ForwardCommand + ClockwiseRotationCommand)/2

right_wheels = (ForwardCommand - ClockwiseRotationCommand)/2


ForwardCommand and ClockwiseRotationCommand are -1 to +1.


The disadvantage of this algorithm is that when Forward Command is 1 and ClockwiseRotationCommand is 0, you only move at half speed.

I've attached a quick comparison between Ether's algorithm, the arcade drive in WPILib (Java and C++, not sure if it's different in LabVIEW), and the algorithm that we use. (We drive with tank drive in telop, but find that "arcade" is easier to program for in autonomous)
Attached Files
File Type: xlsx Arcade_Comparison.xlsx (12.5 KB, 64 views)
Reply With Quote
  #12   Spotlight this post!  
Unread 23-02-2012, 20:05
Dusk Star's Avatar
Dusk Star Dusk Star is offline
team Chief Delphi junkie
AKA: Andrew
FRC #2611 (Jacktown Vectors)
Team Role: Programmer
 
Join Date: Jan 2012
Rookie Year: 2008
Location: Jackson, MI
Posts: 63
Dusk Star is an unknown quantity at this point
Re: Tank or arcade drive?

We called that FPS drive, as the left movement, right rotation layout was immediately familiar from Halo, BF3, CoD, etc. And we implemented it, on a controller, with something like myrobot.arcadedrive(stick1.getrawaxis(KYaxis), stick1.getrawaxis(KZaxis)); synatax is probably wrong though!
Reply With Quote
  #13   Spotlight this post!  
Unread 23-02-2012, 20:49
touchdownjesus4's Avatar
touchdownjesus4 touchdownjesus4 is offline
Registered User
AKA: Tyler Vonderhaar
FRC #4028 (Eagle Robotics)
Team Role: Programmer
 
Join Date: Jan 2012
Rookie Year: 2012
Location: Cincinnati, OH
Posts: 64
touchdownjesus4 is on a distinguished road
Re: Tank or arcade drive?

Ok I'll just use the arcade drive method, I had it in my mind that arcade drive was something different for some reason.
Reply With Quote
  #14   Spotlight this post!  
Unread 23-02-2012, 22:32
Ether's Avatar
Ether Ether is offline
systems engineer (retired)
no team
 
Join Date: Nov 2009
Rookie Year: 1969
Location: US
Posts: 7,995
Ether has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond repute
Re: Tank or arcade drive?

Quote:
Originally Posted by touchdownjesus4 View Post
One other question.. If the value is divided by two would this limit the robot to only go at half speed at any given time?
Quote:
Originally Posted by Joe Ross View Post
The disadvantage of this algorithm is that when Forward Command is 1 and ClockwiseRotationCommand is 0, you only move at half speed.
Thanks guys. I'm having a bad day today. Caffeine withdrawal.

http://www.chiefdelphi.com/forums/sh...2&postcount=25




Attached Files
File Type: pdf arcade diagram & code.pdf (20.9 KB, 605 views)
Reply With Quote
Reply


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


All times are GMT -5. The time now is 21:17.

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