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

บทความ

กำลังแสดงโพสต์จาก ตุลาคม, 2016

Arduino Project 4CH Relay Timer #06

Arduino Project 4CH Relay Timer #06 มาถึงส่วนสุดท้ายของโปรเจคนี้กันแล้ว นั่นคือส่วนของการตรวจสอบเวลาและสั่งให้ Relay on หรือ off ตามเวลาที่เราได้ตั้งค่าไว้ โดยจะแยกการทำงานเป็นสองส่วน ส่วนแรกจะทำการตรวจสอบเมื่อเปิดเครื่องครั้งแรก และมีการเปลี่ยนแปลงการตั้งค่า และอีกส่วนจะทำงานตาม Loop การทำงานของเครื่องไปเรื่อย ๆ

Arduino Project 4CH Relay Timer #05

Arduino Project 4CH Relay Timer #05 ส่วนของโปรแกรมย่อยต่าง ๆ ที่เหลือ // โปรแกรมย่อย ตั้งค่าเวลาแสดงผลของไฟ LCD void setBLTime(){   timeRefBL = millis() + 5000 ; } // โปรแกรมย่อยเปลี่ยนสถานะของตัวเครื่อง ตามปุ่มที่กด void transition(int xbutton) {   switch (state)   {         case MAIN_DISPLAY:             if (xbutton==btnSELECT){state=ALARM_NO; itmMnu= 1 ;}             break;

Arduino Project 4CH Relay Timer #03

Arduino Project 4CH Relay Timer #03      โดยปรกติตัวบอร์ด Arduino นั้น จะเริ่มทำงานโดยการ Run คำสั่งในโปรแกรมย่อย setup() และ Loop() ตามลำดับนะครับ ซึ่งโปรแกรมย่อยทั้ง 2 ตัวนี้จำเป็นต้องมีอยู่ในโปรแกรมของเรานะครับ โดยตัวโปรแกรมย่อย Loop() เมื่อโปรแกรมทำงานจนจบ จะทำการเริ่มใหม่อัตโนมัตินะครับ และวนอยู่ในโปรแกรมย่อย Loop() ไปเรื่อย ๆ  นะครับ มาดูกันที่ส่วนหัวของโปรแกรมกันครับ ตัวแปรที่ประกาศในส่วนนี้ จะสามารถใช้งานได้ในทุก ๆ โปรแกรมย่อยนะครับ

Arduino Project 4CH Relay Timer #02

Arduino Project 4CH Relay Timer #02     หลังจากอุปกรณ์อะไรพร้อมหมดแล้ว เราต้องมาทำการเพิ่ม Library กันก่อนนะครับ Library ที่ต้องเพิ่มเข้ามาคือ RTClib.h นะครับ ให้หา download มาไว้ที่เครื่อง แล้วแตกไฟล์เก็บไว้ใน “Libraries” ใน Folder โปรแกรมของ Arduino นะครับ

Arduino Project 4CH Relay Timer #01

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