Transisi antara sistem koordinat sudut Euler. Persamaan kinematik dalam koordinat umum. Sudut Euler dan Krylov, angka empat. Pameran sinyal akselerometer MEMS

Sudut Euler-Krylov

Tiga sudut Euler-Krylov dan, dihitung berlawanan arah jarum jam, memungkinkan Anda mengatur dengan jelas posisi sudut benda tegar di ruang angkasa. Gambar tersebut menunjukkan salah satu jenis sudut Krylov - yang disebut sudut pesawat yang digunakan dalam penerbangan

Sudut Euler-Krylov

Kerangka acuan tetap, yang memperhitungkan posisi sudut suatu benda tegar (pesawat terbang), dibentuk oleh tripel vektor berarah kanan. Sumbu diarahkan sepanjang vertikal lokal dari pusat bumi, sumbu terletak pada bidang horizon dan mengarah ke utara geografis (Utara, Utara), dan sumbu melengkapi sistem koordinat ke kanan. Sistem koordinat bergerak terhubung secara kaku ke objek bergerak - misalnya pesawat terbang. Sumbunya diarahkan sepanjang sumbu konstruksi (membujur) pesawat, sumbu diarahkan sepanjang sumbu normal ke arah puncak, dan sumbu diarahkan sepanjang sumbu melintang ke arah sisi kanan pesawat. Posisi sudut (orientasi) pesawat dalam sistem koordinat ditentukan dengan heading(), pitch() dan roll(). Adanya tanda minus di depan sudut bidang disebabkan oleh fakta bahwa nilai positifnya, tidak seperti sudut Euler-Krylov klasik, dihitung searah jarum jam. Posisi akhir pesawat ditentukan oleh urutan belokan

Pameran sinyal akselerometer MEMS

Tata cara menentukan koordinat sudut awal disebut penyelarasan. Untuk mengatur roll dan pitch menggunakan akselerometer MEMS triaksial yang menghasilkan percepatan, dan sepanjang sumbu X, Y dan Z dari sistem koordinat bergerak OXYZ yang terkait, nilai sudut yang sesuai dapat ditemukan dari proyeksi vektor percepatan jatuh bebas g =9,81 m/s2 pada setiap sumbu menggunakan peralatan matematika matriks rotasi (3.1)

mewakili nilai dari output yang sesuai dari akselerometer triaksial.

Mari kita nyatakan dari (3.2) vektor percepatan gravitasi dengan mengalikan kedua ruas persamaan di sebelah kiri dengan matriks:

Dari dua persamaan pertama sistem (3.4) kita peroleh

Kalibrasi akselerometer MEMS

Kesalahan dalam menentukan koordinat sudut suatu objek dari sinyal akselerometer MEMS triaksial sangat bergantung pada keakuratan penentuan koefisien koreksi yang dihitung selama kalibrasi.

Kesalahan pembacaan akselerometer triaksial (TOA) terjadi karena tiga faktor:

adanya offset permanen;

“kebocoran” sinyal dari satu saluran ke saluran lainnya, yang disebabkan oleh non-kolinearitas triplet vektor yang membentuk dua sistem koordinat: terkait dengan platform putar kalibrasi OXYZ dan terkait dengan TOA (3.4);

Suara kedipan sendiri.

Non-kolinearitas sumbu sistem koordinat benda dan sistem koordinat akselerometer

Oleh karena itu, model matematis sinyal dari akselerometer MEMS triaksial akan terlihat seperti ini:

dimana adalah vektor pembacaan akselerometer, merupakan matriks diagonal faktor skala, merupakan matriks koreksi, merupakan proyeksi vektor percepatan gravitasi pada sumbu rangkap tiga kanan vektor-vektor sistem koordinat yang berhubungan dengan akselerometer, adalah vektor perpindahan konstan, adalah vektor kebisingan TOA sendiri.

Tanpa memperhitungkan noise, sistem persamaan (3.6), setelah melakukan operasi perkalian matriks dan vektor, dapat ditulis dalam bentuk:


Dari (3.7) dapat disimpulkan bahwa untuk mencari parameter kalibrasi salah satu sumbu, diperlukan sejumlah pengukuran yang sama dengan jumlah parameter yang tidak diketahui dari sumbu ini: untuk sumbu Z - 2, untuk sumbu Y - 3, untuk sumbu X - 4.

Mengkalibrasi akselerometer MEMS triaksial melibatkan pemasangan sensor pada posisi yang diketahui secara apriori dan menyelesaikan sistem persamaan yang ditentukan secara berlebihan untuk sinyal keluarannya. Saat melakukan prosedur ini, biasanya akselerometer dipasang pada 12 posisi tetap

12 posisi kalibrasi akselerometer MEMS

Terlihat bahwa untuk mengurangi kesalahan estimasi, koefisien kalibrasi yang ditemukan pada jumlah kombinasi harus dirata-ratakan. Namun, untuk mengurangi waktu kalibrasi, hanya enam posisi ortogonal yang dapat digunakan: 2), 4), 6), 7), 8) dan 11); dalam hal ini, pengurangan jumlah kombinasi menyebabkan peningkatan kesalahan pengukuran elemen matriks faktor skala k dan elemen vektor perpindahan b masing-masing tidak lebih dari 0,21% dan 0,02%. Perlu dicatat bahwa kesalahan dalam mengukur elemen matriks koreksi T dapat meningkat hingga ratusan persen, tetapi karena elemen non-diagonal T biasanya tidak melebihi, pada sudut roll dan pitch yang kecil (tidak lebih dari 30°), kesalahannya adalah kesalahan dalam mengukur sudut-sudut ini meningkat tidak lebih dari 0 ,5°.

Sudut Euler menggambarkan perputaran suatu benda dalam ruang Euclidean tiga dimensi. Dalam hal ini, dua sistem koordinat persegi panjang dianggap memiliki pusat yang sama: sistem tetap dan sistem bergerak yang terkait dengan objek. Pada Gambar 1, sistem koordinat tetap diberi nama XYZ (miring), dan sistem bergerak diberi nama xyz. Sudut Euler adalah sudut yang melaluinya sistem koordinat bergerak yang berhubungan dengan suatu benda diputar hingga sejajar dengan bingkai tetap. Dalam versi klasik, rotasi pertama terjadi melalui sudut α di sekitar sumbu z yang berhubungan dengan benda sampai sumbu x yang berhubungan dengan benda berimpit dengan bidang XY sistem tetap. Kebetulan seperti itu akan terjadi di sepanjang garis perpotongan bidang XY dan xy (garis N pada Gambar 1). Rotasi selanjutnya dilakukan dengan sudut β di sekitar posisi baru sumbu x yang berhubungan dengan benda hingga sumbu penerapan kedua sistem persegi panjang sejajar. Dalam hal ini, sumbu y yang berhubungan dengan benda akan berada pada bidang xy dari sistem koordinat XYZ tetap. Rotasi terakhir dilakukan melalui sudut γ di sekitar posisi baru sumbu penerapan sistem koordinat bergerak (akan berimpit dengan sumbu yang sama dari sistem tetap), setelah itu sumbu koordinat XY dan xy akan sejajar.

Beras. 1. Sudut Euler

Rotasi seperti itu bersifat non-komutatif, dan posisi akhir sistem koordinat bergerak bergantung pada urutan rotasi yang dilakukan.

Jika koordinat vektor R(r x , r y , r z) pada sistem koordinat bergerak XYZ diketahui dan sudut Euler (α, β, γ) dari sistem koordinat bergerak xyz relatif terhadap sistem tetap diketahui, maka koordinatnya vektor ini dapat dihitung dalam sistem koordinat tetap xyz. Untuk melakukan ini, buatlah matriks dari tiga rotasi berturut-turut melalui sudut α, β dan γ:

Mengalikan matriks-matriks ini dalam urutan terbalik, kita memperoleh matriks ortogonal akhir:

T= T 3×T 2×T 1,

yang mengubah koordinat vektor R(r x, r y, r z) sistem koordinat bergerak menjadi koordinat vektor N(n x, n y, n z) yang sama panjang pada sistem koordinat tetap:

tidak=R,

dimana N dan R adalah matriks kolom dengan koordinat yang bersesuaian.

Sudut Euler adalah cara paling alami dan mudah dipahami untuk melakukan berbagai operasi rotasi objek karena sesuai dengan rotasi objek yang terlihat di area pandang grafik 3D. Namun, penggunaannya dalam sistem animasi komputer menghadapi sejumlah kesulitan. Pertama-tama, ini adalah kebutuhan untuk memilih urutan rotasi tertentu dari objek relatif terhadap sumbu sistem koordinat. Jika suatu benda diputar terlebih dahulu pada sumbu X, kemudian pada sumbu Y, dan terakhir pada sumbu Z, maka putarannya tidak akan sama seperti jika Anda memutar benda tersebut melalui sudut yang sama, tetapi dalam urutan yang berbeda.

Mari kita pertimbangkan contoh lain - membuat animasi kubus ketika diputar mengelilingi sumbu Z sistem koordinat dunia dengan sudut melebihi 360°, misalnya dengan sudut 450°. Mari kita coba membuat dua bingkai kunci, di antaranya kubus harus diputar sebesar sudut ini. Untuk melakukan ini, buat parallelepiped standar di MaxScript:

B = kotak()

Setelah itu, pindahkan penggeser garis waktu animasi ke bingkai 10, aktifkan mode Tombol Otomatis, lalu jalankan perintah:

B.rotasi.z_putaran = 450

Mainkan animasinya. Benda hanya akan berputar 90° karena putaran 360°nya akan diabaikan. Sekarang lakukan hal yang sama di jendela program 3ds Max. Objek akan dianimasikan di antara dua bingkai utama pada sudut 450°. Dengan demikian, penggunaan rotasi Euler dalam program grafik komputer yang mirip dengan MaxScript dibatasi pada rotasi simultan melalui sudut tidak melebihi 360°. Namun, hal ini tidak menghalangi Anda untuk membuat animasi secara manual di belakang tampilan layar.

Masalah lain pada sudut Euler adalah adanya kunci Gimbal, atau kunci engsel. Penampilannya tergantung pada pilihan urutan rotasi benda. Misalnya, pertama-tama kita putar objek di sekitar sumbu Z dengan sudut 140°, lalu putar di sekitar sumbu X dengan sudut 90°, dan kemudian dengan sudut 130° di sekitar sumbu Y (Gbr. 2).

Beras. 2. Rotasi benda secara berurutan

Jika sekarang kita mengulangi urutan rotasi yang sama, misalnya pada sudut 10° terhadap sumbu Z, kemudian 90° terhadap sumbu X, dan kemudian 0° terhadap sumbu Y, kita akan memperoleh hasil yang sama. Permasalahannya adalah ketika putaran terhadap sumbu X menjadi 90° atau -90°, sumbu putaran lokal Y menjadi sejajar dengan sumbu Z, namun berlawanan arah, sehingga putaran terhadap sumbu tersebut bertentangan dengan putaran sebelumnya terhadap sumbu X. sumbu Z.

Kunci engsel tidak ada untuk matriks dan angka empat. Quaternion memberikan notasi matematika yang mudah untuk posisi dan rotasi objek dalam ruang. Dibandingkan dengan sudut Euler, angka empat mempermudah penggabungan rotasi, dan juga menghindari masalah tidak dapat berputar pada suatu sumbu, terlepas dari rotasi yang dilakukan pada sumbu lainnya. Dibandingkan dengan matriks, matriks memiliki stabilitas komputasi yang lebih baik dan lebih efisien. Quaternion digunakan untuk melakukan rotasi dalam grafik komputer, robotika, mesin permainan, navigasi, dinamika molekuler, dan di mana pun di mana masalah dengan sudut atau matriks Euler muncul.

literatur

  1. Sudut Euler dan kunci Gimbal [Sumber daya elektronik] / http://habrahabr.ru – Habrahabr, 2006. – Mode akses: http://habrahabr.ru/post/183116/. – Tanggal akses: 10/10/2013.
  2. Kuarter dan rotasi ruang [Sumber daya elektronik] / http://ru.wikipedia.org/ - Wikipedia - ensiklopedia gratis, 2001. - Mode akses: http://ru.wikipedia.org/wiki/ Quaternions_and_rotation_of_space. – Tanggal akses: 10/11/2013.

Matriks rotasi digunakan untuk memutar sistem koordinat atau objek, pemandangan.

Matriks rotasi di sekitar sumbu utama.

Matriks rotasi di sekitar sumbu sembarang.

Matriks rotasi umum.

Saya ingin menentukan posisi suatu benda di ruang angkasa dengan jelas. Sangat jelas bahwa setiap posisi ditentukan secara unik oleh 3 rotasi pada sumbu yang berbeda. Namun timbul pertanyaan bagaimana urutan rotasinya dan bagaimana memilih sumbunya?

Matriks rotasi umum dapat ditentukan dengan berbagai cara. Di satu sisi, kita dapat memutar suatu objek di sekitar sumbu tetap. Di sisi lain, di sekitar sumbu yang berhubungan dengan objek disebut juga lokal. Perlu diingat bahwa operasi perkalian matriks tidak bersifat komutatif; oleh karena itu, untuk menentukan posisinya secara unik, Anda tidak hanya perlu mengetahui 3 sudut, tetapi juga skema perkalian matriks.

Ada 2 skema yang populer.
1) Rotasi matriks melalui sudut Euler.
2) Matriks rotasi melalui sudut-sudut pesawat: yaw, pitch and roll.
Karena yang pertama memerlukan banyak perhitungan, dalam praktiknya biasanya digunakan yang kedua.

Matriks rotasi melalui sudut Euler.

Sudut Euler adalah tiga sudut yang secara unik menentukan orientasi benda tegar, menentukan transisi dari sistem koordinat tetap ke sistem bergerak.
Sistem koordinat bergerak adalah sistem koordinat yang melekat pada suatu benda. Terkadang mereka bilang es krim ada di dalam tubuh. Sebelum kita memberikan definisi sudut, kita memerlukan satu hal lagi. Garis simpul ON - garis perpotongan bidang OXY dan Oxy

α (atau φ) adalah sudut antara sumbu Ox dan sumbu ON. Jarak nilai)