תוכן עניינים:
וִידֵאוֹ: מדידת שדה מגנטי באמצעות HMC5883 ופוטון חלקיקים: 4 שלבים
2024 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2024-01-30 09:12
HMC5883 הוא מצפן דיגיטלי המיועד לחישה מגנטית בשדה נמוך. למכשיר זה טווח שדות מגנטי רחב של +/- 8 Oe וקצב פלט של 160 הרץ. חיישן HMC5883 כולל נהגים אוטומטיים של רצועות הפחתה, ביטול קיזוז ו- ADC של 12 סיביות המאפשר דיוק כיוון מצפן של 1 עד 2 מעלות. כל מודולי המיני I²C מיועדים להפעלה ב 5VDC.
במדריך זה אנו הולכים להסביר את העבודה המפורטת של HMC5883 עם פוטון חלקיקים. פוטון החלקיקים הוא לוח המאפשר שליחה וקבלה של נתונים מהאתר, התומך בתכונה הבסיסית ביותר של Internet Of Things (IoT).
שלב 1: חומרה נדרשת:
החומרים הדרושים לנו להגשמת מטרתנו כוללים את רכיבי החומרה הבאים:
1. HMC5883
2. פוטון חלקיקים
3. כבל I2C
4. מגן I2C לפוטון חלקיקים
שלב 2: חיבור חומרה:
סעיף חיבור החומרה מסביר בעצם את חיבורי החיווט הנדרשים בין החיישן לפוטון החלקיקים. הבטחת חיבורים נכונים היא ההכרח הבסיסי בעת עבודה על כל מערכת לתפוקה הרצויה. אז, החיבורים הנדרשים הם כדלקמן:
HMC5883 יעבוד על I2C. להלן תרשים החיווט לדוגמה, המדגים כיצד לחבר כל ממשק של החיישן.
הלוח מחוץ לקופסה מוגדר לממשק I2C, ולכן אנו ממליצים להשתמש בחיבור זה אם אתה אגנוסטי אחרת. כל מה שאתה צריך זה ארבעה חוטים!
רק ארבעה חיבורים נדרשים סיכות Vcc, Gnd, SCL ו- SDA ואלו מחוברים בעזרת כבל I2C.
קשרים אלה מודגמים בתמונות למעלה.
שלב 3: קוד למדידת עוצמת השדה המגנטי:
נתחיל עם קוד החלקיקים עכשיו.
בעת השימוש במודול החיישנים עם Arduino, אנו כוללים את ספריית application.h ו- spark_wiring_i2c.h. הספרייה "application.h" ו- spark_wiring_i2c.h מכילה את הפונקציות המאפשרות תקשורת i2c בין החיישן לחלקיק.
קוד החלקיקים כולו ניתן להלן לנוחות המשתמש:
#לִכלוֹל
#לִכלוֹל
// כתובת HMC5883 I2C היא 0x1E (30)
#define Addr 0x1E
int xMag = 0, yMag = 0, zMag = 0;
הגדרת חלל ()
{
// הגדר משתנה
Particle.variable ("i2cdevice", "HMC5883");
Particle.variable ("xMag", xMag);
Particle.variable ("yMag", yMag);
Particle.variable ("zMag", zMag);
// אתחל תקשורת 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);
// המר את הנתונים
xMag = ((נתונים [0] * 256) + נתונים [1]);
אם (xMag> 32767)
{
xMag -= 65536;
}
zMag = ((נתונים [2] * 256) + נתונים [3]);
אם (zMag> 32767)
{
zMag -= 65536;
}
yMag = ((נתונים [4] * 256) + נתונים [5]);
אם (yMag> 32767)
{
yMag -= 65536;
}
// נתוני פלט ללוח המחוונים
פרסומת Particle.publish ("שדה מגנטי בציר X:", מחרוזת (xMag));
עיכוב (1000);
פרסום Particle.publish ("שדה מגנטי בציר Y:", מחרוזת (yMag));
עיכוב (1000);
פרסומת Particle.publish ("שדה מגנטי בציר Z:", מחרוזת (zMag));
עיכוב (1000);
}
הפונקציה Particle.variable () יוצרת את המשתנים לאחסון הפלט של החיישן והפונקציה Particle.publish () מציגה את הפלט בלוח המחוונים של האתר.
פלט החיישן מוצג בתמונה למעלה לעיונך.
שלב 4: יישומים:
HMC5883 הוא מודול רב-שבב בעל הרכבה על פני השטח המיועד לחישה מגנטית בשדה נמוך עם ממשק דיגיטלי ליישומים כגון חישוב נמוך ומגנומטומטריה. רמת הדיוק והדיוק ברמה גבוהה עד שתיים מאפשרת ניווט להולכי רגל ויישומי LBS.
מוּמלָץ:
מדידת האצה באמצעות ADXL345 ופוטון חלקיקים: 4 שלבים
מדידת האצה באמצעות ADXL345 ופוטון חלקיקים: ה- ADXL345 הוא מד תאוצה קטן ודק במיוחד בעל 3 צירים עם מדידה ברזולוציה גבוהה (13 סיביות) עד ± 16 גרם. נתוני הפלט הדיגיטליים מעוצבים כהשלמה של 16 סיביות ונגישים באמצעות ממשק דיגיטלי I2 C. הוא מודד את
מדידת שדה מגנטי באמצעות HMC5883 ו- Raspberry Pi: 4 שלבים
מדידת שדה מגנטי באמצעות HMC5883 ו- Raspberry Pi: HMC5883 הוא מצפן דיגיטלי המיועד לחישה מגנטית בשדה נמוך. למכשיר זה טווח שדות מגנטי רחב של +/- 8 Oe וקצב פלט של 160 הרץ. חיישן HMC5883 כולל נהגים אוטומטיים של רצועות הפחתה, ביטול קיזוז ו
מדידת שדה מגנטי באמצעות HMC5883 ו- Arduino Nano: 4 שלבים
מדידת שדה מגנטי באמצעות HMC5883 ו- Arduino Nano: HMC5883 הוא מצפן דיגיטלי המיועד לחישה מגנטית בשדה נמוך. למכשיר זה טווח שדות מגנטי רחב של +/- 8 Oe וקצב פלט של 160 הרץ. חיישן HMC5883 כולל נהגים אוטומטיים של רצועות הפחתה, ביטול קיזוז ו
מדידת לחות באמצעות HYT939 ופוטון חלקיקים: 4 שלבים
מדידת לחות באמצעות HYT939 ופוטון חלקיקים: HYT939 הוא חיישן לחות דיגיטלי שעובד על פרוטוקול תקשורת I2C. לחות היא פרמטר מרכזי בכל הקשור למערכות רפואיות ומעבדות, ולכן על מנת להשיג מטרות אלה ניסינו לחבר את HYT939 לפטל פטל. אני
מדידת האצה באמצעות H3LIS331DL ופוטון חלקיקים: 4 שלבים
מדידת האצה באמצעות H3LIS331DL ופוטון חלקיקים: H3LIS331DL, הוא מד תאוצה לינארי בעל 3 צירים בעל ביצועים נמוכים, השייך למשפחת ה"ננו ", עם ממשק סידורי I²C דיגיטלי. ל- H3LIS331DL יש סולמות מלאות לבחירה של ± 100g/± 200g/± 400g והוא מסוגל למדוד תאוצות עם