สารบัญ:

Postino: บุรุษไปรษณีย์ส่งอะไรให้ไหม: 6 ขั้นตอน (พร้อมรูปภาพ)
Postino: บุรุษไปรษณีย์ส่งอะไรให้ไหม: 6 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: Postino: บุรุษไปรษณีย์ส่งอะไรให้ไหม: 6 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: Postino: บุรุษไปรษณีย์ส่งอะไรให้ไหม: 6 ขั้นตอน (พร้อมรูปภาพ)
วีดีโอ: Postman Beginner Tutorial 12 | How to Debug 2024, กรกฎาคม
Anonim
Postino: บุรุษไปรษณีย์ส่งอะไรมาหรือไม่?
Postino: บุรุษไปรษณีย์ส่งอะไรมาหรือไม่?

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

ข้อจำกัดคือ:

  • ใช้พลังงานจากแบตเตอรี่โดยมีอายุการใช้งานที่เหมาะสมระหว่างการเปลี่ยนแบตเตอรี่
  • การสื่อสารไร้สาย
  • ตรวจสอบวันละครั้งว่ามีจดหมายหรือไม่

คำถามหลักคือ เซ็นเซอร์ชนิดใดที่เหมาะกับความต้องการของฉัน พรอกซิมิตี้เซนเซอร์ไม่ทำงาน เนื่องจากต้องทำการตรวจสอบเพียงวันละครั้งเท่านั้น ไม่ใช่แบบเรียลไทม์ เซ็นเซอร์น้ำหนักก็ไม่ได้เช่นกัน เนื่องจากจะช่วยเพิ่มความซับซ้อนและปัญหาด้านความไว (กระดาษหนึ่งแผ่นอาจเบามาก) ตัวเลือกของฉันลงจอดบนเซ็นเซอร์ Time-of-Flight (ไมโครเลเซอร์) เมื่อปรับเทียบขนาดกล่องจดหมายแล้ว สิ่งใดที่อยู่ตรงกลางก็จะกระตุ้นเซ็นเซอร์! เมื่อพิจารณาจากข้อจำกัด 3 ข้อ ฉันตัดสินใจใช้ ESP8266 (ใช้งานซอฟต์แวร์และลิงก์กับ WiFi) เซ็นเซอร์เวลาบิน VL6180 สำหรับการวัด และนาฬิกาเรียลไทม์ DS3231 เพื่อกระตุ้นวงจรทั้งหมดวันละครั้ง นั่นคือวิธี Postino ถือกำเนิด!

ขั้นตอนที่ 1: ชิ้นส่วนและส่วนประกอบ

  • ESP8266-01 (หรือ ESP-12E NodeMCU)
  • VL6108 เซ็นเซอร์เวลาของเที่ยวบิน
  • DS3231 นาฬิกาเรียลไทม์
  • IRLZ44 N-channel MosFET
  • BC547 ทรานซิสเตอร์
  • ตัวต้านทาน
  • CR123 แบตเตอรี่

ขั้นตอนที่ 2: เซ็นเซอร์

เซ็นเซอร์
เซ็นเซอร์

หัวใจของระบบคือเซ็นเซอร์ VL6180 นี่คือเทคโนโลยีที่ก้าวล้ำทำให้สามารถวัดระยะทางสัมบูรณ์โดยไม่ขึ้นกับแสงสะท้อนของเป้าหมาย แทนที่จะประมาณระยะทางโดยการวัดปริมาณแสงที่สะท้อนกลับจากวัตถุ (ซึ่งได้รับอิทธิพลอย่างมากจากสีและพื้นผิว) VL6180X จะวัดเวลาที่แสงใช้ในการเดินทางไปยังวัตถุที่ใกล้ที่สุดและสะท้อนกลับไปยังเซ็นเซอร์ได้อย่างแม่นยำ (เวลา -of-เที่ยวบิน). การรวมตัวปล่อย IR, เซ็นเซอร์วัดระยะ และเซ็นเซอร์วัดแสงแวดล้อมในแพ็คเกจแบบรีโฟลว์ได้สามในหนึ่งเดียวที่พร้อมใช้งาน VL6180X นั้นง่ายต่อการผสานรวมและประหยัดผู้ผลิตผลิตภัณฑ์สุดท้ายในการปรับแต่งการออกแบบทางแสงและกลไกที่มีราคาแพงและมีค่าใช้จ่ายสูง

โมดูลได้รับการออกแบบสำหรับการทำงานที่ใช้พลังงานต่ำ ฉันใช้บอร์ดฝ่าวงล้อม Pololu ซึ่งมีตัวควบคุมแรงดันไฟฟ้าบนบอร์ดที่อนุญาตให้ทำงานในช่วงแรงดันไฟฟ้าอินพุต 2.7 V ถึง 5.5 V

เซ็นเซอร์อนุญาตให้มีปัจจัยการปรับมาตราส่วนที่ถูกต้อง 3 ซึ่งกำหนดช่วงสูงสุดของการวัดตั้งแต่ 20 ถึง 60 ซม. โดยมีความไวต่างกัน โดยการกำหนดค่าปัจจัยการปรับขนาดช่วง ช่วงสูงสุดที่เป็นไปได้ของเซ็นเซอร์สามารถเพิ่มขึ้นได้โดยใช้ความละเอียดที่ต่ำกว่า การตั้งค่าตัวคูณมาตราส่วนเป็น 2 ให้ช่วงสูงสุด 40 ซม. พร้อมความละเอียด 2 มม. ในขณะที่ปัจจัยมาตราส่วน 3 ให้ช่วงสูงสุด 60 ซม. พร้อมความละเอียด 3 มม. คุณต้องทดสอบเครื่องชั่ง 3 ตัวด้วยมิติกล่องจดหมายของคุณ เนื่องจากของฉันมีขนาด 25 ซม. (H) ฉันจึงใช้ตัวประกอบมาตราส่วน=1

ขั้นตอนที่ 3: การปรับแต่งนาฬิกาตามเวลาจริง

สำหรับ RTC ฉันใช้บอร์ดฝ่าวงล้อม DS3231 ซึ่งรวมถึง EEPROM (ไม่มีประโยชน์สำหรับจุดประสงค์ของฉัน) และแบตเตอรี่ขนาดเหรียญ เมื่อฉันตัดสินใจจ่ายไฟให้กับ RTC ผ่านแบตเตอรี่ของอุปกรณ์หลัก (CR123 3v) ฉันจึงถอดแบตเตอรี่แบบเหรียญออก เพื่อประหยัดพลังงาน ฉันยังถอด EEPROM (โดยการตัดหมุดอย่างระมัดระวัง) และไฟ LED ออนบอร์ด

แบตเตอรี่แบบเหรียญไม่มีประโยชน์สำหรับฉันเพราะฉันไม่ต้องการเก็บวันที่/ชั่วโมง/นาที/วินาทีตามเวลาจริง แต่ RTC ต้องนับเพียง 24 ชั่วโมงเท่านั้น จากนั้นจึงส่งสัญญาณเตือนเพื่อเปิดเครื่อง

ขั้นตอนที่ 4: เบ็ดเตล็ดอื่นๆ บนเรือ

เบ็ดเตล็ดอื่น ๆ บนเรือ
เบ็ดเตล็ดอื่น ๆ บนเรือ
เบ็ดเตล็ดอื่น ๆ บนเรือ
เบ็ดเตล็ดอื่น ๆ บนเรือ

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

นอกจากนี้ ฉันได้เพิ่มจัมเปอร์ "test-1M" จุดประสงค์ของสวิตช์นี้คือ - หากเปิดใช้งาน - เพื่อเปลี่ยนรอบจากวันละครั้งเป็นนาทีละครั้ง เพื่อเรียกใช้การทดสอบการปรับใช้ ในการเปลี่ยนช่วงเวลาจากหนึ่งวันเป็นหนึ่งนาที ก่อนอื่นคุณต้องปิดจัมเปอร์ "Test-C" เป็นเวลาประมาณ 15 วินาที เพื่อข้ามช่วงเวลาการเปิดใช้งานนาฬิกาปลุกและเปิดเครื่อง เมื่อการทดสอบเสร็จสิ้น ให้เปิดจัมเปอร์และรีเซ็ตอุปกรณ์ (วงจรไฟฟ้า)

ขั้นตอนที่ 5: แผนผัง

แผนผัง
แผนผัง

ขั้นตอนที่ 6: ซอฟต์แวร์และลอจิก

ในระหว่างการทดสอบ ฉันใช้คอนโทรลเลอร์ NodeMCU (ด้วยเหตุผลในทางปฏิบัติ) ดังนั้นซอฟต์แวร์จะดูแลสิ่งนี้โดยตั้งค่าตัวแปร CHIP เป็น "NodeMCU" หรือ "esp8266"

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

ตัวแปร REST_MSG มีข้อความ http ที่จะส่งเมื่อเซ็นเซอร์พบวัตถุในกล่องจดหมาย ในกรณีของฉัน มันจะส่งข้อความไปยังเซิร์ฟเวอร์ domotic REST แต่คุณสามารถเปลี่ยนได้ตามที่คุณต้องการ: ข้อความ BOT ของ Telegram, เหตุการณ์ IFTTT WebHook เป็นต้น

ส่วนที่เหลือของภาพร่างอยู่ในฟังก์ชัน setup() เนื่องจากไม่มีการวนซ้ำ หลังจากการกำหนดค่าที่จำเป็นสำหรับไลบรารีต่างๆ ซอฟต์แวร์จะตั้งเวลานาฬิกาเป็น 00:00:01 และนาฬิกาปลุกวันละครั้ง (หรือหนึ่งครั้งต่อนาทีหากจัมเปอร์ "test-1M" เปิดใช้งาน) จากนั้นจึงทำการตรวจวัด ส่งการแจ้งเตือน (หากพบวัตถุใด ๆ ในกล่องจดหมาย) และรีเซ็ตพินการเตือนโดยปิดเครื่อง เมื่อสิ้นสุดรอบ จะเปิดใช้งานเฉพาะ RTC เท่านั้น โดยนับเป็นเวลา 24 ชั่วโมง จัมเปอร์ Test-1M เชื่อมต่อกับพิน RX ของ ESP8266 ซึ่งใช้เป็น GPIO-3 โดยใช้การตั้งค่า: setMode(PIN, FUNCTION_3) ด้วยเหตุนี้ คุณจึงไม่สามารถใช้จอภาพอนุกรมขณะใช้งาน ESP8266: บรรทัด “#define DEBUG” (ซึ่งอนุญาตให้พิมพ์แบบอนุกรมทั้งหมดในแบบร่าง) จะใช้เมื่อติดตั้ง NodeMCU แทน ESP8266 เท่านั้น

ESP8266 จัดการการสื่อสาร I2C กับ RTC และเซ็นเซอร์ผ่านหมุด GPIO-0 และ GPIO-2 ซึ่งเริ่มต้นในไลบรารี Wire

สามารถดาวน์โหลดรหัสเต็มได้จากลิงค์นี้

การประกวดเทคโนโลยีช่วยเหลือ
การประกวดเทคโนโลยีช่วยเหลือ
การประกวดเทคโนโลยีช่วยเหลือ
การประกวดเทคโนโลยีช่วยเหลือ

รองชนะเลิศในการประกวด Assistive Tech

แนะนำ: