Using accelorometer and gyroscope in projectile motion

Click For Summary
SUMMARY

The discussion focuses on a project to create a SmartBall that measures velocity, spin, and flight path using an Intel Edison and a 9DOF block (LSM9DS0). The project utilizes RTIMULib for reading data from the accelerometer and gyroscope. The primary challenge is accurately determining the initial velocity and angle of projection for projectile motion calculations. The integration of acceleration data is acknowledged as prone to cumulative error, necessitating recalibration after each kick to maintain acceptable accuracy.

PREREQUISITES
  • Understanding of projectile motion equations
  • Familiarity with the LSM9DS0 9DOF sensor
  • Experience with RTIMULib for IMU data processing
  • Basic knowledge of differential equations
NEXT STEPS
  • Research methods to calculate initial velocity and angle of projection in projectile motion
  • Explore advanced filtering techniques to reduce cumulative error in sensor data
  • Learn about the effects of aerodynamic drag on projectile motion
  • Investigate interpolation methods for estimating initial angles from sensor data
USEFUL FOR

Engineers, hobbyists, and researchers working on motion tracking projects, particularly those involving IMU sensors and projectile dynamics.

Hesham Zwayyed
Messages
1
Reaction score
0
I'm working on a project to make a SmartBall that can detect the velocity(km/h) , spin(degrees per second) and flightpath(trajectory) of the ball using Intel Edison with the 9DOF block (LSM9DS0 : 3-axis accelerometer, 3-axis gyroscope, and 3-axis magnetometer) & the battery block, I'm reading values from the 9DOF block by RTIMULib(Library for IMU chips). I've been working on integrating the acceleration data from the accelorometer to get the velocity then get the position, I know that this method is not really accurate as the integration error cumulate very fast but I rely on that my calculations will be done in a very short time (about 3 seconds) then i re-calculate again from the beginning after every kick so that error doesn't cumulate hardly, Also i only need an acceptable accuracy not a very high one. I discovered then that I'm dealing with projectile motion(ball kicking), so after considering this & searching in projectile motion equations i found that i must know the initial velocity and the angle of projection(theta) to be able to get my requirements. my problem that I don't know how to get any of these , I tried different approaches like getting the horizontal distance & getting the height to get their resultant(using pythagoras) then get the angle(assuming it's a right angle) in a very small time at the beginning of the projection , but i still couldn't get the height. The gyroscope outputs roll, pitch & yaw angles related to the sensor orientation but I'm still not using this as I'm assuming that the sensor will be fixed inside the ball so it's orientation will not be the same as the projection angle.Hope I made it clear , Any help on how to get my requirements is really appreciated, Thanks so much.
 
Engineering news on Phys.org
Welcome to PF;
That is an ambitious project.
I've been working on integrating the acceleration data from the accelorometer to get the velocity then get the position, I know that this method is not really accurate as the integration error cumulate very fast but I rely on that my calculations will be done in a very short time ...
It's not the time that is the probem - it is that the error accumulates in a short number of iterations. It does not matter how fast you do the calculation - what matters is the number iterations you need to get a good path.

i re-calculate again from the beginning after every kick...
Soccer, Rugby, Calvinball...?

I discovered then that I'm dealing with projectile motion...
Sounds Rugby-esque. Kicking the ball to high lobs or tossing the ball between players would produce projectile-ish motion (remember the drag on such a ball will be significant, it will spin too, and it is sort-of aerodynamic.)

You are recording acceleration and calculating for position - you need the initial position and velocity to do this since that involves solving a second-order differential equation (as a difference equation).

You can approximate the initial angle by interpolation of the first few data points. However, since you are confident of your method to get an updated position, don't you just have the entire trajectory anyway?
 

Similar threads

  • · Replies 5 ·
Replies
5
Views
4K
  • · Replies 33 ·
2
Replies
33
Views
3K
Replies
40
Views
3K
  • · Replies 6 ·
Replies
6
Views
2K
  • · Replies 16 ·
Replies
16
Views
2K
  • · Replies 18 ·
Replies
18
Views
2K
  • · Replies 8 ·
Replies
8
Views
3K
  • · Replies 4 ·
Replies
4
Views
2K
  • · Replies 39 ·
2
Replies
39
Views
5K
  • · Replies 11 ·
Replies
11
Views
2K