บทที่ 4 อุปกรณ์ภายใน ฯ

หน่วยประมวลผลกลาง แหล่งจ่ายพลังงาน และอุปกรณ์การเขียนโปรแกรม

เขียนและเรียบเรียงโดย อ.นัครินทร์  คฤหาสสุวรรณ์
4.1 บทนำ
ดังที่กล่าวมาแล้วในบทแรก หน่วยประมวลผลกลางหรือ CPU เป็นอุปกรณ์ที่สำคัญมาก ซึ่งเปรียบเสมือนกับสมองของระบบการควบคุม องค์ประกอบของ CPU จะประกอบด้วย   3 ส่วนคือ
1.ตัวดำเนินการต่างๆ (Processor)
2.ระบบหน่วยความจำ (Memory)
3.ระบบจ่ายพลังงาน (Power Supply)
ในรูปที่ 4.1 ด้านล่างนี้ แสดงตัวอย่างของบล็อกไดอะแกรมของ CPU สถาปัตยกรรมของ CPU จะแตกต่างกันขึ้นอยู่กับบริษัทผู้ผลิต แต่หลักๆแล้วจะประกอบด้วย 3 องค์ประกอบดังที่กล่าวมาแล้ว ถึงแม้ว่าไดอะแกรมจะแสดงระบบจ่ายพลังงานจะอยู่ภายใน CPU แต่ก็มีหลายๆผู้ผลิตได้ทำการแยกระบบจ่ายพลังงานออกมาจาก CPU มาเป็นอีกหน่วยหนึ่ง

ส่วนในรูปที่ 4.2 จะแสดงตัว CPU ที่มีระบบจ่ายพลังงานอยู่ภายในบล็อกเดียวกัน ส่วนอุปกรณ์การเขียนโปรแกรมจะไม่ถือว่าเป็นส่วนหนึ่งของ CPU แต่จะเป็นตัวกลางในการสื่อสารระหว่างโปรแกรมเมอร์กับตัว CPU

รูปที่ 4.1 แสดงบล็อกไดอะแกรมของ CPU


รูปที่ 4.2  แสดง PLC 2 ตัวที่เป็นแบบติดตั้งระบบจ่ายพลังงานมาให้เลย โดยตัวแรกเป็นแบบกำหนดโครงสร้างอินพุตและเอ้าท์พุตมาให้เลยส่วนตัวหลังเป็นแบบต้องกำหนดโครงสร้างอินพุตและเอ้าท์พุตเอง


คำว่า CPU มักจะถูกใช้กับตัวประมวลผลทางด้านตัวอักษร อย่างไรก็ตามคำว่า CPU จะถูกจำกัดให้ใช้ในระบบอัจฉริยะ ซึ่งเกิดจากการรวมกันระหว่างตัวโปรเซสเซอร์ ระบบหน่วยความจำ และระบบจ่ายพลังงาน รูปที่ 4.3 จะแสดงการทำงานของส่วนต่างๆร่วมกันใน PLC


รูปที่ 4.3 แสดงการทำงานร่วมกันของส่วนต่างๆใน PLC

จากรูปที่ 4.3 ตัวโปรเซสเซอร์จะดำเนินการโปรแกรมควบคุมที่เก็บไว้ในหน่วยความจำในรูปแบบของวงจรแลดเดอร์ โดยมีระบบจ่ายพลังงานจะจ่ายพลังงานไปยังตัวโปรเซสเซอร์ และหน่วยความจำ
4.2 โปรเซสเซอร์
ปัจจุบัน PLC จะใช้ไมโครโปรเซสเซอร์เป็นองค์ประกอบของโปรเซอร์เซอร์ ซึ่งไมโครโปรเซสเซอร์จะประกอบด้วยวงจรมากมายหลายวงจร ซึ่งมีความสามารถในการคำนวณและการควบคุม
โปรเซสเซอร์ที่ใช้ใน PLC จะมีความสามารถต่างๆเช่น การคำนวณทางด้านคณิตศาสตร์ การเตรียมข้อมูล และการวินิจฉัยโปรแกรมว่าจะเป็นไปได้หรือไม่ อีกทั้งยังมีความสามารถในการจัดการข้อมูล และการสื่อสารส่งผ่านข้อมูล เป็นต้น รูปที่ 4.4 จะแสดงโมดูลของโปรเซสเซอร์ ซึ่งแต่ละโมดูลประกอบด้วยไมโครเซสเซอร์มากมาย และโมดูลถูกออกแบบมาให้รอบรับกับวงจรต่างๆและระบบหน่วยความจำ


รูปที่ 4.4 แสดงโมดูลโปรเซสเซอร์ของ PLC ยี่ห้อ Allen Bradley รุ่น 5/12 ,5/15 และ 5/25

หน้าที่หลักของตัวโปรเซสเซอร์คือการออกคำสั่งและควบคุมกิจกรรมทั้งหมดในระบบควบคุม โดยจะทำหน้าที่แปลงคำสั่งที่รู้จักและปฏิบัติตามคำสั่งซึ่งจะเรียกว่า กระบวนการ Executive โดยชุดคำสั่งต่างๆที่ตัวโปรเซสเซอร์รู้จักจะเก็บถาวรอยู่ในส่วนหนึ่งของตัวโปรเซสเซอร์ 
นอกจากนี้ในกระบวนการ Executive จะมีการดำเนินการเกี่ยวกับสิ่งต่างๆต่อนี้
1.การสื่อสารกันระหว่างระบบ PLC กับผู้ใช้โดยผ่านทางอุปกรณ์การเขียนโปรแกรม และแน่นอนว่า PLC จะต้องสนับสนุนรองรับกับพอร์ตการสื่อสารต่างๆเช่นอุปกรณ์แสดงผลการทำงานของระบบอินพุตและเอ้าท์พุตต่างๆ อาทิ พวก HMI เป็นต้น
2.อ่านและวินิจฉัยข้อมูลจากแหล่งจ่ายพลังงาน โมดูลอินพุตและเอ้าท์พุต และหน่วยความจำ
3.การสื่อสารกับผู้ปฏิบัติงานโดยผ่าน Operator Interface เช่นพวกอุปกรณ์กดต่างๆ
CPU ของระบบ PLC อาจจะมีหลายโปรเซสเซอร์ก็ได้ ซึ่งอาจจะมีโปรเซสเซอร์ไว้เพื่อในการสื่อสาร และการมีโปรเซสเซอร์เพิ่มจะทำให้มีความเร็วในการดำเนินงานเพิ่มขึ้น     การที่ CPU มีหลายโปรเซสเซอร์ซึ่งจะแบ่งโปรเซสเซอร์ไปทำหน้าที่ต่างๆเช่นการสื่อสาร การควบคุมแบบพิเศษเช่นการควบคุมแบบ PID เราจะเรียกว่ามัลติโปรเซสซิ่ง (Multiprocessing)

รูปที่ 4.5 แสดง PLC ที่มีโครงสร้างหลายโปรเซสเซอร์

ในปัจจุบันโปรเซสเซอร์ที่ทำหน้าที่พิเศษจะถูกแยกออกมาเป็นโมดูล โดยเวลาจะใช้ก็ต้องต่อโมดูลถัดๆไปจากตำแหน่ง CPU ตัวหลัก


รูปที่4.6 แสดงโมดูลต่างๆเช่น (a) แสดงโมดูลควบคุมการเคลื่อนที่แกนเดียว
(b) โมดูลควบคุมอุณหภูมิ

ไมโครโปรเซสเซอร์ที่ใช้ใน PLC ยังถูกออกเป็นหมวดหมู่ต่างๆตามขนาดของเวิร์ด หรือ จำนวนบิตที่ใช้ในการดำเนินการพร้อมกัน โดยมาตรฐานจะมีขนาด 8 ,16  ,32 บิต ยิ่งเวิร์ดยิ่งยาวหมายความว่าการทำงานของตัวโปรเซสเซอร์จะยิ่งเร็วขึ้น ตัวอย่างเช่น ไมโครโปรเซสเซอร์ชนาด 32 บิต จะมีความเร็วในการจัดการข้อมูลกว่าไมโครโปรเซสเซอร์ขนาด 16 บิต เนื่องจากว่าในการปฏิบัติงานจริงตัวไมโครโปรเซสเซอร์จะต้องทำการจัดการข้อมูลมากกว่า 2 ครั้งต่อการดำเนินการ 1 รอบ ถ้าใช้บิตยิ่งสูงความสามารถก็ยิ่งมากขี้น ประมวลผลเร็วขึ้น แต่ต้นทุนก็สูงขึ้นด้วย
4.3 โปรเซสเซอร์สแกน
ฟังก์ชั่นพื้นฐานของ PLC คือการอ่านสถานะของอุปกรณ์อินพุตทั้งหมด จากนั้นก็ทำการควบคุมตามโปรแกรมที่เขียนไว้ แล้วจึงไปสั่งสถานะเอ้าท์พุตให้ทำงานต่อไป ซึ่งกระบวนการที่
1.PLC อ่านสถานะของอินพุต เรียกว่า ขั้นตอน READ
2.ดำเนินการตามโปรแกรมที่เขียนไว้ เรียกว่า ขั้นตอน  Program Execution
3.ปรับปรุงสถานะค่าเอ้าท์พุตให้ทันสมัย เรียกว่า ขั้นตอน Update Output
ซึ่ง 3 กระบวนการนี้เราจะเรียกว่า การสแกน (Scan) รูปที่ 4.7 จะแสดงขั้นตอนการสแกน ซึ่งกระบวนการสแกนจะเกิดขึ้นวนตลอดเวลา คือจากขั้นตอนที่ 1 ไปยังขั้นตอนที่ 3 และก็กลับมาขั้นตอนที่ 1 อีกเรื่อยๆไป


รูปที่ 4.7 แสดงขั้นตอนการสแกนของ PLC

บางครั้งบริษัทผู้ผลิต PLC จะกำหนดให้การสแกนมี 2 ขั้นตอน โดยจะเรียกกระบวนการที่ PLC แก้ปัญหาโปรแกรมควบคุมว่า Program Scan และเรียกกระบวนการที่อ่านสถานะของอินพุตและปรับปรุงค่าเอ้าท์พุตว่า I/O update Scan แต่อย่างไรก็ตามระยะเวลาทั้งหมดก็เท่ากัน ส่วนสัญญานภายในตัวโปรเซสเซอร์ ซึ่งจะแสดงว่าตอนนี้ทำการสแกนเสร็จสิ้นแล้ว เราจะเรียกสัญญาณนั้นว่า สัญญาณ End – Of – Scan (EOS)
เวลาที่ใช้ในการสแกนเราจะเรียกว่า สแกนไทม์ (Scan Time)  ซึ่งก็คือเวลาทั้งหมดที่ PLC กระทำกระบวนการต่างๆตามรูปที่ 4.7 จนเสร็จ 1 รอบ ซึ่งระยะเวลานี้จะเร็วหรือช้าขึ้นอยู่กับปัจจัย 2 ประการ
1.ปริมาณหน่วยความจำที่ถูกใช้ไปในโปรแกรมควบคุม ถ้ามากเวลาที่ใช้ก็จะมาก
2.ชนิดของคำสั่งที่ใช้ เนื่องจากบางคำสั่งมีการใช้พารามิเตอร์มากก็จะมีผลต่อการใช้เวลาในการวิเคราะห์คำสั่ง
ปัจจุบัน PLC ส่วนใหญ่จะมีเวลาสำหรับการสแกน 1 รอบประมาณ 0.1 50 มิลลิวินาที (ms)  
ผู้ผลิต PLC ส่วนใหญ่จะระบุสแกนไทม์บนฐานของหน่วยความจำที่ถูกประยุกต์ใช้งาน เช่น 1msec / 1K Programmed memory อย่างไรก็ตามก็ยังมีปัจจัยอื่นๆที่มีผลต่อระยะเวลาที่ใช้ในการสแกน อาทิเช่น ถ้ามีการใช้ระบบย่อยที่เป็นอินพุตเอ้าท์พุตทางไกล (Remote I/O)  PLC ก็จะต้องมีเวลาในการสแกนเพิ่มขึ้น เนื่องจากว่า PLC จะต้องใช้เวลาในการรับส่งข้อมูลระหว่างตัว PLC เองกับระบบย่อยอินพุตและเอ้าท์พุตทางไกล และกรณีที่ทำการมอนิเตอร์ตัวโปรแกรมก็ทำ PLC ต้องใช้เวลาในการสแกนเพิ่มขึ้น เพราะจะต้องนำข้อมูลสถานะอินพุตและเอ้าท์พุตของอุปกรณ์ภายนอกส่งให้กับอุปกรณ์แสดงผล (เช่นคอมพิวเตอร์ส่วนบุคคล) อีกที
ในระบบ PLC จะมีการสแกนอย่างต่อเนื่อง และเป็นลำดับขั้นตอนตั้งแต่การอ่านสถานะของอุปกรณ์อินพุต กระทำตามโปรแกรม และปรับปรุงค่าเอ้าท์พุต โดยขั้นตอนแรกตัวโปรเซสเซอร์จะสามารถอ่านสถานะของอินพุตได้ถ้าสัญญานของอินพุตไม่เร็วไปกว่าการสแกนของ PLC เพราะถ้าสแกนไทม์ช้ากว่าสัญญาณของอินพุตทำให้ไม่สามารถอ่านค่าสถานะของอินพุตได้ ตัวอย่างเช่น จากรูปที 4.8 ถ้าคอนโทรลเลอร์ของ PLC ใช้เวลาในการสแกนไทม์ทั้งหมด 10 ms และต้องทำการอ่านค่าอินพุตที่มีสถานะเปลี่ยนแปลง 2 ครั้งในเวลา 8 ms ตัว PLC จึงไม่สามารถที่จะอ่านสถานะของค่าอินพุตได้ถูกต้อง เป็นผลทำให้เครื่องจักรหรือกระบวนการผลิตทำงานได้ผิดพลาด ดังนั้นการเลือก PLC ควรจะเลือกที่มีความเร็วในการสแกนไทม์ที่เหมาะสมสำหรับอ่านค่าดิสครีสอินพุตและรหัส ASCII ให้ได้อย่างถูกต้อง

รูปที่ 4.8 แสดงตัวอย่างของสัญญาณที่เปลี่ยนสถานะเร็วกว่าสแกนไทม์ของ PLC ซึ่งทำให้ PLC ไม่สามารถตรวจเจอได้
ตัวอย่างที่ 4.1  PLC จะเป็นเช่นใดถ้าสัญญาณที่เข้าที่อินพุตมีลักษณะดังรูปที่ 4.9 a และ 4.9 b

รูปที่ 4.9 แสดงอินพุตที่เป็นสัญญาณพัลล์ สำหรับ(a) 1 ลูก และ (b) 2 ลูก

เฉลย
จากรูปที่ 4.9  a อุปกรณ์ PLC สามารถที่จะจับสัญญาณอินพุตได้ เนื่องจากว่าช่วงเวลาที่ใช้ในการอ่านค่าอินพุตจะน้อยกว่าช่วงเวลาที่เกิดสัญญาณอินพุต และช่วงนั้นเอง อินพุตได้ ON ระหว่างที่ PLC กำลังอ่านสถานะของอินพุตพอดี แต่ถ้าสัญญาณอินพุตในรูปที่ 4.9 a เกิดหลังจากที่ PLC สิ้นสุดกระบวนการ READ ไปแล้ว ตัว PLC ก็จะไม่รับรู้ค่าอินพุต
สำหรับในรูปที่ 4.9 b อุปกรณ์ PLC สามารถที่จะจับสัญญาณได้เฉพาะแค่พัลล์ลูกแรกเท่านั้นแต่ไม่สามารถที่จะจับสัญญาณพัลล์ลูกที่สองได้ เพราะว่าสัญญาณพัลล์ลูกที่สองเกิดขึ้นหลังจากที่ PLC สิ้นสุดกระบวนการอ่านสถานะจากอินพุตไปแล้ว ดังนั้น PLC จึงไม่สามารถที่จะรับรู้ค่าอินพุตที่เกิดขึ้นในช่วงนี้
สำหรับพฤติกรรมของสัญญาณในรูปที่ 4.9 b จะเป็นสาเหตุที่ทำให้ PLC พลาดการอ่านสัญญาณอินพุต อาจทำให้การทำงานของระบบผิดพลาดได้ ตัวอย่างเช่น ในกรณีใช้โปรแกรมเพื่อทำการนับชิ้นงาน โดยเขียนโปรแกรมเพื่อให้ PLC นับจำนวนพัลล์ที่เกิดขึ้น เหตุการณ์นี้จะทำให้ระบบทำการนับจำนวนผิดได้ ส่วนการแก้ไขในกรณีนี้เราจะได้ศึกษากันต่อไป
วิธีการแก้ไขปัญหาดังกล่าวมีดังต่อไปนี้  โดยทั่วไปในกระบวนการ สแกนทั่วๆไป ของ PLC ถ้ามีการมอนิเตอร์อินพุตในการสแกนแต่ละครั้ง บางทีอาจทำให้การอ่านค่าจากอินพุตผิดพลาดได้ ถ้าโมดูลอินพุตได้รับสัญญาณที่มีความเร็วสูง  ทำให้ผู้ผลิต PLC รุ่นใหม่จะออกชุดคำสั่งที่ทำการขัดจังหวะหรืออินเทอรัป (Interruption) การทำงานในกระบวนการจัดการโปรแกรม (Program Execution) เพื่อให้ทำการอ่านสถานะของอินพุตและปรับปรุงเอ้าท์พุตในทันที ซึ่งที่แสดงในรูปที่ 4.10 คือการแสดงชุดคำสั่งฉุกเฉิน(Immediate Instruction) หรือชุดคำสั่งอินเตอรัป โดยจะทำงานก่อนระหว่างที่โปรแกรมปกติกำลังดำเนินการอยู่ เมื่อทำเสร็จแล้วจะเข้าไปทำงานที่โปรแกรมหลักต่อไป  ซึ่งชุดคำสั่งนี้มีความสำคัญมาก เพื่อให้ PLC ทำงานทันทีในกรณีเมื่อได้ร้บคำสั่งฉุกเฉิน ในกรณีที่เกิดวิกฤติในระบบควบคุม


รูปที่ 4.10 แสดงรูป PLC สแกนกับการปรับปรุงอินพุตและเอ้าท์พุตในทันที

สำหรับการแก้ไขปัญหาในทางเลือกอื่นๆ ก็สามารถทำได้อาทิเช่น การใช้ตัวขยายพัลล์ของอินพุตออกไป (Pulse Stretcher) หรือการใช้โมดูลอินพุตที่มีอัตราการตอบสนองเร็วขึ้น
 สำหรับในการใช้โมดูลตัวขยายพัลล์ของอินพุตออกไป คือต้องขยายสัญญาณออกไปอย่างน้อย 1 รอบของการสแกน แต่ผู้ใช้วิธีต้องระวังว่าสัญญาณที่เกิดขึ้นต้องไม่นานเกินกว่า 2 รอบสแกน มิฉะนั้นตัว CPU ไม่อาจจะเจอพัลล์ที่เหลือ วิธีนี้เป็นวิธีที่นิยมใช้กับสัญญาณอินพุตที่มีความเร็วมาก (ประมาณ 50 ms หรือเร็วกว่า) แต่ไม่เปลียนสถานะมากกว่า 2 ครั้งใน 1 รอบของการสแกน
ถ้า CPU จำเป็นต้องอ่านพัลล์จำนวนมาก(มากกว่า 2 ครั้งต่อ 1 รอบของการสแกน)ในเวลาที่สั้นกว่าเวลาที่ใช้ในการสแกน เช่น พัลล์ที่เกิดจากอินพุตของตัวนับเร็ว (High Speed Counter) จำเป็นจะต้องใช้โมดูลอินพุตพิเศษที่มีอัตราการตอบสนองด้วยความเร็วสูง


รูปที่ 4.11แสดงเทคนิคการขยายสัญญาณอินพุตออกไปสำหรับอินพุตที่มีการเปลี่ยนสถานะด้วยความเร็วสูง (50 ms


ตัวอย่างที่ 4.2 จากรูปที่ 4.12 ในการสแกน 1 รอบ ให้อธิบายการทำงานต่อไปนี้
(a)   คำสั่งฉุกเฉินจะตอบสนองอินพุตอินเทอรัฟอย่างไร
(b)   คำสั่งฉุกเฉินจะปรับปรุงเอ้าท์พุตโดยกระทันหันอย่างไร

รูปที่ 4.12 ตัวอย่างการสแกนของ CPU และสัญญาณ

เฉลย
(a) จากรูปที่ 4.13 จคำสั่งฉุกเฉินจะเข้าไปทำการขัดจังหวะ (Interupt) โปรแกรมการควบคุมเพื่อทำการอ่านสัญญาณอินพุต จากนั้นทำการประมวลผลและเมื่อเสร็จสิ้นแล้วจึงเข้าสู่กระบวนการปกติ ซึ่งก็คือขั้นตอนการปฏิบัติตามโปรแกรมควบคุมการทำงาน และท้ายสุดจึงทำการปรับปรุงค่าเอ้าท์พุต

รูปที่ 4.13 แสดงขั้นตอนการตอบสนองทันทีทันใดเมื่อได้สัญญานอินเทอรัฟ

(b) จากรูปที่ 4.14 จะแสดงกระบวนการปรับปรุงค่าเอ้าท์พุตต่อจากข้อ (a) โดยเมื่อปรับปรุงค่าเอ้าท์พุตเสร็จสิ้นแล้วจึงเข้าสู่กระบวนของโปรแกรมหลักต่อไป


รูปที่ 4.14 แสดงกระบวนการปรับปรุงเอ้าท์พุตในขั้นตอนการอินเตอรัฟ

4.4 การวินิจฉัยและการตรวจสอบข้อผิดพลาด
โปรเซสเซอร์ของ PLC โดยปกติจะมีหน้าที่ที่สำคัญอีกอย่าง คือ ต้องสื่อสารข้อมูลกับระบบย่อย ซึ่งอาจเป็นระบบที่ติดตั้งอินพุตและเอ้าท์พุตใกล้ๆกับตัว CPU หลัก หรือ ระบบย่อยที่มีอินพุตและเอ้าท์พุตระยะไกล (Remote I/O) ซึ่งระบบย่อยพวกนี้บางทีจะเรียกว่าแร๊ก (Rack) หรือ อินพุต-เอ้าท์พุตอินเตอร์เฟส (I/O interface) ระบบย่อยนี้จะทำการสื่อสารแลกเปลี่ยนข้อมูลเมื่อสิ้นสุดการสแกนโปรแกรม โดยขณะที่โปรเซสเซอร์ส่งค่าเอ้าท์พุตให้กับเอ้าท์พุตอินเตอร์เฟส ก็จะรับค่าสถานะทางอินพุต เอ้าท์พุตปัจจุบันด้วย
โมดูลที่ใช้ในการสื่อสารโดยทั่วๆไปจะเป็น I/O subsystem adapter module ซึ่งจะต้องมีใน CPU ,โมดูลของโปรเซสเซอร์อินพุต-เอ้าท์พุตระยะไกล และระบบย่อยต่างๆที่อยู่ใกล้กับตัว CPU หลัก เพื่อใช้ในการสื่อสารระหว่างตัวโปรเซสเซอร์กับระบบย่อยต่างๆที่อยู่ในระบบ

รูปที่ 4.15 แสดงโครงสร้างของระบบย่อยต่างๆที่ใช้ในระบบ PLC

โดยที่ระยะทางระหว่าง CPU กับระบบย่อยสามารถเป็นได้หลากหลาย ขึ้นอยู่กับตัวควบคุมและมักจะอยู่ที่ระยะทางระหว่าง 1,000 ถึง 15,000 ฟุต ตัวกลางที่ใช้ในการสื่อสารก็มีจำพวก สายคู่ตีเกลียว (Twisted – Pair) สายแกนคู่ (Twinaxial) สายโคแอ็กเซี่ยน (Coaxial) หรือ ไฟเบอร์อ๊อปติก (Fiber – optic) ซึ่งทั้งหมดขึ้นอยู่กับตัว PLC และระยะทางที่ใช้
ตัวควบคุมจะทำการส่งข้อมูลให้กับระบบย่อยด้วยความเร็วที่สูงมาก แต่ในความเป็นจริงความเร็วที่เกิดขึ้นจะไม่แน่นอนขึ้นอยู่กับตัวควบคุม รูปแบบของข้อมูลที่ใช้ในการส่งซึ่งโดยทั่วไปจะเป็นข้อมูลรูปแบบซีเรียลไบนารี่ (Serial Binary Format)ที่ประกอบด้วยจำนวนบิตที่แน่นอน  ระยะทางในการส่งข้อมูล และตัวกลางในการส่งข้อมูล
เทคนิคการตรวจสอบข้อผิดพลาดของข้อมูล ถูกนำมาใช้ในกระบวนการ การสื่อสาร ระหว่างตัวโปรเซสเซอร์และระบบย่อย โดยเทคนิคนี้จะเป็นการยืนยันความถูกต้องว่าข้อมูลที่ส่งและข้อมูลที่รับเป็นข้อมูลเดียวกันหรือไม่ ระดับของความซับซ้อนในการตรวจสอบข้อผิดพลาดจะมากแค่ไหน ขึ้นอยู่กับผู้ผลิตและประเภทของอุปกรณ์ PLC

4.4.1 การตรวจสอบข้อผิดพลาด
โปรเซสเซอร์จะใช้เทคนิคการตรวจสอบข้อผิดพลาดเพื่อมอนิเตอร์สถานะทำงานของหน่วยความจำและการสื่อสารระหว่างระบบย่อยและช่องการสื่อสาร (Peripherals) ว่าสอดคล้องกันหรือไม่ โดยปกติจะใช้วิธีทั่วๆไปคือวิธี พาริตี้ (Parity) และตรวจสอบผลรวม (Checksum)
1.พาริตี้
การตรวจสอบพาริตี้ หรือ Parity Check บางทีก็เรียกว่า Vertical Redundancy Check (VRC) เป็นเทคนิคการตรวจสอบข้อมูลว่ามีการสื่อสารหรือไม่ที่ เป็นวิธีนิยมใช้กันทั่วๆไป  พาริตี้เป็นการจำนวนของเลข 1 ในระบบเลขไบนารี่ เพื่อตรวจสอบความสมบูรณ์ของข้อมูลที่ถูกส่งไป  การตรวจสอบพาริตี้มี 2 ประเภท คือแบบพาริตี้คู่ (Even Parity) คือมีจำนวนเลข 1 เป็นจำนวนคู่ กับ พาริตี้คี่ (Odd Parity) คือมีจำนวนเลข 1 เป็นเลขคี่
เมื่อข้อมูลถูกส่งผ่านโดย PLC ในรูปแบบของสัญญาณไบนารี่ ซึ่งประกอบด้วยเลข 0 และเลข 1 โดยจำนวนตัวเลข 1 สามารถเป็นได้ทั้งเลขคู่และเลขคี่ ขึ้นกับตัวอักษรหรือข้อมูลที่ถูกส่ง (ดูรูปที่ 4.16 a) ในกระบวนการส่งข้อมูลแบบมีพาริตี้จะมีการเพิ่มบิตพิเศษขึ้นมาอีกบิตหนึ่ง ซึ่งเรียกว่า พาริตี้บิต (Parity Bit) ซึ่งอาจจะอยู่ในตำแหน่งที่มีนัยสำคัญมาก (Most Significant Bit : MSB) หรือ อาจอยู่ในตำแหน่งที่มีนัยสำคัญน้อย (Least Significant Bit : LSB) (ดูในรูปที่ 4.16 b)  ซึ่งจะทำให้จำนวนเลข 1 ในเวิร์ดเป็นจำนวนคู่หรือจำนวนคี่ขึ้นอยู่กับชนิดของพาริตี้ที่ใช้

รูปที่ 4.16 (a) แสดงการส่งข้อมูล 16 บิต (b) แสดงการส่งข้อมูล 16 บิตแบบมีพาริตี้

สมมุติว่าโปรเซสเซอร์ทำการส่งข้อมูลรหัส ASCII ตัวอักษร C (1000011) ไปที่ช่องอุปกรณ์ต่อพ่วง และใช้พาริตี้คื่ แต่รหัสดังกล่าวมีตัวเลข 1 จำนวน 3 ตัวซึ่งเป็นเลขคี่อยู่แล้ว ดังนั้นเมื่อมีการส่งข้อมูลแบบมีพาริตี้คี่ จะส่งข้อมูล P1000011 โดยที่ P = 0 แต่ถ้าจะส่งข้อมูลแบบมีพาริตี้คู่  P = 1 เป็นต้น
ในการประยุกต์การตรวจสอบข้อผิดพลาด เช่นตัวส่งและตัวรับสัญญาณใช้วิธีการพาริตี้ ถ้าตัวส่งและตัวรับมีพาริตี้ต่างกันแสดงว่ามีการผิดพลาดจากการส่งข้อมูล แต่ถ้าพาริตี้เหมือนกัน ยังไม่สามารถสรุปไม่ได้ว่าข้อมูลที่ส่งมีการผิดพลาดหรือไม่ เช่น ถ้ามีการผิดพลาด 2 4,6,…ก็ทำให้มีพาริตี้ของตัวส่งและตัวรับเหมือนกันแต่ข้อมูลที่ส่งเกิดการผิดพลาด
โปรเซสเซอร์บางประเภทก็ไม่มีการใช้พาริตี้ในการส่งข้อมูล เพราะเนื่องจากว่า ปัจจุบันมีการใช้ฟังก์ชั่นพิเศษที่ซอฟต์แวร์แทน

2.วิธีการตรวจสอบผลรวม (Checksum)
เนื่องจากการใช้พาริตี้จำเป็นต้องสูญเสียบิตไป 1 บิต เช่นกรณีที่เราทำการส่งข้อมูลขนาด 8 บิต ถ้าเราใช้ไป 1 บิตเพื่อเป็นพาริตี้บิต เราเสียพื้นที่การเก็บข้อมูลไป 12.5 %  แต่ถ้าเราทำการส่งข้อมูล 16 บิต เราจะเสียพื้นที่ในการเก็บข้อมูลไป 6.25 % เป็นต้น ด้วยเหตุผลนี้ จึงมีวิธีการใหม่ที่ใช้บล็อกข้อมูล (Data Block) ทำการตรวจสอบ เป็นวิธีที่รู้จักกันที่เรียกว่า วิธีการตรวจสอบผลรวม (Checksum)
การตรวจสอบด้วยวิธีนี้จะหาข้อผิดพลาดในบล็อกที่มีหลายๆเวิร์ด แทนที่จะตรวจเวิร์ดโดยการใช้พาริตี้ แต่วิธีนี้จะวิเคราะห์ทุกเวิร์ดในบล็อกข้อมูลจากนั้นก็จะเพิ่ม 1 เวิร์ดที่ส่วนท้ายของบล็อกข้อมูลเพื่อสะท้อนคุณลักษณะของบล็อก จากรูปที่ 4.7 จะแสดงเวิร์ดสุดท้ายที่รู้จักกันว่า Block Check Character (BCC)



รูปที่ 4.17 แสดง BCC ซึ่งอยู่ในตอนท้ายของบล็อกข้อมูล

วิธีตรวจสอบผลรวมนี้โดยปกติจะแบ่งย่อยออกเป็น 3 ประเภท
1.Cyclic Redundancy Check
2.Longitudinal Redundancy Check
3.Cyclic Exclusive Or CheckSum
- วิธี Cyclic Redundancy Check (CRC)
วิธีนี้จะใช้ผลรวมของทุกเวิร์ดและเก็บผลลัพธ์ไว้ที่ BCC (Block Check Character)แต่ถ้าผลรวมทำให้เกิดจำนวนบิตเพิ่มก็จะดัดตัวบิทที่เพิ่มออก โดยขณะที่กำลังตรวจสอบ BCC จะถูกรีเซ็ตให้มีค่าเป็น 0
- วิธี Longitudinal Redundancy Check (LRC)
มีลักษณะเหมือนกับวิธี CRC แต่จะใช้ตัวดำเนินการคือ XOR (Exclusive OR) ซึ่งมีสัญลักษณ์คือ  Å  ซึ่งในรูปที่ 4.18 จะแสดงตัวอย่างของตารางแสดงค่าความจริงของ XOR


รูปที่ 4.18 แสดงตารางค่าความจริงทางลอจิกของตัวดำเนินการ XOR


- วิธี  Cyclic Exclusive – OR Checksum (CX-ORC)
วิธีการนี้จะมีลักษณะคล้ายคลึงกับวิธีการ LRC  แตกต่างกันตรงที่ว่า
1.ในตำแหน่งเริ่มต้นจะมีการกำหนดค่าเป็น 0 ก่อน
2.เมื่อทำการ XOR แล้วให้เลื่อนบิตแบบหมุนไปทางซ้ายมือก่อน สำหรับบิตที่อยู่ซ้ายมือสุดให้เลื่อนไปทิ่บิตแรก ตัวอย่างวิธีการเลื่อนบิตสามารถแสดงได้ดังรูปที่ 4.19



รูปที่ 4.19 แสดงวิธีการเลื่อนบิตแบบหมุนไปทางซ้าย (Rotate Left)

ตัวอย่างที่ 4.3 จะแสดงเพื่อประกอบความเข้าใจในวิธีการใช้วิธี LRC และวิธี CX-ORC เพื่อตรวจสอบข้อผิดพลาดของข้อมูล

ตัวอย่างที่ 4.3 ให้ใช้วิธีตรวจสอบผลรวม (Checksum) ด้วยวิธี        (a) LRC และวิธี (b) CX-ORC สำหรับข้อมูลแบบ 6 บิต จำนวน 6 กลุ่ม โดยให้วางตำแหน่ง BCC ที่ตำแหน่งสุดท้ายของบล็อกข้อมูล


เฉลย
(a) วิธี LRC สามารถดำเนินการได้ดังต่อไปนี้

เมื่อเสร็จสิ้นกระบวน บล็อกข้อมูลที่ใช้วิธีการ LRC จะเก็บข้อมูลดังนี้


(b) วิธี CX-ORC สามารถดำเนินการได้ดังต่อไปนี้
เริ่มด้วยเวิร์ด 000000 

เมื่อเสร็จสิ้นกระบวน บล็อกข้อมูลที่ใช้วิธีการ LRC จะเก็บข้อมูลดังนี้


4.4.2 การพบข้อผิดพลาดและการจัดเก็บ
ตัวควบคุม (Controller) ของ PLC รุ่นใหม่ๆจะมีความสามารถในการตรวจหาข้อผิดพลาดและการจัดเก็บข้อผิดพลาด ทำให้มีความน่าเชื่อถือมากกว่าระบบตรวจสอบข้อผิดพลาดทั่วๆไป ซึ่งชนิดของการเก็บข้อผิดพลาดสามารถแสดงได้หลายอย่างสำหรับค่าเดียวกัน
โดยส่วนใหญ่ในการตรวจหาข้อผิดพลาดและการเก็บข้อผิดพลาดจะมีการใช้รหัสแฮมมิ่ง (Hamming Code) โดยรหัสนี้จะอาศัย พาริตี้บิต ซึ่งจะกระจายอยู่ทั่วไปกับบิตข้อมูลใน Data Word โดยการรวมพาริตี้กับบิตข้อมูลให้สอดคล้องกับกลุ่มของสมการที่เป็นพาริตี้  โดยจะทำการสร้างข้อมูลขนาดไบต์เล็กๆที่ประกอบด้วยค่าที่ระบุความผิดพลาดค่าหนึ่ง เมื่อทำการส่งค่าไปแล้วมีการเปลี่ยนค่าในไบต์นี้ แสดงว่าเกิดความผิดพลาด และจะจัดเก็บความผิดพลาดนี้  ตัวฮาร์ดแวร์ของ PLC จะสร้างและตรวจสอบรหัสแฮมมิ่งที่ซับซ้อนโดยชุดของสมการที่ตรวจสอบข้อผิดพลาดซึ่งสร้างโดยผู้ผลิต PLC  โดยอาจจะแตกต่างกันในแต่ละรุ่น

4.4.3 CPU Diagnostics
ตัวโปรเซสเซอร์จะตอบสนองเมื่อตรวจสอบพบว่ามีการสื่อสารผิดพลาด นอกนั้นจะตอบสนองเมื่อระบบเกิดความผิดพลาดอื่นๆ โดยจะทำการส่งสัญญาณเตือนผู้ใช้งานว่าตอนนี้ระบบมีบางสิ่งบางอย่างผิดปกติ ตัวส่งสัญญาณนี้โดยปกติจะติดอยู่กับด้านหน้าของโมดูลที่เป็น CPU เลย โดยชนิดของการวินิจฉัยข้อผิดพลาด โดยทั่วๆไปจะประกอบด้วย 4 ชนิด
1.หน่วยความจำพร้อม (Memory OK)
2.โปรเซสเซอร์พร้อม (Processor OK)
3.แบตเตอรี่สำรองไฟฟ้าให้หน่วยความจำพร้อม (Battery OK)
4.ระบบจ่ายพลังงานพร้อม (Power Supply OK)
ตัวควบคุมบางตัวจะมีชุดของรีเลย์แสดงความผิดพลาด(Fault Relay) เพื่อใช้เป็นวงจรส่งสัญญานเตือน (Alarm) เมื่อพบบางสิ่งบางอย่างผิดปกติ
หน้าสัมผัสของรีเลย์ประเภทนี้โดยปกติจะใช้กับตัวควบคุมเพื่อทำหน้าที่เป็น Wachdog Timer โดยโปรเซสเซอร์จะส่งสัญญาณพัลล์เมื่อสิ้นสุดการสแกนในแต่ละครั้ง ถ้าทุกอย่างเป็นไปอย่างปกติ  ถ้าเกิดข้อผิดพลาดขึ้นตัวโปรเซสเซอร์จะไม่ส่งสัญญาณ ตัวไทม์เมอร์ก็จะทำการจับเวลา เมื่อถึงเวลาตัวรีเลย์ก็จะทำงาน ส่งสัญญาณถ้าเกิดข้อผิดพลาดแล้ว
ในตัวควบคุมบางตัว ชุดวินิจฉัยของ CPU จะมีให้สำหรับผู้ใช้ทั่วๆไปด้วย โดยระหว่างดำเนินการทางโปรแกรม เช่น แสดงสัญญาณเมื่อเกิดการสแกนผิดพลาด แบตเตอรี่ใกล้จะหมด เป็นต้น

4.5 ระบบจ่ายพลังงาน (System Power Supply)
ระบบแหล่งจ่ายพลังงานมีความสำคัญต่อการดำเนินการของระบบโดยรวมเป็นอย่างมาก ในความเป็นจริง ระบบจ่ายพลังงานได้ถูกพิจารณาและจัดการเป็นอย่างแรก (First Line Manager) สำหรับระบบที่น่าเชื่อถือและมีความสมบูรณ์ โดยไม่ได้มีหน้าที่จ่ายกระแสไฟฟ้าทางตรง (Direct Current : DC) ให้กับองค์ประกอบของระบบเท่านั้น (ตัวอย่างเช่น โปรเซสเซอร์ หน่วยความจำ และระบบเชื่อมต่ออินพุตและเอ้าท์พุต) แต่ยังมีหน้าที่ควบคุมแรงดันไฟฟ้าให้คงที่ด้วย และจ่ายพลังงานให้กับ CPU และทำการเตือน CPU ถ้ามีบางสิ่งบางอย่างผิดปกติ
สรุปแล้วระบบจ่ายพลังงานมีหน้าที่จ่ายพลังงานให้มีคุณภาพและป้องกันอุปกรณ์ต่างๆที่อยู่ในระบบ

4.5.1 แรงดันไฟฟ้าทางอินพุตของ PLC
โดยปกติ ระบบพลังงานของ PLC จะต้องการแรงดันไฟฟ้าจากแหล่งจ่ายไฟฟ้ากระแสสลับ (AC) อย่างไรก็ตาม PLC บางรุ่นก็ต้องการแรงดันไฟฟ้าจากแหล่งจ่ายไฟฟ้ากระแสตรง (DC)  แต่อย่างไรก็ตาม PLC ส่วนใหญ่จะต้องการกระแสไฟฟ้าสลับ 120 โวลต์ หรือกระแสไฟฟ้าสลับ 220 โวลต์ ขณะที่มีส่วนน้อยต้องการไฟฟ้ากระแสตรง 24 โวลต์ 
เนื่องจากว่ากระแสไฟฟ้าส่วนใหญ่ที่มาตามสายส่งนั้นมักจะมีแรงดันไฟฟ้าและความถี่ไม่คงที่ ดังนั้นแหล่งจ่ายพลังงานให้ PLC ต้องมีความสามารถทนต่อแรงดันไฟฟ้าที่เพิ่มหรือลดลง ตั้งแต่ 10 15 % ตัวอย่างเช่นถ้าแหล่งจ่ายพลังงานของ PLC ขนาด 120 VAC ก็ควรที่จะมีความสามารถรองรับแหล่งจ่ายไฟฟ้าจากแหล่งภายนอกในช่วง 108 132 VAC สำหรับแหล่งจ่ายพลังงานของ PLC ขนาด 220 VAC ก็ควรที่จะมีความสามารถรองรับแหล่งจ่ายไฟฟ้าจากแหล่งภายนอกในช่วง 198 242 VAC ถ้ากระแสไฟฟ้าจากแหล่งภายนอกอยู่นอกขอบเขต (เช่น การต่อเฟสผิดระบบไฟฟ้า 3 เฟส)จะทำให้มีการหยุดการทำงานของ PLC ทำให้ระบบการผลิตหยุดทำงาน ทำให้เกิดความเสียหายในการผลิต ดังนั้นกระแสไฟฟ้าที่จะจ่ายให้กับระบบ PLC ควรที่จะมีหม้อแปลงไฟฟ้าเพื่อเป็นตัวควบคุมให้แรงดันไฟฟ้าคงที่ก่อนที่จะเข้าสู่ระบบจ่ายพลังงานของ PLC

4.5.2 หม้อแปลงควบคุมแรงดันไฟฟ้าให้คงที่ (Constant Voltage Transformer)
เป็นแหล่งจ่ายพลังงานที่ทนทานต่อการเปลี่ยนแปลงของแรงดันไฟฟ้าที่มาจากสายส่งได้ดี แต่ไม่สามารถที่จะทดแทนแรงดันไฟฟ้าที่ไม่เสถียรในสภาพแวดล้อมอุตสาหกรรมบางอย่าง โดยสาเหตุต่างๆที่ทำให้แรงดันไฟฟ้าตกลงเกินพิกัดอย่างมาก คือ
1.การสตาร์ทหรือซัทดาว์นของอุปกรณ์ไฟฟ้าหนักๆบางชนิดใกล้ๆกับ เช่น มอเตอร์ไฟฟ้าขนาดเล็ก ปั๊ม เครื่องเชื่อม คอมเพรสเซอร์ และระบบเครื่องปรับอากาศ
2.แรงดันไฟฟ้าจะลดลงตามระยะทางจากสถานีย่อย
3.แรงดันไฟฟ้าของโรงงานย่อยๆจะลดลงจากการที่มีจุดต่อมาก จุดต่อยิ่งมากแรงดันไฟฟ้าก็ยิ่งลดลง
4.การเกิดไฟฟ้าตกของแรงดันไฟฟ้าในสายส่งเนื่องจากอุปกรณ์ต่างๆในสำนักงาน
หน้าที่ของหม้อแปลงไฟฟ้าแรงดันคงที่ คือ การชดเชยแรงดันที่เปลี่ยนแปลงในด้านอินพุต (ด้านปฐมภูมิ : Primary) เพื่อรักษาแรงดันฝั่งเอ้าท์พุตให้คงที่ (ด้านทุติยภูมิ : Secondary) เมื่อนำหม้อแปลงมาใช้ในโหลดที่ต่ำกว่าอัตราที่กำหนดไว้ โดยที่หม้อแปลงไฟฟ้าจะรักษาแรงดันไม่ให้เปลี่ยนแปลงเกิน 1 % (+1% หรือ -1%) ที่ฝั่งเอ้าท์พุตในขณะที่ผั่งอินพุตเปลี่ยนแปลงถึง 15 % โดยเปอร์เซ็นต์การควบคุมเปลี่ยนแปลงตามฟังก์ชั่นการควบคุมโหลดของ PLC (ระบบจ่ายพลังให้ PLC และอุปกรณ์อินพุตต่างๆ) ถ้าระบบมีโหลดมาก แรงดันไฟฟ้าก็เปลี่ยนแปลงมาก ด้งนั้นหม้อแปลงที่ใช้ต้องมีอัตรากำลังที่เหมาะสมกับทั้งกระแสและแรงดันไฟฟ้า โดยอัตราของหม้อแปลงจะมีหน่วยคือ โวล์ต-แอมแปร์ (VA)  สำหรับหม้อแปลงที่เหมาะสมของ PLC สามารถดูได้จากคู่มือของ PLC ของบริษัทผู้ผลิต


รูปที่ 4.20 แสดงหม้อแปลงแรงดันคงที่ต่อเข้ากับ PLC โดยเชื่อมต่อกับ CPU และโมดูล

Sola CVS เป็นหม้อแปลงไฟฟ้ามาตรฐานสำหรับกระแสไฟฟ้าที่เป็นคลื่นรูปไซน์ อาจจะใช้กับหม้อแปลงแรงดันไฟฟ้าคงที่ที่ใช้กับ PLC ก็ได้เป็นหม้อแปลงชนิดที่ขจัดฮาร์โมนิกสูงออก ทำให้เอ้าท์พุตที่ได้ออกมาเป็นสัญญาณไซน์ที่สะอาดเหมาะสมกับอุปกรณ์ PLC สำหรับหม้อแปลงแรงดันคงที่ที่ไม่ได้กรองฮาร์โมนิกสูงจะไม่แนะนำให้ใช้กับ PLC รูปที่ 4.21 เป็นตัวอย่างแสดงความสัมพันธ์ระหว่างแรงดันด้านเอ้าท์พุตและแรงดันด้านอินพุตสำหรับหม้อแปลงมาตรฐาน Sola CVS ซึ่งถูกนำไปใช้ในโหลดหลายๆอย่าง


รูปที่ 4.21 แสดงความสัมพันธ์ระหว่างแรงดันอินพุตและแรงดันเอ้าท์พุตในหน่วย Sola
4.5.3 หม้อแปลงแยกส่วน (Isolation Transformers)
ถึงแม้ว่าเราจะติดตั้ง PLC ไว้ในที่ ที่มีแหล่งจ่ายแรงดันไฟฟ้าที่เสถียรภาพ ถึงอย่างไรก็ตามอุปกรณ์บางอย่างในอุตสาหกรรมอาจจะส่งคลื่นแม่เหล็กไฟฟ้าสอดแทรก(Electromagnetic Interference : EMI) ถ้าตัวควบคุมใช้แหล่งจ่ายกระแสไฟฟ้ารวมกับอุปกรณ์ประเภทนี้ อาจทำให้ตัวควบคุมทำงานแบบติดๆดับๆ ทำงานไม่สม่ำเสมอ ทำให้การควบคุมเกิดความผิดพลาด ดังนั้นเพื่อเพิ่มความน่าเชื่อถือของระบบควบคุม (Realiability) ควรจะแยกแหล่งจ่ายพลังงานให้ PLC ออกมาต่างหากจากอุปกรณ์ที่สร้าง EMI โดยการใช้ หม้อแปลงแยกส่วน (Isolation Transformers) หม้อแปลงประเภทนี้ไม่จำเป็นต้องเป็นหม้อแปลงแรงดันคงที่ก็ได้ แต่ควรติดตั้งระหว่างตัวควบคุมกับแหล่งจ่ายพลังงาน

4.5.4 การรับภาระของแหล่งจ่ายไฟฟ้า
ระบบแหล่งจ่ายพลังงานที่จ่ายกระแสไฟฟ้ากระแสตรง ที่มีความจำเป็นกับวงจรทางลอจิกของ CPU และวงจรอินพุตและเอ้าท์พุต โดยแหล่งจ่ายจะมีความสามารถจ่ายกระแสสูงสุดตามที่กำหนดไว้ โดยที่คงแรงดันไฟฟ้าไว้ได้ (เช่น 5 แอมป์ 24 โวลต์) ซึ่งขึ้นกับชนิดของแหล่งจ่ายกระแสไฟฟ้า แต่อย่างไรก็ตามบางทีกระแสไฟฟ้าโดยรวมที่จ่ายให้กับระบบอาจจะไม่เพียงพอกับโมดูลอินพุตและเอ้าท์พุตต่างๆ ในกรณีที่กระแสไฟฟ้าไม่เพียงพอต่อการดำเนินการของระบบ PLC จะไม่สามารถคาดเดาการทำงานอินพุตและเอ้าท์พุตได้
โดยปกติแล้ว ภาวะการขาดกระแสไฟฟ้าเป็นไปได้น้อยมาก เพราะว่าระบบจ่ายพลังงานส่วนใหญ่ถูกออกแบบมาให้สามารถรองรับการทำงานของโมดูลอินพุตและเอ้าท์พุตอยู่แล้ว แต่ก็มีบางกรณีถ้ามีการใช้อินพุตและเอ้าท์พุตบางชนิด เช่น เอ้าท์พุตที่มีหน้าคอนแท็คที่มีการใช้กำลังสูงๆ เพื่อนำไปขับโหลดสูงๆ หรือพวกอินพุตหรือเอ้าท์พุตที่เป็น       อานาล็อก ซึ่งโมดูลพวกนี้จะมีการใช้กระแสไฟฟ้าสูงกว่าโมดูลที่เป็นดิจิตอลอินพุตและดิจิตอลเอ้าท์พุต
ภาวะโหลดเกินกำลัง (Overload) ที่เกิดขึ้นจะเป็นตัวการที่ไปรบกวนระบบ เพราะว่าปัญหานี้ไม่ง่ายในการตรวจสอบ การเกิดภาวะโหลดเกินกำลังส่วนใหญ่จะเกิดในกรณีที่เอ้าท์พุตหลายๆตัวได้ทำการเปิดพร้อมๆกันในช่วงเวลาหนึ่ง  ซึ่งหมายความว่าภาวะโหลดเกินกำลังไม่ได้เกิดขึ้นตลอดเวลา
เมื่อเกิดภาวะโหลดเกินกำลัง โดยปกติจะแก้ไขโดยการเพิ่มแหล่งจ่ายกำลังสำรองหรือเปลื่ยนไปใช้แหล่งจ่ายกำลังไฟฟ้าที่มีขนาดใหญ่กว่าก็ได้
เพื่อป้องกันปัญหานี้เราควรจะตรวจสอบโมดูลอินพุตและเอ้าท์พุตรวมทั้งอุปกรณ์ต่างๆดูว่าต้องการกำลังเท่าใด โดยแยกเป็น 2 กรณี กรณีแรกเมื่อโมดูลทั้งหมดไม่ได้ทำงาน และอีกกรณีหนึ่งให้ทุกโมดูลทำงาน เมื่ออุปกรณ์ทุกตัวทำงานเต็มพิกัด จะใช้กำลังเท่าใด และแหล่งจ่ายพลังงานของเราให้กำลังนั้นเพียงพอหรือไม่ ถ้าไม่พออาจจะต้องใช้แหล่งจ่ายพลังงานสำรอง

ตัวอย่าง สมมุติมีการใช้ PLC ที่มี 50 ดิสครีสอินพุต และ 25 ดิสครีสเอ้าท์พุต โดยแต่ละโมดูลของดิสครีสอินพุตสามารถต่อกับอุปกรณ์ภายนอกได้สูงสุด 16 ตัว และแต่ละโมดูลจองดิสครีสเอ้าท์พุตสามารถต่อกับอุปกรณ์ภายนอกได้สูงสุด 8 ตัว ในส่วนเพื่มเติมของโครงสร้างที่เป็นแบบดิสครีส มีความต้องการเอ้าท์พุตพิเศษเพื่อเชื่อมต่อกับเซอร์โวมอเตอร์และหน้าคอนแทคกำลังสูง และในระบบมีการใช้อานาล็อกอินพุต 3 ตัว และอานาล็อกเอ้าท์พุต 3 ตัว ซึ่งรูปที่ 4.22 แสดงตัวอย่างของโครงสร้างของ PLC โดยโมดูลแรกจะเป็นแหล่งจ่ายพลังงาน จากนั้นก็เป็นโปรเซสเซอร์และตามด้วยโมดูลเอ้าท์พุตและอินพุตตามลำดับ


รูปที่ 4.22 โครงสร้างของ PLC ตัวอย่าง

ขั้นตอนที่ 1
โดยขั้นตอนแรกจะต้องประมาณการโหลดสูงสุดของทุกๆโมดูลว่าต้องการพลังงานไฟฟ้าเท่าใด โดยสามารถดูได้จากตารางด้านล่าง


ตารางที่ 4.1 แสดงรายการโมดูลต่างๆและกระแสไฟฟ้าที่ต้องการของแต่ละโมดูล

จากตารางที่ 4.1 พบว่า ความต้องการกระแสไฟฟ้าทั้งหมดคือ ผลรวมของความต้องการในส่วนที่เป็นระบบอินพุตและเอ้าท์พุต กับ ความต้องการกระแสไฟฟ้าของโปรเซสเซอร์ (4,655 + 1,200 )  = 5,855 มิลลิแอมแปร์ = 5.855 แอมแปร์ ซึ่งเป็นความต้องการของกระแสไฟฟ้าสูงสุด
ขั้นตอนที่ 2
เป็นขั้นตอนที่เราต้องเลือกแหล่งจ่ายพลังงานที่เหมาะสม จากตารางที่ 4.1 เราสามารถเลือกแหล่งจ่ายพลังงานที่เหมาะสมคือ
1.เลือกแหล่งจ่ายพลังงาน Type C ซึ่งให้กระแสไฟฟ้า 6 แอมแปร์
2.เลือกแหล่งจ่ายพลังงาน Type A ซึ่งให้กระแสไฟฟ้า 3 แอมแปร์ กับ แหล่งจ่ายพลังงานสำรอง Type AA (ติดที่ช่องที่ 8) ซึ่งให้กระแสไฟฟ้า 3 แอมแปร์  รวมทั้งหมดเท่ากับ 6 แอมแปร์

4.6 อุปกรณ์ทำการโปรแกรม
ในปัจจุบันนี้การเขียนโปรแกรมควบคุมใน PLC จะแตกต่างจากยุคแรกๆที่วางขายในตลาดมาก โดยบริษัทผู้ผลิตจะทำให้ง่ายต่อการเขียนโปรแกรม ทำให้เราไม่ต้องเสียเวลาในการศึกษาการเขียนโปรแกรมมากนัก ทำให้เราจะมีเวลาไปศึกษาเพื่อแก้ปัญหาการควบคุม
PLC ส่วนใหญ่จะมีชุดคำสั่งการเขียนโปรแกรมค่อนข้างที่จะคล้ายคลึงกัน โดยจะแตกต่างกันที่อุปกรณ์ที่ใส่โปรแกรมเข้าไปใน PLC ซึ่งอาจจะแตกต่างกันตามผู้ผลิต ซึ่งอุปกรณ์พื้นฐานในการเขียนโปรแกรมจะมีดังนี้
1.มินิโปรแกรมเมอร์
2.คอมพิวเตอร์ส่วนบุคคล

4.6.1 มินิโปรแกรมเมอร์ (Miniprogrammers)
เป็นอุปกรณ์ที่เรารู้จักกันในชื่อ Handheld หรือ Manual Programmers เป็นอุปกรณ์ที่ราคาไม่แพงและสามารถพกพาได้ สำหรับโปรแกรมให้กับ PLC ขนาดเล็ก โดยทางกายภาพแล้วเป็นอุปกรณ์ที่มีลักษณะคล้ายคลึงกับเครื่องคิดเลข แต่มีตัวแสดงผลขนาดใหญ่ และคีย์กด โดยตัวแสดงผลจะเป็นหลอด LED (Light Emitting Diode) หรือ เป็นพวก LCD (Liquid Crystal Display) และคีย์บอร์ดที่เป็นตัวเลข ชุดคำสั่ง และฟังก์ชั่นพิเศษ  PLC บางรุ่นจะไม่มี Handheld แต่จะติดตั้งตัวมินิโปรแกรมเมอร์มากับตัว PLC เลย และสามารถที่จะถอดได้ด้วย มินิโปรแกรมเมอร์เป็นอุปกรณ์ที่มีประโยชน์มาก จะใช้ในการเขียนโปรแกรมควบคุม       ทำการแก้ไขโปรแกรม และทำการมอนิเตอร์โปรแกรม รูปที่ 4.23 จะแสดงมินิโปรแกรมเมอร์กับ PLC ขนาดเล็ก

รูปที่ 4.23 แสดงมินิโปรแกรมเมอร์ และ PLC ขนาดเล็ก

โดยส่วนใหญ่ มินิโปรแกรมเมอร์จะถูกออกแบบให้สามารถใช้ได้กับผลิตภัณฑ์ PLC มากกว่า 2 รุ่นขึ้นไป และมินิโปรแกรมเมอร์จะนิยมใช้กับ PLC ขนาดเล็ก ส่วนขนาดใหญ่จะนิยมใช้คอมพิวเตอร์ทำการเขียนโปรแกรมแทน โดยใช้โปรแกรมสำหรับเขียน ถึงอย่างไรก็ตามถ้าต้องการเปลี่ยนโปรแกรมเพียงเล็กๆน้อยๆก็นิยมใช้มินิโปรแกรมเมอร์มากกว่า
มินิโปรแกรมเมอร์บางชนิด มีการ์ดหน่วยความจำที่สามารถถอดออกได้ ซึ่งสามารถเก็บโปรแกรมที่สมบูรณ์แล้วนำไปโหลดให้กับ PLC เมื่อใดก็ได้ ซึ่งจะเป็นประโยชน์กับงานประยุกต์ อาทิเช่น โปรแกรมการทำงานของเครื่องจักรรุ่นเดียวกันหลายๆตัว เมื่อเขียนควบคุมเพียงตัวเดียว ก็จะนำโปรแกรมที่เขียนเสร็จไปโหลดให้กับตัวอื่นๆก็ได้


รูปที่ 4.24 แสดงการ์ดของหน่วยความจำที่ถอดออกได้ สำหรับมินิโปรแกรม

4.6.2 คอมพิวเตอร์ส่วนบุคคล (Personal Computer)
คอมพิวเตอร์ทั่วๆไปที่เราใช้ในชีวิตประจำวัน สามารถที่จะนำมาใช้ในการเขียนโปรแกรมควบคุมให้ PLC ได้ เนื่องจากคอมพิวเตอร์ส่วนบุคคลได้ออกสถาปัตยกรรมให้ใช้กับงานทั่วๆไปและมีระบบปฏิบัติการที่มาตรฐาน (Windows , Linux ) เป็นต้น ทำให้บริษัทผู้ผลิต PLC และผู้ผลิตอิสระอื่นๆได้คิดค้นซอฟต์แวร์ ที่ทำการเขียนโปรแกรมแลดเดอร์ ทำการแก้ไขโปรแกรม  ทำเอกสาร และมอนิเตอร์แบบเรียลไทม์ (Real Time)โปรแกรมควบคุม เนื่องจากว่ามีจอขนาดใหญ่กว่ามินิโปรแกรม ทำให้สามารถแสดงรั้งของแลดเดอร์ได้หลายๆรั้งระหว่างทำการเขียนโปรแกรมควบคุม หรือ ทำการมอนิเตอร์โปรแกรม (ดูรูปที่ 4.25)


รูปที่ 4.25 วงจรแลดเดอร์ที่แสดงโดยคอมพิวเตอร์ส่วนบุคคล

คอมพิวเตอร์ส่วนบุคคลไม่ได้เป็นอุปกรณ์ที่เป็นทางเลือกที่ดีที่สุด ถึงแม้ว่าจะมีความสามารถในการเขียนโปรแกรม เพราะเนื่องจากว่าคอมพิวเตอร์ส่วนบุคคลจะอยู่กับที่ ส่วนตัว PLC มักจะอยู่ในแพล้นต่างๆ จึงไม่สะดวกเลยที่จะยกนำคอมพิวเตอร์ไปเขียนโปรแกรมให้กับ PLC ต่างๆ  แต่ปัจจุบันก็มีพวกแลปท็อป เครื่องคอมพิวเตอร์แบบพกพา จึงลดปัญหาที่เกิดจากความยืดหยุ่นในการเขียนโปรแกรมได้บ้าง
คอมพิวเตอร์ส่วนบุคคล เหมาะสำหรับการเขียนโปรแกรมที่เป็นลักษณะเครือข่าย(ดูรูปที่ 4.26) และเก็บข้อมูลของกระบวนการต่างๆเข้าสู่ระบบจัดเก็บฐานข้อมูล (ดูรูปที่ 4.27) โดยทั่วๆไปแล้วคอมพิวเตอร์ส่วนบุคคลจะติดต่อกับ PLC ด้วยพอร์ต RS 232C ซึ่งเป็นซีเรียลพอร์ตของคอมพิวเตอร์ นั่นเอง


รูปที่ 4.26 แสดงคอมพิวเตอร์ส่วนบุคคลต่อกับระบบเครือข่ายของ PLC




รูปที่ 4.27 แสดงคอมพิวเตอร์ส่วนบุคคลเป็นตัวเชื่อมระหว่างระบบ PLC กับระบบเมนเฟรม












ความคิดเห็น

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

บทที่ 1 พื้นฐาน PLC

บทที่ 9 คำสั่งของ STEP 7

บทที่ 7 พื้นฐานในการเขียนโปรแกรม