Available online at www.sciencedirect.com ScienceDirect Procedia Engineering 87 (2014) 1255 – 1258 EUROSENSORS 2014, the XXVIII edition of the conference series Attitude-independent 3-axis accelerometer calibration based on adaptive neural network Katarớna Draganovỏa,*, Miroslav Laỏka, Duan Prasliỵkaa, Viktor Kỏna a Technical University of Kosice, Faculty of Aeronautics, Department of Aviation Technical Studies, Rampova 7, 041 21 Kosice, Slovakia Abstract The article presents a novel adaptive iterative calibration algorithm, which can be successfully applied for the calibration constants of a 3-axis accelerometer determination The theory is based on the neural network that creates an inverse function to the uncalibrated sensor’s transfer function Learning process of the neural network uses a gradient methodology applying total differential on the scalar error equation The performed simulations and experiments proved a very good stability and fast convergence of the iterative algorithm and a major improvement of the sensor’s output accuracy In addition to the easy-to-use calibration algorithm, considerably fast convergence, precision, noticeable repeatability and undemandingness of the measurements, the main advantage of this methodology lies in the sensor attitude independency, which is a requirement and limitation of many other calibration methods and no need of the precision positioning calibration platforms, which leads to the calibration errors reduction © 2014 2014The TheAuthors Authors Published Elsevier © Published by by Elsevier Ltd.Ltd This is an open access article under the CC BY-NC-ND license Peer-review under responsibility of the scientific committee of Eurosensors 2014 (http://creativecommons.org/licenses/by-nc-nd/3.0/) Peer-review under responsibility of the scientific committee of Eurosensors 2014 Keywords: accelerometer; calibration; inertial sensors, neural network, vector sensors Introduction Sensor calibration is still very discussed by many authors in their papers [1-4] because removing of structural errors in the sensor outputs can significantly improve sensor performance In case of sensors the main source of errors is in general sensor's static bias (additive error) and a sensitivity error represented by a multiplicative error of each sensor's channel Elimination of these errors using conventional methods requires usually very precision sensor * Corresponding author Tel.: +421-00-602-6153 E-mail address: katarina.draganova@tuke.sk 1877-7058 © 2014 The Authors Published by Elsevier Ltd This is an open access article under the CC BY-NC-ND license (http://creativecommons.org/licenses/by-nc-nd/3.0/) Peer-review under responsibility of the scientific committee of Eurosensors 2014 doi:10.1016/j.proeng.2014.11.412 1256 Katarína Draganová et al / Procedia Engineering 87 (2014) 1255 – 1258 positioning and measurements are influenced by the noise that don't have to be stationary Even if we take into consideration also other error sources such as orthogonality error, cross sensitivity or drift, the calibration process is often time consuming and has still high demands on equipment, data processing and evaluation Furthermore results don't have to be unambiguous The main purpose of the presented methodology using neural networks was to solve the mentioned problems Theory If we suppose homogeneous gravitational field, then the scalar value of the gravitational field of any sensor position in this field has to lead on to the constant value of the gravitational field calculated from the measured components of the calibrated sensor For this assumption the true scalar value of the measured acceleration is designated as A and can be determined a priori or measured; in case of accelerometers A=1 g During the random sensor rotation we get xk, yk and zk values, hence measured values in the x , y and z sensitivity axis for the given step k, which represents measured vector’s orthogonal decomposition: Amk = (x ) + (y ) + (z ) k k k (1) We focus on the additive constants ax, ay and az and multiplicative constants mx, my and mz determination, which refer to the sensor bias and sensitivity error, respectively These constants can be formulated using calculated xk , ~ y k and ~ z k values applying calibration constants for the given step: adjusted ~ ~ x k = m xk x k + a xk ; ~ y k = m ky y k + a yk ; ~ z k = mzk z k + a zk (2) The theory is based on the assumption that the sensor is absolutely accurate and thus m1=1 and a1=0 Then for the adjusted values in the given step we can write equation: Ak = (~x ) + (~y ) + (~z ) k k k (3) The expected value of A is g, but considering sensor errors for the each step the deviation ε k from this ideal state is calculated as ε k = A k − and afterwards multiplicative constants m and additive constants a are calculated so to minimize ε value for the given step to the expected value using novel algorithm for multiplicative constants learning process: m xk +1 = m xk − ~ x k αε k ; m ky +1 = m yk − ~ y k αε k ; m zk +1 = mzk − ~z k αε k (4) where α is the convergence or learning velocity and its value is from the range of 0÷1 For the additive constants ak for the given step we can use the following relationship: a xk +1 = a xk − sign( ~ x k )αε k ; a ky +1 = a ky − sign( ~ y k )αε k ; a zk +1 = a zk − sign(~ z k )αε k (5) where sign represents sign of the adjusted value of ~ xk , ~ y k and ~ z k The convergence varies only with the sign change and it is caused by the fact that additive error is independent from the magnitude Resultant additive and multiplicative constants can be calculated after convergence achievement: a=− ks ks ks ¦a ;m = k ¦m j j =1 s j =1 j (6) 1257 Katarína Draganová et al / Procedia Engineering 87 (2014) 1255 – 1258 where ks corresponds to those iteration steps, for which ε ≤ ε is stable and converges to the minimal value Extending the neural network to the multilayer one the calibration methodology can be also used for the sensor linearity and orthogonality determination Modeling and simulation For the purpose of the calibration methodology testing an idealized model with random sampled data representing measured sampled characteristics of axm, aym and azm signals was created Implementing bias and sensitivity errors together with the white noise with the noise amplitude of 0.005 g for each simulated accelerometer channel we obtained testing model consisting from 1000 samples, whereas as can be seen on Fig 1, the convergence already after approx 300 samples was achieved The convergence velocity was set to 0.15 Generated calibration constants and simulation results are compared in Table The generated values varies from the calibration constants obtained from the simulation results in case of additive constants up to the 18 mg and in case of the multiplicative constants the difference is only one ten-thousandth Table Comparison of generated and calculated additive and multiplicative constants obtained as a simulation results constants additive constants multiplicative constants a x [g] ay a z [g] m x [–] my generated 0.3 -0.2 0.1 1.111 0.909 0.833 calculated 0.328 -0.187 0.079 1.110 0.909 0.833 [g] m z [–] [–] 1.6 1.3 1.4 1.2 A, Am [g] A, Am [g] The theory correctness also confirms Fig 1a, which illustrates dependence of the total of the three simulated vector components of the gravitational field A on the learning process steps For comparison in the same graph also the calculated value Am from the simulated values is shown From the visualized characteristics it can be seen, that Am value is in the range from 0.58 to 1.43 g, whereas according to the expectation the A value converges to one and changes only in the range of 16 mg, which means a significant improvement 1.2 0.8 A Am 0.6 0.9 A Am 0.8 0.4 0.7 a 1.1 200 400 600 number of steps 800 1,000 b 100 200 300 400 500 number of steps Fig dependence of A and Am on the simulation steps in the learning process (a) during the simulation; (b) during experiment Experiments and results The theoretical principles simulations were analyzed and supplemented by experimental measurements using 3-axis ADXL 335 MEMS accelerometer During the static calibration measurements the tested accelerometer was randomly positioned in the 3D space and for each calibration point 1000 samples were averaged The sampling frequency of kHz was used and the velocity of convergence α was set to 0.15 The value of İ converged to the zero value in the range of –0.046 to 0.041 g and the corresponding total value A changed from 0.79 to the 1.18 g Applying calibration constants the scalar value A varied only in the range of 0.02 g in comparison to the measured value 0.39 g, which means a significant improvement of the sensor accuracy The learning process of calibration constants is shown on Fig 1b From the visualized characteristics it is obvious that the convergence was relatively fast (after approx 100 samples), but the variance was still presented The variance was probably caused by noise 1258 Katarína Draganová et al / Procedia Engineering 87 (2014) 1255 – 1258 inherent during the measurement and the orthogonality and linearity errors The learning process of additive and multiplicative constants is shown on Fig and calculated calibration constants are summarized in Table 1.04 0.15 mx, my, mz [-] ax, ay, az [g] 0.2 0.1 0.05 ax ay az -0.05 1.02 mx my mz 0.98 0.96 100 200 300 400 number of steps a 500 100 200 300 400 500 number of steps b Fig (a) learning process of additive constants; (b) learning process of multiplicative constants Table Calculated additive and multiplicative constants of ADXL 335 accelerometer constants ADXL335 additive constants multiplicative constants a x [g] ay 0.154 0.125 [g] a z [g] m x [–] my 0.026 1.021 1.018 [–] m z [–] 1.005 Conclusion The calibration methodology of 3-axis accelerometers using neural networks is based on the gravitational field homogeneity and corresponding known constant scalar value of the vector decomposition of the gravitational field components This theoretical principle can be applied also on calibration of other 3-axis sensors of physical field, such as for example magnetic field sensors The performed simulation and following measurements proved very good stability and considerably fast convergence of the presented novel iteration adaptive algorithm The efficacy of the proposed algorithm compared with others lies mainly in the sensor attitude independency and no need of positioning calibration platform utilization, but also in the speed, repeatability, precision, undemandingness and comfort of the presented calibration procedure, which lead to the effective accelerometer calibration constants determination and calibration errors reduction Acknowledgements This work was supported by the Slovak Research and Development Agency under contract No APVV 0266-10 and APVV 0454-07 and Scientific Grant Agency of the MESRaS SR and SAS under contract No VEGA 1/0286/13 References [1] M ipo, P Paỵes, J Rohỏỵ and P Novỏỵek, P Analyses of triaxial accelerometer calibration algorithms IEEE Sensors Journal, 12 (2012) 1157-1165 ISSN 1530-437X DOI: 10.1109/JSEN.2011.2167319 [2] V Petrucha and P Kaspar, Calibration of a triaxial fluxgate magnetometer and accelerometer with an automated non-magnetic calibration system Proceedings of IEEE Sensors, (2009) 1510-1513 ISBN 978-142444548-6 DOI: 10.1109/ICSENS.2009.5398466 [3] S.-H.P Won and F Golnaraghi A triaxial accelerometer calibration method using a mathematical model In IEEE Transactions on Instrumentation and Measurement, 59 (2010) 2144-2153 ISSN 0018-9456 DOI: 10.1109/TIM.2009.2031849 [4] M Gietzelt, K.-H Wolf, M Marschollek and R Haux Performance comparison of accelerometer calibration algorithms based on 3Dellipsoid fitting methods Computer Methods and Programs in Biomedicine, 111 (2013) p 62-71 ISSN 0169-2607 DOI: 10.1016/j.cmpb.2013.03.006 ... calibration methodology of 3- axis accelerometers using neural networks is based on the gravitational field homogeneity and corresponding known constant scalar value of the vector decomposition... multiplicative constants of ADXL 33 5 accelerometer constants ADXL 335 additive constants multiplicative constants a x [g] ay 0.154 0.125 [g] a z [g] m x [–] my 0.026 1.021 1.018 [–] m z [–] 1.005 Conclusion... Generated calibration constants and simulation results are compared in Table The generated values varies from the calibration constants obtained from the simulation results in case of additive constants