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


เขียนและเรียบเรียงโดย อ.นัครินทร์  คฤหาสสุวรรณ์

7.1 ขั้นตอนในการสร้างโปรแกรมควบคุมการทำงาน
โปรแกรมควบคุมการทำงานเป็นส่วนที่สำคัญยิ่งในระบบควบคุมอัตโนมัติ ดังนั้นจึงมีความจำเป็นที่ต้องออกแบบให้เป็นระบบ มีโครงสร้างของโปรแกรมที่ดี ทำความเข้าใจได้ง่าย และมีเอกสารอ้างอิงตลอดเวลา ซี่งจะทำให้ระบบควบคุมอัตโนมัติ มีประสิทธิภาพในการทำงานสูงที่สุด ไม่มีความผิดพลาดในการทำงาน แก้ปัญหาที่เกิดขึ้นภายหลังได้อย่างรวดเร็ว และเสียค่าใช้จ่ายในการบำรุงรักษาน้อย
ขั้นตอนในการสร้างโปรแกรมควบคุมการทำงาน ประกอบด้วยขั้นตอนต่างๆที่สำคัญ 5 ขั้นตอนดังต่อไปนี้
ขั้นตอนที่ 1 Specification
เป็นขั้นตอนในการรวบรวมข้อมูล รายละเอียดและข้อกำหนดต่างๆของงานที่ต้องการจะควบคุม โดยเฉพาะรายละเอียดเกี่ยวกับหน้าที่ และเงื่อนไขในการทำงานต่างๆของระบบควบคุม ซึ่งในขั้นตอนนี้เราจะได้ผลลัพธ์ออกมาดังนี้
1.รายละเอียดต่างๆของงานที่ควบคุม
2.โครงสร้างของเครื่องจักรและอุปกรณ์ต่างๆ
3.โครงสร้างของระบบควบคุมและกระบวนการผลิต
ขั้นตอนที่ 2 Design
เป็นขั้นตอนที่นำข้อมูลและรายละเอียด และเงื่อนไขในการทำงานต่างๆมาจัดการให้อยู่ในรูปแบบที่เหมาะสม และง่ายต่อการทำความเข้าใจ หรือ ในการเขียนโปรแกรม ซึ่งส่วนใหญ่จะอยู่ในรูปของแผนภาพ หรือ ไดอะแกรม เช่น ฟังก์ชั่นชาร์ท และไดอะแกรมแสดงการทำงาน (Displacement Step Diagram) เป็นต้น
ขั้นตอนที่ 3 Realisation
เป็นขั้นตอนทำการแปลงรูปของแผนภาพ หรือ ไดอะแกรม ที่เราได้สร้างในขั้นตอนที่ 2 ให้มาเป็นภาษาต่างๆที่เหมาะสมเช่น ภาษาแลดเดอร์ ภาษาบูลีน เป็นต้น และทำการทดสอบโปรแกรมควบคุมการทำงานต่างๆ ที่สร้างข้นมาทุกส่วน และส่งถ่ายไปให้ PLC แล้วทำการตรวจสอบข้อผิดพลาด แก้ไขข้อผิดพลาด ก่อนที่จะนำไปใช้งานจริง
ขั้นตอนที่ 4 Commissioning
ในขั้นตอนนี้จะเป็นการทดสอบกับระบบจริง โดยเมื่อทำการทดสอบกับงานจริง ควรจะทำการทดสอบทีละคำสั่ง (Step by Step) ซึ่งจะทำให้ข้อผิดพลาดภายในระบบและสามารถทำการแก้ไขได้ทันที
ขั้นตอนที่ 5 Documentation
เป็นส่วนที่จัดทำเอกสารที่ใช้ในการทำงานทั้งหมด ซึ่งมีความจำเป็นมากสำหรับในการซ่อมบำรุง และในกรณีที่จะต้องปรับปรุงระบบควบคุม ซึ่งเอกสารที่จำเป็นประกอบด้วย
1.รายละเอียดของปัญหา หรืองานที่จะต้องควบคุม
2.แบบร่างแสดงการทำงาน และภาพร่างแสดงตำแหน่งของเครื่องจักร และอุปกรณ์พวกเซ็นเซอร์ต่างๆ ภายในกระบวนการทำงาน
3.ไดอะแกรมสำหรับวงจรต่างๆทั้งวงจรควบคุมและวงจรภาคกำลัง
4.ฟังก์ชั่นชาร์ท และไดอะแกรมแสดงการทำงาน
5.รายการแสดงตำแหน่งของอุปกรณ์อินพุตและเอ้าท์พุตของ PLC
6.โปรแกรมควบคุมการทำงาน ซึ่งอาจอยู่ในรูปภาษาแลดเดอร์
7.เอกสารเพิ่มเติมต่างๆ เช่น รายการข้อมูลทางเทคนิค (DataSheet) เป็นต้น
7.2 ภาษาที่ใช้ในการเขียนโปรแกรม ตามมาตรฐาน IEC 1131-3
ภาษาที่ใช้ในการเขียนโปรแกรมตามมาตรฐาน IEC 1131-3 กำหนดไว้ 5 ภาษา คือ LD (Ladder diagram), FBD (Function block diagram), IL(Instruction list), ST(Structure text) และ SFC(Sequential function chart) ถึงแม้ว่าลักษณะโครงสร้างของ แต่ละภาษาจะมีความแตกต่างกัน แต่ในแต่ละภาษาจะมีส่วนประกอบต่างๆ ในโปรแกรมมีลักษณะเดียวกันตามมาตรฐาน IEC 1131-3 เช่น ลักษณะการประกาศตัวแปร ฟังก์ชั่น และฟังก์ชันบล็อก เป็นต้น แต่อย่างไรก็ตาม เราสามารถที่จะเขียนโปรแกรมโดยนำรูปแบบการเขียนในภาษาต่างๆ มารวมกันได้
1. LD (Ladder diagram)

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

รูปที่ 7.1 แสดงตัวอย่างการเขียนโปรแกรมด้วยภาษาแลดเดอร์

2. FBD (Function block diagram)
เป็นภาษาที่แสดงฟังก์ชั่น การทำงานในรูปของกราฟิคเช่นเดียวกัน และเชื่อมต่อกันเป็นโครงข่าย โดยการเขียนโปรแกรมในรูปของ ฟังก์ชั่นบล็อคไดอะแกรม จะมีพื้นฐานมาจาก ลอจิกไดอะแกรม

รูปที่ 7.2 แสดงตัวอย่างการเขียนโปรแกรมด้วยภาษา FBD
3. IL (Instruction list)
IL จะเป็นภาษาที่เขียนอยู่ในรูปของข้อความ และมีลักษณะคล้ายกับภาษา แอสเซมบลี้ (Assembly) และภาษาเครื่อง (Machine code) ซึ่งภายในหนึ่งคำสั่งควบคุมจะประกอบด้วย ส่วนปฏิบัติการ (Operator) และส่วนที่ถูกดำเนินการ (Operand)

รูปที่ 7.3 แสดงตัวอย่างการเขียนโปรแกรมด้วยภาษา IL

4. ST (Structure text)
ST จะเป็นภาษาในระดับสูง โดยมีพื้นฐานมาจากภาษา Pascal ซึ่งจะประกอบไปด้วย นิพจน์ และคำสั่ง โดยคำสั่งทั่วไปจะอยู่ในรูปของคำสั่งเกี่ยวกับการเลือกทำงาน เช่น IF……..THEN……..ELSE เป็นต้น คำสั่งเกี่ยวกับการทำงานซ้ำ เช่น FOR , WHILE  เป็นต้น

รูปที่ 7.4 แสดงตัวอย่างการเขียนโปรแกรมด้วยภาษา ST
5. SFC (Sequential function chart)
SFC จะเป็นภาษาที่รองรับการเขียนโปรแกรมที่มีโครงสร้างการทำงานเป็นแบบซีเควนซ์ ซึ่งส่วนประกอบของ SFC จะประกอบด้วย Step (คำสั่งในการปฏิบัติการในแต่ละขั้นตอน) และ Transition (เงื่อนไขที่กำหนดให้กระทำคำสั่งในแต่ละ Step) นอกจากนี้ยังสามารถกำหนดลักษณะการทำงาน เช่น Alternative step sequence และ Parallel step sequence เป็นต้น

รูปที่ 7.5 แสดงตัวอย่างการเขียนโปรแกรมด้วยภาษา SFC
7.3 ภาษาที่ใช้เขียนโปรแกรมสำหรับ Simatic Step 7
การเขียนโปรแกรมควบคุมการทำงานโดยใช้ซอฟต์แวร์ Simatic Step 7 ของบริษัท   ซีเมนส์ สามารถเขียนโปรแกรมได้ 5 ภาษาคือ

1.ภาษา LAD (Ladder diagram) จะมีรูปแบบเหมือนภาษา LD ตามมาตรฐานของ IEC 1131-3
2.ภาษา FBD (Function Block Diagram) จะมีรูปแบบเหมือนภาษา FBD ตามมาตรฐานของ IEC 1131-3
3.ภาษา STL (Statement List) จะมีรูปแบบเหมือนภาษา IL ตามมาตรฐานของ IEC 1131-3
4.ภาษา SFC (Sequence Function Chart) โดยจะต้องลงโปรแกรม Step 7- Graph ก่อน
5.ภาษา State Diagram โดยจะต้องลงโปรแกรม Step 7 – Higraph ก่อน


รูปที่ 7.7 แสดงตัวอย่างโปรแกรม Simatic Step 7

7.4 การกำหนดตำแหน่งของอินพุต เอ้าท์พุต และหน่วยความจำ
ตารางที่ 7.1 แสดงตัวอักษรที่ใช้ในการกำหนดตำแหน่งของอินพุต เอ้าท์พุต และหน่วยความจำ
ในหัวข้อนี้จะกล่าวถึงการกำหนดตำแหน่ง ของโมดูลอินพุตเอ้าท์พุต และหน่วยความจำภายในอุปกรณ์ควบคุม ซึ่งโครงสร้างการกำหนดตำแหน่งอินพุตโมดูล และ       เอ้าท์พุตโมดูลมีข้อแตกต่างกัน คือ การกำหนดแอดเดรสของดิจิตอลอินพุต เอ้าท์พุตโมดูล จะมีลักษณะเป็นบิต ไบท์ เวิร์ด และดับเบิ้ลเวิร์ด ได้ โดยที่ดิจิตอลอินพุต / เอ้าท์พุต 1 จุด จะใช้ตำแหน่ง 1 บิต ส่วนอานาล็อกโมดูล จะกำหนดแอดเดรสเป็น เวิร์ด ได้เท่านั้น โดยที่ PLC แต่ละรุ่นที่ผลิตขึ้นมาจะมีความแตกต่างกันในเรื่องของการ กำหนดแอดเดรส แต่ส่วนใหญ่จะพิจารณาถึงตำแหน่งของ Rack และ Cards ที่ใช้ในการเชี่อมต่ออุปกรณ์อินพุตและอุปกรณ์เอ้าท์พุต
ตามมาตรฐาน การกำหนดตำแหน่งของอินพุตและเอ้าท์พุตของหน่วยความจำ เราสามารถที่จะเข้าถึงข้อมูลที่มีขนาดเป็นบิท ไบท์ เวิร์ด และดับเบิ้ลเวิร์ด ได้โดยการกำหนดตัวอักษรเพิ่มเติมจากตัวอักษรตัวแรก ซี่งตามมาตรฐาน IEC 1131 เราจะใช้ตัวอักษรเพื่อกำหนดขนาดของข้อมูลดังนี้

ตารางที่ 7.2 แสดงตัวอักษรที่ใช้ในการกำหนดตำแหน่ง และขนาดของอินพุต       เอ้าท์พุต และหน่วยความจำ


หลังจากที่เรากำหนดตัวอักษรเพื่อใช้ในการกำหนดขนาดแอดเดรสของข้อที่เราต้องการเข้าถึงแล้ว ต่อไปเราก็ต้องทำการกำหนดตัวเลขที่ใช้ในการระบุตำแหน่งของข้อมูล ที่เราต้องการ ซึ่ง PLC หลายๆยี่ห้อจะมีลักษณะกำหนดที่แตกต่างกัน ซึ่งในที่นี้จะกล่าวถึงการกำหนด ตัวอักษรเพื่อใช้ระบุชนิดและขนาดของข้อมูล และการกำหนดตัวเลขเพื่อใช้ในการระบุตำแหน่งของข้อมูล
ตารางที่ 7.3 การกำหนดตัวอักษรให้กับ อินพุต เอ้าท์พุต และหน่วยความจำ ของ PLC ยี่ห้อ Siemens Simatic Step 7

ในการกำหนดตำแหน่งของอินพุต เอ้าท์พุต และหน่วยความจำแบบ บิต ของ PLC – Simatic S7 สามารถที่จะใช้ตัวอักษร I,Q ,และ M ได้เลย แต่ถ้าต้องการที่จะเข้าถึงตำแหน่งของอินพุต เอ้าท์พุต และหน่วยความจำ แบบไบต์ แบบเวิร์ด และดับเบิ้ลเวิร์ด จะต้องระบุตัวอักษรเพิ่มเติมเข้าไป คือ
B เป็นการกำหนดการเข้าถึงข้อมูลขนาด ไบท์
W เป็นการกำหนดการเข้าถึงข้อมูลขนาด เวิร์ด
D เป็นการกำหนดการเข้าถึงข้อมูลขนาด ดับเบิ้ลเวิร์ด
ตัวอย่างการกำหนดตำแหน่งอินพุต เอ้าท์พุต และหน่วยความจำ
I 1.7             ตำแหน่งของอินพุต                ไบท์ที่ 1     บิตที่ 7
Q 5.0            ตำแหน่งของเอ้าท์พุต              ไบท์ที่ 5     บิตที่ 0
M2.5             ตำแหน่งของหน่วยความจำ       ไบท์ที่ 1     บิตที่ 7
IB1               ตำแหน่งของอินพุต                ไบท์ที่ 1    
QB 5             ตำแหน่งของเอ้าท์พุต              ไบท์ที่ 5
MD 2            ตำแหน่งของหน่วยความจำ       ดับเบิ้ลเวิร์ดที่ 2
PB 128          ตำแหน่งของอินพุต/เอ้าท์พุต      ไบท์ที่ 128
IW0              ตำแหน่งของอินพุต                เวิร์ดที่ 0
QW14           ตำแหน่งของเอ้าท์พุต              เวิร์ดที่ 14
7.4.1 การกำหนดแอดเดรสของ Simatic S7 300
                   PLC รุ่นนี้จะติดตั้ง Rack สูงสุดได้ 4 Rack โดยการเชื่อมต่อระหว่าง Rack จะใช้ IM (Interface Module) เช่น IM 360 และ IM 361 เป็นตัวเชื่อมโยงระหว่าง Rack และสามารถติดตั้งช่องได้ทั้งหมด 32 ช่องใน 4 Rack โดยที่การกำหนดแอดเดรสของอินพุตและเอ้าท์พุต จะขึ้นอยู่กับตำแหน่งของช่องที่ติดตั้ง  ตามรูปที่ 4.8 a จะแสดงตำแหน่งของช่องต่างๆที่ติดตั้งอยู่บน Rack ซึ่งมีเพียง Rack เดียว จากรูปจะสังเกตได้ว่าโมดูลในแต่ละ Rack จะเริ่มติดตั้งใน ช่องที่ 4 เสมอ เพราะว่าช่องที่ 1-3 ของทุก Rack จะถูกจองไว้สำหรับแหล่งจ่ายพลังงานในช่องที่ 1, CPU ในช่องที่ 2 และ Interface Module ในช่องที่ 3 



รูปที่ 7.8 (a) แสดงตำแหน่งของช่องต่างๆที่ติดตั้งอยู่บน Rack ที่มี Rack เดียว                   

รูปที่ 7.8 (b) แสดงตำแหน่งของช่องต่างๆที่ติดตั้งอยู่บน Rack ที่มี หลาย Rack
1.การกำหนดแอดเดรสของดิจิตอลโมดูลสำหรับ Simatic 300
ในแต่ละจุดของโมดูลประเภทนี้จะให้ค่าเพียงแค่แสดงสถานะเท่านั้น คือ สถานะเปิด หรือ ปิด (1 หรือ 0) ในกรณีที่เรามาการใช้คำสั่งที่มีการปฏิบัติการแบบบิต จะต้องกำหนดการเข้าถึงตำแหน่งของอินพุตและเอ้าท์พุต เป็นแบบบิต ซึ่งการกำหนดดิจิตอลแอดเดรสสำหรับอินพุตและเอ้าท์พุต (I และ Q) นั้นเริ่มที่ไบท์แอดเดรสที่ 0 สำหรับโมดูลในช่องที่ 4 Rack ที่ 0 โดยในแต่ละโมดูลจะมีขนาด 1 ดับเบิ้ลเวิร์ด หรือ 4 ไบต์ ดังนั้นเมื่อติดตั้งดิจิตอลโมดูลครบทั้ง 4 Rack ( 32 โมดูล ) จะได้แอดเดรสสูงสุดที่ 127

รูปที่ 7.9 แสดงการกำหนดแอดเดรส ของดิจิตอลโมดูลสำหรับ Simatic Step 7 - 300

2.การกำหนดแอดเดรสของอานาล็อกโมดูลสำหรับ Simatic 300
ข้อมูลของอานาล็อกในแต่ละข้อมูลจะใช้สถานะสัญญาณ 16 บิตในการแทนค่า ซึ่งจะเห็นได้ว่า การเข้าถึงข้อมูลอานาล็อก จะต้องกำหนดตำแหน่งให้มีขนาดเป็น เวิร์ด และอานาล็อกโมดูลที่ใช้แต่ละช่อง จะมีเพียง 8 ช่อง หรือ สูงสุด 8 เวิร์ดเท่านั้น โดยจะเริ่มกำหนดที่ตำแหน่งเวิร์ดที่ 256 (ซึ่งประกอบด้วยไบท์ที่ 256 -257) ในช่องที่ 4 Rack ี่ 0 จนถึงช่องที่ 11 Rack ที่ 3 หรือตำแหน่งเวิร์ดที่ 766 เป็นตำแหน่งสุดท้าย การอ้างแอดเดรสอานาล็อกอินพุตเอ้าท์พุตจะต้องอ้างแอดเดรสโดยการใช้ PIW และ PQW ไม่ใช่แค่ I หรือ Q เหมือนดิจิตอลโมดูล

รูปที่ 7.10 แสดงการกำหนดแอดเดรส ของอานาล็อกโมดูลสำหรับ Simatic Step 7 - 300

7.5 โอเปอร์แรนด์ (Operand)
โอเปอร์แรนด์ จะเป็นส่วนที่ถูกปฏิบัติการ ตามคำสั่งที่กำหนด ภายในระบบ Simatic Step 7
นอกจากจะมีอินพุต เอ้าท์พุต และหน่วยความจำ (Memory) เป็นโอเปอร์แรนด์ แล้ว ยังมีโอเปอร์แรนด์อื่นๆดังต่อไปนี้
1.      I    (Input)    ทำหน้าที่เชื่อมโยงข้อมูลจากอุปกรณ์อินพุตมายัง PLC โดยผ่าน Input Table (PII)
2.      Q   (Output) ทำหน้าที่เชี่อมโยงข้อมูลจาก PLC มายังอุปกรณ์โดยผ่าน Output Table (PIQ)
3.      M   (Memory)       เป็นโอเปอร์แรนด์ของหน่วยความจำภายในที่ทำหน้าที่เก็บสถานะทางลอจิก
4.      L   (Local Data)   เป็นโอเปอร์แรนด์ของหน่วยความจำชั่วคราวที่ทำหน้าที่เก็บสถานะภายในบล็อก
5.              T   (Timer)          เป็นโอเปอร์แรนด์ของหน่วยความจำภายในสำหรับตั้งเวลา
6.              C   (Counter)                 เป็นโอเปอร์แรนด์ของหน่วยความจำภายในสำหรับ นับจำนวน
7.      P   (Peripherals)   เป็นโอเปอร์แรนด์ที่ทำหน้าที่เชื่อมโยงข้อมูลจากโมดูลอินพุต /เอ้าท์พุต กับ PLC โดยตรง
8.      OB ,FC,FB,SFC,SFB เป็นโอเปอร์แรนด์ที่ใช้ในการกำหนดถึงบล็อกต่างๆที่ใช้ในการเขียนโปรแกรม
9.      DB เป็นโอเปอร์แรนด์ที่ใช้ในการกำหนดถึงบล็อกที่เก็บข้อมูล

7.6 โครงสร้างของโปรแกรม
การเขียนโปรแกรม สำหรับ PLC Simatic Step 7 ได้แยกโครงสร้างของการเขียนโปรแกรมไว้ 3 ลักษณะ
1. แบบ Linear Programming
เป็นการเขียนโปรแกรมได้ภายใน OB (Organization Block) เท่านั้น เหมาะสำหรับการควบคุมการทำงานแบบง่ายๆที่มีการทำงานไม่ซับซ้อน และขนาดของโปรแกรมไม่ใหญ่มากนัก โดยโครงสร้างของโปรแกรมในลักษณะนี้จะมีความยุ่งยากในการ แก้ไข หรือตรวจสอบในขณะที่การทำงานของโปรแกรมมีปัญหา เนื่องจากการเขียนโปรแกรมมีการเรียงลำดับลงมาภายในบล็อกตัวเดียว
2.แบบ Partitioned Programming
เป็นการเขียนโปรแกรมที่มีลักษณะ เป็นการแบ่งโปรแกรมควบคุมการทำงานออกเป็นโปรแกรมย่อยๆซึ่งมีข้อดี คือ ง่ายในการแก้ไข ปรับปรุงโปรแกรมควบคุม  และการตรวจสอบ ในขณะที่เกิดความผิดพลาดในการทำงาน
3. แบบ Structure Programming
การเขียนโปรแกรมในลักษณะนี้จะแบ่งการควบคุมออกเป็นโปรแกรมย่อย และเก็บโปรแกรมเหล่านั้นในบล็อกต่างๆซึ่งจะทำให้เข้าใจง่าย ในการทดสอบและตรวจสอบ ปรับปรุงแก้ไขโปรแกรม นอกนั้นยังประหยัดหน่วยความจำที่ใช้ในการเก็บโปรแกรมควบคุมการทำงานได้ โดยส่งค่าพารามิเตอร์ อินพุตและเอ้าท์พุต ให้กับโปรแกรมย่อยที่มีลักษณะการทำงานที่เหมือนกันแต่ใช้พารามิเตอร์ต่างๆ

7.7 ชนิดของบล็อกสำหรับ Simatic S7
และในการเขียนโปรแกรมควบคุม สำหรับ Simatic S7 ได้มีการกำหนดชนิดของบล็อกไว้ 7 ชนิดคือ
1.Organization Block (OB) จะเป็นบล็อกที่ทำหน้าที่เชื่อมโยงระหว่างระบบปฏิบัติการของ PLC กับโปรแกรมควบคุมภายใน OB เอง และ โปรแกรมควบคุมที่อยู่ในบล็อกต่างๆสำหรับการควบคุมและการประมวลผล
2.Function Block (FB) คือ ฟังก์ชั่น หรือ ลำดับของฟังก์ชั่นในบล็อกปฏิบัติการที่มีหน่วยความจำส่วนหนึ่งถูกกำหนดเอาไว้สำหรับเก็บตัวแปร
FB จะต้องการหน่วยความจำเพิ่มเติมในลักษณะของ Instance Data Block ส่วนข้อมูลชั่วคราวอื่นๆจะถูกเก็บไว้ใน Local Stack (L)
3.Functions (Funtion Call) มีลักษณะคล้ายๆกับ FB เพียงแต่ไม่มีหน่วยความจำกำหนดไว้ให้ใช้ FC ไม่ต้องมี Instance Data Block ตัวแปรต่างๆจะถูกเก็บไว้ใน L Stack จนกว่าฟังก์ชั่นจะเสร็จสิ้นลง
4.System Function Block (SFB) คือโปรแกรมส่วนหนึ่งของ Simatic S7 มีลักษณะคล้ายๆกับ SFC เพียงแต่ SFB จะต้องกำหนด DB ให้กับบล็อกนั้นๆ
5.System Function (SFC) คือโปรแกรมที่สร้างขึ้นมาอยู่ในตัว S7 เช่น พารามิเตอร์ของโมดูล การสื่อสารข้อมูล เป็นต้น โดยที่ SFC สามารถที่จะถูกเรียกโดยโปรแกรมผู้ใช้งาน และไม่จำเป็นต้องกำหนด DB
6.Data Block (DB) จะเป็นบล็อกที่ใช้ในการเก็บข้อมูลต่างๆเพื่อใช้ในการประมวลผล โปรแกรมควบคุม เช่น ค่าคงที่ของไทม์เมอร์ และค่าคงที่ของเค้าท์เตอร์ เป็นต้น

ตามที่กล่าวไปแล้วว่าการเขียนโปรแกรม ภายใน Simatic S7 การที่หน่วยประมวลผลจะทำการประมวลผลโปรแกรมที่ผู้กำหนดขึ้นภายในบล็อกประเภทต่างๆได้ ดังนั้นโปรแกรมภายในบล็อกเหล่านั้นจะต้องถูกเรียกด้วย OB ก่อน ซึ่งลักษณะการทำงานของ OB ก็มีหลายลักษณะให้เลือกใช้ดังนี้
1.Cyclic Program Execution  เป็น OB ที่ทำการประมวลผลโปรแกรมจะเป็นวนรอบ OB นี้จะเป็น OB1
2.Interrupt – Driven Program เป็น OB ทำการประมวลผลของโปรแกรมจะขึ้นอยู่กับการอินเทอร์รัพท์ที่กำหนด OB นี้จะเป็น OB20
3.Time Controlled Program Execution การประมวณผลของโปรแกรมจะถูกควบคุมไปตามเวลาที่กำหนด OB35


ความคิดเห็น

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

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

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