หน้าแรก ดูโปรเจกต์ทั้งหมด
Hard

โปรเจกต์ Blynk garagedoor monitor/opener

เพื่อนร่วมงานของผมทำหลังคารถพังเพราะออกจาก garage เร็วเกินไป ผมจึงรับปากว่าจะทำระบบไฟ red, amber, green lights ใน garage ให้เขา

โปรเจกต์ Blynk garagedoor monitor/opener

รายการอุปกรณ์และเครื่องมือ

1x Soldering iron (generic)
-
2x Terminal block 3 pin
🛒 สั่งซื้อ
1x 3D Printer (generic)
-
1x 1N4007 – High Voltage, High Current Rated Diode
-
1x Signal Relay, 5 VDC
🛒 สั่งซื้อ
1x General Purpose Transistor PNP
-
1x Adafruit Feather HUZZAH with ESP8266 WiFi
🛒 สั่งซื้อ

รายละเอียดและวิธีทำ

ช่วงล็อกดาวน์ปี 2020: มาเริ่มทำโปรเจกต์ออนไลน์กันเถอะ

อย่างที่เคยเกริ่นไว้ใน "pitchtalk" เพื่อนร่วมงานของผมขับรถชนหลังคากับประตูโรงรถของเขาเอง เขาถอยรถออกจากโรงรถเร็วเกินไปจนทำให้เสาอากาศวิทยุบนหลังคาถูกประตูโรงรถเกี่ยวหลุดออกมา...

ผมก็เลยบอกไปว่า: "เดี๋ยวผมจะสร้างตัวช่วยแก้ปัญหานี้ให้เอง!"

ขอบเขตของงาน: แสดงสถานะว่าประตูโรงรถเปิดสุดแล้วหรือไม่ และสามารถสั่งงานประตูบานเดิมได้จากภายในรถ (ไม่ว่าจะอยู่ในบ้านหรือจากหัวมุมถนน)

และนี่คือจุดเริ่มต้นของโปรเจกต์ Home automation/Iot/Blynk

เพื่อให้การพัฒนาซอฟต์แวร์เป็นเรื่องง่าย ผมจึงเลือกใช้โซลูชันของ Blynk

  • เขียนโค้ดบน Arduino ได้ง่าย
  • ปรับแต่งบน Smartphone ได้ง่าย
    • มีความปลอดภัยด้วย SSL

    คำอธิบาย

    "อุปกรณ์" นี้ต้องตรวจจับได้ว่าประตูเปิดหรือปิดอยู่ เพื่อที่จะทำแบบนี้ได้ผมจึงเลือกใช้ Magnetic reed switches คุณสามารถติดตั้งสวิตช์เหล่านี้บน "รางโซ่" (chain-rail) และติดตั้งแม่เหล็กไว้ที่ "ชุดลาก" (wagon) (ดูรูปภาพประกอบ) หรือจะเลือกติดตั้ง Microswitches ก็ได้เช่นกัน

    การใช้โซลูชัน Microswitch

    การใช้โซลูชัน Reed switch

    จะมีสวิตช์ตัวบนและสวิตช์ตัวล่าง เมื่อสวิตช์ตัวบนถูกปิด (วงจรต่อกัน) แสดงว่าประตูเปิดอยู่และจะแสดงไฟ LED สีเขียวในแอป Blynk เมื่อสวิตช์ตัวล่างถูกปิด แสดงว่าประตูปิดอยู่และจะแสดงไฟ LED สีแดงในแอป Blynk ส่วนในระหว่างนั้น (เมื่อสวิตช์ทั้งสองตัวเปิดวงจร) แสดงว่าประตูกำลังเคลื่อนที่ (จะแสดงไฟ LED สีส้ม)

    เมื่อประตูเปิดจนสุด (ไฟ LED สีเขียว) ข้อความจะถูกบันทึกไว้ใน Blynk Terminal และเก็บข้อมูลเวลาเอาไว้ เวลานี้จะถูกนำไปตรวจสอบกับค่า "Open warning" ที่ตั้งค่าไว้ในแอป Blynk หากประตูเปิดทิ้งไว้นานเกินไป จะมีการส่งข้อความแจ้งเตือนไปยังแอป Blynk

    ในการสั่งเปิดหรือปิดประตูโรงรถ จะมีการตั้งค่า Pins บน Arduino ให้มีสถานะ High เพื่อสั่งงาน Relay ในช่วงเวลาหนึ่ง มอเตอร์ประตูโรงรถจะทำงานเมื่อมีการเชื่อมต่อกันระหว่างสายไฟสองเส้น (ซึ่งต่อเข้ากับ Relay)

    การติดตั้งฮาร์ดแวร์

    โปรเจกต์นี้ใช้ไฟเลี้ยงจากที่ชาร์จ Smartphone เครื่องเก่า โดยใช้สายไฟเชื่อมต่อเพียง 6 เส้นเท่านั้น

    • 2 เส้นสำหรับ "upper" reed switch (ต่อกับ Feather Pin 12 และ + USB out)
    • 2 เส้นสำหรับ "lower" reed switch (ต่อกับ Feather Pin 14 และ + USB out)
    • 2 เส้นที่ไปยังมอเตอร์เปิดประตูโรงรถเพื่อต่อวงจรในการเปิดหรือปิดประตู (ต่อเข้ากับ Relay)

    ทุกอย่างถูกติดตั้งลงบน Adafruit half protoboard และใส่ไว้ในเคสที่พิมพ์ออกมาโดยเฉพาะ (เพื่อให้สามารถติดตั้งลงบน Protoboard ได้ ผมต้องตัดขั้วต่อที่ไม่ได้ใช้งานของ Relay ออก)

    เคสที่พิมพ์ออกมาพร้อมช่องสำหรับเชื่อมต่อภายนอก

    ซอฟต์แวร์ Arduino

    ติดตั้ง Library ที่ถูกต้องสำหรับ Adafruit Huzzah และ Blynk เปลี่ยนการตั้งค่าการเชื่อมต่อสำหรับเครือข่าย WiFi ของคุณและ Blynk App Key ในโค้ด จากนั้น Upload ลงใน Arduino

    การสร้างแอป Blynk

    มาสร้างโปรเจกต์ Blynk ให้มีหน้าตาคล้ายกับแบบนี้กันเถอะ:

    สร้างโปรเจกต์ Blynk ใหม่บน Smartphone ของคุณ เลือก ESP8266 เป็น Hardware Model

    เพิ่มไฟ LED สีเขียว (Input V2), สีแดง (Input V3) และสีส้ม (Input V4) ลงในโปรเจกต์

    เพิ่ม Terminal Block ในโปรเจกต์ที่ Input V0 และปิดการใช้งาน "add new line" และ "input line"

    เพิ่มปุ่ม "activate Door" ในโปรเจกต์ด้วย Output V4 และเลือกโหมด Push-button สิ่งนี้จะทำให้คุณสามารถเปิดหรือปิดประตูได้

    เพิ่ม Numeric Input ลงในโปรเจกต์ ใช้สำหรับกำหนดเวลาที่ผ่านไปก่อนที่จะส่งการแจ้งเตือน โดยตั้งค่าไว้ที่ Output V5

    เพิ่ม Realtime Clock ในโปรเจกต์ เพื่อใช้ในการแสดงเวลาบนหน้าจอ Terminal

    เพิ่มการตั้งค่า Notifications ในโปรเจกต์ เพื่อให้โปรเจกต์สามารถส่งการแจ้งเตือน "open door" และแจ้งให้คุณทราบหากอุปกรณ์ออฟไลน์

    เชื่อมต่อทุกอย่างเข้าด้วยกันและเริ่มการทำงานของแอปพร้อมกับ Arduino แล้วมันจะเริ่มทำงาน

    การแบ่งปันโซลูชัน

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

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

    ขอให้สนุก!

Code

🔒 ปลดล็อก Code

สนับสนุนเพื่อรับ Source Code หรือแอปพลิเคชันสำหรับโปรเจกต์นี้

รหัสอ้างอิงโปรเจกต์: blynk-garagedoor-monitoropener-0b6c45
1999 บาท
PromptPay QR Code