Giáo trình Lập trình PLC - Bùi Mạnh Cường

pptx 305 trang ngocly 1790
Bạn đang xem 20 trang mẫu của tài liệu "Giáo trình Lập trình PLC - Bùi Mạnh Cường", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pptxgiao_trinh_lap_trinh_plc_bui_manh_cuong.pptx

Nội dung text: Giáo trình Lập trình PLC - Bùi Mạnh Cường

  1. Giáo trình: Lập trình PLC Bài 1: Mạch logic ứng dụng và các công nghệ sản xuất tự động trong công nghiệp Bài 2: Khái niệm về PLC Bài 3: Bộ điều khiển PLC S7-200 Bài 4: Phương pháp lập trình PLC Bài 5: Lựa chọn, lắp đặt, kiểm tra và bảo trì hệ thống Bài 6: Bộ điều khiển PLC S7-300 Biên soạn : Bùi Mạnh Cường Bộ mộn: Đo lường và Điều khiển Tự động Khoa Điện Tử - Trường ĐH Kỹ thuật Công nghiệp 6/14/2021 3:36 PM BMC-K.DIENTU 1
  2. Bài 1: Mạch logic ứng dụng và cỏc cụng nghệ sản xuất tự động trong cụng nghiệp 1.1. Những khái niệm cơ bản 1.2. Các phương pháp biểu diễn hàm logic 1.3. Các phương pháp tối thiểu hoá hàm logic 1.4. Các thiết bị điều khiển 1.5. Một số mạch điều khiển dùng Rơle 6/14/2021 3:36 PM BMC-K.DIENTU 2
  3. 1.1. Những khái niệm cơ bản 1.1.1. Khái niệm về logic hai trạng thái 1.1.2. Các hàm logic cơ bản 1.1.3. Các phép tính cơ bản 1.1.4. Tính chất và một số hệ thức cơ bản 6/14/2021 3:36 PM BMC-K.DIENTU 3
  4. 1.1. Những khái niệm cơ bản 1.1.1. Khái niệm về logic hai trạng thái Trong cuộc sống các sự vật và hiện tượng thể ở hai trạng thái như: sạch và bẩn, đắt và rẻ, giỏi và dốt, tốt và xấu Trong kỹ thuật có khái niệm về hai trạng thái: đóng và cắt như đóng điện và cắt điện, đóng máy và ngừng máy 6/14/2021 3:36 PM BMC-K.DIENTU 4
  5. Trong toán học ta dùng hai giá trị: 0 và 1, ta gọi các giá trị 0 hoặc 1 đó là các giá trị logic. Các nhà bác học đã xây dựng các cơ sở toán học để tính toán các hàm và các biến chỉ lấy hai giá trị 0 và 1 này, hàm và biến đó được gọi là hàm và biến logic, cơ sở toán học để tính toán hàm và biến logic gọi là đại số logic cũng có tên là đại số Boole. 6/14/2021 3:36 PM BMC-K.DIENTU 5
  6. 1.1.2. Các hàm logic cơ bản Một hàm y = f (x1,x 2 , ,x n )với các biến x1, x2, xn chỉ nhận hai giá trị: 0 hoặc 1 và hàm y cũng chỉ nhận hai giá trị: 0 hoặc 1 thì gọi là hàm logic. 1.1.2.1. Hàm logic một biến: y = f (x) Với biến x sẽ nhận hai giá trị: 0 hoặc 1, nên hàm y có 4 khả năng hay thường gọi là 4 hàm y0, y1, y2, y3. Các khả năng và các ký hiệu mạch rơle và điện tử của hàm một biến như trong bảng 1.1. 6/14/2021 3:36 PM BMC-K.DIENTU 6
  7. 6/14/2021 3:36 PM BMC-K.DIENTU 7
  8. 1.1.2.2. Hàm logic hai biến y = f (x1,x 2 ) Với hai biến logic x1, x2, mỗi biến nhận hai giá trị 0 và 1, như vậy có 16 tổ hợp logic tạo thành 16 hàm. Các hàm này được thể hiện trên bảng1.2. 6/14/2021 3:36 PM BMC-K.DIENTU 8
  9. 6/14/2021 3:36 PM BMC-K.DIENTU 9
  10. 6/14/2021 3:36 PM BMC-K.DIENTU 10
  11. 6/14/2021 3:36 PM BMC-K.DIENTU 11
  12. 6/14/2021 3:36 PM BMC-K.DIENTU 12
  13. 1.1.2.3. Hàm logic n biến y = f (x1,x 2 , ,x n ) Với hàm logic n biến, mỗi biến nhận một trong hai giá trị 0 hoặc 1 nên ta có 2n tổ hợp biến, mỗi tổ hợp biến lại nhận hai giá trị 0 hoặc 1, do vậy số hàm logic tổng là: n Ta thấy: 22 1 biến có 4 khả năng tạo hàm, 2 biến có 16 khả năng tạo hàm, thì 3 biến có 256 khả năng tạo hàm, như vậy, khi số biến tăng thì số hàm có khả năng tạo thành rất lớn 6/14/2021 3:36 PM BMC-K.DIENTU 13
  14. 1.1.3. Các phép tính cơ bản Phép phủ định (đảo): ký hiệu bằng dấu “-” phía trên ký hiệu của biến. Phép cộng (tuyển): ký hiệu bằng dấu “+” (song song) Phép nhân (hội): ký hiệu bằng dấu “.” (nối tiếp). 6/14/2021 3:36 PM BMC-K.DIENTU 14
  15. 1.1.4. Tính chất và một số hệ thức cơ bản 1.1.4.1. Các tính chất Tính chất của đại số logic được thể hiện ở bốn luật cơ bản là: + luật hoán vị, + luật kết hợp, + luật phân phối + luật nghịch đảo. 6/14/2021 3:36 PM BMC-K.DIENTU 15
  16. + luật hoán vị x1 + x 2 = x 2 + x1 x1.x 2 = x 2.x1 + luật kết hợp x1 + x 2 + x3 = (x1 + x 2 ) + x3 = x1 + (x 2 + x3 ) x1.x 2.x3 = (x1.x 2 ).x3 = x1.(x 2.x3 ) + luật phân phối (x1 + x 2 ).x3 = x1.x3 + x 2.x3 x1 + x 2.x3 = (x1 + x 2 ).(x1 + x3 ) Kiểm tra tính đúng đắn của luật phân phối 6/14/2021 3:36 PM BMC-K.DIENTU 16
  17. 6/14/2021 3:36 PM BMC-K.DIENTU 17
  18. 6/14/2021 3:36 PM BMC-K.DIENTU 18
  19. + Luật nghịch đảo tổng quát: (định lý De Morgan) x1.x 2.x3 = x1 + x 2 + x3 + x1 + x 2 + x3 + = x1.x 2.x3 6/14/2021 3:36 PM BMC-K.DIENTU 19
  20. 1.1.4.2. Các hệ thức cơ bản Một số hệ thức cơ bản thường dùng trong đại số logic được cho ở bảng 1.5: 6/14/2021 3:36 PM BMC-K.DIENTU 20
  21. 1.2. Các phương pháp biểu diễn hàm logic 1.2.1. Phương pháp biểu diễn bằng bảng trạng thái 1.2.2. Phương pháp biểu diễn hình học 1.2.3. Phương pháp biểu diễn bằng biểu thức đại số 1.2.4. Phương pháp biểu diễn bằng bìa Karnaugh 6/14/2021 3:36 PM BMC-K.DIENTU 21
  22. 6/14/2021 3:36 PM BMC-K.DIENTU 22
  23. 1.2.2.Phương pháp biểu diễn hình học + Hàm n biến được biểu diễn trong không gian n chiều, + tổ hợp biến được biểu diễn thành một điểm trong không gian. + Phương pháp này rất phức tạp khi số biến lớn nên ít dùng. 6/14/2021 3:36 PM BMC-K.DIENTU 23
  24. 1.2.3. Biểu diễn bằng biểu thức đại số Một hàm logic n biến bất kỳ bao giờ cũng có thể biểu diễn thành các hàm tổng chuẩn đầy đủ và tích chuẩn đầy đủ. + Hàm tổng chuẩn là hàm chưa tổng các tích mà mỗi tích có đủ tất cả các biến của hàm. Ví dụ: f = x1.x 2.x3 + x1.x 2.x3 + x1.x 2.x3 + x1.x 2.x3 + Hàm tích chuẩn là hàm chưa tích các tổng mà mỗi tổng đều có đủ tất cả các biến của hàm. Ví dụ: f = (x1 + x 2 + x3 )(x1 + x 2 + x3 )(x1 + x 2 + x3 )(x1 + x 2 + x3 ) 6/14/2021 3:36 PM BMC-K.DIENTU 24
  25. 1.2.4. Biểu diễn bằng bảng Karnaugh (bìa canô) Nguyên tắc xây dựng bảng Karnaugh là: Để biểu diễn hàm logic n biến cần thành lập một bảng có 2n ô, mỗi ô tương ứng với một tổ hợp biến. Đánh số thứ tự các ô trong bảng tương ứng với thứ tự các tổ hợp biến. Các ô cạnh nhau hoặc đối xứng nhau chỉ cho phép khác nhau về giá trị của 1 biến. Trong các ô ghi giá trị của hàm tương ứng với giá trị tổ hợp biến. 6/14/2021 3:36 PM BMC-K.DIENTU 25
  26. Ví dụ : bảng Karnaugh cho hàm ba biến trên như bảng 1.7 sau: 6/14/2021 3:36 PM BMC-K.DIENTU 26
  27. 1.3. Các phương pháp tối thiểu hoá hàm logic Phải quan tâm đến vấn đề tối thiểu hoá hàm logic. Bởi vì: + Cùng một giá trị hàm logic có thể có nhiều hàm khác nhau, nhiều cách biểu diễn khác nhau, + Nhưng chỉ tồn tại một cách biểu diễn gọn nhất, tối ưu về số biến và số số hạng hay thừa số được gọi là dạng tối thiểu. Tối thiểu hoá hàm logic mang ý nghĩa kinh tế và kỹ thuật lớn. 6/14/2021 3:36 PM BMC-K.DIENTU 27
  28. Ví dụ: Hai sơ đồ hình 1.3 đều có chức năng như nhau. x 1 p x = x x 2 1 2 y p y a, b, Hình 1.3 Có hai nhóm phương pháp là: Phương pháp biến đổi đại số Phương pháp dùng thuật toán. 6/14/2021 3:36 PM BMC-K.DIENTU 28
  29. 1.3.1.Phương pháp tối thiểu hoá hàm logic bằng biến đổi đại số ở phương pháp này ta phải dựa vào các tính chất và các hệ thức cơ bản của đại số logic để thực hiện tối giản các hàm logic. Nhưng do tính trực quan của phương pháp nên nhiều khi kết quả đưa ra vẫn không khẳng định rõ được là đã tối thiểu hay chưa. Như vậy, đây không phải là phương pháp chặt chẽ để cho phép tự động hoá quá trình tối thiểu hoá. Ví dụ: cho hàm: f= x1 x 2 + x 1 x 2 + x 1 x 2 =(xx1 2 + xx) 1 2 + (xx 1 2 + xx) 1 2 =x(x2 1 + x) 1 + x(x 1 2 + x) 2 = x 1 + x 2 6/14/2021 3:36 PM BMC-K.DIENTU 29
  30. 1.3.2.Phương pháp tối thiểu hoá hàm logic dùng thuật toán Phương pháp dùng bảng Karnaugh: Đây là phương pháp thông dụng và đơn giản nhất, nhưng chỉ tiến hành được với hệ có số biến. Phương pháp Quine Mc. Cluskey: Đây là phương pháp có tính tổng quát, cho phép tối thiểu hoá mọi hàm logic với số lượng biến vào lớn 6/14/2021 3:36 PM BMC-K.DIENTU 30
  31. 1.4. Các thiết bị điều khiển Để điều khiển sự làm việc của các thiết bị cần phải có các thiết bị điều khiển. Để đóng cắt không thường xuyên ta thường dùng áptômát. áptômát là thiết bị đóng cắt bằng tay có bộ phận bảo vệ quá tải. Để đóng cắt thường xuyên ta dùng công tắc tơ (khởi động từ), công tắc tơ tác dụng nhờ lực hút điện từ. 6/14/2021 3:36 PM BMC-K.DIENTU 31
  32. Để bảo vệ ta dùng các rơ le, tuỳ theo nguyên lý tác động người ta chế tạo nhiều loại thiết bị điều khiển khác nhau như rơle dòng điện, rơle điện áp, rơle thời gian Tuỳ theo trạng thái tiếp điểm người ta chia ra các loại tiếp điểm khác nhau. Một số ký hiệu thường gặp như bảng 2.1. 6/14/2021 3:36 PM BMC-K.DIENTU 32
  33. 6/14/2021 3:36 PM BMC-K.DIENTU 33
  34. 1.5. Các sơ đồ khống chế động cơ rôto lồng sóc 1.5.1. Sơ đồ khống chế đơn giản A B C KĐ D T N5 RN T 1 RN2 CD T4 KĐN T5 N T1 T2 T3 N1 N2 N3 N4 RN2 RN1 ĐC Hình 2.1 6/14/2021 3:36 PM BMC-K.DIENTU 34
  35. 1.5.2. Khống chế động có lồng sóc kiểu đổi nối Υ/Δ có đảo chiều KĐT 1 KĐN D 1 N 5 T A B C T4 KĐN2 N N Δ S1 KĐT2 4 T5 T1 1 1 N T Tg1 Δ 6 5 S N Tg2 S 6 5 Δ ĐC Δ 4 Δ 6 Tg Hình 2.3 6/14/2021 3:36 PM BMC-K.DIENTU 35
  36. 1.5.3. Khởi động động cơ rôto dây quấn theo nguyên tắc thời gian D K1 K2 K3 KĐ RN RN 2 1 K K4 RN2 RN1 K 2K 5 3 1Tg ĐC 1Tg 1K 2K1 2K2 1K3 R1 2Tg 1K1 1K 2 2Tg R2 2K 2K4 Hình 2.4 6/14/2021 3:36 PM BMC-K.DIENTU 36
  37. 1.5.4. Khống chế động cơ điện một chiều - + + - KĐ 1K 2K1 1 D RN K K r1 r K1 2 ĐC RN 2 K3 1Tg 2Tg Rh H1 3Tg1 1K 1K2 2Tg1 a, 2K K 4 3Tg 1Tg 1 H b, Hình 2.6 6/14/2021 3:36 PM BMC-K.DIENTU 37
  38. 1.5.5 Công nghệ cắt giấy 6/14/2021 3:36 PM BMC-K.DIENTU 38
  39. 1.5.5 Lựa chọn encoder 6/14/2021 3:36 PM BMC-K.DIENTU 39
  40. 1.5.5 Công nghệ đóng gói sản phẩm 6/14/2021 3:36 PM BMC-K.DIENTU 40
  41. 1.5.5 Công nghệ đóng gói sản phẩm 6/14/2021 3:36 PM BMC-K.DIENTU 41
  42. 1.5.5 Công nghệ đục lỗ 6/14/2021 3:36 PM BMC-K.DIENTU 42
  43. 1.5.5 Sử dụng sensor 6/14/2021 3:36 PM BMC-K.DIENTU 43
  44. 1.5.5 Sử dụng sensor 6/14/2021 3:36 PM BMC-K.DIENTU 44
  45. 1.5.5 Sử dụng sensor 6/14/2021 3:36 PM BMC-K.DIENTU 45
  46. 1.5.5 Sử dụng sensor 6/14/2021 3:36 PM BMC-K.DIENTU 46
  47. 1.5.5 Sử dụng sensor 6/14/2021 3:36 PM BMC-K.DIENTU 47
  48. 1.5.5 Sử dụng sensor 6/14/2021 3:36 PM BMC-K.DIENTU 48
  49. 1.5.5 Sử dụng sensor 6/14/2021 3:36 PM BMC-K.DIENTU 49
  50. 1.5.5 Sử dụng sensor 6/14/2021 3:36 PM BMC-K.DIENTU 50
  51. 1.5.5 Sử dụng sensor 6/14/2021 3:36 PM BMC-K.DIENTU 51
  52. 1.5.5 Sử dụng sensor 6/14/2021 3:36 PM BMC-K.DIENTU 52
  53. 1.5.5 Điều khiển cửa tự động 1. Nguyên lý hoạt động 6/14/2021 3:36 PM BMC-K.DIENTU 53
  54. 1.5.5 Điều khiển cửa tự động 2. Mạch điều khiển dùng rơle 6/14/2021 3:36 PM BMC-K.DIENTU 54
  55. 1.5.8. Phân tích mô hình điều khiển máy trộn liệu 6/14/2021 3:36 PM BMC-K.DIENTU 55
  56. 1.5.9. Phân tích mô hình điều khiển đèn giao thông 6/14/2021 3:36 PM BMC-K.DIENTU 56
  57. 1.5.10. Phân tích mô hình tay máy “gắp – đặt” 6/14/2021 3:36 PM BMC-K.DIENTU 57
  58. 1.5.10. Phân tích mô hình tay máy “gắp – đặt” Cánh tay máy thực hiện gắp vật trên băng chuyền A bỏ sang băng chuyền B. Trước khi xuất phát, vị trí của cánh tay ở vị trí băng chuyền B (S1 tác động). Ấn nút Start → Cánh tay quay ngược chiều kim đồng hồ → S2 tác động → Dừng quay, băng chuyền A hoạt động → S3 tác động → Dừng băng chuyền A, gắp vật (A5 = 1) → S4 tác động → Cánh tay quay cùng chiều kim đồng hồ → S1 tác động → Dừng Quay, nhả vật (A5 = 0; S4 = 0); Sau đó thực hiện lặp lại hành trình như trên. Khi có sự cố bất thường xảy ra, ấn Stop → Dừng hệ thống; sau khi khắc phục xong sự cố → Ấn Reset → Cánh tay tự động quay về lại vị trí xuất phát ban đầu và dừng tại đây. 6/14/2021 3:36 PM BMC-K.DIENTU 58
  59. 1.5.11. Phân tích mô hình thang máy 22 1 21 2 20 8 19 3 4 S4.0 18 6 S4.1 5 17 S3.2 16 S3.0 7 S3.1 6 S2.2 8 S2.0 S2.1 15 Bµn phÝm cabin Bµn phÝm tÇng 6 S1.2 14 S1.0 3 4 13 9 1 2 12 10 6/14/2021 3:36 PM11 BMC-K.DIENTU 59
  60. 1.5.11. Phân tích mô hình thang máy Buồng thang S,v, a, Mở máy Chế độ ổn định Hãm xuống Đến Hãm tốc độ thấp tầng dừng Mức dừng Dừng v a S t a a Mức đặt cảm biến 6/14/2021 3:36 PM BMC-K.DIENTU 60
  61. Bài 2: Khái niệm về PLC 2.1 PLC là gi? 2.2 Tại sao phải sử dụng PLC 2.3 Thay thế các mạch điều khiển dùng rơle bằng PLC 2.4 Hệ thống đầu vào và ra của PLC 2.5 Giới thiệu các loại PLC thông dụng 2.6 Tài liệu tham khảo 6/14/2021 3:36 PM BMC-K.DIENTU 61
  62. 2.1. PLC là gì? • PLC, viết tắt của Programmable Logic Control , là thiết bị điều khiển logic lập trình được, hay khả trình, cho phép thực hiện linh hoạt các thuật toán điều khiển logic thông qua một ngôn ngữ lập trình. • Sự phát triển của kỹ thuật điều khiển tự động hiện đại và công nghệ điều khiển logic khả trình dựa trên cơ sở phát triển của tin học mà cụ thể là sự phát triển của kỹ thuật máy tính. • Kỹ thuật điều khiển logic khả trình PLC được phát triển từ những năm 1968 -1970. Trong gia đoạn đầu các thiết bị khả trình yêu cầu người sử dụng phải có kỹ thuật điện tử, phải có trình độ cao. • Ngày nay các thiết bị PLC đã phát triển mạnh mẽ, có mức độ phổ cập cao và càng dễ sử dụng. 6/14/2021 3:36 PM BMC-K.DIENTU 62
  63. • Các nhà thiết kế PLC phải lập trình sẵn sao cho chương trình điều khiển có thể nhập bằng cách sử dụng ngôn ngữ đơn giản. Người vận hành nhập chương trình vào PLC. Thiết bị điều khiển PLC sẽ giám sát thực hiện các quy tắc điều khiển đã được lập trình. • Các PLC tương tự máy tính, nhưng máy tính được tối ưu hoá cho các tác vụ tính toán và hiển thị, còn PLC được chuyên biệt cho các tác vụ điều khiển và môi trường công nghiệp. Vì vậy PLC được thiết kế bền, có sẵn giao diện vào ra, được lập trình dễ dàng với ngôn ngữ điều khiển dễ hiểu, chủ yếu giải quyết các phép toán logic và chuyển mạch. 6/14/2021 3:36 PM BMC-K.DIENTU 63
  64. • Về cơ bản chức năng của bộ điều khiển logic PLC cũng giống như chức năng của bộ điều khiển thiết kế trên cơ sở các rơle công tắc tơ hoặc trên cơ sở các khối điện tử. 6/14/2021 3:36 PM BMC-K.DIENTU 64
  65. 2.2. Tại sao phải sử dụng PLC Đánh giá ưu điểm của PLC + Chuẩn bị vào hoạt động nhanh + Độ tin cậy cao + Dễ dàng thay đổi chương trình + Cài đặt các thuật toán phức tạp + Khả năng tái tạo + Tiết kiệm không gian + Khả năng truyền thông + Có nhiều chức năng. 6/14/2021 3:36 PM BMC-K.DIENTU 65
  66. 2.2. Tại sao phải sử dụng PLC Nhược điểm của PLC + Giá thành cao (phần cứng + phần mềm) + Đòi hỏi người sử dụng phải có chuyên môn 6/14/2021 3:36 PM BMC-K.DIENTU 66
  67. Về giá trị kinh tế Khi xét về giá trị kinh tế của PLC ta phải đề cập đến số lượng đầu ra và đầu vào. Giá cả Hệ rơle Quan hệ về giá Hệ PLC thành với số lượng đầu vào/ra có dạng như hình 3.17. Số lượng vào/ra Hình 3.17 6/14/2021 3:36 PM BMC-K.DIENTU 67
  68. • Khi tính đến giá cả của PLC thì phải kể đến các bộ phân phụ như thiết bị lập trình, máy in, băng ghi cả việc đào tạo nhân viên kỹ thuật. Nói chung những phần mềm để thiết kế lập trình cho các mục đích đặc biệt là khá đắt. • Ngày nay nhiều hãng chế tạo PLC đã cung cấp chọn bộ đóng gói phần mềm đã được thử nghiệm, nhưng việc thay thế, sửa đổi các phần mềm là nhu cầu không thể tránh khỏi, do đó, vẫn cần thiết phải có kỹ năng phần mềm. 6/14/2021 3:36 PM BMC-K.DIENTU 68
  69. Phân bố giá cả cho việc lắp đặt một PLC thường như sau: + 50% cho phần cứngcủa PLC + 10% cho thiết kế khuân khổ chương trình + 20% cho soạn thảo và lập trình + 15% cho chạy thử nghiệm + 5% cho tài liệu. Việc lắp đặt một PLC tiếp theo chỉ bằng khoảng 1/2 giá thành của bộ đầu tiên, nghĩa là hầu như chỉ còn chi phí phần cứng. 6/14/2021 3:36 PM BMC-K.DIENTU 69
  70. 2.3 Cấu trúc cơ bản của một bộ PLC 6/14/2021 3:36 PM BMC-K.DIENTU 70
  71. 2.3 Cấu trúc cơ bản của một bộ PLC 6/14/2021 3:36 PM BMC-K.DIENTU 71
  72. 2.3 Cấu trúc cơ bản của một bộ PLC 6/14/2021 3:36 PM BMC-K.DIENTU 72
  73. 6/14/2021 3:36 PM BMC-K.DIENTU 73
  74. 6/14/2021 3:36 PM BMC-K.DIENTU 74
  75. 6/14/2021 3:36 PM BMC-K.DIENTU 75
  76. PLC Siemens CPU 224 6/14/2021 3:36 PM BMC-K.DIENTU 76
  77. 6/14/2021 3:36 PM BMC-K.DIENTU 77
  78. 6/14/2021 3:36 PM BMC-K.DIENTU 78
  79. 6/14/2021 3:36 PM BMC-K.DIENTU 79
  80. PLC Omron 6/14/2021 3:36 PM BMC-K.DIENTU 80
  81. PLC PLC 6/14/2021 3:36 PM BMC-K.DIENTU 81
  82. PLC 6/14/2021 3:36 PM BMC-K.DIENTU 82
  83. 2.5 Giới thiệu về các loại PLC thông dụng 2.5.1 Bộ điều khiển PLC OMRON - CPM1A 6/14/2021 3:36 PM BMC-K.DIENTU 83
  84. 2.5.1 Bộ điều khiển PLC OMRON - CPM1A 6/14/2021 3:36 PM BMC-K.DIENTU 84
  85. 2.5.1 Bộ điều khiển PLC OMRON - CPM1A 6/14/2021 3:36 PM BMC-K.DIENTU 85
  86. 2.5.1 Bộ điều khiển PLC OMRON - CPM1A 6/14/2021 3:36 PM BMC-K.DIENTU 86
  87. 2.5.1 Bộ điều khiển PLC OMRON - CPM1A 6/14/2021 3:36 PM BMC-K.DIENTU 87
  88. 2.5.1 Bộ điều khiển PLC OMRON - CPM1A 6/14/2021 3:36 PM BMC-K.DIENTU 88
  89. 2.5.2 Bộ điều khiển PLC OMRON – CJ1M 6/14/2021 3:36 PM BMC-K.DIENTU 89
  90. 2.5.2 Bộ điều khiển PLC OMRON – CJ1M 6/14/2021 3:36 PM BMC-K.DIENTU 90
  91. 2.5.2 Bộ điều khiển PLC OMRON – CJ1M 6/14/2021 3:36 PM BMC-K.DIENTU 91
  92. 2.5.2 Bộ điều khiển PLC OMRON – CJ1M 6/14/2021 3:36 PM BMC-K.DIENTU 92
  93. 2.5.2 Bộ điều khiển PLC OMRON – CJ1M 6/14/2021 3:36 PM BMC-K.DIENTU 93
  94. 2.5.2 Bộ điều khiển PLC OMRON – CJ1M 6/14/2021 3:36 PM BMC-K.DIENTU 94
  95. 2.5.2 Bộ điều khiển PLC OMRON – CJ1M 6/14/2021 3:36 PM BMC-K.DIENTU 95
  96. 2.5.3 Bộ điều khiển ZEN 6/14/2021 3:36 PM BMC-K.DIENTU 96
  97. 2.5.3 Bộ điều khiển ZEN 6/14/2021 3:36 PM BMC-K.DIENTU 97
  98. 2.5.3 Bộ điều khiển ZEN 6/14/2021 3:36 PM BMC-K.DIENTU 98
  99. 2.5.3 Bộ điều khiển ZEN 6/14/2021 3:36 PM BMC-K.DIENTU 99
  100. 2.5.3 Bộ điều khiển ZEN 6/14/2021 3:36 PM BMC-K.DIENTU 100
  101. 2.5.3 Bộ điều khiển ZEN 6/14/2021 3:36 PM BMC-K.DIENTU 101
  102. 2.5.4 Bộ điều khiển PLC S7-200 6/14/2021 3:36 PM BMC-K.DIENTU 102
  103. 2.5.4 Bộ điều khiển PLC S7-200 6/14/2021 3:36 PM BMC-K.DIENTU 103
  104. 2.5.4 Bộ điều khiển PLC S7-200 • Micro PLC cho phép tự động hóa tối đa với chi phí tối thiểu • Cài đặt, lập trình và vận hành rất đơn giản • Mạnh, có khả năng tích hợp trên quy mô lớn, tiết kiệm không gian lắp đặt, có tác động nhanh. • Có thể sử dụng cho những công việc từ đơn giản đến phức tạp • Tất cả các CPU đều có thể sử dụng độc lập, trong mạng và trong hệ thống phân tán • Thích hợp cho ứng dụng mà trước kia không làm được • Nổi bật là đặc tính thời gian thực hiện và truyền thông mạnh (PPI, Profibus-DP) 6/14/2021 3:36 PM BMC-K.DIENTU 104
  105. 2.5.4 Bộ điều khiển PLC S7-200 6/14/2021 3:36 PM BMC-K.DIENTU 105
  106. 2.5.4 Bộ điều khiển PLC S7-200 6/14/2021 3:36 PM BMC-K.DIENTU 106
  107. 2.5.4 Bộ điều khiển PLC S7-200 6/14/2021 3:36 PM BMC-K.DIENTU 107
  108. 2.5.4 Bộ điều khiển PLC S7-300 6/14/2021 3:36 PM BMC-K.DIENTU 108
  109. 2.5.4 Bộ điều khiển PLC S7-300 6/14/2021 3:36 PM BMC-K.DIENTU 109
  110. 2.5.4 Bộ điều khiển PLC S7-300 • Là hệ thống PLC modul hóa cỡ nhỏ, có dải sản phẩm từ mức trung bình đến cao cấp • Tất cả các modul đều thích hợp cho các hệ thống tự động hóa • Sử dụng linh động nhờ cấu trúc phân tán và khả năng nối mạng linh hoạt • Dễ dàng mở rộng hệ thống khi cần thiết • Đầy sức mạnh nhờ kết hợp nhiều tình năng 6/14/2021 3:36 PM BMC-K.DIENTU 110
  111. 2.5.4 Bộ điều khiển PLC S7-400 6/14/2021 3:36 PM BMC-K.DIENTU 111
  112. 2.5.4 Bộ điều khiển PLC S7-400 6/14/2021 3:36 PM BMC-K.DIENTU 112
  113. 2.5.4 Bộ điều khiển PLC S7-400 • Dòng PLC mạnh để giải quyết các bài toán tự động từ mức trung bình đến mức cao • Giải pháp tốt nhất cho các công việc đòi hỏi khắt khe nhất • Hệ thống modul toàn diện và các CPU thích nghi tối ưu với các công việc tự động hóa • Linh hoạt thông qua việc sử dụng đơn giản các cấu trúc phân tán và khả năng truyền thông rộng • Thân thiện với người sử dụng, không phức tạp, thiết kế không cần quạt gió • Có khả năng mở rộng mà không gây sự cố 6/14/2021 3:36 PM BMC-K.DIENTU 113
  114. 2.5.4 Bộ điều khiển Logo! Logo! OBA4 6/14/2021 3:36 PM BMC-K.DIENTU 114
  115. 2.5.4 Bộ điều khiển Logo! 6/14/2021 3:36 PM BMC-K.DIENTU 115
  116. 2.5.4 Bộ điều khiển Logo! 6/14/2021 3:36 PM BMC-K.DIENTU 116
  117. 2.5.4 Bộ điều khiển Logo! 6/14/2021 3:36 PM BMC-K.DIENTU 117
  118. 2.6 Tài liệu tham khảo 1. Tu dong hoa voi Simatic s7-200. PXMinh, NguyenDPhuoc 2. Tu dong hoa voi Simatic s7-300. PXMinh, NguyenDPhuoc 3. Dieu khien Logic va ung dung. Nguyen Trong Thuan 4. Ung dung PLC Siemens va Moeller trong tu dong hoa. Nguyen Tan Phuoc (tim hieu ve LOGO!) 5. Manuals Micro Automation S7-200/LOGO!: Micro Automation - Tai lieu tra nhanh. Catalog ST-M/V.10.2004 echdoku.htm 6. PLC S7-300,400 San pham cho tu dong hoa tich hop toan dien. Catalog ST.V.2005 Documents: Start/simatic/documention/english/ 7. PLC Omron, sensors (documents) 8. Dien dan dien tu 6/14/2021 3:36 PM BMC-K.DIENTU 118
  119. Bài 3: Bộ điều khiển PLC - S7-200 3.1 Cấu hỡnh cứng 3.2 Cỏc module vào/ra mở rộng 3.3 Cấu trỳc bộ nhớ 3.3.1 Vựng nhớ chương trỡnh 3.3.2 Vựng tham số 3.3.3 Vựng Dữ liệu 3.3.4 Vựng đối tượng 3.4 Thực hiện chương trỡnh 3.5 Cấu trỳc chương trỡnh của S7-200 6/14/2021 3:36 PM BMC-K.DIENTU 119
  120. 3.1. Cấu tạo của PLC - S7-200 • PLC Step 7 thuộc họ Simatic do hãng Siemens sản xuất. Đây là loại PLC hỗn hợp vừa đơn khối vừa đa khối. • Cấu tạo cơ bản của loại PLC này là một đơn vị cơ bản sau đó có thể ghép thêm các module mở rộng về phía bên phải, có các module mở rộng tiêu chuẩn. 6/14/2021 3:36 PM BMC-K.DIENTU 120
  121. 3.1. Cấu tạo của PLC - S7-200 6/14/2021 3:36 PM BMC-K.DIENTU 121
  122. 6/14/2021 3:36 PM BMC-K.DIENTU 122
  123. Đơn vị cơ bản của PLC S7-200 (CPU 314) như hình 6.1 1. Chân cắm cổng ra. 2. Chân cắm cổng vào. 3. Các đèn trạng thái: SF (đèn đỏ): Báo hiệu hệ thống bị hỏng. RUN (đèn xanh): Chỉ định rằng PLC đang ở chế độ làm việc. STOP (đèn vàng): Chỉ định rằng PLC đang ở chế độ dừng. 6/14/2021 3:36 PM BMC-K.DIENTU 123
  124. 4. Đèn xanh ở cổng vào chỉ định trạng thái tức thời của cổng vào. 5. Cổng truyền thông. 6. Đèn xanh ở cổng ra chỉ định trạng thái tức thời của cổng ra. 7. Công tắc. Chế độ làm việc: Công tắc chọn chế độ làm việc có ba vị trí: 6/14/2021 3:36 PM BMC-K.DIENTU 124
  125. • RUN: cho phép PLC thực hiện chương trình trong bộ nhớ. PLC sẽ tự chuyển về trạng thái STOP khi máy có sự cố, hoặc trong chương trình gặp lệnh STOP, do đó khi chạy nên quan sát trạng thái thực của PLC theo đèn báo. • STOP: cưỡng bức PLC dừng công việc đang thực hiện, chuyển về trạng thái nghỉ. ở chế độ này PLC cho phép hiệu chỉnh lại chương trình hoặc nạp một chương trình mới. • TERM: cho phép PLC tự quyết định một chế độ làm việc (hoặc RUN hoặc STOP). 6/14/2021 3:36 PM BMC-K.DIENTU 125
  126. • Chỉnh định tương tự: Núm điều chỉnh tương tự đặt dưới nắp đậy cạnh cổng ra, núm điều chỉnh tương tự cho phép điều chỉnh tín hiệu tương tự, góc quay được 2700. • Pin và nguồn nuôi bộ nhớ: Nguồn pin được tự động chuyển sang trạng thái tích cực khi dung lượng nhớ bị cạn kiệt và nó thay thế để dữ liệu không bị mất. • Cổng truyền thông: S7-200 sử dụng cổng truyền thông nối tiếp RS 485 với phích cắm 9 chân để phục vụ cho việc ghép nối với thiết bị lập trình hoặc với các PLC khác. Tốc độ truyền cho máy lập trình kiểu PPI là 9600 boud. 6/14/2021 3:36 PM BMC-K.DIENTU 126
  127. Truyền thông PC - PLC 6/14/2021 3:36 PM BMC-K.DIENTU 127
  128. Truyền thông PC - PLC 6/14/2021 3:36 PM BMC-K.DIENTU 128
  129. 3.2. Các module vào/ra mở rộng • Có thể mở rộng đơn vị cơ bản bằng cách gá thêm các module ngoài. • Tối đa có thể gá thêm 7 module vào ra qua 7 vị trí có sẵn trên Panen về phía phải. • Cách gán địa chỉ được thể hiện trên hình 6.3. 6/14/2021 3:36 PM BMC-K.DIENTU 129
  130. 6/14/2021 3:36 PM BMC-K.DIENTU 130
  131. Kết nối modul mở rộng 6/14/2021 3:36 PM BMC-K.DIENTU 131
  132. Kết nối modul mở rộng 6/14/2021 3:36 PM BMC-K.DIENTU 132
  133. Đấu nối modul mở rộng DI/DO 6/14/2021 3:36 PM BMC-K.DIENTU 133
  134. 6/14/2021 3:36 PM BMC-K.DIENTU 134
  135. 6/14/2021 3:36 PM BMC-K.DIENTU 135
  136. 6/14/2021 3:36 PM BMC-K.DIENTU 136
  137. 6/14/2021 3:36 PM BMC-K.DIENTU 137
  138. 6/14/2021 3:36 PM BMC-K.DIENTU 138
  139. Đấu nối modul mở rộng analog 6/14/2021 3:36 PM BMC-K.DIENTU 139
  140. 6/14/2021 3:36 PM BMC-K.DIENTU 140
  141. 6/14/2021 3:36 PM BMC-K.DIENTU 141
  142. Đấu nối modul đặc biệt 6/14/2021 3:36 PM BMC-K.DIENTU 142
  143. Đấu nối modul đặc biệt 6/14/2021 3:36 PM BMC-K.DIENTU 143
  144. 3.3. Cấu trúc bộ nhớ Bộ nhớ được chia thành 4 vùng với một tụ điện có nhiệm vụ duy trì dữ liệu trong một khoảng thời gian nhất định khi mất nguồn. 3.3.1. Vùng nhớ chương trình Vùng nhớ chương trình là miền bộ nhớ được sử dụng để lưu giữ các lệnh chương trình. Vùng này thuộc kiểu không đổi (non-volatile) đọc / ghi được. 3.3.2. Vùng tham số Vùng tham số lưu giữ các tham số như: từ khoá, địa chỉ trạm vùng này thuộc vùng không đổi đọc / ghi được. 6/14/2021 3:36 PM BMC-K.DIENTU 144
  145. 3.3.3. Vùng dữ liệu • Vùng dữ liệu để cất các dữ liệu của chương trình gồm kết quả của các phép tính, các hằng số trong chương trình vùng dữ liệu là miền nhớ động, có thể truy nhập theo từng bit, byte, từ (word) hoặc từ kép. • Vùng dữ liệu được chia thành các vùng nhớ nhỏ với các công dụng khác nhau đó là: 6/14/2021 3:36 PM BMC-K.DIENTU 145
  146. 6/14/2021 3:36 PM BMC-K.DIENTU 146
  147. Địa chỉ truy nhập được qui ước với công thức * Truy nhập theo bit Tên miền + địa chỉ byte.chỉ số bit. Ví dụ: V150.4 là địa chỉ bít số 4 của byte 150 thuộc miền V. * Truy nhập theo byte Tên miền + B và địa chỉ byte. Ví dụ: VB150 là địa chỉ byte 150 thuộc miền V. * Truy nhập theo word Tên miền + W và địa chỉ byte cao của từ. 6/14/2021 3:36 PM BMC-K.DIENTU 147
  148. Ví dụ: VW150 là địa chỉ từ đơn gồm hai byte 150 và 151 thuộc miền V, trong đó byte 150 có vai trò byte cao của từ. * Truy nhập theo từ kép: Tên miền + D và địa chỉ byte cao của từ. Ví dụ: VD150 là địa chỉ từ kép gồm bốn byte 150, 151, 152 và 153 thuộc miền V, trong đó byte 150 có vai trò byte cao, 153 có vai trò là byte thấp của từ kép. 6/14/2021 3:36 PM BMC-K.DIENTU 148
  149. 3.3.4. Vùng đối tượng • Vùng đối tượng để lưu giữ dữ liệu cho các đối tượng lập trình như các giá trị tức thời, giá trị đặt trước của bộ đếm, hay bộ thời gian. Dữ liệu kiểu đối tượng bao gồm các thanh ghi của bộ thời gian, bộ đếm, các bộ đếm cao tốc, bộ đệm tương tự và các thanh ghi AC. • Kiểu dữ liệu đối tượng bị hạn chế rất nhiều vì các dữ liệu kiểu đối tượng chỉ được ghi theo mục đích cần sử dụng của đối tượng đó. 6/14/2021 3:36 PM BMC-K.DIENTU 149
  150. 6/14/2021 3:36 PM BMC-K.DIENTU 150
  151. 3.4 Thực hiện chương trình 4. Chuyển dữ liệu từ bộ 1. Nhập dữ liệu từ TB đệm ảo ra thiết bị ngoại vi ngoại vi vào bộ đệm ảo 3. Truyền thông và kiểm tra 2. Thực hiện chương trình lỗi Hình 3.2 PLC thực hiện chương trình theo chu trình lặp. Mỗi vòng lặp được gọi là vòng quét (Scan). Khi thực hiện chương trình gặp lệnh Vào/ra ngay lập tức thì hệ thống sẽ dừng mọi công việc khác, ngay cả chương trình sử lý ngắt, để thực hiện lệnh này một cách trực tiếp với cổng vào/ra. 6/14/2021 3:36 PM BMC-K.DIENTU 151
  152. 3.5. Cấu trúc chương trình S7-200 • Các chương trình điều khiển với PLC S7-200 được viết có cấu trúc bao gồm chương trình chính (main program), sau đó đến các chương trình con. • Chương trình con là một bộ phận của chương trình, Có thể tự do trộn lẫn các chương trình con đằng sau chương trình chính • Chương trình xử lý ngắt là một bộ phận của chương trình thường được đặt sau chương trình con. 6/14/2021 3:36 PM BMC-K.DIENTU 152
  153. Main Program  MEND SBR 0 Chương trình con thứ nhất  RET SBR n Chương trình con thứ n +1  RET INT 0 Chương trình xử lý ngắt thứ nhất  RET INT n Chương trình xử lý ngắt thứ n +1  RETI Hình 6.4: Cấu trúc chương trình của S7-200 6/14/2021 3:36 PM BMC-K.DIENTU 153
  154. Bài 4: Ngôn ngữ lập trình PLC S7-200 4.1 Phương pháp lập trình 4.2 Bảng lệnh của S7-200 4.3 Toán hạng và giới hạn cho phép 4.4 Giới thiệu về phần mềm Microwin 4.5 Cú pháp hệ lệnh của S7-200 6/14/2021 3:36 PM BMC-K.DIENTU 154
  155. 4.1 Phương pháp lập trình Cách lập trình cho S7-200 nói riêng và PLC của SIEMENS nói chung dựa trên 2 phương pháp cơ bản: Phương pháp hình thang (Ladder Logic viết tắt là LAD) Phương pháp liệt kê lệnh (Statement List viết tắt STL) 6/14/2021 3:36 PM BMC-K.DIENTU 155
  156. 4 6/14/2021 3:36 PM BMC-K.DIENTU 156
  157. 4 6/14/2021 3:36 PM BMC-K.DIENTU 157
  158. 4 6/14/2021 3:36 PM BMC-K.DIENTU 158
  159. 4.2 Tập lệnh của S7-200 4.2 Tập lệnh của S7-200 6/14/2021 3:36 PM BMC-K.DIENTU 159
  160. 4.2 Tập lệnh của S7-200 6/14/2021 3:36 PM BMC-K.DIENTU 160
  161. 4.3 Toán hạng và giới hạn cho phép 6/14/2021 3:36 PM BMC-K.DIENTU 161
  162. 4.3 Toán hạng và giới hạn cho phép 6/14/2021 3:36 PM BMC-K.DIENTU 162
  163. 4.4 Giới thiệu về phần mềm Step7-Microwin 4.0 6/14/2021 3:36 PM BMC-K.DIENTU 163
  164. 4.5. Cú pháp hệ lệnh của S7-200 4.5.1. Lệnh vào/ ra: Lệnh vào: LD + Địa chỉ (Load): nạp giá trị logic địa chỉ sau câu lệnh vào đỉnh ngăn xếp, các bit cũ trong ngăn xếp được đẩy xuống 1 bit, thông tin cũ S8 mất. LDN + địa chỉ (Load Not): tương tự như trên chỉ khác nạp giá trị logic nghịch đảo. LDI + địa chỉ (Load Immediate) LDNI + địa chỉ (Load Not Immediate): Nạp tức thời giá trị logic có địa chỉ sau câu lệnh vào bit đầu tiên trong ngăn xếp, các bit cũ trong ngăn xếp được đẩy xuống 1 bit, thông tin cũ S8 mất. 6/14/2021 3:36 PM BMC-K.DIENTU 164
  165. 4.5.1. Lệnh vào / ra Lệnh ra: = + địa chỉ: sao chép giá trị logic từ đỉnh ngăn xếp đến địa chỉ sau câu lệnh. Giá trị đỉnh ngăn xếp giữ nguyên. = I + địa chỉ: sao chép tức thời giá trị logic từ đỉnh ngăn xếp đến địa chỉ sau câu lệnh. 6/14/2021 3:36 PM BMC-K.DIENTU 165
  166. 4.5.2. Lệnh thao tác logic A + địa chỉ: thực hiện phép toán “Và” giữa giá trị logic ở đỉnh ngăn xếp với giá trị logic có địa chỉ sau câu lệnh, kết quả ghi đè lên đỉnh của ngăn xếp. O + địa chỉ: thao tác tương tự như trên chỉ khác thực hiện phép toán “Hoặc”. AN + địa chỉ: ON + địa chỉ: tương tự như hai lệnh trên chỉ khác lấy giá trị logíc nghịch đảo của địa chỉ sau câu lệnh, thao tác với giá trị tại đỉnh ngăn xếp. 6/14/20216/14/2021 3:36 PM BMC-K.DIENTU 166
  167. 4.5.2. Lệnh thao tác logic AI + địa chỉ; OI + địa chỉ; ANI + địa chỉ; ONI + địa chỉ : Hoàn toàn tương tự như 4 lệnh trên, nhưng thực hiện tức thời phép toán logic giữa giá trị logic đỉnh ngăn xếp với giá trị logic có địa chỉ sau câu lệnh, kết quả ghi tại đỉnh của ngăn xếp. 6/14/20216/14/2021 3:36 PM BMC-K.DIENTU 167
  168. 4.5.3. Lệnh đặt logic S + địa chỉ (Set): Thực hiện phép đặt giá trị logic lên 1 của địa chỉ sau câu lệnh với điều kiện đỉnh ngăn xếp phải bằng 1. R + địa chỉ (Reset): Thực hiện xoá giá trị logíc của các điểm có địa chỉ sau câu lệnh với điều kiện đỉnh ngăn xếp bằng 1. 6/14/2021 3:36 PM BMC-K.DIENTU 168
  169. Ngoài ra còn thực hiện giữa các bít trên ngăn xếp: ALD (And Load): thực hiện phép toán “Và” giữa 2 bit đầu tiên của ngăn xếp, kết quả ghi lại đỉnh, các bít còn lại từ S2 được kéo lên 1 bit. OLD (Or Load): hoàn toàn tương tự như trên chỉ khác phép toán “Hoặc”. LPS (Logic Push): sao chép nội dung của bit đầu tiên vào bit thứ 2 của ngăn xếp, các bít còn lại đẩy xuống 1 bit, S8 cũ mất. LRD (Logic Read): lấy giá trị logic của bit thứ 2 ghi vào bit đầu tiên của ngăn xếp, giá trị S0 cũ mất, các bit còn lại giữ nguyên. LPP (Logic Pop): thực hiện kéo tất cả các bit trong ngăn xếp lên 1 bit S0 mất S8 chống. 6/14/2021 3:36 PM BMC-K.DIENTU 169
  170. 66/14/2021/14/2021 3:36 PM BMC-K.DIENTU 170
  171. 4.5.4. Ví dụ: 1. LÖnh LD vµ lÖnh A I 0.0 I 0.1 I 0.2 Q1.0 LD I 0.0 ( ) A I 0.1 A I 0.2 = Q 1.0 2. LÖnh AN LD I 0.0 I 0.0 I 0.1 I 0.2 Q1.0 ( ) AN I 0.1 A I 0.2 = Q 1.0 6/14/20216/14/2021 3:36 PM BMC-K.DIENTU 171
  172. 3. Lệnh O I 0.0 Q1.0 LD I 0.0 ( ) I 0.1 O I 0.1 O I 0.2 I 0.2 = Q 1.0 4. Lệnh ON I 0.0 Q1.0 ( ) LD I 0.0 I 0.1 ON I 0.1 I 0.2 O I 0.2 = Q 1.0 6/14/2021 3:36 PM BMC-K.DIENTU 172
  173. 5. Lệnh OLD LD I 0.0 I 0.0 I 0.1 Q1.0 ( ) A I 0.1 I 0.2 LD I 0.2 OLD = Q 1.0 6. Lệnh ALD LD I 0.0 I 0.0 I 0.1 Q1.0 ( ) LD I 0.1 I 0.2 O I 0.2 ALD = Q 1.0 6/14/2021 3:36 PM BMC-K.DIENTU 173
  174. 7. Lệnh LPS, LRD, LPP LD I 0.0 I 0.0 I 0.1 Q0.0 ( ) LPS I 0.2 LD I 0.1 O I 0.2 ALD I 0.3 Q0.1 = Q 0.0 ( ) LRD I 0.4 LD I 0.3 O I 0.4 I 0.5 Q0.2 ALD ( ) = Q 0.1 LPP A I 0.5 = Q 0.2 66/14/2021/14/2021 3:36 PM BMC-K.DIENTU 174
  175. Chú ý: Sơ đồ LAD ở trên không soạn thảo được với phần mềm hiện có, nó chỉ được dùng để mô tả mạch logic của chương trình STL tương ứng. Khi dùng các lệnh LPS, LRD, LPP bắt buộc phải viết trong STL. 6/14/2021 3:36 PM BMC-K.DIENTU 175
  176. 4.5.5. Các lệnh tiếp điểm đặc biệt 6/14/20216/14/2021 3:36 PM BMC-K.DIENTU 176
  177. 4.5.6 Các lệnh so sánh 6/14/2021 3:36 PM BMC-K.DIENTU 177
  178. 4.5.6 Các lệnh so sánh 66/14/2021/14/2021 3:36 PM BMC-K.DIENTU 178
  179. 4.5.7. Lập trình sử dụng Rơle thời gian (Timer) Với S7-200 có 2 loại rơle thời gian là: Rơle thời gian không nhớ kí hiệu: TON. Rơle thời gian có nhớ kí hiệu: TONR Với rơle thời gian không nhớ TON thời gian bắt đầu được tính từ khi đầu vào có sườn lên từ 0  1. Nếu thời gian tín hiệu vào tồn tại nhỏ hơn thời gian đặt thì số liệu thời gian tức thời trên thanh ghi 16 bit tự xoá về 0 vì vậy đầu ra dưới dạng bit không lật trạng thái, còn khi thời gian còn khi thời gian tồn tại tín hiệu đầu vào lớn hơn tín hiệu đặt thì đầu ra dạng bit lật trạng thái từ 0  1 và được xoá đi khi khi đầu vào bằng 0 vì vậy để xoá rơle thời gian dạng này có thể dùng tín hiệu vào về 0 hoặc dùng lệnh reset khi tín hiệu vào 0 về 0. 66/14/2021/14/2021 3:36 PM BMC-K.DIENTU 179
  180. Rơle thời gian có nhớ kí hiệu: TONR Với loại TONR khi có sườn lên của tín hiệu vào thì rơle được kích bắt đầu tính thời gian. Khi tín hiệu vào mất mà giá trị đếm được nhỏ hơn giá trị đặt thì số đếm lúc trước được lưu giữ lại đến khi có sườn lên tiếp theo là được đếm từ giá trị trước tăng lên đến khi giá trị đếm được lớn hơn hoặc bằng giá trị đặt đầu ra bit lật trạng thái vì vậy số đếm liên tục được tích luỹ do đó bắt buộc phải sử dụng lệnh reset để xoá. 6/14/20216/14/2021 3:36 PM BMC-K.DIENTU 180
  181. Ngoài ra còn được chế tạo các Rơle thời gian có độ phân giải khác nhau và cũng có địa chỉ cụ thể. Độ phân giải: 1ms Độ phân giải: 10ms Độ phân giải: 100ms Muốn xác định thời gian thực ta lấy số đếm đặt tại cửa kí hiệu là: PT nhân với độ phân giải vì vậy sai số xảy ra lớn nhất bằng độ phân giải. Số đếm thời gian ở cửa PT có thể là bằng hằng số đặt trước do chương trình kí hiệu là K. Nhưng giá trị đặt không được vượt quá 32767. Ngoài ra số đếm thời gian có thể chuyển từ các bộ nhớ 16 bit.VD: VW20; IW0, TW, CW 6/14/2021 3:36 PM BMC-K.DIENTU 181
  182. Ví dụ: 6/14/2021 3:36 PM BMC-K.DIENTU 182
  183. 6/14/2021 3:36 PM BMC-K.DIENTU 183
  184. 6/14/20216/14/2021 3:36 PM BMC-K.DIENTU 184
  185. 4.5.8. Lập trình sử dụng bộ đếm (Counter) 6/14/2021 3:36 PM BMC-K.DIENTU 185
  186. 4.5.8. Lập trình sử dụng bộ đếm (Counter) 6/14/2021 3:36 PM BMC-K.DIENTU 186
  187. 4.5.8. Lập trình sử dụng bộ đếm (Counter) 66/14/2021/14/2021 3:36 PM BMC-K.DIENTU 187
  188. 4.5.8. Lập trình sử dụng bộ đếm (Counter) 6/14/2021 3:36 PM BMC-K.DIENTU 188
  189. 4.5.9. Các lệnh làm việc với số học 6/14/2021 3:36 PM BMC-K.DIENTU 189
  190. 4.5.9. Các lệnh làm việc với số học 6/14/2021 3:36 PM BMC-K.DIENTU 190
  191. 4.5.94.5.9 Các Các lệnh lệnh làm làm việc việc với với số số học học 6/14/2021 3:36 PM BMC-K.DIENTU 191
  192. 66/14/2021/14/2021 3:36 PM BMC-K.DIENTU 192
  193. 4.5.9. Các lệnh làm việc với số học 6/14/2021 3:36 PM BMC-K.DIENTU 193
  194. 4.5.9. Các lệnh làm việc với số học 6/14/20216/14/2021 3:36 PM BMC-K.DIENTU 194
  195. 4.5.10. Lệnh tăng, giảm nội dung ô nhớ 6/14/2021 3:36 PM BMC-K.DIENTU 195
  196. 4.5.10. Lệnh tăng, giảm nội dung ô nhớ 6/14/2021 3:36 PM BMC-K.DIENTU 196
  197. 4.5.10. Lệnh tăng, giảm nội dung ô nhớ 6/14/2021 3:36 PM BMC-K.DIENTU 197
  198. 4.5.11. Các lệnh dịch chuyển ô nhớ 6/14/20216/14/2021 3:36 PM BMC-K.DIENTU 198
  199. 4.5.11. Các lệnh dịch chuyển ô nhớ 6/14/2021 3:36 PM BMC-K.DIENTU 199
  200. 4.5.12. Đồng hồ thời gian thực 6/14/2021 3:36 PM BMC-K.DIENTU 200
  201. 4.5.12. Đồng hồ thời gian thực 6/14/2021 3:36 PM BMC-K.DIENTU 201
  202. Bài 5: Lựa chọn, lắp đặt, kiểm tra và bảo trì hệ thống 5.1. Xem xét sự khả thi 5.2. Trình tự thiết kế hệ thống PLC 5.3. Tổ chức bố trí phần cứng hệ thống 5.4. Chạy thử chương trình 5.5. Lập tài liệu cho hệ thống 5.6. Bảo trì hệ thống PLC 66/14/2021/14/2021 3:36 PM BMC-K.DIENTU 202
  203. 5.1. Xem xét sự khả thi 6/14/2021 3:36 PM BMC-K.DIENTU 203
  204. 5.1. Xem xét sự khả thi 6/14/2021 3:36 PM BMC-K.DIENTU 204
  205. 5.1. Xem xét sự khả thi 66/14/2021/14/2021 3:36 PM BMC-K.DIENTU 205
  206. 5.1. Xem xét sự khả thi 6/14/2021 3:36 PM BMC-K.DIENTU 206
  207. 5.1. Xem xét sự khả thi 6/14/2021 3:36 PM BMC-K.DIENTU 207
  208. 5.2. Trình tự thiết kế hệ thống PLC 6/14/2021 3:36 PM BMC-K.DIENTU 208
  209. 5.2. Trình tự thiết kế hệ thống PLC 6/14/2021 3:36 PM BMC-K.DIENTU 209
  210. 5.2. Trình tự thiết kế hệ thống PLC 6/14/2021 3:36 PM BMC-K.DIENTU 210
  211. 5.3. Thiết kế chương trình trên PLC 6/14/2021 3:36 PM BMC-K.DIENTU 211
  212. 5.4. Tổ chức bố trí phần cứng hệ thống 6/14/2021 3:36 PM BMC-K.DIENTU 212
  213. 5.4. Tổ chức bố trí phần cứng hệ thống 6/14/2021 3:36 PM BMC-K.DIENTU 213
  214. 5.4. Tổ chức bố trí phần cứng hệ thống 6/14/2021 3:36 PM BMC-K.DIENTU 214
  215. 5.5. Chạy thử chương trình 6/14/2021 3:36 PM BMC-K.DIENTU 215
  216. 5.6. Lập tài liệu cho hệ thống 6/14/2021 3:36 PM BMC-K.DIENTU 216
  217. Bài 6: Bộ điều khiển PLC S7-300 6.1. Giới thiệu về PLC – S7-300 6.2. Vùng đối tượng 6.3. Giới thiệu phần mềm SIMATIC STEP 7 Version 5.4 6.4. Giới thiệu phần mềm SIMATIC STEP 7 PLCSIM 5.3ps1 6.5. Cấu hình cứng 6.6. Ngôn ngữ lập trình 6.7. Lập trình một số lệnh cơ bản 6/14/2021 3:36 PM BMC-K.DIENTU 217
  218. 6.1. Giới thiệu về PLC S7-300 6.1.1. CÊu t¹o cña hä PLC- S7-300 PLC Step 7-300 thuéc hä Simatic do h·ng Siemens s¶n xuÊt. §©y lµ lo¹i PLC ®a khèi. CÊu t¹o c¬ b¶n cña lo¹i PLC nµy lµ mét ®¬n vÞ c¬ b¶n (chØ ®Ó xö lý) sau ®ã ghÐp thªm c¸c module më réng vÒ phÝa bªn ph¶i, cã c¸c module më réng tiªu chuÈn. 6.1.1.1. §¬n vÞ c¬ b¶n §¬n vÞ c¬ b¶n cña PLC S7-300 nh h×nh sau: 6/14/2021 3:36 PM BMC-K.DIENTU 218
  219. 6/14/2021 3:36 PM BMC-K.DIENTU 219
  220. 6/14/2021 3:36 PM BMC-K.DIENTU 220
  221. 6/14/2021 3:36 PM BMC-K.DIENTU 221
  222. 1. Các đèn báo + Đèn SF: báo lỗi CPU. + Đèn BAF: Báo nguồn ắc qui. + Đèn DC 5v: Báo nguồn 5v. + Đèn RUN: Báo chế độ PLC đang làm việc. + Đèn STOP: Báo PLC đang ở chế độ dừng. 2. Công tắc chuyển đổi chế độ + RUN-P: Chế độ vừa chạy vừa sửa chương trình. + RUN: Đưa PLC vào chế độ làm việc. + STOP: Để PLC ở chế độ nghỉ. 6/14/2021 3:36 PM BMC-K.DIENTU 222
  223. + MRES: Vị trí chỉ định chế độ xoá chương trình trong CPU. Muốn xoá chương trình thì giữ nút bấm về vị trí MRES để đèn STOP nhấp nháy, khi thôi không nhấp nháy thì nhả tay. Làm lại nhanh một lần nữa (không để ý đèn STOP) nếu đèn vàng nháy nhiều lần là xong, nếu không thì phải làm lại. 6/14/2021 3:36 PM BMC-K.DIENTU 223
  224. 6.1.2. Các kiểu modul Tuỳ theo quá trình tự động hoá đòi hỏi số lượng đầu vào và đầu ra ta phải lắp thêm bao nhiêu module mở rộng cũng như loại module cho phù hợp. Tối đa có thể gá thêm 32 module vào ra trên 4 panen (rãnh), trên mỗi panen ngoài module nguồn, CPU và module ghép nối còn gá được 8 các module về bên phải. Thường Step 7-300 sử dụng các module sau: + Module nguồn PS (3 loại: 2A,3A,5A) + Module ghép nối IM (Intefare Module): 6/14/2021 3:36 PM BMC-K.DIENTU 224
  225. + Module tín hiệu SM (Signal Module): - Vào số: 8 kênh, 16 kênh, 32 kênh. - Ra số: 8 kênh, 16 kênh, 32 kênh. - Vào, ra số: 8 kênh vào 8 kênh ra, 16 kênh vào 16 kênh ra. - Vào tương tự: 2 kênh, 4 kênh, 8 kênh. - Ra tương tự: 2 kênh, 4 kênh, 8 kênh. - Vào, ra tương tự: 2 kênh vào 2 kênh ra, 4 kênh vào 4 kênh ra. 6/14/2021 3:36 PM BMC-K.DIENTU 225
  226. + Module hàm (Function Module). - Đếm tốc độ cao. - Truyền thông CP 340, CP340-1, CP341. + Module điều khiển (Control Module): - Module điều khiển PID. - Module điều khiển Fuzzy. - Module điều khiển rô bot. - Module điều khiển động cơ bước. - Module điều khiển động cơ Servo. 6/14/2021 3:36 PM BMC-K.DIENTU 226
  227. 6.1.3. Địa chỉ và gán địa chỉ Trong PLC có những bộ phận được gán địa chỉ đơn như bộ thời gian (T), bộ đếm (C) chỉ cần một chữ cái đó kèm theo một số là đủ, ví dụ: T1, C32 Các địa chỉ đầu vào và đầu ra cùng với các module chức năng có cách gán địa chỉ giống nhau. Địa chỉ phụ thuộc vào vị trí gá của module trên Panen. Chỗ gá module trên panen gọi là khe (Slot), các khe đều có đánh số, khe số 1 là khe đầu tiên của và cứ thế tiếp tục. 6/14/2021 3:36 PM BMC-K.DIENTU 227
  228. , Địa chỉ vào ra trên module số: Khi gá module số vào, ra lên một khe nào lập tức nó được mạng địa chỉ byte của khe đó, mỗi khe có 4 byte địa chỉ. Trên mỗi module thì mỗi đầu vào, ra là một kênh, các kênh đều có địa chỉ bit là 0 đến 7. Địa chỉ của mỗi đầu vào, ra là số ghép của địa chỉ byte và địa chỉ kênh, địa chỉ byte đứng trước, địa chỉ kênh đứng sau, giữa hai số có dấu chấm. Khi module gá trên khe thì địa chỉ được tính từ byte đầu của khe, các đầu vào và ra của một khe có cùng địa chỉ hình 7.2. 6/14/2021 3:36 PM BMC-K.DIENTU 228
  229. Địa chỉ byte và địa chỉ kênh như hình 7.2. Khe số: 1 2 3 4 5 11 Byte số: 03 47 2831 PS Đơn IM 0.0 1.0 2.0 3.0 28.0 29.0 30.0 31.0 vị cơ 0.1 1.1 2.1 3.1 28.1 29.1 30.1 31.1 Rãnh 0 : : : : : : : : bản 0.7 1.7 2.7 3.7 28.7 28.7 30.7 31.7 Byte số: 3235 6063 Rãnh 1 IM Byte số: 64 67 9295 Rãnh 2 IM Byte số: 9699 124127 Rãnh 3 IM Hình 7.2: Địa chỉ khe và kênh trên module số 6/14/2021 3:36 PM BMC-K.DIENTU 229
  230. Ví dụ: Module 2 đầu vào, 2 đầu ra số gá vào khe số 5 rãnh 0 có địa chỉ là I4.0, I4.1 và Q4.0, Q4.1. Module số có thể được gá trên bất kỳ khe nào trên panen của PLC. 6/14/2021 3:36 PM BMC-K.DIENTU 230
  231. , Địa chỉ vào ra trên module tương tự Trong PLC S7-300 người ta dùng 16 bit (một word) cho một kênh. Một khe có 8 kênh với địa chỉ đầu tiên là PIW256 hoặc PQW256 (byte 256 và 257) cho đến PIW766 hoặc PQW766 như hình 3.45. Module tương tự có thể được gá vào bất kỳ khe nào trên panen của PLC, các khe trống bao giờ cũng có trạng thái tín hiệu “0”. Ví dụ: Một module tương tự 2 vào, 1 ra gá vào khe số 6 rãnh 0 có địa chỉ là PIW288, PIW290, PQW288. 6/14/2021 3:36 PM BMC-K.DIENTU 231
  232. Khe số: 1 2 3 4 5 11 PS Đơn vị IM 256 368 cơ bản Rãnh 0 271 383 IM 384 496 Rãnh 1 399 511 IM 512 624 Rãnh 2 527 639 IM 640 752 Rãnh 3 655 767 Hình 7.3: Địa chỉ của module tương tự 6/14/2021 3:36 PM BMC-K.DIENTU 232
  233. 6.2. Vùng đối tượng /6.2.1. Các vùng nhớ TT Tªn tham sè Diễn giải Vïng tham sè 1 I ĐÇu vµo bit 0.0 65535.7 2 IB ĐÇu vµo byte 0 65535 3 IW ĐÇu vµo từ 0 65534 4 ID ĐÇu vµo từ 0 65532 5 Q ĐÇu ra bit 0.0 65535.7 6 QB ĐÇu ra byte 0 65535 7 QW ĐÇu ra từ 0 65534 8 QD ĐÇu ra từ kép 0 65532 9 M Nhí néi d¹ng bit 0.0 255.7 10 MB Nhí néi d¹ng byte 0 255 11 MW Nhí néi d¹ng tõ 0 254 12 MD Nhí néi dạng từ kép 0 252 13 PIB Vïng ®Öm ®Çu vµo d¹ng byte 0 65535 14 PIW Vïng ®Öm ®Çu vµo d¹ng từ 0 65534 15 PID Vïng ®Öm ®Çu vµo d¹ng từ kép 0 65532 6/14/2021 3:36 PM BMC-K.DIENTU 233
  234. 6.2.1. Các vùng nhớ 16 PQB Vïng ®Öm ®Çu ra d¹ng byte 0 65535 17 PQW Vïng ®Öm ®Çu ra d¹ng từ 0 65534 18 PQD Vïng ®Öm ®Çu ra d¹ng từ kép 0 65532 19 T Bé thời gian 0 255 20 C Bé ®ếm 0 255 21 DBX Khèi dữ liÖu kiÓu BD d¹ng bit 0.0 65535.7 22 DBB Khèi dữ liÖu kiÓu BD d¹ng byte 0 65535 23 DBW Khèi dữ liÖu kiÓu BD d¹ng từ 0 65534 24 DBD Khèi dữ liÖu kiÓu BD d¹ng từ kép 0 65532 25 DIX Khèi dữ liÖu kiÓu BI d¹ng bit 0.0 65535.7 26 DIB Khèi dữ liÖu kiÓu BI d¹ng byte 0 65535 27 DIW Khèi dữ liÖu kiÓu BI d¹ng từ 0 65534 28 DID Khèi dữ liÖu kiÓu BI d¹ng từ kép 0 65532 29 L Vïng dữ liÖu t¹m thời d¹ng bit 0.0 65535.7 30 LB Vïng dữ liÖu t¹m thời d¹ng byte 0 65535 31 LW Vïng dữ liÖu t¹m thời d¹ng từ 0 65534 32 LD Vïng dữ liÖu t¹m thời d¹ng từ kép 0 65532 6/14/2021 3:36 PM BMC-K.DIENTU 234
  235. 6.2.2. Nhập các hằng số Các hằng số được viết gồm phần đầu và tham số đi liền nhau ví dụ B#16#1A là số: (viết dạng byte, cơ số 16, giá trị là 1A tương ứng cơ số thập phân là 26). Các số về thời gian được viết theo các ký hiệu: D (Date) ngày_ H (Hours) giờ_ M (minuter) phút_ S (seconds) giây_ MS (milliseconds) mili giây ví dụ 2D_23H_10M_50S_13MS là: (2 ngày, 23 giờ, 10 phút, 50 giây, 13 mili giây). Các kiểu viết hằng số được thể hiện trên bảng sau 6/14/2021 3:36 PM BMC-K.DIENTU 235
  236. 6.2.2. Nhập các hằng số Lo¹i Bit C¬ sè PhÇn ®Çu Ph¹m vi tham sè Byte 8 16 B#16# 0 FF Từ 16 2 2# 0 1111_1111_1111_1111 16 W#16# 0 FFFF BCD C# 0 999 10 kh«ng dấu B# (0,0) (255,255) Từ 32 2 2# 0 1111_1111_1111_1111_ kép 16 DW#16# 1111_1111_1111_1111 10 kh«ng dấu B# 0000_0000 FFFF_FFFF (0.0.0.0) (255.255.255.255) Sè 16 Có dấu (kh«ng có) -32768 32767 thùc Sè 32 Có dấu L# -2147483648 +2147483647 thùc 6/14/2021 3:36 PM BMC-K.DIENTU 236
  237. 6.2.2. Nhập các hằng số Số 32 Dấu phảy động (Không có) Lớn hơn 3,402823 e+38 thực Nhỏ hơn 1,175495e-38 Thời 16 Giờ_phút_ S5T# 0H_0M_0S_10MS gian 32 giấy_miligiây T# 2H_46M_30S_0MS Ngày_giờ_ -24D_20H_31M_23S_648MS phút_giây_ 24D_20H_31M_23S_647MS miligiây Ngày Năm-tháng- D# 1990-1-1 2168-12-31 ngày T. 32 Giờ:phút: TOD# 0:0:0.0 23:59:59.999 gian giây.ngày của ngày Ký 8 ‘ ’ Viết các ký tự như ‘HA’ tự 6/14/2021 3:36 PM BMC-K.DIENTU 237
  238. 6.3. Giới thiệu phần mềm SIMATIC STEP 7 6/14/2021 3:36 PM BMC-K.DIENTU 238
  239. 6/14/2021 3:36 PM BMC-K.DIENTU 239
  240. 6/14/2021 3:36 PM BMC-K.DIENTU 240
  241. 6/14/2021 3:36 PM BMC-K.DIENTU 241
  242. 6/14/2021 3:36 PM BMC-K.DIENTU 242
  243. 6/14/2021 3:36 PM BMC-K.DIENTU 243
  244. 6/14/2021 3:36 PM BMC-K.DIENTU 244
  245. 6/14/2021 3:36 PM BMC-K.DIENTU 245
  246. 6/14/2021 3:36 PM BMC-K.DIENTU 246
  247. 6/14/2021 3:36 PM BMC-K.DIENTU 247
  248. 6/14/2021 3:36 PM BMC-K.DIENTU 248
  249. 6/14/2021 3:36 PM BMC-K.DIENTU 249
  250. 6/14/2021 3:36 PM BMC-K.DIENTU 250
  251. 6/14/2021 3:36 PM BMC-K.DIENTU 251
  252. 6/14/2021 3:36 PM BMC-K.DIENTU 252
  253. 6.4. Giới thiệu phần mềm SIMATIC STEP 7 PLCSIM 5.3ps1 6/14/2021 3:36 PM BMC-K.DIENTU 253
  254. 6.5. Cấu hình cứng 6/14/2021 3:36 PM BMC-K.DIENTU 254
  255. 6.5. Cấu hình cứng 6/14/2021 3:36 PM BMC-K.DIENTU 255
  256. 6.5. Cấu hình cứng 6/14/2021 3:36 PM BMC-K.DIENTU 256
  257. 6.5. Cấu hình cứng 6/14/2021 3:36 PM BMC-K.DIENTU 257
  258. 6.5. Cấu hình cứng 6/14/2021 3:36 PM BMC-K.DIENTU 258
  259. 6.5. Cấu hình cứng 6/14/2021 3:36 PM BMC-K.DIENTU 259
  260. 6.5. Cấu hình cứng 6/14/2021 3:36 PM BMC-K.DIENTU 260
  261. 6.5. Cấu hình cứng 6/14/2021 3:36 PM BMC-K.DIENTU 261
  262. 6.5. Cấu hình cứng 6/14/2021 3:36 PM BMC-K.DIENTU 262
  263. 6.5. Cấu hình cứng 6/14/2021 3:36 PM BMC-K.DIENTU 263
  264. 6.5. Cấu hình cứng 6/14/2021 3:36 PM BMC-K.DIENTU 264
  265. 6.5. Cấu hình cứng 6/14/2021 3:36 PM BMC-K.DIENTU 265
  266. 6.5. Cấu hình cứng 6/14/2021 3:36 PM BMC-K.DIENTU 266
  267. 6.5. Cấu hình cứng 6/14/2021 3:36 PM BMC-K.DIENTU 267
  268. 6.5. Cấu hình cứng 6/14/2021 3:36 PM BMC-K.DIENTU 268
  269. 6.6. Ngôn ngữ lập trình 6.6.1. Cấu trúc chương trình S7-300 Các chương trình điều khiển với PLC S7- 300 có thể được viết ở dạng đơn khối hoặc đa khối. Chương trình đơn khối Chương trình đơn khối chỉ viết cho các công việc tự động đơn giản, các lệnh được viết tuần tự trong một khối. Khi viết chương trình đơn khối người ta dùng khối OB1. Bộ PLC quét khối theo chương trình, sau khi quét đến lệnh cuối cùng nó quay trở lại lệnh đầu tiên. 6/14/2021 3:36 PM BMC-K.DIENTU 269
  270. Chương trình đa khối (có cấu trúc) Khi nhiệm vụ tự động hoá phức tạp người ta chia chương trình điều khiển ra thành từng phần riêng gọi là khối. Chương trình có thể xếp lồng khối này vào khối kia. Chương trình đang thực hiện ở khối này có thể dùng lệnh gọi khối để sang làm việc với khối khác, sau khi đã kết thúc công việc ở khối mới nó quay về thực hiện tiếp chương trình đã tạm dừng ở khối cũ. Các khối được xếp thành lớp. Mỗi khối có: + Đầu khối gồm tên khối, số hiệu khối và xác định chiều dài khối. 6/14/2021 3:36 PM BMC-K.DIENTU 270
  271. + Thân khối: Thể hiện nội dung khối và được chia thành đoạn (Segment) thực hiện từng công đoạn của tự động hoá sản xuất. Mỗi đoạn lại bao gồm một số dòng lệnh phục vụ việc giải bài toán logic. Kết quả của phép toán logic được gửi vào RLO (Result of logic operation). Việc phân chia chương trình thành các đoạn cũng ảnh hưởng đến RLO. Khi bắt đầu một đoạn mới thì tạo ra một giá trị RLO mới, khác với giá trị RLO của đoạn trước. + Kết thúc khối: Phần kết thúc khối là lệnh kết thúc khối BEU. 6/14/2021 3:36 PM BMC-K.DIENTU 271
  272. Các loại khối: * Khối tổ chức OB (Organisation Block) Khối tổ chức quản lý chương trình điều khiển và tổ chức việc thực hiện chương trình. * Hàm số FC (Functions) Khối hàm số FC là một chương trình do người sử dụng tạo ra hoặc có thể sử dụng các hàm chuẩn sẵn có của SIEMENS. 6/14/2021 3:36 PM BMC-K.DIENTU 272
  273. * Khối hàm FB (Function Block) Khối hàm là loại khối đặc biệt dùng để lập trình các phần chương trình điều khiển tái diễn thường xuyên hoặc đặc biệt phức tạp. Có thể gán tham số cho các khối đó và chúng có một nhóm lệnh mở rộng. Người sử dụng có thể tạo ra các khối hàm mới cho mình, có thể sử dụng các khối hàm sẵn có của SIEMENS. 6/14/2021 3:36 PM BMC-K.DIENTU 273
  274. * Khối dữ liệu: có hai loại là + Khối dữ liệu dùng chung DB (Shared Data Block) Khối dữ liệu dùng chung lưu trữ các dữ liệu chung cần thiết cho việc xử lý chương trình điều khiển. + Khối dữ liệu riêng DI (Instance Data Block) Khối dữ liệu dùng riêng lưu trữ các dữ liệu riêng cho một chương trình nào đó cho việc xử lý chương trình điều khiển. Ngoài ra trong PLC S7-300 còn hàm hệ thống SFC (System Function) và khối hàm hệ thống SFB (System Function Block). 6/14/2021 3:36 PM BMC-K.DIENTU 274
  275. 6.6.2. Lập trình một số lệnh cơ bản Các chương trình điều khiển với PLC S7- 300 có thể được viết ở dạng: đơn khối hoặc đa khối. Bảng lệnh của S7 300 A. Lập trình với nhóm lệnh logic 6/14/2021 3:36 PM BMC-K.DIENTU 275
  276. 1. Lệnh A Lập trình dạng STL. I 0.0 I 0.1 I 0.2 Q1.0 A I 0.0 ( ) A I 0.1 A I 0.2 Hình 7.4: Lệnh A = Q 1.0 2. Lệnh AN I 0.0 I 0.1 I 0.2 Q1.0 A I 0.0 ( ) AN I 0.1 Hình 7.5: Lệnh AN A I 0.2 = Q 1.0 6/14/2021 3:36 PM BMC-K.DIENTU 276
  277. 3. Lệnh O I 0.0 Q1.0 ( ) O I 0.0 I 0.1 O I 0.1 I 0.2 O I 0.2 = Q 1.0 Hình 7.6: Lệnh O 4. Lệnh ON I 0.0 Q1.0 ( ) O I 0.0 I 0.1 ON I 0.1 I 0.2 O I 0.2 = Q 1.0 Hình 7.7: Lệnh ON 6/14/2021 3:36 PM BMC-K.DIENTU 277
  278. 5. Lệnh A và lệnh O A I 0.0 I 0.0 I 0.1 Q1.0 ( ) A I 0.1 I 0.2 O I 0.2 = Q 1.0 Hình 7.8: Lệnh OLD 6. Lệnh ( và lệnh ) A I 0.0 I 0.0 I 0.1 Q1.0 A( ( ) I 0.2 O I 0.1 O I 0.2 Hình 7.9: Lệnh ( và lệnh ) ) = Q 1.0 6/14/2021 3:36 PM BMC-K.DIENTU 278
  279. 7. Lập trình với vùng dữ liệu tạm thời L A I 0.0 = L 20.0 Q0.0 A L 20.0 I 0.0 I 0.1 ( ) A( O I 0.1 I 0.2 O I 0.2 ) I 0.3 Q0.1 = Q 0.0 ( ) A L 20.0 I 0.4 A( O I 0.3 I 0.5 Q0.2 0 I 0.4 ( ) ) = Q 0.1 Hình 7.10: Lập trình với vùng dữ liệu tạm A L 20.0 thời A I 0.5 = Q 0.2 6/14/2021 3:36 PM BMC-K.DIENTU 279
  280. 8. Lập trình với bít nhớ nội M Nework 1 A I 0.0 M10.0 = M 10.0 I 0.0 Nework 2 A I 0.1 ( ) = M 10.1 A M 10.1 I 0.1 M10.1 Q0.0 = Q 0.0 (# ) ( ) Nework 3 A( O I 1.0 I 0.3 M10.0 M10.1 I 1.0 Q1.0 O Q 1.0 ( ) ) A M 10.0 Q1.0 A M 10.1 AN I 1.0 Hình 7.11: Lập trình với bít nhớ nội M = Q 1.0 6/14/2021 3:36 PM BMC-K.DIENTU 280
  281. B.> Lập trình với nhóm lệnh thời gian Chương trình điều khiển sử dụng các lệnh thời gian để theo dõi, kiểm soát và quản lý các hoạt động có liên quan đến thời gian. Khi một bộ thời gian được khởi phát thì giá trị thời gian được nạp vào thanh ghi CV (Current value). Do đó, muốn dùng các lệnh thời gian phải nạp giá trị thời gian cần đặt vào thanh ghi CV trước khi bộ thời gian hoạt động. Có thể nạp các kiểu dữ liệu sau dùng cho các lệnh thời gian: 6/14/2021 3:36 PM BMC-K.DIENTU 281
  282. + Dữ liệu thời gian thực: S5T#H_M_S_MS + Dạng số nguyên 16 bít: W#16# (ở dạng mã BCD). Nạp thời gian thực: L S5T#10s Với lệnh trên giá trị thời gian được nạp là 10s 6/14/2021 3:36 PM BMC-K.DIENTU 282
  283. Nạp thờigian dạng mã BCD: Ví dụ: L W#16#2127 Thì số trên sẽ được nạp vào thanh ghi CV dạng mã BCD như hình 3.54. Trong thanh ghi CV thì: Ba số cuối chỉ hệ số: Số 127 (có thể gán từ 0 đến 999) Số đầu chỉ mã số, có 4 mã: 0 tương ứng 0,01s 1 tương ứng 0,1s 2 tương ứng 1s 3 tương ứng 10s 6/14/2021 3:36 PM BMC-K.DIENTU 283
  284. Với số đã vào thanh ghi CV như trên thì thời gian được tính là: t =127 1s =127s Với mã càng nhỏ thì giá trị thời gian càng chính xác, vì vậy nên dùng mã nhỏ. 15 11 7 3 0 1 0 0 0 0 1 0 0 1 0 0 1 1 1 (2) (1) (2) (7) Mã Hệ số Hình 7.12 6/14/2021 3:36 PM BMC-K.DIENTU 284
  285. Trong các bộ thời gian của S7-300 ngoài tín hiệu kích thích chính (bắt đầu) như các bộ thời gian của các PLC khác, còn có tín hiệu kích thích cưỡng bức. Tín hiệu kích thích cưỡng bức cho phép tính lại thời gian từ đầu khi có sườn lên của tín hiệu này. Tuy nhiên, tín hiệu kích thích cưỡng bức chỉ có giá trị khi tín hiệu kích thích chính có giá trị 1. Lệnh thực hiện kích thích cưỡng bức (có điều kiện) là: FR, lệnh FR chỉ có ở dạng lập trình STL. Bộ thời gian cũng có thể dùng lệnh R để xoá. 6/14/2021 3:36 PM BMC-K.DIENTU 285
  286. 1. Bộ thời gian xung SP Bộ thời gian được khởi phát lên 1 tại sười lên của RLO khi RLO là 1 thì bộ thời gian vẫn duy trì trạng thái 1 cho đến khi đạt giá trị đặt mới xuống. Nhưng khi RLO về không thì bộ thời gian về không ngay. Có hai kiểu lập trình: 6/14/2021 3:36 PM BMC-K.DIENTU 286
  287. Kiểu thứ nhất có lệnh NOP A I 0.1 L S5T#10S SP T 1 A I 0.2 I0.2 10 NOP 0 I0.1 NOP 0 Q1.0 Thời gian (s) A T 1 10 Hình 7.13: Dạng LAD và giản đồ thời gian = Q 1.0 Lập trình lệnh SP kiểu 1 6/14/2021 3:36 PM BMC-K.DIENTU 287
  288. Kiểu thứ hai (không dùng lệnh NOP) Nework 1: A I 0.0 L S5T#10S SP T 1 Nework 2: A T 1 = Q 0.1 Nework 3: Hình 7.14: Dạng LAD lệnh SP kiểu 2 A I 0.2 R T 1 6/14/2021 3:36 PM BMC-K.DIENTU 288
  289. 2. Bộ thời gian mở rộng SE Bộ thời gian xung mở rộng SE được khởi phát lên 1 tại sườn lên của RLO sau đó không phụ thuộc RLO nữa cho đến khi đủ thời gian đặt mới về không. Cũng tương tự như bộ thời gian SP, ở các bộ thời gian khác cũng luôn có hai kiểu lập trình. 6/14/2021 3:36 PM BMC-K.DIENTU 289
  290. Lập trình có lệnh NOP A I 0.0 >10 <10 L S5T#10S I0.1 SE T 1 Q1.0 NOP 0 Thời gian (s) 10 10 L T 1 T MW 2 LC T 1 T MW 5 A T 1 = Q 0.1 Hình 7.15: Lệnh SE 6/14/2021 3:36 PM BMC-K.DIENTU 290
  291. 3.Bộ thời gian bắt đầu trễ SD Thời gian bắt đầu chậm hơn so với sườn lên của RLO một khoảng bằng thời gian đặt trong lệnh. Khi RLO về không thì bộ thời gian cũng bị đặt ngay về không. 6/14/2021 3:36 PM BMC-K.DIENTU 291
  292. A I 0.1 L S5T#10S >10 <10 SD T 1 I0.1 A I 0.2 Q1.0 Thời gian 10 10 R T 1 (s) NOP 0 NOP 0 A T 1 = Q 1.0 Hình 7.16: Lệnh SD 6/14/2021 3:36 PM BMC-K.DIENTU 292
  293. 4.Bộ thời gian bắt đầu trễ lưu trữ SS Thời gian bắt đầu chậm hơn so với sườn lên của RLO một khoảng thời gian bằng thời gian đặt trong lệnh và sau đó không phụ thuộc RLO nữa. Nó chỉ về không khi có lệnh xoá R. 6/14/2021 3:36 PM BMC-K.DIENTU 293
  294. A I 0.1 L S5T#10S I0.1 SS T 1 I0.2 Q1.0 A I 0.2 R T 1 10 10 Thời gian (s) NOP 0 NOP 0 A T 1 = Q 1.0 Hình 7.17: Lệnh SS 6/14/2021 3:36 PM BMC-K.DIENTU 294
  295. 5.Bộ thời gian tắt trễ SF Bộ thời gian lên 1 tại sườn lên của RLO. Khi RLO về không thì bộ thời gian tiếp tục duy trì trạng thái một khoảng thời gian nữa bằng khoảng đã đặt trong lệnh rồi mới về không. Để xoá thời gian dùng lệnh R, khi có lệnh R từ 0 lên 1 thì bộ thời gian được đặt về không và trạng thái tín hiệu vẫn giữ 0 cho đến khi bộ thời gian được khởi phát lại. 6/14/2021 3:36 PM BMC-K.DIENTU 295
  296. A I 0.1 L S5T#10S I0.1 SF T 1 Q1.0 A I 0.2 Thời gian 10 10 (s) R T 1 NOP 0 NOP 0 A T 1 = Q 1.0 Hình 7.18: Lệnh SF 6/14/2021 3:36 PM BMC-K.DIENTU 296
  297. C. Nhóm lệnh đếm Giá trị trong thanh ghi CV (current value) là giá trị đếm tức thời của bộ đếm, CV luôn không âm, do đó lệnh đếm lùi sẽ không đếm khi CV = 0. Giá trị đếm PV có thể được đặt trước bằng lệnh L, ví dụ L C#4 (đặt giá trị đếm bằng 4). Tuy nhiên, khác với bộ thời gian, giá trị đếm chỉ được nạp vào CV khi có lệnh đặt bộ đếm (S). Nếu không đặt giá trị đếm thì bộ đếm có thể vẫn tiến hành đếm (chỉ khi CV = 0 thì không đếm lùi). Giá trị đầu ra của bộ đếm sẽ là 1 nếu CV 0, bằng 0 nếu CV = 0. 6/14/2021 3:36 PM BMC-K.DIENTU 297
  298. Bộ đếm có thể được xoá chủ động bằng tín hiệu xoá (R). Cũng tương tự như bộ thời gian, bộ đếm cũng có thể dùng lệnh kích đếm (đếm cưỡng bức) FR (lệnh có điều kiện), bộ đếm cũng đếm xung khi điều kiện của FR đảm bảo. Lệnh FR chỉ có ở dạng lập trình STL. Có thể dùng lệnh L hoặc LD để đọc giá trị tức thời của bộ đếm vào ACCU1 để sử lý. Lệnh L đọc số dạng cơ số 2, lệnh LD đọc số dạng BCD. 6/14/2021 3:36 PM BMC-K.DIENTU 298
  299. 1. Lệnh đếm lên CU A I 0.0 CD C 2 BLD 101 NOP 0 NOP 0 I0.0 NOP 0 0 3 CV NOP 0 2 1 NOP 0 0 Q1.0 A C 2 0 = Q 1.0 Hình 7.19: Lệnh đếm lên CU 6/14/2021 3:36 PM BMC-K.DIENTU 299
  300. Lệnh BLD để hiển thị dạng LAD. Với các lệnh trên khi đầu vào I0.0 có sườn lên thì giá trị bộ đếm CV tăng thêm 1 đơn vị, tức là khi đã có chỉ một lần sườn lên của I0.0 thì đầu ra Q1.0 luôn là 1 (không xoá). Chân CV là chân để lấy giá trị đếm dạng nhị phân, chân CV_BCD là chân để lấy giá trị thời gian dạng mã BCD, có thể dùng lệnh L hoặc LC để đọc các giá trị đếm. 6/14/2021 3:36 PM BMC-K.DIENTU 300
  301. 2. Lệnh đếm xuống CD A I 0.0 CD C 2 BLD 101 A I 0.1 Hình 7.20: Lệnh đếm xuống CD L C#4 0 I0.0 S C 2 I0.1 0 NOP 0 4 3 NOP 0 2 1 NOP 0 0 0 CV A C 2 0 0 Q1.0 = Q 1.0 Hình 7.21: Xung đếm lệnh đếm xuống CD 6/14/2021 3:36 PM BMC-K.DIENTU 301
  302. Trong các lệnh trên có: Lệnh L C#4 là nạp số đếm bằng 4. Như trên hình 7.20 khi I0.0 có trước, bộ đếm vẫn không làm việc vì khi đó CV = 0, cho đến khi có lệnh đặt bộ đếm, I0.1 có thì bộ đếm bắt đầu được nạp giá trị đếm, CV = 4. Từ khi này mỗi lần I0.0 có thì giá trị đếm giảm một đơn vị, sau 4 xung vào giá trị đếm CV = 0. Khi CV 0 đầu ra Q1.0 có, khi CV = 0 đầu ra Q1.0 mất. 6/14/2021 3:36 PM BMC-K.DIENTU 302
  303. 3. Lệnh đếm vừa tiến vừa lùi A I 0.0 CU C 1 A I 0.1 CD C 1 A I 0.2 L C#3 0 I0.0 S C 1 I0.3 A I 0.3 I0.1 0 R C 1 I0.2 L C 1 4 3 3 T MW 0 2 1 LC C 1 1 CV 0 0 T MW 1 0 0 Q1.0 A C 1 = Q 1.0 Hình 7.22: Vừa đếm tiến vừa đếm lùi 6/14/2021 3:36 PM BMC-K.DIENTU 303
  304. Từ giản đồ ta thấy: khi đầu vào đếm tiến có lập tức bộ đếm làm việc, giá trị đếm tăng 1 đơn vị, CV 0, đầu ra Q1.0 có. Tiếp đó đầu vào đếm lùi có, do đó bộ đếm lại giảm 1 đơn vị (CV = 0) đầu ra Q1.0 lại mất. Tuy nhiên, nếu đầu vào đếm lùi có trước thì bộ đếm không đếm vì khi đó. Tiếp đó đầu vào đặt bộ đếm SET có làm giá trị đếm được nạp vào CV (), từ đó nếu có đầu đếm tiến thì giá trị đếm tăng 1 đơn vị, có đầu đếm lùi giá trị đếm giảm 1 đơn vị, đầu ra Q1.0 có. Khi có đầu RESET giá trị đếm lập tức về 0, đầu ra Q1.0 về 0 6/14/2021 3:36 PM BMC-K.DIENTU 304
  305. END! 6/14/2021 3:36 PM BMC-K.DIENTU 305