Go to Post Rules can be rewritten, problems can be fixed, but peoples' feelings are far from inanimate - they need more consideration than just being "corrected". - Eugenia Gabrielov [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

 
 
 
Thread Tools Rate Thread Display Modes
Prev Previous Post   Next Post Next
  #1   Spotlight this post!  
Unread 09-06-2013, 14:38
Caleb Sykes's Avatar
Caleb Sykes Caleb Sykes is offline
Registered User
FRC #4536 (MinuteBots)
Team Role: Mentor
 
Join Date: Feb 2011
Rookie Year: 2009
Location: St. Paul, Minnesota
Posts: 1,059
Caleb Sykes has a reputation beyond reputeCaleb Sykes has a reputation beyond reputeCaleb Sykes has a reputation beyond reputeCaleb Sykes has a reputation beyond reputeCaleb Sykes has a reputation beyond reputeCaleb Sykes has a reputation beyond reputeCaleb Sykes has a reputation beyond reputeCaleb Sykes has a reputation beyond reputeCaleb Sykes has a reputation beyond reputeCaleb Sykes has a reputation beyond reputeCaleb Sykes has a reputation beyond repute
faster field-centric mecanum drive

During the build season, I programmed a basic field-centric mecanum drive on a previous robot. Our driver had driven in both Logomotion and Rebound Rumble using a robot-centric mecanum drive. His biggest complaint about the field-centric drive was that the robot could never move as fast strafing as it did moving forward and backward. For example, when the robot was facing forward and he wanted it to go left, the field-centric code would strafe left, and if he wanted the robot to go forward, the robot would drive forward. The problem came from a difference in maximum velocities. The strafing would always move more slowly at max than the forward/backward movement.

To the best of my knowledge, this is an omni-directional drive issue unique to mecanum drive. I don't think that either swerve or omni drive encounter this because there is no appreciable difference in force when moving in distinct directions for these drive systems.

Our driver ended up using standard robot-centric drive because he was often moving at full speed, and he wanted to know how fast the robot would move when going forward/backward or left/right. His concern came from the fact that, with field-centric mecanum, he would not know at what velocity the robot would drive when he pushed the joystick completely in one direction if he didn't know exactly which way he was facing.

I've been dreaming up a field-centric mecanum drive system that nullifies this problem, and I wanted to see if anyone has done anything similar. Essentially, the driver would use only one joystick, and the direction that he moves the joystick, the robot will move on the field (field-centric). In addition to moving in that direction however, the robot would also slowly turn to face that direction (or 180 degrees off) simultaneously. The advantage to standard mecanum omni-directional drive would be that the robot should be able to move more quickly when the front-back line of the wheels is parallel to the desired direction of motion.

For example, when the robot is facing forward, and the driver pushes the joystick left, the robot will:
1) strafe left and turn CCW simultaneously
2) continue moving left relative to the field as in standard omni-directional drive but simultaneously continue turning CCW
3) eventually stop turning and drive straight relative to the robot

Essentially, this drive system would allow maximum velocity in any direction (after a short period of time) while also taking advantage of mecanum's unique ability to move and turn the robot at the same time. It also opens up more capability for the driver with a simplification down to a single joystick instead of two. The driver could also have preset angles programmed into buttons which would cause the robot to switch from my drive system to basic field-centric so that the robot could line up for things like the feeder station or shooting.

In another light, this is similar to a 6-wheel robot field-centric code, in which the robot first turns to the desired direction and then drives that way. The only distinction would be that the mecanum wheels could have the robot already moving in that direction while it is turning.

Has this been done before?
 


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 22:47.

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