Optical Flow signal delay

Firmware/software/electronics/mechanics
Post Reply
bobby183
Beginner
Posts: 4
Joined: Wed Sep 04, 2019 8:01 pm

Optical Flow signal delay

Post by bobby183 »

Hello,

I have been playing around with the PMW3901 optical flow sensor for a little while, and I noticed something I could not find any reference to anywhere else. I was trying to validate the gyroscopic compensation for rotational velocity readings, when I noticed that the gyro signal and the optical flow readings were delayed by about 100 milliseconds, has anyone else noticed this? I will try to post a graph of the sensor readings later on. Thanks
arnaud
Bitcraze
Posts: 2538
Joined: Tue Feb 06, 2007 12:36 pm

Re: Optical Flow signal delay

Post by arnaud »

I do not think this delay has been measured by us before, if it is that delayed it is very interesting because it could cause some oscillation that sometime happens with the flow! It would be great if you could post some more info about how your measured the delay.
bobby183
Beginner
Posts: 4
Joined: Wed Sep 04, 2019 8:01 pm

Re: Optical Flow signal delay

Post by bobby183 »

Here's an example comparing the gyroscope and velocity sensor:
Screen Shot 2019-11-20 at 10.00.40 AM.png
I am rotating the board back and forth, I would expect the angular velocity and the velocity read by the sensor to be aligned, but as you can see the velocity sensor is ever so slightly lagging behind the gyroscope which culminates in very poor compensation for angular rotation. When I delay the gyroscope (and distance) measurements by give or take 100 milliseconds the compensation works much better and only measures the lateral velocity. I have done these tests with the following modules and have had the exact same, and in some cases even more worse, results:

CX-OF: https://www.aliexpress.com/item/32837432356.html
Another serial module: https://www.aliexpress.com/item/3300200 ... 4c4dA6Kmg0
I2C module: https://www.tindie.com/products/onehors ... ow-sensor/
arnaud
Bitcraze
Posts: 2538
Joined: Tue Feb 06, 2007 12:36 pm

Re: Optical Flow signal delay

Post by arnaud »

Ho, so you are not using the flow deck. Are you attaching these modules to a Crazyflie and if so what driver are you using on the Crazyflie to interface them?

Very interesting measurement nonetheless. This looks like something that we should account for in our EFK implementation.
bobby183
Beginner
Posts: 4
Joined: Wed Sep 04, 2019 8:01 pm

Re: Optical Flow signal delay

Post by bobby183 »

No I am not using the flow deck, however the data I collected and plotted is the scaled raw output of the sensors before any fusion or processing, the driver I used to interface with the SPI module is the Bitcraze one:
https://github.com/bitcraze/Bitcraze_PMW3901

The results should be repeatable using any board with the PWM3901 sensor; it seems like it's the sensor itself that has this issue rather than a particular board. I was surprised to see the same (or worse) delay with the SPI module when compared to UART; it would be great if someone else could replicate and confirm these results.
Post Reply