תוכן עניינים:
וִידֵאוֹ: מדידת האצה באמצעות BMA250 ו- Arduino Nano: 4 שלבים
2024 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2024-01-30 09:14
BMA250 הוא מד תאוצה קטן, דק, אולטרה-נמוך, בעל 3 צירים עם מדידה ברזולוציה גבוהה (13 סיביות) עד ± 16 גרם. נתוני הפלט הדיגיטליים מעוצבים כהשלמה של 16 סיביות ונגישים באמצעות ממשק דיגיטלי I2C. הוא מודד את האצת הכובד הסטטית ביישומי חישת הטיה, כמו גם האצה דינמית הנובעת מתנועה או הלם. הרזולוציה הגבוהה שלה (3.9 מ ג/LSB) מאפשרת מדידה של שינויי הנטייה הנמוכים מ -1.0 °.
במדריך זה אנו הולכים למדוד את ההאצה בכל שלושת הצירים הניצבים באמצעות BMA250 ו- Arduino Nano.
שלב 1: חומרה נדרשת:
החומרים הדרושים לנו להגשמת מטרתנו כוללים את רכיבי החומרה הבאים:
1. BMA250
2. ארדואינו ננו
3. כבל I2C
4. מגן I2C עבור Arduino Nano
שלב 2: חיבור חומרה:
סעיף חיבור החומרה בעצם מסביר את חיבורי החיווט הנדרשים בין החיישן לארדואינו. הבטחת חיבורים נכונים היא ההכרח הבסיסי בעת עבודה על כל מערכת לתפוקה הרצויה. אז, החיבורים הנדרשים הם כדלקמן:
ה- BMA250 יעבוד על I2C. להלן תרשים החיווט לדוגמה, המדגים כיצד לחבר כל ממשק של החיישן.
הלוח מחוץ לקופסה מוגדר לממשק I2C, ולכן אנו ממליצים להשתמש בחיבור זה אם אתה אגנוסטי אחרת. כל מה שאתה צריך זה ארבעה חוטים!
רק ארבעה חיבורים נדרשים סיכות Vcc, Gnd, SCL ו- SDA ואלו מחוברים בעזרת כבל I2C.
קשרים אלה מודגמים בתמונות למעלה.
שלב 3: קוד ארדואינו למדידת האצה:
נתחיל עם הקוד של Arduino עכשיו.
בעת השימוש במודול החיישנים עם Arduino, אנו כוללים את ספריית Wire.h. ספריית "Wire" מכילה את הפונקציות המאפשרות תקשורת i2c בין החיישן ללוח ה- Arduino.
קוד Arduino כולו ניתן להלן לנוחות המשתמש:
#לִכלוֹל
// כתובת BMA250 I2C היא 0x18 (24)
#define Addr 0x18
הגדרת חלל ()
{
// אתחל תקשורת I2C כ- MASTER
Wire.begin ();
// אתחל תקשורת סדרתית, הגדר קצב שידור = 9600
Serial.begin (9600);
// התחל את שידור I2C
Wire.beginTransmission (Addr);
// בחר את רשימת בחירת הטווח
Wire.write (0x0F);
// הגדר טווח +/- 2 גרם
Wire.write (0x03);
// עצור את שידור I2C
Wire.endTransmission ();
// התחל את שידור I2C
Wire.beginTransmission (Addr);
// בחר מרשם רוחב פס
Wire.write (0x10);
// הגדר רוחב פס 7.81 הרץ
Wire.write (0x08);
// עצור את שידור I2C
Wire.endTransmission (); עיכוב (300);}
לולאת חלל ()
{
נתוני int ללא חתום [0];
// התחל את שידור I2C
Wire.beginTransmission (Addr);
// בחר רישומי נתונים (0x02 - 0x07)
Wire.write (0x02);
// עצור את שידור I2C
Wire.endTransmission ();
// בקש 6 בתים
Wire.requestFrom (Addr, 6);
// קרא את ששת הבייטים
// xAccl lsb, xAccl msb, yAccl lsb, yAccl msb, zAccl lsb, zAccl msb
אם (Wire.available () == 6)
{
data [0] = Wire.read ();
data [1] = Wire.read ();
data [2] = Wire.read ();
data [3] = Wire.read ();
data [4] = Wire.read ();
data [5] = Wire.read ();
}
עיכוב (300);
// המר את הנתונים ל -10 סיביות
float xAccl = ((data [1] * 256.0) + (data [0] & 0xC0)) / 64;
אם (xAccl> 511)
{
xAccl -= 1024;
}
float yAccl = ((נתונים [3] * 256.0) + (נתונים [2] & 0xC0)) / 64;
אם (yAccl> 511)
{
yAccl -= 1024;
}
float zAccl = ((נתונים [5] * 256.0) + (נתונים [4] & 0xC0)) / 64;
אם (zAccl> 511)
{
zAccl -= 1024;
}
// נתוני פלט למסך הטורי
Serial.print ("האצה בציר X:");
Serial.println (xAccl);
Serial.print ("האצה בציר Y:");
Serial.println (yAccl);
Serial.print ("האצה בציר Z:");
Serial.println (zAccl);
}
בספריית תיל Wire.write () ו- Wire.read () משמשים לכתיבת הפקודות וקריאת פלט החיישן. Serial.print () ו- Serial.println () משמשים להצגת פלט החיישן על הצג הטורי של ה- Arduino IDE.
פלט החיישן מוצג בתמונה למעלה.
שלב 4: יישומים:
מדי תאוצה כמו BMA250 מוצאים בעיקר את היישום שלה במשחקים ומחליפים פרופיל תצוגה. מודול חיישן זה מועסק גם במערכת ניהול החשמל המתקדמת ליישומים ניידים. BMA250 הוא חיישן האצה דיגיטלי טריאקסיאלי המשולב עם בקר מפסק תנועה מופעל על שבב.
מוּמלָץ:
מדידת האצה באמצעות ADXL345 ופוטון חלקיקים: 4 שלבים
מדידת האצה באמצעות ADXL345 ופוטון חלקיקים: ה- ADXL345 הוא מד תאוצה קטן ודק במיוחד בעל 3 צירים עם מדידה ברזולוציה גבוהה (13 סיביות) עד ± 16 גרם. נתוני הפלט הדיגיטליים מעוצבים כהשלמה של 16 סיביות ונגישים באמצעות ממשק דיגיטלי I2 C. הוא מודד את
מדידת האצה באמצעות H3LIS331DL ופוטון חלקיקים: 4 שלבים
מדידת האצה באמצעות H3LIS331DL ופוטון חלקיקים: H3LIS331DL, הוא מד תאוצה לינארי בעל 3 צירים בעל ביצועים נמוכים, השייך למשפחת ה"ננו ", עם ממשק סידורי I²C דיגיטלי. ל- H3LIS331DL יש סולמות מלאות לבחירה של ± 100g/± 200g/± 400g והוא מסוגל למדוד תאוצות עם
מדידת האצה באמצעות ADXL345 ו- Raspberry Pi: 4 שלבים
מדידת האצה באמצעות ADXL345 ו- Raspberry Pi: ה- ADXL345 הוא מד תאוצה קטן ודק במיוחד בעל 3 צירים עם מדידה ברזולוציה גבוהה (13 סיביות) עד ± 16 גרם. נתוני הפלט הדיגיטליים מעוצבים כהשלמה של 16 סיביות ונגישים באמצעות ממשק דיגיטלי I2 C. הוא מודד את
מדידת האצה באמצעות BMA250 ו- Raspberry Pi: 4 שלבים
מדידת האצה באמצעות BMA250 ו- Raspberry Pi: BMA250 הוא מד תאוצה קטן ודק במיוחד בעל 3 צירים עם מדידה ברזולוציה גבוהה (13 סיביות) עד ± 16 גרם. נתוני הפלט הדיגיטליים מעוצבים כהשלמה של 16 סיביות ונגישים באמצעות ממשק דיגיטלי I2C. הוא מודד את הסטטי
מדידת האצה באמצעות BMA250 ופוטון חלקיקים: 4 שלבים
מדידת האצה באמצעות BMA250 ופוטון חלקיקים: BMA250 הוא מד תאוצה קטן ודק במיוחד בעל 3 צירים עם מדידה ברזולוציה גבוהה (13 סיביות) עד ± 16 גרם. נתוני הפלט הדיגיטליים מעוצבים כהשלמה של 16 סיביות ונגישים באמצעות ממשק דיגיטלי I2C. הוא מודד את הסטטי