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:

