Go to Post There is a very fine line between passion and emotion, sometime it gets crossed. Let's not confuse the two. - JohnBoucher [more]
Home
Go Back   Chief Delphi > Technical > Technical Discussion
CD-Media   CD-Spy  
portal register members calendar search Today's Posts Mark Forums Read FAQ rules

 
Closed Thread
 
Thread Tools Rate Thread Display Modes
  #1   Spotlight this post!  
Unread 19-04-2015, 14:37
vrcprogrammer vrcprogrammer is offline
Registered User
no team
 
Join Date: Apr 2015
Location: Planet Earth
Posts: 12
vrcprogrammer is an unknown quantity at this point
Localization of A Omni-Directional Robot

I have been looking around the web and couldn't find anything. I am trying to do localization, which is finding the location of a robot, on an omni-directional, such as an X-Drive or Mechanum Drive. I have encoders on all four wheels. If anyone can point me towards the formulas or the code that I can use to figure it out.
Thanks for all your help.
  #2   Spotlight this post!  
Unread 19-04-2015, 15:01
Ether's Avatar
Ether Ether is offline
systems engineer (retired)
no team
 
Join Date: Nov 2009
Rookie Year: 1969
Location: US
Posts: 8,004
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: Localization of A Omni-Directional Robot

Quote:
Originally Posted by vrcprogrammer View Post
I have been looking around the web and couldn't find anything. I am trying to do localization, which is finding the location of a robot, on an omni-directional, such as an X-Drive or Mechanum Drive. I have encoders on all four wheels. If anyone can point me towards the formulas or the code that I can use to figure it out.
Thanks for all your help.
Finding the correct speed for each of four mecanum (notice there's no h in mecanum) wheels, given the desired instantaneous vehicle motion (rotatation and XY translation), is called inverse kinematics.

The opposite problem -- finding the vehicle motion given the speeds of each of the four mecanum wheels -- is called forward kinematics. I discuss this briefly starting at the bottom of page7 of this document.

But even if all four mec wheels are always turning at kinematically correct speeds (which is a non-trivial problem), in the real world there will be factors such as roller axis free play, roller friction, carpet compliance, weight distribution, acceleration forces, etc etc which cause the actual vehicle motion to differ (perhaps substantially) from the predicted motion.

Then, on top of that, you would have to integrate the vehicle motion over time to get vehicle location and orientation... and the errors would accumulate.

So the question needs to be asked: how accurate do you need the vehicle location and orientation to be, and what distances and times do you have in mind? Depending on the answers to those questions, there may be a better solution than what you currently have in mind.



Last edited by Ether : 19-04-2015 at 15:06.
  #3   Spotlight this post!  
Unread 19-04-2015, 15:14
vrcprogrammer vrcprogrammer is offline
Registered User
no team
 
Join Date: Apr 2015
Location: Planet Earth
Posts: 12
vrcprogrammer is an unknown quantity at this point
Re: Localization of A Omni-Directional Robot

Thanks A Lot,
I am trying to find a reasonably accurate position (+/- 6-12 Inches) on a 12x12 Foot Vex Field. I have a gyro that I can use for the heading and the match is 2 minutes long.
Thanks
vrcprogrammer

Last edited by vrcprogrammer : 19-04-2015 at 15:48.
  #4   Spotlight this post!  
Unread 19-04-2015, 21:10
AlexanderTheOK AlexanderTheOK is offline
Guy
no team
 
Join Date: Jan 2014
Rookie Year: 2012
Location: Los Angeles
Posts: 146
AlexanderTheOK is just really niceAlexanderTheOK is just really niceAlexanderTheOK is just really niceAlexanderTheOK is just really nice
Re: Localization of A Omni-Directional Robot

Correct me if I'm wrong, but since mecanum wheel rollers, when moving forwards or backwards, may not spin predictably due to friction in the rollers, you may not be able to get any good precision out of them.

With something like killough, kiwi, or X-drive the rollers will be forced to spin since the wheels are actually angled, providing more deterministic roller movement.

Also, 2 minutes? I doubt you would get that kind of precision over that time period. Any errors in angle measurements have a huge effect on positional measurement.

If your gyro drifts even 2 degrees, your positional error over 5 feet would be that's sin(2 degrees)*5 ft. Which is just over 2 inches already. I imagine you plan to drive your robot a lot more than that.

If you really need this over a 2 minute time period you may want to think about having the robot drive itself into a wall or corner to re-zero its measurements at some point.
  #5   Spotlight this post!  
Unread 28-04-2015, 15:42
vrcprogrammer vrcprogrammer is offline
Registered User
no team
 
Join Date: Apr 2015
Location: Planet Earth
Posts: 12
vrcprogrammer is an unknown quantity at this point
Re: Localization of A Omni-Directional Robot

Thanks, Do you have any ideas? One idea that I had was to have 2/4 wheels to keep track of X-Y position. Any ideas/formulas that could help me impliment this.
Thanks.
vrcprogrammer
  #6   Spotlight this post!  
Unread 28-04-2015, 16:11
Hugh Meyer's Avatar
Hugh Meyer Hugh Meyer is offline
Registered User
FRC #1741 (Red Alert Robotics)
Team Role: Mentor
 
Join Date: Feb 2009
Rookie Year: 2008
Location: Greenwood Indiana
Posts: 158
Hugh Meyer has much to be proud ofHugh Meyer has much to be proud ofHugh Meyer has much to be proud ofHugh Meyer has much to be proud ofHugh Meyer has much to be proud ofHugh Meyer has much to be proud ofHugh Meyer has much to be proud ofHugh Meyer has much to be proud of
Re: Localization of A Omni-Directional Robot

LIDAR from a Neato vacuum cleaner is another option if you are open to other ideas. If you Google or eBay or Amazon the terms "neato lidar" you will see what I am thinking of. Here is a link to some on eBay. Some vendors even offer code and instructions on how to talk to these devices.

http://www.ebay.com/sch/i.html?_from...dar&_sac at=0

-Hugh
  #7   Spotlight this post!  
Unread 28-04-2015, 16:14
vrcprogrammer vrcprogrammer is offline
Registered User
no team
 
Join Date: Apr 2015
Location: Planet Earth
Posts: 12
vrcprogrammer is an unknown quantity at this point
Re: Localization of A Omni-Directional Robot

Quote:
Originally Posted by Hugh Meyer View Post
LIDAR from a Neato vacuum cleaner is another option if you are open to other ideas. If you Google or eBay or Amazon the terms "neato lidar" you will see what I am thinking of. Here is a link to some on eBay. Some vendors even offer code and instructions on how to talk to these devices.
Thanks, but I will have variable objects blocking my robot, so only sensors that are focused on the robot would work.
If anyone has any ideas, that would be great.
vrcprogrammer
  #8   Spotlight this post!  
Unread 28-04-2015, 16:17
Jared Russell's Avatar
Jared Russell Jared Russell is offline
Taking a year (mostly) off
FRC #0254 (The Cheesy Poofs), FRC #0341 (Miss Daisy)
Team Role: Engineer
 
Join Date: Nov 2002
Rookie Year: 2001
Location: San Francisco, CA
Posts: 3,069
Jared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond reputeJared Russell has a reputation beyond repute
Re: Localization of A Omni-Directional Robot

Quote:
Originally Posted by vrcprogrammer View Post
Thanks, but I will have variable objects blocking my robot, so only sensors that are focused on the robot would work.
If anyone has any ideas, that would be great.
vrcprogrammer
Do you want the sensors to be mounted on the robot (and thus sensing the environment - floors, arena boundaries, etc.), or fixtured to the environment (and thus sensing the presence and/or location of the robot)?
  #9   Spotlight this post!  
Unread 28-04-2015, 16:19
vrcprogrammer vrcprogrammer is offline
Registered User
no team
 
Join Date: Apr 2015
Location: Planet Earth
Posts: 12
vrcprogrammer is an unknown quantity at this point
Re: Localization of A Omni-Directional Robot

I would need to have the sensors mounted on the robot.
Thanks
  #10   Spotlight this post!  
Unread 28-04-2015, 16:51
cad321 cad321 is online now
Jack of all trades, Master of none
AKA: Brian Wagg
FRC #2386 (Trojans)
Team Role: Alumni
 
Join Date: Jan 2013
Rookie Year: 2012
Location: Burlington, Ontario
Posts: 319
cad321 is just really nicecad321 is just really nicecad321 is just really nicecad321 is just really nice
Re: Localization of A Omni-Directional Robot

I dont know what the capabilities of your controller is (roborio or other controller?) But if you have usb ports you might be able to use this.
  #11   Spotlight this post!  
Unread 28-04-2015, 16:54
vrcprogrammer vrcprogrammer is offline
Registered User
no team
 
Join Date: Apr 2015
Location: Planet Earth
Posts: 12
vrcprogrammer is an unknown quantity at this point
Re: Localization of A Omni-Directional Robot

Quote:
Originally Posted by cad321 View Post
I dont know what the capabilities of your controller is (roborio or other controller?) But if you have usb ports you might be able to use this.
I really like this idea, is there any way to use this with wheels/encoders. Thanks.
  #12   Spotlight this post!  
Unread 28-04-2015, 18:56
vrcprogrammer vrcprogrammer is offline
Registered User
no team
 
Join Date: Apr 2015
Location: Planet Earth
Posts: 12
vrcprogrammer is an unknown quantity at this point
Re: Localization of A Omni-Directional Robot

I am trying to design/think of the program for a set of wheels, for X-Y positioning, and I am stuck on getting the formulas. Can anyone help me, or is a 4 wheel design better.

Last edited by vrcprogrammer : 28-04-2015 at 19:11.
  #13   Spotlight this post!  
Unread 28-04-2015, 21:08
AlexanderTheOK AlexanderTheOK is offline
Guy
no team
 
Join Date: Jan 2014
Rookie Year: 2012
Location: Los Angeles
Posts: 146
AlexanderTheOK is just really niceAlexanderTheOK is just really niceAlexanderTheOK is just really niceAlexanderTheOK is just really nice
Re: Localization of A Omni-Directional Robot

Quote:
Originally Posted by Hugh Meyer View Post
LIDAR from a Neato vacuum cleaner is another option if you are open to other ideas. If you Google or eBay or Amazon the terms "neato lidar" you will see what I am thinking of. Here is a link to some on eBay. Some vendors even offer code and instructions on how to talk to these devices.

http://www.ebay.com/sch/i.html?_from...dar&_sac at=0

-Hugh
You'll spend the same amount of money on the vacuum as you will on one of these

Except the RPLidar is built for hobby robotics, already functional, and already has solid ROS support. You wouldn't get anything done in VEX since it has it's own motor and isn't a VEX part, but it's a good option for a personal robot or for the Roborio, and again, same const as the neato, but you don't need to take a vacuum apart and risk breaking things.
  #14   Spotlight this post!  
Unread 28-04-2015, 21:25
vrcprogrammer vrcprogrammer is offline
Registered User
no team
 
Join Date: Apr 2015
Location: Planet Earth
Posts: 12
vrcprogrammer is an unknown quantity at this point
Re: Localization of A Omni-Directional Robot

This all sounds great, but I need this to be on a vex robot, so does anyone have a way to do this with vex edr (vex robotics competition) parts.
Thanks
Vrcprogrammer
  #15   Spotlight this post!  
Unread 28-04-2015, 22:17
cad321 cad321 is online now
Jack of all trades, Master of none
AKA: Brian Wagg
FRC #2386 (Trojans)
Team Role: Alumni
 
Join Date: Jan 2013
Rookie Year: 2012
Location: Burlington, Ontario
Posts: 319
cad321 is just really nicecad321 is just really nicecad321 is just really nicecad321 is just really nice
Re: Localization of A Omni-Directional Robot

Quote:
Originally Posted by vrcprogrammer View Post
This all sounds great, but I need this to be on a vex robot, so does anyone have a way to do this with vex edr (vex robotics competition) parts.
Thanks
Vrcprogrammer
What about 2 omni wheels placed perpendicular to each other that drag along the floor. As the one in the y axis moves, it gives you your position in the y axis and the same as with the x. Although I do not know how the code might work, to make this more reliable you could add a gyro to correct for any kind of rotation.

As for the mouse idea, I don't have any info on it other than what's in the post. It's on my to do list but that's a mile long not to mention school work.

Last edited by cad321 : 28-04-2015 at 23:15.
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


All times are GMT -5. The time now is 23:02.

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