Can't wait for the implementation! Great video! Kalman filters are a huge topic. I've seen your Quaternion EKF implementation, I think it would be very nice to see what would change in the EKF given each choice of attitude representation.
Man I think you'll be the reason that I'll actually be able to get into real electronics design. If I am ever good enough to do it I swear I'll at least make a few videos to help others like you do
Amazing video Phil! It's a good refresher for people like me who did this in college and now have forgotten everything :) Would like to suggest a minor correction though, at 11:48 the equation should be K = P * C^T * [ C * P * C^T + R ]^-1. Cheers!!
Hey Phil, can you make some content about how to expand this EKF for a 9DOF IMU inorder to get absolute attitude wrt the NED frame Btw you have done an amazing job with this video series and I really prefer the simplicity There was a huge lack of resources for this topic on RU-vid
I used to work servicing, repairing & building drones, during the period when DJI Naza flight controllers and DJI Phantoms had the undocumented flyaway (return to China) feature - OH your drone flew away, you will have to purchase a new one. Emotional over-investment was common amongst owners and the heartbreak was real...anyway. Never proven, but suspected to me erroneous readings or data corruption of GPS location - someone did actually manage to recover their 'lost' drone, acquire and read the logs. From memory, the drone 'thought' it was travelling at 18,000,000 km/s or hour - I forget which. Plenty of others did experience random crashes (IMU data corruption), so much was near impossible to prove with an intransigent supplier that never accepted responsibility. Now I understood much of what you just went through in the 3 video series, I couldn't write any code mind you, interesting part was the kalmann filter - It's interesting to see the filtering and what is essentially a feedback loop to account for the sensor drift and your readings become more refined with each iteration/development of the code. Why the long message, well at the time of the fugitive drones we suspect that the flight control software did not have any means to account for erroneous or corrupted data and it just acted on it, with irrepressible enthusiasm. I'm was very interested to see how your method deals with data point(s) which are so far outside plausible estimate that they have to be discarded, essentially that 'trust' coefficient of estimate -v- sensor reading. It was a great explanation of just how much finesse goes into getting sensible date via the fusion of the two sensors. thank you
Thanks so much, Phil for the videos and the content in them. I really appreciate your efforts. my suggestion is, if you could do more videos on how to write drivers from scratch i.e read and writing to sensors.
I have to say Q and R matrices are tricky. You can adjust them to get a smoother estimation for your academic paper or a rough result just for a demonstration. All depend on which you trust more, prediction ? or measurement? If you just follow the parameter in the datasheet, normally you just got a bad result. Allan variance could be helpful, but need more data and time to obtain, and the improvement is just a little.
Hello and thank you. It would be awesome of you created a video with software Implementation of EKF, just like the one you have on the PID controller. Thank you very much!
Would love to try this with a laser scanner lidar sensor, had a project in university for an automatically guided vehicle that was plagued from slow scan rate (7 Hz)
Hi Phil, great job as usual! Reading Handwritten notes seem to hard a bit, so can you show equations more clearly, thanks. can't wait to see the gimbal lock solution on implementation.
Hi Phil, Thanks for your great videos. Is there a problem in estimating yaw angle using your Extended Kalman Filter? (Why you are not estimating yaw angle too) Thanks.
Thank you so much for this series! I don't know how you deal with different sensor update rate? What if the accelerometer is running at 10Hz and the gyroscope is running at 5Hz?
I wonder how one would deal with the fact that IMU measures accelerations relative to it's own center of mass, which is different from the system's COM?