Accelerometer MEMS, magnetometer, dan sudut orientasi



Ketika mengembangkan perangkat di mana perlu untuk mengevaluasi sudut orientasi, pertanyaan mungkin timbul - sensor MEMS mana yang harus dipilih. Produsen sensor menyediakan banyak parameter yang darinya kita perlu memperoleh informasi yang berguna tentang kualitas sensor.

Untuk memahami akurasi sudut seperti apa yang dapat kita andalkan, Anda perlu melakukan sejumlah upaya.

TL; DR : Sebuah skrip kecil untuk Oktaf / MATLAB dijelaskan, yang memungkinkan untuk memperkirakan kesalahan dalam menghitung sudut orientasi dari pengukuran MEMS pada akselerometer dan magnetometer. Pada input skrip - parameter sensor dari lembar data (dan / atau kesalahan kalibrasi). Artikel ini mungkin bermanfaat bagi mereka yang mulai menggunakan sensor inersia di perangkat mereka. Program pendidikan kecil pada sensor disertakan. Tautan ke github juga.

Kami segera menerima ketentuan berikut:

  • Kami ingin mengevaluasi sudut orientasi perangkat stasioner.

    Mengapa?
    , .
  • Untuk memperkirakan sudut, kami akan menggunakan pengukuran MEMS dari accelerometer dan magnetometer.

1. Program pendidikan singkat


Sudut orientasi




Kami akan memahami sudut orientasi objek sebagai sudut Euler - roll, pitch, yaw, yang menghubungkan sistem koordinat objek XYZ dan sistem koordinat lokal-utara-utara (ENU - East North Up). Sudut roll, pitch, yaw menunjukkan rotasi yang harus dilakukan sumbu XYZ untuk bergerak di sumbu ENU. Dengan demikian, sudut nol berarti sumbu X objek menghadap ke timur, sumbu Y objek melihat ke utara, dan sumbu Z naik.

Urutan rotasi sumbu adalah dari sudut terakhir: pertama pada yaw (di sekitar sumbu Z), kemudian di pitch (di sekitar sumbu Y), kemudian di roll (di sekitar sumbu X).

Akselerometer


Ini adalah sensor yang mengukur proyeksi akselerasi nyata ke sumbu sensitivitas. Tampaknya - karena mengukur gravitasi juga, bahkan ketika accelerometernya tetap. Sangat mudah untuk membayangkan accelerometer sebagai beban pada pegas, pengukuran yang dikeluarkan sebanding dengan tingkat ketegangan pegas. Jika accelerometer dalam keadaan diam, pegas hanya akan terentang oleh gravitasi. Jika itu mempercepat, maka akan ada sejumlah kekuatan: inersia dari berat(F=maโ†’) dan gravitasi (Fg=mgโ†’)

Kami menerima model pengukuran trias akselerometer ortogonal (saling tegak lurus) berikut:

aXYZ=maโ‹…AXYZ+ba+na,

Dimana aXYZ- Akselerasi terukur dalam SSC (sistem koordinat sendiri) XYZ, ma- Miringkan matriks sumbu dan faktor skala akselerometer, AXYZApakah vektor percepatan sejati dalam CCK XYZ, baApakah vektor perpindahan nol dari accelerometer, na- Kebisingan pengukuran.

Matriks miring dari sumbu dan faktor skala adalah sebagai berikut:

ma=[1+ma,1,1ma,1,2ma,1,3ma,2,11+ma,2,2ma,2,3ma,3,1ma,3,21+ma,3,3],

dimana elemen-elemen tersebut berada pada diagonal utama (1+ma,1,1,1+ma,2,2,1+ma,3,3) Apakah faktor skala dan kesalahannya di sepanjang tiga sumbu accelerometer, dan elemen yang tersisa dari matriks adalah distorsi dari sumbu accelerometer.

Pemilihan akselerometer dari lembar data

MPU-9250


  • โ€” Zero-G Initial Calibration Tolerance (ยฑ60mg X,Y, ยฑ80mgZ) โ€” g10โˆ’3;
  • โ€” Initial Tolerance (ยฑ3%) โ€” . , 10โˆ’2;
  • โ€” Cross Axis Sensitivity (ยฑ2%) โ€” 10โˆ’2;
  • โ€” Noise Power Spectral Density (300ฮผgHz)โ€” g10โˆ’6;
  • โ€” Low Pass Filter Response (5โˆ’260Hz)โ€” , . . ;

:

ฯƒnoise=G0โ‹…ฮ noise;


ADIS16488A:


  • โ€” Bias Repeatability (ยฑ16mg) โ€” g10โˆ’3;
  • โ€” (Sensitivity) Repeatability (ยฑ0.5%) โ€” ;
  • โ€” Misalignment Axis to frame (ยฑ1โˆ˜) โ€” , (, );
  • โ€” Noise Density (0.063mgHzrms)โ€” g;
  • โ€” (3dBBandwidth)โ€” , MPU-9250;


Magnetometer


Sebuah sensor yang mengukur proyeksi induksi medan magnet ke sumbu sensitivitas. Magnetometer ditandai oleh distorsi besi-keras dan besi-lunak. Distorsi hard-iron adalah efek aditif ketika komponen konstan ditambahkan ke bidang yang diukur. Alasannya mungkin, misalnya, aksi magnet permanen atau offset nol sensor otomatis. Distorsi soft-iron adalah efek pengganda yang mencerminkan perubahan arah dan / atau pelemahan vektor induksi magnetik. Efek ini dapat disebabkan oleh adanya benda logam di sekitar magnetometer atau oleh distorsi sensor sendiri - kesalahan dalam faktor skala atau distorsi sumbu sensitivitasnya.
Kami menerima model pengukuran triad magnetometer:

mXYZ=Smโ‹…MXYZ+bm+nm,

Dimana mXYZ- Pengukuran magnetometer dalam CCK XYZ, Sm- matriks miring miring diagonal dan faktor skala (yang menggambarkan efek besi lunak), MXYZApakah vektor induksi magnetik sejati dalam SSK, bm- perpindahan nol magnetometer (menjelaskan efek keras - besi), nm- Kebisingan pengukuran.
Matriks sumbu miring dan faktor skala magnetometer:

Sm=[1+Sm,1,1Sm,1,2Sm,1,3Sm,2,11+Sm,2,2Sm,2,3Sm,3,1Sm,3,21+Sm,3,3],

elemen yang terletak di diagonal utama (Sm,1,1,Sm,2,2,Sm,3,3) Apakah faktor skala dan kesalahannya di sepanjang tiga sumbu magnetometer, unsur-unsur yang tersisa dari matriks adalah distorsi dari sumbu magnetometer. Semua elemen matriks juga memperhitungkan efek soft-iron.

Pilihan parameter magnetometer dari lembar data

MPU-9250


, , :

  • โ€” (1ฮผT);
  • โ€” (5%);
  • โ€” , , โ€” (ยฑ2%);
  • โ€” (0.6ฮผT);

ADIS16488A


  • โ€” Initial Bias Error (ยฑ15mgauss=1.5ฮผT)โ€” , (0.5ฮผT);
  • โ€” Initial Sensitivity Tolerance (2%);
  • โ€” Misalignment Axis to axis (0.35โˆ˜)โ€” , (, );
  • โ€” Noise Density (0.042mgaussHz)โ€” (TeslaHz);
  • โ€” 260Hz;


Perhitungan sudut orientasi


Karena adanya gravitasi di Bumi, akselerometer "merasakan" arah ke bawah. Pengukuran mereka digunakan untuk menghitung sudut roll dan pitch. Rumus untuk perhitungan dapat ditemukan di sini . Yang ketiga adalah sudut menguap (dan dalam hal ini, azimuth magnetik), dapat ditentukan karena keberadaan medan magnet Bumi. Vektor induksi medan magnet diukur dengan magnetometer dan pengukurannya terlibat dalam perhitungan sudut yaw. Perlu dicatat bahwa dalam menghitung azimuth magnetik, pengukuran magnetometer digunakan, dihitung dalam bidang. Di sini Anda dapat menemukan rumus untuk menghitung azimuth magnetik.

roll=atan(aYaZ),

pitch=atan(โˆ’aXaY2+aZ2),

yaw=atan2(mEmN),

Dimana atan2- Fungsi tangen busur penuh, aX, aY, aZ- Pengukuran accelerometer sepanjang tiga sumbu di CCK, mE, mN- Pengukuran magnetometer sepanjang sumbu X ', Y' (pengukuran magnetometer dihitung di dalam pesawat).

2.





  • roll, pitch, yaw. .
    ?
    , โ€” .
  • roll, pitch, yaw XYZ ENU:

    CXYZENU=|cyโ‹…cpโˆ’crโ‹…sy+srโ‹…cyโ‹…spsrโ‹…sy+crโ‹…cyโ‹…spsyโ‹…cpcrโ‹…cy+srโ‹…syโ‹…spโˆ’srโ‹…cy+crโ‹…syโ‹…spโˆ’spsrโ‹…cpcrโ‹…cp|,

    cr=cosโก(roll), sr=sinโก(roll), cp=cosโก(pitch), sp=sinโก(pitch), cy=cosโก(yaw), sy=sinโก(yaw).
  • :

    AXYZ=(CXYZENU)Tโ‹…|00โˆ’1|,


    |00โˆ’1|โ€” , , g, (CXYZENU)Tโ€” ( ).
  • :

    aXYZ=(I+ma)โ‹…AXYZ+ba+na,
  • () :

    rollโ€ฒ=atan(aYaZ),

    pitchโ€ฒ=atan(โˆ’aXaY2+aZ2).
  • ยซยป , rpy2mat:

    CXYZXYZโ€ฒ=rpy2mat([rollโ€ฒpitchโ€ฒ0]T),

    roll' pitch' โ€” , , โ€” .
  • ENU XYZ:

    MXYZ=(CXYZENU)Tโ‹…MENU.
  • :

    mXYZ=Smโ‹…MXYZ+bm+nm.
  • ยซยป:

    mXYZโ€ฒ=CXYZXYZโ€ฒโ‹…mXYZ.
  • ยซยป c :

    yawโ€ฒ=atan2(mYโ€ฒmXโ€ฒ).
  • roll, pitch, yaw โ€” roll', pitch', yaw'.

3. โ€”


Untuk dua sensor, yang kami ambil sebagai contoh - ADIS16488A dan MPU-9250, kesalahan marginal dalam estimasi sudut orientasi diperoleh di bawah pengaruh gabungan dari kesalahan accelerometer dan magnetometer.

Tabel di bawah ini menunjukkan nilai maksimum kesalahan yang diterima:
SudutMPU-9250ADIS16488A
Gulungan

30โˆ˜

8โˆ˜
Nada

10โˆ˜

2โˆ˜
Azimuth magnetik

30โˆ˜

20โˆ˜

Efek gabungan dari kesalahan accelerometer dan magnetometer pada kesalahan estimasi sudut orientasi:

  • Ini adalah bagaimana kesalahan estimasi roll terlihat tergantung pada nilai roll dan pitch:

  • Kesalahan estimasi pitch tergantung pada nilai roll dan pitch:

  • Kesalahan dalam mengestimasi azimuth magnetik dari sudut roll and pitch:

  • Kesalahan estimasi azimuth magnetik dari sudut roll dan azimuth magnetik:

  • Kesalahan dalam mengestimasi azimuth magnetik dari sudut pitch dan azimuth magnetik:


- . ?
.



Z (z1โ†’z2) , (gโ€ฒโ†’g"). ( ). (ฮ”1โ†’ฮ”2). , .

( ) :









( ) :









  • , . . .
  • . .

- :
  • ( ).
  • , , .. โ€” .



Penulis


Institut Teknik Tenaga Moskow, Departemen Sistem Teknik Radio

All Articles