สารบัญ:

ตู้จดหมายและประตูโรงรถ: 5 ขั้นตอน (พร้อมรูปภาพ)
ตู้จดหมายและประตูโรงรถ: 5 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: ตู้จดหมายและประตูโรงรถ: 5 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: ตู้จดหมายและประตูโรงรถ: 5 ขั้นตอน (พร้อมรูปภาพ)
วีดีโอ: ประตูโรงรถ | Garage Door | OZDOOR 2024, กรกฎาคม
Anonim
ตู้จดหมายและประตูโรงรถ
ตู้จดหมายและประตูโรงรถ

คำแนะนำนี้อ้างอิงจากตัวแจ้งเตือนกล่องจดหมาย Johan Moberg เมื่อเปรียบเทียบกับโครงการนี้ ฉันได้ทำการเปลี่ยนแปลงบางอย่าง:

  1. ที่ไกลจากบ้านไม่ได้มีแค่ตู้ไปรษณีย์แต่ยังมีโรงจอดรถด้วย อยู่ในที่เดียวติดถนนและบ้านอยู่ในที่ดินประมาณ 50 เมตร เนื่องจากตัวควบคุมโรงรถระยะไกลที่มีความละเอียดอ่อนมาก จึงเกิดขึ้นสองสามครั้ง ประตูโรงรถถูกเปิดโดยไม่ได้ตั้งใจ ตอนนี้อยากทราบว่าประตูโรงรถปิดหรือเปล่า ดังนั้นฉันจึงขยายโครงการเดิมสำหรับการติดต่ออีกครั้งหนึ่งคือหน้าสัมผัสประตูโรงรถ
  2. MCU (หน่วยควบคุมไมโครโปรเซสเซอร์) ในตัวส่งยังคงเป็น Attiny-85 ซึ่งมีความสำคัญต่อการใช้พลังงานต่ำ มีพินดิจิทัลไม่เพียงพอ (ฉันไม่ชอบใช้รีเซ็ตพิน) และฉันแก้ปัญหาด้วยวิธีแก้ปัญหาฮาร์ดแวร์อย่างง่าย
  3. ตัวบ่งชี้ตัวรับทำได้โดยสัญญาณออปติคัลและอะคูสติก สัญญาณออปติคัลทำด้วยไฟ LED และสำหรับเสียงมีการเพิ่มวงจรการผลิตเพลง MCU (หน่วยควบคุมไมโครโปรเซสเซอร์) ในตัวส่งมีการเปลี่ยนแปลงและเป็น Arduino Nano เดิมทีฉันต้องการใช้ Attiny-85 แต่การขาดพินฟรีอีกหนึ่งอันเป็นอุปสรรคใหญ่ ไม่มีวิธีแก้ปัญหาฮาร์ดแวร์ง่ายๆ
  4. มีการเปลี่ยนแปลงเล็กน้อยในซอฟต์แวร์ Arduino เพื่อรักษาเหนือการดัดแปลงฮาร์ดแวร์
  5. การสื่อสารแบบไร้สายฮาล์ฟดูเพล็กซ์จะทำงานได้ดีหากทั้งสองหน่วย (ผู้ส่งและผู้รับ) กำลังทำงาน แต่ถ้าเครื่องใดเครื่องหนึ่งไม่ทำงาน (เช่น แบตเตอรีเหลือน้อย และอื่นๆ) หน่วยอื่นจะยังทำงานต่อไปและแสร้งทำเป็นเป็นการสื่อสาร (เครื่องรับ) ในกรณีเช่นนี้ การสื่อสารจะถูกขัดจังหวะแม้ว่าข้อผิดพลาดจะได้รับการแก้ไขในไซต์ใดก็ตาม วิธีแก้ไข: ควรสร้างการสื่อสารใหม่ ด้วยเหตุนี้จึงมีการเพิ่มวงจรรีเซ็ตในตัวส่งพร้อมตัวบ่งชี้

คำอธิบาย

โครงการประกอบด้วยสองส่วน: ผู้ส่งและผู้รับ ผู้ส่งที่อยู่บริเวณโรงรถจะตรวจจับสัญญาณจากหน้าสัมผัสกล่องจดหมายและหน้าสัมผัสเปิดประตูโรงรถ หากมีการเปิดใช้งานผู้ติดต่อเหล่านี้ เครื่องส่งสัญญาณ HC12 จะส่งสัญญาณไร้สายไปยังเครื่องรับ บนเครื่องรับจะแสดงสถานะ "ปลุก" เช่น "จดหมายมาถึง" หรือ "ประตูโรงรถเปิด" โดยกะพริบไฟ LED ที่เกี่ยวข้องและเล่นเพลง โดยการรีเซ็ตปุ่มกดบนเครื่องรับ อาจเป็นสัญญาณที่ยกเลิกและเริ่มสถานะใหม่ของการรอการเตือน

ระยะทางสูงสุด

โมดูลการสื่อสาร HC-12 ใช้สำหรับระยะทาง 1.8 กม. แต่ค่านี้เป็นค่าทางทฤษฎีและสามารถเข้าถึงได้ในที่โล่ง ช่วงสูงสุดของอาคารภายในจะสั้นลง ฉันมีปัญหาในการเข้าถึงระยะทางประมาณ 100 เมตรด้วยเสาอากาศแบบสายธรรมดา ในกรณีนี้ทั้งสองยูนิตถูกตั้งค่าเป็นช่วงสูงสุด - โหมด FU4 และอัตราบอด 1200 หน่วยหนึ่งอยู่ในอาคาร หลังกำแพงหนา 4 แห่ง มีการสร้างการเชื่อมต่อเสาอากาศ SMA แต่ไม่เสถียร ในกรณีนี้ ปัญหาได้รับการแก้ไขโดยการวางเครื่องรับสัญญาณไปยังห้องที่มุ่งไปยังที่ตั้งโรงรถ (เพียงผนังด้านเดียว)

ตามประสบการณ์ของฉัน ฉันแนะนำให้ใช้เสาอากาศ SMA กับสายต่อที่เหมาะสม สายเคเบิลนี้ควรตรงกับขั้วต่อทั้งสองด้าน (ขั้วต่อเสาอากาศ SMA และขั้วต่อ HC-12 Ipex)

ขั้นตอนที่ 1: ชิ้นส่วนและเครื่องมือ

มีชิ้นส่วนที่ใช้ดังต่อไปนี้:

ลิงค์มีไว้สำหรับชิ้นส่วนทั่วไปน้อยกว่า

ผู้ส่ง:

  • Attiny-85, ebay
  • HC-12, อีเบย์
  • ตัวต้านทาน 68, 150, 1k, 10k
  • ไดโอด Schottky SR240, ebay
  • ไดโอดสากล 1N589 หรือ 1N4148
  • เทอร์มินัลบล็อก banggood
  • เสาอากาศ SMA อีเบย์
  • ตัวเก็บประจุ 1000M
  • ทรานซิสเตอร์ NPN, S9013, 2N2222 หรือที่คล้ายกัน
  • ที่ใส่แบตเตอรี่ AA (3 ชิ้น) และแบตเตอรี่
  • สลับ Micro C + NO + NC เพื่อรีเซ็ต
  • ไฟ LED 5 มม. สีน้ำเงิน
  • ติดต่อกกสำหรับสวิตช์ไปรษณีย์และประตูโรงรถ banggood
  • แม่เหล็ก banggood
  • ต้นแบบ PCB, banggood
  • ขั้วต่อ XH, banggood

ผู้รับ:

  • Arduino-นาโน banggood
  • HC-12, อีเบย์
  • ตัวปรับแรงดันไฟฟ้า 7805T
  • เมโลดี้ IC UM66
  • ทรานซิสเตอร์ NPN, S9013, 2N2222 หรือที่คล้ายกัน
  • ตัวต้านทาน 2x470, 10k
  • ทริมหม้อ 10k
  • ลำโพงขนาดเล็ก
  • สลับรีเซ็ต banggood
  • ไฟ LED 10 มม. สีเขียวและสีเหลือง
  • ไดโอดสากล 1N589 หรือ 1N4148
  • ตัวเก็บประจุ 2x10M, 1000M
  • อะแดปเตอร์หลัก 220V AC เป็น 5V DC
  • เสาอากาศ SMA
  • ขั้วต่อแจ็คสำหรับอะแดปเตอร์หลัก banggood
  • ไฟ LED 10 มม. 2 ชิ้น สีเขียวและสีเหลือง
  • ขั้วต่อ XH, banggood

เครื่องมือ:

  • บอร์ด Arduino-uno Rev3 สำหรับตั้งค่า HC-12 และตั้งโปรแกรม Attiny-85
  • หัวแร้ง
  • มัลติมิเตอร์
  • เขียงหั่นขนม

ขั้นตอนที่ 2: ผู้ส่ง

ผู้ส่ง
ผู้ส่ง
ผู้ส่ง
ผู้ส่ง

รูปแบบผู้ส่งอยู่ในภาพด้านบน

แบตเตอรี่เป็นประเภท AA สามก้อน การบริโภคสูงสุดของพวกเขาคือระหว่างการสื่อสารครั้งแรกที่เริ่มต้น (ประมาณ 100mA) พยายามทำให้เวลานี้สั้นลงที่สุด ในช่วงเวลารอการบริโภคต่ำมาก (น้อยกว่า 1ma) และในระหว่างการเตือน การบริโภคจะอยู่ที่ประมาณ 40mA ในช่วงเวลาสั้นๆ D1 ป้องกันวงจรจากแรงดันไฟเกิน หากแบตเตอรี่ยังใหม่

SW3, R1, C1 สร้างวงจรรีเซ็ต บ่งชี้สถานะหลังจากรีเซ็ตเป็น D4 สีน้ำเงินนำ ไฟ LED นี้ต้องสว่างหลังจากรีเซ็ตและระบุว่า: "ผู้ส่งพร้อมที่จะสร้างการเชื่อมต่อ" หากไฟ LED สีน้ำเงินติดสว่าง การสื่อสารสามารถเริ่มต้นได้โดยกดปุ่มรีเซ็ตบนเครื่องรับ

D2 และ D3 เป็นไดโอด Schottky ที่มีแรงดันไปข้างหน้าต่ำ เนื่องจากไดโอดนี้ สวิตช์ "เปิดประตูโรงรถ" กำลังใช้ซอฟต์แวร์ขัดจังหวะเดียวกัน เนื่องจากสวิตช์ "อีเมลมาถึง" ถ้า SW1 (เมล) เชื่อมต่อกับกราวด์ อินเตอร์รัปต์และการแจ้งเตือนสำหรับเมลจะเปิดใช้งาน หาก SW2 (โรงรถ) เชื่อมต่อกับกราวด์ การขัดจังหวะสำหรับเมลจะเปิดใช้งานพร้อมกับสัญญาณเตือนสำหรับโรงรถ วิธีนี้ได้รับการแก้ไขแล้วหนึ่งพินที่ขาดหายไปบน MCU

การบ่งชี้สัญญาณเตือนที่เหมาะสมทำได้โดยซอฟต์แวร์ โซลูชันฮาร์ดแวร์นี้อนุญาตให้ใช้การขัดจังหวะอย่างง่ายเพียงครั้งเดียว

คำอธิบายของ Attiny-85 และ HC-12 ทำได้ดีมากภายใน Johan Moberg Instructables ที่กล่าวถึง

ขั้นตอนที่ 3: ผู้รับ

ผู้รับ
ผู้รับ
ผู้รับ
ผู้รับ
ผู้รับ
ผู้รับ

ตัวรับใช้พลังงานจากไฟหลักโดยอะแดปเตอร์ 220V AC ถึง 5V DC อาจเป็นอะแดปเตอร์ขนาดเล็กที่มีกระแสไฟขาออก DC ประมาณ 0.3A เนื่องจากแรงดันไฟขาออกของอะแดปเตอร์ขึ้นอยู่กับกระแสไฟขาออก (มีแรงดันไฟฟ้าประมาณ 8V ที่มีกระแสไฟต่ำ) ฉันได้เพิ่มตัวควบคุมแรงดันไฟฟ้าแบบง่าย IC1 Diode D1 ลดแรงดันไฟฟ้าสำหรับ HC-12

Arduino Nano output D7 เชื่อมต่อแรงดันไฟฟ้าประมาณ 4V กับเครื่องกำเนิดเมโลดี้ IC2 ระหว่างสถานะการเตือน T1 ขยายสัญญาณไปยังลำโพง สามารถปรับระดับเสียงได้ด้วยตัวต้านทานปรับค่า R4 ฉันแนะนำให้ทิ้งรูไว้ที่ฝาครอบตัวรับเพื่อเข้าถึงตัวต้านทานนี้ D5 และ D6 เป็นเอาต์พุตสำหรับไฟ LED แจ้งเตือน พิน D3, D4 เชื่อมต่อกับ HC-12 และให้การสื่อสารแบบอนุกรม พิน D2 เป็นสถานะอินพุตและความรู้สึกของสวิตช์ "รีเซ็ต"

สวิตช์รีเซ็ตใช้สำหรับสองฟังก์ชั่น:

  1. เปิดใช้งานการเชื่อมต่อครั้งแรก หลังจากกดแล้ว การสื่อสารควรเริ่มต้นขึ้น
  2. หลังจากสร้างการเชื่อมต่อและเกิดสัญญาณเตือน ปุ่มรีเซ็ตสามารถรีเซ็ตการเตือนและเปลี่ยนสถานะตัวรับสัญญาณสำหรับ "รอ"

ไฟ LED แสดงสถานะดังต่อไปนี้:

  1. ไฟ LED ทั้งสองดวงติดสว่างและสว่างอย่างถาวร นี่เป็นสถานะเริ่มต้นหลังจากเปิดเครื่องรับแล้ว หากผู้ส่งพร้อม - ไฟ LED สีฟ้าที่ผู้ส่งเปิดอยู่ การเชื่อมต่อสามารถทำได้โดยกดปุ่มรีเซ็ตบนตัวรับสัญญาณ
  2. หลังจากเชื่อมต่อแล้ว ไฟ LED ทั้งสองดวงจะกะพริบสลับกันในช่วงเวลาประมาณ 2 วินาที
  3. ในกรณีของสัญญาณเตือน ไฟ LED ที่เกี่ยวข้องจะกะพริบในช่วงเวลาประมาณ 1 วินาที และไฟ LED อีกดวงจะมืด

ขั้นตอนที่ 4: ซอฟต์แวร์

ไฟล์ Arduino ino พร้อมซอฟต์แวร์ที่สมบูรณ์จะรวมอยู่ในขั้นตอนนี้

ควรโหลดซอฟต์แวร์สำหรับผู้ส่งไปที่ MCU Attiny-85 สำหรับการเขียนโปรแกรม Attiny ให้ใช้ซอฟต์แวร์ Arduino Uno และ Arduino IDE บนพีซี มีแบบฝึกหัดมากมายเกี่ยวกับวิธีการทำบนอินเทอร์เน็ต ฉันแนะนำตัวนี้ Attiny85 Programming. หลังจากโหลดโปรแกรมไปที่ Attiny แล้ว ให้เสียบชิปเข้ากับซ็อกเก็ตบนแผงวงจร Sender

การเขียนโปรแกรม Arduino Nano เหมือนกับการเขียนโปรแกรม Arduino Uno ใช้สาย USB และ Arduino IDE กับ Nano board ที่เลือกใน "Tools" และ "Board manager" ขั้นตอนนี้สามารถทำได้โดยเสียบบอร์ดเข้ากับบอร์ดขนมปัง หลังจากตั้งโปรแกรมให้วางบอร์ดนาโนเข้ากับซ็อกเก็ตบน PCB ตัวรับ

ทั้งสองหน่วย HC-12 ควรตั้งค่าเป็นพารามิเตอร์เดียวกันกับ Arduino Uno คำแนะนำอยู่ใน Instructables ดั้งเดิม

ขั้นตอนที่ 5: ฮาร์ดแวร์และการตั้งค่า

ฮาร์ดแวร์และการตั้งค่า
ฮาร์ดแวร์และการตั้งค่า

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

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

ผู้ส่ง

ชิ้นส่วนต่างๆ ถูกวางบน PCB ต้นแบบ ซึ่งถูกตัดให้มีขนาดเล็กลง บนบอร์ด มีช่องเสียบสำหรับโมดูล HC-12 และสำหรับ Attiny-85 ตัวเชื่อมต่อสำหรับแบตเตอรี่ และแผงขั้วต่อสำหรับหน้าสัมผัสสัญญาณเตือนทั้งสอง ด้านนอกของบอร์ดวางสวิตช์รีเซ็ต ไฟ LED สีน้ำเงินและเสาอากาศ SMA ส่วนประกอบอื่นๆ ทั้งหมดอยู่บน PCB ที่บัดกรีและเชื่อมต่อด้วยสายไฟที่ส่วนล่างของบอร์ด ที่ใส่แบตเตอรี่และ PCB ติดตั้งอยู่ภายในกล่องพลาสติก อาจเป็นกล่องพลาสติกที่มีขนาดเหมาะสม ฉันใช้กล่องรวมสัญญาณแบบกันชื้น กล่องติดตั้งอยู่ใต้หลังคาโรงรถและสายไฟผ่านท่อพลาสติก

ในภาพกล่องผู้ส่งมีบางส่วนซึ่งไม่ใช่หัวข้อของบทความนี้ ฉันเพิ่มอุปกรณ์อิเล็กทรอนิกส์เพิ่มเติมในกล่อง

ผู้รับ

ส่วนประกอบของเครื่องรับสามารถวางไว้ในกล่องอเนกประสงค์ใดก็ได้ ฉันเคยใช้กล่องพลาสติกจากกริ่งประตูไร้สายแบบเก่า ชิ้นส่วนถูกบัดกรีบน PCB ต้นแบบอีกครั้ง รวมทั้งไดโอดนำทั้งสอง มีซ็อกเก็ตสำหรับโมดูล MCU และ HC-12 และขั้วต่อตัวผู้ที่บัดกรีบนบอร์ดสำหรับลำโพง ปุ่มรีเซ็ต และแรงดันไฟฟ้า ที่ฝาครอบด้านหน้ามีรูสำหรับไฟ LED ส่วนบนสำหรับปุ่มรีเซ็ตและเสาอากาศ

การตั้งค่า

ตามที่ผู้เขียนโครงการต้นฉบับได้เขียนไว้ มีหลายสาเหตุที่สามารถป้องกันการสื่อสารระหว่างผู้ส่งและผู้รับได้สำเร็จ ก่อนอื่น ตรวจสอบการต่อสายไฟและการบัดกรีอีกครั้ง ถ้าทุกอย่างเรียบร้อย พยายามสร้างการสื่อสารกับทั้งสองหน่วยที่วางอยู่บนโต๊ะเคียงข้างกัน หากมีปัญหา ให้ตรวจสอบโมดูล HC-12 ในวงจรอย่างง่ายกับ Arduino บนเขียงหั่นขนมสองตัว ใช้คำแนะนำตามบทความที่ดีมากเกี่ยวกับโมดูล: การสื่อสารระยะไกล มีซอฟต์แวร์ HC-12 messenger อย่างง่าย โหลดซอฟต์แวร์เดียวกันทั้ง Arduino และตรวจสอบการสื่อสาร ถ้าตกลงทั้งสองโมดูลนั้นดี

ในขั้นตอนต่อไป ให้ลองขยาย arduino uno ด้วย HC-12 บน breadboard ไปยังส่วนประกอบทั้งหมดสำหรับผู้ส่งและผู้รับ และตั้งโปรแกรม Arduinos ทั้งสอง ในกรณีนี้ ให้ตรวจสอบพิน arduino uno เปรียบเทียบกับ Attiny-85 และ Nano ในไฟล์ ino และเปลี่ยนหมายเลขพิน หากจำเป็น ด้วยเหตุผลนี้ ฉันได้เพิ่มเข้าไปในไฟล์ ino พิน Arduino ที่สอดคล้องกันในบรรทัดหมายเหตุ หากปัญหายังคงอยู่ ให้ลองค้นหาข้อผิดพลาดในการเขียนโปรแกรม โดยใช้ฮาร์ดแวร์ซีเรียล ด้วยวิธีนี้ คุณสามารถป้อนข้อมูลไปยังจุดสำคัญของโปรแกรม ตรวจสอบข้อความ และดูข้อความเหล่านี้ในจอภาพแบบอนุกรม คุณสามารถดูได้ว่าส่วนใดของโปรแกรมเสร็จสมบูรณ์และส่วนใดที่ไม่สำเร็จ จำลองสวิตช์สำหรับไปรษณีย์และโรงรถโดยการสัมผัสสายไฟ หลังจากแก้ไขปัญหาแล้ว ให้เปลี่ยนแผงด้านหลังเป็น MCU (Attiny และ Nano)

การสื่อสารครั้งแรกระหว่างหน่วยควรทำบนโต๊ะ หากทุกอย่างเรียบร้อย ให้ติดตั้งยูนิตเข้าที่แล้วตรวจสอบอีกครั้ง

ขอบคุณสำหรับการอ่านและขอให้โชคดี

แนะนำ: