> I'm going to assume for the sake of this discussion that a person is > holding a stick with the three axis accelerometer on the far end. The > user is spinning around and pivoting the near end of the stick so the > far end (with the accel) can 'touch' any point on the surface of the > imaginary sphere the user is in. This is exactly right, how concise :) > Your description will work, but as you know you'll have a lot of error > over time for the "RPM". Actually, the RPM will be about 0. This isn't meant to be a continuous rotation, but just somebody moving the stick around the sphere in a realtively smooth, slow way. I didn't make that clear. > Also note that centripetal force is going to drastically affect the Y > and Z accelerometers depending on the angle of the stick relative to > the angle of the spin. However, this may be to your advantage since > the outward force of those two combine will also give you some > information about how fast the user is spinning. I don't think this will be a problem because the rotation isn't actually continuous. > If you want to add to your workload and still keep it cheap, I'd > consider adding a phototransistor to the tip of the stick. Put a > diffuse screen over it, and low pass filter it to drop frequencies > above 5Hz. As the user spins around this will output a signal whose > lowest major frequency is very likely to be the spin rate of the user. > The diffuse screen helps give the same signal while the user "raises" > and "lowers" the stick. Since you already know the ballpark spin rate > due to the accelerometer you can use that to digitally filter the > signal and give yourself a synchronizing pulse to correct the > accelerometer's error. I really like that idea, I'll have to keep it in mind, but again, as the rotation isn't continuous... ~Jake B -- http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist