|
|
1. มีอินพุต 16 ตัว |
2. มีเอ้าพุตแบบรีเลย์ 8ตัว หน้าคอนแทค10 A. |
3. Supply มี2รุ่น คือใช้ไฟ 12 Vdc และ 24 Vdc |
4.จอแสดงผลมีไฟมองในที่มืดได้ |
5.มี 3โหมด คือ PROGRAM , RUN , MONITOR ในโหมด MONITOR สามารถดูค่าสถานะต่างๆของแลดเดอร์ได้ |
6.มีฟังชั่นทดสอบการทำงานของรีเลย์เอ้าพุต |
7.บอร์ดขนาด 13.1 x 11.4 cm |
|
|
ส่วนฮาร์ดแวร์ |
|
โปรแกรมแลดเดอร์ |
|
แอดเดรส
|
|
INPUT (input port) |
001-100
| หมายถึงช่องรับสัญญานอินพุทจากภายนอกที่สามารถต่อเข้าไปใช้งานได้ มีแอดเดรสที่ 001-100 แต่ PLC รุ่นนี้ มีแค่16 อินพุท สามารถใช้ได้แค่ 001-016 ที่เหลือโปรแกรมสำรองไว้ |
OUTPUT (output relay) |
101-150
| หมายถึงรีเลย์เอ้าพุทที่ต่อใช้งานภายนอกมีแอดเดรสตั้งแต่ 101-150 แต่ PLC ที่เราสร้างนี้ มีแค่ 8 อินพุท สามารถใช้ได้แค่ 101-108 ที่เหลือโปรแกรมสำรองไว |
KEEP (keep relay) |
101-150 201-250
| เป็นฟังชั่นคุมรีเลย์ชนิดหนึ่ง ให้รีเลย์ทำงานแบบแลทช์ ข้อมูลไว้ โดยการกระตุ้นสัญญานเพียงครั้งเดียวที่ขาเซ็ตหรือขารีเซ็ต รีเลย์ตัวนั้นก็จะ on หรือ off ตลอดไปจนกว่าจะมีการกระตุ้นเปลี่ยนสถานะใหม่ keep relay สามารถใช้ได้ทั้งรีเลย์ภายนอก(101-150) และรีเลย์ภายใน(201-250) |
CNT (counter) |
151-160
| ตัวนับมี10ตัว มีแอดเดรสอยู่ที่ 151-160 แต่ละตัวสามารถนับได้ 9999 หากต้องการนับมากกว่านี้ ให้ต่ออนุกรมกัน |
TIM (timer relay) |
161-180
| ไทเมอร์ ตัวจับเวลามีความละเอียดขนาด 0.1 วินาที มี 20 ตัว แต่ละตัวสามารถตั้งค่าสูงสุดได้ 999.9 วินาที หากต้องการค่านานกว่านี้ให้ต่ออนุกรมกัน ไทเมอร์มีแอดเดรสอยู่ที่ 161-180 |
TR (temporary relay) |
181-190
| เทมโพรารี รีเลย์ เป็นรีเลย์ชั่วคราวที่ช่วยในการเขียนโปรแกรม ในกรณีที่ในแต่ละแร็ง (rang) มีขนาดยาวเกินไป มีให้ใช้10ตัว เมื่อหมดแร็งสามารถเอาTR ตัวเดิมมาใช้ได้อีก โดยTR1-TR10 หรือมีแอดเเดรสอยู่ที่ 181-190 |
spare |
191-200
| แอดเดรส 191-200 สำรองไว้ใช้เป็นฟังก์ชั่นในอนาคต |
IR (internal relay) |
201-250
| รีเลย์ภายใน ใช้งานเหมือนกับ output relay แต่ว่าไม่มีขาต่อมาที่ฮาร์แวร์ภายนอก ใช้ช่วยในการเขียนโปรแกรม มีแอดเดรสอยู่ที่ 201-250 |
SP (special relay) |
251-255
| รีเลย์ พิเศษ ที่โปรแกรมสร้างไว้ให้แล้วสามารถเอาหน้าคอนแทคมาใช้ได้เลย มีแอสเดรสอยู่ที่ 251-255 251=pulse 0.1 sec สัญญานพัลส์กว้าง 0.1 วินาที หรือ 0.2 วินาที/รอบ 252=pulse 0.5 sec สัญญานพัลส์กว้าง 0.5 วินาที หรือ 1.0 วินาที/รอบ 253=pulse 1.0 sec สัญญานพัลส์กว้าง 1.0 วินาที หรือ 2.0 วินาที/รอบ |
จำนวนหน่วยความจำที่เขียนได้ |
250 บรรทัด
| *หมายเหตุ คำสั่ง CNT และ TIM ใช้คำสั่งละ 2บรรทัด นอกนั้นคำสั่งละ 1 บรรทัด |
|
ตัวอย่างการเขียนโปรแกรมแลดเดอร์
|
|
สัญลักษณ์
|
คำสั่งแลดเดอร์
|
ชื่อ
|
รายละเอียด
|
|
LD
|
LOAD
|
หน้า contact NO ถ้าเริ่มบล็อกจะใช้ LD
|
AND
|
AND
|
OR
|
OR
|
|
LD NOT
|
LOAD NOT
|
หน้า contact NC ถ้าเริ่มบล็อกจะใช้ LD NOT
|
AND NOT
|
AND NOT
|
OR NOT
|
OR NOT
|
|
OUT
|
OUT RELAY
|
รีเลย์ทำงานแบบ มีไฟจ่ายคอยล์ทำงาน
|
|
OUT NOT
|
OUT NOT RELAY
|
รีเลย์ทำงานแบบ ไม่มีไฟจ่ายคอยล์ทำงาน
|
|
KEEP
|
KEEP RELAY
|
รีเลย์ทำงานค้างสถานะ กระตุ้นแค่ครั้งเดียว ขา S เซ็ต ขา R รีเซ็ต
|
|
CNT
|
COUNT
|
ตัวนับ ขา cnt เป็นขานับ ขา reset เป็นขารีเซ็ต ค่าสูงสุด 9999
|
|
TIM
|
TIMER
|
ตัวจับเวลา จับเวลาสูงสุด 999.9 sec
|
แลดเดอร์ไดอะแกรม
|
คำสั่งแลดเดอร์
|
EX1
|
ทุกครั้งที่เริ่มต้นบล็อกจะต้องใช้คำสั่ง LD หน้าคอนแท็คก่อน จากตัวอย่างถ้ามีการต่อให้อินพุต 001ต่อวงจร รีเลย์101 จะทำงานด้วย การทำงานก็เหมือนกับวงจรรีเลย์ไฟฟ้าทั่วไป
|
EX2
|
1.LD | 001 |
2.AND | 002 |
3.OUT NOT | 101 |
4.END | |
ตัวอย่างที่ 2 เริ่มมีการ and
|
EX3
|
1.LD | 001 |
2.OR | 002 |
3.OUT | 101 |
4.END | |
|
EX4
|
1.LD | 001 |
2.OR | 002 |
3.AND NOT | 003 |
4.OUT | 101 |
5.END | |
ตัวอย่างที่ 4 เริ่มมีการผสม or กับ and
|
EX5
|
1.LD | 001 |
2.OR | 003 |
3.LD | 002 |
4.OR NOT | 004 |
5 AND LD | |
6.OUT | 101 |
7.END | |
เริ่มมี 2 บล็อก ทุกครั้งที่เริ่มบล็อกใหม่ต้องใช้คำสั่ง LD ก่อน ในตัวอย่างมี 2 บล็อก และบล็อกมีการ and กัน ใช้คำสั่ง AND LD
|
EX6
|
1. LD | 001 |
2. AND NOT | 002 |
3. LD | 003 |
4. AND | 004 |
5 OR LD | |
6. OUT NOT | 101 |
7. END | |
มี 2 บล็อก ทุกครั้งที่เริ่มบล็อกใหม่ต้องใช้คำสั่ง LD ก่อน ในตัวอย่างมี 2 บล็อก และบล็อกมีการ or กัน ใช้คำสั่ง OR LD
|
EX7
|
1.LD | 001 |
2.OUT | 101 |
3.OUT | 102 |
4.END | |
ตัวอย่าง 7 การสั่งรีเลย์หลายตัว
|
EX8
|
1.LD | 001 |
2.OUT | 101 |
3.AND | 002 |
4.OUT NOT | 102 |
5.END | |
ตัวอย่างที่ 8-9 การทำงานเหมือนกัน จะเห็นว่าตัวอย่างที่ 8 จะเขียนคำสั่งที่ง่ายและสั้นกว่า ต่างกันที่การเขียนไดอะแกรม ดังนั้นการเขียนไดอะแกรมก็มีผลต่อการเขียนแลดเดอร์เหมือนกัน
|
EX9
|
1.LD | 001 |
2.OUT TR1 | 171 |
3.AND | 002 |
4.OUT NOT | 102 |
5.LD TR1 | 181 |
6.OUT | 101 |
7.END | |
การเขียนไดอะแกรมลักษณะนี้ต้องใช้รีเลย์ชั่วคราว พักข้อมูลไว้ก่อน ในตัวอย่างพักไว้ที่ TR171 แล้วค่อยโหลดไปใช้
|
EX10
|
1.LD | 001 |
2.AND | 002 |
3.OUT NOT | 102 |
4.LD | 001 |
5.OUT | 101 |
6.END | |
ในตัวอย่าง 10 แตกมาจาก ตัวอย่าง 9 แสดงให้เห็นว่า สามารถเขียนไดอะแกรมได้อีกแบบ และเขียนแลดเดอร์ได้ง่ายขึ้น
|
EX11
|
1.LD | 001 |
2.OR NOT | 004 |
3.OUT TR1 | 171 |
4.LD | 002 |
5.AND NOT | 003 |
6.AND LD | |
7.OUT | 101 |
8.LD TR1 | 181 |
9.AND | 005 |
10.OUT | 102 |
11.END | |
ตัวอย่าง11 ถ้าไดอะแกรมซับซ้อนขึ้น การใช้รีเลย์ชั่วคราว TR ก็เป็นสิ่งจำเป็น
|
EX12
|
1.LD | 001 |
2.LD | 002 |
3.KEEP | 101 |
4.END | |
ตัวอย่าง 12-13 การทำงานเหมือนกัน แต่ถ้ามีหน้าคอนแท็คมากกว่านี้ การใช้ KEEP จะสะดวกกว่า
|
EX13
|
1.LD | 001 |
2.OR | 101 |
3.AND NOT | 002 |
4.OUT | 101 |
5.END | |
ตัวอย่าง 13 หน้าคอนแท็ค 101 ทำหน้าที่ล็อกตัวเอง หรือเรียกว่าการอินเตอร์ล็อก( interlock)
|
EX14
|
1.LD | 001 |
2.TIM | 161 |
3.........................# | 010.5 |
4.LD TIM | 161 |
5.OUT | 101 |
6.END | |
ตัวอย่าง14 การใช้ ไทเมอร์จับเวลา #10.5 คือ 10.5 วินาที
|
EX15
|
1.LD | 001 |
2.LD | 002 |
3.CNT | 151 |
4.........................# | 0120 |
5.LD CNT | 151 |
6.OUT | 105 |
7.END | |
ตัวอย่าง 15 การใช้งาน เค้าเตอร์ ตัวนับ #120 คือนับคบ120ครั้ง สั่งทำงาน
|
EX16
|
1.LD | 001 |
2.AND NOT TIM | 161 |
3.TIM | 161 |
4..........................# | 060.0 |
5.LD TIM | 161 |
6.LD | 002 |
7.CNT | 151 |
8.........................# | 0030 |
9.LD CNT | 151 |
10.OUT | 108 |
11.END | |
ตัวอย่าง 16 การจับเวลา 30 นาที แล้วสั่งให้รีเลย์ทำงาน โดยใช้ไทเมอร์กับเค้าเตอร์ประกอบกัน ( 60 วินาที x 30 =1800 วินาที หรือ = 30 นาที)
|
EX17
|
1.LD | 252 |
2.LD | 002 |
3.CNT | 151 |
4..........................# | 1800 |
5.LD CNT | 151 |
6.OUT | 108 |
7.END | |
ตัวอย่าง 17 การจับเวลา 30 นาที เหมือนตัวอย่าง 16 แต่ใช้รีเลย์พิเศษ 252 ช่วย ซึ่งรีเลย์252มีความถี่=1วินาที ( 1 วินาที x 1800 =1800 วินาที หรือ = 30 นาที)
|
EX18
|
1.LD | 001 |
2.OUT | 201 |
3.LD | 002 |
4.OUT | 202 |
5.LD | 201 |
6.AND | 202 |
7.OUT | 107 |
8.LD NOT | 201 |
9.LD NOT | 202 |
10.OUT | 108 |
11.END | |
ตัวอย่าง 18 มีการใช้รีเลย์ภายใน201,202 พักข้อมูลของอินพุตไว้ มีประโยชน์มากในกรณีที่มีการใช้อินพุตควบคุมหลายที่ แล้วหากมีการย้ายตำแหน่งอินพุตไปคำแหน่งอื่น เช่นจาก001 ไปใช้ 005 เราก็เปลี่ยนที่เดียวไม่ต้องเปลี่ยนหลายที่
|
|
1.LD | 001 |
2.OR | 101 |
3.TIM | 161 |
4.......................# | 000.5 |
5.AND NOT TIM | 161 |
6.OUT | 101 |
7.END | |
ตัวอย่างที่ 19 เป็นตัวอย่างวงจร one short timer เอาไปใช้งานในลักษณะกระตุ้นที่อินพุตครั้งเดียว เอ้าพุตทำงานในช่วงเวลาหนึ่ง เช่น เครื่องจักรหมุนครบ1รอบ ให้พ่นน้ำ 1ครั้ง |
|
1.LD | 001 |
2.OR | 002 |
3.OR | 003 |
4.OR | 004 |
5.OR | 005 |
6.OR | 006 |
7.OR | 007 |
8.OR | 008 |
9.OR | 009 |
10.OR | 010 |
11.OR | 011 |
12.OR | 012 |
13.OUT | 101 |
14.OUT | 102 |
15.OUT | 103 |
16.OUT | 104 |
17.OUT | 105 |
18.OUT | 106 |
19.OUT | 107 |
20.OUT | 108 |
21.END | |
ตัวอย่างที่ 20 ทดสอบการทำงานของภาค input/output ว่าทำงานผิดปกติหรือไม่ |
|
|
การเลื่อนไปทีละบรรทัด
| เลื่อนขึ้น เลื่อนลง |
การแทรกบรรทัด
ก่อนแทรก
1.LD | 001 |
2. | |
3.OUT | 101 |
4.END | |
หลังจากแทรก
| เลื่อนไปบรรทัดที่ต้องการ
|
การลบบรรทัด
1.LD | 001 |
2.OR | 002 |
3.OUT | 101 |
4.END | |
ก่อนลบ
หลังจากลบ
| เลื่อนไปบรรทัดที่ต้องการ
|
การล้างหน่วยความจำทีละบรรทัด
1.LD | 001 |
2.OR | 002 |
3.OUT | 101 |
4.END | |
ก่อนล้าง
1.LD | 001 |
2. | |
3.OUT | 101 |
4.END | |
หลังจากล้าง
| เลื่อนไปบรรทัดที่ต้องการ
|
|
|
|
ตัวอย่างการใช้งาน
|
อย่างที่กล่าวมาแต่ต้น การยกตัวอย่างการใช้งานจริงจะเห็นภาพชัดขึ้น นี่เป็นตัวอย่างการย้ายชิ้นงาน งานที่ใช้การทำงานลักษณะนี้ เช่น การบรรจุชิ้นงานลงกล่อง การย้ายชิ้นงานเข้าเตาอบ การย้ายสายพานลำเลียง เป็นต้น จากรูปตัวอย่าง การทำงานจะมีดังนี้ ชิ้นงานถูกลำเลียงมาตามคอนเวเยอร์หรือสายพาน ผ่านโฟโต้เซนเซอร์ซึ่งเป็นตัวเซนเซอร์ชนิดใช้แสงสะท้อนกลับ เมื่อตัวเซนเซอร์เจอชิ้นงาน ส่งสัญญาณมาให้ PLC นับ เมื่อครบตามจำนวนที่ตั้งไว้ ส่งสัญญานไปเปิดโซลีนอยด์วาล์ว ให้ลมไหลผ่านเข้ากระบอกสูบไซเลนเดอร์ทำงาน ดันชิ้นงานไปตำแหน่งที่ต้องการ โดยมีไทเมอร์เป็นตัวจับเวลาถอยกลับ และกระบอกสูบสามารถทำงานได้อีกกรณีคือ ถ้าชิ้นงานไหลเลยมาโดนลิมิตสวิทช์ ให้สั่งให้กระบอกสูบทำงานด้วย สำหรับใช้ในกรณีที่ชิ้นงานขาดช่วง หรือตัวเซนเซอร์นับไม่ครบ ทำให้ชิ้นงานจะไหลเลยมาโดนลิมิตสวิทช์ การทำงานก็มีดังที่กล่าวมา ดูที่รูปประกอบ
Address
|
Instruction
|
Operand
|
Comment
|
001 | LD | 001 | สวิทช์เปิด |
002 | OR | 201 | |
003 | AND NOT | 002 | สวิทช์ปิด |
004 | OUT | 201 | |
005 | LD | 201 | |
006 | OUT | 101 | หลอดไฟปิดเปิด |
007 | LD | 003 | โฟโต้สวิทช์ |
008 | LD NOT | 201 | |
009 | OR CNT | 151 | |
010 | CNT | 151 | |
011 | # | 0005 | นับ5ชิ้น |
012 | LD | 004 | สวิทช์กดทดสอบ |
013 | OR | 005 | ลิมิตสวิทช์ |
014 | OR CNT | 151 | |
015 | OUT | 202 | |
016 | LD | 202 | |
017 | OR | 102 | |
018 | AND NOT TIM | 161 | |
019 | OUT | 102 | โซลีนอยด์วาล์ว |
020 | OUT | 103 | หลอดแสดงการทำงาน |
021 | LD | 102 | |
022 | TIM | 161 | |
023 | # | 0100 | ทำงาน10วินาที |
024 | END | | |
|