วันนี้เรามาพูดกันถึง Relay กันดีกว่าครับ
Relay เป็นอุปกรณ์ที่สำคัญที่ขาดไม่ได้เมื่อต้องการใช้งาน Microcontroller กับอุปกรณ์ไฟฟ้าที่มีระดับกำลังไฟฟ้าสูง (กว่าระดับที่ใช้งานของ Microcontroller) ทั้งนี้เนื่องจาก Microcontroller ซึ่งก็คือ Arduino Board ของเรานั้นทำงานที่ระดับแรงดันแค่ 3 - 5 โวลต์เท่านั้น ส่วนกระแสที่สามารถจะจ่ายได้ก็อยู่ไม่เกิน 300 mA ขึ้นกับชนิดของบอร์ดนะครับ คราวนี้สมมุติว่าเราต้องการควบคุมหลอดไฟซักตัวนึงที่ทำงานที่แรงดัน 220 โวลต์ มันก็แน่นอนที่เราไม่สามารถต่อหลอดไฟตรงๆไปที่บอร์ดครับ สิ่งที่เราสามารถทำได้คือ การให้สัญญาณควบคุมไปที่ตัว Relay แล้วให้ Relay เปิดปิดสวิตช์ที่ต่ออยู่กับโหลดอีกที แบบนี้ทำให้เราสามารถแยกส่วนควบคุมออกจากส่วนที่ใช้กำลังไฟฟ้าสูงออกจากกันได้ครับ
งั้นเรามาดูชนิดของ Relay กันนะครับ จริงๆแล้วมีอยู่หลายแบบ หลายชนิดของวัสดุ และหลายการใช้งานมากๆ ถ้าใครเรียนทางวิศวกรรมไฟฟ้ากำลังก็จะมี Protective Relay สารพัดชนิดเข้ามาเกี่ยวข้องในชีวิต เริ่มตั้งแต่ Overcurrent relay, Fault Relay, Over Voltage Relay และอีกมากมาย ส่วนใครเรียนทางด้านอิเล็กทรอนิกส์ก็จะเจอ Relay ที่ใช้กับสัญญาณระดับต่ำที่ใช้ในการควบคุมให้เปิด หรือ ว่าปิดวงจร
Relay มีอยู่หลายประเภทนะครับ เช่น Relay ที่ใช้แรงดูดจากขดลวด (Electromechanical Relay) หรือ Relay แบบโซลิดสเตท ซึ่งใช้สารกึ่งตัวนำมาเป็นอุปกรณ์หลักในการทำงาน การใช้งานมันก็จะต่างกัน
พวก Electromechanical Relay แบบรูปด้านล่างเป็น Relay ที่มีมาแต่โบราณยุคแรกๆที่มีไฟฟ้าใช้กัน หลักการทำงานก็ง่ายๆครับ จ่ายกระแสเข้าขดลวดทองแดงก็จะสร้างให้เกิดสนามแม่เหล็กที่ไปดึงเอาหน้าสัมผัส (Contact) มาติดกับขดลวด ทำให้เกิดการเปิดหรือว่าปิดวงจร Relay แบบนี้มีขายอยู่ทั่วไปตามร้านขายอุปกรณ์ไฟฟ้า ราคาก็ถูกเมื่อเทียบกับชนิดอื่น แถมทนทานใช้งานได้นานปี แถมมีให้เลือกกันหลายขนาดมากๆ ตั้งแต่เล็กจิ๋วจนกระทั่งมีขนาดใหญ่มากๆ หลายร้อยแอมป์
ภาพจาก http://en.wikipedia.org/wiki/Relay#Reed_relay
ส่วน Solid State Relay ก็ทำงานด้วยสัญญาณจาก Microcontroller เพื่อไปสั่งอุปกรณ์หรือโหลดที่มีกำลังไฟฟ้าสูงกว่าตัวควบคุม เช่นเดียวกับ Electromechanical Relay ครับ แต่ต่างกันตรงที่ทำงานได้ไวมากๆ (Response time ต่ำ) และไม่มีเสียงดังรบกวนเวลาเปิดปิดหน้าสัมผัส แถมใช้พลังงานน้อยกว่า ส่วนข้อเสียเหรอครับ แพงกว่าเยอะไงครับ ราคาต่างกันเป็น 10 เท่า
Relay ทั้งสองแบบนี้ก็มีขายที่บ้านหม้อแหละครับ แต่คนส่วนใหญ่โดยเฉพาะ Hobbiyist ก็มักจะใช้แค่ Electromechanical Relay ด้านบนนะครับ เพราะมันประหยัดกว่าเยอะ นอกจากจะมีเงื่อนไขการใช่งานพิเศษที่ Relay ธรรมดาทำไม่ได้เท่านั้น
ภาพจาก http://www.omron-ap.com/product_info/G3NA/index.asp
ทีนี้มาดู relay ชนิดที่่เราทำออกมาเป็น Module กันบ้างว่ามันใช้งานกันยังไง
Relay ที่มีขายและออกแบบมาใช้งานกับ Arduino Board นั้นมีหลายแบบมากครับ เช่น แบบ 2 Channel 4 Channel 8 Channel ไล่ไปจน 16 Channel ก็มีครับ จะว่าไปที่จริงแล้วเราไม่ต้องซื้อ relay แบบที่เป็น Module ตามรูปด้านล่างก็ได้ครับ เราสามารถใช้ Relay ที่ซื้อมาทีละตัวเพื่อใช้งานก็ได้ แต่ทำไมเขาทำออกมาขายเหรอครับ ด้วยเหตุผลก็คือ มันถูกจัดเรียงมาอย่างดี มีอุปกรณ์ป้องกันไฟย้อนกลับไปที่ Microcontroller โดยการใช้ Opto-isolator module มีการต่อแรงดันและกราวด์ที่จ่ายให้อุปกรณ์จาก Board ไว้ให้เรียบร้อยทุกตัว นั้นหมายถึงการต่อทีเดียวครบ ไม่ต้องมาจ่ายทีละตัว Relay นะครับ เวลาใช่งานก็แค่ต่อสัญญาณควบคุมไปที่ relay แต่ละตัวก็เท่านั้นครับ แถมด้วยมี LED แสดงการทำงานของ Relay แต่ละตัวด้วย
มาดู Spec ของ relay แต่ละตัวกันหน่อยครับ ผมเลือก relay ที่ใช้กับ Arduino มาให้ดูนะครับ นั้นคือสัญญาณควบคุมอยู่ที่ 5 โวลต์ ตาม Digital I/O ของ Arduino UNO R3 หรือ อืนๆที่คล้ายกัน
Spec ที่สำคัญตามตารางด้านล่างของ relay ที่ต้องพิจารณากันก็คือ พิกัดกระแสที่หน้าสัมผัส (Contact Capacity) แรงดันไฟฟ้าสูงสุดที่ใช้งานได้ (Max. Allowable Voltage) ซึ่งจะกำหนดมาให้ทั้ง AC และ DC นั้นหมายความว่า Relay นั้นสามารถใช้งานได้ทั้งไฟฟ้าตรงและสลับนะครับ แต่ค่าพิกัดแรงดันจะไม่เท่ากัน แรงดันตรงจะใช้งานได้ต่ำกว่าเสมอ กำลังไฟฟ้าสูงสุดที่ใช้งานได้ (Max Allowable Power) และอีกส่วนที่สำคัญคือ เวลาที่ใช้ในการตอบสนองคำสั่ง (Operation time / Release time) นะครับ
Operation time ก็คือเวลาที่ใช้ตั้งแต่รับคำสั่งไปจะถึงขณะที่หน้าสัมผัสของ Relay ปิดสนิท ส่วน Release time ก็คือเวลาที่ใช้ตั้งแต่ส่งสัญญาณให้เปิดจนกระทั้งหน้าสัมผัสเปิดเต็มที่ ซึ่งถ้าพิจารณาจากข้อมูลด้านล่างแล้ว เราคงสามารถสั่งให้ relay ทำงานได้อย่างมากก็วินาทีละ 2-3 ครั้งเท่านั้นครับ ถ้าถี่กว่านี้ก็ไม่ไหวแล้ว
ทีนี้มาดูภายในกันครับว่ามันต่อกันยังไง มีอะไรเป็นส่วนประกอบบ้าง สำหรับ Module Relay ที่เขาขายกัน เริ่มจากแรงดัน 5 โวลต์ (VCC) ที่จ่ายเป็นไฟเลี้ยง Coil เพื่อสร้างสนามแม่เหล็ก ตามด้วย Optoisolator ที่คั่นระหว่่างด้านวงจรควบคุมและด้านโหลด ทีนี้เมื่อ IN 4 ตามรูปรับแรงดันมาจากบอร์ด ก็จะทำได้มีสัญญาณไปสั่งให้ transistor Q7 ทำงาน ซึ่งก็จะปล่อยให้กระแสไหลผ่าน Coil ก็เป็นอันว่าหน้าสัมผัสก็จะเคลื่อนตัว ส่วน Zenor Diode ที่ D8 จะทำหน้าที่ป้องกันแรงดันย้อนกลับ Switching Overvoltage ไว้ให้นิดหน่อยครับ
ทีนี้ Relay ที่เขาทำออกมาขายซึ่่งใช้กับ Arduino Board ก็มักจะเป็นแบบ SPDT (Single Pole Double Throw) ซึ่งจะมีทั้ง NO (Normally Open) และ NC (Normally Close) ให้เลือก
เวลาต่อกับโหลดที่ต้องใช้แรงดัน 220 V AC หรือ แรงดันจากแหล่งจ่ายอื่นๆ ก็ตามรูปด้านล่างนี้เลยครับ แต่ขอเตือนนิดนะครับ ผมอยากให้เช็คแล้วเช็คอีกเวลาเล่นกับไฟ (220 VAC) นะครับ ถ้าต่อผิดขึ้นมาละก็ โชคดีหน่อยก็แค่บอร์ดพัง แต่ถ้าโชคไม่ดีก็อาจจะถึงไฟไหม้ได้นะครับ พลาดแล้วแย่แน่ๆครับ
สำหรับ Sketch ที่ใช้ในการทำงานของ relay ก็ไม่มี Library อะไรที่ต้องติดตั้งเพิ่มครับ เป็นเพียงการสั่งให้ Digital I/O Port ที่ต้องการซึ่งต่อกับ Relay นั้น มี level เป็น LOW หรือ HIGHT เท่านั้นครับ เราสามารถใช้ Sketch ในตัวอย่าง Blink เพื่อทดสอบได้ครับ
แถมอีกนีดครับ สำหรับงานที่ต้องการเป็นแบบสั้งานไร้สาย ก็ทำได้ครับ มี Relay Wireless Module ชนิดที่ส่งสัญญาญผ่าน Bluetooth หรือ Xbee ดังรูปด้านล่างนะครับ (Module สื่อสารไม่ได้มีให้ด้วย ต้องซื้อแยกครับ)
วันนี้เท่านี้นะครับ ท่านใดมีคำถามหรือว่าต้องการเสนอแนะอะไรก็เชิญได้ที่ Facebook ของเรานะครับ
Link ที่น่าสนใจเกี่ยวกับ Relay
http://arduino-info.wikispaces.com/ArduinoPower
http://forum.arduino.cc/index.php/topic,22083.0.html
http://www.electroschematics.com/8975/arduino-control-relay/
โดย Mountain A
หน้านี้เป็นสารบัญของบทความที่ปรากฏในเว็บของ Arduitronics.com นะครับ จะขอแบ่งออกเป็นหัวข้อตามกลุ่มของสินค้าในร้านดังต่อไปนี้
หน้าที่เข้าชม | 15,393,408 ครั้ง |
ผู้ชมทั้งหมด | 5,896,486 ครั้ง |
เปิดร้าน | 21 พ.ค. 2556 |
ร้านค้าอัพเดท | 16 ก.ย. 2568 |