Go to Post A world where lawyers and police don't get much work -- there's a goal to work toward. - Richard Wallace [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

 
Closed Thread
 
Thread Tools Rate Thread Display Modes
  #1   Spotlight this post!  
Unread 22-05-2011, 19:09
kinganu123 kinganu123 is offline
Registered User
FRC #1747
Team Role: Mentor
 
Join Date: Jan 2010
Rookie Year: 2008
Location: Piscataway, NJ
Posts: 243
kinganu123 is on a distinguished road
apply the inverse kinematic tranformation?

so ive been tryna figure out my own mecanum drive algorithim and i searched a few threads for hints and I noticed that people have mentioned applying the inverse kinematic transformation when you have the x, y, and twist values to get the individual motor speeds. I was wondering what on earth is the inverse kinematic transformation and how i would use it to figure out each individual motor speed from these. It would be appreciated the chief delphi community could explain this without giving me the actual algorithims for each wheel speed in mecanum drive
__________________
  #2   Spotlight this post!  
Unread 22-05-2011, 19:25
Ether's Avatar
Ether Ether is offline
systems engineer (retired)
no team
 
Join Date: Nov 2009
Rookie Year: 1969
Location: US
Posts: 8,077
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: apply the inverse kinematic tranformation?

Quote:
Originally Posted by kinganu123 View Post
so ive been tryna figure out my own mecanum drive algorithim and i searched a few threads for hints and I noticed that people have mentioned applying the inverse kinematic transformation when you have the x, y, and twist values to get the individual motor speeds. I was wondering what on earth is the inverse kinematic transformation
It's exactly what you just said. It's the calculation that takes you from joystick inputs to wheel speed outputs.

More precisely, it's the operation which transforms the 3 vehicle motion commands: translation (forward/reverse and strafe right/left) and rotation (rotate clockwise/counterclockwise), into 4 wheel speed commands.


Quote:
It would be appreciated the chief delphi community could explain this without giving me the actual algorithims for each wheel speed in mecanum drive
I'm not sure how much latitude that leaves for explaining. This paper gives the mathematical derivation of the inverse kinematic transformation in detail for a 4-wheel mecanum vehicle, but may be more detail than you are looking for.


Quote:
and how i would use it to figure out each individual motor speed from these.
Using it is very straightforward. This paper explains how to do the calculations, but it sounds like that's not what you want.

Your post sounds like you were given an assignment. Give us more guidance what we are and aren't allowed to tell you... or perhaps try asking some more-focused questions.





Last edited by Ether : 22-05-2011 at 19:37.
  #3   Spotlight this post!  
Unread 22-05-2011, 19:40
kinganu123 kinganu123 is offline
Registered User
FRC #1747
Team Role: Mentor
 
Join Date: Jan 2010
Rookie Year: 2008
Location: Piscataway, NJ
Posts: 243
kinganu123 is on a distinguished road
Re: apply the inverse kinematic tranformation?

Quote:
Originally Posted by Ether View Post
It's exactly what you just said. It's the calculation that takes you from joystick inputs to wheel speed outputs.

More precisely, it's the operation which transforms the 3 vehicle motion commands: translation (forward/reverse and strafe right/left) and rotation (rotate clockwise/counterclockwise), into 4 wheel speed commands.




I'm not sure how much latitude that leaves for explaining. This paper gives the mathematical derivation of the inverse kinematic transformation in detail for a 4-wheel mecanum vehicle, but may be more detail than you are looking for.




Using it is very straightforward. This paper explains how to do the calculations, but it sounds like that's not what you want.

Your post sounds like you were given an assignment. Give us more guidance what we are and aren't allowed to tell you... or perhaps try asking some more-focused questions.



I assigned myself this and i dont want the actual end result is what I'm saying.I pretty much taught myself trig today so now I wanna code the mecanum wheels. thing is i have no clue how to do that so thats why this topic came up. Ill take a look at that paper and post again afterwards
__________________
  #4   Spotlight this post!  
Unread 22-05-2011, 19:53
Ether's Avatar
Ether Ether is offline
systems engineer (retired)
no team
 
Join Date: Nov 2009
Rookie Year: 1969
Location: US
Posts: 8,077
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: apply the inverse kinematic tranformation?

Quote:
Originally Posted by kinganu123 View Post
I pretty much taught myself trig today so now I wanna code the mecanum wheels.
You do not need trig to code mecanum.


Quote:
i dont want the actual end result is what I'm saying.
I think the cat is already out of the bag, if you read this response to your 5/18/2011 post about arcade drive.



  #5   Spotlight this post!  
Unread 22-05-2011, 20:03
kinganu123 kinganu123 is offline
Registered User
FRC #1747
Team Role: Mentor
 
Join Date: Jan 2010
Rookie Year: 2008
Location: Piscataway, NJ
Posts: 243
kinganu123 is on a distinguished road
Re: apply the inverse kinematic tranformation?

Quote:
Originally Posted by Ether View Post
You do not need trig to code mecanum.




I think the cat is already out of the bag, if you read this response to your 5/18/2011 post about arcade drive.


kk ill just not click that link then lol, but ya i figured out arcade, thanks for your help on that, and i know i dont need trig but it would be a good challenge for me to do it with trig since i just taught myself it
__________________
  #6   Spotlight this post!  
Unread 22-05-2011, 20:10
Ether's Avatar
Ether Ether is offline
systems engineer (retired)
no team
 
Join Date: Nov 2009
Rookie Year: 1969
Location: US
Posts: 8,077
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: apply the inverse kinematic tranformation?

Quote:
Originally Posted by kinganu123 View Post
i know i dont need trig but it would be a good challenge for me to do it with trig since i just taught myself it
Trigonometry is very useful for deriving the transformation equations, but the equations themselves have no trig functions in them at all.

But hey, whatever works for ya. Knock yourself out :-)

If you encounter questions about trigonometry you can ask them here too.



  #7   Spotlight this post!  
Unread 22-05-2011, 20:10
Unsung FIRST Hero
Mike Betts Mike Betts is offline
Electrical Engineer
no team
Team Role: Engineer
 
Join Date: Dec 2001
Rookie Year: 1995
Location: Homosassa, FL
Posts: 1,442
Mike Betts has a reputation beyond reputeMike Betts has a reputation beyond reputeMike Betts has a reputation beyond reputeMike Betts has a reputation beyond reputeMike Betts has a reputation beyond reputeMike Betts has a reputation beyond reputeMike Betts has a reputation beyond reputeMike Betts has a reputation beyond reputeMike Betts has a reputation beyond reputeMike Betts has a reputation beyond reputeMike Betts has a reputation beyond repute
Re: apply the inverse kinematic tranformation?

Formal kinematics for robotics is a rigorous treatment to handle any robotic system, regardless of how complex it may be.

Most college courses in robotics start with position rather than velocity. They also start with forward kinematics as it yields a unique result.

In a forward kinematic equation, you can find the position of the tool tip (the end effector of your arm) given the angles of each joint. However, the inverse kinematic, calculating the joint angles for a desired tool tip position, is much harder. For a non-trivial arm, there are usually several solutions to the inverse kinematic. Many of these positions would require the arm to be in positions that are nonsensical in the real world.

Once you have positional kinematics in hand, you move on to velocity and acceleration. Figuring these out usually require calculus.

The math and physics involved is not for the fainthearted... If someone is handing you the equations for a given task, I would look hard at the gift...

JMHO,

Mike
__________________
Mike Betts

Alumnus, Team 3518, Panthrobots, 2011
Alumnus, Team 177, Bobcat Robotics, 1995 - 2010
LRI, Connecticut Regional, 2007-2010
LRI, WPI Regional, 2009 - 2010
RI, South Florida Regional, 2012 - 2013

As easy as 355/113...
  #8   Spotlight this post!  
Unread 22-05-2011, 20:19
Ether's Avatar
Ether Ether is offline
systems engineer (retired)
no team
 
Join Date: Nov 2009
Rookie Year: 1969
Location: US
Posts: 8,077
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: apply the inverse kinematic tranformation?

Quote:
Originally Posted by Mike Betts View Post
forward kinematics ... yields a unique result.
In the case of the velocity kinematics of the mecanum vehicle, it is the inverse kinematic transformation (from desired vehicle motion to required wheel speeds to achieve that motion) which has a unique result.

The forward kinematic transformation for a mecanum vehicle (from four arbitrary wheel speeds to the vehicle motion which would result from those wheel speeds) in general has no exact solution, but you can calculate a "least squares fit" to find the "best" approximate solution. This is discussed in this paper.



  #9   Spotlight this post!  
Unread 22-05-2011, 20:53
kinganu123 kinganu123 is offline
Registered User
FRC #1747
Team Role: Mentor
 
Join Date: Jan 2010
Rookie Year: 2008
Location: Piscataway, NJ
Posts: 243
kinganu123 is on a distinguished road
Re: apply the inverse kinematic tranformation?

Quote:
Originally Posted by Ether View Post
In the case of the velocity kinematics of the mecanum vehicle, it is the inverse kinematic transformation (from desired vehicle motion to required wheel speeds to achieve that motion) which has a unique result.

The forward kinematic transformation for a mecanum vehicle (from four arbitrary wheel speeds to the vehicle motion which would result from those wheel speeds) in general has no exact solution, but you can calculate a "least squares fit" to find the "best" approximate solution. This is discussed in this paper.




so ya i read that paper and, well lets just say I am absolutely clueless now. Maybe taking calc would help but I can't take that class till senior year and I'm only a sophmore. Unless one of you could pretty much explain the paper for someone my level?
__________________
  #10   Spotlight this post!  
Unread 22-05-2011, 21:19
Ether's Avatar
Ether Ether is offline
systems engineer (retired)
no team
 
Join Date: Nov 2009
Rookie Year: 1969
Location: US
Posts: 8,077
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: apply the inverse kinematic tranformation?

Quote:
Originally Posted by kinganu123 View Post
so ya i read that paper and, well lets just say I am absolutely clueless now. Maybe taking calc would help but I can't take that class till senior year and I'm only a sophmore. Unless one of you could pretty much explain the paper for someone my level?
You don't need to understand the derivation of the inverse kinematic equations in order to use them, any more than you have to be able to derive the Pythagorean Theorem or the Law of Cosines in order to use them.

The inverse kinematic equations are very simple:

FR = FWD - STR - ROT

FL = FWD + STR + ROT

RR = FWD + STR - ROT

RL = FWD - STR + ROT


... where FWD, STR, and ROT are the vehicle forward, strafe right, and rotate clockwise commands, respectively. These equations map your desired vehicle motion into a set of 4 wheel speeds required to achieve that motion.


You can setup your driver interface any way you want to map your joystick(s) axes to the FWD, STR, and ROT commands.






Last edited by Ether : 22-05-2011 at 21:29.
  #11   Spotlight this post!  
Unread 22-05-2011, 22:13
kinganu123 kinganu123 is offline
Registered User
FRC #1747
Team Role: Mentor
 
Join Date: Jan 2010
Rookie Year: 2008
Location: Piscataway, NJ
Posts: 243
kinganu123 is on a distinguished road
Re: apply the inverse kinematic tranformation?

Quote:
Originally Posted by Ether View Post
You don't need to understand the derivation of the inverse kinematic equations in order to use them, any more than you have to be able to derive the Pythagorean Theorem or the Law of Cosines in order to use them.

The inverse kinematic equations are very simple:

FR = FWD - STR - ROT

FL = FWD + STR + ROT

RR = FWD + STR - ROT

RL = FWD - STR + ROT


... where FWD, STR, and ROT are the vehicle forward, strafe right, and rotate clockwise commands, respectively. These equations map your desired vehicle motion into a set of 4 wheel speeds required to achieve that motion.


You can setup your driver interface any way you want to map your joystick(s) axes to the FWD, STR, and ROT commands.







Thank you very much sir
this should be fairly easy to program.
__________________
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:31.

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