Wireless Office Call Bell Circuit

Subukan Ang Aming Instrumento Para Sa Pagtanggal Ng Mga Problema





Sa post na ito, magtatayo kami ng wireless office calling bell na maaaring magamit para sa pagtawag sa 6 na magkakaibang tauhan mula sa desk ng head / boss o ilang iba pang mga proyektong nakakatuwang uri ng bell para sa iyong tahanan.

Paggamit ng nRF24L01 2.4 GHz module

Kami ay magtatayo ng isang simpleng wireless calling bell gamit ang Arduino at nRF24L01 2.4 GHz module, na maaaring gumana sa paligid ng iyong bahay o sa iyong tanggapan nang walang anumang mga hiccup o isyu sa saklaw.



Ang ipinanukalang circuit ay maaaring pinalakas mula sa isang 5V smartphone adapter o anumang murang 5V adapter na nagpapanatili sa iyong circuit na buhay at handa na pakinggan ang iyong tawag.

Tingnan natin ang isang pangkalahatang ideya ng nRF24L01 2.4 GHz module .



Ang chip sa itaas ay tinatawag na nRF24L01 module. Ito ay isang duplex (bi-directional) na circuit board ng komunikasyon na dinisenyo para sa mga microcontroller at solong board computer tulad ng Raspberry Pi.

Gumagamit ito ng dalas ng 2.4 GHz na kung saan ay ISM band (Industrial, Scientific at Medical band) ito ang parehong dalas na ginamit sa komunikasyon sa Wi-Fi.

Maaari itong magpadala o makatanggap ng data sa rate na 2Mbps, ngunit sa proyektong ito ang paghahatid at pagtanggap ay limitado sa 250 Kbps dahil sa mas mababang mga kinakailangan ng data at pagbaba ng rate ng data ay magreresulta sa tumaas na pangkalahatang saklaw.

Gumagamit lamang ito ng 12.3 mA sa rurok na paghahatid ng data na gumagawa ng aparatong madaling gamitin ng baterya. Gumagamit ito ng SPI protocol para sa pakikipag-usap sa microcontroller.

Mayroon itong saklaw ng paghahatid / pagtanggap ng 100 metro na walang balakid sa pagitan at halos 30 metro na saklaw na may ilang balakid.

Mahahanap mo ang modyul na ito sa mga tanyag na site ng e-commerce, din sa iyong lokal na tindahan ng electronics.

Tandaan: Ang module ay maaaring gumana mula 1.9 hanggang 3.6V, ang on board regulator sa Arduino ay maaaring magbigay ng 3.3V para sa module. Kung ikokonekta mo ang VR terminal ng nRF24L01 sa 5V ng output ng Arduino, magreresulta ito sa hindi paggana ng module. Kaya't dapat mag-ingat.

Iyon ang maikling pagpapakilala sa modyul na nRF24L01.

Suriin natin ang mga detalye ng diagram ng circuit:

Ang Remote Control Circuit:

Ang Remote ay makakasama ang boss o ang pinuno ng opisina.

tawagan ang circuit ng remote control ng kampanilya

Ang remote ay binubuo ng Arduino nano sa pamamagitan ng paraan na maaari mong gamitin ang anumang board ng Arduino, 6 mga pindutan ng push para sa pag-ring ng anim na magkakaibang mga tatanggap, nRF24L01 module at isang LED para sa pagkilala sa pagpindot ng isang pindutan.

Maaari mo itong paganahin gamit ang 9V na baterya o mula sa 5V adapter. Sa kaso ng baterya dapat mong patayin ang remote na ito pagkatapos ng iyong tawag.

Tingnan natin ang code. Bago ito kailangan mong i-download ang file ng library lamang pagkatapos ang code ay nai-ipon.

Link: github.com/nRF24/RF24.git

Code para sa Remote:

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

Tinatapos nito ang remote / transmitter.

Ngayon tingnan natin ang tatanggap.

Ang Receiver Circuit:

TANDAAN: Maaari kang gumawa ng isang tatanggap o anim na tatanggap depende sa iyong mga pangangailangan.

Ang tatanggap ay binubuo ng Arduino board, nRF24L01 module at isang buzzer. Hindi tulad ng remote, ang tagatanggap ay dapat na pinalakas mula sa 5V adapter, upang hindi ka nakasalalay sa mga baterya na maubos sa loob ng ilang araw.

tawagan ang circuit ng Remote Receiver

Ngayon tingnan natin ang code para sa tatanggap:

Program Code para sa Tumatanggap

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

TANDAAN:

Kung magtatayo ka ng higit sa isang tatanggap para sa system ng bell ng tawag sa tanggapan na ito, dapat mong baguhin ang nabanggit na halaga sa sunud-sunod na pagbuo ng tagatanggap at i-upload ang code.

Para sa unang tatanggap (hindi na kailangang baguhin ang anuman):

// ------- Baguhin ito ------- //
const byte address [6] = '00001' at i-upload ang code.
// ------------- ------------ //

Para sa pangalawang tatanggap (Kailangan mong baguhin):
const byte address [6] = '00002' at i-upload ang code.

Para sa pangatlong tatanggap (Kailangan mong baguhin):
const byte address [6] = '00003' at i-upload ang code.

At iba pa …… .. hanggang sa “00006” o ang ika-anim na tatanggap.

Kapag pinindot mo ang 'S1' sa remote, ang tatanggap na may address na '00001' ay tutugon / buzz.

Kapag pinindot mo ang 'S2' sa remote, ang tatanggap na may address na '00002' ay tutugon / buzz.
At iba pa……

Tinapos nito ang mga detalye ng circuit ng tatanggap.

Kung mayroon kang higit pang mga katanungan, mangyaring huwag mag-atubiling ipahayag ang mga ito sa seksyon ng komento, susubukan naming bumalik sa iyo sa lalong madaling panahon sa isang tugon




Nakaraan: Remote Control Tester Circuit Susunod: Paano Gumawa ng Simpleng Boost Converter Circuits