ข้ามไปที่เนื้อหาหลัก

Arduino Project 4CH Relay Timer #01

 Arduino Project 4CH Relay Timer #01
       วันดีคืนดีนึกอยากจะทำ Project ตั้งเวลาเปิดปิดไฟหน้าบ้านขึ้นมา แบบว่าไม่อยู่บ้านหลาย ๆ วันให้เปิดปิดสวิทซ์ไฟให้เหมือนมีคนอยู่บ้านอะไรแบบนี้ ครั้นจะซื้อตัวตั้งเวลาที่มีขายทั่วไปก็ดูไม่ค่อยจะถูกใจเราเท่าไหร่ ก็เลยไปหาข้อมูล แล้วพบว่ามีบอร์ดอยู่ตัวหนึ่งเป็นลักษณะเหมือน Microcontroller หรือใช่เลยก็ไม่แน่ใจ หาอ่านไปมาพบว่าใช้ Code เหมือนกับภาษา C++ เห็น Code คร่าว ๆ แล้วใจชื้นหน่อย ดีกว่า ภาษา assembly อยู่ นั่นคือ Arduino board ก็เลยสั่งซื้อมาลองเลย




เราจะทำเกี่ยวกับการตั้งเวลา ก็เลยสั่ง RTC shield, Relay shield และ LCD keypad shield มาพร้อมด้วยเลย (RTC = Real Time Clock) (Shield = เหมือนเป็นชื่อเรียกส่วนขยายของบอร์ดนะครับ)



เครดิตภาพจาก ebay.com

และอะไหล่อื่น ๆ ที่คิดว่าจะได้ใช้อีกนิดหน่อย

เครดิตภาพจาก ebay.com

ที่คิดไว้ในหัวก็ประมานนี้

ต่อพ่วงกับสวิทซ์ปรกติ แล้วพ่วงกับ Relay ที่ขา NC (Normal Close) ไว้กรณีเราปิด Arduino ก็ให้สามารถใช้สวิทซ์ได้ปรกติ
จากนั้นโหลด Software ได้ที่ https://www.arduino.cc/en/Main/Software

หลัก ๆ ก็เอาไว้อัพโหลดเข้าตัว
Arduino เพราะตัว Coding ที่ติดมากับ Software รู้สึกจะดูยากไปหน่อย หรือผมดูไม่ค่อยเป็นเองหรือเปล่าก็ไม่รู้  ส่วนตัวผมใช้ Notepad++ ในการ coding นะครับ ส่วนการ Debug ก็ทำใน Software ของ Arduino เพราะมันสะดวกเวลาแก้
แต่ติดปัญหานิดหนึ่งคือ เวลา
copy code จาก notepad++ ไปวางใน Arduino แล้วรูปแบบที่เราจัดมันเพี้ยน ไม่ค่อยสวยงามเลย ทำให้เวลา Debug ดูยากนิดนึง

จากนั้นก็จัดแจงหา Driver มาลงให้เรียบร้อย
เมื่อลง
Driver ให้ Arduino board เรียบร้อยแล้วอาจจะลองต่อ LCD shield แล้ว upload code ทดสอบดู

    ถึงต้อนนี้ก็พร้อมที่จะเขียนโปรแกรมใส่ตัว Arduino แล้วนะครับ ณ ตอนเขียนบทความนี้ก็ยังทำ Project นี้ไม่เสร็จนะครับ กำลัง Coding ในส่วนเมนูการตั้งค่าของ Relay แต่ละตัวอยู่เลย มาลองกันดูครับว่าจะไปรอดหรือเปล่า หะหะ


Arduino tips
รูปแบบ if statement อย่างสั้น – บังเอิญได้แกะ code ของต่างประเทศแล้วไปเห็น if statement แบบสั้นมา (น่าจะมีใน ref document อยู่นะครับ แต่ผมหาไม่เจอ) รูปแบบก็จะประมาณนี้
( เงื่อนไข ? เมื่อเป็นจริง : เมื่อเป็นเท็จ )


ตัวอย่าง
 
itmMnu < 3 ? itmMnu++ : itmMnu ;
จาก
code ด้านบนโปรแกรมจะทำงาน คือ ตรวจสอบค่า itmMnu ว่าน้อยกว่า 3 หรือเปล่า ถ้าน้อยกว่า ให้บวกไป 1 ถ้ามากกว่าหรือเท่ากับให้มีค่าเท่าเดิม


ดูต่อ Arduino Project 4CH Relay Timer #02

ความคิดเห็น

โพสต์ยอดนิยมจากบล็อกนี้

เทคนิคการสร้าง Folder ลับ (การซ่อน Folder) 2

เทคนิคการสร้าง Folder ลับ (การซ่อน Folder) 2 วันนี้ก็จะเอาเทคนิคการซ่อน Folder มาฝากกันเพิ่มเติมนะครับ จะต่างจากในบทความแรก https://lazedev.blogspot.com/2016/03/folder-folder.html ซึ่งเป็นการเก็บแบบ System file ธรรมดา โดยคราวนี้จะเพิ่มความสามารถให้ Folder ที่เราซ่อนไว้ให้เข้ายากขึ้นไปอีกนิด (ซ่อนได้เนียนขึ้น) นะครับ มาดูขั้นตอนกันเลย

Make BIG checkbox in Excel

ทำ Checkbox ขนาดใหญ่ใน Excel ในบางครั้งเมื่อเราต้องการทำฟอร์มเอกสารให้คนอื่นกรอก ก็มักจะมีตัว Checkbox เพื่อให้คลิ๊กเลือกในรายการที่เรากำหนดไว้ โดยจะเพิ่มจากตัว ActiveX control ที่มีอยู่แล้วใน Excel แต่ปัญหาคือเจ้าตัว checkbox นี้มันปรับขนาดไม่ได้ พอเราปรับขนาดหน้าจอเล็กลง เจ้าตัว checkbox นี่ก็จะเล็กลงตาม ทำให้ความไฮโซของแบบฟอร์มลดลงไป

เอา Password Excel VBA ออก

พอดีว่ากำลังทำโปรเจ็คฐานข้อมูลเกี่ยวกับ Excel VBA แต่ทำ ๆ ไปดันลืม พาสเวิดที่ตัวเองใส่ไว้ซะงั้น เลยต้องลำบากลำบนไปค้นหาวิธีการเอาพาสเวิดนั้นออก ดูไปแล้วก็พอมีวิธีอยู่ ก็เลยทำเป็นบทความเก็บไว้ดีกว่า มาดูกันเลย **เป็นการเอารหัสของ VBA ใน Excel ออกนะครับ ไม่ใช่รหัสของ Excel