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

חישוב עוצמת אור באמצעות BH1715 ו- Arduino Nano: 5 שלבים
חישוב עוצמת אור באמצעות BH1715 ו- Arduino Nano: 5 שלבים

וִידֵאוֹ: חישוב עוצמת אור באמצעות BH1715 ו- Arduino Nano: 5 שלבים

וִידֵאוֹ: חישוב עוצמת אור באמצעות BH1715 ו- Arduino Nano: 5 שלבים
וִידֵאוֹ: Изучите Arduino за 30 минут: примеры и проекты 2024, יולי
Anonim
Image
Image

אתמול עבדנו על מסכי LCD, ותוך כדי עבודה עליהם הבנו את החשיבות של חישוב עוצמת האור. עוצמת האור אינה חשובה רק בתחום הפיזי של העולם הזה, אלא יש לה גם את תפקידה הנאמר בתחום הביולוגי. הערכה מדויקת של עוצמת האור ממלאת תפקיד מרכזי במערכת האקולוגית שלנו, בצמיחת צמחים וכו '. לכן, לצורך מטרה זו למדנו חיישן BH1715 הזה, שהוא חיישן אור סביבתי מסוג 16 סיביות.

במדריך זה אנו הולכים להדגים את פעולתו של BH1715 עם Arduino Nano.

חומרה שתזדקק לה למטרה זו היא כדלקמן:

1. BH1715 - חיישן אור סביבה

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

3. כבל I2C

4. מגן I2C עבור Arduino Nano

שלב 1: סקירה כללית של BH1715:

מה אתה צריך..!!
מה אתה צריך..!!

קודם כל ברצוננו להכיר לך את התכונות הבסיסיות של מודול החיישנים שהוא BH1715 ואת פרוטוקול התקשורת שעליו הוא פועל.

BH1715 הוא חיישן אור סביבה דיגיטלי עם ממשק אוטובוס I²C. BH1715 משמש בדרך כלל להשגת נתוני אור הסביבה להתאמת עוצמת התאורה האחורית של LCD ומקלדת למכשירים ניידים. מכשיר זה מציע רזולוציה של 16 סיביות וטווח מדידה מתכוונן, המאפשר זיהוי בין.23 ל- 100, 000 לוקס.

פרוטוקול התקשורת שעליו החיישן עובד הוא I2C. I2C מייצג את המעגל הבין-משולב. זהו פרוטוקול תקשורת שבו התקשורת מתבצעת באמצעות קווי SDA (נתונים סדרתיים) ו- SCL (שעון טורי). הוא מאפשר חיבור של מספר מכשירים בו זמנית. זהו אחד מפרוטוקול התקשורת הפשוט והיעיל ביותר.

שלב 2: מה שאתה צריך..

מה אתה צריך..!!
מה אתה צריך..!!
מה אתה צריך..!!
מה אתה צריך..!!
מה אתה צריך..!!
מה אתה צריך..!!

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

1. BH1715 - חיישן אור סביבה

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

3. כבל I2C

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

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

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

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

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

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

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

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

שלב 4: מדידת עוצמת אור קוד Arduino:

מדידת עוצמת אור קוד Arduino
מדידת עוצמת אור קוד Arduino
מדידת עוצמת אור קוד Arduino
מדידת עוצמת אור קוד Arduino

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

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

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

#לִכלוֹל

// כתובת BH1715 I2C היא 0x23 (35) #define Addr 0x23 void setup () {// התחל תקשורת I2C כ- MASTER Wire.begin (); // אתחל תקשורת סדרתית, הגדר קצב שידור = 9600 Serial.begin (9600); // התחל I2C Transmission Wire.beginTransmission (Addr); // שלח כוח על הפקודה Wire.write (0x01); // עצור את I2C Transmission Wire.endTransmission (); // התחל I2C Transmission Wire.beginTransmission (Addr); // שלח פקודת מדידה רציפה Wire.write (0x10); // עצור את I2C Transmission Wire.endTransmission (); עיכוב (300); } לולאת void () {נתוני int ללא חתום [2]; // בקש 2 בתים של נתונים Wire.requestFrom (Addr, 2); // קרא 2 בתים של נתונים // ALS msb, ALS lsb if (Wire.available () == 2) {data [0] = Wire.read (); data [1] = Wire.read (); } עיכוב (300); // להמיר את זוהר הצוף הנתונים = ((נתונים [0] * 256) + נתונים [1]) /1.20; // נתוני פלט לצג הטורי Serial.print ("זוהר אור הסביבה:"); Serial.print (זוהר); Serial.println ("לוקס"); }

החלק הבא של הקוד מפעיל את התקשורת i2c והתקשורת הטורית בעזרת הפונקציה Wire.begin () ו- Serial.begin ().

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

Wire.begin (); // אתחל תקשורת סדרתית, הגדר קצב שידור = 9600 Serial.begin (9600); // התחל I2C Transmission Wire.beginTransmission (Addr); // שלח את הפקודה Wire.write (0x01); // עצור את I2C Transmission Wire.endTransmission (); // התחל I2C Transmission Wire.beginTransmission (Addr); // שלח פקודת מדידה רציפה Wire.write (0x10); // עצור את I2C Transmission Wire.endTransmission (); עיכוב (300);

עוצמת האור נמדדת בחלק הבא של הקוד.

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

// בקש 2 בתים של נתונים Wire.requestFrom (Addr, 2); // קרא 2 בתים של נתונים // ALS msb, ALS lsb if (Wire.available () == 2) {data [0] = Wire.read (); data [1] = Wire.read (); } עיכוב (300); // להמיר את זוהר הצוף הנתונים = ((נתונים [0] * 256) + נתונים [1]) /1.20; // נתוני פלט לצג הטורי Serial.print ("זוהר אור הסביבה:"); Serial.print (זוהר); Serial.println ("לוקס");

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

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

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

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

מוּמלָץ: