Important Announcement
PubHTML5 Scheduled Server Maintenance on (GMT) Sunday, June 26th, 2:00 am - 8:00 am.
PubHTML5 site will be inoperative during the times indicated!

Home Explore บทที่-3-โครงสร้างและส่วนประกอบ

บทที่-3-โครงสร้างและส่วนประกอบ

Published by khunakron.swc, 2021-01-30 03:53:10

Description: บทที่-3-โครงสร้างและส่วนประกอบ

Keywords: โครงสร้าง ส่วนประกอบ

Search

Read the Text Version

บทท่ี 3 โครงสรา้ งและส่วนประกอบของ โปรแกรมเมเบลิ คอนโทรลเลอร์

38 | 2104-2109 การโปรแกรมและควบคมุ ไฟฟา้ ใบความรทู้ ่ี 3 โครงสรา้ งและส่วนประกอบของโปรแกรมเมเบลิ คอนโทรลเลอร์ จดุ ประสงคท์ ั่วไป 1. เข้าใจโครงสรา้ งโปรแกรมเมเบลิ คอนโทรลเลอร์ 2. เข้าใจการทางานโปรแกรมเมเบิลคอนโทรลเลอร์ จดุ ประสงค์เชิงพฤตกิ รรม 1. บอกหนา้ ที่หนว่ ยอนิ พตุ /เอาตพ์ ุตได้ 2. อธิบายโครงสร้างโปรแกรมเมเบิลคอนโทรลเลอรไ์ ด้ 3. อธบิ ายการทางานโปรแกรมเมเบิลคอนโทรลเลอร์ได้ 4. อธบิ ายโปรแกรมคาสั่งภาษาแลดเดอร์ได้ โครงสร้างและสว่ นประกอบของโปรแกรมเมเบลิ คอนโทรลเลอร์

2104-2109 การโปรแกรมและควบคุมไฟฟา้ |39 บทท่ี 3 โครงสรา้ งและส่วนประกอบของโปรแกรมเมเบลิ คอนโทรลเลอร์ 3.1 โครงสรา้ งโปรแกรมเมเบลิ คอนโทรลเลอร์ 3.4.1 อปุ กรณอ์ นิ พตุ 3.4.2 หนว่ ยอนิ พตุ 3.4.3 หน่วยประมวลผลกลาง 3.4.4 หน่วยเอาตพ์ ุต 3.4.5 อุปกรณเ์ อาต์พตุ 3.4.6 หนว่ ยป้อนโปรแกรม 3.4.7 หน่วยจ่ายพลงั งาน 3.2 การทางานของโปรแกรมเมเบลิ คอนโทรลเลอร์ 3.3 การเชอ่ื มตอ่ หน่วยอินพุต/เอาต์พตุ 3.3.1 หน่วยอินพุต/เอาตพ์ ุตแบบดจิ ิทลั 3.3.2 หนว่ ยอินพุต/เอาตพ์ ตุ แบบแอนาล็อก 3.3.3 หน่วยอนิ พตุ /เอาต์พตุ แบบพิเศษ 3.4 การเช่ือมต่ออุปกรณ์อนิ พตุ /เอาตพ์ ุต 3.4.1 วงจรเช่อื มต่อหนว่ ยอนิ พตุ 3.4.2 วงจรเชื่อมต่อหน่วยเอาต์พุต 3.5 ภาษาทใ่ี ช้สั่งงานโปรแกรมเมเบิลคอนโทรลเลอร์ 3.5.1 มาตรฐาน IEC 61131-3 ภาษาโปรแกรมเมเบิลคอนโทรลเลอร์ 3.5.2 โปรแกรมคาส่ังภาษาแลดเดอร์ 3.5.3 โปรแกรมคาสัง่ ภาษาบลอ็ ก 3.6 โปรแกรมเมเบลิ คอนโทรลเลอร์ SIEMENS Simatic S7-1200 3.6.1 คุณสมบตั ขิ อง S7-1200 โครงสรา้ งและสว่ นประกอบของโปรแกรมเมเบิลคอนโทรลเลอร์

40 | 2104-2109 การโปรแกรมและควบคุมไฟฟา้ 3.1 โครงสร้างโปรแกรมเมเบลิ คอนโทรลเลอร์ เน่ืองจากโปรแกรมเมเบิลคอนโทรลเลอร์เป็นตัวควบคุมที่สามารถโปรแกรมการทางานได้ ดังน้ันจึงมีโครงสร้างคล้ายกับคอมพิวเตอร์ ซึ่งประกอบไปด้วยหน่วยอินพุต (Input unit) หน่วย ประมวลผลกลาง (CPU) อุปกรณ์สาหรับป้อนโปรแกรม (Program device) หน่วยจ่ายพลังงาน (Power supply unit) และหน่วยเอาต์พุต (Output unit) ดังแสดงในภาพท่ี 3.1 โดยส่วนประกอบ ท้ังหมดน้ีจะต้องทางานสัมพันธ์กัน กล่าวคือต้องมีการส่ือสารกันผ่านบัส (Bus) อยู่ตลอดเวลาการ ทางาน โดยแตล่ ะสว่ นประกอบจะทาหนา้ ทีแ่ ตกต่างกันไป หน่วยปอ้ นโปรแกรม (Programming Unit) อุปกรณ์อินพตุ หนว่ ยอนิ พุต หนว่ ยประมวลผลกลาง หน่วยเอาต์พุต อปุ กรณ์เอาต์พุต (Output Unit) (Output Device) (Input Device) (Input Unit) (CPU) หน่วยจา่ ยพลงั งาน (Power supply unit) ภาพที่ 3.1 บล็อกไดอะแกรมแสดงโครงสรา้ งของโปรแกรมเมเบลิ คอนโทรลเลอร์ 3.1.1 อปุ กรณ์อนิ พุต (Input Device) อุปกรณ์อินพุตเป็นส่วนประกอบที่สาคัญมากต่อการทางานของโปรแกรมเมเบิล คอนโทรลเลอร์ เน่ืองจากมีหน้าที่ตรวจจับพฤติกรรมต่าง ๆ แล้วเปล่ียนเป็นสัญญาณทางไฟฟ้าทาให้ หน่วยอนิ พตุ (Input Unit) รับรไู้ ด้ ไม่วา่ จะเป็นสัญญาณแอนาล็อกหรือดิจทิ ลั กต็ าม อปุ กรณ์อินพตุ นน้ั มีมากมาย ตัวอย่างเช่น สวิตช์ปุ่มกด ลิมิตสวิตช์ หรือหน้าสัมผัสของรีเลย์ หรือกลุ่มเซนเซอร์ต่าง ๆ เชน่ โฟโตเซนเตอร์ พรอ๊ กซิมติ เ้ี ซนเตอร์ เซนเซอรอ์ ุณหภูมิ เซนเซอรค์ วามดัน สวิตชล์ ูกลอย เป็นต้น บางคร้ังส่วนประกอบส่วนน้ีอาจจะต่อกับแหล่งจ่ายภายนอกหรือใช้แหล่งจ่ายจาก โปรแกรมเมเบิลคอนโทรลเลอร์กไ็ ด้ โครงสร้างและสว่ นประกอบของโปรแกรมเมเบิลคอนโทรลเลอร์

2104-2109 การโปรแกรมและควบคมุ ไฟฟา้ |41 ภาพท่ี 3.2 ตัวอยา่ งอปุ กรณอ์ ินพตุ ของโปรแกรมเมเบิลคอนโทรลเลอร์ชนดิ ต่าง ๆ 3.1.2 หนว่ ยอินพุต (Input unit) หน่วยอินพุต มีหนา้ ทป่ี รับแตง่ สญั ญาณที่ไดร้ บั มาจากอุปกรณอ์ นิ พุต ซ่ึงเปน็ สญั ญาณท่ี มหี ลากหลายรูปแบบ เชน่ สญั ญาณดิจทิ ลั (ON-OFF หรือ 0-1) หรอื สัญญาณแอนาล็อก (0-5 VDC.,0- 10 VDC., 0-20 mA., 4-20 mA.) แล้วทาการปรับแต่งสัญญาณเหล่านี้ให้เป็นสัญญาณท่ีหน่วย ประมวลผลกลาง (CPU) สามารถรับรู้ได้ (ส่วนมากเป็นสัญญาณดิจิทัล) ซ่ึงในส่วนประกอบส่วนน้ี จะต้องมีวงจรปรับแต่งสัญญาณหรือวงจรแปลงสัญญาณแอนาล็อกเป็นดิจิทัล (Analog to Digital Conversion : ADC) กล่าวคือ เมื่ออุปกรณ์อนิ พุตส่งสัญญาณเข้ามาเป็นแบบดิจิทัล สัญญาณนั้นก็จะ ปรับระดับสัญญาณให้เหมาะสมแล้วส่งต่อไปยังหน่วยประมวลผลกลาง แต่ถ้าอุปกรณ์อินพุตส่ง สัญญาณเข้ามาเป็นแบบแอนาล็อกต้องได้รับการปรับแต่งด้วยวงจร ADC ก่อนเสมอ การส่งสัญญาณ ไปยงั หน่วยประมวลผลกลาง จะใช้วงจรแยกสัญญาณทที่ างานดว้ ยแสง (Opto Isolate circuit) ซึ่งจะ ไม่มีการต่อวงจรถึงกนั ระหวา่ งวงจรของอุปกรณ์อินพุตกับวงจรของหนว่ ยประมวลผลกลาง ท้ังน้ีเพื่อ ป้องความเสียหายอันเนื่องมาจากการลดั วงจรของอปุ กรณอ์ ินพุตทีส่ ่งผลตอ่ หน่วยประมวลผลกลาง 3.1.3 หนว่ ยประมวลผลกลาง (Central Processing Unit : CPU) หนว่ ยประมวลผลกลาง จดั เปน็ ส่วนประกอบท่ีสาคญั มากท่ีสุดและเปรยี บเสมือนสมอง ของโปรแกรมเมเบิลคอนโทรลเลอร์ มีหน้าที่ประมวลผล ตัดสินใจและควบคุมการทางานท้ังหมดของ โครงสร้างและสว่ นประกอบของโปรแกรมเมเบิลคอนโทรลเลอร์

42 | 2104-2109 การโปรแกรมและควบคมุ ไฟฟ้า ระบบภายใต้คาส่ังเงื่อนไขท่ีเขียนไว้ในโปรแกรม ซึ่งมีส่วนประกอบท่ีสาคัญ 3 ส่วนได้แก่ ตัว ประมวลผล (Processor) หน่วยความจา (Memory) และแหล่งจ่ายพลังงาน (Power supply) ภาพที่ 3.3 ไดอะแกรมแสดงสว่ นประกอบหน่วยประมวลผลกลาง ท่มี า : http://know2learning.blogspot.com/2014/07/4-plc.html 3.1.3.1 ตัวประมวลผล (Processor) ส่วนประกอบหลักท่ีสาคัญของหน่วย ประมวลผลกลางคือตัวประมวลผล ซ่ึงปัจจุบันนั้นมีขนาดเล็กลงมากจึงมักเรียกว่าไมโครโพรเซสเซอร์ (Microprocessors) ที่ออกแบบเป็นวงรวม (Integrated circuit) ทั้งส่วนของการคานวณและวงจร การควบคุมต่าง ๆ เข้าด้วยกัน อีกท้ังยังมีหน่วยความจา (Memory) และหน่วยจ่ายพลังงานเข้าไว้ ด้วยกัน กระบวนการทางานจะเริ่มต้นจากการจัดระบบการอ่านโปรแกรมท่ีบรรจุในหน่วยความจา พร้อมกับรับสถานะของอินพุตมาประมวลผลตัดสินใจตามโปรแกรมท่ีได้เขียนและเก็บไว้ใน หน่วยความจา ซ่ึงอาจอยู่ในรูปของแลดเดอร์ไดอะแกรม ดังภาพที่ 3.4 แล้วส่งผลลัพธ์การควบคุม ออกไปยงั อุปกรณเ์ อาต์พุต ตอ่ ไป โครงสรา้ งและสว่ นประกอบของโปรแกรมเมเบิลคอนโทรลเลอร์

2104-2109 การโปรแกรมและควบคมุ ไฟฟา้ |43 ภาพท่ี 3.4 กระบวนการของ CPU ทีม่ า : http://know2learning.blogspot.com/2014/07/4-plc.html ปัจจุบันโปรแกรมเมเบิลคอนโทรลเลอรร์ ุ่นใหม่จะออกแบบเลือกใช้ตัวประมวลผลท่มี ี ความสามารถสูงข้ึนเป็นลาดับ เช่นออกแบบให้สามารถคานวณฟังก์ชันทางคณิตศาสตร์ได้มากข้ึน มี ระบบจัดเก็บขอ้ มลู ที่มีประสิทธภิ าพสูงและทางานได้รวดเรว็ สามารถติดต่อส่ือสารในระบบเครอื ข่าย ได้หลายรปู แบบ 3.1.3.2 หน่วยความจา(Memory) หน่วยความจาเป็นส่วนประกอบของหน่วย ประมวลผลกลาง โดยหน่วยความจาน้มี ีหน้าท่ีสาหรับเก็บโปรแกรมหรือคาสงั่ ต่าง ๆ ทก่ี าหนดข้ึนโดย ผู้ใช้ เพ่ือให้ตัวประมวลผลนาไปประมวลผล (Executed) เราสามารถแบ่งหน่วยความจาออกได้ 2 ส่วนได้แก่  หน่วยความจาสาหรับโปรแกรมบริหาร (Executive memory) ใช้ สาหรับจัดเก็บข้อมูลถาวรเพ่ือใชส้ าหรับบริหารจัดการการทางานของโปรแกรมเมเบิลคอนโทรลเลอร์ เช่นการติดต่อสื่อสารกับอุปกรณ์อื่น ๆ ในระบบ หรือการทางานของคาสั่งต่าง ๆ โดยหน่วยความจา สว่ นนผี้ ู้ใช้ (User) ไมส่ ามารถเข้าถงึ เพือ่ แก้ไขได้  หน่วยความจาสาหรับโปรแกรมของผู้ใช้งาน (Application memory) ใช้สาหรับการจัดเก็บข้อมูลโปรแกรมท่ีผู้ใช้ (User) กาหนดหรือเขียนข้ึนเอง หน่วยความจาน้ีจะ ประกอบดว้ ยพ้นื ท่ใี ชง้ านทวั่ ไปและพน้ื ท่ีสาหรบั ฟังก์ชันการทางานพเิ ศษอ่นื ๆ โครงสรา้ งและสว่ นประกอบของโปรแกรมเมเบิลคอนโทรลเลอร์

44 | 2104-2109 การโปรแกรมและควบคมุ ไฟฟา้ Executive Memory Area Application Memory Area ภาพที่ 3.5 ไดอะแกรมระบบหน่วยความจา Executive System Memory Scratch Pad Application Memory Data Table User Table ภาพที่ 3.6 ผังหน่วยความจา (Memory Map) หากพิจารณาถึงการใช้งานหน่วยความจาทง้ั 2 สว่ น จะเหน็ ว่ามีรูปแบบการ ใช้งานอยู่ 2 รูปแบบได้แก่ หน่วยความจาระบบ (System Memory) และหน่วยความจาสาหรับใช้ งาน (Application memory) มรี ายละเอียดดงั นี้  Executive Area หมายถึง พืน้ ที่หนว่ ยความจาสาหรบั จัดเก็บข้อมูลถาวร เพือ่ ใชส้ าหรับบริหารจัดการการทางานของโปรแกรมเมเบิลคอนโทรลเลอร์ เช่น การติดตอ่ สื่อสารกับ อุปกรณ์อื่น ๆ ในระบบ หรือการทางานของคาสั่งต่าง ๆ โดยหน่วยความจาส่วนน้ีผู้ใช้ (User) ไม่ สามารถเข้าถึงได้  Scratch Pad Area หมายถึง พื้นที่หน่วยความจาที่เผื่อไว้ให้หน่วย ประมวลผลกลางใช้จัดเป็นท่ีเก็บข้อมูลบางส่วนในขณะที่ทาการคานวณและควบคุม ซึ่งจะทาให้การ ทางานมีความไวสงู ขึ้น  Data Table Area หมายถึง พื้นที่หน่วยความจาสาหรับเก็บข้อมูลตัว เลขท่สี าคัญตา่ ง ๆ เช่น ตวั ตง้ั เวลา ตัวนบั คา่ เรม่ิ ตน้ การทางานของโปรแกรม คา่ คงท่ตี ่าง ๆ หรือคา่ ตัว แปรท่ผี ู้ใช้กาหนดขนึ้  User Program Area หมายถงึ พื้นท่ีหน่วยความจาสาหรบั เก็บโปรแกรม คาสงั่ ทผี่ ใู้ ช้ (User) กาหนดข้นึ หรือเขียนขน้ึ โครงสร้างและสว่ นประกอบของโปรแกรมเมเบลิ คอนโทรลเลอร์

2104-2109 การโปรแกรมและควบคมุ ไฟฟา้ |45 นอกจากน้ี หน่วยความจาสาหรับการใช้งาน (Application memory) ยัง สามารถอธิบายถึงรายละเอียดของโครงสร้าง Application memory map ดังภาพท่ี 3.7 โดย แบ่งเป็น 2 ส่วน ได้แก่ พน้ื ทสี่ าหรับตารางขอ้ มูล (Data Table Area) และพ้นื ท่สี าหรับเกบ็ โปรแกรม คาสั่งของผูใ้ ช้งาน (User Program Area) Storage area Input Table Data Table Area for bits and Output Table register/words Internal Bits User Program Register/Words Area Control Program Instructions ภาพที่ 3.7 ผงั หนว่ ยความจาสาหรบั ใช้งาน (Application Memory Map)  Data Table Area เป็นพนื้ ที่สาหรบั ใชง้ านของขอ้ มลู ต่าง ๆ ประกอบดว้ ย พ้ืนที่สาหรับตารางข้อมูลอินพุต (Input table) พ้ืนที่สาหรับตารางข้อมูลเอาต์พุต (Output table) และพ้นื ทสี่ าหรับข้อมลู เอาตพ์ ตุ ภายใน (Internal bits) และสว่ นรีจีสเตอร์หรอื เวิร์ด (Register/words) พ้ืนที่สาหรับตารางข้อมูลอินพุต (Input table) ใช้สาหรับเก็บสถานะของ สัญญาณอินพุตแบบดิจิทัลท่ีเชื่อมต่อเข้ามา การถูกใช้งานของพ้ืนท่ีหน่วยความจานี้จะมากหรือน้อย ขน้ึ อยกู่ บั จานวนอุปกรณอ์ นิ พุตท่ใี ช้งาน พื้นที่สาหรับตารางข้อมูลเอาต์พุต (Output table) ใช้สาหรับเก็บสถานะ ของสัญญาณเอาตพ์ ุตแบบดิจิทัลท่ีเชอ่ื มต่อเข้ามา การถกู ใชง้ านพน้ื ทหี่ น่วยความจานี้จะมากหรือน้อย ขึ้นอยูก่ ับจานวนของอปุ กรณ์เอาต์พุตท่ีใช้งาน พื้นที่เกบ็ ขอ้ มูล (Storage area section of the data table) เปน็ สว่ นหนง่ึ ของพื้นท่ีสาหรับตารางข้อมูล (Data Table Area) ใช้กับข้อมูลที่มีการเปล่ียนแปลงรายบิตหรือเวริ ด์ และยังแบ่งออกเป็น 2 ชนิด ได้แก่ การเก็บข้อมูลแบบบิต เช่น ใช้เป็นอินพุตภายใน (Internal output, Internal coil หรือ Internal control relay) และแบบรีจีสเตอร์เวิร์ด ท่ีใช้สาหรับการเก็บ ข้อมูลอนิ พตุ และเอาตพ์ ตุ แบบแอนาล็อก เก็บค่าเริ่มตน้ ของตัวตั้งเวลา ดังภาพท่ี 3.8 โครงสรา้ งและสว่ นประกอบของโปรแกรมเมเบลิ คอนโทรลเลอร์

46 | 2104-2109 การโปรแกรมและควบคมุ ไฟฟา้ Internal 20003 17 16 15 14 13 12 11 10 07 06 05 04 03 02 01 00 200 Storage . 277 Area . 300 . 301 . 377 Byte Byte Byte Byte . . . Word Word/Register 377 (two bytes) ภาพที่ 3.8 ผังหน่วยความจาส่วนพนื้ ทเ่ี กบ็ ข้อมลู (Storage area section of the data table)  User Program Area เปน็ พ้นื ทีห่ นว่ ยความจาสาหรับเกบ็ โปรแกรมคาสั่ง ทีผ่ ้ใู ช้ (User) กาหนดหรอื เขียนขน้ึ จะมีพื้นท่ีหนว่ ยความจามากหรอื น้อยขนึ้ อยกู่ บั ขนาดของโปรแกรม เมเบิลคอนโทรลเลอร์ ท่ีระบุตามจานวนอินพุตและเอาต์พุต (I/O Capacity) โปรแกรมเมเบิล คอนโทรลเลอร์ขนาดกลางและขนาดใหญ่ สามารถเพ่ิมหน่วยความจาประเภทน้ไี ด้ ส่วนโปรแกรมเม เบิลคอนโทรลเลอร์ขนาดเลก็ ไมส่ ามารถขยายพน้ื ท่ีหนว่ ยความจานีไ้ ด้ โครงสรา้ งและสว่ นประกอบของโปรแกรมเมเบลิ คอนโทรลเลอร์

2104-2109 การโปรแกรมและควบคุมไฟฟา้ |47 ภาพที่ 3.9 ตวั อยา่ งการกาหนดพ้นื ท่หี น่วยความจาส่วนของอนิ พุต/เอาตพ์ ตุ และสาหรบั ผ้ใู ช้งาน จากภาพที่ 3.9 เป็นตัวอย่างการกาหนดตาแหน่ง ( Address) ใน หนว่ ยความจาสาหรบั ใช้งาน (Application Memory map) โดยกาหนดใหส้ ว่ นทใี่ ช้งานสาหรับอินพุต แบบบิตจานวน 128 บิต ใช้สาหรับเอาต์พุตแบบบิตจานวน 128 บิต ใช้สาหรับเอาต์พุตภายในแบบ บติ จานวน 128 บติ ใชส้ าหรับเป็นรีจีสเตอร์จานวน 256 เวิรด์ และใช้สาหรับการเขียนโปรแกรมคาสั่ง จานวน 3816 เวิร์ด 1) ชนดิ หน่วยความจา หน่วยความจามีความสาคัญต่อการเลือกใช้งาน เช่น หากต้องการใช้ หน่วยความจาสาหรับโปรแกรมบรหิ าร (Executive memory) จะต้องเปน็ ชนดิ ทม่ี คี วามมัน่ คงตอ่ การ เก็บข้อมูล ผู้ใช้ (User) ไม่สามารถลบได้หรือข้อมูลต้องไม่สูญเสียเม่ือไฟฟ้าดับ ดังนั้นจึงแยก หน่วยความจาออกเป็น 2 กลุ่ม คือกลุ่มท่ีเปล่ียนแปลงแก้ไขข้อมูลได้ง่าย (Volatile memory) และ กลุ่มที่ไมส่ ามารถเปลี่ยนแปลงแกไ้ ขข้อมูลได้ (Nonvolatile memory) ก) ROM (Read Only Memory) เป็นหน่วยความจาท่ีอ่านข้อมลู ได้อย่างเดียว ไม่สามารถแก้ไขหรือเปลี่ยนแปลงข้อมูลและสามารถเก็บข้อมูลได้ ถึงแม้จะไม่มี โครงสรา้ งและสว่ นประกอบของโปรแกรมเมเบิลคอนโทรลเลอร์

48 | 2104-2109 การโปรแกรมและควบคมุ ไฟฟ้า กระแสไฟฟ้าอยู่ก็ตาม ดังนั้น ROM จึงเหมาะสาหรับการเก็บโปรแกรมบริหารระบบหรอื โปรแกรมท่ี เสรจ็ สมบรู ณ์พรอ้ มใช้งานและไม่ตอ้ งการแกไ้ ขโปรแกรมอีก ข) RAM (Random Access Memory) เป็นหน่วยความจาท่ี สามารถเปลย่ี นแปลง แก้ไขขอ้ มูลได้ จงึ เหมาะสาหรบั การเก็บโปรแกรมทฝ่ี ึกหดั หรอื ทดลองเขียนก่อน นาไปใช้งานจริง แต่ข้อมูลหรือโปรแกรมที่เก็บใน RAM จะสูญหายเมื่อไม่มีแหล่งจ่ายหรือไฟดับไป ดังนั้นถ้าต้องการใช้เก็บข้อมูลหรือโปรแกรมเพื่อใช้งาน จะต้องต่อแหล่งจ่ายหรือแบตเตอรี่สารองไว้ เมื่อเกดิ ไฟดบั ไป ขอ้ มูลถึงจะไมส่ ญู หาย ค) EPROM ( Erasable Programmable Read Only Memory) เป็นหน่วยความจาท่ีใช้เก็บโปรแกรมที่จะนาไปใช้จริง ๆ น้ันหมายถึงเป็นโปรแกรมท่ีถูก เขยี นขน้ึ และแกไ้ ขที่สมบรู ณ์แล้ว โดยจะทาการโอนถ่ายขอ้ มูลจาก RAM มาสู่ EPROM ด้วยเครื่องอัด โปรแกรมที่เรยี กว่า Prom Writer (หรอื ในปจั จบุ นั อาจใชว้ ิธีท่ีสะดวกและแตกตา่ งกนั ออกไปได้) ข้อมลู ทจ่ี ดั เกบ็ ในหน่วยความจาประเภทน้ีจะไม่มกี ารสูญหายเมอ่ื ไฟดับไป แตถ่ า้ ตอ้ งการลบหรอื ลา้ งข้อมูลก็ สามารถทาได้โดยการฉายแสงอุลตร้าไวโอเลตเข้าไปท่ีช่องรับแสงของ EPROM แต่การลบข้อมูล ดังกล่าวไมส่ ามารถลบบางส่วนไดต้ ้องลบทงั้ หมดเท่านนั้ ง) EAPROM (Electrically Alterable Programmable Read Only Memory) เปน็ หน่วยความจาทม่ี ีคุณสมบตั ิคลา้ ยกับ EPROM แต่แตกต่างกนั ท่ีวธิ ีการลบข้อมูล ใช้เก็บโปรแกรมที่ถูกเขียนข้ึนและแก้ไขที่สมบูรณ์แล้ว โดยจะทาการโอนถ่ายข้อมูลจาก RAM มาสู่ EAROM ข้อมูลที่จัดเก็บในหน่วยความจาประเภทนี้จะไม่มีการสูญหายเม่ือไฟดับไป การลบหรือล้าง ข้อมูลก็สามารถทาได้โดยการป้อนแรงดันเข้าไปในวงจรของ EAPROM หน่วยความจาประเภทน้ีไม่ เปน็ ท่ีนิยมใช้กันเนื่องจากไม่สามารถลบบางส่วนได้ต้องลบท้ังหมดเท่าน้นั เหมือนกับ EPROM ดังภาพ ที่ 3.10 ภาพที่ 3.10 Electrically Alterable Programmable Read Only Memory ทมี่ า : http://moodleplc.krutechnic.com/unit37.html โครงสร้างและสว่ นประกอบของโปรแกรมเมเบิลคอนโทรลเลอร์

2104-2109 การโปรแกรมและควบคมุ ไฟฟา้ |49 จ) EEPROM ( Electrically Erasable Programmable Read Only Memory) เปน็ หน่วยความจาท่ีใช้เก็บโปรแกรมที่สมบูรณ์ น้นั หมายถึงเป็นโปรแกรมทถี่ กู เขยี น ขึ้นและแก้ไขที่สมบูรณ์แล้ว โดนจะทาการโอนถ่ายข้อมูล โดยโอนถา่ ยจาก RAM มาสู่ EEPROM ดว้ ย เครื่องอัดโปรแกรมชนิดพิเศษโดยเฉพาะ ด้วยหลักการลบข้อมูลหรือโปรแกรมโดยการป้อนสัญญาณ พัลส์เข้าไปในวงจรของ EEPROM และสามารถกาหนดการลบหรือแก้ไขในเฉพาะบางส่วนของ หนว่ ยความจาได้ ซึ่งเป็นข้อดขี อง EEPROM เมอื่ เทียบกับหน่วยความจาชนดิ อ่ืนๆ ภาพท่ี 3.11 Electrically Erasable Programmable Read Only Memory ท่มี า : http://moodleplc.krutechnic.com/unit37.html 3.1.4 หน่วยเอาตพ์ ตุ (Output Unit) หน่วยเอาต์พุต มีหน้าท่ีรับสัญญาณท่ีได้รับจากการประมวลผลกลาง ด้วยวงจรแยก สัญญาณด้วยแสง (Opto Isolate) จากนั้นจะทาการปรับแต่งระดับของสัญญาณให้เป็นสัญญาณที่ เหมาะสมกับอุปกรณ์เอาต์พตุ ที่ต้องการ เช่น สัญญาณดิจิทัลหรือแอนาล็อก โดยในส่วนน้ีจะต้องผ่าน วงจรแปลงสัญญาณดิจิทัลเป็นสัญญาณแอนาล็อก (Digital to Analog Conversion : DAC) เพ่ือ นาไปใชก้ บั อุปกรณเ์ อาต์พุตท่ีเปน็ สญั ญาณแอนาล็อก แต่ถ้าอุปกรณ์เอาตพ์ ุตเป็นแบบดิจทิ ัลอยู่แล้วจะ ปรบั ระดับสัญญาณดจิ ทิ ัลใหม้ คี ่าทเ่ี หมาะสมเพอ่ื ขับอปุ กรณเ์ อาตพ์ ตุ 3.1.5 อปุ กรณเ์ อาตพ์ ตุ (Output Device) อุปกรณ์เอาต์พุต เป็นส่วนประกอบที่สาคัญที่จะต้องระมัดระวังในการต่อใช้งาน ท้ังน้ี เน่ืองจากจะต้องเชื่อมต่ออุปกรณ์เอาต์พุตที่อาจจะเป็นสัญญาณแอนาล็อกหรือสัญญาณดิจิทัล เช่น หลอดไฟ มอเตอร์ โซลินอยด์ แมคเนติค คอนแทกเตอร์ เป็นต้น การต่อวงจรของอุปกรณ์เอาต์พุต บางครั้งอุปกรณ์นั้นอาจจะมีพิกัดกาลังและกนิ กระแสสูงจึงต้องใช้แหล่งจ่ายจากภายนอก หรือแหล่ง ภายในหน่วยจ่ายพลังงานของโปรแกรมเมเบิลคอนโทรลเลอร์ก็ได้ ข้ึนอยู่กับความสามารถของ แหลง่ จ่าย ตัวอย่างอปุ กรณ์เอาต์พุต ดงั ภาพที่ 3.12 โครงสร้างและสว่ นประกอบของโปรแกรมเมเบลิ คอนโทรลเลอร์

50 | 2104-2109 การโปรแกรมและควบคมุ ไฟฟา้ ภาพท่ี 3.12 ตวั อย่างอปุ กรณเ์ อาต์พุตของโปรแกรมเมเบิลคอนโทรลเลอร์ชนดิ ต่าง ๆ 3.1.6 หนว่ ยปอ้ นโปรแกรม (Programming Unit) หน่วยป้อนโปรแกรมจะใช้สาหรับเขียนโปรแกรมคาส่ังของโปรแกรมเมเบิล คอนโทรลเลอร์ ซึ่งหน่วยป้อนโปรแกรมนี้มหี ลายลักษณะข้ึนอยู่กับชนิดและโครงสร้างของโปรแกรม เมเบิลคอนโทรลเลอร์ด้วย ตัวอย่างเช่น ชุดป้อนโปรแกรมแบบมือถือ (Handle key, Hand held, Programming console) ชุดป้อนโปรแกรมแบบต้ังโต๊ะ (Desktop Programming) ชุดป้อน โปรแกรมดว้ ยคอมพิวเตอร์ (Computer Programming) หรือหากเปน็ โปรแกรมเมเบลิ คอนโทรลเลอร์ ขนาดเลก็ มากท่ีบางครัง้ ถกู เรียกว่าสมาร์ทรีเลย์ (Smart Relay) ตวั อย่างสมาร์ทรีเลยท์ ีน่ ิยมใช้กัน เช่น Siemens-Logo หรือ Schneider-Selio เป็นต้น ซ่ึงเขียนโปรแกรมด้วยการกดคีย์ที่อยู่บนตัวสมารท์ รีเลย์ได้เลย บางรุ่นจะมีจอ LCD แสดงให้เห็นคาส่ังหรืออาจจะใช้การโปรแกรมผ่านคอมพวิ เตอร์ก็ได้ (ข้ึนอยู่กบั ฟังก์ชนั ของแต่ละรนุ่ ) โดยอปุ กรณป์ ้อนโปรแกรมแตล่ ะชนิดนนั้ จะมีข้อดีข้อเสยี ต่างกัน 3.1.6.1 อุปกรณ์ป้อนโปรแกรมแบบมือถือ ( Handle key, Hand held or Programming console) ชุดป้อนโปรแกรมแบบมือถือ มักใช้กับโปรแกรมเมเบิลคอนโทรลเลอร์ ขนาดเล็กหรือขนาดกลางที่มีจานวนอินพุตเอาต์พุตไม่มากนัก เพราะมีความรวดเร็วและง่ายในการ โครงสรา้ งและสว่ นประกอบของโปรแกรมเมเบิลคอนโทรลเลอร์

2104-2109 การโปรแกรมและควบคุมไฟฟา้ |51 แก้ไขโปรแกรม (ในกรณีโปรแกรมหรือระบบควบคุมขนาดเล็ก) เพียงแค่ต่อชุดป้อนโปรแกรมแบบมือ ถือเข้ากับโปรแกรมเมเบิลคอนโทรลเลอร์ผ่านพอร์ตอนกุ รม ก็สามารถทาการแก้ไขโปรแกรมได้ ส่วน ข้อเสียของการป้อนโปรแกรมนไี้ ด้แก่ ภาษาในการเขียนโปรแกรมค่อนข้างจากดั และเฉพาะ เช่น ภาษา บูลีน เป็นต้น ซึ่งไม่สามารถจาลองการทางาน (Simulate) ระบบท้ังหมดได้ โดยเฉพาะระบบการ ควบคุมที่มีโปรแกรมหลายร้อยบรรทัด การแก้ไขย่อมทาให้เกิดความยุ่งยากตลอดจนการติดต่อกับ อปุ กรณ์ภายนอก เช่น เครื่องพมิ พ์ กระทาไดย้ ากด้วย ภาพท่ี 3.13 ชดุ ปอ้ นโปรแกรมแบบมือถอื Siemens 6ES5605-0UB11 Simatic S5 Programming Unit PG 605U ท่ีมา : http://www.ebay.com/itm/Siemens-6ES5605-0UB11-Simatic-S5-Programming- Unit-PG-605U-/291812192609 3.1.6.2 อุปกรณ์ป้อนโปรแกรมแบบต้ังโต๊ะ (Desktop Programming) ชุดป้อน โปรแกรมแบบนี้จะมีข้อดีข้อเสียคล้ายกับชุดป้อนโปรแกรมแบบมือถือ แต่สามารถเขียนหรือแก้ไข โปรแกรม ตลอดจนการตรวจสอบโปรแกรมไดท้ ีละหลายๆบรรทดั และภาษาท่เี ขียนโปรแกรมสามารถ เลือกได้หลายภาษา เช่น ภาษาแลดเดอร์, ภาษาบูลีน, ภาษาบล็อก เป็นต้น และยังง่ายต่อการติดตอ่ กับอุปกรณ์ภายนอกอกี ดว้ ย และ Touch screen จะจดั อย่ใู นชุดปอ้ นโปรแกรมกล่มุ น้เี ชน่ กัน โครงสร้างและสว่ นประกอบของโปรแกรมเมเบลิ คอนโทรลเลอร์

52 | 2104-2109 การโปรแกรมและควบคุมไฟฟา้ ภาพที่ 3.14 ชดุ ป้อนโปรแกรมแบบตง้ั โต๊ะ ท่ีมา : http://www.ac-grenoble.fr/lycee/boissy.anglas/articles.php?lng=fr&pg=70 3.1.6.3 อุปกรณ์ป้อนโปรแกรมด้วยคอมพิวเตอร์ (Computer Programming) ชุดป้อนโปรแกรมด้วยคอมพิวเตอร์ได้รับความสนใจมากในปัจจุบัน เน่ืองจากมีความสะดวกในการ เขียนและการตรวจสอบแก้ไขข้อบกพร่องต่าง ๆ ของโปรแกรมกระทาได้ง่าย สามารถจาลองการ ทางานของโปรแกรมท่ีเขยี นก่อนการตอ่ ใชง้ านจริงและงา่ ยต่อการตดิ ต่อกบั อุปกรณ์รว่ มของระบบการ ควบคุมได้ดี เช่น เครื่องพิมพ์ ช่องทางการเช่ือมต่อในระบบโครงข่ายในรูปแบบหรือมาตรฐาน ต่าง ๆ เชน่ ระบบ DCS หรือระบบ SCADA สงิ่ หนึ่งทเ่ี ปน็ ความยุ่งยากของการใช้ชุดปอ้ นโปรแกรมดว้ ยคอมพิวเตอร์ คือ ต้องมีทักษะการใช้คอมพิวเตอร์ ระบบและการใช้อุปกรณ์ร่วมต่าง ๆ เช่น ระบบโครงข่าย เป็นต้น ตลอดจนการใช้โปรแกรมสาเร็จรูปสาหรับเขียนคาส่ังท่ีบริษัทผู้ผลิตโปรแกรมเมเบิลคอนโทรลเลอร์ สร้างขนึ้ มาเอง เช่น โปรแกรมเมเบิลคอนโทรลเลอรบ์ ริษัท Siemens ใช้ซอฟต์แวร์ SIMATIC (S5, S7) บริษัท MITSUBISHI (FX-Series) ใช้ซอฟต์แวร์ MEDOC, FXES ฯลฯ เป็นต้น ซอฟต์แวร์ท่ีบริษัท ต่าง ๆ สร้างข้ึนมา ต่างก็มีการพัฒนาอย่างตอ่ เน่อื ง เพ่ือให้ใช้งานงา่ ย สังเกตได้จากในเวอร์ช่ันแรก ๆ จะรัน(RUN)บน DOS แตพ่ อมาในชว่ งหลังจะรันบน WINDOWS และอนื่ ๆ ซึง่ ทาใหง้ ่ายตอ่ การใช้งาน และการเรียนรูม้ ากขึน้ โครงสร้างและสว่ นประกอบของโปรแกรมเมเบลิ คอนโทรลเลอร์

2104-2109 การโปรแกรมและควบคมุ ไฟฟา้ |53 ภาพท่ี 3.15 ตัวอย่างโปรแกรมท่ใี ช้เขียนคาสั่งโปรแกรมเมเบิลคอนโทรลเลอร์ ทม่ี า : http://www.ie.co.th/s7-1200-software.html 3.1.7 หนว่ ยจา่ ยพลงั งาน (Power supply unit) หนว่ ยจา่ ยพลังงานมหี น้าทีส่ าหรับการจ่ายกระแสไฟฟ้าให้กับส่วนประกอบตา่ ง ๆ ของ โปรแกรมเมเบิลคอนโทรลเลอร์ โดยมีหลักการที่สาคัญ คือการจ่ายกระแสไฟฟ้าเพื่อเลี้ยงวงจร อิเล็กทรอนิกส์ ท้ังในหน่วยอินพตุ หน่วยเอาต์พตุ CPU หรือหน่วยป้อนโปรแกรมบางรุ่น เช่นแบบมอื ถือ จะเป็นไฟฟ้ากระแสตรงแรงดันต่า (DC 5,12 หรือ 24 โวลต์) แต่ถ้าเป็นวงจรอินพุต หรือวงจร เอาตพ์ ุตท่ตี ้องการกระแสไฟฟ้าแบบสลบั จะตอ้ งรบั ไฟจากวงจรภายนอก โครงสรา้ งและสว่ นประกอบของโปรแกรมเมเบลิ คอนโทรลเลอร์

54 | 2104-2109 การโปรแกรมและควบคมุ ไฟฟา้ ภาพที่ 3.16 หนว่ ยจ่ายพลังงานในระบบ PC Siemens รนุ่ PM 1207 ท่มี า : http://www.ie.co.th/s7-1200-power-supply.html 3.2 การทางานของโปรแกรมเมเบิลคอนโทรลเลอร์ การทางานของโปรแกรมเมเบิลคอนโทรลเลอร์ หมายถึง การทางานร่วม ประสาน และ เชือ่ มโยงกันระหวา่ งส่วนประกอบทั้งหมด ซงึ่ เป็นไปอยา่ งมีระบบ โดยมีหน่วยประมวลผลกลาง (CPU) เป็นสว่ นส่งั การของระบบทงั้ หมด เมอื่ อปุ กรณ์อินพตุ (Input Device) ตรวจจับสภาวะตา่ ง ๆ ท่เี ป็นอยูห่ รือเปล่ียนไปเม่อื อุปกรณ์ อนิ พตุ มกี ารเปลย่ี นแปลงระดบั ของสัญญาณ จากนน้ั หน่วยอนิ พุต (Input Unit) จะทาการรบั สัญญาณ น้ันมาปรับแต่งสัญญาณจากแอนาล็อกเป็นดิจิทัล หรือสัญญาณดิจิทัลเป็นดิจิทัลท่ีมีระดับสัญญาณท่ี เหมาะสม และทาให้หน่วยประมวลผลกลาง (CPU) รับรู้ เพ่ือทาการประมวลผลเทียบกบั โปรแกรมที่ เขียนขึ้นและเก็บไว้ในหน่วยความจา ได้ผลลัพธ์อย่างไรก็ส่งผลลัพธ์น้ันออกไปเพ่ือปรับแต่งสัญญาณ เอาต์พุตโดยหน่วยเอาต์พุต (Output Unit) เพื่อให้มีระดับที่เหมาะสมกับอุปกรณ์เอาต์พุต (Output Device) น้ัน ๆ ตามตอ้ งการ จากน้ันก็จะวนรอบไปรอรับสถานะของอินพุตใหม่อกี คร้ังอย่างนี้เรื่อย ๆ ไป การทางานท่ีวนรอบดังกล่าวจะถูกเรียกวา่ การสแกน (Scanning) ส่วนเวลาท่ีใช้ในการทางาน ในหนึ่งรอบน้ันจะเรียกว่า เวลาการสแกน (Scan Time) ค่าเวลาที่ใช้ไปใน 1 รอบ หรือค่า Scan Time มักจะอยู่ระหวา่ ง 1-100 มิลลิวินาที (ms) แต่ทั้งน้ีท้ังนั้นก็ข้ึนอย่กู ับขนาดของข้อมลู และความ ยาวของโปรแกรม ตลอดจนจานวนอินพุตและเอาตพ์ ุตทเี่ ชอื่ มต่อด้วย โครงสรา้ งและสว่ นประกอบของโปรแกรมเมเบิลคอนโทรลเลอร์

2104-2109 การโปรแกรมและควบคมุ ไฟฟา้ |55 Input Device Input Unit CPU Output Unit Output Device ภาพท่ี 3.17 การทางานของโปรแกรมเมเบลิ คอนโทรลเลอร์ การวดั ความเร็วในการทางานของโปรแกรมเมเบิลคอนโทรลเลอร์ จะวัดท่ีความเร็วในการสแกน โดยจะเทียบท่ีข้อมูลหรือโปรแกรมท่ีมีความยาวขนาด 1 กิโลไบต์ (1 Kbyte) ซ่ึงโปรแกรมเมเบิล คอนโทรลเลอร์แต่ละตัวหรือแต่ละบริษัทจะมีความเร็วในการสแกนไม่เทา่ กัน (ซงึ่ สามารถดูค่าเวลาใน การสแกนไดจ้ ากคู่มอื การใช้งาน (Data Sheet) ของโปรแกรมเมเบิลคอนโทรลเลอร์ทแ่ี นบมาให)้ เช่น โปรแกรมเมเบิลคอนโทรลเลอร์ ตัวหน่ึงมีค่า Scan Time เท่ากับ 10 ms หมายความว่า ข้อมูลหรือ โปรแกรมท่ีมคี วามยาวขนาด 1 กโิ ลไบต์ใช้เวลาในการสแกนเท่ากับ 10 มลิ ลวิ นิ าที เป็นตน้ ดังน้ัน ค่า Scan Time น้ีจะมีความสาคัญกับการทางานหรือการเปล่ียนแปลงของอุปกรณ์ อินพุต ถ้าอุปกรณ์อินพุตมีการเปล่ียนแปลงเร็วมาก เช่น High Speed Input การเลือกใช้ค่า Scan Time จะต้องเลือกค่าเวลาน้อย ๆ (แสดงว่าโปรแกรมเมเบิลคอนโทรลเลอร์น้ันทางานเร็ว) CPU จึง สามารถประมวลผลได้ทันต่อสภาวะการเปลย่ี นแปลงค่าของอนิ พตุ 3.3 การเชื่อมต่อหน่วยอินพุต/เอาต์พุต หน่วยอินพตุ /เอาต์พตุ ของโปรแกรมเมเบิลคอนโทรลเลอร์ จะแบง่ ตามลกั ษณะการนาไปใช้งาน และการประมวลผลสัญญาณอินพตุ /เอาต์พุตท่ีเข้าและออกจากหนว่ ยอินพุต/เอาต์พุตน้นั ๆ สามารถ แบง่ ประเภทไดด้ ังน้ี โครงสรา้ งและสว่ นประกอบของโปรแกรมเมเบิลคอนโทรลเลอร์

56 | 2104-2109 การโปรแกรมและควบคมุ ไฟฟา้ 3.3.1 หน่วยอนิ พตุ /เอาต์พตุ แบบดิจิทลั สาหรับหน่วยอินพุต/เอาต์พุตแบบดิจิทัล หรือเรียกอีกอย่างหน่ึงว่าหน่วย อินพุต/เอาต์พุตแบบลอจิก หมายถึงหน่วยที่ทาหน้าท่ีรับสัญญาณและส่งสัญญาณ ระหว่างอุปกรณ์ อินพตุ /เอาต์พตุ ในลกั ษณะเปิด/ปิด (ON/OFF) หรือ 1/0 เท่านน้ั สว่ นหน่วยอนิ พตุ (Input Units) จะ รับสญั ญาณจากอุปกรณอ์ นิ พุตท่ีสง่ มาในลกั ษณะปิด/เปิด เชน่ สวติ ช,์ เซนเซอร์ที่ให้เอาตพ์ ุตเป็นแบบ ปิด/เปิด ในส่วนของหน่วยเอาต์พุต จะส่งสัญญาณไปยังอุปกรณ์เอาต์พุตต่าง ๆ ในลักษณะปิด/เปิด เชน่ กนั ไดอะแกรมของหน่วยอินพุต/เอาตพ์ ุตแบบดจิ ิทัลแสดงให้เหน็ ดงั ภาพท่ี 3.18 ภาพท่ี 3.18 ไดอะแกรมของหนว่ ยอินพุต/เอาต์พุตแบบดจิ ิทลั ทีม่ า : ธีรศิลป์ ทมุ วิภาตและสุภาพร จาปาทอง (2547: 113) 3.3.1.1 หน้าท่ีของหนว่ ยอินพตุ /เอาตพ์ ตุ แบบดิจทิ ัล 1) หนว่ ยอนิ พตุ แบบดจิ ิทลั ทาหนา้ ทร่ี บั สัญญาณสภาวะการเปิด/ปิดของ อุปกรณ์อินพุตต่าง ๆ ท่ีต่ออยู่กับหน่วยอินพุตชนิดน้ี อุปกรณ์อินพุตดังกล่าว ได้แก่ อุปกรณ์จาพวก สวิตช์ ลิมิตสวิตช์ หรือเซนเซอร์ท่ีทางานในลักษณะเปิด/ปิด เข้ามายังหน่วยอินพตุ หลังจากนั้นจะนา ขอ้ มลู สถานะของอุปกรณอ์ นิ พตุ ส่งไปยงั ส่วนของหนว่ ยประมวลผลกลางเพ่ือประมวลผลต่อไป 2) หน่วยเอาต์พุตแบบดิจิทัล ทาหน้าท่ีนาสัญญาณท่ีได้จากการ ประมวลผลที่หน่วยประมวลผลกลางเพ่ือส่ังให้เอาต์พุตแบบดิจิทัลทางานปิด/เปิดอุปกรณ์ เอาต์พุต ต่าง ๆ ตัวอย่างของอุปกรณ์เอาต์พุตแบบดิจิทัลน้ี ได้แก่ แมกเนติกคอนแทกเตอร์, มอเตอร์ หรือ โซลินอยด์วาลว์ เปน็ ตน้ 3.3.1.2 ประเภทของหน่วยอนิ พตุ /เอาต์พุตแบบดิจิทัล สามารถแบ่งตามประเภท การใชง้ านได้ดังน้ี 1) ประเภทของหนว่ ยอินพตุ แบบดิจิทัล แบง่ ได้เปน็ 3 ประเภท คือ ก) หนว่ ยอินพุตทร่ี บั สญั ญาณไฟฟ้ากระแสตรง (DC Input Unit) ข) หน่วยอินพตุ ท่ีรบั สัญญาณเปน็ ไฟฟ้ากระแสสลับ (AC Input Unit) ค) หน่วยอินพตุ ท่ีรับสัญญาณได้ทั้งไฟฟ้ากระแสตรงและกระแสสลับ (DC/AC Input Unit) โครงสรา้ งและสว่ นประกอบของโปรแกรมเมเบลิ คอนโทรลเลอร์

2104-2109 การโปรแกรมและควบคุมไฟฟา้ |57 การเลือกใช้งานหน่วยอินพุตแต่ละประเภท จะข้ึนอยู่กับการเลือกใช้ งานอุปกรณ์อนิ พุตด้วย ว่าใช้แหล่งจ่ายไฟเพือ่ สั่งให้อปุ กรณ์เหล่านัน้ ทางานเป็นไฟฟ้ากระแสตรงหรือ ไฟฟ้ากระแสสลับ อุปกรณ์อินพุตที่ใช้ไฟฟ้ากระแสตรง ได้แก่ สวิตช์, เซนเซอร์ต่าง ๆ เป็นต้น หรือ อุปกรณอ์ ินพุตที่ใชไ้ ฟฟา้ กระแสสลบั ไดแ้ ก่ พร๊อกซิมิตเ้ี ซนเซอรแ์ บบทีใ่ ชไ้ ฟฟ้ากระแสสลับ เปน็ ตน้ 2) ประเภทของหน่วยเอาต์พุตแบบดิจิทัล สามารถแบ่งตามวงจรทาง ภาคเอาต์พุตของหนว่ ยเอาตพ์ ตุ แต่ละแบบ ไดแ้ ก่ ก) หน่วยเอาต์พุตแบบรีเลย์ (Relay Output Unit) หรือ แบบ คอนแทกต์ (Contact Output Unit) สามารถใช้งานกับอุปกรณ์เอาต์พุตท่ีรับสัญญาณเป็นไฟฟ้า กระแสตรง หรือไฟฟ้ากระแสสลับก็ได้ ตัวอย่างอุปกรณ์เหล่าน้ีได้แก่ แมกเนติกคอนแทกเตอร์ หรือ หลอดไฟแสดงผล เป็นต้น ข) หน่วยเอาต์พุตแบบทรานซิสเตอร์ (Transistor Output Unit) มักจะนาไปใช้ในการควบคุมอุปกรณ์เอาต์พุตท่ีต้องการเปิด/ปิดอย่างรวดเร็ว โดยใช้ทรานซิสเตอร์ ควบคุมการเปิด/ปดิ อุปกรณ์เหลา่ น้นั สาหรับหนว่ ยเอาต์พุตชนดิ น้ีตอ้ งใช้งานกบั อปุ กรณท์ ี่ใช้งานไฟฟ้า กระแสตรงเทา่ น้ัน ค) หน่วยเอาตพ์ ตุ แบบไตรแอก (Triac Output Unit) ใชก้ ับอปุ กรณ์ เอาต์พตุ ทใ่ี ชง้ านไฟฟา้ กระแสสลบั เทา่ นน้ั และสามารถใชไ้ ดก้ ับอปุ กรณ์เอาต์พตุ ทีต่ อ้ งการกระแสสูงๆ การเลือกใช้หน่วยเอาต์พุตแบบดิจิทัลว่าควรใช้แบบใดขึ้นอยู่กับค่า แรงดันสงู สุดของโหลด (Rated Load Voltage) ทีใ่ ช้ หรอื จานนของอปุ กรณ์เอาตพ์ ตุ ทีต่ ้องการใช้งาน 3.3.2 หนว่ ยอินพุต/เอาตพ์ ุตแบบแอนาลอ็ ก หน่วยอินพุต/เอาต์พุตแบบแอนาล็อก แตกต่างจากหน่วยอินพุต/เอาต์พุตแบบดิจิทัล ตรงที่หน่วยอินพุต/เอาต์พุตชนิดนี้ จะรับและส่งสัญญาณกับอุปกรณ์อินพุต/เอาต์พุตแบบแอนาล็อก แลว้ นาสญั ญาณแอนาล็อกเหลา่ นไ้ี ปแปลงเป็นสัญญาณดจิ ิทัล เพื่อสง่ ต่อให้ CPU ประมวลผลตอ่ ไป ดังนั้นการเรียนรู้การใช้งานอปุ กรณ์ท่ีทาหนา้ ที่แปลงสัญญาณแอนาล็อกเป็นสัญญาณ ดิจิทัล (Analog to Digital Converter : ADC) และสัญญาณดิจิทัลเป็นสัญญาณแอนาล็อก (Digital to Analog Converter : DAC) จึงมีประโยชน์อย่างย่ิง หน้าท่ีของหน่วยอินพุต/เอาต์พุตแบบแอนา ลอ็ ก สามารถอธบิ ายได้ดงั น้ี 3.3.2.1 หนา้ ทข่ี องหน่วยอินพตุ /เอาต์พุตแบบแอนาลอ็ ก หน่วยอินพุต/เอาต์พุตแบบแอนาล็อก ทาหน้าที่นาสัญญาณแอนาล็อก มาตรฐานต่าง ๆ เช่น กระแส 4-20 มิลลิแอมป์ (mA) หรือแรงดัน 1-5 โวลต์ (V) เป็นต้น เพื่อนา สัญญาณดังกล่าวไปแปลงเป็นข้อมูลดิจิทัลส่งไปยังหน่วยประมวลผลกลาง หลังจากที่หน่วย ประมวลผลทาการประมวลผลแล้ว จะส่งข้อมูลแบบดิจิทัลให้กับหน่วยเอาต์พุตแบบแอนาล็อก เพ่ือ แปลงเป็นสัญญาณแอนาล็อกขนาดต่าง ๆ เช่น แรงดันไฟฟ้า 0-10 โวลต์ หรือกระแสไฟฟ้า 4-20 โครงสรา้ งและสว่ นประกอบของโปรแกรมเมเบลิ คอนโทรลเลอร์

58 | 2104-2109 การโปรแกรมและควบคมุ ไฟฟ้า มิลลิแอมป์ เพื่อนาไปควบคุมอุปกรณ์แอนาล็อกเอาต์พุต เช่น ควบคุมอินเวอรเ์ ตอร์, เซอร์โวไดรเวอร์ เปน็ ต้น ตวั อยา่ งการใชง้ านหนว่ ยอนิ พตุ /เอาตพ์ ุตแบบแอนาลอ็ กได้ดังภาพที่ 3.19 ภาพท่ี 3.19 ตวั อย่างการใชง้ านหน่วยอนิ พุต/เอาตพ์ ตุ แบบแอนาลอ็ ก ทีม่ า : ธรี ศิลป์ ทมุ วภิ าตและสภุ าพร จาปาทอง (2547: 122) 3.3.2.2 ประเภทของหนว่ ยอนิ พุต/เอาต์พตุ แบบแอนาลอ็ ก หนว่ ยอินพุต/เอาตพ์ ุตแบบแอนาล็อกสามารถแบง่ ได้เปน็ 3 ประเภท คอื 1) หน่วยอินพุตแบบแอนาล็อก (Analog Input Units) หน่วยอินพุต แบบแอนาล็อกทาหน้าท่ีแปลงสัญญาณแอนาล็อกมาตรฐาน เช่น กระแส 4-20 มิลลิแอมป์ (mA), แรงดัน 1-5 โวลต์ หรือแรงดัน 0-10 โวลต์ ให้เปน็ ขอ้ มูลดิจิทัล เพอื่ ส่งต่อไปยังหน่วยประมวลผลกลาง (CPU) เพ่ือประมวลผล สาหรับส่วนประกอบของภาคต่าง ๆ ภายในหน่วยอินพุตแบบแอนาล็อก สามารถแสดงไดอะแกรมของหน่วยอินพุตแบบแอนาล็อกได้ดังน้ี โครงสรา้ งและสว่ นประกอบของโปรแกรมเมเบิลคอนโทรลเลอร์

2104-2109 การโปรแกรมและควบคุมไฟฟา้ |59 ภาพท่ี 3.20 ไดอะแกรมของหนว่ ยอนิ พตุ แบบแอนาล็อก ทม่ี า : ธรี ศิลป์ ทมุ วิภาตและสุภาพร จาปาทอง (2547: 123) จากไดอะแกรมในภาพที่ 3.20 ตัวปรับขยายสัญญาณทาหน้าที่ปรับขยาย สัญญาณแอนาล็อกทเี่ ข้ามาทางอนิ พตุ ,ตัวเลือกช่องสัญญาณทาหน้าที่เลอื กช่องสญั ญาณ, ตัวเก็บและ คงค่าสัญญาณ ใช้เก็บและคงค่าสัญญาณตามช่วงเวลา ในขณะที่ทาการแปลงสัญญาณแอนาล็อกเป็น ข้อมูลดิจิทัลขนาด n บิต และตัวแปลงสัญญาณแอนาล็อกเป็นดิจิทัล A to D (Analog to Digital Controller) ทาหนา้ ทีแ่ ปลงสญั ญาณแอนาลอ็ กเปน็ ดจิ ิทัล เพื่อสง่ ให้ CPU ประมวลผลตอ่ ไป ความละเอยี ดของการแปลงจากสัญญาณแอนาล็อกเป็นดจิ ิทัล จะขึ้นอยู่กับ หน่วยอินพตุ แบบแอนาล็อกทใ่ี ชม้ ีขนาดกบ่ี ติ ถา้ จานวนบิตมากยิ่งมคี วามละเอยี ดมาก 2) หน่วยเอาต์พตุ แบบแอนาล็อก (Analog Output Units) ทาหน้าที่ แปลงข้อมูลดจิ ทิ ัลท่ถี กู ส่งออกมาจากหนว่ ยประมวลผล เพ่ือนามาแปลงเปน็ สญั ญาณแอนาล็อก ทเ่ี ป็น กระแสไฟฟา้ และแรงดนั ไฟฟา้ ขนาดตา่ ง ๆ เพ่ือนาไปควบคมุ อุปกรณท์ ี่รบั สญั ญาณเป็นแอนาล็อก เชน่ อินเวอร์เตอร์ (Inverter), เซอร์โวมอเตอร์ไดรเวอร์ (Servo Motor Driver) เป็นต้น ไดอะแกรมของ หน่วยเอาต์พุตแบบแอนาล็อก เปน็ ดงั ภาพท่ี 3.21 ภาพท่ี 3.21 ไดอะแกรมของหน่วยเอาตพ์ ุตแบบแอนาล็อก ท่ีมา : ธีรศิลป์ ทมุ วภิ าตและสภุ าพร จาปาทอง (2547: 126) โครงสร้างและสว่ นประกอบของโปรแกรมเมเบิลคอนโทรลเลอร์

60 | 2104-2109 การโปรแกรมและควบคุมไฟฟ้า จากบล็อกไดอะแกรมในภาพท่ี 3.21 ค่าข้อมูลทางดิจิทัลท่ีถูกส่งมาจาก คอมพวิ เตอร์จะเข้ามายังตัวแปลงข้อมูลดิจิทัลเปน็ แอนาล็อก ซงึ่ จะทาการแปลงค่าข้อมูลดิจิทัลไปเป็น สัญญาณแอนาล็อก, ตัวเก็บและคงค่าสัญญาณตามช่วงเวลา จะเก็บและคงค่าไว้ตามช่วงเวลา, ตัวเลือกช่องสัญญาณ ทาหน้าที่เลือกส่งสัญญาณออกไปยังช่องสัญญาณต่างๆ และตัวปรับขยาย สัญญาณ ทาหน้าที่ขยายสญั ญาณให้เป็นค่าที่เหมาะสม ท่ใี ช้ในการส่งสญั ญาณแอนาล็อกออกไปยังตัว ควบคุม ความละเอียดของสญั ญาณแอนาล็อกที่ได้ จะขึน้ อย่กู บั จานวนบติ ของข้อมูล ดิจิทัลที่ถูกส่งออกมาจากหน่วยประมวลผลกลาง เช่น ข้อมูลดิจิทัลขนาด 16 บิต จะมีความละเอียด มากกวา่ ข้อมูลดจิ ิทลั ขนาด 4 บิต 3) หน่วยอินพุต-เอาต์พุตแบบแอนาล็อก จะทาหน้าที่เหมือนกับการ นาเอาหน่วยอินพตุ แบบแอนาล็อกและหน่วยเอาต์พุตแบบแอนาลอ็ กมารวมกันอยู่ในหน่วยเดยี วกนั ภาพที่ 3.22 ไดอะแกรมของหนว่ ยอินพตุ -เอาตพ์ ุตแบบแอนาลอ็ ก ที่มา : ธรี ศิลป์ ทุมวิภาตและสุภาพร จาปาทอง (2547: 128) โครงสรา้ งและสว่ นประกอบของโปรแกรมเมเบลิ คอนโทรลเลอร์

2104-2109 การโปรแกรมและควบคุมไฟฟา้ |61 การทางานของหน่วยอินพุต-เอาต์พุตแบบแอนาล็อกจะนาสัญญาณ แอนาล็อกมาแปลงเป็นข้อมูลดิจิทัล หลังจากนั้นจะส่งสัญญาณที่ทาการแปลงแล้วไปยังหน่วย ประมวลผลกลาง หลังจากทาการประมวลผลแล้วจะส่งข้อมูลดิจิทัลออกไปยังหน่วยเอาต์พุตแบบ แอนาล็อกเพื่อแปลงจากข้อมูลดิจิทัลเป็นแอนาล็อกอีกคร้ังหนึ่ง เพื่อนาสัญญาณไปควบคุมอุปกรณ์ เอาตพ์ ุตแบบแอนาลอ็ กตอ่ ไป NOTE รายละเอียดของหนว่ ยอนิ พุต-เอาต์พุตแบบแอนาล็อก จะเหมอื นกบั หนว่ ยอนิ พุตแบบ แอนาล็อกและหน่วยเอาตพ์ ตุ แบบแอนาลอ็ ก เพราะใชห้ ลกั การเดียวกัน หนว่ ยอินพตุ -เอาต์พุตแบบแอนาลอ็ ก มีความสะดวกในการใช้งานและประหยัดพื้นที่ ทีใ่ ชใ้ นการติดตง้ั ยนู ิตบนแบค็ เพลน ในกรณที ่พี น้ื ท่ีท่ใี ชจ้ ากัด 3.3.3 หนว่ ยอนิ พุต/เอาตพ์ ุตแบบพิเศษ สาหรับหน่วยอินพุต/เอาต์พุตแบบพิเศษได้ถูกสร้างข้ึนมาเพื่อใช้กับงานเฉพาะ เช่น ควบคุมตาแหน่งเซอรโ์ วมอเตอร์ (Position Control Unit), ควบคุมการเคล่ือนท่ีของเซอรโ์ วมอเตอร์ (Motion Control Unit), หน่วยควบคมุ อณุ หภูมิ (Temperature Control Unit), หนว่ ยควบคุมการ ทางานแบบ PID (PID Control Unit) เปน็ ต้น โรงงานอุตสาหกรรมส่วนใหญ่ มีการนาโปรแกรมเมเบิลคอนโทรลเลอร์ไปควบคุมการ ทางานของระบบต่าง ๆ มากมาย ซึ่งแต่ละระบบมีการใช้งานแตกต่างกัน นอกจากการใช้งานหน่วย อนิ พุต/เอาต์พุตแบบดิจิทัล และหน่วยอินพตุ /เอาตพ์ ุตแบบแอนาล็อกแลว้ ยงั มีหนว่ ยอนิ พุต/เอาต์พุต แบบพเิ ศษท่ีถูกพฒั นาขึ้นมาใช้งานให้เหมาะสมกบั ระบบตา่ ง ๆ มากขึน้ เชน่  งานควบคมุ การทางานของเซอรโ์ วมอเตอร์ หรอื สเตปปงิ้ มอเตอร์ สามารถเลือกใช้ Position Control Unit หรือ Motion Control Unit  งานควบคุมอุณหภูมิสามารถเลือกใช้ Temperature Control Unit หรือ PID Control Unit  งานควบคุมกระบวนการการทางานแบบครั้ง (Batch Process) สามารถเลือกใช้ PID Control Unit, Temperature Sensor Unit หรือ Loop Control Unit  งานควบคุมการจัดเก็บของในคลังสินค้า (Warehouse) สามารถเลือกใช้ RFID Sensor Unit  งานควบคุมการทางานของอุปกรณ์ตา่ ง ๆ โดยต่อรว่ มกนั เปน็ ระบบ สามารถเลอื กใช้ CompoBus/ S Master Unit, DeviceNet ( CompoBusD) Master Unit, Controller Link Unit หรือ Ethernet Unit ได้ โครงสรา้ งและสว่ นประกอบของโปรแกรมเมเบิลคอนโทรลเลอร์

62 | 2104-2109 การโปรแกรมและควบคมุ ไฟฟ้า 3.4 การเช่ือมตอ่ อุปกรณอ์ ินพุต/เอาตพ์ ตุ ส่ิงสาคญั สาหรบั การนา PC ไปใชง้ าน นน่ั คือการตอ่ PC เข้ากับอุปกรณ์อนิ พุตและเอาต์พุต แต่ กอ่ นอ่นื จาเป็นต้องทราบถงึ วงจรการเชอื่ มตอ่ อุปกรณอ์ นิ พตุ และเอาตพ์ ตุ ของ PC 3.4.1 วงจรเชื่อมต่อหนว่ ยอินพุต (Input Interface) สัญญาณอินพุตจะเป็นสัญญาณแบบรีเลย์, พัลส์, แรงดันไฟฟ้า ( VDC) หรือ กระแสไฟฟา้ (mA) สญั ญาณเหลา่ นีจ้ ะถูกส่งมาจากอุปกรณอ์ ินพตุ เม่ือโปรแกรมเมเบิลคอนโทรลเลอร์ได้รับสัญญาณอินพุตแล้ว หลังจากน้ันจะนา สัญญาณที่ได้ไปประมวลผลต่อไป อุปกรณ์อินพุตที่ให้สัญญาณ ได้แก่ Encoder, Switch, Proximity Switch และ Photo Sensor เป็นต้น ซ่ึงอุปกรณ์อินพุตที่ส่งสัญญาณออกมาในลักษณะ ON-OFF หรือ 1-0 จะสามารถใช้ได้กับโปรแกรมเมเบิลคอนโทรลเลอร์ท่ีรับสัญญาณอินพุตแบบดิจิทัลเท่าน้ัน ส่วนสัญญาณอนิ พุตท่ีเป็นสญั ญาณแอนาล็อกมาตรฐานต่าง ๆ เช่น 0-10 V, 4-20 mA หรือ 1-5 Vdc จะต้องต่อเข้ากับภาคอินพุตของโปรแกรมเมเบิลคอนโทรลเลอร์ที่สามารถรับสัญญาณแอนาล็อก เท่าน้ัน ภาพท่ี 3.23 แสดงอุปกรณ์อนิ พตุ (Input Devices) ทม่ี า : ธรี ศิลป์ ทุมวภิ าตและสภุ าพร จาปาทอง (2545: 64) เนอื่ งจากหนว่ ยอินพุตจะทาหนา้ ท่รี ับสัญญาณจากอปุ กรณด์ ้านอนิ พุต เชน่ สวติ ช์ และ เซนเซอร์ ประเภทต่าง ๆ แล้วปรับแต่งสัญญาณจากอุปกรณ์ด้านอินพุตภายนอกให้เป็นสัญญาณท่ี เหมาะสม เพือ่ สง่ เข้าไปยงั หน่วยประมวลผลกลาง โดยผา่ นวงจรแยกสญั ญาณทท่ี างานด้วยแสง (Opto - Isolator) เพ่ือป้องกันไม่ให้หน่วยประมวลผลกลางเกิดความเสียหาย เน่ืองจากการลัดวงจรหรือ ระดับของสัญญาณท่ีไม่เหมาะสม เช่น ระดับแรงดันที่หน่วยประมวลผลกลางต้องเท่ากับ 5 VDC แต่ ถ้าหากหน่วยประมวลผลกลางรับแรงดันท่ี 24 VDC โดยตรงก็จะทาให้หน่วยประมวลผลกลางชารุด เสียหายได้ (ซ่ึงหน่วยประมวลผลกลางจะมีราคาสูงมาก เมื่อเทียบกับส่วนประกอบอย่างอืน่ ) ซ่ึงวงจร เช่ือมต่อหนว่ ยอนิ พุตกับอุปกรณ์อินพุต มีอยูห่ ลายลกั ษณะ หลายวงจร ซึง่ แตล่ ะอยา่ งก็มีขอ้ ดี ขอ้ เสีย แตกต่างกันไป โครงสรา้ งและสว่ นประกอบของโปรแกรมเมเบลิ คอนโทรลเลอร์

2104-2109 การโปรแกรมและควบคมุ ไฟฟา้ |63 3.4.1.1 วงจรเชื่อมต่อดิจิทัลอินพุต แบบแรงดันไฟฟ้ากระแสตรง เป็นหนว่ ยอนิ พตุ ที่ควบคุมและทางานงา่ ย ซึ่งในระบบการควบคุมจะมีใช้กัน มากมาย และระดบั แรงดันอินพุตอาจจะเปน็ 12 หรอื 24 VDC ก็ได้ ข้นึ อยู่กบั บริษัทผู้ผลิตในแต่ละรุ่น และเช่นเดียวกันสามารถตอ่ กับอุปกรณ์อินพุตจาพวกสวิตช์ต่าง ๆ และการเช่ือมต่อวงจรอินพุตแบบนี้ ยงั มีความปลอดภยั สูง เพราะใชแ้ รงดันทต่ี ่า ภาพที่ 3.24 วงจรอินพตุ แบบดจิ ิทัล แรงดนั ไฟฟ้ากระแสตรง ที่มา : ธงชยั คลา้ ยคลงึ (2560: 1-19) 3.4.1.2 วงจรเชื่อมตอ่ ดิจทิ ลั อนิ พตุ แบบแรงดนั ไฟฟา้ กระแสสลบั อุปกรณอ์ นิ พุตแบบดจิ ทิ ลั บางชนิดหรือกรณีที่ต้องการความสะดวกในการใช้ งานกับระดับแรงดันไฟฟ้ากระแสสลับ จะต้องเลือกใช้อินพุตโมดูลท่ีเป็นกระแสสลับ ซ่ึงจะเห็นว่ามี ความสะดวกในแงข่ องการที่ไม่ตอ้ งจัดหาแหล่งจ่ายไฟฟา้ กระแสตรง แต่อย่างไรกต็ ามในสว่ นของวงจร โครงสรา้ งและสว่ นประกอบของโปรแกรมเมเบิลคอนโทรลเลอร์

64 | 2104-2109 การโปรแกรมและควบคมุ ไฟฟา้ Opto - Isolator ก็ยังคงเป็นไฟฟ้ากระแสตรงเนื่องจากผ่านวงจรแปลงไฟฟ้ากระแสสลับเป็น กระแสตรง ดังภาพที่ 3.25 ภาพที่ 3.25 วงจรอนิ พุตแบบดจิ ิทัล แรงดันไฟฟา้ กระแสสลบั ทีม่ า : ธงชยั คลา้ ยคลงึ (2560: 1-20) 3.4.2 วงจรเชือ่ มต่อหน่วยเอาตพ์ ุต (Output Interface) สัญญาณที่ออกมาจากหน่วยเอาต์พุตของโปรแกรมเมเบิลคอนโทรลเลอร์ไม่ว่าจะเป็น เอาต์พุตแบบรีเลย์ หรือทรานซิสเตอร์ ก่อนท่ีสัญญาณจะถูกส่งผ่านไปยังอุปกรณ์เอาต์พตุ ได้ต้องผา่ น Buffer Relay หรือต้องผ่านวงจรไดร์ฟก่อน จึงจะสามารถต่อเข้าโหลดได้ เช่น ถ้าต้องการสัญญาณ เอาต์พุตไปควบคุมให้มอเตอร์ทางาน ต้องผ่านวงจรไดร์ฟก่อนเนื่องจากกระแสไฟฟ้าที่จ่ายออกมาก จากโปรแกรมเมเบิลคอนโทรลเลอรม์ ีค่านอ้ ยเกนิ กวา่ คา่ กระแสทีม่ อเตอร์จะนาไปใช้ได้ เป็นต้น ภาพท่ี 3.26 แสดงอุปกรณ์เอาตพ์ ุต (Output Devices) ท่ีมา : ธรี ศิลป์ ทุมวิภาตและสภุ าพร จาปาทอง (2545: 64) โครงสร้างและสว่ นประกอบของโปรแกรมเมเบลิ คอนโทรลเลอร์

2104-2109 การโปรแกรมและควบคุมไฟฟา้ |65 หน่วยเอาต์พุต (Output Unit) จะทาหน้าที่ในการรับค่าท่ีได้จากหน่วยประมวลผล กลาง แล้วนาผลลัพธ์ไปควบคุมด้านเอาต์พุตภายนอก เช่น แมคเนติกคอนแทกเตอร์ โซลินอล์ยวาล์ว หรือหลอดไฟสัญญาณ เป็นต้น ซึ่งหน่วยเอาต์พุตมีให้เลือกหลายแบบตามลักษณะงานที่ผู้ใช้ต้องการ เช่น หน่วยเอาตพ์ ตุ แบบรีเลย์ แบบทรานซสิ เตอร์ แบบไตรแอค เป็นต้น 3.4.2.1 วงจรเช่อื มต่อหนว่ ยเอาตพ์ ุตแบบรเี ลย์ (Relay Output Interface) หน่วยเอาต์พุตน้ีจะเหมาะสาหรับการใช้งานกับอุปกรณ์เอาต์พุตที่ใช้ แหลง่ จ่ายไฟแบบกระแสสลบั หรือกระแสตรงก็ได้ และยงั สามารถขบั กระแสโหลดท่ีสูง ๆ ได้ (ตามพกิ ดั ของเอาต์พุตโมดูลน้ัน ๆ) แต่ในบางคร้ังหากต้องการใช้ขับโหลดที่กินกระแสมากกว่าพิกัด ทาได้ด้วย การตอ่ รเี ลยเ์ อาตพ์ ุตของ PC เขา้ กบั คอนแทกเตอรห์ รอื โซลิดสเตทรีเลย์ เพอ่ื ใหส้ ามารถขบั โหลดนั้นได้ หน่วยเอาต์พตุ แบบรีเลย์จะไมเ่ หมาะสาหรับการต่อเขา้ กบั โหลดหรอื อปุ กรณเ์ อาตพ์ ุตทท่ี างานและหยุด บ่อย ๆ (เปดิ -ปดิ บ่อย ๆ) ทัง้ นีเ้ พราะทาใหห้ นา้ สมั ผัสของรีเลย์จะเสอ่ื มเร็ว ภาพที่ 3.27 วงจรเอาตพ์ ตุ แบบรีเลย์ ทมี่ า : ธงชัย คล้ายคลึง (2560: 1-20) 3.4.2.2 วงจรเช่ือมต่อหนว่ ยเอาต์พตุ ทรานซิสเตอร์ (Transistor Output Interface) ทรานซิสเตอร์เอาต์พุต จะใช้สาหรับอุปกรณ์เอาต์พตุ ท่ีขับเคล่ือนดว้ ยไฟฟ้า กระแสตรงพิกัดกระแสต่า ๆ (ย่านมิลลิแอมป์) เช่น บอร์ดอิเล็กทรอนิกส์, วงจรแสดงผลด้วยแอลอีดี เจ็ดส่วน (LED 7 Segment) หรือต่อกับชุดขับเคลื่อนสเตปป้ิงมอเตอร์ (Stapping Motor) เซอร์โว มอเตอร์ (Servo Motor) เป็นตน้ วงจรเชอ่ื มต่อหนว่ ยเอาตพ์ ุตทรานซิสเตอร์จะเหมาะสาหรับอุปกรณ์ โครงสร้างและสว่ นประกอบของโปรแกรมเมเบลิ คอนโทรลเลอร์

66 | 2104-2109 การโปรแกรมและควบคุมไฟฟา้ เอาต์พุตที่ทางานและหยุดบ่อย ๆ (เปิด-ปิด บ่อย ๆ) เพราะทรานซิสเตอร์เวลาทางาน จะไม่มีส่วนใด เคลอ่ื นทีเ่ ลย และยงั มีความเรว็ ในการสวติ ช์ (ON-OFF) สูง ภาพท่ี 3.28 วงจรเอาตพ์ ตุ แบบทรานซิสเตอร์ ท่ีมา : ธงชัย คล้ายคลงึ (2560: 1-21) 3.4.2.3 วงจรเช่ือมต่อหนว่ ยเอาต์พตุ แบบไตรแอก (Tiac Output Interface) หน่วยเอาต์พุตแบบไตรแอค จะเหมาะสาหรับการใช้ขับโหลดไฟฟ้า กระแสสลับ ที่มีการ ON-OFF หรือการเปิด-ปิดบ่อยครั้ง เพื่อลดกระแสจากการอาร์คของหน้าสัมผัส เนอ่ื งจากเวลาทางานไมม่ ีสว่ นใดเคลื่อนท่ี จึงทาใหส้ ามารถต่อกบั อุปกรณ์ภายนอกโดยตรงที่ขับเคลื่อน ด้วยกระแสสลับเทา่ นั้น ภาพท่ี 3.29 วงจรเอาตพ์ ุตแบบไตรแอค ทีม่ า : ธงชัย คลา้ ยคลงึ (2560: 1-21) โครงสร้างและสว่ นประกอบของโปรแกรมเมเบิลคอนโทรลเลอร์

2104-2109 การโปรแกรมและควบคมุ ไฟฟา้ |67 NOTE โปรแกรมเมเบิลคอนโทรลเลอร์มีส่วนประกอบต่างๆ เหมือนกับคอมพิวเตอร์ โดย แบ่งเปน็ 5 ส่วน คือ มหี น่วยอินพตุ /เอาต์พตุ , ตวั ประมวลผล, หนว่ ยความจา, แหลง่ จา่ ยไฟ ซึ่งอุปกรณ์อินพุตของคอมพิวเตอร์คือ คีย์บอร์ด ส่วนอุปกรณ์อินพุตของโปรแกรมเมบิล คอนโทรลเลอร์จะเป็นสวิตช์และเซนเซอร์แบบต่างๆ เป็นต้น อุปกรณ์เอาต์พุตของ คอมพิวเตอร์คือ หน้าจอ ส่วนอุปกรณ์เอาต์พุตของโปรแกรมเมเบิลคอนโทรลเลอร์เป็น มอเตอร์, โซลนิ อลย์ วาล์ว เป็นต้น 3.5 ภาษาทีใ่ ชส้ ่งั งานโปรแกรมเมเบลิ คอนโทรลเลอร์ คณะกรรมาธกิ ารวชิ าการดา้ นไฟฟ้าระหวา่ งประเทศ หรอื ไอซีอี (IEC ย่อมาจาก International Electrotechnical Commission) กาหนดมาตรฐานไอซีอี 1331 เป็นมาตรฐานสากลของโปรแกรม เมเบิลคอนโทรลเลอร์ ประมาณเดือนสิงหาคม พ.ศ. 2535 ปจั จุบนั เปล่ียนมาตรฐานไอซีอี 1131 เปน็ มาตรฐานไอซอี ี 61131 วัตถุประสงค์ของมาตรฐานโปรแกรมเมเบิลคอนโทรลเลอร์ ไออีซี 61131 ต้องการให้ผู้ผลิต โปรแกรมเมเบิลคอนโทรลเลอร์ให้มีมาตรฐานเดียวกันทั่วโลก โดยเฉพาะภาษาของโปรแกรมเมเบิล คอนโทรลเลอร์เป็นภาษาสากลสาหรับโปรแกรมของโปรแกรมเมเบิลคอนโทรลเลอร์ทุกเครื่อง มาตรฐานไออีซี 61131 แบง่ ออกเปน็ มาตรฐานยอ่ ย 8 ส่วน คอื 1. มาตรฐานไออีซี 61131-1 คุณสมบัตทิ ่ัวไป (General Information) คอื มาตรฐานเก่ยี วกับ คุณสมบัติของโปรแกรมเมเบิลคอนโทรลเลอร์ อุปกรณ์ประกอบของโปรแกรมเมเบิลคอนโทรลเลอร์ และอปุ กรณส์ นับสนุนของโปรแกรมเมเบิลคอนโทรลเลอร์ 2. มาตรฐานไออซี ี 61131-2 คณุ สมบตั ขิ องอุปกรณ์ประกอบและการทดสอบ (Equipment Requirements and Tests) คือมาตรฐานของอุปกรณ์ประกอบของโปรแกรมเมเบิลคอนโทรลเลอร์ สภาพแวดล้อมการปฏิบัติงาน การขนย้าย และการเก็บบารุงรักษาอุปกรณ์ประกอบของโปรแกรมเม เบิลคอนโทรลเลอร์ การทดสอบคุณสมบัติของอุปกรณ์ประกอบของโปรแกรมเมเบิลคอนโทรลเลอร์ ประกอบด้วย การทดสอบคุณสมบัติทางกล การทดสอบคุณสมบัติทางไฟฟ้า และการทดสอบ สภาพแวดล้อมการปฏิบตั งิ านของอุปกรณ์ประกอบของโปรแกรมเมเบลิ คอนโทรลเลอร์ 3. มาตรฐานไออีซี 61131-3 ภาษาโปรแกรมเมเบิลคอนโทรลเลอร์ (Programming Language) คือมาตรฐานโปรแกรมของโปรแกรมเมเบิลคอนโทรลเลอร์ และภาษาโปรแกรมเมเบิล คอนโทรลเลอรม์ าตรฐาน 4. มาตรฐานไออีซี 61131-4 แนะนาการใช้ (User Guidelines) คือมาตรฐานการติดตั้ง โปรแกรมเมเบิลคอนโทรลเลอร์ แนวทางการใช้งานโปรแกรมเมเบิลคอนโทรลเลอร์และมาตรฐาน ความปลอดภยั ของโปรแกรมเมเบิลคอนโทรลเลอร์ โครงสร้างและสว่ นประกอบของโปรแกรมเมเบิลคอนโทรลเลอร์

68 | 2104-2109 การโปรแกรมและควบคมุ ไฟฟ้า 5. มาตรฐานไออีซี 61131-5 การสื่อสาร (Messaging Service Specification) คือมาตรฐาน การสื่อสารและเครือข่ายโปรแกรมเมเบิลคอนโทรลเลอร์ รายละเอียดและรูปแบบการส่ือสารระหว่าง โปรแกรมเมเบิลคอนโทรลเลอร์ 6. มาตรฐานไออีซี 61131-6 สงวนสาหรับมาตรฐานเพ่ิมเติมในอนาคต 7. มาตรฐานไออีซี 61131-7 การควบคุมฟัซซี (Fuzzy Control Programming) คือ มาตรฐานเก่ยี วกับการควบคมุ ฟัซซี และการเขียนโปรแกรมควบคมุ ฟซั ซี 8. มาตรฐานไออีซี 61131-8 แนวทางการใช้และการเขียนโปรแกรม (Guidelines for the Application and Implementation of Programming Languages) คื อ แ น ว ท า ง ก า ร เขียน โปรแกรมของโปรแกรมเมเบลิ คอนโทรลเลอร์ และขอบเขตของโปรแกรม 3.5.1 มาตรฐาน IEC 61131-3 ภาษาโปรแกรมเมเบิลคอนโทรลเลอร์ ภาษาท่ีใช้ในการเขียนโปรแกรมตามมาตรฐาน IEC 61131-3 กาหนดไว้ 5 ภาษา คือ LD (Ladder diagram), FBD (Function block diagram), IL (Instruction list), ST (Structure text) และ SFC (Sequential function chart) ถึงแม้วา่ ลักษณะโครงสรา้ งของแตล่ ะภาษาจะมีความ แตกต่างกัน แต่ในแต่ละภาษาจะมีส่วนประกอบต่างๆ ในโปรแกรมมีลักษณะเดียวกันตามมาตรฐาน IEC 61131-3 เช่น ลกั ษณะการประกาศตัวแปร ฟงั กช์ ัน และฟังกช์ ันบล็อก เป็นต้น แต่อยา่ งไรก็ตาม สามารถทีจ่ ะเขียนโปรแกรมโดยนารูปแบบการเขยี นในภาษาตา่ งๆ มารวมกันได้ 3.5.1.1 ภาษาแลดเดอร์ (LD ย่อมาจาก Ladder Diagram) เปน็ ภาษาท่ีถกู เขียน แสดงอยใู่ นรูปของกราฟฟิก ซง่ึ มีรากฐานมาจากวงจรรีเลยแ์ ละวงจรไฟฟ้า โดยท่แี ลดเดอรไ์ ดอะแกรม น้ันจะประกอบไปด้วยราง (Rail) ทั้งทางด้านซ้ายและขวาของไดอะแกรม เพ่ือใช้สาหรับเช่ือมต่อ สัญญาณของอุปกรณ์อินพตุ ซึ่งอยู่ในรูปของสวิตช์ หน้าสัมผัสผ่านไปยังสัญญาณเอาต์พุตซงึ่ อยู่ในรูป ของขดลวด คอยล์ หรือฟงั กช์ นั ปฏิบตั ิการต่างๆ โดยการเขียนโปรแกรมจะเริ่มจากดา้ นซ้ายไปขวาและ ดา้ นบนลงลา่ ง ภาพท่ี 3.30 ตัวอย่างการเขียนโปรแกรมด้วยภาษาแลดเดอร์ ท่มี า : http://know2learning.blogspot.com/2014/07/7.html 3.5.1.2 ภาษาบล็อก (FBD ย่อมาจาก Function Block Diagram) เป็นภาษาท่ี แสดงถึงฟังก์ชันของบล็อกในรูปของกราฟฟิกและทาการเชื่อมต่อกันเป็นโครงข่าย โดยที่ฟังก์ชัน โครงสรา้ งและสว่ นประกอบของโปรแกรมเมเบลิ คอนโทรลเลอร์

2104-2109 การโปรแกรมและควบคุมไฟฟา้ |69 บล็อกไดอะแกรมมีรากฐานมาจากลอจิกไดอะแกรม จึงเหมาะสาหรับผู้ที่มีพื้นฐานความรู้ด้าน อิเล็กทรอนกิ ส์ ภาพท่ี 3.31 ตัวอย่างการเขยี นโปรแกรมด้วยภาษา FBD ที่มา : http://know2learning.blogspot.com/2014/07/7.html 3.5.1.3 ภาษาลาดับคาสั่ง (IL ย่อมาจาก Instruction List) เป็นภาษาท่ีถูกเขยี น ให้อยู่ในรูปของข้อความ ซึ่งจะมีรูปแบบคล้ายกับภาษาแอสเซมบลี (Assembly Language) หรือ คล้ายกับภาษาเคร่ือง (Machine code) สาหรับรูปแบบภาษาอินสตักชันลิสช์น้ีจะประกอบด้วยตัว ปฏิบัติการ (Operator) และตัวท่ีถูกดาเนินการ (Operand) ดังน้ันจึงเหมาะสาหรับผู้ท่ีมีความ เช่ียวชาญทางดา้ นภาษาเคร่ืองโดยตรง ภาพที่ 3.32 ตัวอยา่ งการเขียนโปรแกรมดว้ ยภาษา IL ทม่ี า : http://know2learning.blogspot.com/2014/07/7.html 3.5.1.4 ภาษาข้อความโครงสร้าง (ST ย่อมาจาก Structured Text) เป็นภาษา ในระดับสูง โดยจะมีโครงสร้างในการเขียนโปรแกรมท่ีคล้ายกันกับภาษาปาสคาล ซ่ึงจะประกอบไป ดว้ ยนพิ จน์ และคาสัง่ สาหรบั ลกั ษณะของคาสั่งโดยท่ัวไปก็จะเปน็ การกระทาท่ีเกยี่ วขอ้ งกับการเลือก สถานะการทางาน เช่น IF....THEN....ELSE หรือคาสั่งทีเ่ ก่ียวกบั การทางานวนซ้าๆ เช่น FOR....WHILE ตลอดจนการอ้างถงึ ฟงั ก์ชันบลอ็ กต่างๆ ดงั นน้ั จึงเป็นโปรแกรมที่สามารถตอบสนองการเขียนโปรแกรม ได้หลายรปู แบบ เช่น ปญั หาดา้ นอลั กอลิธึม และการจดั การขอ้ มลู เป็นต้น โครงสรา้ งและสว่ นประกอบของโปรแกรมเมเบิลคอนโทรลเลอร์

70 | 2104-2109 การโปรแกรมและควบคุมไฟฟ้า ภาพท่ี 3.33 ตวั อย่างการเขียนโปรแกรมดว้ ยภาษา ST ทม่ี า : http://know2learning.blogspot.com/2014/07/7.html 3.5.1.5 ภาษาผังลาดับฟงั กช์ นั (SFC ย่อมาจาก Sequential Function Chart) เป็นรูปแบบของภาษาที่รองรับการเขียนโปรแกรมซึ่งมีโครงสร้างเป็นการทางานตามลาดับข้ันตอน (Sequence) สาหรบั ส่วนประกอบของ ซเี ควนเชียลฟังก์ชันชาร์ตนน้ั จะประกอบไปดว้ ยลาดับขั้นตอน การทางาน (Step) เง่ือนไขการเปลี่ยนลาดับขั้นตอน (Transition) และการทางาน (Action) นอกจากน้ันก็ยังสามารถกาหนดลักษณะของการทางาน เช่น การทางานซ่ึงจะต้องมีการเลือกสาขา ย่อยของลาดับข้ันตอนการทางาน ซ่ึงการทางานของสาขาย่อยจะต้องเกิดลาดับขั้นตอนการทางาน ค่ขู นานกันไป ในแต่ละลาดับข้ันตอนการทางานจะหมายถึงการประมวลผลสถานะของโปรแกรม ควบคุม ซ่ึงจะถูกกระตุ้นใหท้ างาน หรือไม่ถูกกระตุ้นให้ทางาน โดยในแต่ละลาดับขัน้ ตอนการทางาน จะประกอบด้วยการกระทาซึง่ ถูกระบุโดยเงือ่ นไขตามมาตรฐาน IEC 61131-3 ซึง่ การกระทานน้ั จะอยู่ ในแบบรูปภาพหรือโครงสร้างของการทางานตามลาดับข้ันตอน ดังนัน้ จะเห็นว่า การเขียนโปรแกรม โดยใช้ภาษาซีเควนเีชียลฟังก์ชันชาร์ตจะมีความเหมาะสมกับลักษณะของการทางานที่มีลักษณะเปน็ ลาดับข้ันตอนเป็นอยา่ งยง่ิ โครงสร้างและสว่ นประกอบของโปรแกรมเมเบลิ คอนโทรลเลอร์

2104-2109 การโปรแกรมและควบคมุ ไฟฟา้ |71 ภาพท่ี 3.34 ตวั อยา่ งการเขียนโปรแกรมด้วยภาษา SFC ทมี่ า : http://know2learning.blogspot.com/2014/07/7.html NOTE ภาษาทใี่ ชเ้ ขียนโปรแกรมสาหรับ Simatic Step 7 การเขียนโปรแกรมควบคุมการทางานโดยใช้ซอฟต์แวร์ Simatic Step 7 ของบริษัท SIEMENS สามารถเขยี นโปรแกรมได้ 5 ภาษา คอื  ภาษา LAD (Ladder diagram) จะมีรูปแบบเหมือนภาษา LD ตามมาตรฐานของ IEC 61131-3  ภาษา FBD (Function Block Diagram) จะมีรูปแบบเหมือนภาษา FBD ตาม มาตรฐานของ IEC 61131-3  ภาษา STL (Statement List) จะมีรูปแบบเหมือนภาษา IL ตามมาตรฐานของ IEC 61131-3  ภาษา SFC (Sequence Function Chart) โดยจะต้องลงโปรแกรม Step 7-Graph กอ่ น  ภาษา State Diagram โดยจะตอ้ งลงโปรแกรม Step 7- Higraph ก่อน โครงสร้างและสว่ นประกอบของโปรแกรมเมเบลิ คอนโทรลเลอร์

72 | 2104-2109 การโปรแกรมและควบคุมไฟฟา้ 3.5.2 โปรแกรมคาสง่ั ภาษาแลดเดอร์ (Ladder Diagram : LAD) คาสั่งภาษาแลดเดอร์หรือแลดเดอร์ไดอะแกรม เป็นโปรแกรมคาส่ังที่เขียนและเข้าใจ การทางานได้ง่ายที่สุด เนื่องจากคล้ายกบั วงจรควบคุมหรือวงจรรเี ลย์ การเขียนแลดเดอรไ์ ดอะแกรม จะเขียนเป็นขั้นลาดับในแนวนอนเหมือนกับขั้นบันได ซ่ึงเรียกว่าแถวหรือรั้ง ( Rung) และมี ส่วนประกอบเรยี กว่าราง (Rail) ในแนวต้ังเพื่อปิดแถวท้ังด้านซ้ายและขวา ภายในรั้งจะประกอบด้วย สัญลักษณ์หรือรหัสคาส่ัง เช่น คาสั่ง AND, OR, NOT, NOR, NAND หรืออื่นๆ ประกอบอยู่ภายในร้งั เรียงจากซ้ายไปขวา ด้านขวาสุดจะเป็นเอาต์พุต และภายใน 1 รั้ง จะต้องมีเอาต์พุตอย่างน้อย 1 เอาต์พตุ (ก) (ข) ภาพที่ 3.35 เปรียบเทยี บวงจรรีเลย์ (ก) กับแลดเดอร์ไดอะแกรม (ข) ทม่ี า : ธงชยั คล้ายคลงึ (2560: 2-23) 3.5.2.1 รหสั คาส่ังการเขียนโปรแกรมแลดเดอรไ์ ดอะแกรม แลดเดอร์ไดอะแกรมจัดอยู่ในกลุ่มการเขียนโปรแกรมคาสั่งภาษากราฟิก (Graphical Languages) ซึ่งจัดอยู่ในภาษาการเขียนโปรแกรมระดับปานกลาง มีคาส่ังพื้นฐานในการ เขียนโปรแกรม แสดงดังตารางท่ี 3.1 โครงสรา้ งและสว่ นประกอบของโปรแกรมเมเบลิ คอนโทรลเลอร์

2104-2109 การโปรแกรมและควบคมุ ไฟฟา้ |73 ตารางที่ 3.1 สญั ลักษณ์ แลดเดอรไ์ ดอะแกรมตามมาตรฐานไอซีอี ลาดบั สัญลกั ษณ์ ความหมาย 1 Normally open contact 2 Normally closed contact 3 Positive transition-sensing contact 4 Negative transition-sensing contact 5 Output coil 6 Negative coil 7 Set coil 8 Reset coil 9 Retentive memory coil 10 Set Retentive memory coil 11 Reset Retentive memory coil 12 Positive transition sensing coil 13 Negative transition sensing coil ทมี่ า : ธงชยั คล้ายคลงึ (2560: 2-14) 3.5.2.2 ข้อกาหนดในการเขียนแลดเดอรไ์ ดอะแกรม การเขียนแลดเดอร์ไดอะแกรมน้ันไม่สามารถเขียนตามวงจรรีเลย์ได้ ท้ังหมด ดงั นั้นเพอ่ื ความเขา้ ใจและการเขยี นให้ถกู ตอ้ ง จึงมขี ้อแนะนาดงั น้ี 1) หา้ มเขยี นหน้าสมั ผัสหรอื ลอจกิ ใน 2 บรรทดั เชื่อมโยงเข้าหากัน (ก) โครงสร้างและสว่ นประกอบของโปรแกรมเมเบิลคอนโทรลเลอร์

74 | 2104-2109 การโปรแกรมและควบคุมไฟฟา้ (ข) ภาพที่ 3.36 แลดเดอรไ์ ดอะแกรมผิด (ก) แลดเดอร์ไดอะแกรมถูก (ข) ทม่ี า : ธงชยั คล้ายคลึง (2560: 2-24) 2) ในร้ัง (Rung) ใดๆ ไม่สามารถเขียนเอาต์พุตได้เลย จะต้องผ่าน หน้าสัมผัสหรือลอจิกก่อนเสมอ ถ้ามีความจาเป็นต้องใช้จริง ให้ใช้สถานะแฟล็กซ์ (Flag) ที่เป็น Normally closed : NC ในหนว่ ยความจาแทน (ดูข้อกาหนดของบรษิ ัทผูผ้ ลิต) (ก) (ข) ภาพที่ 3.37 แลดเดอรไ์ ดอะแกรมผดิ (ก) แลดเดอรไ์ ดอะแกรมถูก (ข) ท่ีมา : ธงชัย คลา้ ยคลึง (2560: 2-24) 3) การเขียนโปรแกรม ใน 1 ร้งั จะมีหน้าสัมผสั หรอื ลอจิกจานวนเท่าใด ก็ได้ แต่อยา่ ลมื ว่าโปรแกรมท่ีดนี น้ั โปรแกรมจะตอ้ งสัน้ และมฟี ังกช์ นั การทางานทีถ่ ูกตอ้ ง 4) การเขยี นโปรแกรมจะตอ้ งคดิ เสมอวา่ โปรแกรมจะทางานจากซา้ ยไป ขวาของรัง้ เสมอ 5) เอาต์พุตทุกตัว จะมีหน้าสัมผัสช่วย (Auxiliary Contact) สามารถ นาไปใชป้ ระกอบในการเขยี นโปรแกรมไดเ้ สมอเหมือนกับวงจรรเี ลย์ โครงสร้างและสว่ นประกอบของโปรแกรมเมเบิลคอนโทรลเลอร์

2104-2109 การโปรแกรมและควบคมุ ไฟฟา้ |75 6) ห้ามเขยี นหน้าสมั ผัส ตอ่ จากคอยล์เอาตพ์ ตุ ของโปรแกรม (ก) (ข) ภาพท่ี 3.38 แลดเดอร์ไดอะแกรมผดิ (ก) แลดเดอร์ไดอะแกรมถูก (ข) ทีม่ า : ธงชัย คลา้ ยคลึง (2560: 2-25) 7) ห้ามเขียนตาแหน่งเอาต์พุตซ้ากัน หากมีความจาเป็นจะต้องแก้ไข โปรแกรมใหม่ โดยการทางานยังคงถกู ต้องเช่นเดิม 8) การทางานของโปรแกรม จะเร่ิมจากรั้งแรกไปจนถึงร้ังสุดท้ายหรือ ทางานจากร้ังบนสดุ ลงมาจนถงึ ร้ังสุดทา้ ยแลว้ วนกลับขึน้ มาใหม่ 9) การเขียนโปรแกรมใน 1 ร้ัง สามารถเขียนเอาต์พุต (ด้านขวามือสุด ของโปรแกรม) ขนานกนั ไดม้ ากกว่า 1 เอาต์พุต ดังภาพ ภาพที่ 3.39 การเขียนแลดเดอรไ์ ดอะแกรม กรณเี อาต์พตุ มากกว่า 1 เอาต์พุต ท่มี า : ธงชยั คล้ายคลงึ (2560: 2-25) 3.5.2.3 การแทนวงจรรเี ลย์ด้วยแลดเดอร์ไดอะแกรม เนื่องจากแลดเดอร์ไดอะแกรม (LAD) เป็นภาษาของการเริ่มต้นการเขยี น โปรแกรมคาสั่งของโปรแกรมเมเบิลคอนโทรลเลอร์ที่เข้าใจได้ง่าย ทั้งนี้เพราะว่ามีลักษณะเหมอื นกบั วงจรควบคุมรเี ลย์ ถึงแมใ้ นบางครั้งจะไมส่ ามารถเขียนแลดเดอร์ไดอะแกรมจากวงจรรีเลยไ์ ดโ้ ดยตรงก็ ตาม แตส่ ามารถใชว้ งจรรเี ลยเ์ ป็นตน้ แบบในการเขียนโปรแกรมภาษาแลดเดอร์หรอื ภาษาอน่ื ๆ ได้ โครงสร้างและสว่ นประกอบของโปรแกรมเมเบลิ คอนโทรลเลอร์

76 | 2104-2109 การโปรแกรมและควบคุมไฟฟา้ ในการออกแบบระบบการควบคุมนั้น ไม่ว่าจะเป็นการควบคุมด้วยตัว ควบคมุ ชนดิ ใดก็ตาม วงจรกาลัง (Power circuit) จะยังตอ่ วงจรเหมือนเดิม แตกต่างเฉพาะส่วนวงจร ควบคุม ซ่ึงในการออกแบบวงจรควบคุมอาจจะออกแบบเป็นไดอะแกรมเวลา (Timing diagram) หรอื วงจรควบคมุ รเี ลย์ แล้วแต่ความถนัด ถ้ามคี วามชานาญในการเขยี นโปรแกรมแล้ว กส็ ามารถเขียน เป็น LAD, SFC, FBD, IL, ST ได้เลย (ข) (ก) (ค) ภาพท่ี 3.40 เปรยี บเทยี บวงจรรเี ลย์ (ก) และแลดเดอรไ์ ดอะแกรม (ข) ไดอะแกรมเวลา (ค) ท่มี า : ธงชยั คล้ายคลงึ (2560: 2-26) จากภาพที่ 3.40 เป็นวงจรควบคุมการกลับทางหมุนของมอเตอร์ 3 เฟส แสดงให้เห็นถึงความสัมพันธ์ระหว่างไดอะแกรมเวลา, วงจรรีเลย์ และแลดเดอร์ไดอะแกรม ซึ่งจะมี บางส่วนท่ีเหมือนกันและบางส่วนแตกต่างกันโดยสิ้นเชิง ถึงแม้จะต่างกัน ขอเพียงผลลัพธ์ท่ีได้หรือ ลาดับการทางานเหมอื นกันก็ถือว่าถูกต้องแลว้ โครงสรา้ งและสว่ นประกอบของโปรแกรมเมเบิลคอนโทรลเลอร์

2104-2109 การโปรแกรมและควบคุมไฟฟา้ |77 (ก) (ข) ภาพท่ี 3.41 เปรยี บเทยี บวงจรรเี ลย์ (ก) และแลดเดอร์ไดอะแกรม (ข) ทมี่ า : ธงชยั คลา้ ยคลึง (2560: -2-26) จากภาพท่ี 3.41 เป็นวงจรเร่ิมเดินมอเตอร์แบบสตาร์-เดลต้า จะ เปรียบเทียบให้เห็นว่า ในบางคร้ังแลดเดอร์ไดอะแกรมกับวงจรควบคุมรีเลย์จะไม่เหมือนกันเลย แต่ การทางานจะไดเ้ อาต์พุตการทางานที่เหมือนกนั เพราะฉะนน้ั ในการออกแบบระบบการควบคุมในงาน ต่างๆ ไม่จาเป็นต้องออกแบบเป็นวงจรรีเลย์เสมอไป เพราะจะทาให้ยากต่อการเขียนแลดเดอร์ ไดอะแกรม ดังนั้นควรออกแบบเป็นไดอะแกรมเวลาการทางาน (Timing diagram) จะสะดวกกว่า ดัง ภาพ โครงสร้างและสว่ นประกอบของโปรแกรมเมเบิลคอนโทรลเลอร์

78 | 2104-2109 การโปรแกรมและควบคมุ ไฟฟ้า ภาพท่ี 3.42 ไดอะแกรมเวลาการทางาน (Timing diagram) ทม่ี า : ธงชยั คล้ายคลงึ (2560: 2-27) จากภาพท่ี 3.42 จะเหน็ วา่ งา่ ยตอ่ การนาไปเขยี นโปรแกรมคาส่งั โปรแกรม เมเบิลคอนโทรลเลอร์ ภาษาแลดเดอร์ ซ่ึงดูแล้วสรุปการทางานได้ง่ายและเข้าใจกว่าวงจรรีเลย์ ส่วน การทางานของไดอะแกรมเวลา ภาพท่ี 3.42 น้ัน Timer 1 จะหน่วงเวลาการเปล่ียนจากการสตาร์ต แบบสตาร์เปลี่ยนไปเป็นเดลต้า ส่วน Timer 2 ใช้หน่วงเวลาออกไปอีก (หลังจาก Timer 1 หยุด ทางาน) เพอ่ื ใหแ้ น่ใจว่า หน้าสมั ผสั ของแมคเนติคเปิดออกจากกันแล้วแน่นอน ซึ่งเปน็ การปอ้ งกันการ ลดั วงจรอีกดว้ ย 3.5.3 โปรแกรมคาสัง่ ภาษาบล็อก (Function Block Diagram : FBD) ฟังก์ชันบล็อกไดอะแกรม จัดอยู่ในกลุ่มโปรแกรมภาษากราฟิก (Graphical Languages) เช่นเดียวกับ แลดเดอร์ไดอะแกรม สาหรับโปรแกรมเมเบิลคอนโทรลเลอร์ลักษณะการ เขียนโปรแกรม จะเขียนบล็อกสี่เหลี่ยมพื้นผ้า มีสัญญาณอินพุตเข้าด้านซ้ายมือและเอาต์พุตออก ทางด้านขวามือ ซ่ึงเอาต์พุตของบล็อกใดๆ สามารถนาไปใช้เป็นอินพุตของบล็อกคาส่ังอ่ืนได้ คาสั่ง พน้ื ฐานในการเขียนโปรแกรมแบบฟงั ก์ชันบล็อกไดอะแกรม แสดงดงั ตารางที่ 3.2 โครงสรา้ งและสว่ นประกอบของโปรแกรมเมเบิลคอนโทรลเลอร์

2104-2109 การโปรแกรมและควบคุมไฟฟา้ |79 ตารางที่ 3.2 การเขียนโปรแกรมด้วยภาษาฟังกช์ ันบล็อกไดอะแกรม ลาดับ สญั ลกั ษณ์ ความหมาย NOT Logic 1 I = Input (BOOL) Q = Output (BOOL) AND Logic 2 I1 = Input (BOOL) I2 = Input (BOOL) Q = Output (BOOL) OR Logic 3 I1 = Input (BOOL) I2 = Input (BOOL) Q = Output (BOOL) NAND Logic 4 I1 = Input (BOOL) I2 = Input (BOOL) Q = Output (BOOL) NOR Logic 5 I1 = Input (BOOL) I2 = Input (BOOL) Q = Output (BOOL) Exclusive OR Logic 6 I1 = Input (BOOL) I2 = Input (BOOL) Q = Output (BOOL) SR bistable (SR-Flip flop) 7 S = Set Input (BOOL) R = Reset Input (BOOL) Q = Latched Output (BOOL) RS bistable (RS-Flip flop) 8 S = Set Input (BOOL) R = Reset Input (BOOL) Q = Latched Output (BOOL) โครงสร้างและสว่ นประกอบของโปรแกรมเมเบลิ คอนโทรลเลอร์

80 | 2104-2109 การโปรแกรมและควบคุมไฟฟา้ ตารางท่ี 3.2 การเขยี นโปรแกรมดว้ ยภาษาฟงั ก์ชนั บลอ็ กไดอะแกรม (ต่อ) ลาดับ สญั ลักษณ์ ความหมาย Rising edge detector 9 CLK = Clock Inout (BOOL) Q = Output (BOOL) Falling edge detector 10 CLK = Clock Inout (BOOL) Q = Output (BOOL) Edge detecting inputs 11 CLK1 = Input Falling edge (BOOL) CLK2 = Input Falling edge (BOOL) Q = Output (BOOL) Up Counter CU = Counter Up Input (BOOL) 12 R = Reset Input (BOOL) PV = Present Value (INT) Q = Output (BOOL) CV = Current Count Value Down Counter CD = Counter Down Input (BOOL) 13 R = Reset Input (BOOL) PV = Present Value (INT) Q = Output (BOOL) CV = Current Count Value Up-Down Counter CU = Counter Up Input (BOOL) CD = Counter Down Input (BOOL) R = Reset Input (BOOL) 14 LD = Load CV with PV (BOOL) PV = Present Value (INT) QU = Count Up Output (BOOL) QD = Count Down Output (BOOL) CV = Current Count Value โครงสรา้ งและสว่ นประกอบของโปรแกรมเมเบิลคอนโทรลเลอร์

2104-2109 การโปรแกรมและควบคุมไฟฟา้ |81 ตารางท่ี 3.2 การเขียนโปรแกรมดว้ ยภาษาฟังก์ชันบล็อกไดอะแกรม (ต่อ) ลาดับ สัญลักษณ์ ความหมาย Pulse Timer IN = Start Pulse Timer Input (BOOL) 15 PT = Pulse Duration Time (TIME) Q = Output Pulse (BOOL) ET = Elapsed Time (TIME) On Delay Timer IN = Start Pulse Timer Input (BOOL) 16 PT = Pulse Duration Time (TIME) Q = Output Pulse (BOOL) ET = Elapsed Time (TIME) Off Delay Timer IN = Start Pulse Timer Input (BOOL) 17 PT = Pulse Duration Time (TIME) Q = Output Pulse (BOOL) ET = Elapsed Time (TIME) Real Time Clock EN = Enable Input (BOOL) 18 PDT = Present Date and Time (DT) Q = Output (BOOL) CDT = Current Date and Time (DATE_AND_TIME) ที่มา : ธงชัย คลา้ ยคลงึ (2560: 2-15) 3.6 โปรแกรมเมเบิลคอนโทรลเลอร์ SIEMENS Simatic S7-1200 โปรแกรมเมเบิลคอนโทรลเลอร์ SIEMENS Simatic S7-1200 สามารถเขียนโปรแกรมคาส่ัง ผ่านระบบปฏิบัติการวินโดว์ (Windows OS) ได้ ซ่ึงทาให้เกิดความสะดวกและรวดเร็วในการเขียน โปรแกรมคาสงั่ Siemen S7-1200 เป็นคอนโทรลเลอร์ท่ีสามารถประยุกต์การใช้งานในการควบคุมอุปกรณ์ได้ หลากหลายชนดิ ซงึ่ รองรบั ความต้องการของอตุ สาหกรรมระบบอตั โนมตั ิ มกี ารออกแบบทก่ี ะทดั รดั มี ชุดคาสงั่ ท่มี ีประสิทธิภาพชว่ ยให้ S7-1200 ซงึ่ เปน็ การแก้ปัญหาท่ีเหมาะสมเพื่อการใชง้ านสาหรับการ ควบคุมท่ีหลากหลาย S7-1200 ประกอบไปด้วย ไมโครโพรเซสเซอร์, แหล่งจ่ายไฟแบบรวม, วงจร โครงสรา้ งและสว่ นประกอบของโปรแกรมเมเบลิ คอนโทรลเลอร์

82 | 2104-2109 การโปรแกรมและควบคมุ ไฟฟ้า อินพุตและเอาต์พุต, มี PROFINET ในตัว, I/O ควบคุมมีประสิทธิภาพในการใช้งานสูงและมีอินพุต แอนาลอ็ กบนบอรด์ ใน CPU ของ S7-1200 ประกอบด้วยตรรกะท่ีจาเป็นในการตรวจสอบและควบคุมอุปกรณ์ ต่าง ๆ CPU จะป้อนข้อมูลและเปลี่ยนแปลงผลลัพธ์ตามตรรกะของโปรแกรมผู้ใช้งาน โดยวิธีการ Boolean logic, Counting, Timing, Timing complex math operations และอุปกรณ์อนื่ ๆ โปรแกรมเมเบิลคอนโทรลเลอร์ S7-1200 มพี อรต์ PROFINET สาหรับการสอื่ สารผา่ นเครอื ข่าย PROFINET โมดูลเพิ่มเติมมีไว้สาหรับการสื่อสารผ่าน PROFIBUS, GPRS, RS485,เครือข่าย RS232, IEC, DNP3 และ WDC  ปลกั๊ ต่อไฟฟ้า  ช่องเสยี บการด์ หนว่ ยความจา  บานพบั (เปดิ -ปิด)ขั้วตอ่ สายไฟ  LED สถานะสาหรับออนบอรด์ I/O  ชอ่ งเสียบ PROFINET (เปดิ ดา้ นลา่ งของ CPU) ภาพท่ี 3.43 ลักษณะภายนอกของ Siemen S7-1200 โครงสรา้ งและสว่ นประกอบของโปรแกรมเมเบิลคอนโทรลเลอร์

2104-2109 การโปรแกรมและควบคุมไฟฟา้ |83 3.6.1 คณุ สมบตั ิของ S7-1200 S7-1200 CPU 1211C The clever compact solution S7-1200 CPU 1212C The superior compact solution S7-1200 CPU 1214C The compact high-performance CPU S7-1200 CPU 1215C The compact high-performance CPU S7-1200 CPU 1217 The compact high-performance CPU ภาพที่ 3.44 CPU รนุ่ ต่างๆ ของ SIEMENS S7-1200 โครงสร้างและสว่ นประกอบของโปรแกรมเมเบลิ คอนโทรลเลอร์

84 | 2104-2109 การโปรแกรมและควบคมุ ไฟฟ้า ตารางท่ี 3.3 ตารางเปรยี บเทยี บคุณสมบตั ิของ CPU S7-1200 คณุ สมบตั ขิ อง CPU CPU CPU CPU CPU CPU 1211C 1212C 1214C 1215C 1217C ขนาด (มม.) 90 × 100 × 75 110 × 130 × 150 × 100 × 75 100 × 75 100 × 75 User Work 50 75 100 125 150 memory Kbytes Kbytes Kbytes Kbytes Kbytes Load 1 Mbyte 4 Mbytes Retentive 10 Kbytes จานวน Digital 6 8 inputs/6 outputs 14 inputs/10 output อนิ พตุ / inputs/4 เอาตพ์ ตุ outputs Analog 2 inputs 2 inputs/2 output Process Inputs (I) 1024 bytes image size Outputs 1024 bytes (Q) Bit memory (M) 4096 bytes 8192 bytes การขยาย Signal module None 2 8 (SM) Signal board (SB), 1 Battery Board (BB), or Communication Board (CB) Communication Module 3 (CM) (left-side expansion) High-speed Total Up to 6 configured to use any built-in or SB inputs counters 1 MHz - Ib.2 to Ib.5 100/180 Ia.0 to Ia.5 kHz 30/120 kHz - Ia.6 to Ia.6 to Ib.5 Ia.6 to Ia.7 Ib.1 200 kHz โครงสร้างและสว่ นประกอบของโปรแกรมเมเบลิ คอนโทรลเลอร์

2104-2109 การโปรแกรมและควบคมุ ไฟฟา้ |85 ตารางท่ี 3.3 ตารางเปรียบเทียบคณุ สมบัติของ CPU S7-1200 (ต่อ) คุณสมบัติของ CPU CPU CPU CPU CPU CPU 1211C 1212C 1214C 1215C 1217C Pulse Total Up to 4 configured to use any built-in or SB outputs outpu1ts.1.1.1 1 MHz - Qa.0 to Qa.3 100 kHz Qa.0 to Qa.3 Qa.4 to 1.1.1.2 Qb.1 20 kHz - Qa.4 to Qa.4 to Qb. - Qa.5 Memory card SIMATIC Memory card (optional) Real time clock 20 days, typ./12 day min. at 40 degrees C retention time (maintenance-free Super Capacitor) PROFINET Ethernet 1 2 communication port Real math execution 2.3 μs/instruction speed Boolean execution 0.08 μs/instruction speed ทม่ี า : https://cache.industry.siemens.com/dl/.../s71200_system_manual_en-US_en- US.pdf โครงสรา้ งและสว่ นประกอบของโปรแกรมเมเบิลคอนโทรลเลอร์


Like this book? You can publish your book online for free in a few minutes!
Create your own flipbook