חיישן PIR HC-SR501 Arduino Nano - הדרכה שלב אחר שלב

Hyysn Pir Hc Sr501 Arduino Nano Hdrkh Slb Hr Slb



Arduino Nano הוא לוח קומפקטי מבוסס מיקרו-בקר. זה יכול לעבד הוראות מרובות ויכול ליצור תגובות רצויות. באמצעות פיני Arduino Nano GPIO ניתן לממשק מגוון רחב של חיישנים. אחד החיישנים כולל את ה-PIR ( HC-SR501 ). מאמר זה יעסוק בממשק של חיישן PIR עם לוח Arduino Nano.

מבוא לחיישן תנועה PIR (HC-SR501)

חיישן תנועה PIR, המכונה גם א פ מסייע אני נפרא אדום ס ensor, הוא סוג של מכשיר אלקטרוני המשמש בדרך כלל לזיהוי נוכחות של אדם או חיה בטווח מסוים. ה-HC-SR501 הוא דגם פופולרי של חיישן תנועה PIR הידוע באמינותו ובקלות השימוש שלו.







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



עבודה של חיישן תנועה PIR (HC-SR501)

ה HC-SR501 חיישן תנועה PIR פועל באמצעות גלאי אינפרא אדום פסיבי כדי לחוש שינויים בטמפרטורה. הוא נועד לזהות נוכחות של אדם או חיה בטווח מסוים, בדרך כלל עד כ-8 מטרים (26 רגל).



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





לחיישן התנועה PIR יש שני פוטנציומטרים על הסיפון שניתן להשתמש בהם כדי לכוונן את רְגִישׁוּת ו עיקוב זמן של החיישן.



  • רְגִישׁוּת קובע כמה משינוי הטמפרטורה נדרש כדי להפעיל חיישן PIR. ניתן להגדיר אותו בהתאם לתנועה שאנו צריכים לזהות כמו תנועת עכבר או עלים.
  • עיקוב זמן קובע כמה זמן החיישן נשאר פעיל לאחר זיהוי שינוי בטמפרטורה.

Pinout HC-SR501

סיכת חיישן PIR כוללת:

  • VCC : זהו סיכת החשמל של חיישן ה-PIR. חבר אותו למקור מתח 5V.
  • GND : זוהי סיכת הקרקע. חבר אותו למסוף ה-GND או השלילי של מקור הכוח.
  • הַחוּצָה : זהו סיכת הפלט. הוא שולח אות דיגיטלי למכשיר מחובר כאשר החיישן מזהה תנועה.
  • התאם השהיה : זוהי סיכת התאמת הרגישות. באמצעות רגישות זו של החיישן ניתן להתאים.
  • התאם את הרגישות : זהו סיכת התאמת השהיית הזמן. ניתן להשתמש בו כדי להתאים את משך הזמן שהחיישן נשאר פעיל לאחר זיהוי שינוי בטמפרטורה.

ל-PIR HC-SR501 3 פיני פלט. שני פינים VCC ו-GND הם פיני חשמל ואילו הפין האמצעי או השלישי מיועד לאות טריגר דיגיטלי.

חיישן תנועה PIR מתממשק (HC-SR501) עם Arduino Nano

חיבור חיישן תנועה PIR, כגון HC-SR501, עם מיקרו-בקר Arduino Nano הוא תהליך פשוט שניתן לבצע עם רכיבים בודדים בלבד. כדי להתחיל, חבר את פיני VCC ו-GND בחיישן PIR לפיני 5V/VIN ו-GND ב-Arduino Nano, בהתאמה. לאחר מכן, חבר את פין ה-OUT בחיישן PIR לכל פין כניסה דיגיטלי ב- Arduino Nano.

לאחר חיבורים אלו, ניתן להשתמש ב-Arduino Nano כדי לקרוא את הפלט הדיגיטלי של חיישן ה-PIR ולבצע פעולה רצויה, כגון הדלקת LED או שליחת הודעה. חשוב לציין שחיישן התנועה PIR עשוי לדרוש כמות קטנה של כיול על מנת לתפקד כראוי. זה יכול להיעשות בדרך כלל על ידי התאמת הגדרות הרגישות והשהיית זמן באמצעות הפוטנציומטרים המשולבים.

הרכיבים הנדרשים הם:

  • ארדואינו ננו
  • חיישן תנועה PIR (HC-SR501)
  • לד
  • נגד 220 אוהם
  • חיבור חוטים
  • קרש לחם

סכמטי

תמונה נתונה מציגה דיאגרמת חיווט של חיישן PIR עם לוח Arduino Nano:

קוד
לִפְתוֹחַ הולך (סביבת פיתוח משולבת). בחר Nano board ולחץ על כפתור ההעלאה לאחר כתיבת הקוד שלהלן.

int LED_PIN = 3 ; /* סיכה הוגדרה ל לד */
int PIR_Sensor_Pin = 5 ; /* פִּין ל חיישן PIR */
int pirState = נָכוֹן ; /* בהנחה שלא מזוהה תנועה */
int val = 0 ; /* משתנה לאחסון מצב סיכה */
int minimummSecsLowForInactive = 2000 ; /* נניח שלא זוהתה תנועה אם לא מזוהה פעילות ל 2 שניות */
long unsigned int timeLow;
takeLowTime בוליאני;
int calibrationTime = 10 ; /* זְמַן ל כיול חיישן לפי גיליון נתונים */
הגדרה בטלה ( ) {
pinMode ( LED_PIN, פלט ) ; /* LED מוצהר כפי ש תְפוּקָה */
pinMode ( PIR_Sensor_Pin, INPUT ) ; /* סיכת חיישן זוהתה כפי ש קֶלֶט */
Serial.begin ( 9600 ) ;
Serial.print ( 'חיישן כיול' ) ;
ל ( int i = 0 ; i  minimummSecsLowForInactive ) {
pirState = נָכוֹן ;
Serial.println ( 'התנועה הסתיימה!' ) ;
לְעַכֵּב ( חמישים ) ;
}
}
}

הקוד התחיל על ידי הגדרת פין הקלט עבור חיישן PIR ופין פלט עבור LED. משתנה int val מוגדר. משתנה זה יאחסן את המצב של פין הפלט PIR.

לאחר מכן, באמצעות pinMode פונקציה, LED ופין החיישן מוגדרים כפלט וקלט בהתאמה. נעשה שימוש בתנאי אם. אם ה-Arduino Nano יקבל קלט HIGH מנורת החיישן תידלק. באופן דומה, אם לא תזוהה תנועה יישלח אות LOW לארדואינו וכתוצאה מכך כיבוי הנורית.

תְפוּקָה

פלט מתחת יוצג ברגע שתזוהה תנועה על ידי חיישן PIR. החיישן הראשון יכייל את עצמו לאחר מכן הוא יכול לזהות כל תנועה.

חוּמרָה

הנורית כבויה מכיוון שלא מזוהה תנועה.

כעת המכונית זזה והנורית נדלקת כאשר מזוהה תנועה.

סיכום

ניתן לממשק את Arduino Nano עם חיישנים שונים כגון PIR. באמצעות חיישן זה ניתן לזהות כל תנועת אובייקט. לחיישן ה-PIR עם Arduino יש מספר יישומים כמו מערכות אבטחה לבית או תאורת רחוב. מאמר זה מכסה את הקוד המלא של Arduino ואת השלבים הכרוכים בזיהוי תנועת אובייקט.