תוכן עניינים:
- שלב 1: סקירה כללית של BMG160:
- שלב 2: מה שאתה צריך..
- שלב 3: חיבור חומרה:
- שלב 4: קוד חלקיקי מדידת גירוסקופ 3 צירים:
- שלב 5: יישומים:
וִידֵאוֹ: ממשק של חיישן ג'ירוסקופ 3 צירים BMG160 עם חלקיק: 5 שלבים
2024 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2024-01-30 09:14
בעולם של היום יותר ממחצית מבני הנוער והילדים אוהבים משחק וכל מי שאוהב את זה, מוקסם מההיבטים הטכניים של המשחק, יודע את החשיבות של חישת תנועה בתחום זה. היינו נדהמים מאותו דבר ורק כדי להביא אותו על הלוחות, חשבנו לעבוד על חיישן ג'ירוסקופ שיכול למדוד את קצב הזווית של כל אובייקט. אז, החיישן שלקחנו כדי להתמודד עם המשימה הוא BMG160. BMG160 הוא חיישן ג'ירוסקופ, דיגיטלי, טריאקסיאלי, בעל 16 סיביות שיכול למדוד את קצב הזווית בשלוש ממדי חדר בניצב.
במדריך זה אנו הולכים להדגים את פעולתו של BMG160 עם פוטון חלקיקים.
חומרה שתזדקק לה למטרה זו היא כדלקמן:
1. BMG160
2. פוטון חלקיקים
3. כבל I2C
4. מגן I2C לפוטון חלקיקים
שלב 1: סקירה כללית של BMG160:
קודם כל ברצוננו להכיר לך את התכונות הבסיסיות של מודול החיישנים שהוא BMG160 ואת פרוטוקול התקשורת שעליו הוא פועל.
BMG160 הוא בעצם חיישן ג'ירוסקופ, 16 סיביות, דיגיטאלי, טריאקסיאלי, שיכול למדוד קצבי זווית. הוא מסוגל לחשב קצבי זווית בשלושה ממדי חדר בניצב, ציר x-, y- ו- z, ולספק את אותות הפלט המתאימים. הוא יכול לתקשר עם לוח הפטל פטל באמצעות פרוטוקול התקשורת I2C. מודול ספציפי זה מיועד לענות על דרישות ליישומי צריכה וכן למטרות תעשייתיות.
פרוטוקול התקשורת שעליו החיישן עובד הוא I2C. I2C מייצג את המעגל הבין-משולב. זהו פרוטוקול תקשורת שבו התקשורת מתבצעת באמצעות קווי SDA (נתונים סדרתיים) ו- SCL (שעון טורי). הוא מאפשר חיבור של מספר מכשירים בו זמנית. זהו אחד מפרוטוקול התקשורת הפשוט והיעיל ביותר.
שלב 2: מה שאתה צריך..
החומרים הדרושים לנו להגשמת מטרתנו כוללים את רכיבי החומרה הבאים:
1. BMG160
2. פוטון חלקיקים
3. כבל I2C
4. מגן I2C לפוטון חלקיקים
שלב 3: חיבור חומרה:
סעיף חיבור החומרה מסביר בעצם את חיבורי החיווט הנדרשים בין החיישן לחלקיק. הבטחת חיבורים נכונים היא ההכרח הבסיסי בעת עבודה על כל מערכת לתפוקה הרצויה. אז, החיבורים הנדרשים הם כדלקמן:
ה- BMG160 יעבוד על I2C. להלן תרשים החיווט לדוגמה, המדגים כיצד לחבר כל ממשק של החיישן.
הלוח מחוץ לקופסה מוגדר לממשק I2C, ולכן אנו ממליצים להשתמש בחיבור זה אם אתה אגנוסטי אחרת.
כל מה שאתה צריך זה ארבעה חוטים! רק ארבעה חיבורים נדרשים סיכות Vcc, Gnd, SCL ו- SDA ואלו מחוברים בעזרת כבל I2C.
קשרים אלה מודגמים בתמונות למעלה.
שלב 4: קוד חלקיקי מדידת גירוסקופ 3 צירים:
נתחיל עם קוד החלקיקים עכשיו.
בעת השימוש במודול החיישנים עם הארדואינו, אנו כוללים את ספריית application.h ו- spark_wiring_i2c.h. הספרייה "application.h" ו- spark_wiring_i2c.h מכילה את הפונקציות המאפשרות תקשורת i2c בין החיישן לחלקיק.
קוד החלקיקים כולו ניתן להלן לנוחות המשתמש:
#לִכלוֹל
#לִכלוֹל
// כתובת BMG160 I2C היא 0x68 (104)
#define Addr 0x68
int xGyro = 0, yGyro = 0, zGyro = 0;
הגדרת חלל ()
{
// הגדר משתנה
Particle.variable ("i2cdevice", "BMG160");
Particle.variable ("xGyro", xGyro);
Particle.variable ("yGyro", yGyro);
Particle.variable ("zGyro", zGyro);
// אתחל תקשורת I2C כ- MASTER
Wire.begin ();
// אתחל תקשורת סדרתית
Serial.begin (9600);
// התחל את שידור I2C
Wire.beginTransmission (Addr);
// בחר רישום טווח
Wire.write (0x0F);
// הגדר קנה מידה מלא של 2000 dps
Wire.write (0x80);
// עצור את שידור I2C
Wire.endTransmission ();
// התחל את שידור I2C
Wire.beginTransmission (Addr);
// בחר מרשם רוחב פס
Wire.write (0x10);
// הגדר רוחב פס = 200 הרץ
Wire.write (0x04);
// עצור את שידור I2C
Wire.endTransmission ();
עיכוב (300);
}
לולאת חלל ()
{
נתוני int ללא חתום [6];
// התחל את שידור I2C
Wire.beginTransmission (Addr);
// בחר רישום נתונים
Wire.write (0x02);
// עצור את שידור I2C
Wire.endTransmission ();
// בקש 6 בתים של נתונים
Wire.requestFrom (Addr, 6);
// קרא 6 בתים של נתונים
// xGyro lsb, xGyro msb, yGyro lsb, yGyro msb, zGyro lsb, zGyro 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);
// המר את הנתונים
xGyro = ((נתונים [1] * 256) + נתונים [0]);
אם (xGyro> 32767)
{
xGyro -= 65536;
}
yGyro = ((נתונים [3] * 256) + נתונים [2]);
אם (yGyro> 32767)
{
yGyro -= 65536;
}
zGyro = ((נתונים [5] * 256) + נתונים [4]);
אם (zGyro> 32767)
{
zGyro -= 65536;
}
// נתוני פלט ללוח המחוונים
פרסומת Particle.publish ("ציר X של סיבוב:", מחרוזת (xGyro));
פרסומת Particle.publish ("ציר סיבוב Y:", מחרוזת (yGyro));
הוצאה לאור Particle.publish ("ציר Z של סיבוב:", מחרוזת (zGyro));
עיכוב (1000);
}
שלב 5: יישומים:
ל- BMG160 יש מספר יישומים מגוונים במכשירים כמו טלפונים סלולריים, התקני ממשק מכונה אנושית. מודול חיישן זה תוכנן לעמוד בדרישות ליישומי צרכן כגון ייצוב תמונה (DSC ומצלמת טלפון), משחקים והתקני הצבעה. הוא משמש גם במערכות הדורשות זיהוי מחוות ובמערכות המשמשות בניווט פנימי.
מוּמלָץ:
תחילת העבודה עם ממשק חיישן I2C ?? - ממשק MMA8451 שלך באמצעות ESP32s: 8 שלבים
תחילת העבודה עם ממשק חיישן I2C ?? - ממשק ה- MMA8451 שלך באמצעות ESP32s: במדריך זה, תלמד הכל על איך להתחיל, להתחבר ולהשיג מכשיר I2C (מאיץ) שעובד עם בקר (Arduino, ESP32, ESP8266, ESP12 NodeMCU)
ממשק של חיישן ג'ירוסקופ 3 צירים BMG160 עם Arduino Nano: 5 שלבים
ממשק חיישן גירוסקופ 3-צירים BMG160 עם Arduino Nano: בעולם של היום יותר ממחצית מהנוער והילדים אוהבים משחק וכל מי שאוהב את זה, מוקסם מההיבטים הטכניים של המשחק, יודע את החשיבות של חישת תנועה. בתחום זה. גם אנחנו הופתענו מאותו דבר
חלקיק פוטון - TCN75A חיישן טמפרטורה הדרכה: 4 שלבים
פוטון חלקיקים-חיישן טמפרטורה TCN75A מדריך: TCN75A הוא חיישן טמפרטורה סדרתי דו חוטי המשולב עם ממיר טמפרטורה לדיגיטל. הוא משולב עם רישומים הניתנים לתכנות למשתמשים המספקים גמישות ליישומים לחישת טמפרטורה. הגדרות הרישום מאפשרות למשתמשים
ממשק של חיישן ג'ירוסקופ 3-צירים BMG160 עם פטל פטל: 5 שלבים
ממשק חיישן ג'ירוסקופ 3-צירים BMG160 עם פטל פאי: בעולם של היום יותר ממחצית מבני הנוער והילדים אוהבים משחק וכל מי שאוהב את זה, מוקסם מההיבטים הטכניים של המשחק, יודע את החשיבות של חישת תנועה. בתחום זה. גם אנחנו הופתענו מאותו דבר
מודול GY-521 MPU6050 האצת 3 צירים ג'ירוסקופ 6DOF: 4 שלבים
מדריך מודול GY-521 MPU6050 3-Axis Gyroscope 6DOF: תיאור מודול פשוט זה מכיל את כל הנדרש כדי להתממשק ל- Arduino ולבקרים אחרים באמצעות I2C (השתמש בספריית Wire Arduino) ולתת מידע לחישת תנועה עבור 3 צירים-X, Y ו- Z .מפרט טווחי מד תאוצה: ± 2, ±