- ส่วนประกอบที่จำเป็น
- ล็อคโซลินอยด์
- โมดูลบลูทู ธ HC-05
- แผนภาพวงจรสำหรับล็อคโซลินอยด์ที่ควบคุมด้วยบลูทู ธ
- โปรแกรม Arduino เพื่อควบคุม Solenoid Lock ตามข้อมูลลายนิ้วมือ
- แอพ Android สำหรับอ่านข้อมูลลายนิ้วมือและส่งไปยัง Arduino ผ่านบลูทู ธ
- ปลอกพิมพ์ 3 มิติสำหรับล็อคแบบไบโอเมตริกซ์
- การทดสอบการล็อคลายนิ้วมือที่ควบคุมด้วย Arduino ของเรา
ขณะนี้ทั้งโลกกำลังตกอยู่ในความเข้าใจของ COVID 19 และทุกคนต่างก็ใช้ความระมัดระวังทุกที่ที่ทำได้เพื่อป้องกันไม่ให้ตัวเองติดโรคร้ายแรงนี้ด้วยการติดตามการห่างเหินทางสังคมสวมหน้ากากอนามัยการทำธุรกรรมแบบไม่ใช้เงินสดและหลีกเลี่ยงการสัมผัสสิ่งใด ๆ เพื่อป้องกันการแพร่กระจายของเชื้อโรค ด้วยการถือกำเนิดของเทคโนโลยีการล็อคแบบปกติได้กลายเป็นสิ่งที่ผ่านมาและการล็อกแบบไบโอเมตริกซ์แบบใหม่และการล็อกแบบ RFID กำลังกลายเป็นกระแสหลักมากขึ้นเรื่อย ๆ ระบบล็อคแบบใช้ลายนิ้วมือและอุปกรณ์บันทึกการเข้างานก็ถูกใช้ในสำนักงานและวิทยาลัยส่วนใหญ่เช่นกัน แต่ในปัจจุบันไม่แนะนำให้ทำเช่นนั้นเนื่องจากการระบาดของโรคนี้ดังนั้นเราจะสร้างล็อคประตูโดยใช้ตัวล็อคและตัวควบคุมโซลินอยด์โดยใช้แอพ Android ผ่านบลูทู ธเพื่อที่เราจะได้ไม่ต้องสัมผัสเซ็นเซอร์ลายนิ้วมือเลยเพียงแค่ใช้โทรศัพท์ของคุณเองเพื่อควบคุมการล็อก มาเริ่มกันเลย
ส่วนประกอบที่จำเป็น
- 1 × Arduino นาโน
- 1 × HC-05 โมดูลบลูทู ธ
- 1 ×โซลินอยด์ล็อค
- 1 × Piezoelectric Buzzer
- 1 × LED สีแดง 5 มม
- 1 × LED สีเขียว 5 มม
- 1 × IRF540N N-Channel MOSFET
- 1 × BC547 NPN ทรานซิสเตอร์
- ตัวต้านทาน: 1 ×550Ω, 1 ×2k0Ω, 1 ×220Ω
- 1 × 7805 ตัวควบคุมแรงดันไฟฟ้า
- คู่ขั้วต่อแจ็ค 1 × DC
- Perfboard
ล็อคโซลินอยด์
ในล็อคประตูแบบธรรมดามีกุญแจสำหรับดึงหรือดันสลักและเราต้องใช้งานด้วยตนเอง แต่ในการล็อกโซลินอยด์สลักสามารถทำงานได้โดยอัตโนมัติโดยใช้แรงดันไฟฟ้าที่ขดลวดโซลินอยด์ซึ่งจะควบคุมสลัก อยู่ในล็อค
ล็อคโซลินอยด์มีขดลวดโซลินอยด์แรงดันต่ำที่ดึงสลักกลับเข้าไปในประตูเมื่อใช้แรงดันไฟฟ้าที่เหมาะสมกับมันและจะยังคงเปิดอยู่จนกว่าแรงดันไฟฟ้าจะถูกลบออก ดังนั้นคุณสามารถควบคุมการทำงานได้โดยการควบคุมแรงดันไฟฟ้าที่กำหนดโดยใช้ปุ่มกดรีเลย์ไมโครคอนโทรลเลอร์และอื่น ๆ ล็อคประตูโซลินอยด์ส่วนใหญ่จะใช้ในพื้นที่ห่างไกลเพื่อให้การทำงานเป็นไปโดยอัตโนมัติโดยไม่ต้องใช้ความพยายามของมนุษย์
โมดูลบลูทู ธ HC-05
HC-05 ใช้เพื่อให้การเชื่อมต่อไร้สายกับโครงการของคุณเพื่อให้คุณสามารถสื่อสารกับไมโครคอนโทรลเลอร์อื่น ๆ หรือโทรศัพท์มือถือและแล็ปท็อปของคุณ คุณสามารถควบคุมการส่งและรับข้อมูลได้อย่างง่ายดายโดยใช้แอพพลิเคชั่น Android ง่ายๆที่คุณสามารถทำเอง มีสองโหมดโหมดข้อมูลแรกที่ใช้ในการถ่ายโอนข้อมูลเข้าและออกจากอุปกรณ์บลูทู ธ และโหมดที่สองคือโหมดคำสั่ง ATซึ่งใช้ในการกำหนดค่าโมดูลบลูทู ธ ของคุณ มันสื่อสารโดยใช้การสื่อสาร USART ที่อัตรารับส่งข้อมูล 9600 เพื่อให้คุณสามารถเชื่อมต่อกับไมโครคอนโทรลเลอร์ที่รองรับการสื่อสาร USART และสามารถเชื่อมต่อกับพอร์ต Serial ที่มีอยู่บนบอร์ดได้อย่างง่ายดาย โปรดทราบว่าคุณต้องจ่ายไฟให้อุปกรณ์ด้วยแหล่งจ่ายไฟ 5V และเชื่อมต่อพิน TX เข้ากับพิน RX ของไมโครคอนโทรลเลอร์และพิน RX เข้ากับพิน TX ของไมโครคอนโทรลเลอร์ คุณสามารถใช้ในแอปพลิเคชันระบบอัตโนมัติและแอปพลิเคชันไร้สายในการบันทึกข้อมูลและหุ่นยนต์
แผนภาพวงจรสำหรับล็อคโซลินอยด์ที่ควบคุมด้วยบลูทู ธ
แผนภาพวงจรทั้งหมดที่แสดงวิธีการเชื่อมต่อและควบคุมโซลินอยด์ล็อคกับ Arduino ผ่าน MOSFET แสดงไว้ด้านล่าง
ดังที่แสดงในแผนภาพวงจรการเชื่อมต่อนั้นค่อนข้างง่ายคุณต้องเชื่อมต่อโมดูลบลูทู ธ HC-05 กับนาโนโดยเปิดอุปกรณ์ด้วยแหล่งจ่ายไฟ 5V และเชื่อมต่อพิน TX เข้ากับพิน RX ของไมโครคอนโทรลเลอร์และพิน RX เข้ากับ TX พินของไมโครคอนโทรลเลอร์ คุณต้องเพิ่ม LED สีแดงเพื่อแสดงสถานะพลังงานของ Arduino nano และ LED สีเขียวเพื่อแสดงว่าประตูถูกปลดล็อกหรือไม่ คุณต้องเชื่อมต่อกริ่งด้วย แผนผังการเชื่อมต่อยังแสดงอยู่ด้านล่างเพื่อให้เข้าใจง่าย
ในการควบคุมโซลินอยด์ล็อคคุณต้องใช้วงจรควบคุมที่ประกอบด้วยทรานซิสเตอร์ NPN และ MOSFET ช่อง N เราจะควบคุมทรานซิสเตอร์ NPN โดยการต่อขา D9 ของนาโนเข้ากับขาฐานของทรานซิสเตอร์ผ่านตัวต้านทาน 550 โอห์มเพื่อควบคุมกระแสที่ไหลเข้าทรานซิสเตอร์ เมื่อดึงขา D9 สูงทรานซิสเตอร์จะเปิดอยู่และขาเกตของ MOSFET จะถูกดึงไปที่พื้นโดยปิด MOSFET เพื่อปิดการล็อคโซลินอยด์และเมื่อขา D9 อยู่ต่ำทรานซิสเตอร์ NPN จะดับซึ่ง หมายความว่า GATE ของ MOSFET ถูกดึงไปที่ 12V โดยใช้ตัวต้านทานแบบดึงขึ้น 2kOhm เพื่อเปิด MOSFET และเปิดสวิตช์โซลินอยด์ล็อค ด้วยวิธีนี้คุณสามารถควบคุม Solenoid lock โดยใช้ 5V Arduino Nano ของคุณ คุณไม่สามารถควบคุม IRF540N MOSFET ได้โดยตรงด้วยหมุด 5V จาก Nano เนื่องจากไม่ใช่ MOSFET ระดับลอจิกจึงได้รับรางวัล 't เปิดหรือปิดอย่างเต็มที่ด้วย 5V จากนาโนดังนั้นเราจะใช้ทรานซิสเตอร์ BC547 NPN เพื่อควบคุม MOSFET
ฉันได้บัดกรีวงจรทั้งหมดบนบอร์ด perf เพื่อให้มีขนาดกะทัดรัด แนวคิดคือการออกแบบปลอกพิมพ์ 3 มิติสำหรับล็อคของเราเพื่อให้สามารถติดตั้งและใช้งานได้ง่าย
โปรแกรม Arduino เพื่อควบคุม Solenoid Lock ตามข้อมูลลายนิ้วมือ
เราจะเขียนโค้ดบน Arduino IDE อย่างเป็นทางการหากคุณไม่มี IDE คุณต้องดาวน์โหลดจากเว็บไซต์ Arduino อย่างเป็นทางการ เราเริ่มต้นรหัสโดยการประกาศตัวแปรที่เราจะใช้ในรหัสเพื่อควบคุมอุปกรณ์ต่อพ่วงเช่นเสียงกริ่งและไฟ led รวมถึงควบคุมการล็อกโซลินอยด์โดยการควบคุมทรานซิสเตอร์
ค่า int1; #define led 12 #define bjt 9 #define buzzer 7
มาถึงส่วนการตั้งค่าของ Arduino ก่อนอื่นเราจะเริ่มต้นการสื่อสารแบบอนุกรมของ Arduino ที่อัตราการส่งข้อมูล 9600 เนื่องจากเราใช้พินฮาร์ดแวร์ของ Arduino สำหรับการสื่อสารแบบอนุกรมดังนั้นเราจึงไม่จำเป็นต้องใช้ซอฟต์แวร์อนุกรมในโครงการ ตอนนี้เราต้องประกาศพินที่เราใช้เป็นเอาต์พุตหรืออินพุตและกำหนดเงื่อนไขเริ่มต้น
Serial.begin (9600); PinMode (bjt, เอาท์พุท); PinMode (นำ, เอาท์พุท); pinMode (เสียงกริ่งเอาท์พุท); digitalWrite (bjt, สูง); digitalWrite (led, LOW);
ตอนนี้ในฟังก์ชันลูปของรหัสเราจะอ่านข้อมูลที่มาจากโมดูลบลูทู ธ HC-05 แบบอนุกรมและตรวจสอบว่าตรงกับคำสั่งล็อกหรือปลดล็อกหรือไม่ ในตรรกะโปรแกรมของเราหากจดจำลายนิ้วมือได้อย่างถูกต้องโมดูลบลูทู ธ จะส่งค่า“ 1” และหากไม่รู้จักลายนิ้วมือโมดูลบลูทู ธ จะส่งค่า“ 0” หากค่าที่อ่านโดย Nano คือ“ 1” ประตูจะถูกปลดล็อกและเสียงกริ่งจะดังขึ้นหนึ่งวินาทีและประตูจะยังคงปลดล็อกเป็นเวลา 7 วินาที หลังจากนั้นประตูจะถูกล็อคอีกครั้ง หากค่าที่อ่านได้คือ“ 0” ซึ่งหมายความว่าไม่รู้จักลายนิ้วมือดังนั้นเสียงสัญญาณเตือนจะส่งเสียงเตือนสามครั้งต่อวินาทีเพื่อแจ้งเตือนความปลอดภัย
Serial.println ("การอ่าน"); ในขณะที่ (Serial.available () == 0); value1 = Serial.read (); Serial.println (ค่า 1); ถ้า (value1 == 1) {Serial.println ("Unlocking"); digitalWrite (bjt, LOW); digitalWrite (กริ่งสูง); digitalWrite (นำสูง); ล่าช้า (1,000); digitalWrite (เสียงกริ่งต่ำ); ล่าช้า (6000); digitalWrite (bjt, สูง); digitalWrite (led, LOW); } if (value1 == 0) {digitalWrite (bjt, HIGH); digitalWrite (กริ่งสูง); Serial.println ("การล็อก"); ล่าช้า (1,000); digitalWrite (เสียงกริ่งต่ำ); ล่าช้า (1,000); digitalWrite (กริ่งสูง); ล่าช้า (1,000); digitalWrite (เสียงกริ่งต่ำ); ล่าช้า (1,000); digitalWrite (กริ่งสูง); ล่าช้า (1,000); digitalWrite (เสียงกริ่งต่ำ); }
แอพ Android สำหรับอ่านข้อมูลลายนิ้วมือและส่งไปยัง Arduino ผ่านบลูทู ธ
แอปสำหรับโครงการนี้ได้รับการออกแบบโดยใช้นักประดิษฐ์แอป Kodular การสร้างแอปโดยใช้ Kodular นั้นง่ายมาก คุณสามารถสร้างแอปโดยการรวมบล็อกตามผังงานของโครงการของคุณ
ในการสร้างแอปด้วย Kodular ให้ไปที่ Kodular.io และสร้างบัญชีหากคุณไม่มีเข้าสู่ระบบบัญชีของคุณจากนั้นคลิกที่ ตัวเลือก' สร้างแอป'
หลังจากนั้นคุณจะเข้าสู่หน้าจอโปรเจ็กต์ คลิกที่ปุ่ม ' สร้างโครงการ' เพื่อสร้างโครงการ
ตั้งชื่อแอปแล้วคลิก ' เสร็จสิ้น ' โปรเจ็กต์จะถูกสร้างขึ้นและคุณจะถูกนำไปที่ เพจนักออกแบบของโปรเจ็กต์ ตอนนี้ในหน้านักออกแบบให้เพิ่มส่วนประกอบทั้งสี่นี้จาก Components Palette เพื่อสร้างเค้าโครงสำหรับแอป: ไคลเอนต์บลูทู ธ ลายนิ้วมือตัวเลือกรายการ และ ปุ่มรูปภาพ เครื่องมือเลือกรายการและปุ่มสามารถพบได้ใน ' ส่วนต่อประสานผู้ใช้' ในขณะที่ลายนิ้วมือและบลูทู ธ สามารถเลือกได้จาก ' เซนเซอร์ ' และ 'การ เชื่อมต่อ '
คุณสมบัติของหน้าจอสามารถเปลี่ยนแปลงได้โดยการเปลี่ยนคุณสมบัติของแต่ละบล็อก
หลังจากนั้นย้ายไปที่หน้าจอ " บล็อก " เพื่อสร้างแอปโดยใช้บล็อก
ตอนนี้เลื่อนลงคลิกที่ ' List_Picker1' แล้วลากและวางบล็อกรหัสแรกดังที่แสดงในภาพ:
ในขั้นตอนต่อไปให้คลิกที่ บล็อก 'Control' จากนั้นลากและวางโค้ดบล็อกแรกบนหน้าจอ Viewer
หลังจากนั้นไปที่ บล็อก "Bluetooth_client1" และเลือก บล็อกรหัส "Bluetooth_client.connect"
จากนั้นไปที่ บล็อก 'List_Picker' และเลือก ' บล็อกรหัสการเลือก' ดังที่แสดงในภาพด้านล่าง
ในขั้นตอนต่อไปให้ไปที่ บล็อก 'List_Picker' อีกครั้งและเลือก ' List_Picker ข้อความถึง ' โค้ดบล็อกดังที่แสดงในภาพด้านล่าง
หลังจากนั้นไปที่ บล็อก "ข้อความ" และเลือกบล็อกรหัสแรก
ด้วยสิ่งนี้บล็อกรหัสแรกจะเสร็จสิ้น เราจำเป็นต้องสร้างบล็อกรหัสอีกสามบล็อกเพื่อเรียกเซ็นเซอร์ลายนิ้วมือของโทรศัพท์ Android และตรวจสอบลายนิ้วมือ บล็อกรหัสที่สมบูรณ์จะแสดงในภาพด้านล่าง ใช้รูปภาพนี้เพื่อเข้าร่วมส่วนที่เหลือของบล็อกโค้ด
เมื่อเชื่อมต่อบล็อกทั้งหมดแล้วให้ส่งออก ไฟล์. apk บนแล็ปท็อปของคุณหรือคุณสามารถส่งออก apk ไปยังโทรศัพท์ของคุณโดยตรงโดยใช้รหัส QR .aia และ .apk ไฟล์ของ app นี้สามารถดาวน์โหลดได้จากลิงค์ด้านล่าง
- ดาวน์โหลดแอปพลิเคชั่น Android เพื่อควบคุมโซลินอยด์ล็อคผ่าน Arduino
ปลอกพิมพ์ 3 มิติสำหรับล็อคแบบไบโอเมตริกซ์
ดังที่ได้กล่าวไว้ก่อนหน้านี้เราได้สร้างแบบจำลอง 3 มิติเพื่อประกอบบอร์ด perf และโซลินอยด์ล็อคเข้ากับปลอกเล็ก ๆ ที่เป็นระเบียบ แบบจำลองที่วางบนซอฟต์แวร์การแบ่งส่วนแสดงไว้ด้านล่าง
หากคุณใช้บอร์ด perf ขนาดเดียวกันและล็อคโซลินอยด์คุณสามารถพิมพ์ปลอกเดียวกันโดยใช้ไฟล์ STL ที่ระบุด้านล่าง คุณยังสามารถตรวจสอบโครงการการพิมพ์ 3 มิติอื่น ๆ ที่เราสร้างไว้ก่อนหน้านี้
STL สำหรับ Solenoid Lock Casing
การทดสอบการล็อคลายนิ้วมือที่ควบคุมด้วย Arduino ของเรา
ขั้นแรกคุณต้องดาวน์โหลดและติดตั้ง ไฟล์. apk บนโทรศัพท์ของคุณเพื่อควบคุมการล็อก คุณต้องอัปโหลดโค้ดทั้งหมดบน Arduino Nano ของคุณ แต่ต้องแน่ใจว่าคุณได้ลบพิน TX และ RX ออกจากนาโนก่อนที่คุณจะอัปโหลดโค้ด หลังจากอัปโหลดเสร็จแล้วให้ติดตั้งตัวล็อกจากนั้นเปิด Bluetooth บนโทรศัพท์มือถือของคุณและจับคู่กับอุปกรณ์ Bluetooth ที่คุณใช้และเปิดแอป ตอนนี้แตะที่ไอคอนบลูทู ธ บนแอพและเชื่อมต่อกับอุปกรณ์บลูทู ธ และไอคอนบลูทู ธ บนแอพจะเปลี่ยนเป็นไอคอนล็อค ตอนนี้คุณต้องแตะที่ไอคอนลายนิ้วมือเพื่อตรวจสอบลายนิ้วมือโดยใช้เครื่องสแกนลายนิ้วมือของโทรศัพท์และค่าจะถูกส่งไปยัง Arduino Nano
โครงการนี้เป็นเพียงการสาธิตขั้นพื้นฐานเกี่ยวกับสิ่งต่างๆที่คุณสามารถทำได้ด้วยโมดูลบลูทู ธ ที่เชื่อมต่อกับโทรศัพท์ของคุณ คุณสามารถสร้างหุ่นยนต์ที่ใช้งานได้ทั้งหมดลงทะเบียนการเข้างานอุปกรณ์อัตโนมัติในบ้านที่ควบคุมด้วยแอป ฯลฯ และรายการก็ขึ้นอยู่กับจินตนาการของคุณ คุณยังสามารถแสดงอินเทอร์เฟซเพื่อแสดงชื่อของบุคคลที่เข้ามาในสถานที่หรือเพิ่มกล้องเพื่อคลิกรูปภาพของบุคคลเพื่อความปลอดภัย ลองทำสิ่งนี้ด้วยตัวคุณเองทำการเปลี่ยนแปลงและหากคุณติดอยู่ที่ไหนสักแห่งเพียงแจ้งให้เราทราบในส่วนความคิดเห็นแล้วเราจะช่วยคุณเอง ขอขอบคุณอีกครั้งและขอให้เป็นวันที่ดี