Mạch chuông cuộc gọi văn phòng không dây

Hãy Thử Công Cụ CủA Chúng Tôi Để LoạI Bỏ Các VấN Đề





Trong bài đăng này, chúng tôi sẽ chế tạo chuông gọi văn phòng không dây có thể được sử dụng để gọi 6 nhân viên khác nhau từ bàn của trưởng / sếp hoặc một số dự án vui nhộn kiểu chuông gọi khác cho ngôi nhà của bạn.

Sử dụng mô-đun nRF24L01 2,4 GHz

Chúng tôi sẽ chế tạo một chuông gọi không dây đơn giản bằng cách sử dụng Arduino và mô-đun nRF24L01 2,4 GHz, có thể hoạt động xung quanh nhà hoặc văn phòng của bạn mà không gặp trục trặc hoặc vấn đề về vùng phủ sóng.



Mạch được đề xuất có thể được cấp nguồn từ bộ điều hợp điện thoại thông minh 5V hoặc bất kỳ bộ chuyển đổi 5V rẻ tiền nào giúp mạch của bạn luôn hoạt động và sẵn sàng nghe cuộc gọi của bạn.

Hãy xem tổng quan về nRF24L01 mô-đun 2,4 GHz .



Con chip trên được gọi là mô-đun nRF24L01. Nó là một bảng mạch giao tiếp song công (hai chiều) được thiết kế cho vi điều khiển và máy tính bảng đơn như Raspberry Pi.

Nó sử dụng tần số 2,4 GHz là băng tần ISM (băng tần Công nghiệp, Khoa học và Y tế), đây là cùng tần số được sử dụng trong giao tiếp Wi-Fi.

Nó có thể truyền hoặc nhận dữ liệu ở tốc độ 2Mbps, nhưng trong dự án này, việc truyền và nhận bị giới hạn ở 250 Kbps vì yêu cầu dữ liệu thấp hơn và việc giảm tốc độ dữ liệu sẽ dẫn đến phạm vi tổng thể tăng lên.

Nó chỉ tiêu thụ 12,3 mA khi truyền dữ liệu cao điểm, giúp thiết bị thân thiện với pin. Nó sử dụng giao thức SPI để giao tiếp với vi điều khiển.

Nó có phạm vi truyền / nhận 100 mét không có chướng ngại vật ở giữa và phạm vi khoảng 30 mét với một số chướng ngại vật.

Bạn có thể tìm thấy mô-đun này trên các trang thương mại điện tử phổ biến, cũng như tại cửa hàng điện tử địa phương của bạn.

Lưu ý: Mô-đun có thể hoạt động từ 1,9 đến 3,6V, bộ điều chỉnh trên bo mạch trên Arduino có thể cung cấp 3,3V cho mô-đun. Nếu bạn kết nối đầu cuối Vcc của nRF24L01 với 5V của đầu ra Arduino, điều này sẽ dẫn đến sự cố mô-đun. Vì vậy cần phải cẩn thận.

Đó là phần giới thiệu ngắn gọn về mô-đun nRF24L01.

Hãy cùng tìm hiểu chi tiết về sơ đồ mạch:

Mạch điều khiển từ xa:

Từ xa sẽ là với sếp hoặc trưởng văn phòng.

chuông gọi mạch điều khiển từ xa

Điều khiển từ xa bao gồm Arduino nano bằng cách bạn có thể sử dụng bất kỳ bảng Arduino nào, 6 nút nhấn để đổ chuông sáu bộ thu khác nhau, mô-đun nRF24L01 và đèn LED để xác nhận việc nhấn nút.

Bạn có thể cấp nguồn này bằng pin 9V hoặc từ bộ chuyển đổi 5V. Trong trường hợp hết pin, bạn nên tắt điều khiển từ xa này sau cuộc gọi của mình.

Bây giờ chúng ta hãy xem mã. Trước đó, bạn chỉ cần tải xuống tệp thư viện sau đó mã được biên dịch.

Liên kết: github.com/nRF24/RF24.git

Mã cho điều khiển từ xa:

// --------- 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 -------//

Điều đó kết thúc điều khiển từ xa / máy phát.

Bây giờ chúng ta hãy nhìn vào bộ thu.

Mạch thu:

LƯU Ý: Bạn có thể tạo một bộ thu hoặc sáu bộ thu tùy theo nhu cầu của mình.

Bộ thu bao gồm bảng Arduino, mô-đun nRF24L01 và một bộ rung. Không giống như điều khiển từ xa, bộ thu phải được cấp nguồn từ bộ đổi nguồn 5V để bạn không phụ thuộc vào pin sẽ cạn kiệt trong vòng vài ngày.

mạch nhận từ xa chuông gọi

Bây giờ chúng ta hãy xem mã cho người nhận:

Mã chương trình cho người nhận

// --------- 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 -------//

GHI CHÚ:

Nếu bạn định xây dựng nhiều bộ thu cho hệ thống chuông gọi văn phòng này, thì bạn nên thay đổi giá trị được đề cập trên bản dựng bộ thu kế tiếp và tải mã lên.

Đối với người nhận đầu tiên (không cần thay đổi bất cứ điều gì):

// ------- Thay đổi điều này ------- //
địa chỉ byte const [6] = '00001' và tải lên mã.
// ------------- ------------ //

Đối với đầu thu thứ hai (Bạn phải thay đổi):
địa chỉ byte const [6] = '00002' và tải lên mã.

Đối với đầu thu thứ ba (Bạn phải thay đổi):
địa chỉ byte const [6] = '00003' và tải lên mã.

Và cứ tiếp tục như vậy …… .. lên đến “00006” hoặc máy thu thứ sáu.

Khi bạn nhấn “S1” trên điều khiển từ xa, bộ thu có địa chỉ “00001” sẽ phản hồi / buzz.

Khi bạn nhấn “S2” trên điều khiển từ xa, bộ thu có địa chỉ “00002” sẽ phản hồi / buzz.
Và như thế……

Điều đó kết luận chi tiết mạch thu.

Nếu có thêm thắc mắc, bạn vui lòng bày tỏ ở phần bình luận, chúng tôi sẽ cố gắng liên hệ lại với bạn sớm nhất để trả lời




Trước: Mạch kiểm tra điều khiển từ xa Tiếp theo: Cách tạo mạch chuyển đổi Boost đơn giản