rfetick / Kalman

Implement Kalman filter for your Arduino projects
MIT License
131 stars 13 forks source link

Issue at line "KALMAN<Nstate,Nobs> K; // your Kalman filter" #7

Closed SoorajR-ai closed 11 months ago

SoorajR-ai commented 1 year ago

In file included from C:\Users\ADMIN\AppData\Local\Temp.arduinoIDE-unsaved2023812-12140-1a8a6ox.cm8d\kalman_step\kalman_step.ino:16:0: c:\Users\ADMIN\Documents\Arduino\libraries\Kalman/Kalman.h:131:59: error: 'Array' does not name a type template<int Nstate, int Nobs, int Ncom = 0, class MemF = Array<Nstate,Nstate,float> > ^~~~~ c:\Users\ADMIN\Documents\Arduino\libraries\Kalman/Kalman.h:131:64: error: expected '>' before '<' token template<int Nstate, int Nobs, int Ncom = 0, class MemF = Array<Nstate,Nstate,float> > ^ c:\Users\ADMIN\Documents\Arduino\libraries\Kalman/Kalman.h:135:10: error: 'Identity' in namespace 'BLA' does not name a template type BLA::Identity<Nstate,Nstate> Id; // Identity matrix ^~~~ C:\Users\ADMIN\AppData\Local\Temp.arduinoIDE-unsaved2023812-12140-1a8a6ox.cm8d\kalman_step\kalman_step.ino:36:19: error: template argument 4 is invalid KALMAN<Nstate,Nobs> K; // your Kalman filter ^ C:\Users\ADMIN\AppData\Local\Temp.arduinoIDE-unsaved2023812-12140-1a8a6ox.cm8d\kalman_step\kalman_step.ino: In function 'void setup()': C:\Users\ADMIN\AppData\Local\Temp.arduinoIDE-unsaved2023812-12140-1a8a6ox.cm8d\kalman_step\kalman_step.ino:62:5: error: request for member 'F' in 'K', which is of non-class type 'int' K.F = {1.0, 0.0, ^ C:\Users\ADMIN\AppData\Local\Temp.arduinoIDE-unsaved2023812-12140-1a8a6ox.cm8d\kalman_step\kalman_step.ino:65:5: error: request for member 'H' in 'K', which is of non-class type 'int' K.H = {1.0, 0.0, ^ C:\Users\ADMIN\AppData\Local\Temp.arduinoIDE-unsaved2023812-12140-1a8a6ox.cm8d\kalman_step\kalman_step.ino:68:5: error: request for member 'R' in 'K', which is of non-class type 'int' K.R = {n1n1, 0.0, ^ C:\Users\ADMIN\AppData\Local\Temp.arduinoIDE-unsaved2023812-12140-1a8a6ox.cm8d\kalman_step\kalman_step.ino:71:5: error: request for member 'Q' in 'K', which is of non-class type 'int' K.Q = {m1m1, 0.0, ^ C:\Users\ADMIN\AppData\Local\Temp.arduinoIDE-unsaved2023812-12140-1a8a6ox.cm8d\kalman_step\kalman_step.ino: In function 'void loop()': C:\Users\ADMIN\AppData\Local\Temp.arduinoIDE-unsaved2023812-12140-1a8a6ox.cm8d\kalman_step\kalman_step.ino:89:5: error: request for member 'update' in 'K', which is of non-class type 'int' K.update(obs); ^~ C:\Users\ADMIN\AppData\Local\Temp.arduinoIDE-unsaved2023812-12140-1a8a6ox.cm8d\kalman_step\kalman_step.ino:92:45: error: request for member 'x' in 'K', which is of non-class type 'int' Serial << state << ' ' << obs << ' ' << K.x << '\n'; ^ C:\Users\ADMIN\AppData\Local\Temp.arduinoIDE-unsaved2023812-12140-1a8a6ox.cm8d\kalman_step\kalman_step.ino: In function 'void SIMULATOR_UPDATE()': C:\Users\ADMIN\AppData\Local\Temp.arduinoIDE-unsaved2023812-12140-1a8a6ox.cm8d\kalman_step\kalman_step.ino:120:13: error: request for member 'F' in 'K', which is of non-class type 'int' state = K.F state + state_var; // time evolution ^ C:\Users\ADMIN\AppData\Local\Temp.arduinoIDE-unsaved2023812-12140-1a8a6ox.cm8d\kalman_step\kalman_step.ino: In function 'void SIMULATOR_MEASURE()': C:\Users\ADMIN\AppData\Local\Temp.arduinoIDE-unsaved2023812-12140-1a8a6ox.cm8d\kalman_step\kalman_step.ino:131:11: error: request for member 'H' in 'K', which is of non-class type 'int' obs = K.H state + noise; // measurement ^

exit status 1

Compilation error: template argument 4 is invalid

Koen36 commented 12 months ago

Installing version 3.2 of the library "BasicLinearAlgebra" should fix it

SoorajR-ai commented 11 months ago

thanks