Bài giảng Thiết bị điều khiển khả trình PLC

ppt 144 trang phuongnguyen 6300
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Thiết bị điều khiển khả trình PLC", để 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:

  • pptbai_giang_thiet_bi_dieu_khien_kha_trinh_plc.ppt

Nội dung text: Bài giảng Thiết bị điều khiển khả trình PLC

  1. Thiết bị điều khiển khả trình PLC
  2. Nội dung chính • Chương 1: Giới thiệu về Micro PLC S7-200 • Chương 2: Cài đặt cấu hình phần cứng và phần mềm cho hệ thống PLC S7-200 • Chương 3: Làm quen với một chương trình mẫu • Chương 4: Những khái niệm cơ bản lập trình trên CPU S7-200 • Chương 5: Cấu trúc bộ nhớ, kiểu dữ liệu và chế độ định địa chỉ • Chương 6- Kiểm soát các đầu I/O • Chương 7- Truyền thông • Chương 8 - Tập hợp các lệnh trong CPU S7-200
  3. Chương 1: Giới thiệu về Micro PLC S7-200 1.1. So sánh các đặc tính của PLC S7-200 1.2. Các thành phần chính của PLC S7-20
  4. 1.1. So sánh một số đặc tính của họ PLCs S7-200 • Yêu cầu tối thiểu về mặt thiết bị: Hình 1-1: Các thành phần cơ bản của hệ thống PLC S7- 200
  5. • So sánh đặc tính của các module của họ S7-200 CPU212, CPU214, CPU 215, CPU 216. Table 1-1
  6. Đặc tính CPU212 CPU 214 CPU 215 CPU 216 Kích cỡ vật lý Bộ nhớ I/O (Inputs/Outputs) I/O cục bộ 8DI/6DQ 14DI/10DQ 14DI/10DQ 24DI/16DQ Modul mở rộng (max) 2 7 7 7 Thanh nghi I/O ảo 64DI/64DQ 64DI/64DQ 64DI/64DQ 64DI/64DQ I/O analog 16AI/16AQ 16AI/16AQ 16AI/16AQ 16AI/16AQ Tập lệnh (Instructions) Truyền thông (Communications) Các đặc tính khác
  7. 1.2. Các thành phần chính của PLC S7-200 • Module CPU chính bao gồm: (H1-2, 1-3, 1-4) – CPU: thực hiện chương trình và chứa dữ liệu cho điều khiển các quá trình tự động. – Nguồn cấp điện (Power supply) – Các đầu vào/ra hệ thống (Inputs/Outputs) – Các cổng truyền thông (Communications Port) – Các đèn trạng thái (Status light )
  8. Hình 1-2: CPU S7-212
  9. Hình 1-3: CPU S7-214
  10. Hình 1-4: CPU S7-215 hoặc S7-216
  11. Module mở rộng
  12. Chương 2: Cài đặt cấu hình phần cứng và phần mềm cho hệ thống PLC S7-200 • 2.1. Thiết lập phần cứng cho hệ Micro PLC S7- 200. • 2.2. Cài đặt phần mềm STEP7- Micro/WIN • 2.3. Sử dụng STEP7- Micro/WIN để cài đặt các module truyền thông • 2.4.Thiết lập truyền thông với CPU S7-200 • 2.5. Cách tạo một Project, Program và Data Block • 2.6. Sử dụng bảng trạng thái • 2.7. Sử dụng định địa chỉ theo status
  13. 2.2. Cài đặt phần mềm STEP7- Micro/WIN
  14. 2.3 - Sử dụng STEP7- Micro/WIN để cài đặt các module truyền thông • Yêu cầu về phần cứng • Kết nối máy tính PC với S7-200 sử dụng cáp PC/PPI • Kết nối máy tính với S7-200 sử dụng card MPI hoặc CP. • Sử dụng Modem (11 bit) trong truyền thông • Cài đặt phần mềm truyền thông trong Step 7- Micro/Win
  15. Yêu cầu về phần cứng – PC với một cáp PC/PPI nối với cổng truyền thông (COM1 hoặc COM2). – PC hoặc PG với card CP (Communications processor) hoặc MPI (Multipoint interface). – CPU 212 (CPU 214, CPU 215, CPU 216) – Modem
  16. Kết nối máy tính PC với S7-200 sử dụng cáp PC/PPI Hình 2.1 – Truyền thông ở chế độ PPI
  17. Hình 2.2 – Sử dụng cáp PC/PPI trong truyền thông với một vài CPU khác (PC là trạm chủ duy nhất)
  18. Kết nối máy PC với S7-200 sử dụng card MPI hoặc CP Hình 2.3 – Sử dụng card MPI hoặc CP với các thiết bị Master/Slave
  19. Sử dụng Modem (11 bit) trong truyền thông
  20. Ký hiệu chân của Null Modem Adapter
  21. Cài đặt truyền thông • Cài đặt phần truyền thông sử dụng Step 7 Micro/Win. • Lựa chọn các tham số cho module • Thiết lập tham số cho cáp PC/PPI • Thiết lập tham số card MPI
  22. Hình 2.4: Thiết lập truyền thông giữa thiết bị lập trình (PC) và CPU
  23. Hình 2.5: Hộp thoại giao diện PG/PC
  24. Hình 2.6: Thuộc tính của PC/PPI Tab PPI Network
  25. Hình 2-7: Thuộc tính PC/PPI Tab Local Connection
  26. Hình 2-8: Thuộc tính card MPI-ISA
  27. Chương 3: Làm quen với một chương trình mẫu • 3.1- Hệ thống phần cứng cần có • 3.2 - Chương trình điều khiển máy trộn
  28. 3.1- Hệ thống phần cứng cần có
  29. 3.2 - Chương trình điều khiển máy trộn Hình 2.5 : Mô hình máy trộn
  30. Quá trình hoạt động của hệ thống • Bước 1: Bơm loại mầu thứ nhất và thứ hai vào bình • Bước 2: Giám sát mực sơn trong bình (ở mức cao và mức thấp) • Bước 3: Duy trì trạng thái các bơm ở chế độ mở • Bước 4: Điều khiển động cơ trộn và van hơi nước. • Bước 7: Đưa sản phẩm ra khỏi bình trộn • Bước 8: Đếm số vòng trộn
  31. Chương trình phần mềm viết theo STL
  32. Chương trình phần mềm viết theo LAD
  33. Thực hiện chương trình – Bước 1: Tạo một Project mới – Bước 2: Tạo một bảng Symbol – Bước 3: Thực hiện theo LAD hoặc STL – Bước 4: Tạo một bảng Status – Bước 5: Download và giám sát chương trình
  34. Bước 1 :Tạo một Project mới
  35. Bước 2 : Xây dựng bảng biểu tượng
  36. Bước 3: Lập trình theo LAD
  37. Bước 4: Xây dựng bảng trạng thái
  38. Bước 5: Giám sát trạng thái
  39. Chương 4: Những khái niệm cơ bản lập trình trên CPU S7-200 • 4.1. Các nguyên tắc thiết kế hệ thống PLC • 4.2. Khái niệm về một chương trình S7-200 • 4.3. Khái niệm về ngôn ngữ lập trình S7-200 • 4.4.Các phần tử cơ bản để xây dựng chương trình • 4.5. Vòng quét của CPU • 4.6. Chọn lựa chế độ hoạt động của CPU • 4.7. Giám sát và kiểm tra chương trình
  40. 4.1. Các nguyên tắc thiết kế hệ thống PLC • 1- Phân chia quá trình hoạt động thành từng phần độc lập. • 2- Mô tả chi tiết chức năng của từng phần (functional specifications). • 3- Thiết kế các mạch điện an toàn • 4-Thực hiện các bản vẽ chi tiết các trạm làm việc và cấu hình của PLC có liên quan. • 5 – Đưa ra danh sách tên ký hiệu cho các địa chỉ tuyệt đối.
  41. VD: Hệ thống cắt tự động
  42. 4.2. Khái niệm về hoạt động của chương trình S7-200 • Hoạt động của CPU: – CPU đọc trạng thái các đầu vào – Chương trình trong CPU sẽ sử dụng các đầu vào để tính toán trạng thái logic điều khiển (Khi CPU chạy nó sẽ cập nhật dữ liệu). – CPU sẽ đưa dữ liệu ra đầu ra
  43. Mối quan hệ giữa chương trình với đầu vào và đầu ra
  44. Truy nhập dữ liệu trong miền nhớ (xem chương 5) • CPU lưu trạng thái các đầu vào/ra trong các miền xác định của bộ nhớ. Mỗi miền nhớ đó có một tên riêng được sử dụng để truy cập đến dữ liệu ở vùng nhớ đó (VD: I , Q). • Step 7 – Micro/Win cung cấp địa chỉ tuyệt đối (absolute addresses) cho tất cả các miền nhớ. Truy nhập đến một vị trị cụ thể bằng cách đánh địa chỉ (VD: I0.0, Q0.1 ). • Step 7 – Micro/Win còn cho phép định nghĩa theo tên biểu tượng cho tất cả các địa chỉ tuyệt đối. • Địa chỉ tuyệt đối bao gồm: – Tên vùng nhớ (VD: I, Q, M, V .) – Kích cỡ dữ liệu truy cập (Bit, Byte, W, DW) (hoặc số thứ tự)
  45. 4.3. Khái niệm về ngôn ngữ lập trình S7-200 • Ladder logic (LAD) • Statement list (STL)
  46. Những phần tử cơ bản trong LAD • Tiếp điểm (Contact): mô tả một tiếp điểm của rơle (hoặc một khóa chuyển mạch). Khi tiếp điểm( hoặc khóa) được đóng thì có dòng điện chạy qua. • Cuộn dây (coil): mô tả một rơle được mắc theo chiều dòng điện cung cấp cho rơle. Nó hoạt động khi có dòng điện nối tới nó. • Hộp (box): mô tả một chức năng nào đó. Chức năng này được thực hiện khi có dòng điện chạy qua. • Mạng (Network): mô tả thực hiện một mạch điện hoàn chỉnh. Năng lượng đi từ trái sang phải thông qua các tiếp điểm đã đóng để cung cấp năng lượng cho cuộn dây và hộp.
  47. Các phần tử cơ bản của STL
  48. Ngăn xếp logic trong CPU dùng để thực hiện các điều khiển logic.
  49. 4.4.Các phần tử cơ bản để xây dựng chương trình • Tổ chức chương trình. – Main program – Subroutine (optional) – Interrupt (optional)
  50. Cấu trúc chương trình
  51. 4.5. Vòng quét của CPU Hình: Vòng quét và tổ chức vùng nhớ
  52. 1- Đọc các đầu vào 4- Thực hiện tự chuẩn đoán 2- Thực hiện chương trình 5- Truyền dữ liệu ra 3- Thực hiện các yêu cầu truyền thông
  53. 1- Đọc đầu vào số: – Bắt đầu của mỗi vòng quét CPU sẽ đọc giá trị hiện thời từ tất cả các đầu vào số mà nối với nó và sau đó ghi chúng lên bộ đệm đầu vào ảo (I). – CPU luôn dự trữ khoảng 8bit trong thanh ghi đầu vào ảo. Chúng có thể được dùng, hoặc không được dùng, hoặc được dùng nhớ các bit nhớ nội M. – CPU không tự động cập nhật các đầu vào analog mà phải truy cập trực tiếp từ chương trình.
  54. 2- Thực hiện chương trình: – Trong khoảng thời gian của vòng quét, CPU sẽ thực hiện tuần tự từ câu lệnh đầu tiên đến câu lệnh cuối cùng của chương trình. – Đối với câu lệnh I/O tức thời thì CPU sẽ truy cập trực tiếp đến các đầu I/O vật lý trong suốt thời gian thực hiện chương trình. – Đối với chương trình ngắt thì CPU sẽ thực hiện bất cứ khi nào có sự kiện ngắt xảy ra.
  55. • 3- Xử lý các yêu cầu truyền thông: – Trong khoảng thời gian xử lý thông tin của mỗi vòng quét thì CPU sẽ thực hiện bất kỳ một yêu cầu nào nhận được từ cổng truyền thông. • 4- Thực hiện tự chuẩn đoán: – CPU sẽ kiểm tra chương trình nằm trong nó và bộ nhớ chương trình (ở chế độ RUN). Và kiểm tra tất cả trạng thái của các module vào/ra.
  56. 5- Truyền dữ liệu ra thiết bị ngoại vi: – Kết thúc mỗi vòng quét CPU đưa tất cả các giá trị chứa trong thanh ghi đầu ra ảo tới các đầu ra số cùng một lúc. – CPU cũng luôn dự trữ khoảng 1byte (8 bit) trong thanh ghi đầu ra ảo. Nếu CPU hoặc module mở rộng không đưa ra các đầu ra vật lý thì các bit này sẽ không được dùng tiếp trong các module tiếp sau. Mà nó có thể được sử dụng như các bit nội M. – CPU không cập nhật tự động các đầu ra analog. Vì vậy phải truy cập trực tiếp các đầu ra số từ chương trình. – Khi chế độ hoạt động của CPU được chuyển từ RUN -> STOP thì các đầu ra số được thiết lập lên giá trị được đặt trong Output table hoặc chúng được thay thế bởi trạng thái hiện thời của chúng. – Các đầu ra analog luôn duy trì ở giá trị đưa ra cuối cùng
  57. • Thực hiện ngắt vòng quét (Interrupting the Scan Cycle): – Chương trình ngắt kết hợp với mỗi sự kiện ngắt được đặt trong chương trình như là một phần của chương trình. Và nó chỉ được thực hiện khi có sự kiện ngắt sảy ra (theo mức độ ưu tiên).
  58. • Các thanh ghi vào/ra ảo (Process-Image I/O Registers) Có lợi ích gì khi sử dụng các thanh ghi ảo? – Giúp cho hệ thống ổn định: Việc lấy mẫu tất cả các đầu vào ở đầu mỗi vòng quét sẽ là đồng thời và ổn định. Các đầu ra được cập nhật giá trị sau khi hoàn thành mỗi vòng quét. – Cho phép chương trình xử lý nhanh hơn: chương trình truy nhập tới thanh ghi ảo (bộ đệm) sẽ nhanh hơn là truy nhập trực tiếp tới các đầu vào/ra thực. – Có tính linh hoạt hơn: các điểm vào/ra thực là các thực thể bit do đó nó phải truy nhập dưới dạng bit. Trong khi đó, nếu truy nhập đến bộ đệm thì ta có thể truy nhập theo nhiều kiểu:bit, byte, word, double word.
  59. • Vào/ra tức thời (Immediate I/O): – Cho phép truy nhập thẳng tới các điểm vào ra thực, mặc dù các thanh ghi ảo vẫn được sử dụng bình thường cho các mục đích đã nêu. – Địa chỉ của thanh ghi ảo đầu vào tương ứng sẽ không thay đổi khi thực hiện một lệnh tức thời từ đầu vào. – Địa chỉ của thanh ghi ảo đầu ra tương ứng sẽ được cập nhật đồng thời khi thực hiện lệnh tức thời để truy nhập đến đầu ra.
  60. • Chú ý: – Thời gian của một vòng quét sẽ giới hạn tốc độ tín hiệu đầu vào đối với từng loại PLC tương ứng.(Thời gian quét trung bình khoảng từ 10-50 ms). – Tốc độ tín hiệu đầu vào phù hợp phải có tần số < 1/(2* thời gian vòng quét). • VD: chu kỳ quét của CPU là 40 ms thì phù hợp với tốc độ tần số đầu vào khoảng : 12.5 Hz. – Phải sử dụng bộ đếm tốc độ cao đối với những tín hiệu đầu vào xuất hiện nhanh hơn thời gian quét của CPU.
  61. Ảnh hưởng vòng quét lên xung nhanh Bắt đầu Vòng quét Đầu vào Đầu vào Đầu vào
  62. 4.6. Lựa chọn chế độ hoạt động của CPU • Stop • Run
  63. 4.7. Giám sát chương trình • Có 3 cách thực hiện: – Sử dụng vòng quét đơn hoặc kép để giám sát chương trình.(Giới hạn số vòng quét: 1 đến 65.535 vòng). – Sử dụng bảng trạng thái: có thể đọc, ghi, thay đổi các biến trong khi chương trình đang chạy. – Hiển thị trạng thái của chương trình thông qua mạch Ladder Logic: cho phép giám sát trạng thái trực tuyến của chương trình. Điều này cho phép giám sát được trạng thái của các câu lệnh trong chương trình.
  64. Chương 5: Cấu trúc bộ nhớ, kiểu dữ liệu và chế độ định địa chỉ • 5.1. Phân chia bộ nhớ. • 5.2. Định địa chỉ trực tiếp của miền nhớ. • 5.3. Định địa chỉ gián tiếp của miền nhớ.
  65. 5.1. Cấu trúc bộ nhớ của CPU S7-200 Tụ EEPROM RAM
  66. 5.1.1. Download và upload chương trình Data block (DB1) Chương trình, cấu hình và khối dữ liệu Thực hiện Download chương trình
  67. DB1 trong RAM DB1 trong EEPROM Thực hiện Upload chương trình
  68. 5.1.2 – Xác định các vùng nhớ duy trì trong bộ nhớ • Các vùng nhớ có thể chọn: V, M, C, và T • Chú ý: – Đối với Timer chỉ có TONR được chọn – Chỉ có giá trị hiện thời của T và C mới được duy trì.
  69. 5.2. Định địa chỉ trực tiếp của miền nhớ • Sử dụng địa chỉ miền nhớ để truy nhập dữ liệu • Biểu diễn các con số • Định địa chỉ thanh ghi đầu vào ảo (I) • Định địa chỉ thanh ghi đầu ra ảo(Q) • Định địa chỉ miền nhớ chứa biến (V) • Định địa chỉ miền nhớ bit (M) • Định địa chỉ miền nhớ rơle điều khiển tuần tự (S) • Định địa chỉ các bit nhớ đặc biệt (SM) • Định địa chỉ miền nhớ Timer (T) • Định địa chỉ miền nhớ Counter (C) • Định địa chỉ các đầu vào analog (AI) • Định địa chỉ các đầu ra analog (AQ) • Định địa chỉ cho các bộ chứa • Định địa chỉ cho các bộ đếm tốc độ cao (HC) • Sử dụng các giá trị hằng số
  70. 5.2.1. Sử dụng địa chỉ miền nhớ để truy nhập dữ liệu • Truy nhập địa chỉ của một bit nào đó trong miền nhớ: – Tên của miền nhớ? – Địa chỉ byte? – Chỉ số bit?
  71. Truy nhập bit dữ liệu trong miền nhớ
  72. • Truy nhập một byte, word, hay double word trong miền nhớ: – Tên miền nhớ? – Kích cỡ dữ liệu? (Data Size: B, W, D) – Địa chỉ byte đầu tiên của byte, word, double word.
  73. Truy nhập Byte, Word và Double Word
  74. 5.2.2. Biểu diễn các con số
  75. 5.2.3. Định địa chỉ thanh ghi đầu vào ảo (Process-Image Input Register) • Ý nghĩa:CPU đọc tất cả các đầu vào vật lý ở thời điểm bắt đầu của mỗi vòng quét và ghi vào thanh ghi đầu vào ảo (I) . • Định dạng: – Bit I[byte address].[bit address] I0.1 – Byte, word, double word I [size] [starting byte address] IB4
  76. 5.2.4. Định địa chỉ thanh ghi đầu ra ảo (Process-Image Output Register) • Ý nghĩa: Ở cuối mỗi vòng quét CPU sao chép các giá trị từ thanh ghi ra ảo (Q) đến các đầu ra vật lý. • Định dạng: – Bit Q[byte address].[bit address] Q1.1 – Byte, word, double word Q [size] [starting byte address] QB5
  77. 5.2.5. Định địa chỉ miền nhớ V (Variable memory) • Ý nghĩa: Sử dụng miền nhớ V để lưu các kết quả trung gian của các phép tính hoặc lưu các giá trị có liên quan tới quá trình hoạt động. • Định dạng: – Bit V[byte address].[bit address] Ví dụ: V10.2 – Byte, word, double word V [size] [starting byte address] Ví dụ: V W100
  78. 5.2.6. Định địa chỉ miền nhớ nội M (Internal memory) • Ý nghĩa: sử dụng bit nhớ nội M như các rơle điều khiển để lưu các trạng thái trung gian của quá trình hoạt động. • Định dạng: – Bit M[byte address].[bit address] M20.2 – Byte, word, double word M [size] [starting byte address] MD20
  79. 5.2.7. Định địa chỉ miền nhớ S (Sequence Control Relay memory) • Ý nghĩa: dùng để tổ chức hoạt động của hệ thống. • Định dạng: – Bit S[byte address].[bit address] S3.2 – Byte, word, double word S[size] [starting byte address] SB4
  80. 5.2.8. Định địa chỉ các bit SM (Special Memory Bits) • Ý nghĩa: Sử dụng trong truyền thông và lựa chọn một số chức năng đặc biệt. • Định dạng: – Bit SM[byte address].[bit address] SM0.2 – Byte, word, double word SM[size] [starting byte address] SMB86
  81. 5.2.9. Định địa chỉ miền nhớ T (Timer Memory) • Ý nghĩa: lưu giữ các giá trị của bộ Timer – Giá trị hiện thời (Current value): số nguyên16bit (chứa số lần đếm bởi Timer). – Giá trị đầu ra của Timer (Timer bit) : bit này được set bằng 1 khi giá trị đếm hiện thời của timer lớn hơn hoặc bằng giá trị đặt trước. • Truy nhập tới Timer bit hay Current value phụ thuộc vào câu lệnh: – Câu lệnh với toán tử bit truy nhập tới Timer bit – Câu lệnh với toán tử word thì truy nhập tới Current value • Format: T[timer number] T24
  82. 5.2.10. Định địa chỉ miền nhớ C ( Counter Memory) • Ý nghĩa: lưu giữ các biến của Counter – Current value: số nguyên 16 bit (chứa tổng số đếm tích lũy). – Counter bit: bit này được set ở 1 khi giá trị đếm hiện thời của counter lớn hơn hoặc bằng giá trị đặt trước. • Format: C[counter number] C20
  83. 5.2.11. Định địa chỉ AI (Analog Inputs) • Ý nghĩa: CPU thực hiện chuyển đổi các giá trị analog thành các giá trị digital 16-bit. Sử dụng vùng địa chỉ AI để truy nhập các giá trị đó. • Truy nhập các giá trị này bằng cách: – Tên vùng (AI) – Kích cỡ của dữ liệu (W) – Địa chỉ byte bắt đầu • Format: truy nhập tới địa chỉ các byte chẵn: AIW0, AIW2, AIW4 AIW [starting byte address] AIW8
  84. 5.1.12. Định địa chỉ AQ (Analog Output) • Ý nghĩa: CPU thực hiện chuyển đổi các giá trị digital 16 bit thành các giá trị analog (dòng điện, điện áp ) hoặc các giá trị digital tương ứng. Sử dụng miền nhớ AQ để truy cập đến các giá trị đó. • Truy nhập các giá trị này bằng cách: – Tên vùng (AQ) – Kích cỡ của dữ liệu (W) – Địa chỉ byte bắt đầu • Format: sử dụng địa chỉ byte chẵn: AQW0, AQW2, AQW4 AQW [starting byte address] AQW10
  85. 5.1.13. Định địa chỉ AC (Accumulators) • Ý nghĩa: AC là thiết bị đọc ghi có thể coi như bộ nhớ (đọc và ghi các tham số cho chương trình con, lưu các giá trị trung gian sử dụng cho các phép tính) • CPU cung cấp 4 thanh ghi AC chứa 32-bit • Truy nhập dữ liệu trong thanh ghi chứa này dưới dạng: B, W, D. • Format: AC [accumulator number] AC1
  86. Địa chỉ của Accumulators
  87. 5.1.14. Định địa chỉ HC (High-speed Counters) • Ý nghĩa: Sử dụng bộ đếm tốc độ cao để đếm các sự kiện nhanh hơn CPU có thể thực hiện đối với một vòng quét. Giá trị đếm hiện thời của bộ đếm là giá trị integer 32 bit có dấu. Sử dụng vùng HC để có thể truy nhập các giá trị cho bộ đêm này. • Truy nhập giá trị đếm của bộ đếm HC: – Kiểu vùng nhớ (HC) – Số thứ tự của bộ đếm (HC0, HC1 ) • Format: (Chỉ truy nhập dạng D (32bit)) HC [high-speed counter number] HC1
  88. 5.1.15. Sử dụng các giá trị hằng • Format: – Decimal [decimal value] – Hexadecimal 16#[hexadecimal value] – ASCII ‘[ASCII text]’ • Ví dụ: – Decimal constant: 20047 – Hexadecimal constant: 16 # 4E4F
  89. 5.3. Định địa chỉ gián tiếp của miền nhớ • Định địa chỉ gián tiếp (Indirect addressing): sử dụng con trỏ (pointer) để truy nhập dữ liệu trong miền nhớ. • Ý nghĩa: Truy nhập gián tiếp tới các miền nhớ sau: I, Q, V, M, S, T và C (chỉ đối với giá trị hiện thời).
  90. • Con trỏ (Pointer): – Ý nghĩa: dùng để lấy địa chỉ gián tiếp trong miền nhớ hoặc lấy nội dung của miền nhớ mà con trỏ đang trỏ tới. – Miền chứa: Mỗi con trỏ đều chiếm vị trí trong miền nhớ là 4 byte (D). Con trỏ được định nghĩa trong miền V hoặc miền các thanh ghi accumulator (AC1, AC2, AC3). – Tạo ra con trỏ: sử dụng lệnh MOVD (Move Double Word). Toán tử đầu vào của lệnh MOVD phải đặt trước bởi ký hiệu & • Ví dụ: MOVD &VB100, VD204 MOVD &MB4 , AC2
  91. Sử dụng con trỏ để truy nhập dữ liệu • (*) con trỏ: là toán hạng lấy nội dung của byte, word hoặc double word mà con trỏ đang chỉ vào.
  92. Thay đổi con trỏ • Chú ý: – Khi truy nhập theo byte, tăng giá trị con trỏ lên 1 – Khi truy nhập theo Word, tăng giá trị con trỏ lên 2 – Khi truy nhập theo Double Word, tăng giá trị con trỏ lên 4
  93. Chú ý • Giới hạn cho phép định địa chỉ vùng nhớ của CPU (xem bảng)
  94. Chương 6 - Các đầu I/O • Các đầu vào/ra vật lý (I/O): – Đầu vào (I): tiếp nhận các tín hiệu từ các thiết bị trường (VD: các sensor hay các khóa chuyển mạch ). – Đầu ra (Q): điều khiển các bóng đèn,rơle, motor hay các thiết bị ngoại vi khác
  95. • Có 2 loại I/O chính: – I/O cục bộ (Local I/O) – I/O mở rộng (expansion I/O). – I/O tốc độ cao (high-speed I/O).
  96. • 6.1. Vào/ra cục bộ và Vào/ra mở rộng (Local I/O, Expansion I/O) • 6.2. Sử dụng bộ lọc tín hiệu đầu vào để lọc nhiễu. • 6.3. Sử dụng Output Table để xác định các trạng thái đầu ra. • 6.4. Vào ra tốc độ cao (High – speed I/O)
  97. 6.1. Local I/O và Expansion I/O Các địa chỉ trong thanh ghi I/O ảo được gán địa chỉ theo địa chỉ I/O vật lý Một số địa chỉ trong thanh ghi I/O ảo có thể được dùng như các bit nhớ trong (M)
  98. Các địa chỉ trong thanh ghi I/O ảo được gán địa chỉ theo địa chỉ I/O vật lý Một số địa chỉ trong thanh ghi I/O ảo có thể được dùng như các bit nhớ trong (M) Một số địa chỉ trong thanh ghi I/O ảo không được dùng
  99. Hình: CPU S7-215
  100. Các địa chỉ trong thanh ghi I/O ảo được gán địa chỉ theo địa chỉ I/O vật lý
  101. 6.2. Sử dụng bộ lọc để loại bỏ nhiễu
  102. Ví dụ • PLC 210 không hỗ trợ input filters. • PLC 212 cho phép filters với delay times là: 0.3 -13.1 ms. • PLCs 214, 215, và 216 cho phép filters với delay times là : 0.2 - 8.7ms. • PLCs 221, 222, 224, và 226 cho phép filters với delay times là : 0.2 - 12.8 ms.
  103. 6.3. Sử dụng Output table để xác định trạng thái đầu vào
  104. 6.4. High-Speed I/O • Bộ đếm tốc độ cao (Hight – speed Counter): – Sử dụng để đếm các sự kiện ở tốc độ cao mà không thể kiểm soát được thông qua vòng quét của CPU. (HCS0, HCS1 và HCS2) • Đầu ra xung tốc độ cao (High – speed pulse output): – Thông qua Q0.0 và Q0.1 phát ra xung với tốc độ cao (PTO – High – speed pulse train output) hoặc điều chế độ rộng xung (PWM – Pulse width modulation)
  105. Chương 7- Truyền thông (Network Communication) • 7.1. Khả năng truyền thông của CPU S7-200 • 7.2. Các thành phần của mạng truyền thông • 7.3. Truyền thông dữ liệu sử dụng cab PC/PPI • 7.4. Truyền thông dữ liệu sử dụng card MPI và CP • 7.5. Truyền thông theo chuẩn DP • 7.6. Hoạt động của mạng
  106. 7.1. Khả năng truyền thông của CPU S7-200 • Giao thức truyền thông mạng: – PPI (Point-to-Point Interface) – MPI (Multipoint Interface) – PROFIBUS - DP
  107. Đặc điểm của các giao thức • Phụ thuộc vào mô hình 7 lớp OSI của kiến trúc truyền thông. • Dị bộ và có đặc điểm cơ bản của một giao thức: 1 start bit, 8 data bit, 1 bit kiểm tra tính chẵn lẻ, 1 stop bit. • Khung truyền thông phụ thuộc vào: – Đặc điểm của start và stop bit – Địa chỉ trạm đầu và cuối – Chiều dài của khung truyền – Kiểm tra tổng tính toàn vẹn của dữ liệu • Cả 3 giao thức trên có thể chạy đồng thời trên cùng một mạng. • Mạng PROFIBUS sử dụng chuẩn RS-485 với cáp đôi soắn. (Trên một segment có tới 32 thiết bị nối với nhau. Mỗi một segment mạng có chiều dài là 1200m tùy thuộc vào tốc độ truyền và có thể lên tới 9600m nếu sử dụng thêm bộ lặp (repeater)). • Có hai loại thiết bị trên mạng được hỗ trợ: master và slave • Trên một mạng có 127 địa chỉ (0 đến 126): – 32 master – Các thiết bị trên mạng phải có địa chỉ khác nhau (VD: PCs có địa chỉ mặc định là 0; panel điều khiển như TD200, OP3, OP7 có địa chỉ mặc định là 1; các bộ điều khiển khả trình có địa chỉ mặc định là 2, cổng DP của CPU 215 có địa chỉ là 126 ).
  108. PPI • Là giao thức dạng master/slave • Các thiết bị master: CPU khác (CPU S7-300, S7-400), các thiết bị lập trình SIMATIC, hoặc TD 200. • Các thiết bị slave: CPU S7-200 • Không giới hạn số lượng master giao tiếp với slave nhưng giới hạn số lượng master trên mạng là không vượt quá 32. • Chú ý: có một số trường hợp S7-200 cũng có thể làm master.
  109. MPI • Là giao thức dạng master/master hoặc master/slave. • Sự hoạt động của giao thức này hoàn toàn phụ thuộc vào loại thiết bị sử dụng. • MPI luôn thiết lập một mối liên hệ (connection) giữa hai thiết bị truyền thông với nhau. • Connection là một liên kết riêng rẽ (Private link) giữa hai thiết bị. • Mỗi CPU chỉ có thể hỗ trợ một số các connection nhất định. (H 9-2)
  110. PROFIBUS - DP • Sử dụng cho các hệ truyền thông tốc độ cao với các thiết bị I/O phân tán. • Thông thường có một master và một số thiết bị I/O slave • Chức năng của Master: – Nhận biết kiểu và địa chỉ của I/O slave giao tiếp với nó. – Khởi tạo mạng và xác nhận các slave phù hợp với cấu hình. – Đưa dữ liệu ra các slave và đọc dữ liệu từ các slave liên tục. – Nếu có 2 master trên một mạng thì việc làm chủ các slave chỉ giới hạn cho master thứ nhất. • Ví dụ: CPU 125 có một port có chức năng như Port PROFIBUS-DP. (H 9-1)
  111. Giao thức Use-Defined (Freeport) • Truyền thông Freeport là chế độ hoạt động thông qua một chương trình của người dùng để có thể kiểm soát các cổng truyền thông của CPU S7-200. • Chế độ Freeport: – Có thể thực hiện truyền thông với một số các thiết bị thông minh. – Sử dụng các ngắt nhận/truyền (receive/transmit interrupt),các câu lệnh truyền/nhận (XMT/RCV). – Được thực hiện thông qua thiết bị SMB30 (port 0) và SMB130 (port 1). – Chỉ hoạt động (Active) khi CPU ở chế độ RUN.
  112. 7.2. Các thành phần của mạng truyền thông • Cổng truyền thông (Communication Port) • Bộ nối (Network connector) • Cáp nối (Cable for Network) • Các bộ lặp (Network Repeater)
  113. Communication Port • Tương thích với chuẩn RS-485,hình D - 9 chân phù hợp với chuẩn PROFIBUS được xác định theo chuẩn châu âu EN 50170.
  114. Mô tả tín hiệu trên các chân của cổng truyền thông Socket PROFIBUS Port 0 và Port 1 DP Port 1 Chắn Logic Logic 2 24V DC Logic Logic 3 Tín hiệu RS-485 Tín hiệu RS-485 Tín hiệu RS-485 4 Yêu cầu - Gửi Không dùng Yêu cầu - gửi 5 5V Logic + 5V 6 +5V +5V +5V 7 +24V +24V +24V 8 RS-485 RS – 485 RS-485 9 Không thích hợp Không dùng Không dùng
  115. Network Connector • Có hai loại connector: – Bộ nối chỉ thực hiện kết nối với các CPU – Bộ nối có kết nối thêm với cổng lập trình (programming port): • Cho phép các thiết bị lập trình SIMATIC hay các panel điều khiển (TD 200, OP3 ) giao tiếp với mạng mà không gây sung đột với các phần kết nối khác đã có trên mạng. • Bộ nối cổng lập trình này cho phép tất cả các tín hiệu từ CPU đi qua cổng lập trình.
  116. Connerter
  117. Cable Đặc tính chung Chi tiết kỹ thuật Loại Lớp bọc cách điện, dây soắn Tiết diện dây >= 0.22 mm(2) Điện dung <60pF/m Điện trở thông thường 100 – 120 (Ohm) Tốc độ truyền Chiều dài max trong một segment 9.6 K – 93.75 K 1200 m 187.5 Kbaud 1000m 500 Kbaud 400m 1.5 Mkbaud 200m 3 – 12 Mbaud 100m
  118. Repeater
  119. 7.3. Truyền dữ liệu sử dụng cáp PC/PPI
  120. 7.4 - Truyền dữ liệu sử dụng card MPI hoặc CP Tên Loại Hệ điều hành Ghi chú MPI AT ISA hoặc MS-DOS Giao thức PPI, 9600 - được gắn Window 3.1x 19200 baud. sẵn với thiết bị lập trình Window 95, NT Giao thức PPI, MPI, Pro- DP, 9600baud – 1.5M CP 5411 AT ISA Windows 95, NT PPI, MPI, Profibus-DP, 9600 baud – 12M
  121. 7.5. Truyền thông theo chuẩn DP • Chuẩn PROFIBUS-DP: là một giao thức truyền thông I/O từ xa được định nghĩa theo chuẩn EN 50170. – DP master: • đặt cấu hình cho DP slave (địa chỉ, tham số). • được thông báo vị trí dữ liệu được đọc từ slave (Input) và vị trí lấy dữ liệu đưa tới slave (Output). • thiết lập mạng và khởi tạo các DP slave. • gửi thông báo về tham số và cấu hình I/O cho Slave. – DP slave: sẽ gửi thông báo tới DP master nếu như có một điều kiện không được chấp nhận. Và DP master sẽ đọc thông báo đó. Khi nào Slave chấp nhận các thông tin từ master gửi thì khi đó master sẽ làm chủ được slave. – Chú ý: nếu trên mạng có một master khác thì nó có thể đọc các tín hiệu vào ra của slave nhưng nó không được phép gửi bất cứ thông tin nào đến slave.
  122. CPU 215 trên mạng PROFIBUS
  123. • Sử dụng CPU 215 như là một DP slave: – Port 1 của CPU 215 là một DP port ( 9600 baud – 12Mbaud). – Master sẽ làm nhiệm vụ đặt cấu hình cho CPU 215. – CPU 215 sử dụng vùng V để truyền và nhận dữ liệu từ master. – Dữ liệu trong vùng V này còn có thể dịch chuyển sang một miền nhớ khác trong CPU 215.
  124. • Cấu hình: – Địa chỉ của slave phải phù hợp với địa chỉ đặt trong DP slave. (Có thể thực hiện thay đổi cấu hình bằng cách sử dụng STEP7-Micro/Win để đặt lại). – Master thực hiệnh chao đổi dữ liệu với mỗi Slave bằng cách gửi các bản tin từ vùng Output tới bộ đệm Output của slave (gọi là Receive mailbox).Slave sẽ trả lời bản tin đó bằng cách gửi trả vào vùng đệm Input của slave rồi gửi tới vùng Input của Master.
  125. Slave Master VB: variable memory byte PI: peripheral input P: peripheral PQ: peripheral output
  126. Tính nhất quán trong dữ liệu • PROFIBUS-DP hỗ trợ 3 kiểu nhất quán dữ liệu (Data consistency): – Byte: các byte phải được truyền đi như một khối thống nhất. – Word: các byte cấu tạo lên một word phải được truyền đồng thời. – Bộ đệm dữ liệu (Buffer): toàn bộ bộ đệm phải được truyền theo một khối đơn.
  127. Token-passing Network
  128. Chương 8 - Tập hợp các lệnh trong CPU S7-200 • 8.1. Các vùng hợp lệ (cho phép) trong CPU S7-200 • 8.2. Các lệnh tiếp điểm thông thường • 8.3. Các lệnh tiếp điểm so sánh • 8.4. Các lệnh đầu ra • 8.5. Các lệnh điều khiển Timer, Counter, Clock, Pusle. • 8.6. Các lệnh điều khiển vòng lặp trong toán học và PID • 8.7. Các lệnh tăng và giảm • 8.8. Các lệnh Move, Fill và Table • 8.9. Các lệnh dịch và đảo • 8.10. Các lệnh điều khiển chương trình • 8.11. Các lệnh thao tác với ngăn sếp logic (Logic stack) • 8.12. Các toán tử logic • 8.13. Các lệnh chuyển đổi (Conversion) • 8.14. Các lệnh xử lý truyền thông và ngắt.