File Exchange

image thumbnail

Extended Kalman filter for speed-sensorless AC motor drive

version (36 KB) by Bartlomiej Ufnalski
Yet another demonstration for my students.


Updated 09 Mar 2017

View License

Some parts are commented in Polish. Sorry for that :) For more details please consult -- also in Polish :) This submission contains two EKFs: one that assumes no knowledge of the moment of inertia and another one that can be applied if the moment of inertia is known.

Comments and Ratings (8)

Dear Sir,
I am getting an error as
" Error evaluating 'InitFcn' callback of block_diagram 'run_me_DRFOC_for_EKF_end_ELO'.
Callback string is 'DRFOC_parameters'
Caused by:
Undefined function or variable 'DRFOC_parameters'.
Variable 'DRFOC_parameters' does not exist."
how to resolve this


abbas ogur

thank you, thank you ,thank you .
and can i ask a question , i want to apply the EKF to the PMSM can you help me with that . i just want an article or any thing that could help me to build a model step by step and in easy way
again thank you

Dear Jone Liu,
Please google extended Kalman filter induction motor drive - plenty of edu resources out there.
For Polish-speaking students: .
Best regards,

Jone Liu

Dear Bartlomiej Ufnalski,

Thanks a lot for sharing your great work.

Just wonder if there are any related publications which can help our understanding of the examples.

Best Regards,
Jone Liu

Dear Guo Zhuoyu,
You're perfectly right. However, my intention here is not to provide a fully functional all-in-one model. Some work has to be left to my students :) You can use S-Function to incorporate the included EKF code into your Simulink model.
Best regards,

guo zhuoyu

EKF is an observer, the output of the EKF should be the input of the controller. But actually your EKF and the whole system is separate.


Modeling of the system noise corrected. A huge thanks goes to my colleague Arkadiusz Kaszewski for pointing this out.

MATLAB Release Compatibility
Created with R2016b
Compatible with any release
Platform Compatibility
Windows macOS Linux