תוכן עניינים:

מדידת טמפרטורה באמצעות STS21 וארדואינו ננו: 4 שלבים
מדידת טמפרטורה באמצעות STS21 וארדואינו ננו: 4 שלבים

וִידֵאוֹ: מדידת טמפרטורה באמצעות STS21 וארדואינו ננו: 4 שלבים

וִידֵאוֹ: מדידת טמפרטורה באמצעות STS21 וארדואינו ננו: 4 שלבים
וִידֵאוֹ: How to control Servo motor with Arduino with and without potentiometer 2024, נוֹבֶמבֶּר
Anonim
Image
Image

חיישן הטמפרטורה הדיגיטלי STS21 מציע ביצועים מעולים וטביעת רגל חוסכת מקום. הוא מספק אותות מכויל, לינארית בפורמט דיגיטלי, I2C. ייצור חיישן זה מבוסס על טכנולוגיית CMOSens, המייחסת את הביצועים והאמינות של STS21. ניתן לשנות את הרזולוציה של STS21 על ידי פקודה, ניתן לזהות סוללה חלשה וסכום ביקורת עוזר לשפר את אמינות התקשורת.

במדריך זה הודגם הממשק של מודול החיישנים STS21 עם ננו ארדואינו. כדי לקרוא את ערכי הטמפרטורה, השתמשנו בארדואינו עם מתאם I2c. מתאם I2C זה הופך את החיבור למודול החיישן לקל ואמין יותר.

שלב 1: חומרה נדרשת:

חומרה נדרשת
חומרה נדרשת
חומרה נדרשת
חומרה נדרשת
חומרה נדרשת
חומרה נדרשת

החומרים הדרושים לנו להגשמת מטרתנו כוללים את רכיבי החומרה הבאים:

1. STS21

2. ארדואינו ננו

3. כבל I2C

4. מגן I2C לנאנו ארדואינו

שלב 2: חיבור חומרה:

חיבור חומרה
חיבור חומרה
חיבור חומרה
חיבור חומרה

קטע חיבור החומרה בעצם מסביר את חיבורי החיווט הנדרשים בין החיישן לננו הארדואינו. הבטחת חיבורים נכונים היא ההכרח הבסיסי בעת עבודה על כל מערכת לתפוקה הרצויה. אז, החיבורים הנדרשים הם כדלקמן:

ה- STS21 יעבוד על I2C. להלן תרשים החיווט לדוגמה, המדגים כיצד לחבר כל ממשק של החיישן.

הלוח מחוץ לקופסה מוגדר לממשק I2C, ולכן אנו ממליצים להשתמש בחיבור זה אם אתה אגנוסטי אחרת. כל מה שאתה צריך זה ארבעה חוטים!

רק ארבעה חיבורים נדרשים סיכות Vcc, Gnd, SCL ו- SDA ואלו מחוברים בעזרת כבל I2C.

קשרים אלה מודגמים בתמונות למעלה.

שלב 3: קוד למדידת טמפרטורה:

קוד למדידת טמפרטורה
קוד למדידת טמפרטורה

נתחיל עם הקוד של Arduino עכשיו.

בעת השימוש במודול החיישנים עם Arduino, אנו כוללים את ספריית Wire.h. ספריית "Wire" מכילה את הפונקציות המאפשרות תקשורת i2c בין החיישן ללוח ה- Arduino.

קוד Arduino כולו ניתן להלן לנוחות המשתמש:

#לִכלוֹל

// כתובת STS21 I2C היא 0x4A (74)

#define addr 0x4A

הגדרת חלל ()

{

// אתחל תקשורת I2C כ- MASTER

Wire.begin ();

// התחל תקשורת טורית, הגדר קצב שידור = 9600

Serial.begin (9600);

עיכוב (300);

}

לולאת חלל ()

{

נתוני int ללא חתום [2];

// התחל את שידור I2C

Wire.beginTransmission (addr);

// בחר אין מאסטר אחזקה

Wire.write (0xF3);

// סיום שידור I2C

Wire.endTransmission ();

עיכוב (300);

// בקש 2 בתים של נתונים

Wire.requestFrom (addr, 2);

// קרא 2 בתים של נתונים

אם (Wire.available () == 2)

{

data [0] = Wire.read ();

data [1] = Wire.read ();

}

// המר את הנתונים

int rawtmp = data [0] * 256 + נתונים [1];

int value = rawtmp & 0xFFFC;

cTemp כפול = -46.85 + (175.72 * (ערך / 65536.0));

כפול fTemp = cTemp * 1.8 + 32;

// נתוני פלט לצג הסדרתי

Serial.print ("טמפרטורה בצלזיוס:");

Serial.print (cTemp);

Serial.println ("C");

Serial.print ("טמפרטורה בפרנהייט:");

Serial.print (fTemp);

Serial.println ("F");

עיכוב (300);

}

בספריית תיל Wire.write () ו- Wire.read () משמשים לכתיבת הפקודות וקריאת פלט החיישן.

Serial.print () ו- Serial.println () משמשים להצגת פלט החיישן על הצג הטורי של ה- Arduino IDE.

פלט החיישן מוצג בתמונה למעלה.

שלב 4: יישומים:

יישומים
יישומים

ניתן להשתמש בחיישן טמפרטורה דיגיטלי STS21 במערכות הדורשות ניטור טמפרטורה ברמת דיוק גבוהה. ניתן לשלב אותו במכשירי מחשב שונים, ציוד רפואי ומערכות בקרה תעשייתיות הדרושות למדידת טמפרטורה בדיוק רב.

מוּמלָץ: