תוכן עניינים:
- שלב 1: חומרה נדרשת:
- שלב 2: חיבור חומרה:
- שלב 3: קוד Arduino למדידת עוצמת השדה המגנטי:
- שלב 4: יישומים:
וִידֵאוֹ: מדידת שדה מגנטי באמצעות HMC5883 ו- Arduino Nano: 4 שלבים
2024 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2024-01-30 09:12
HMC5883 הוא מצפן דיגיטלי המיועד לחישה מגנטית בשדה נמוך. למכשיר זה טווח שדות מגנטי רחב של +/- 8 Oe וקצב פלט של 160 הרץ. חיישן HMC5883 כולל נהגים אוטומטיים של רצועות הפחתה, ביטול קיזוז ו- ADC של 12 סיביות המאפשר דיוק כיוון מצפן של 1 עד 2 מעלות. כל מודולי המיני I²C מיועדים להפעלה ב 5VDC.
במדריך זה אנו הולכים להסביר את העבודה המפורטת של HMC5883 עם ננו Arduino.
שלב 1: חומרה נדרשת:
החומרים הדרושים לנו להגשמת מטרתנו כוללים את רכיבי החומרה הבאים:
1. HMC5883
2. ארדואינו ננו
3. כבל I2C
4. מגן I2C עבור Arduino Nano
שלב 2: חיבור חומרה:
קטע חיבור החומרה בעצם מסביר את חיבורי החיווט הנדרשים בין החיישן לננו הארדואינו. הבטחת חיבורים נכונים היא ההכרח הבסיסי בעת עבודה על כל מערכת לתפוקה הרצויה. אז, החיבורים הנדרשים הם כדלקמן:
HMC5883 יעבוד על I2C. להלן תרשים החיווט לדוגמה, המדגים כיצד לחבר כל ממשק של החיישן.
הלוח מחוץ לקופסה מוגדר לממשק I2C, ולכן אנו ממליצים להשתמש בחיבור זה אם אתה אגנוסטי אחרת. כל מה שאתה צריך זה ארבעה חוטים!
רק ארבעה חיבורים נדרשים סיכות Vcc, Gnd, SCL ו- SDA ואלו מחוברים בעזרת כבל I2C.
קשרים אלה מודגמים בתמונות למעלה.
שלב 3: קוד Arduino למדידת עוצמת השדה המגנטי:
נתחיל עם קוד הארדואינו עכשיו.
בעת השימוש במודול החיישנים עם Arduino, אנו כוללים את ספריית Wire.h. ספריית "Wire" מכילה את הפונקציות המאפשרות תקשורת i2c בין החיישן ללוח ה- Arduino.
קוד Arduino כולו ניתן להלן לנוחות המשתמש:
#לִכלוֹל
// כתובת HMC5883 I2C היא 0x1E (30)
#define Addr 0x1E
הגדרת חלל ()
{
// אתחל תקשורת I2C כ- MASTER
Wire.begin ();
// אתחל תקשורת סדרתית, הגדר קצב שידור = 9600
Serial.begin (9600);
// התחל את שידור I2C
Wire.beginTransmission (Addr);
// בחר הגדרת רשם A
Wire.write (0x00);
// הגדר תצורת מדידה רגילה, קצב פלט הנתונים = 0.75Hz
Wire.write (0x60);
// עצור את שידור I2C
Wire.endTransmission ();
// התחל את שידור I2C
Wire.beginTransmission (Addr);
// בחר מצב רשום
Wire.write (0x02);
// הגדר מדידה רציפה
Wire.write (0x00);
// עצור את שידור I2C
Wire.endTransmission ();
עיכוב (300);
}
לולאת חלל ()
{
נתוני int ללא חתום [6];
// התחל את שידור I2C
Wire.beginTransmission (Addr);
// בחר רישום נתונים
Wire.write (0x03);
// עצור את שידור I2C
Wire.endTransmission ();
// בקש 6 בתים של נתונים
Wire.requestFrom (Addr, 6);
// קרא 6 בתים של נתונים
// xMag msb, xMag lsb, zMag msb, zMag lsb, yMag msb, yMag lsb
אם (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);
// המר את הנתונים
int xMag = ((נתונים [0] * 256) + נתונים [1]);
int zMag = ((נתונים [2] * 256) + נתונים [3]);
int yMag = ((נתונים [4] * 256) + נתונים [5]);
// נתוני פלט לצג הסדרתי
Serial.print ("שדה מגנטי בציר X:");
Serial.println (xMag);
Serial.print ("שדה מגנטי בציר Y:");
Serial.println (yMag);
Serial.print ("שדה מגנטי בציר Z:");
Serial.println (zMag);
עיכוב (300);
}
בספריית תיל Wire.write () ו- Wire.read () משמשים לכתיבת הפקודות וקריאת פלט החיישן. החלק הבא של הקוד ממחיש את קריאת פלט החיישן.
// קרא 6 בתים של נתונים // xMag msb, xMag lsb, zMag msb, zMag lsb, yMag msb, yMag lsb if (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 (); }
Serial.print () ו- Serial.println () משמשים להצגת פלט החיישן על הצג הטורי של ה- Arduino IDE.
פלט החיישן מוצג בתמונה למעלה.
שלב 4: יישומים:
HMC5883 הוא מודול רב-שבב בעל הרכבה על פני השטח המיועד לחישה מגנטית בשדה נמוך עם ממשק דיגיטלי ליישומים כגון חישוב נמוך ומגנומטומטריה. רמת הדיוק והדיוק ברמה גבוהה עד שתיים מאפשרת ניווט להולכי רגל ויישומי LBS.
מוּמלָץ:
מדידת זמן (שעון מדידת סרט): 5 שלבים (עם תמונות)
מדידת זמן (שעון מדידת סרט): לפרויקט זה לקחנו (אלכס פיל ואנה לינטון) כלי מדידה יומיומי והפכנו אותו לשעון! התוכנית המקורית הייתה להניע סרט מדידה קיים. בכך, החלטנו שיהיה קל יותר ליצור מעטפת משלנו לשימוש
מדידת שדה מגנטי באמצעות HMC5883 ו- Raspberry Pi: 4 שלבים
מדידת שדה מגנטי באמצעות HMC5883 ו- Raspberry Pi: HMC5883 הוא מצפן דיגיטלי המיועד לחישה מגנטית בשדה נמוך. למכשיר זה טווח שדות מגנטי רחב של +/- 8 Oe וקצב פלט של 160 הרץ. חיישן HMC5883 כולל נהגים אוטומטיים של רצועות הפחתה, ביטול קיזוז ו
מדידת שדה מגנטי באמצעות HMC5883 ופוטון חלקיקים: 4 שלבים
מדידת שדה מגנטי באמצעות HMC5883 ופוטון חלקיקים: HMC5883 הוא מצפן דיגיטלי המיועד לחישה מגנטית בשדה נמוך. למכשיר זה טווח שדות מגנטי רחב של +/- 8 Oe וקצב פלט של 160 הרץ. חיישן HMC5883 כולל נהגים אוטומטיים של רצועות הפחתה, ביטול קיזוז ו
הדרכה: כיצד לבצע אזעקה לדלת באמצעות אזעקת חיישן מתג מגנטי MC-18: 3 שלבים
הדרכה: כיצד לבצע אזעקה לדלת באמצעות אזעקת חיישן מתג מגנטי MC-18: היי חבר'ה, אני הולך להכין הדרכה על אזעקת חיישן מתג מגנטי MC-18 הפועלת במצב סגור בדרך כלל. אך ראשית, הרשו לי להסביר לכם בקיצור מה זאת אומרת בדרך כלל קרוב. ישנם שני סוגים של מצב, בדרך כלל פתוח ובדרך כלל סגור
חיישן שדה מגנטי בעל 3 צירים: 10 שלבים (עם תמונות)
חיישן שדה מגנטי בעל 3 צירים: מערכות העברת חשמל אלחוטיות נמצאות בדרך להחלפת טעינה קווית רגילה. החל משתלים ביו -רפואיים זעירים עד הטענה אלחוטית של כלי רכב חשמליים ענקיים. חלק בלתי נפרד מהמחקר בנושא חשמל אלחוטי הוא