תוכן עניינים:
וִידֵאוֹ: ADXL345 שימוש ב- Arduino Uno R3: 5 שלבים
2024 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2024-01-30 09:15
בשיעור זה נלמד כיצד להשתמש בחיישן התאוצה ADXL345.
שלב 1: רכיבים
- לוח Arduino Uno * 1
- כבל USB * 1
- ADXL345 *1
- לוח לחם * 1
- חוטי מגשר
שלב 2: עקרון
מד תאוצה משמש למדידת הכוח שנוצר במהלך התאוצה. הבסיסית ביותר היא האצת הכבידה הידועה, שהיא 1 גרם.
על ידי מדידת התאוצה הנגרמת על ידי כוח הכבידה, אתה יכול לחשב את זווית ההטיה של המכשיר למשטח השטח. באמצעות ניתוח ההאצה הדינאמית, אתה יכול לדעת את הדרך שבה המכשיר זז. לדוגמה, לוח איזון עצמי או לוח רחפים מיישם את חיישן ההאצה והג'ירוסקופ לתיקון מסנן קלמן ויציבה.
ADXL345
ה- ADXL345 הוא מד תאוצה קטן, דק, בעל הספק נמוך, בעל 3 צירים עם מדידה ברזולוציה גבוהה (13 סיביות) עד ± 16 גרם. נתוני הפלט הדיגיטליים מעוצבים כהשלמה של 16 סיביות ונגישים באמצעות ממשק דיגיטלי SPI (3 או 4 חוטים) או I2C. בניסוי זה משתמשים בממשק הדיגיטלי I2C.
היא מתאימה למדידת האצת הכובד הסטטית ביישומי חישת הטיה, כמו גם תאוצה דינאמית הנובעת מתנועה או הלם. הרזולוציה הגבוהה שלו (4 מ ג/LSB) מאפשרת את מדידת שינוי הנטייה בפחות מ -1.0 °. והרגישות המעולה (3.9mg/LSB @2g) מספקת תפוקה דיוק גבוהה של עד 16g ±.
כיצד פועל ADXL345
ה- ADXL345 מזהה את ההאצה עם רכיב החישה בחזית, ואז רכיב חישת האות החשמלי משנה אותו לאות חשמלי שהוא אנלוגי. לאחר מכן, מתאם AD המשולב במודול יהפוך את האות האנלוגי לאחד דיגיטלי.
X_OUT, Y_OUT ו- Z_OUT הם הערכים בציר X, Y ו- Z בהתאמה. מקם את המודול כלפי מעלה: Z_OUT יכול להגיע ל -1 גרם לכל היותר, המינימום של X_OUT הוא -1 גרם לכיוון Ax, והמינימום של Y_OUT הוא -1 גרם לכיוון Ay. מצד שני, הפוך את המודול הפוך: המינימום של Z_OUT הוא -1g, המקסימום של X_OUT הוא +1g לכיוון Ax, והמקסימום של Y_OUT הוא +1g לכיוון Ay., כפי שמוצג מטה. סובב את מודול ADXL345 ותראה את השינוי של שלושה ערכים.
כאשר ערוץ A משתנה מרמה גבוהה לרמה נמוכה, אם ערוץ B הוא ברמה גבוהה, הוא מציין שהמקודד הסיבובי מסתובב עם כיוון השעון (CW); אם באותו זמן ערוץ B הוא ברמה נמוכה, זה אומר סיבובים נגד כיוון השעון (CCW). אז אם נקרא את הערוץ של ערוץ B כאשר ערוץ A ברמה נמוכה, נוכל לדעת לאיזה כיוון המקודד הסיבובי מסתובב.
עקרון: ראה תרשים סכמטי של מודול המקודד הרוטרי להלן. מתוכו אנו יכולים לראות שסיכה 3 של המקודד הסיבובי, כלומר CLK במודול, היא ערוץ B. סיכה 5, שהיא DT, היא ערוץ A. כדי לדעת את כיוון הסיבוב של המקליט, פשוט קרא את הערך של CLK ו- DT.
במעגל יש שבב של ווסת מתח 3.3V, כך שתוכל להפעיל את המודול עם 5V או 3.3V.
מכיוון שמחובר SDO ל- GND, כתובת I2C של ADXL345 היא 0x53, 0xA6 לכתיבה, 0xA7 לקריאה
פונקציית סיכה של מודול ADXL345.
שלב 3: נהלים
שלב 1. בנה את המעגל.
שלב 2:
הורד את הקוד מ-
שלב 3:
העלה את הסקיצה ללוח ה- Arduino Uno
לחץ על סמל ההעלאה כדי להעלות את הקוד ללוח הבקרה.
אם "סיום ההעלאה" מופיע בתחתית החלון, פירוש הדבר שהסקיצה הועלתה בהצלחה.
לאחר ההעלאה, פתח את Monitor Serial, שם תוכל לראות את הנתונים שזוהו. כאשר האצת המודול משתנה, הנתון ישתנה בהתאם לחלון.
שלב 4: קוד
// ADXL335
/********************************
ADXL335
הערה: vcc5v, אבל ADXL335 לעומת 3.3V
המעגל:
5V: VCC
אנלוגי 0: ציר x
אנלוגי 1: ציר y
אנלוגי 2: ציר z
לאחר שריפת ה
תוכנית, פתח את חלון איתור באגים של צג טורי, שם תוכל לראות את הנתונים שזוהו מוצגים. כאשר התאוצה משתנה, הנתון ישתנה בהתאם.
*********************************
/אימייל:
// אתר: www.primerobotics.in
const int xpin =
A0; // ציר x של מד התאוצה
const int ypin =
A1; // ציר y
const int zpin =
A2; // ציר z (רק בדגמים עם 3 צירים)
הגדרת חלל ()
{
// לאתחל את התקשורת הסדרתית:
Serial.begin (9600);
}
לולאת חלל ()
{
int x = analogRead (xpin); // לקרוא מ- xpin
עיכוב (1); //
int y = analogRead (ypin); // לקרוא מ ypin
עיכוב (1);
int z = analogRead (zpin); // לקרוא מ- zpin
לצוף zero_G = 338.0; // ספק כוח ADXL335
לפי 3.3V: 3.3V/5V*1024 = 676/2 = 338
//Serial.print(x);
//Serial.print("\t ");
//Serial.print(y);
//Serial.print("\t ");
//Serial.print(z);
//Serial.print("\n ");
לָצוּף
zero_Gx = 331.5; // פלט zero_G של ציר x: (x_max + x_min)/2
לָצוּף
zero_Gy = 329.5; // פלט zero_G של ציר y: (y_max + y_min)/2
לצוף zero_Gz = 340.0; // את
פלט zero_G של ציר z: (z_max + z_min)/2
סולם צף =
67.6; // אספקת חשמל לפי 3.3V: 3.3v/5v *1024/3.3v *330mv/g = 67.6g
צף scale_x =
65; // סולם ציר x: x_max/3.3v*330mv/g
צף scale_y =
68.5; // סולם ציר y: y_max/3.3v*330mv/g
צף scale_z =
68; // סולם ציר z: z_max/3.3v*330mv/g
Serial.print (((float) x
- zero_Gx)/scale_x); // הדפס ערך x על צג טורי
Serial.print ("\ t");
Serial.print (((float) y
- zero_Gy)/scale_y); // הדפס ערך y במסך טורי
Serial.print ("\ t");
Serial.print (((float) z
- zero_Gz)/scale_z); // הדפס ערך z במסך טורי
Serial.print ("\ n");
עיכוב (1000); // חכה לשנייה אחת
}
שלב 5: ניתוח קוד
הקוד לניסוי ADXL345 כולל 3 חלקים: אתחל כל יציאה והתקן, רכש ושמור נתונים שנשלחו מהחיישנים והמיר את הנתונים.
מוּמלָץ:
שימוש ב- Pimoroni Enviro+ FeatherWing With the Adafruit Feather NRF52840 Express: 8 שלבים
שימוש ב- Pimoroni Enviro+ FeatherWing עם Adafruit Feather NRF52840 Express: ה- Pimoroni Enviro+ FeatherWing הוא לוח עמוס בחיישנים המיועדים לעבוד עם סדרת הלוחות של Adafruit Feather. זהו מקום שימושי להתחיל עבור כל מי שמעוניין בניטור סביבתי, זיהום אטמוספרה ושטיפת נתונים. אני
שימוש בגיטרת גיבור גיטרה לשליטה בזום (Windows בלבד): 9 שלבים
שימוש בגיטרה של גיבור גיטרה לשליטה בזום (Windows בלבד): מכיוון שאנו בעיצומה של מגיפה עולמית, רבים מאיתנו תקועים בניקיון הבית ומצטרפים לפגישות בזום. כעבור זמן מה זה יכול להיות מאוד תפל ומייגע. תוך כדי ניקיון ביתי מצאתי גיטרה ישנה של גיבור גיטרה שהושלכה לתוך
[2020] שימוש בשני (x2) מיקרו: סיביות לשליטה במכונית RC: 6 שלבים (עם תמונות)
[2020] שימוש בשני (x2) מיקרו: סיביות לשליטה במכונית RC: אם יש לך שני (x2) מיקרו: סיביות, האם חשבת להשתמש בהם לשליטה מרחוק על מכונית RC? אתה יכול לשלוט במכונית RC באמצעות מיקרו: ביט אחד כמשדר ועוד אחד כמקלט. כאשר אתה משתמש בעורך MakeCode לקידוד מיקרו: ב
כיצד למחזר טלפונים לאנדרואיד עבור BOINC או מתקנים מתקפלים ללא שימוש בסוללות: 8 שלבים
כיצד למחזר טלפונים לאנדרואיד ל- BOINC או לקיפול מתקנים מבלי להשתמש בסוללות: אזהרה: אני לא אחראי לכל נזק שנגרם לתוכנתך על ידי ביצוע המדריך הזה. מדריך זה יעיל יותר עבור משתמשי BOINC (בחירה אישית / סיבות), זה יכול לשמש גם לקיפול מכיוון שאין לי יותר מדי זמן, אני רוצה
[2020] שימוש באייפון או אייפד ו- Micro: bit Game Pad App לשליטה במכונית RC: 23 שלבים
] חנות אפליקציות? חפש " micro: bit " בחנות האפליקציות ותוכל להוריד את האפליקציה בחינם. ה