@TheRunscapeNoobShow Heh, that's funny. We do have some similarities: we were both born in LA in the 70s, we both have degrees in electrical engineering, and we both have worked for visual effects companies. But he's taller. =)
@gadgetboy1234 Yeah, if I ever get an iPhone 4, I'll try this experiment again. You can help fund the "MachWerx iPhone 4 Purchase Project" by buying one of my apps! =)
Basicly you're trying to build an inertial reference system. Problem is you're not working with a stable platform fixed in a certain dimension. That's because even though the iphone is equipped with accelerometers it has no form of accurate stabilization. You need reference gyro's for that. I'm not saying it's impossible to create a position reference app but it will not be accurate. the error is also related to speed. It will be more accurate with slower movements. I would be a cool app though!
You know that children's game where one person mentally selects any 'secret' object within a room which then a 2nd person must try to find, and as they do, the 1st person announces clues like "cold", "colder", "warm", "warmer", and "hot" as this 2nd person gets physically further from or nearer to the secret object. The iPhone 3-axis accelerometer might do this by being initialized while it is physically touching a secretly-selected object. (CONTINUED)
(continued) Then the iPhone is then passed to a 2nd person (who had been outside the room) and this 2nd person attempts to discover the secret room-object using the iPhone which then continually gives visual or audible clues as to its calculated distance from the secret object (where it earlier had been physically initialized). Is this application theoretically possible with the iPhone's LIS302DL (3-axis accelerometer) ?
As I mentioned before, the iPhone's accelerometer is nowhere near accurate enough to do decent location calculation, especially at speeds like a person walking. But the newer iPhones have GPS and maybe you could do something like that.
Is anyone else working on this? As soon as they announced the original SDK, I wanted to start playing with this exact technique and still haven't done anything about it. I thought that as long as the accelerometer data was precise enough, that you could always be aware of it's position in 3d space.
There are countless applications for that, both utilities and especially in gaming.
True, *if* the accelerometer data was precise enough, you could calculate its position in 3d. But it's not. Even if it were more precise, there's the problem that it can't distinguish between accelerating from moving slightly to the left and a slight acceleration due to gravity because it's tilted to the left.
Speaking theoretically, an accelerometer will only directly measure acceleration values (Ax, Ay, Az), which must be integrated with time to produce velocity values (Vx, Vy, Vz), which in turn must be integrated again with time to produce position values (x, y, z). So any error constants in the direct acceleration measurements (i.e., Eax, Eay, Eaz) will produce growing errors with time for velocities, i.e., times "t", and for positions, times "t-squared". Isn't this correct?
Yeah, the errors are way too big for the accelerometer to be useful for location calculation.
Oh, one note about gravity: if you just toss the iPhone in the air, it's in freefall and the accelerometer indicates 0 for all three axis. I thought about using this as a basis for a game but on further consideration, it seemed like a bad idea to have an app that encouraged you to throw your iPhone.
Hello MachWerx, I think most of your problem comes from the equation you are using to compute the solution. Get in touch with me, I'd like to help you out.
That's exactly correct. But as it happens, the accelerometer can't differentiate between tilt (change in angle of gravity) and other acceleration because they're both accelerations. If the accelerometer were super accurate, you might be able to make some guesses based on the magnitude of the acceleration (a magnitude of 1 would probably be mostly tilt). But even then, it wouldn't be 100% accurate and the accelerometer is a bit too noisy for that.
It is available in all three axis. So you can detect left-right acceleration, forward-backward acceleration, and up-down acceleration.
But orientation is completely different. It only works because of gravity. Hold it completely level, and it detects acceleration straight down. Tilt it slightly to the left and the accelerometer detects gravity in the left-right axis.
Unfortunately, it can't detect compass orientation because gravity is still straight down if you're facing north or west.
Are you sure the tilt is not being detected as well? I mean rotation along the long axis. That needs to be eliminated for that to work, I think.. The red bars seem to react to rotation along the long axis..
Cool to-be app
baldeneo123 1 year ago
hi. i like u, remind me of a cooler grant from mthbusters lol
TheRunscapeNoobShow 1 year ago 2
@TheRunscapeNoobShow Heh, that's funny. We do have some similarities: we were both born in LA in the 70s, we both have degrees in electrical engineering, and we both have worked for visual effects companies. But he's taller. =)
MachWerx 1 year ago 2
@MachWerx lol.
TheRunscapeNoobShow 1 year ago
This has been flagged as spam show
great! now I can torture my iphone ^^
damphier14 1 year ago
try it on the iphone4s gyro
gadgetboy1234 1 year ago
@gadgetboy1234 Yeah, if I ever get an iPhone 4, I'll try this experiment again. You can help fund the "MachWerx iPhone 4 Purchase Project" by buying one of my apps! =)
MachWerx 1 year ago
It would be a good iPhone 4 app because it has a gyroscope.
TheNigahiga2 1 year ago
Basicly you're trying to build an inertial reference system. Problem is you're not working with a stable platform fixed in a certain dimension. That's because even though the iphone is equipped with accelerometers it has no form of accurate stabilization. You need reference gyro's for that. I'm not saying it's impossible to create a position reference app but it will not be accurate. the error is also related to speed. It will be more accurate with slower movements. I would be a cool app though!
woarboar 1 year ago
12 45
book505 2 years ago
Was your arm sore after doing this video?
ewievissers 2 years ago
I feel dizzy.
krazykizza 2 years ago 2
How about this for a cool application?
You know that children's game where one person mentally selects any 'secret' object within a room which then a 2nd person must try to find, and as they do, the 1st person announces clues like "cold", "colder", "warm", "warmer", and "hot" as this 2nd person gets physically further from or nearer to the secret object. The iPhone 3-axis accelerometer might do this by being initialized while it is physically touching a secretly-selected object. (CONTINUED)
strange3141 2 years ago
(continued) Then the iPhone is then passed to a 2nd person (who had been outside the room) and this 2nd person attempts to discover the secret room-object using the iPhone which then continually gives visual or audible clues as to its calculated distance from the secret object (where it earlier had been physically initialized). Is this application theoretically possible with the iPhone's LIS302DL (3-axis accelerometer) ?
strange3141 2 years ago
As I mentioned before, the iPhone's accelerometer is nowhere near accurate enough to do decent location calculation, especially at speeds like a person walking. But the newer iPhones have GPS and maybe you could do something like that.
MachWerx 2 years ago
Is anyone else working on this? As soon as they announced the original SDK, I wanted to start playing with this exact technique and still haven't done anything about it. I thought that as long as the accelerometer data was precise enough, that you could always be aware of it's position in 3d space.
There are countless applications for that, both utilities and especially in gaming.
jeffthistleVO 2 years ago
True, *if* the accelerometer data was precise enough, you could calculate its position in 3d. But it's not. Even if it were more precise, there's the problem that it can't distinguish between accelerating from moving slightly to the left and a slight acceleration due to gravity because it's tilted to the left.
MachWerx 2 years ago
Gravity is a real constant acceleration force which the iPhone will always experience.
strange3141 2 years ago
Speaking theoretically, an accelerometer will only directly measure acceleration values (Ax, Ay, Az), which must be integrated with time to produce velocity values (Vx, Vy, Vz), which in turn must be integrated again with time to produce position values (x, y, z). So any error constants in the direct acceleration measurements (i.e., Eax, Eay, Eaz) will produce growing errors with time for velocities, i.e., times "t", and for positions, times "t-squared". Isn't this correct?
strange3141 2 years ago
(in the above discussion, of course, a 3-axis accelerometer is assumed, which is, of course 3 independant accelerometers on a precise 3-axis mount)
strange3141 2 years ago
Yeah, the errors are way too big for the accelerometer to be useful for location calculation.
Oh, one note about gravity: if you just toss the iPhone in the air, it's in freefall and the accelerometer indicates 0 for all three axis. I thought about using this as a basis for a game but on further consideration, it seemed like a bad idea to have an app that encouraged you to throw your iPhone.
MachWerx 2 years ago
@strange3141 For reference in azimuth you only need 2 accelerometers unless he wants to incorporate position in the vertical.
woarboar 1 year ago
This has been flagged as spam show
my iphone's accelerometer doesnt work when i tiLt it on the right side?? what will i do??
kohjack06 2 years ago
Hello MachWerx, I think most of your problem comes from the equation you are using to compute the solution. Get in touch with me, I'd like to help you out.
gciriani 2 years ago
That's exactly correct. But as it happens, the accelerometer can't differentiate between tilt (change in angle of gravity) and other acceleration because they're both accelerations. If the accelerometer were super accurate, you might be able to make some guesses based on the magnitude of the acceleration (a magnitude of 1 would probably be mostly tilt). But even then, it wouldn't be 100% accurate and the accelerometer is a bit too noisy for that.
MachWerx 3 years ago
I thought that acceleration data was available for all three axis individually?
jeffthistleVO 2 years ago
It is available in all three axis. So you can detect left-right acceleration, forward-backward acceleration, and up-down acceleration.
But orientation is completely different. It only works because of gravity. Hold it completely level, and it detects acceleration straight down. Tilt it slightly to the left and the accelerometer detects gravity in the left-right axis.
Unfortunately, it can't detect compass orientation because gravity is still straight down if you're facing north or west.
MachWerx 2 years ago
Are you sure the tilt is not being detected as well? I mean rotation along the long axis. That needs to be eliminated for that to work, I think.. The red bars seem to react to rotation along the long axis..
BENGALtiger87 3 years ago
Thanks! As it happens, a number of us have apps on the iTunes store including: "Flip Book", "iWant", and "Rotary Dialer".
MachWerx 3 years ago
my iphone's accelerometer doesnt work when i tiLt it on the right side?? what will i do??
kohjack06 2 years ago
Hey Mach. Neat experiment. It's cool how you get your inspiration from life.
And I didn't know you worked at Pixar! I'm a big fan of Pixar. If you notice my name is the name of the caterpillar in A Bug's Life.
That's so cool that there's an iPhone dev that worked at Pixar. Im sure you have plenty of creativity for future applications.
Heimlich182 3 years ago