Solved

Reversing the Kiwi-Drive formula

Posted on 2011-02-25
3
498 Views
Last Modified: 2016-05-20
We've recently build a kiwidrive robot, and now we want to use it as a musical instrument.
It has three wheels, each with a motor that produces a distinct tone.
The formulas used to calculate motor speeds are as follows:

M1 = 0.5 * X - 0.866 * Y + R
M2 = 0.5 * X + 0.866 * Y + R
M3 = X + R

Since we are no good at math, we need help reversing these formulas so that for a given M1, M2 and M3, we want to calculate X, Y and R.

Thanks!
0
Comment
Question by:JasonMewes
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
3 Comments
 
LVL 44

Accepted Solution

by:
Arthur_Wood earned 500 total points
ID: 34978990
solveing the three equations, for the three unkowns (X,Y and R)

R =  0.5 * M1 + 1.5 * M2 - M3
X = -0.5 * M1 - 1.5 * M2 + 2* M3
Y = (1/1.732)*(M2 - M3)

do you need to see the details?

AW


0
 

Author Comment

by:JasonMewes
ID: 34979544
Didn't look quite right, so I double checked:

x = 50, y = 12, r = 97

M1 = 0.5 * x - 0.866 * y + r
M2 = 0.5 * x + 0.866 * y + r
M3 = x + r

r = 0.5 * M1 + 1.5 * M2 - M3
x = -0.5 * M1 - 1.5 * M2 + 2 * M3
y = (1 / 1.732) * (M2 - M3)

yields: x = 39.608, y = -8,43418013856813, z = 107,392

In any case my initial formula was wrong but I would have given you your points anyways if the answer had been correct, but as demonstrated above it doesn't seem to be. Correct me if I made a mistake.

The correct formula should have been:

M1 = -0.5 * X - ( sqrt( 3 ) / 2 ) * Y + R
M2 = -0.5 * X + ( sqrt( 3 ) / 2 ) * Y + R
M3 = X + R

For which the solution seems to be:

X = ( -2 * M3 + M2 + M1 ) / -3
Y = ( M1 - M2 ) * ( sqrt( 3 ) / -3 )
R = ( M3 + M2 + M1 ) / 3

Points to anyone who can verify the validity of the solution.
0
 
LVL 44

Expert Comment

by:Arthur_Wood
ID: 34981319
the original question stated:

M1 = 0.5 * X - 0.866 * Y + R
M2 = 0.5 * X + 0.866 * Y + R
M3 = X + R



now you indicate that the 'correct' formula should have been

M1 = -0.5 * X - ( sqrt( 3 ) / 2 ) * Y + R
M2 = -0.5 * X + ( sqrt( 3 ) / 2 ) * Y + R
M3 = X + R

notice the sign difference on the first factor of M2.

with the new formulae,

M1 +M2 = -X + 2 * R
M3 = X + R

hence R = (M1 + M2 + M3)/3

X = - (M1 + M2) + 2 *(M1 + M2 + M3)/3 = (2 * M3 - M1 - M2)/3 (which is the same as  ( -2 * M3 + M2 + M1 ) / -3)

Y = (M2 - M1) /sqrt(3) = (M2 - M1) * Sqrt(3)/3  which is the same as  ( M1 - M2 ) * ( sqrt( 3 ) / -3 )


AW
0

Featured Post

ClickHouse in a General Analytical Workload

We have mentioned ClickHouse in some recent posts, where it showed excellent results.

In this article on Experts Exchange, we’ll look at how ClickHouse performs in a general analytical workload using the star schema benchmark test.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Have you ever thought of installing a power system that generates solar electricity to power your house? Some may say yes, while others may tell me no. But have you noticed that people around you are now considering installing such systems in their …
This article explains the fundamentals of industrial networking which ultimately is the backbone network which is providing communications for process devices like robots and other not so interesting stuff.
This is a video describing the growing solar energy use in Utah. This is a topic that greatly interests me and so I decided to produce a video about it.
I've attached the XLSM Excel spreadsheet I used in the video and also text files containing the macros used below. https://filedb.experts-exchange.com/incoming/2017/03_w12/1151775/Permutations.txt https://filedb.experts-exchange.com/incoming/201…

628 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question