Go to Post studies have shown that postive feedback works better. Driver should get a shock until he obtains target lock, then it stops. Performance incentive :^) - KenWittlief [more]
Home
Go Back   Chief Delphi > Technical > Programming > NI LabVIEW
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 19-01-2011, 15:44
flamingtoaster flamingtoaster is offline
Registered User
FRC #2161 (Robocats)
Team Role: Programmer
 
Join Date: Jan 2011
Rookie Year: 2009
Location: US
Posts: 5
flamingtoaster is an unknown quantity at this point
Swirve Drive

This year my team is using a swirve drive on the robot. I am a first year programmer and doi not know how to program this. I know I need to make a custom drive, has anyone done this in the past and have any ideas on how to get this to work?
__________________
Reply With Quote
  #2   Spotlight this post!  
Unread 20-01-2011, 09:59
JamesBrown JamesBrown is offline
Back after 4 years off
FRC #5279
Team Role: Engineer
 
Join Date: Nov 2004
Rookie Year: 2005
Location: Lynchburg VA
Posts: 1,276
JamesBrown has a reputation beyond reputeJamesBrown has a reputation beyond reputeJamesBrown has a reputation beyond reputeJamesBrown has a reputation beyond reputeJamesBrown has a reputation beyond reputeJamesBrown has a reputation beyond reputeJamesBrown has a reputation beyond reputeJamesBrown has a reputation beyond reputeJamesBrown has a reputation beyond reputeJamesBrown has a reputation beyond reputeJamesBrown has a reputation beyond repute
Re: Swirve Drive

Quote:
Originally Posted by flamingtoaster View Post
This year my team is using a swirve drive on the robot. I am a first year programmer and doi not know how to program this. I know I need to make a custom drive, has anyone done this in the past and have any ideas on how to get this to work?
There are two major components to controlling swerve drives.

1.) Wheel Angle: First you need to calculate the desired wheel angle, this will depend on exactly how you are going to control it but most likely you will have to take the X and Y values and use trig to calculate the desired angle (Tan=Opposite/Adjacent). You will also need to calculate the current angle, for this you will need some kind of sensor (likely a potentiometer). Once you have the desired and actual angles you can use a PID loop (there are functions written for this in both labview and C++) to adjust the angle. There are whitepapers here on CD that describe the process of tuning PID loops.

2.) Wheel Speed, this can be calculated more directly. You can calculate the desired speed from the X and Y components of the joystick (Pythagorean Theorem) and you can map that to wheel speed.

This is the simplest way to do swerve drive and it doesn't take into account turning. To give you more guidance we really need to know what you are using to control the bot and how the swerve drive is set up. Anytime you are looking to program something that is complicated it is important to break it into smaller functions and attack each independently.

If you have more questions feel free to post them.
__________________
I'm Back


5279 (2015-Present)
3594 (2011)
3280 (2010)
1665 (2009)
1350 (2008-2009)
1493 (2007-2008)
1568 (2005-2007)
Reply With Quote
  #3   Spotlight this post!  
Unread 20-01-2011, 12:55
Racer26 Racer26 is offline
Registered User
no team
Team Role: Alumni
 
Join Date: Apr 2003
Rookie Year: 2003
Location: Beaverton, ON
Posts: 2,229
Racer26 has a reputation beyond reputeRacer26 has a reputation beyond reputeRacer26 has a reputation beyond reputeRacer26 has a reputation beyond reputeRacer26 has a reputation beyond reputeRacer26 has a reputation beyond reputeRacer26 has a reputation beyond reputeRacer26 has a reputation beyond reputeRacer26 has a reputation beyond reputeRacer26 has a reputation beyond reputeRacer26 has a reputation beyond repute
Re: Swirve Drive

Side thought: If your team doesn't have a programmer that has at least a basic understanding of using Encoders or Potentiometers, and an understanding of how a swerve drive operates, perhaps your team should be doing something simpler, like Mecanum or Tank, and leave experimenting with Swerve until the offseason when you don't have the pressure of build season to deal with.

Most swerve drives i've seen fit into one of a couple categories:

All wheels steer together all the time (the 4 pods are chained together), and all wheels drive at the same speed (one drive pack, transmitted down to the wheels) (requires minimum of 2 motors)

Wheels steer in pairs (Front/Back pair, or Left/Right pair), and all wheels drive at the same speed (requires minimum of 3 motors)

All Wheels steer together, but each wheel has an independent motor for drive speed (requires minimum of 5 motors)

Wheels steer in pairs, each wheels speed is independent (requires minimum of 6 motors)

All wheels steer independently, and have independent speed (requires 8 motors)

They all need to be programmed differently.

1075's drivetrains have been as follows:

2003: Central Steerable Belt, 4 motors, and undriven trailing wheels, like a tricycle
2004: 4x14" bicycle tires, rear tires articulated by the arm, such that when hanging from the bar, instead of pulling the robot up, we simply lifted the wheels off the ground.
2005: 1075 did not compete
2006: Swerve with steered pairs, and a single drive pack driving all wheels at the same speed. Replaced in the off-season with the first incarnation of our track-drive (tank style) [each side had 3x2.5" CIMs inside the belt]
2007: 2nd incarnation of our track drive. replaced with the 3rd incarnation in the off-season [2xCIMs per side, inside the belt, Gen2 Shifter built in at 2nd incarnation]
2008: 4th incarnation of our track drive [2xCIMs + Gen2 Shifter] replaced by our 6wd drop center, with the same mounts in the off-season
2009: Swerve steered in pairs, independent wheel speeds
2010: DSSwerve, (essentially the same as our 2009 swerve, with improvements, and an extra set of wheels on the top of the robot.)

All of the drive units from 2006-offseason up to 2008-offseason are interchangeable and can be put on any one of those robots. They shared a mounting mechanism, and wiring style.
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 10:15.

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