מעגל פעמון שיחות במשרד אלחוטי

נסה את הכלי שלנו לביטול בעיות





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

באמצעות מודול 2.4 GHz GHz nRF24L01

אנו נקים פעמון שיחות אלחוטי פשוט באמצעות Arduino ו- nRF24L01 2.4 GHz מודול, אשר יכול לעבוד סביב ביתך או במשרדך ללא שום שיהוקים או בעיית כיסוי.



המעגל המוצע יכול להיות מופעל ממתאם חכם 5V או מכל מתאם 5V זול שמחזיק את המעגל שלך בחיים ומוכן לשמוע את שיחתך.

בואו נראה סקירה כללית של מודול 2.4 GHz GHz nRF24L01 .



השבב הנ'ל נקרא מודול nRF24L01. זהו לוח תקשורת דופלקס (דו כיווני) המיועד למיקרו-בקרים ולמחשבי לוח יחיד כמו Raspberry Pi.

הוא משתמש בתדר 2.4 ג'יגה הרץ המהווה רצועת ISM (תעשייה, מדע ורפואה) זה אותו תדר המשמש בתקשורת Wi-Fi.

הוא יכול לשדר או לקבל נתונים בקצב של 2 מגה לשנייה, אך בפרויקט זה השידור והקליטה מוגבלים ל -250 קילו-סיביות לשנייה בגלל דרישות נתונים נמוכות יותר והורדת קצב הנתונים תביא להגדלת הטווח הכללי.

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

יש לו טווח שידור / קליטה של ​​100 מטר ללא מכשול בין לבין וטווח של כ 30 מטר עם מכשול כלשהו.

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

הערה: המודול יכול לעבוד בין 1.9 ל -3.6 וולט, הרגולטור על הלוח בארדואינו יכול לספק 3.3 וולט עבור המודול. אם תחבר את מסוף ה- Vcc של nRF24L01 ל -5 V של פלט Arduino, זה יביא לתקלה במודול. אז חייבים לנקוט בזהירות.

זו ההקדמה הקצרה למודול nRF24L01.

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

מעגל השלט רחוק:

מרחוק יהיה עם הבוס או ראש המשרד.

מעגל שלט רחוק להתקשר לפעמון

השלט מורכב מ- Arduino nano דרך אגב תוכלו להשתמש בכל לוח Arduino, 6 כפתורי לחיצה לצלצול שישה מקלטים שונים, מודול nRF24L01 ונורית לד כדי לאישור לחיצת כפתור.

אתה יכול להפעיל את זה באמצעות סוללה 9V או ממתאם 5V. במקרה של סוללה עליך לכבות את השלט הזה לאחר שיחתך.

עכשיו בואו נסתכל על הקוד. לפני כן עליך להוריד את קובץ הספרייה רק ​​לאחר מכן קוד מתגודד.

קישור: github.com/nRF24/RF24.git

קוד לשלט רחוק:

// --------- Program Developed by R.GIRISH / homemade-circuits. com -------//
#include
#include
RF24 radio(9, 10)
const byte address_1[6] = '00001'
const byte address_2[6] = '00002'
const byte address_3[6] = '00003'
const byte address_4[6] = '00004'
const byte address_5[6] = '00005'
const byte address_6[6] = '00006'
const int input_1 = A0
const int input_2 = A1
const int input_3 = A2
const int input_4 = A3
const int input_5 = A4
const int input_6 = A5
const int LED = 2
const char text[] = 'call'
void setup()
{
pinMode(input_1, INPUT)
pinMode(input_2, INPUT)
pinMode(input_3, INPUT)
pinMode(input_4, INPUT)
pinMode(input_5, INPUT)
pinMode(input_6, INPUT)
pinMode(LED, OUTPUT)
digitalWrite(input_1, HIGH)
digitalWrite(input_2, HIGH)
digitalWrite(input_3, HIGH)
digitalWrite(input_4, HIGH)
digitalWrite(input_5, HIGH)
digitalWrite(input_6, HIGH)
radio.begin()
radio.setChannel(100)
radio.setDataRate(RF24_250KBPS)
radio.setPALevel(RF24_PA_MAX)
radio.stopListening()
}
void loop()
{
if (digitalRead(input_1) == LOW)
{
radio.openWritingPipe(address_1)
radio.write(&text, sizeof(text))
digitalWrite(LED, HIGH)
delay(400)
digitalWrite(LED, LOW)
}
if (digitalRead(input_2) == LOW)
{
radio.openWritingPipe(address_2)
radio.write(&text, sizeof(text))
digitalWrite(LED, HIGH)
delay(400)
digitalWrite(LED, LOW)
}
if (digitalRead(input_3) == LOW)
{
radio.openWritingPipe(address_3)
radio.write(&text, sizeof(text))
digitalWrite(LED, HIGH)
delay(400)
digitalWrite(LED, LOW)
}
if (digitalRead(input_4) == LOW)
{
radio.openWritingPipe(address_4)
radio.write(&text, sizeof(text))
digitalWrite(LED, HIGH)
delay(400)
digitalWrite(LED, LOW)
}
if (digitalRead(input_5) == LOW)
{
radio.openWritingPipe(address_5)
radio.write(&text, sizeof(text))
digitalWrite(LED, HIGH)
delay(400)
digitalWrite(LED, LOW)
}
if (digitalRead(input_6) == LOW)
{
radio.openWritingPipe(address_6)
radio.write(&text, sizeof(text))
digitalWrite(LED, HIGH)
delay(400)
digitalWrite(LED, LOW)
}
}
// --------- Program Developed by R.GIRISH / homemade-circuits. com -------//

זה מסכם את השלט / משדר.

עכשיו בואו נסתכל על המקלט.

מעגל המקלט:

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

המקלט מורכב מלוח Arduino, מודול nRF24L01 וזמזם. שלא כמו השלט הרחוק, המקלט צריך להיות מופעל ממתאם 5V, כך שלא תהיה תלוי בסוללות שיתנקזו תוך כמה ימים.

מעגל מקלט מרחוק לפעמון שיחה

עכשיו בואו נסתכל על הקוד למקלט:

קוד תכנית למקבל

// --------- Program Developed by R.GIRISH / homemade-circuits. com -------//
#include
#include
RF24 radio(9, 10)
const int buzzer = 2
char text[32] = ''
// ------- Change this ------- //
const byte address[6] = '00001'
// ------------- ------------ //
void setup()
{
Serial.begin(9600)
pinMode(buzzer, OUTPUT)
radio.begin()
radio.openReadingPipe(0, address)
radio.setChannel(100)
radio.setDataRate(RF24_250KBPS)
radio.setPALevel(RF24_PA_MAX)
radio.startListening()
}
void loop()
{
if (radio.available())
{
radio.read(&text, sizeof(text))
digitalWrite(buzzer, HIGH)
delay(1000)
digitalWrite(buzzer, LOW)
}
}
// --------- Program Developed by R.GIRISH / homemade-circuits. com -------//

פתק:

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

למקלט הראשון (אין צורך לשנות דבר):

// ------- תשנה את זה ------- //
כתובת byst byst [6] = '00001' והעלה את הקוד.
// ------------- ------------ //

עבור המקלט השני (עליך לשנות):
כתובת byst const [6] = '00002' והעלה את הקוד.

עבור המקלט השלישי (עליך לשנות):
כתובת const byte [6] = '00003' והעלה את הקוד.

וכן הלאה ...… .. עד '00006' או המקלט השישי.

כשתלחץ על 'S1' בשלט הרחוק, המקלט עם הכתובת '00001' יגיב / זמזום.

כשתלחץ על 'S2' בשלט הרחוק, המקלט עם הכתובת '00002' יגיב / יז.
וכן הלאה……

זה מסכם את פרטי מעגל המקלט.

אם יש לך שאלות נוספות, אל תהסס להביע אותן בסעיף ההערות, ננסה לחזור אליך בהקדם עם תשובה




קודם: מעגל בודק שלט רחוק הבא: כיצד ליצור מעגלי ממיר Boost פשוטים