ชื่อโปรเจกต์: Scheduled Relays
หมายเหตุ: บทความนี้อาจจะเก่าไปหน่อยนะน้อง ถ้าอยากดูเวอร์ชันใหม่ล่าสุด ลองหาดูเอาเองนะ (แต่ตัวนี้ก็ยังเก๋าอยู่)
เกี่ยวกับโปรเจกต์นี้
โปรเจกต์นี้พี่จะสอนวิธีคุม [Relay](https://s.shopee.co.th/3fyXTmWPbL) บนบอร์ด MKR Relay Proto Shield แบบโปรแกรมไว้ล่วงหน้า ความเจ๋งคือเราจะทำ Web Server บนบอร์ด MKR1000 ให้เอ็งไปตั้งเวลาเปิด-ปิดผ่าน Browser ได้เลย หล่อเท่ไหมล่ะ!
เริ่มกันเลยวัยรุ่น
สิ่งที่ต้องทำมีดังนี้:
- เอาบอร์ด MKR1000 เสียบซ้อนลงบน MKR Relay Proto Shield เลย (เสียบให้ตรงนะน้อง อย่าให้ Pin งอ)
- จัดการ Upload Code ลง Board ให้เรียบร้อย
- เปิด Serial Monitor ขึ้นมา แล้วก๊อปปี้ IP Address ของบอร์ดเก็บไว้
- เปิด Browser แล้ววาง IP Address ลงไป เอ็งควรจะเห็นหน้าตาเว็บประมาณนี้:

- คลิกตรงเครื่องหมาย -- แล้วใช้ลูกศรตั้งเวลาได้เลย:

- กด Submit ไปเลยลูกพี่!

พอเวลาตรงกับที่เราตั้งไว้ (อย่างในตัวอย่างคือ 10:30) ไอ้ตัว Output 2 ช่องบน MKR Relay Proto Shield ของเราก็จะทำงาน ส่งสถานะ HIGH ออกไปเป็นเวลา 5 นาทีเต็มๆ!
เอาไปต่อยอดทำอะไรได้บ้าง?
เอ็งเอาไปทำระบบรดน้ำต้นไม้หรือระบบอัตโนมัติในบ้านได้สบายๆ เลยนะ หรือจะใช้ความเทพด้าน IoT ของ MKR1000 ไปเช็กพยากรณ์อากาศมาประกอบการตัดสินใจ เปิด-ปิด Relay ให้ฉลาดกว่าเดิมก็ยังได้ จัดไปอย่าให้เสีย!
เจาะลึกรายละเอียดเทคนิค (เผื่อใครอยากเป็นเทพ)
การจัดการโหลดไฟฟ้ากำลังสูงตามเวลา
โปรเจกต์นี้คือโซลูชันระดับมือโปรสำหรับตั้งเวลาคุมพวกอุปกรณ์กินไฟเยอะๆ (อย่างไฟปลูกต้นไม้ หรือปั๊มน้ำสระว่ายน้ำ) โดยใช้เวลาที่แม่นยำสุดๆ
- DS3231 RTC Temporal Synchronization: ตัว Arduino จะคอยเช็กเวลาจาก Module RTC ความแม่นยำสูงผ่าน I2C บอกเลยว่าเป๊ะมาก คลาดเคลื่อนไม่เกิน 1 นาทีต่อปี ต่อให้เน็ตหลุดเวลาก็ยังเดินตรงเป๊ะ
- Relay-Cycle Duty Mapping: เราตั้งเวลา "ON" และ "OFF" ได้ผ่านทาง Serial Menu หรือปุ่มกด แล้วให้ Arduino ไปสั่งงาน Relay Module แบบ 4 ช่อง รับรองว่าคุมโหลดแรงดันสูงได้ปลอดภัยและตรงจังหวะวินาทีที่ต้องการแน่นอน