Dynamic Counter Presets in OpenPLC Using MOVE Function Block

ค่าที่ตั้งไว้ล่วงหน้าของตัวนับแบบไดนามิกใน OpenPLC โดยใช้บล็อกฟังก์ชัน MOVE

การเขียนโปรแกรม OpenPLC กำลังก้าวข้ามค่าที่ตั้งไว้ตายตัวของตัวนับ บทความนี้จะอธิบายว่า Function Block MOVE ช่วยให้กำหนดค่าตัวนับแบบไดนามิกโดยใช้ปุ่มกดได้อย่า...

เมื่อ ลอจิกของตัวนับเริ่มทำงานเสมือนข้อมูล

บทนำ

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

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

ค่าพรีเซ็ตตัวนับแบบคงที่ภายในบล็อกฟังก์ชันลอจิกแลดเดอร์

จากค่าพรีเซ็ตแบบฮาร์ดโค้ดสู่การย้ายข้อมูลแบบเรียลไทม์

ตัวนับ CTU แบบดั้งเดิมจะฝังค่าเริ่มต้นพรีเซ็ตไว้โดยตรงภายในบล็อกฟังก์ชัน เมื่อคอมไพล์แล้ว ค่าดังกล่าวจะคงที่ เว้นแต่วิศวกรจะแก้ไขและโหลดโปรแกรมใหม่ ทำให้เกิดข้อจำกัดในสภาพแวดล้อมที่มีการเปลี่ยนแปลงผลิตภัณฑ์บ่อยครั้ง

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

การย้ายข้อมูลในรีจิสเตอร์ PLC ที่ถูกกระตุ้นโดยเหตุการณ์สัญญาณภายนอก

MOVE เปลี่ยนสถาปัตยกรรมของตัวนับอย่างไร

ใน OpenPLC นั้น MOVE ทำงานเสมือนคำสั่งถ่ายโอนข้อมูลแบบมีการควบคุมระหว่างตัวแปร ปุ่มกดสามารถเปิดใช้งานอินพุต Enable ทำให้ค่าจำนวนเต็มหนึ่งค่าสามารถเขียนทับอีกค่าหนึ่งได้ ทำให้เกิดสะพานเชื่อมแบบเรียลไทม์ระหว่างการทำงานของผู้ปฏิบัติงานกับการกำหนดค่าตัวนับ

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

บล็อกฟังก์ชัน MOVE ของ OpenPLC ซึ่งอยู่ในไลบรารีคำสั่งคณิตศาสตร์

การสร้างพฤติกรรมของตัวนับแบบปรับเปลี่ยนได้ในการใช้งานจริง

การเชื่อมโยงอินพุต ลอจิก MOVE และบล็อก CTU

การใช้งานทั่วไปจะใช้อินพุตปุ่มกดเพื่อกระตุ้นการทำงานของ MOVE แท็กต้นทางเก็บค่าพรีเซ็ตที่ต้องการ ขณะที่ปลายทางจะส่งค่าไปยังอินพุต CTU PV ช่วยให้ผู้ปฏิบัติงานกำหนดค่าเกณฑ์การนับใหม่ได้ขณะระบบทำงาน

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

แผนภาพแลดเดอร์แสดงบล็อก MOVE ที่เชื่อมต่อกับทริกเกอร์ปุ่มกด

ความยืดหยุ่นขณะทำงานในระบบควบคุมจริง

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

ทั้งในการจำลองและบนฮาร์ดแวร์จริง แนวทางนี้แสดงให้เห็นถึงการทำงานที่คาดการณ์ได้และกำหนดผลลัพธ์ได้แน่นอน ตัวนับตอบสนองทันทีต่อค่าพรีเซ็ตที่อัปเดต

ผลลัพธ์จากการจำลองการอัปเดตค่าพรีเซ็ตของตัวนับแบบไดนามิกด้วยฟังก์ชัน MOVE

เหตุใดการจัดการข้อมูลจึงกำลังเปลี่ยนโฉมลอจิกแบบแลดเดอร์

การเขียนโปรแกรม PLC สมัยใหม่ให้ความสำคัญกับลอจิกและข้อมูลในฐานะเลเยอร์ที่แยกจากกันมากขึ้น การแยกส่วนนี้ช่วยให้บล็อกฟังก์ชันอย่าง MOVE นิยามพฤติกรรมของระบบใหม่ได้โดยไม่ต้องเขียนลำดับการควบคุมใหม่

แพลตฟอร์มต่าง ๆ เช่น OpenPLC สะท้อนถึงการเปลี่ยนแปลงในอุตสาหกรรมในวงกว้างไปสู่ระบบอัตโนมัติที่กำหนดด้วยซอฟต์แวร์ แนวคิดที่คล้ายกันนี้ปรากฏในระบบนิเวศขนาดใหญ่ขึ้นด้วย ซึ่งรวมถึง ระบบ PLC และ PAC

เมื่อระบบขยายขนาด แนวทางนี้ช่วยลดภาระงานด้านวิศวกรรมและเพิ่มความคล่องตัวในการกำหนดค่า แนวทางนี้ยังสอดคล้องกับกลยุทธ์ระบบอัตโนมัติแบบโมดูลที่พบในสถาปัตยกรรมแบบกระจาย

ทิศทางอุตสาหกรรม: มุ่งสู่เลเยอร์ควบคุมที่ปรับโครงสร้างใหม่ได้

ระบบอัตโนมัติในอุตสาหกรรมกำลังมุ่งไปสู่ลอจิกควบคุมที่ปรับโครงสร้างใหม่ได้อย่างต่อเนื่อง แทนที่จะใช้แผนภาพแลดเดอร์แบบคงที่ ปัจจุบันวิศวกรออกแบบระบบที่ปรับตัวได้ผ่านการอัปเดตข้อมูล

วิวัฒนาการนี้ช่วยให้การเปลี่ยนรุ่นการผลิตทำได้รวดเร็วขึ้น และทำให้การทำงานของเครื่องจักรตอบสนองได้ดีขึ้น นอกจากนี้ยังช่วยเตรียมระบบนิเวศของ PLC ให้พร้อมสำหรับการผสานรวมกับแพลตฟอร์มจัดการลำดับขั้นในระดับสูงขึ้น

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

มุมมองของผู้เขียน

บล็อกฟังก์ชัน MOVE อาจดูเรียบง่าย แต่สะท้อนถึงการเปลี่ยนแปลงเชิงโครงสร้างในแนวคิดเกี่ยวกับ PLC ด้วยการแยกการเคลื่อนย้ายข้อมูลออกจากลอจิกควบคุม วิศวกรจึงมีวิธีออกแบบระบบอัตโนมัติที่เป็นโมดูลมากขึ้น

แนวทางนี้ไม่ได้เข้ามาแทนที่ตัวนับแบบดั้งเดิม ในทางกลับกัน แนวทางนี้ช่วยขยายระบบไปสู่รูปแบบการทำงานที่ยืดหยุ่นมากขึ้น ซึ่งเหมาะกับความแปรผันของการผลิตสมัยใหม่

ในมุมมองด้านวิศวกรรมระบบ นี่คือจุดที่สภาพแวดล้อม PLC แบบโลว์โค้ดเริ่มมีลักษณะคล้ายแพลตฟอร์มซอฟต์แวร์อุตสาหกรรม มากกว่าจะเป็นเพียงตัวควบคุมแบบตายตัว

Ethan Caldwell นักวิเคราะห์อุตสาหกรรม | มีประสบการณ์ 14 ปีด้านระบบอัตโนมัติในอุตสาหกรรมและสถาปัตยกรรมควบคุม อดีตวิศวกรโครงการที่ดูแลการติดตั้งระบบ Siemens S7 และ Emerson DeltaV โดยมุ่งเน้นกลยุทธ์การปรับปรุงระบบ PLC ให้ทันสมัย

ค่าที่ตั้งไว้ล่วงหน้าของตัวนับแบบไดนามิกใน OpenPLC โดยใช้บล็อกฟังก์ชัน MOVE

การเขียนโปรแกรม OpenPLC กำลังก้าวข้ามค่าที่ตั้งไว้ตายตัวของตัวนับ บทความนี้จะอธิบายว่า Function Block MOVE ช่วยให้กำหนดค่าตัวนับแบบไดนามิกโดยใช้ปุ่มกดได้อย่างไร พร้อมปรับเปลี่ยนแนวทางที่ลอจิกแบบแลด...

เมื่อ ลอจิกของตัวนับเริ่มทำงานเสมือนข้อมูล

บทนำ

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

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

ค่าพรีเซ็ตตัวนับแบบคงที่ภายในบล็อกฟังก์ชันลอจิกแลดเดอร์

จากค่าพรีเซ็ตแบบฮาร์ดโค้ดสู่การย้ายข้อมูลแบบเรียลไทม์

ตัวนับ CTU แบบดั้งเดิมจะฝังค่าเริ่มต้นพรีเซ็ตไว้โดยตรงภายในบล็อกฟังก์ชัน เมื่อคอมไพล์แล้ว ค่าดังกล่าวจะคงที่ เว้นแต่วิศวกรจะแก้ไขและโหลดโปรแกรมใหม่ ทำให้เกิดข้อจำกัดในสภาพแวดล้อมที่มีการเปลี่ยนแปลงผลิตภัณฑ์บ่อยครั้ง

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

การย้ายข้อมูลในรีจิสเตอร์ PLC ที่ถูกกระตุ้นโดยเหตุการณ์สัญญาณภายนอก

MOVE เปลี่ยนสถาปัตยกรรมของตัวนับอย่างไร

ใน OpenPLC นั้น MOVE ทำงานเสมือนคำสั่งถ่ายโอนข้อมูลแบบมีการควบคุมระหว่างตัวแปร ปุ่มกดสามารถเปิดใช้งานอินพุต Enable ทำให้ค่าจำนวนเต็มหนึ่งค่าสามารถเขียนทับอีกค่าหนึ่งได้ ทำให้เกิดสะพานเชื่อมแบบเรียลไทม์ระหว่างการทำงานของผู้ปฏิบัติงานกับการกำหนดค่าตัวนับ

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

บล็อกฟังก์ชัน MOVE ของ OpenPLC ซึ่งอยู่ในไลบรารีคำสั่งคณิตศาสตร์

การสร้างพฤติกรรมของตัวนับแบบปรับเปลี่ยนได้ในการใช้งานจริง

การเชื่อมโยงอินพุต ลอจิก MOVE และบล็อก CTU

การใช้งานทั่วไปจะใช้อินพุตปุ่มกดเพื่อกระตุ้นการทำงานของ MOVE แท็กต้นทางเก็บค่าพรีเซ็ตที่ต้องการ ขณะที่ปลายทางจะส่งค่าไปยังอินพุต CTU PV ช่วยให้ผู้ปฏิบัติงานกำหนดค่าเกณฑ์การนับใหม่ได้ขณะระบบทำงาน

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

แผนภาพแลดเดอร์แสดงบล็อก MOVE ที่เชื่อมต่อกับทริกเกอร์ปุ่มกด

ความยืดหยุ่นขณะทำงานในระบบควบคุมจริง

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

ทั้งในการจำลองและบนฮาร์ดแวร์จริง แนวทางนี้แสดงให้เห็นถึงการทำงานที่คาดการณ์ได้และกำหนดผลลัพธ์ได้แน่นอน ตัวนับตอบสนองทันทีต่อค่าพรีเซ็ตที่อัปเดต

ผลลัพธ์จากการจำลองการอัปเดตค่าพรีเซ็ตของตัวนับแบบไดนามิกด้วยฟังก์ชัน MOVE

เหตุใดการจัดการข้อมูลจึงกำลังเปลี่ยนโฉมลอจิกแบบแลดเดอร์

การเขียนโปรแกรม PLC สมัยใหม่ให้ความสำคัญกับลอจิกและข้อมูลในฐานะเลเยอร์ที่แยกจากกันมากขึ้น การแยกส่วนนี้ช่วยให้บล็อกฟังก์ชันอย่าง MOVE นิยามพฤติกรรมของระบบใหม่ได้โดยไม่ต้องเขียนลำดับการควบคุมใหม่

แพลตฟอร์มต่าง ๆ เช่น OpenPLC สะท้อนถึงการเปลี่ยนแปลงในอุตสาหกรรมในวงกว้างไปสู่ระบบอัตโนมัติที่กำหนดด้วยซอฟต์แวร์ แนวคิดที่คล้ายกันนี้ปรากฏในระบบนิเวศขนาดใหญ่ขึ้นด้วย ซึ่งรวมถึง ระบบ PLC และ PAC

เมื่อระบบขยายขนาด แนวทางนี้ช่วยลดภาระงานด้านวิศวกรรมและเพิ่มความคล่องตัวในการกำหนดค่า แนวทางนี้ยังสอดคล้องกับกลยุทธ์ระบบอัตโนมัติแบบโมดูลที่พบในสถาปัตยกรรมแบบกระจาย

ทิศทางอุตสาหกรรม: มุ่งสู่เลเยอร์ควบคุมที่ปรับโครงสร้างใหม่ได้

ระบบอัตโนมัติในอุตสาหกรรมกำลังมุ่งไปสู่ลอจิกควบคุมที่ปรับโครงสร้างใหม่ได้อย่างต่อเนื่อง แทนที่จะใช้แผนภาพแลดเดอร์แบบคงที่ ปัจจุบันวิศวกรออกแบบระบบที่ปรับตัวได้ผ่านการอัปเดตข้อมูล

วิวัฒนาการนี้ช่วยให้การเปลี่ยนรุ่นการผลิตทำได้รวดเร็วขึ้น และทำให้การทำงานของเครื่องจักรตอบสนองได้ดีขึ้น นอกจากนี้ยังช่วยเตรียมระบบนิเวศของ PLC ให้พร้อมสำหรับการผสานรวมกับแพลตฟอร์มจัดการลำดับขั้นในระดับสูงขึ้น

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

มุมมองของผู้เขียน

บล็อกฟังก์ชัน MOVE อาจดูเรียบง่าย แต่สะท้อนถึงการเปลี่ยนแปลงเชิงโครงสร้างในแนวคิดเกี่ยวกับ PLC ด้วยการแยกการเคลื่อนย้ายข้อมูลออกจากลอจิกควบคุม วิศวกรจึงมีวิธีออกแบบระบบอัตโนมัติที่เป็นโมดูลมากขึ้น

แนวทางนี้ไม่ได้เข้ามาแทนที่ตัวนับแบบดั้งเดิม ในทางกลับกัน แนวทางนี้ช่วยขยายระบบไปสู่รูปแบบการทำงานที่ยืดหยุ่นมากขึ้น ซึ่งเหมาะกับความแปรผันของการผลิตสมัยใหม่

ในมุมมองด้านวิศวกรรมระบบ นี่คือจุดที่สภาพแวดล้อม PLC แบบโลว์โค้ดเริ่มมีลักษณะคล้ายแพลตฟอร์มซอฟต์แวร์อุตสาหกรรม มากกว่าจะเป็นเพียงตัวควบคุมแบบตายตัว

Ethan Caldwell นักวิเคราะห์อุตสาหกรรม | มีประสบการณ์ 14 ปีด้านระบบอัตโนมัติในอุตสาหกรรมและสถาปัตยกรรมควบคุม อดีตวิศวกรโครงการที่ดูแลการติดตั้งระบบ Siemens S7 และ Emerson DeltaV โดยมุ่งเน้นกลยุทธ์การปรับปรุงระบบ PLC ให้ทันสมัย

แสดงความคิดเห็น

โปรดทราบว่าความคิดเห็นจะต้องได้รับการอนุมัติก่อนที่จะได้รับการเผยแพร่