Measure an impact


I'm currently working on a robot that will be dropped on a surface. My goal is to measure to force of impact when it land.

With some calculation, I'm sure that the force won't exceed 5Kg.

I have bought these sensor :Pressure sensor - Joy-IT but I'm not sure that the measure will be accurate. Do you have any suggestion about a great sensor for this ?

Many thanks

Remember that whatever you drop will bounce and contact the surface several times. The device has a 15ms recovery time and will not be able to record any but the original contact force.
I guess that will work for a test. I assume you know the mass of the robot.

Yes that's true, but the thing I want to know is value of the strongest impact, to assure that the mechanical conception is able to handle this drop at any time.
Yes I know the mass of it. So you think that this sensor will work ?

Just to be sure of it's operating mode, I have firstly to do some measurments (using weights) to calibrate values returned by the sensor ?

To measure the force of impact, you need to measure the g-force of the moment of impact.

If you walk at normal speed and hit your head against a doorpost, then you get 100 g.
Those sensors are not meant to measure a impact. They can not even measure a weight.
The MEMS sensors for acceleration are also not meant to measure a impact.
There are professional 3D g-force sensors, I think they use piezo for 3 axis. Then you need something to capture the data at high speed.

There are also flat boxing cushions that can measure how strong the hit is.

If you want to use an Arduino and a cheap sensor, then can you explain what you want to measure ?

Well, to make it clear, I have a 4 wheelled rover.
It is supposed to be dropped and I want to be sure that the mechanical parts that are maintaining the wheels to the rover wont broke at landing.
This is why I want to have a force of impact, with that I can calculate the torque applied on the parts.

My sensor must be on the rover because the measurement must be on a certain type of land.

Is that a bit better ?

Thank you for your time

The resistive pressure sensors are very nonlinear, and useful for detecting changes of pressure (force per unit area). They cannot easily be calibrated and are generally not useful for measuring pressure.

Your only options are to use a high-g accelerometer (like the ADXL377) to measure acceleration and then estimate the peak force and torque from the mass, or just drop the thing and see what breaks.

I see, I already have an accelerometer since I'm using the arduino 33 BLE.

Do you think it would be enough ?

I don't have to see what breaks, my goal is to prove that it won't break, with measurments.

Just to be sure, when I have the acceleration and the mass, how do I get the impact force ?
And I suppose that this force is split between the 4 wheels ?


The LSM9DS1 reads up to 16g. Impact accelerations can be 100s of g.

To get force from acceleration, divide by the mass (F = ma). If the rover lands on one wheel, that one wheel has to survive all of the impact.

my goal is to prove that it won't break, with measurments

That is quite a challenge.

There are MEMS accelerometers that can measure higher levels:

Suppose you have a rigid metal frame that drops onto a concrete floor from 10 meters and the sensor itself is directly attached to the frame. Then you need to measure a few hundred g.

Suppose you have lightweight object that falls only 50cm and the sensor is not attached to the frame but encapsulated in foam or rubber. Then you can't even get to 10 g. That will not be the g-force on the frame, but it will give an indication of the impact.
If the object has foam edges, then the impact force will drop even more.
If the object is a car and it always drops on its wheels and they have suspension, then I expect no more than a few g.

The I2C bus is slow, a sensor with analog output or with a SPI interface is better.

As far as I know, the impact force is in g-force. That is what a accelerometer measures.

An accelerometer measures acceleration, which is the rate of change of velocity. That can be represented in units of g, which is velocity rate of change = 9.8 meters per second per second.

Force depends on mass.

That's right !

In fact I haven't say all the data's,
My rover weight 1.5Kg, the height of the drop is 1.5 meters and we are using a system that using a pulley simulate moon gravity (1.62m²/s). Do you really think that the acceleration will be this much ?

Well, in fact my object has metal wheel with no suspension at all but landing on talc so i suppose that the impact won't be to harsh.

Do you really think that the acceleration will be this much?

I have no idea what you can expect to measure in that experiment, because you have not described it adequately. Do the experiment and tell us what you get.

Yes that could be a first step,

I'll up you in a few days when the experiment will be done.
And if the values seems to high for the sensor of the arduino, i'll try the one you recommanded me.

Many thanks for your time

Moon gravity is a piece of cake.
The LSM9DS1 can measure up to 16 g, then it depends on the frame and how the sensor is attached if that is enough.
The Arduino Nano 33 BLE uses I2C interface to the LSM9DS1 and not the faster SPI interface.
Try to set the I2C bus speed to 400kHz and try to capture the peak.

Can the LSM9DS1 measure the peak on its own ? I can not find that in the datasheet.
It has a "burst" mode to get the accelerometer data as fast as possible.