Mundarija:
- 1 -qadam: BMG160 haqida umumiy ma'lumot:
- 2 -qadam: Sizga nima kerak.. !
- 3 -qadam: Uskuna ulanishi:
- 4-qadam: 3 o'qli giroskopni o'lchash Arduino kodi:
- 5 -qadam: Ilovalar:
Video: BMG160 3 o'qli giroskop sensori Arduino Nano bilan o'zaro bog'lanishi: 5 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:23
Zamonaviy dunyoda yoshlar va bolalarning yarmidan ko'pi o'yinni yaxshi ko'radilar va o'yinni texnik jihatdan qiziqtirganlarning hammasi bu sohada harakatni sezishning ahamiyatini bilishadi. Bizni ham xuddi shu narsa hayratda qoldirdi va uni taxtalarga qo'yish uchun biz har qanday narsaning burchak tezligini o'lchaydigan giroskop sensori ustida ishlashni o'yladik. Shunday qilib, biz vazifani hal qilish uchun sensori - BMG160. BMG160-bu 16 bitli, raqamli, uch fazali, giroskopli sensor, u burchak tezligini xonaning uchta perpendikulyar o'lchovida o'lchashi mumkin.
Ushbu qo'llanmada biz BMG160 ning Arduino Nano bilan ishlashini namoyish qilmoqchimiz.
Buning uchun sizga kerak bo'lgan uskunalar quyidagilar:
1. BMG160
2. Arduino Nano
3. I2C kabeli
4. Arduino Nano uchun I2C qalqoni
1 -qadam: BMG160 haqida umumiy ma'lumot:
Birinchidan, biz sizni BMG160 sensori modulining asosiy xususiyatlari va u ishlaydigan aloqa protokoli bilan tanishtirmoqchimiz.
BMG160-bu asosan 16-bitli, raqamli, uch fazali, giroskopli burchak tezligini o'lchaydigan sensor. U burchak tezligini xona, y va z o'qi bo'yicha uchta perpendikulyar o'lchovda hisoblashi va mos keladigan chiqish signallarini berishi mumkin. U malina pi taxtasi bilan I2C aloqa protokoli yordamida muloqot qilishi mumkin. Ushbu modul iste'molchi talablariga, shuningdek sanoat maqsadlariga javob beradigan tarzda ishlab chiqilgan.
Sensor ishlaydigan aloqa protokoli I2C. I2C o'zaro integratsiyalashgan sxemani anglatadi. Bu aloqa protokoli bo'lib, bunda aloqa SDA (ketma -ket ma'lumotlar) va SCL (ketma -ket soat) liniyalari orqali amalga oshiriladi. Bu bir vaqtning o'zida bir nechta qurilmalarni ulash imkonini beradi. Bu eng oddiy va samarali aloqa protokoli.
2 -qadam: Sizga nima kerak.. !
Maqsadga erishish uchun bizga kerak bo'lgan materiallar quyidagi apparat komponentlarini o'z ichiga oladi:
1. BMG160
2. Arduino Nano
3. I2C kabeli
4. Arduino Nano uchun I2C qalqoni
3 -qadam: Uskuna ulanishi:
Uskuna ulanish bo'limi asosan sensor va Arduino o'rtasida zarur bo'lgan simi ulanishlarini tushuntiradi. To'g'ri ulanishni ta'minlash har qanday tizimda kerakli chiqish uchun ishlashning asosiy zarurati hisoblanadi. Shunday qilib, kerakli ulanishlar quyidagilar:
BMG160 I2C ustida ishlaydi. Sensorning har bir interfeysini qanday ulash kerakligini ko'rsatadigan simlar sxemasi.
Qutidan tashqari, taxta I2C interfeysi uchun tuzilgan, shuning uchun agar siz agnostik bo'lsangiz, biz ushbu ulanishni ishlatishni maslahat beramiz.
Sizga faqat to'rtta sim kerak! Vcc, Gnd, SCL va SDA pinlari uchun faqat to'rtta ulanish kerak va ular I2C kabeli yordamida ulangan.
Bu ulanishlar yuqoridagi rasmlarda ko'rsatilgan.
4-qadam: 3 o'qli giroskopni o'lchash Arduino kodi:
Endi arduino kodidan boshlaylik.
Sensor modulini arduino bilan ishlatganda, biz Wire.h kutubxonasini o'z ichiga olamiz. "Wire" kutubxonasida sensorlar va arduino kartalari o'rtasida i2c aloqasini osonlashtiradigan funktsiyalar mavjud.
Foydalanuvchining qulayligi uchun butun arduino kodi quyida keltirilgan:
#o'z ichiga oladi // BMG160 I2C manzili - 0x68 (104)
#aniqlang Addr 0x68
bo'sh o'rnatish ()
{
// I2C aloqasini MASTER sifatida boshlang
Wire.begin ();
// Serial aloqani ishga tushiring, bod tezligi = 9600
Serial.begin (9600);
// I2C uzatishni boshlang
Wire.beginTransmission (Addr);
// Ro'yxatdan o'tish diapazonini tanlang
Wire.write (0x0F);
// 2000 dps to'liq o'lchovli diapazonni sozlash
Wire.write (0x80);
// I2C uzatishni to'xtating
Wire.endTransmission ();
// I2C uzatishni boshlang
Wire.beginTransmission (Addr);
// Tarmoqli kengligi registrini tanlang
Wire.write (0x10);
// Tarmoqli kengligini = 200 Gts ni o'rnating
Wire.write (0x04);
// I2C uzatishni to'xtating
Wire.endTransmission ();
kechikish (300);
}
bo'sh halqa ()
{
imzosiz int ma'lumotlari [6];
// I2C uzatishni boshlang
Wire.beginTransmission (Addr);
// Gyrometer ma'lumotlar registrini tanlang
Wire.write (0x02);
// I2C uzatishni to'xtating
Wire.endTransmission ();
// 6 bayt ma'lumotni so'rang
Wire.requestFrom (Addr, 6);
// 6 bayt ma'lumotni o'qing
// xGyro lsb, xGyro msb, yGyro lsb, yGyro msb, zGyro lsb, zGyro msb
agar (Wire.available () == 6)
{
ma'lumotlar [0] = Wire.read ();
ma'lumotlar [1] = Wire.read ();
ma'lumotlar [2] = Wire.read ();
ma'lumotlar [3] = Wire.read ();
ma'lumotlar [4] = Wire.read ();
ma'lumotlar [5] = Wire.read ();
}
kechikish (300);
// Ma'lumotni aylantirish
int xGyro = ((ma'lumotlar [1] * 256) + ma'lumotlar [0]);
int yGyro = ((ma'lumotlar [3] * 256) + ma'lumotlar [2]);
int zGyro = ((ma'lumotlar [5] * 256) + ma'lumotlar [4]);
// Ma'lumotlarni ketma -ket monitorga chiqarish
Serial.print ("Aylanish o'qi:");
Serial.println (xGyro); Serial.print ("Y o'qining aylanish o'qi:");
Serial.println (yGyro); Serial.print ("Z-o'qi aylanishi:");
Serial.println (zGyro);
kechikish (500);
}
5 -qadam: Ilovalar:
BMG160 uyali telefonlar, inson mashinalari interfeysi qurilmalari kabi qurilmalarda turli xil ilovalarga ega. Sensor moduli tasvirni barqarorlashtirish (DSC va kamera-telefon), o'yin va ishora qurilmalari kabi iste'molchi ilovalariga qo'yiladigan talablarni qondirish uchun ishlab chiqilgan. Shuningdek, u imo -ishorani aniqlashni talab qiladigan tizimlarda va ichki navigatsiyada ishlatiladigan tizimlarda qo'llaniladi.
Tavsiya:
Tinkercad -dagi Arduino bilan o'zaro bog'liq LCD displey: 5 qadam
Tinkercad -da Arduino bilan interfeysli LCD: Ushbu maqoladagi kod Hitachi HD44780 standart drayverini ishlatadigan LCD -lar uchun yozilgan. Agar sizning LCD displeyingizda 16 ta pin bo'lsa, unda Hitachi HD44780 drayveri bo'lishi mumkin. Ushbu displeylar 4 bitli yoki 8 bitli rejimda ulanishi mumkin. LCD -ni 4 soniyada ulash
Arduino Uno bilan o'zaro bog'lanish GPS moduli: 7 qadam
Arduino Uno bilan o'zaro bog'langan GPS moduli: Salom! GPS modulini Arduino Uno kartasiga ulashni xohlaysizmi, lekin buni qanday qilishni bilmayapsizmi? Men sizga yordam berish uchun keldim! Ishni boshlash uchun sizga quyidagi qismlar kerak bo'ladi
Raspberry Pi bilan BMG160 3 o'qli giroskop sensori o'zaro bog'lanishi: 5 qadam
Raspberry Pi bilan BMG160 3 o'qli giroskop sensori o'zaro bog'lanishi: Zamonaviy dunyoda yoshlar va bolalarning yarmidan ko'pi o'yinni yaxshi ko'radi va o'yinni texnik jihatdan qiziqtirganlarning hammasi harakatni sezishning muhimligini biladi. bu domenda. Bizni ham xuddi shu narsa hayron qoldirdi
BMG160 zarrachali 3 o'qli giroskop sensori bilan o'zaro bog'lanish: 5 qadam
3 o'qli BMG160 zarracha sensori bilan zarracha bilan o'zaro bog'lanish: Zamonaviy dunyoda yoshlar va bolalarning yarmidan ko'pi o'yinni yaxshi ko'radi va o'yinni texnik jihatdan qiziqtirganlarning hammasi harakatni sezishning muhimligini biladi. bu domen. Bizni ham xuddi shu narsa hayron qoldirdi
BMP180 (Barometrik bosim sensori) Arduino bilan o'zaro bog'lanish: 9 qadam
BMP180 (Barometrik bosim sensori) Arduino bilan o'zaro aloqada: BMP-180-i2c interfeysli raqamli Barometrik bosim sensori. Boschning bu kichik sensori kichik o'lchamlari, kam quvvat sarfi va yuqori aniqlik bilan juda qulay. Sensor o'qilishini qanday talqin qilishimizga qarab, biz