Scan
Time
ค่า Scan Time
ถือว่าเป็นคุณสมบัติที่สำคัญของ
โปรแกรเมเบิลคอนโทรลเลอร์
เนื่องจากถ้าสัญญาณอินพุท
ที่ป้อนให้กับ PLC/PC
มีการเปลี่ยนแปลงเร็วกว่าค่าเวลา
Scan Time จะทำให้ PLC/PCไม่สามารถรับรู้
และตอบสนองการเปลี่ยนแปลงของสัญญาณนั้นได้
ดังนั้นจะต้องเลือกใช้ PLC/PC
ที่มีค่า Scan Time
เร็วกว่าการเปลี่ยนแปลงของสัญญาณอินพุท
ที่ป้อนให้กับโปรแกรมเมเบิลคอนโทรลเลอร์
การทำงานของหน่วยประมวลผล
1 รอบ การสแกน
(ตามทฤษฎี)
|
การทำงานของหน่วยประมวลผล
1 รอบ การสแกน (ในการประยุกต์ใช้งาน)
|
เมื่อมีการเริ่มต้นจ่ายกำลังไฟฟ้าให้กับ
PLC/PC โปรเซสเซอร์จะเริ่มทำงานโดยทำการประมวลผลโปรแกรมที่ทำหน้าที่จัดการระบบก่อน
หลังจากนั้น
ถ้าหน่วยประมวลผลอยู่ในโหมด
"RUN" โปรเซสเซอร์ก็จะทำหน้าที่เข้าสู่การสแกนโดยการสแกนจะมี
3 ขั้นตอน คือ
ขั้นตอนที่
1
ทำการอ่านสถานะของอุปกรณ์อินพุทที่เชื่อมต่ออยู่กับอินพุทโมดูล
นำข้อมูลที่อ่านได้ไปเก็บไว้ที่
หน่วยความจำที่ทำหน้าที่เก็บสถานะอินพุท
ซึ่งภายใน PLC S5 เรียกว่า
PII (Process Image Input)
ขั้นตอนที่
2
โปรเซสเซอร์จะทำการประมวลผลโปรแกรมที่ผู้ใช้สร้างขึ้น
โดยใช้ข้อมูลภายใน PII
และ PIQ
ประกอบการประมวลผล
และในระหว่างการประมวลผล
ถ้ามีผลลัพธ์จากการประมวลผลทำให้
อุปกรณ์เอ้าท์พุททำงาน
โปรเซสเซอร์จะยังไม่ส่งข้อมูลที่ประมวลผลได้ออกไปที่เอ้าท์พุทโมดูล
แต่จะเก็บข้อมูลเหล่านั้นไว้ที่หน่วยความจำ
ที่ใช้ในการเก็บสถานะของเอ้าท์พุทก่อน
ซึ่งภายใน PLC S5 เรียกว่า
PIQ (Process Image Output)
ขั้นตอนที่
3
รอจนกระทั่งโปรเซสเซอร์ประมวลผลโปรแกรมที่ผู้ใช้สร้างขึ้นมาจนจบโปรแกรม
หลังจากนั้น
โปรเซสเซอร์จะทำการส่งข้อมูลที่เก็บอยู่ใน
PIQ ไปยังเอ้าท์พุทโมดูล
หลังจากนั้นโปรเซสเซอร์
ก็จะย้อนกลับไปทำงานในขั้นตอนที่
1 ของการสแกน
เพื่อทำการสแกนรอบต่อไป
แต่ในการประยุกต์ใช้การสแกนภายในการทำงานของ
PLC/PC ในปัจจุบัน
จะมีส่วนที่ทำหน้าที่
ตรวจวัดคาบเวลาที่ใช้ในการสแกน
1 รอบ ด้วย
เพื่อทำให้มั่นใจได้ว่า
PLC/PC ที่ใช้งาน
มีประสิทธิภาพ
ตามที่กำหนดไว้
ตัวอย่างเช่น โปรแกรมเมเบิลคอนโทรลเลอร์
SIMATIC S5 จะใช้เวลาในการสแกน 1
รอบ ไม่เกิน 500 ms. ถ้าโปรเซสเซอร์ตรวจพบว่าค่าเวลา
Scan Time เกินกว่านี้
ไมโครโปรเซส เซอร์จะหยุดทำงาน
ทันที
คาบเวลาการตอบสนองเมื่อมีการเปลี่ยนแปลงสถานะของอินพุท
ที่มีผลต่อสถานะของเอ้าท์พุท
ค่าเวลาที่ใช้ในการตอบสนองต่อการเปลี่ยนแปลงสถานะของอินพุท
แล้วส่งผลให้สถานะของ
เอ้าท์พุทเปลี่ยนแปลง
นั้น
จะมีค่าเท่ากับผลรวม
ของค่าเวลาหน่วง (delay time)
ที่อินพุทโมดูล และ
ค่าเวลาที่ใช้ในการสแกนโปรแกรม
จะสังเกตเห็นว่า
ถ้ามีการเปลี่ยนแปลงสถานะของอินพุท
ในระหว่างช่วงกลางไซเคิลของการสแกน
(เช่นในระหว่างขั้นตอนที่
2 หรือขั้นตอนที่ 3)
จะทำให้สถานะของอินพุท
ไม่มีผลต่อสถานะของเอ้าท์พุท
โดยโปรแกรมจะเริ่มพิจารณาสถานะของอินพุทนั้น
ในรอบการสแกนถัดไป
เพื่อส่งผลไปควบคุมสถานะของ
เอ้าท์พุท
|