Mündəricat:
- Addım 1: Lazım olan avadanlıq:
- Addım 2: Hardware Bağlantısı:
- Addım 3: Sürətləndirmə Ölçmə Kodu:
- Addım 4: Tətbiqlər:
Video: H3LIS331DL və Particle Photon istifadə edərək sürətlənmənin ölçülməsi: 4 addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:44
H3LIS331DL, rəqəmsal I²C seriyalı interfeysi olan "nano" ailəsinə aid olan aşağı güclü yüksək performanslı 3 oxlu xətti sürətləndiricidir. H3LIS331DL, istifadəçi tərəfindən seçilə bilən ± 100g/± 200g/± 400g ölçülü tərzlərə malikdir və 0,5 Hz -dən 1 kHz -ə qədər olan məlumat ötürmə sürətləri ilə sürətlənməni ölçmək qabiliyyətinə malikdir. H3LIS331DL -40 ° C -dən +85 ° C -ə qədər geniş bir temperatur aralığında işləməsinə zəmanət verilir.
Bu təlimatda, H3LIS331DL -nin hissəcik fotonu ilə qarşılıqlı əlaqəsini nümayiş etdirəcəyik.
Addım 1: Lazım olan avadanlıq:
Məqsədimizə çatmaq üçün ehtiyacımız olan materiallar aşağıdakı aparat komponentlərindən ibarətdir:
1. H3LIS331DL
2. Foton hissəcikləri
3. I2C Kabeli
4. Hissəcik fotonu üçün I2C qalxanı
Addım 2: Hardware Bağlantısı:
Avadanlıq bağlama bölməsi əsasən sensor və hissəcik fotonu arasında lazım olan naqillərin əlaqələrini izah edir. İstənilən çıxış üçün hər hansı bir sistem üzərində işləyərkən düzgün əlaqələrin təmin edilməsi əsas zərurətdir. Beləliklə, zəruri əlaqələr aşağıdakılardır:
H3LIS331DL I2C üzərində işləyəcək. Sensorun hər bir interfeysini necə bağlayacağınızı göstərən nümunə naqillər diaqramı.
Qutudan kənarda, lövhə I2C interfeysi üçün konfiqurasiya olunmuşdur, buna görə də başqa cür agnostiksinizsə bu əlaqəni istifadə etməyi məsləhət görürük. Lazım olan tək şey dörd teldir!
Vcc, Gnd, SCL və SDA pinləri üçün yalnız dörd əlaqə lazımdır və bunlar I2C kabelinin köməyi ilə bağlanır.
Bu əlaqələr yuxarıdakı şəkillərdə göstərilmişdir.
Addım 3: Sürətləndirmə Ölçmə Kodu:
İndi hissəcik kodundan başlayaq.
Sensor modulunu arduino ilə işləyərkən application.h və spark_wiring_i2c.h kitabxanasını daxil edirik. "application.h" və spark_wiring_i2c.h kitabxanası, sensor və hissəcik arasındakı i2c əlaqəsini asanlaşdıran funksiyaları ehtiva edir.
İstifadəçinin rahatlığı üçün bütün hissəcik kodu aşağıda verilmişdir:
#daxil edin
#daxil edin
// H3LIS331DL I2C ünvanı 0x18 (24)
#define Addr 0x18
int xAccl = 0, yAccl = 0, zAccl = 0;
boş quraşdırma ()
{
// Dəyişən təyin edin
Particle.variable ("i2cdevice", "H3LIS331DL");
Particle.variable ("xAccl", xAccl);
Particle.variable ("yAccl", yAccl);
Particle.variable ("zAccl", zAccl);
// I2C ünsiyyətini MASTER olaraq başladın
Wire.begin ();
// Serial ünsiyyəti işə salın, baud dərəcəsini = 9600 olaraq təyin edin
Serial.begin (9600);
// I2C ötürülməsinə başlayın
Wire.beginTransmission (Addr);
// Nəzarət reyestrini seçin 1
Wire.write (0x20);
// X, Y, Z oxlarını aktivləşdirin, rejim açılsın, 50Hz məlumat çıxışı olsun
Wire.write (0x27);
// I2C ötürülməsini dayandırın
Wire.endTransmission ();
// I2C ötürülməsinə başlayın
Wire.beginTransmission (Addr);
// Nəzarət reyestrini seçin 4
Wire.write (0x23);
// Tam miqyaslı, +/- 100g, davamlı yeniləmə
Wire.write (0x00);
// I2C ötürülməsini dayandırın
Wire.endTransmission ();
gecikmə (300);
}
boşluq döngəsi ()
{
imzasız int məlumatları [6];
üçün (int i = 0; i <6; i ++)
{
// I2C ötürülməsinə başlayın
Wire.beginTransmission (Addr);
// Məlumat qeydini seçin
Wire.write ((40 + i));
// I2C ötürülməsini dayandırın
Wire.endTransmission ();
// 1 bayt məlumat tələb edin
Wire.requestFrom (Addr, 1);
// 6 bayt məlumat oxuyun
// xAccl lsb, xAccl msb, yAccl lsb, yAccl msb, zAccl lsb, zAccl msb
əgər (Tel.available () == 1)
{
data = Wire.read ();
}
gecikmə (300);
}
// Məlumatları çevirin
int xAccl = ((data [1] * 256) + data [0]);
əgər (xAccl> 32767)
{
xAccl -= 65536;
}
int yAccl = ((data [3] * 256) + data [2]);
əgər (yAccl> 32767)
{
yAccl -= 65536;
}
int zAccl = ((məlumat [5] * 256) + məlumat [4]);
əgər (zAccl> 32767)
{
zAccl -= 65536;
}
// Göstərişlər panelinə məlumat çıxarın
Particle.publish ("X Eksenində Sürətləndirmə:", String (xAccl));
Particle.publish ("Y Eksenində Sürətləndirmə:", String (yAccl));
Particle.publish ("Z Eksenində Sürətləndirmə:", String (zAccl));
gecikmə (300);
}
Particle.variable () funksiyası sensorun çıxışını saxlamaq üçün dəyişənlər yaradır və Particle.publish () funksiyası saytın tablosuna çıxışı göstərir.
Sensor çıxışı istinad üçün yuxarıdakı şəkildə göstərilmişdir.
Addım 4: Tətbiqlər:
H3LIS331DL kimi sürətləndiricilər, əsasən tətbiqini oyunlarda tapır və profil dəyişdirilməsini göstərir. Bu sensor modulu mobil tətbiqlər üçün inkişaf etmiş güc idarəetmə sistemində də istifadə olunur. H3LIS331DL, ağıllı çipdə hərəkətə gətirilən kəsmə nəzarət cihazı ilə birləşdirilmiş üç eksenli rəqəmsal sürətləndirmə sensoru.
Tövsiyə:
ADXL345 və Particle Photon istifadə edərək sürətlənmənin ölçülməsi: 4 addım
ADXL345 və Partikül Fotonundan istifadə edərək Sürətlənmənin Ölçülməsi: ADXL345, kiçik, nazik, ultralow gücə malik, 3 eksenli, yüksək qətnamə (13-bit) ölçmə qabiliyyəti olan ± 16 q-a qədərdir. Rəqəmsal çıxış məlumatları 16 bitlik ikili tamamlayıcı olaraq formatlanır və I2 C rəqəmsal interfeys vasitəsilə əldə edilə bilər. Ölçür
H3LIS331DL və Arduino Nano istifadə edərək sürətlənmənin ölçülməsi: 4 addım
H3LIS331DL və Arduino Nano-dan istifadə edərək sürətlənmənin ölçülməsi: H3LIS331DL, rəqəmsal I²C seriyalı interfeysi olan "nano" ailəsinə aid olan aşağı güclü yüksək performanslı 3 oxlu xətti sürətləndiricidir. H3LIS331DL, istifadəçilər tərəfindən ± 100g/± 200g/± 400g seçilə bilən tam tərəzilərə malikdir və sürətləri ölçmək qabiliyyətinə malikdir
ADXL345 və Raspberry Pi istifadə edərək sürətlənmənin ölçülməsi: 4 addım
ADXL345 və Raspberry Pi istifadə edərək sürətlənmənin ölçülməsi: ADXL345, kiçik, nazik, ultra güclü, ± 16 q-a qədər yüksək qətnamə (13-bit) ölçülü 3 oxlu akselerometrdir. Rəqəmsal çıxış məlumatları 16 bitlik ikili tamamlayıcı olaraq formatlanır və I2 C rəqəmsal interfeys vasitəsilə əldə edilə bilər. Ölçür
H3LIS331DL və Raspberry Pi istifadə edərək sürətlənmənin ölçülməsi: 4 addım
H3LIS331DL və Raspberry Pi: H3LIS331DL istifadə edərək Sürətləndirmənin Ölçülməsi, rəqəmsal I²C seriyalı interfeysi olan "nano" ailəsinə aid olan aşağı güclü yüksək performanslı 3 oxlu xətti sürətləndiricidir. H3LIS331DL, istifadəçilər tərəfindən ± 100g/± 200g/± 400g seçilə bilən tam tərəzilərə malikdir və sürətləri ölçmək qabiliyyətinə malikdir
ADXL345 və Arduino Nano istifadə edərək sürətlənmənin ölçülməsi: 4 addım
ADXL345 və Arduino Nano istifadə edərək sürətlənmənin ölçülməsi: ADXL345, ± 16 q-a qədər yüksək qətnamə (13-bit) ölçüsü olan kiçik, nazik, ultra güclü, 3 oxlu akselerometrdir. Rəqəmsal çıxış məlumatları 16 bitlik ikili tamamlayıcı olaraq formatlanır və I2 C rəqəmsal interfeys vasitəsilə əldə edilə bilər. Ölçür