|
With no further information I unfortunately think this is a "software can't fix your mechanical problems" situation. I'm not a math wizard though so maybe someone else will chime in.
If there's a way to guarantee a distance between the measurement device and the center of the measured sphere, I think it may be possible. You'd have both sides of the triangle coming out of the measurement device (the "true" distance [distance to center - radius] and the measured) and you could use spherical trigonometry to determine the angle between those sides (the angle of the measurement device) given the difference between the two distances. Honestly that's beyond me though and relies on having perfect spheres. I was never good at trig
EDIT: Also this would in no way let you know where in the xy plane those measurement devices are.
|
|
|
|
|
Your question is really unclear, are you trying to calculate d1?
Regardless, if you have neither the positions nor the angles of the devices then you can't get an accurate calculation. Your best option would be to use which ever device gives you the shortest distance, as that will be the most accurate - but certainly cannot guarantee a correct result.
Essentially to get the correct result you need a device pointed directly at the centre point. If they are not pointing directly at the centre point then you could probably compensate for this offset is your calculations, but you would need the angles and positions to be able to do so.
|
|
|
|
|
I need to calculate XY position in which the sensor finds the part.
The problem is that the sensor is at an unknown position and angle (which will be very similar to the desired one but I need a really high precision (3 micrometers)).
I only get from the sensor the distance from the sensor to the part.
|
|
|
|
|
Joan M wrote: I only get from the sensor the distance from the sensor to the part.
So just to be clear. Do you just get a single value (distance) from the sensor to the outer circle?
Or do you get 2 values, one for outer circle and one for inner circle?
|
|
|
|
|
One for each circle.
Thank you for spending time on this. And sorry for my bad explanations, it's difficult for me to describe this clearly in English...
|
|
|
|
|
Joan M wrote: One for each circle.
Ok, that is a good start. We definitely need both. The other vital piece is: do you know the value of d1? (i.e do you know the radius/circumference of both the inner and outer circles?)
It looks like Daniel is already suggesting what I am trying to get at too, however I just wanted to be sure you have all the information that he is trying to make use of.
|
|
|
|
|
Yes, both circles are the master parts and we know the radius of both.
Thanks!
|
|
|
|
|
Ok, so my trig is rusty so I will need to take some time to try and process the information.
But from what I can see I think it should be possible to do with that data - but don't hold me to that just yet, this is not a specialist area for me by far!
|
|
|
|
|
Same here... trigonometry is rusty to say the least...
|
|
|
|
|
Sorry, having had some further time to think I don't see a solution. You need to have either the position of the sensor, or the angle of it (relative to the centre point). Without one of those you can't get the position where it intersects.
Easiest way to see why: Take your diagram and rotate the whole thing 45 degrees. You will see that the expect output is clearly different, however you will still have the exact same input values. And logic states that the same input cannot produces different outputs - therefore the input data just isn't enough. Hope that makes sense.
If you still don't want to give up, post a question on math.se[^], at least then you will get a much better technical explanation of why it can't be done that you can forward to the boss And if they somehow suss it out, please report back with the solution!
|
|
|
|
|
XY I think you will never find. Assume you position the measurement unit exactly at 0° watching exactly the center. Do the same at any other angle (I mean adjust it exactly to the center).
It does not solve my Problem, but it answers my question
modified 19-Jan-21 21:04pm.
|
|
|
|
|
Yeah, you might be right. Like I said it's no my area of expertise so takes me some time to validate (or disprove) my current trail of thought.
I get what you are saying though, and I fear you are correct.
|
|
|
|
|
We have the distances m1 (between the measuring device and the outer circle), m2 (between the measuring device and the inner circle), r1, and r2 (the radii of the two circles).
If the measuring device were pointed exactly at the common centre of the circles, then m1 - m2 == r1 - r2.
If it is not pointing at the centre, the direction vector traces a chord on each of the circles. One chord is the intersections of the direction vector with the outer circle, and one chord is the intersections of the direction vector with the inner circle. The difference between the two chords is 2*(m1 - m2).
If the measuring device is at a distance R and angle alpha from the centre of the circles, you should be able to calculate the lengths of the chords in terms of R, alpha, r1, and r2. Working backwards, you should get a formula for R and alpha in terms of m1, m2, r1, and r2.
Freedom is the freedom to say that two plus two make four. If that is granted, all else follows.
-- 6079 Smith W.
|
|
|
|
|
Which will place the device on a circle in best case... It still will not give you a XYZ position...
"The only place where Success comes before Work is in the dictionary." Vidal Sassoon, 1928 - 2012
|
|
|
|
|
Consider a coordinate system with origin in the center of the mastering circle and one measuring device positioned at X0, Y0 (unknowns) sending a beam with a slope S (also unknown). The equation of the beam is:
(1) y-Y0 = S*(x-X0)
The intersection of this line with the mastering circle x2 + y2 = R12 can be found by solving
(2) x2 + (s*(x-X0) + Y0)2 = R12
And then finding y from equation [1]. This will give you a formula with 3 unknowns (X0, Y0 and S) for the intersection point (Xi, Yi)
Distance between the intersection point (Xi, Yi) and (X0, Y0) is given by:
d12 = (Xi-X0)2 + (Yi-Y0)2
You need 3 such equations, from 3 mastering circles to solve the 3 unknowns. Note that solution for each sensor is independent of the other sensors.
It's a bit early in the morning for me but the basic outline should work.
|
|
|
|
|
It should be in 3D - x and y are not enough to position the devices...
"The only place where Success comes before Work is in the dictionary." Vidal Sassoon, 1928 - 2012
|
|
|
|
|
Not sure why you think it is 3D. The OP talked about 2D and his diagram is 2D.
In 3D the problem cannot be solved with only 3 measurements.
|
|
|
|
|
Look for my questions... The devices are not in the same plain as the circle to measure... Or so I understood...
"The only place where Success comes before Work is in the dictionary." Vidal Sassoon, 1928 - 2012
|
|
|
|
|
Joan M wrote: Given the difference between r1-r2 and m2-m1 could I find the angle in which the measuring device is mounted?
Yes.
"It is easy to decipher extraterrestrial signals after deciphering Javascript and VB6 themselves.", ISanti[ ^]
|
|
|
|
|
|
A little clarification is needed. If m1 and m2 are the distances from the sensor to points on the circles then you have a triangle with three known distances so you should be able to solve for the angles between each leg of the triangle.
Is there more to this or am I missing something?
"They have a consciousness, they have a life, they have a soul! Damn you! Let the rabbits wear glasses! Save our brothers! Can I get an amen?"
|
|
|
|
|
Sensors measure along the red lines in the drawing.
m1 is the distance from the sensor to the first master part.
m2 is the distance from the sensor to the second master part.
If I have 2 master parts, I'll have 2 measures from each sensor.
But I don't know the real position/orientation of any sensor...
Thank you very much Rick.
|
|
|
|
|
You should be able to know the real positions of the sensors. I think you have to in this case. If they are fixed in space then you should be able to determine their locations. If they are moved into place by a mechanism then you should know where they were moved to. If they are moved into position manually then this whole thing seems rather pointless.
I have done this kind of thing for a living over many years and it's really not that hard when you have all of the information. It seems to me that you do not have enough information and it appears you will have to define some constraints to be able to acquire that information. I used to have these battles with the MEs who design systems all the time. Now they have learned what data they have to provide and they do so or I/we can't do our jobs.
"They have a consciousness, they have a life, they have a soul! Damn you! Let the rabbits wear glasses! Save our brothers! Can I get an amen?"
|
|
|
|
|
Rick York wrote: You should be able to know the real positions of the sensors
Amen to that... but I'm afraid the problem here (having to read micrometers) is that even the mechanical engineers want to place the sensors correctly they can't.
I've proposed to use a metrology device to find where the devices are placed, but it seems they can have mechanical issues and maintenances that make this approach unusable.
|
|
|
|
|
I went ahead and did the math. You can check it in this PDF file [^].
You still have some (or a lot of) work to do because you have to solve a system of non-linear equations.
The basic flow is the same as outlined in my previous message:
- Find the intersection between the circle (mastering part) and the measuring line.
- Using also the formula for the distance between 2 points you reduce it to an equation with 5 parameters: x,y coordinates of the sensor, slope of measuring line, radius of mastering part and distance measured by the sensor.
- Each of the mastering parts gives you a new equation and you solve the system of 3 equations for the 3 unknowns: x,y coordinates and slope.
I've tested the formulas with a CAD drawing and they work nicely.
Enjoy!
|
|
|
|