บทที่ 9 คำสั่งของ STEP 7
เขียนและเรียบเรียงโดย อ.นัครินทร์ คฤหาสสุวรรณ์
1.Basic
Operation
จะเป็นฟังก์ชั่นที่สามารถประมวลผล ได้ภายใน OB , FC และ FB ซึ่งลักษณะการทำงานของฟังก์ชั่นนี้จะเป็นการปฏิบัติทางลอจิกพื้นฐาน
การใช้ไทม์เมอร์ การใช้เค้าท์เตอร์ และฟังก์ชั่นการประมวลผลทางคณิตศาสตร์ เป็นต้น
และสามารถที่จะเขียนโปรแกรมควบคุมด้วยภาษา STL,FBD และ LAD
2.Supplementary Operation จะเป็นฟังก์ชั่นการทำงานที่มีความซับซ้อนมากกว่า กลุ่มแรก
3.System Operations จะเป็นฟังก์ชั่นการทำงานที่เข้าถึงระบบปฏิบัติการของ PLC โดยตรง ซึ่งผู้ใช้ฟังก์ชั่นการทำงานในกลุ่มนี้ ควรจะมีความรู้
และประสบการณ์ เกี่ยวกับ PLC เป็นอย่างดี
9.1 กลุ่มคำสั่ง
Bit
Logic ขั้นพื้นฐาน
1. Normally Open Contact (---| |---)
Parameter Data
Type Memory Area Description
<Address> BOOL
I, Q, M, L, D, T, C Checked bit
ลักษณะการทำงาน
วงจรนี้จะมีค่า RLO (Result
Logic Operation) เป็น 1
ถ้ามีเงื่อนไขข้อใดข้อหนึ่งดังต่อไปนี้
1. I0.0 และ I0.1 มีสถานะ “ON”
2. I0.2 มีสถานะ “ON”
2. Normally
Closed Contact (---| / |---)
Parameter Data
Type Memory Area Description
<Address> BOOL
I, Q, M, L, D, T, C Checked bit
ลักษณะการทำงาน
วงจรนี้จะมีค่า RLO (Result
Logic Operation) เป็น 1 ถ้ามีเงื่อนไขข้อใดข้อหนึ่งดังต่อไปนี้
1. I0.0 และ I0.1 มีสถานะ “ON”
2. I0.2 มีสถานะ “OFF”
3. XOR Bit Exclusive OR
สัญลักษณ์
ลักษณะการทำงาน
XOR (Bit Exclusive OR) จะมีสถานะ ON
ถ้าบิตทั้งสองมีสถานะต่างกัน คือตัวหนึ่งเป็น ON อีกตัวหนึ่งต้องเป็น OFF
วงจรนี้จะให้ค่า Output Q4.0 มีสถานะ ON ถ้ามีเงื่อนไขข้อใดข้อหนึ่งดังต่อไปนี้
1. I0.0 มีสถานะ “ON” I0.1 มีสถานะ “OFF”
2. I0.0 มีสถานะ “OFF” I0.1 มีสถานะ “ON
4. Invert Power Flow (--|NOT|--)
ลักษณะการทำงาน
จะทำหน้าที่กลับสถานะของผลลัพธ์ทางลอจิกที่ได้(Result Logic Operation)
คือ ถ้าผลลัพธ์ทางลอจิกที่ได้ก่อนเข้า--|NOT|-- เป็นสถานะ ON เมื่อผ่าน--|NOT|-- แล้วจะมีสถานะเป็น OFF ในทางกลับกันถ้าผลลัพธ์ทางลอจิกที่ได้ก่อนเข้า--|NOT|--
เป็นสถานะ OFF เมื่อผ่าน--|NOT|-- แล้วจะมีสถานะเป็น ON
สถานะของ Q4.0 จะเป็น 0 (OFF) ถ้ามีเงื่อนไขข้อใดข้อหนึ่งดังต่อไปนี้
1. I0.0 และ I0.1 มีสถานะ “ON”
2. I0.2 มีสถานะ “ON”
5. Output Coil (--- ( ))
ลักษณะการทำงาน
จะทำหน้าทีเชื่อมต่อกับวงจรทาง LOGIC และมีสถานะ ON เมื่อค่า RLO มีค่า เป็น 1 และสถานะ OFF เมื่อค่า
RLO มีค่าเป็น 0
สถานะของ Q4.1 จะเป็น 1 (ON) เมื่อ ค่า RLO ของวงจรตามรูปจะต้องเป็น
1
6. Midline
Output (--- (#) ---)
ลักษณะการทำงาน
1. M0.0 คือ RLO ของ
2. M1.1 คือ RLO ของ
3. M2.2 คือ RLO ของ
RLO ทั้งระบบ
7. Reset Coil (---( R ))
ลักษณะการทำงาน
สถานะของ Q4.0 จะเป็น 0 (OFF) เมื่อ ค่า RLO ของวงจรดังต่อไปนี้จะต้องเป็น 1
และจากวงจรนี้ถ้า RLO เปลี่ยนสภาวะเป็นสภาวะใดๆ สถานะของ Q4.0 จะยังคงเป็น
0 (OFF) อยู่
8. Set Coil
(---( S ))
ลักษณะการทำงาน
สถานะของ Q4.0 จะเป็น 1 (ON) เมื่อ ค่า RLO ของวงจรดังต่อไปนี้จะต้องเป็น 1
และจากวงจรนี้ถ้า RLO เปลี่ยนสภาวะเป็นสภาวะใดๆ สถานะของ Q4.0 จะยังคงเป็น
1 (ON) อยู่
9. RS Reset-Set
Flip Flop (Dominant Set)
ลักษณะการทำงาน
สภาวะ RESET
ถ้า I 0.0 มีสถานะ ON
และ I0.1 มีสถานะ OFF จะทำให้ค่า
Q4.0 มีสถานะ OFF ถึงแม้ว่า I 0.0 จะมีสถานะ OFF แล้วก็ตาม
สภาวะ SET
ถ้า I 0.0 มีสถานะ OFF
และ I0.1 มีสถานะ ON จะทำให้ค่า
Q4.0 มีสถานะ ON ถึงแม้ว่า I 0.1 จะมีสถานะ OFF แล้วก็ตาม
สภาวะ Dominant Set
ถ้า I 0.0 มีสถานะ ON
และ I0.1 มีสถานะ ON จะทำให้ค่า
Q4.0 มีสถานะ ON
10. SR Set-Reset
Flip Flop
ลักษณะการทำงาน
สภาวะ SET
ถ้า I 0.0 มีสถานะ ON
และ I0.1 มีสถานะ OFF จะทำให้ค่า
Q4.0 มีสถานะ ON ถึงแม้ว่า I 0.0 จะมีสถานะ OFF แล้วก็ตาม
สภาวะ RESET
ถ้า I 0.0 มีสถานะ OFF
และ I0.1 มีสถานะ ON จะทำให้ค่า
Q4.0 มีสถานะ OFF ถึงแม้ว่า I 0.1 จะมีสถานะ OFF แล้วก็ตาม
สภาวะ Dominant Reset
ถ้า I 0.0 มีสถานะ ON
และ I0.1 มีสถานะ ON จะทำให้ค่า
Q4.0 มีสถานะ OFF
11. Negative RLO
Edge Detection(---( N )---)
ลักษณะการทำงาน
ถ้า RLO ของวงจรดังต่อไปนี้เปลี่ยนค่าจาก
1 เป็น 0 โปรแกรมจะข้ามไปที่ลาเบลที่ CAS1
12. Positive
RLO Edge Detection (---( P )---)
ลักษณะการทำงาน
ถ้า RLO ของวงจรดังต่อไปนี้เปลี่ยนค่าจาก
0 เป็น 1 โปรแกรมจะข้ามไปที่ลาเบลที่ CAS1
9.2 กลุ่มคำสั่ง Comparator ขั้นพื้นฐาน
1. CMP? I
Compare Integer
= = 1 หมายถึง IN1 เท่ากับ IN2
> 1 หมายถึง IN1 มากกว่า IN2
> = 1 หมายถึง IN1 มากกว่าหรือเท่ากับ IN2
< > 1 หมายถึง IN1 ไม่เท่ากับ IN2
< 1 หมายถึง IN1 น้อยกว่า IN2
< = 1 หมายถึง IN1 น้อยกว่าหรือเท่ากับ IN2
ลักษณะการทำงาน
ค่า Q4.0 ถูกทำให้มีสถานะติดตลอด
(SET) ถ้าประกอบด้วยเงื่อนไขทั้งสองดังต่อไปนี้
1. I 0.0 และ I0.1 อยู่ในสภาวะ ON
2. ค่า
MW0 มากกว่าหรือเท่ากับ MW1
2. CMP? D Compare Double Integer
= = 1 หมายถึง IN1 เท่ากับ IN2
> 1 หมายถึง IN1 มากกว่า IN2
> = 1 หมายถึง IN1 มากกว่าหรือเท่ากับ IN2
< > 1 หมายถึง IN1 ไม่เท่ากับ IN2
< 1 หมายถึง IN1 น้อยกว่า IN2
< = 1 หมายถึง IN1 น้อยกว่าหรือเท่ากับ IN2
ลักษณะการทำงาน
ค่า Q4.0
ถูกทำให้มีสถานะติดตลอด (SET) ถ้าประกอบด้วยเงื่อนไขทั้งสองดังต่อไปนี้
1. I 0.0 และ I0.1 อยู่ในสภาวะ ON
2.ค่า MD0 มากกว่าหรือเท่ากับ
MD4
3. I0.2 อยู่ในสภาวะ ON
3. CMP? R
Compare Real
ลักษณะการทำงาน
ค่า Q4.0 ถูกทำให้มีสถานะติดตลอด (SET) ถ้าประกอบด้วยเงื่อนไขทั้งสองดังต่อไปนี้
1. I 0.0 และ I0.1 อยู่ในสภาวะ ON
2.ค่า MD0
มากกว่าหรือเท่ากับ MD4
3. I0.2 อยู่ในสภาวะ
ON
9.3 กลุ่มคำสั่ง Counter
1. S_CUD
Up-Down Counter
ลักษณะการทำงาน
1.เมื่อ I 0.2 เปลี่ยนสถานะจาก 0 ไป 1 ทำให้ค่าของ Counter มีค่าเท่ากับ MW10
2.เมื่อ I 0.0 เปลี่ยนสถานะจาก 0 ไป 1 ทำให้ค่าของ C10 เพิ่มขึ้นทีละ1 แต่ไม่เกิน 999
3.เมื่อ I 0.1 เปลี่ยนสถานะจาก 0 ไป 1 ทำให้ค่าของ C10 ลดลงทีละ1 แต่ไม่ต่ำกว่า 0
4.ค่า Q4.0 จะเท่ากับ 1 ถ้า C10 ไม่เท่ากับ 0
2. S_CU Up Counter
ลักษณะการทำงาน
1.เมื่อ I 0.2 เปลี่ยนสถานะจาก 0 ไป 1 ทำให้ค่าของ Counter มีค่าเท่ากับ MW10
2.เมื่อ I 0.0 เปลี่ยนสถานะจาก 0 ไป 1 ทำให้ค่าของ C10 เพิ่มขึ้นทีละ1 แต่ไม่ต่ำกว่า 0
3.ค่า Q4.0 จะเท่ากับ 1 ถ้า C10 ไม่เท่ากับ 0
3. S_CD Down
Counter
ลักษณะการทำงาน
1.เมื่อ I 0.2
เปลี่ยนสถานะจาก 0 ไป 1 ทำให้ค่าของ Counter มีค่าเท่ากับ MW10
2.เมื่อ I 0.0
เปลี่ยนสถานะจาก 0 ไป 1 ทำให้ค่าของ C10 ลดลงทีละ1
แต่ไม่ต่ำกว่า 0
3.ค่า Q4.0 จะเท่ากับ
1 ถ้า C10 ไม่เท่ากับ 0
4. Set Counter
Value (---( SC ) )
เมื่อ I 0.0
เปลี่ยนสถานะจาก 0 เป็น 1 ค่า C 5 จะมีค่าเท่ากับ 100
ถ้าไม่มีพัลส์ขอบขาขึ้นของ I 0.0 ค่าของ C5 จะไม่มีการเปลี่ยนแปลง
5. Up Counter Coil (---( CU ) )
ลักษณะการทำงาน
1.ถ้า I0.0 เปลี่ยนจากค่า 0 เป็น 1 ค่า 100 จะถูกบรรจุลงใน C10
2.ถ้า I0.1 เปลี่ยนจากค่า 0 เป็น 1
จะทำให้ค่า C10 เพิ่มขึ้นทีละ 1
แต่ไม่เกิน 999
3.ถ้า I0.2 เปลี่ยนจากค่า 0 เป็น 1
จะทำให้ค่า C10 เป็น 0
6. Up Counter Coil (--- (CD))
ลักษณะการทำงาน
1.ถ้า
I0.0 เปลี่ยนจากค่า 0 เป็น 1 ค่า 100 จะถูกบรรจุลงใน C10
2.ถ้า I0.1 เปลี่ยนจากค่า 0 เป็น 1
จะทำให้ค่า C10 ลดลงทีละ 1
แต่ไม่ต่ำกว่า 0
3.ถ้า C10
= 0 จะทำให้ Q4.0 อยู่ในสถานะ ON
4. I 0.2 จะทำให้ค่า
C10 เป็น 0
9.4 กลุ่มคำสั่ง
MOVE
1. MOVE
1.ถ้า I0.0 เปลี่ยนจากค่า 0 เป็น 1 ค่า MW10
(Memory ในตำแหน่ง Word ที่ 10) จะเก็บใน DBW12 (Data Block ในตำแหน่ง Word ที่ 12)
2.เมื่อขั้นตอนที่
1 เสร็จแล้วจึงทำให้ค่า Q4.0
อยู่ในสภาวะ ON
3. .ถ้า I0.0
เปลี่ยนจากค่า 1 เป็น 0 ค่า
DBW10 ยังคงเท่ากับ MW10 แต่ Q4.0
อยู่ในสภาวะ OFF
9.5 กลุ่มคำสั่ง
TIMER
1. S_PULSE
Pulse S5 Timer
ลักษณะการทำงาน
1.ถ้า I0.0 เปลี่ยนสถานะจาก 0 เป็น 1
ทำให้ T5 เริ่มทำงานโดยขณะที่ T5
ทำงานอยู่ Q4.0 = 1
2.T5 จะทำงานจนกระทั่งตามระยะเวลาที่ตั้งไว้ในที่นี้คือ
2 วินาทีและขณะที่ I0.0 = 1
3.หลังจากระยะเวลาที่ตั้งไว้หรือ
I0.0 = 0 ทำให้ T5 หยุดทำงาน ทำให้ Q4.0
= 0
4.เมื่อ I0.1 เปลี่ยนสถานะจาก 0 เป็น 1
ทำให้ T5 อยู่ในสภาวะ Reset ทำให้ Q4.0
= 0
2. S_PEXT Extended
Pulse S5 Timer
ลักษณะการทำงาน
1.ถ้า I0.0
เปลี่ยนสถานะจาก 0 เป็น 1 ทำให้ T5 เริ่มทำงานโดยขณะที่ T5 ทำงานอยู่ Q4.0 = 1
2.T5
จะทำงานจนกระทั่งตามระยะเวลาที่ตั้งไว้ในที่นี้คือ 2 วินาทีโดยไม่สนใจสถานะของ I0.0
3.หลังจากระยะเวลาที่ตั้งไว้หรือ I0.0 = 0 ทำให้ T5 หยุดทำงาน ทำให้ Q4.0 = 0
4.เมื่อ I0.1 เปลี่ยนสถานะจาก 0 เป็น 1 ทำให้ T5 อยู่ในสภาวะ Reset ทำให้ Q4.0
= 0
3.
S_ODT On-Delay S5 Timer
ลักษณะการทำงาน
1.ถ้า I0.0 เปลี่ยนสถานะจาก 0 เป็น 1
จนกระทั่งตามระยะเวลาที่ตั้งไว้ในที่นี้คือ 2 วินาที
2.T5
จะทำงานจนกระทั่ง I0.0 = 0
3.ถ้า I0.0
= 0 ทำให้ T5 หยุดทำงาน ทำให้ Q4.0 = 0
4.เมื่อ I0.1 เปลี่ยนสถานะจาก 0 เป็น 1
ทำให้ T5 อยู่ในสภาวะ Reset ทำให้ Q4.0
= 0
4.
S_ODTS Retentive On-Delay S5 Timer
ลักษณะการทำงาน
1.ถ้า I0.0 เปลี่ยนสถานะจาก 0 เป็น 1 จนกระทั่งตามระยะเวลาที่ตั้งไว้ในที่นี้คือ
2 วินาที
2.T5 จะทำงานจนกระทั่ง I0.1 = 0
3.ถ้า I0.0 เปลี่ยนสถานะจาก 0 เป็น 1 อีกทีจะทำการเริ่มนับเวลาใหม่
4.เมื่อ I0.1 เปลี่ยนสถานะจาก 0 เป็น 1 ทำให้ T5
อยู่ในสภาวะ Reset ทำให้ Q4.0 = 0
5.
S_OFFDT Off-Delay S5 Timer
ลักษณะการทำงาน
1.ถ้า I0.0 เปลี่ยนสถานะจาก 0 เป็น 1 T5
จะทำงาน
2.T5 จะทำงานต่อจนกระทั่ง I0.0 = 0
เป็นระยะเวลาที่กำหนดไว้
3.ถ้าถึงระยะเวลาที่กำหนดไว้
T5 ก็จะหยุดทำงาน
4.เมื่อ I0.1 เปลี่ยนสถานะจาก 0 เป็น 1 ทำให้ T5
อยู่ในสภาวะ Reset ทำให้ Q4.0 = 0
6.
Pulse Timer Coil --- (SP)
1.ถ้า I0.0
เปลี่ยนสถานะจาก 0 เป็น 1 ทำให้ T5 เริ่มทำงานโดยขณะที่ T5 ทำงานอยู่ Q4.0 = 1
2.T5
จะทำงานจนกระทั่งตามระยะเวลาที่ตั้งไว้ในที่นี้คือ 2
วินาทีและขณะที่ I0.0 = 1
3.หลังจากระยะเวลาที่ตั้งไว้หรือ I0.0
= 0 ทำให้ T5 หยุดทำงาน ทำให้ Q4.0 = 0
4.เมื่อ I0.1 เปลี่ยนสถานะจาก
0 เป็น 1 ทำให้ T5 อยู่ในสภาวะ Reset ทำให้ Q4.0 = 0
7. Extended Pulse Timer Coil ---( SE )
1.ถ้า I0.0 เปลี่ยนสถานะจาก 0
เป็น 1 ทำให้ T5 เริ่มทำงานโดยขณะที่ T5 ทำงานอยู่ Q4.0 = 1
2.T5 จะทำงานจนกระทั่งตามระยะเวลาที่ตั้งไว้ในที่นี้คือ 2 วินาทีโดยไม่สนใจสถานะของ I0.0
3.หลังจากระยะเวลาที่ตั้งไว้หรือ I0.0 = 0 ทำให้ T5 หยุดทำงาน ทำให้ Q4.0 = 0
4.เมื่อ I0.1 เปลี่ยนสถานะจาก
0 เป็น 1 ทำให้ T5 อยู่ในสภาวะ Reset ทำให้ Q4.0 = 0
8.
On-Delay Timer Coil ---( SD )
1.ถ้า I0.0
เปลี่ยนสถานะจาก 0 เป็น 1
จนกระทั่งตามระยะเวลาที่ตั้งไว้ในที่นี้คือ 2 วินาที
2.T5 จะทำงานจนกระทั่ง I0.0 = 0
3.ถ้า I0.0 = 0 ทำให้ T5 หยุดทำงาน ทำให้ Q4.0 = 0
4.เมื่อ I0.1
เปลี่ยนสถานะจาก 0 เป็น 1 ทำให้ T5 อยู่ในสภาวะ Reset ทำให้ Q4.0 = 0
9.
Retentive On-Delay Timer Coil ---( SS )
1.ถ้า I0.0
เปลี่ยนสถานะจาก 0 เป็น 1
จนกระทั่งตามระยะเวลาที่ตั้งไว้ในที่นี้คือ 2 วินาที
2.T5 จะทำงานจนกระทั่ง I0.1 = 0
3.ถ้า I0.0
เปลี่ยนสถานะจาก 0 เป็น 1 อีกทีจะทำการเริ่มนับเวลาใหม่
4.เมื่อ I0.1 เปลี่ยนสถานะจาก
0 เป็น 1 ทำให้ T5 อยู่ในสภาวะ Reset ทำให้ Q4.0 = 0
10.
Off-Delay Timer Coil ---( SF )
1.ถ้า I0.0 เปลี่ยนสถานะจาก 0 เป็น 1 T5
จะทำงาน
2.T5 จะทำงานต่อจนกระทั่ง I0.0 = 0 เป็นระยะเวลาที่กำหนดไว้
3.ถ้าถึงระยะเวลาที่กำหนดไว้ T5 ก็จะหยุดทำงาน
4.เมื่อ I0.1 เปลี่ยนสถานะจาก
0 เป็น 1 ทำให้ T5 อยู่ในสภาวะ Reset ทำให้ Q4.0 = 0
ความคิดเห็น