Atalet Ölçüm Birimi (IMU), hareket, yönelim ve yerçekimi kuvvetlerini ölçen ve raporlayan bir sensör cihazıdır. IMU’lar, robotik, drone stabilizasyonu, hareket algılama, yönelim takibi ve navigasyon sistemleri gibi uygulamalar için vazgeçilmez olmalarını sağlayan kapsamlı hareket takibi yetenekleri sunmak için birden fazla sensörü birleştirir. Modern IMU’lar tipik olarak, eksiksiz bir 9 eksenli hareket takibi çözümü oluşturmak için 3 eksenli ivmeölçer (doğrusal ivmeyi ölçen), 3 eksenli jiroskop (açısal hızı ölçen) ve genellikle 3 eksenli manyetometre (manyetik alanı ölçen) entegre eder.Documentation Index
Fetch the complete documentation index at: https://docs.t3gemstone.org/llms.txt
Use this file to discover all available pages before exploring further.
1. ICM-20948 IMU
Kartınız, yüksek performanslı 9 eksenli hareket takibi cihazı InvenSense ICM-20948 ile donatılmıştır. Sensör, tek bir pakette 3 eksenli jiroskop, 3 eksenli ivmeölçer ve 3 eksenli manyetometre barındırır.1.1. Temel Özellikler
- Programlanabilir tam ölçek aralıklarına sahip 3 Eksenli Jiroskop: ±250, ±500, ±1000, ±2000 DPS
- Programlanabilir tam ölçek aralıklarına sahip 3 Eksenli İvmeölçer: ±2g, ±4g, ±8g, ±16g
- Pusula işlevselliği için 3 Eksenli Manyetometre (AK09916)
- Sıcaklık kompanzasyonu için dijital çıkışlı sıcaklık sensörü
- Hareket algılama ve veri hazır sinyalleri için kullanıcı tarafından programlanabilir kesintiler
- Pil ile çalışan uygulamalar için düşük güç modları
- Gürültü azaltma için Dijital Alçak Geçiren Filtre (DLPF)
1.2. Donanım Bağlantısı
Kartınızdaki ICM-20948,/dev/spidev0.3 adresinde SPI arabirimi üzerinden bağlanmıştır.
2. Örnek Uygulama
t3gemstone/examples reposunda yer alanimu projesi, IMU sensörü ile
etkileşim kurmak için eksiksiz bir C kütüphanesi ve test uygulaması sağlar. Kütüphane, tüm düşük seviyeli iletişimi
yönetir ve sensör verilerini okumak için bir API sağlar.
2.1. Test Uygulaması
Test uygulaması aşağıdaki adımları gerçekleştirir:- İlklendirme -
/dev/spidev0.3adresindeki SPI cihazını açar ve sensörü başlatır - Yapılandırma - İvmeölçeri ±8g ve jiroskopu ±2000 DPS aralığına ayarlar
- Bilgilendirme - Başlangıçta yapılandırma değerlerini ve sıcaklığı yazdırır
- Sürekli izleme - Her 10ms’de ivmeölçer ve jiroskop verilerini okur ve hesaplanan açıları yazdırır
- Açı hesaplama - Yönelim açılarını hesaplamak için Kalman filtrelemesi uygular
- Otomatik kurtarma - Sensör bağlantısını izler ve gerekirse yeniden yapılandırır
2.2. API Referansı
icm20948 kütüphanesi şunları sağlar:
- Hem I2C hem de SPI arabirimleri için veri yolu başlatma
- Özelleştirilebilir tam ölçek aralıklarıyla sensör yapılandırması
- İvmeölçer, jiroskop ve sıcaklık için ham veri okuma
- Düzgün yönelim takibi için Kalman filtrelemesi kullanarak açı hesaplama
- Çevrimiçi durum kontrolü ve yeniden yapılandırma ile otomatik kurtarma
- Yapılandırılmış bir veri arabirimi aracılığıyla esnek veri erişimi
2.2.1. İlklendirme
2.2.2. Veri Okuma
2.2.3. Yapılandırma
2.2.4. Yardımcı Araçlar
2.2.5. Veri Yapısı
Sensör verilerineicm20948_data_t yapısı aracılığıyla erişilir:

