Wireless Office Call Bell Circuit

ลองใช้เครื่องมือของเราเพื่อกำจัดปัญหา





ในโพสต์นี้เราจะสร้างกระดิ่งเรียกสำนักงานแบบไร้สายซึ่งสามารถใช้สำหรับโทรหาบุคลากร 6 คนจากโต๊ะทำงานของหัวหน้า / หัวหน้าหรือโครงการสนุก ๆ ประเภทกระดิ่งเรียกอื่น ๆ สำหรับบ้านของคุณ

ใช้โมดูล nRF24L01 2.4 GHz

เราจะสร้างกระดิ่งโทรแบบไร้สายอย่างง่ายโดยใช้ Arduino และโมดูล nRF24L01 2.4 GHz ซึ่งสามารถทำงานได้ทั่วบ้านหรือที่ทำงานของคุณโดยไม่มีอาการสะอึกหรือปัญหาด้านการรายงานข่าว



วงจรที่เสนอสามารถใช้พลังงานจากอะแดปเตอร์สมาร์ทโฟน 5V หรืออะแดปเตอร์ 5V ราคาไม่แพงซึ่งช่วยให้วงจรของคุณมีชีวิตชีวาและพร้อมที่จะรับฟังการโทรของคุณ

มาดูภาพรวมของ nRF24L01 โมดูล 2.4 GHz .



ชิปด้านบนเรียกว่าโมดูล nRF24L01 เป็นแผงวงจรสื่อสารแบบดูเพล็กซ์ (สองทิศทาง) ที่ออกแบบมาสำหรับไมโครคอนโทรลเลอร์และคอมพิวเตอร์บอร์ดเดียวเช่น Raspberry Pi

ใช้ความถี่ 2.4 GHz ซึ่งเป็นแบนด์ ISM (แบนด์อุตสาหกรรมวิทยาศาสตร์และการแพทย์) เป็นความถี่เดียวกับที่ใช้ในการสื่อสาร Wi-Fi

สามารถส่งหรือรับข้อมูลที่อัตรา 2Mbps แต่ในโครงการนี้การรับส่งข้อมูล จำกัด ไว้ที่ 250 Kbps เนื่องจากความต้องการข้อมูลที่ต่ำลงและการลดอัตราข้อมูลจะทำให้ช่วงโดยรวมเพิ่มขึ้น

ใช้พลังงานเพียง 12.3 mA ที่การรับส่งข้อมูลสูงสุดซึ่งทำให้อุปกรณ์เป็นมิตรกับแบตเตอรี่ ใช้โปรโตคอล SPI สำหรับการสื่อสารกับไมโครคอนโทรลเลอร์

มีระยะการส่ง / รับ 100 เมตรโดยไม่มีสิ่งกีดขวางระหว่างและประมาณ 30 เมตรโดยมีสิ่งกีดขวางบางอย่าง

คุณสามารถหาโมดูลนี้ได้ในเว็บไซต์อีคอมเมิร์ซยอดนิยมรวมถึงร้านขายเครื่องใช้ไฟฟ้าในพื้นที่ของคุณ

หมายเหตุ: โมดูลสามารถทำงานได้ตั้งแต่ 1.9 ถึง 3.6V ตัวควบคุมออนบอร์ดบน Arduino สามารถให้ 3.3V สำหรับโมดูล หากคุณเชื่อมต่อเทอร์มินัล Vcc ของ nRF24L01 กับ 5V ของเอาต์พุตของ Arduino สิ่งนี้จะส่งผลให้โมดูลทำงานผิดปกติ ดังนั้นต้องใช้ความระมัดระวัง

นั่นคือคำแนะนำสั้น ๆ เกี่ยวกับโมดูล nRF24L01

มาตรวจสอบรายละเอียดของแผนภาพวงจร:

วงจรควบคุมระยะไกล:

รีโมทจะอยู่กับเจ้านายหรือหัวหน้าสำนักงาน

วงจรควบคุมระยะไกลกระดิ่ง

รีโมทประกอบด้วย Arduino nano โดยวิธีที่คุณสามารถใช้บอร์ด Arduino ใดก็ได้ปุ่มกด 6 ปุ่มสำหรับเรียกเข้าเครื่องรับหกตัวโมดูล nRF24L01 และ LED สำหรับรับทราบการกดปุ่ม

คุณสามารถจ่ายไฟโดยใช้แบตเตอรี่ 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 -------//

บันทึก:

หากคุณกำลังจะสร้างเครื่องรับมากกว่าหนึ่งเครื่องสำหรับระบบกระดิ่งสายสำนักงานนี้คุณควรเปลี่ยนค่าที่กล่าวถึงในการสร้างผู้รับต่อเนื่องและอัปโหลดรหัส

สำหรับผู้รับแรก (ไม่จำเป็นต้องเปลี่ยนแปลงอะไร):

// ------- เปลี่ยนสิ่งนี้ ------- //
const byte address [6] = '00001' และอัปโหลดรหัส
// ------------- ------------ //

สำหรับเครื่องรับตัวที่สอง (คุณต้องเปลี่ยน):
const byte address [6] = '00002' และอัปโหลดรหัส

สำหรับผู้รับที่สาม (คุณต้องเปลี่ยน):
const byte address [6] = '00003' และอัปโหลดรหัส

ไปเรื่อย ๆ …… .. ถึง“ 00006” หรือตัวรับที่หก

เมื่อคุณกด“ S1” บนรีโมทเครื่องรับที่มีที่อยู่“ 00001” จะตอบสนอง / ส่งเสียงดัง

เมื่อคุณกด“ S2” บนรีโมทเครื่องรับที่มีที่อยู่“ 00002” จะตอบสนอง / ส่งเสียงดัง
ไปเรื่อย ๆ ……

สรุปรายละเอียดวงจรรับสัญญาณ

หากคุณมีคำถามเพิ่มเติมโปรดอย่าลังเลที่จะแสดงความคิดเห็นในส่วนความคิดเห็นเราจะพยายามติดต่อกลับโดยเร็วที่สุดพร้อมคำตอบ




คู่ของ: วงจรทดสอบการควบคุมระยะไกล ถัดไป: วิธีสร้างวงจร Boost Converter อย่างง่าย