บทความ Project Home Control

ควบคุมเครื่องใช้ไฟฟ้าในบ้านด้วย Android (Arduino Hardware)

 

ตอนที่ 1. - Arduino Hardware โดย Tumrobot

โปรเจคเครื่องควบคุมเครื่องใช้ไฟฟ้า ด้วย Android นี้เป็นการทดสอบใช้ Arduino Hardware มาทดสอบการสั่งงานควบคุมไฟฟ้าดูบ้างครับ เนื่องจากสาเหตุที่ว่า Arduino นั้นเป็น Hardware ที่หาซื้อได้ง่ายและมีอุปกรณ์เสริมค่อนข้างเยอะ นอกจากนั้นยังมีตัวอย่าง Code และ Community ค่อนข้างมากมายที่จะสามารถ แชร์ตัวอย่าง Code ให้เราได้ศึกษาและลองนำเอา Code เหล่านั้นมาประยุกต์ได้

โดย Hardware ที่เกี่ยวข้องหลักๆ มีดังต่อไปนี้

1. Arduino Uno R3

2. Arduino Ethernet shield

3. DHT11

ข้อมูลเบื้องต้นของ Arduino Hardware

Arduino Uno R3 เป็น Microcontroller board ที่ใช้ ATmega328 (datasheet) เป็น MCU หลัก ซึ่งตัวนี้จะมีขา Digital 14 ขา อินพุท/เอ้าพุท (สามารถทำเป็น PWM ได้ถึง 6 ขา) และมีขา Analog อินพุทได้อีก 6 ขา, รันที่ความถี่ 16 MHz มี USB Connector และ Power Jack DC ซึ่ง Concept ของ Arduino Board นี้ทำมาเพื่อความสะดวก ง่ายในการเชื่อมต่อเข้ากับคอมพิวเตอร์ สามารถต่อ USB เข้ากับช่องคอมพอร์ต ก็สามารถ Run โปรแกรมที่ Board ได้ เหมาะสำหรับผู้ที่กำลังเริ่มต้นเข้าสู่วงการอิเล็กทรอนิกส์อย่างแท้จริง

Microcontroller ATmega328
Operating Voltage 5V
Input Voltage (recommended) 7-12V
Input Voltage (limits) 6-20V
Digital I/O Pins 14 (of which 6 provide PWM output)
Analog Input Pins 6
DC Current per I/O Pin 40 mA
DC Current for 3.3V Pin 50 mA
Flash Memory 32 KB (ATmega328) of which 0.5 KB used by bootloader
SRAM 2 KB (ATmega328)
EEPROM 1 KB (ATmega328)
Clock Speed 16 MHz

Schematic: arduino-uno-Rev3-schematic.pdf

 

Arduino Ethernet Shield

ใช้สำหรับเชื่อมต่อ Arduino Board เข้ากับระบบ Internet ใช้งานง่ายเพียงแค่เสียบคอนเน็กเตอร์เข้ากับ Arduino Board แล้วก็ต่อสาย LAN เข้าตรง RJ45 ก็สามารถช่วยให้ Arduino ออกสู่โลกภายนอกได้อย่างง่ายดาย

และที่สำคัญข้อมูล ไลบรารี่ source code ต่างๆ หาได้ง่าย และฟรี ครับเนื่องจาก Arduino เป็นระบบ open source และสังคมออนไลน์ของ Arduino ก็ค่อนข้างมีสมาชิกที่เยอะทั่วโลก เลยทำให้การสร้างโปรเจคต่างๆ สามารถทำได้อย่างง่ายดาย

คุณสมบัติของ Ethernet Shield

  • Requires and Arduino board (not included)
  • Operating voltage 5V (supplied from the Arduino Board)
  • Ethernet Controller: W5100 with internal 16K buffer
  • Connection speed: 10/100Mb
  • Connection with Arduino on SPI port
  • IEEE802.3af compliant
  • Low output ripple and noise (100mVpp)
  • Input voltage range 36V to 57V
  • Overload and short-circuit protection
  • 9V Output
  • High efficiency DC/DC converter: typ 75% @ 50% load
  • 1500V isolation (input to output)

ที่มา Arduino.cc

 

การต่อ Hardware สำหรับ Project Home Control ( Arduino Hardware)

   

ป.ล. ตามภาพในวงจร ขาด Relay 3 และ Relay 4 ยังลงอุปกรณ์ไม่ครบ

ส่วนประกอบของ HardWare

Hardware ประกอบด้วย Arduino และ Arduino Ethernet Shield ซึ่ง รายละเอียด Pin เป็นดังต่อไปนี้

1. Digital 2 ต่อเข้ากับ DHT11

2. Digital 3 ต่อเข้ากับ Relay 1

3. Digital 4 ต่อเข้ากับ Relay 2

4. Digital 5 ต่อเข้ากับ Relay 3

5. Digital 6 ต่อเข้ากับ Dimmer 1 ( Pin นี้เป็น PWM Out )

6. Digital 7 ต่อเข้ากับ Relay 4

 

Arduino sketch code สามารถ ดาวน์โหลดได้จาก ที่นี่

และ Libraly ที่ต้องการติดตั้งเพิ่ม DHT11 Library

 

การ Config Software ในฝั่ง Arduino ก็จะเป็นแค่ Set ค่า IP ให้ตรงกับ IP ในวง LAN ของเราก็พอครับ

ส่วน Port ก็ตั้งไม่ให้ซ้ำกับ Port หลัก ก็พอครับ

IPAddress ip(192, 168, 0, 95);

unsigned int localPort = 10001; // local port to listen on

 

เมื่อจ่ายไฟเข้ากับบอร์ด Arduino เราก็จะสามารถ เข้าไปใน IP ที่เรากำหนดขึ้นมาโดยเปิด browser ขึ้นมา และกรอก IP เพื่อเปิดหน้า Webpage Monitor.

เราก็จะเห็นหน้าเวบตามรูปซึ่งจะแสดงสถานะ Output ทั้ง 4 ตัวว่าตอนนี้อยู่ในสถานะอะไร และสถานะของ ความชื้นกับอุณหภูมิ เวอร์ชั่น Demo นี้จะยังไม่สามารถสั่งควบคุม Output ผ่านเวบไซต์ได้ แต่เวอร์ชั่นถัดไปจะสามารถสั่งควบคุม Output ผ่านทางหน้าเวบไซต์ได้ด้วย.

   

 

 

ภาพแสดงการติดตั้ง Demo Hardware ลงในกล่อง Plastic เพื่อความปลอดภัย จากไฟฟ้า 220V

 

 

 

ปิดฝากล่องเพื่อความปลอดภัยมากยิ่งขึ้น

 

 

 

 

 

 

Relay Board

ป.ล. ตามภาพในวงจร ขาด Relay 3 และ Relay 4 ยังลงอุปกรณ์ไม่ครบ

 

 

 

อ่านต่อ ตอนที่ 2