Em hay trình bày các phương pháp lập trình cơ bản trong PLC S7 200
STEP 7-Micro/WIN là một phần mềm lập trình cho họ PLC S7-200. Hiện phiên bản đang được sử dụng là STEP 7-Micro/Win V4.0 Service Pack 6. Show 6.1.1 Yêu cầu hệ điều hành và phần cứngMáy tính cá nhân PC, muốn cài đặt được phần mềm STEP 7-micro/WIN phải thỏa mãn những yêu cầu sau đây:
Nếu chưa có cáp để kết nối máy tính với PLC S7-200 thì ta vẫn có thể soạn thảo chương trình ở chế độ offline và kiểm tra hoạt động của chương trình với một phần mềm mô phỏng. Để truyền thông với S7-200, ta cần một trong các phần cứng sau:
6.1.2 Cài đặt phần mềmThực hiện theo các bước sau: 1. Chương trình chính (main program) 2. Chương trình con (subroutine) 3. Chương trình ngắt (interrupt rountine) 4. Khối hệ thống (system block) 5. Khối dữ liệu (data block)
6.2.1 Chương trình chính OB1 (main program)Đây là phần khung của chương trình, chứa các lệnh điều khiển chương trình ứng dụng. Với một số chương trình điều khiển nhỏ, đơn giản chúng ta có thể viết tất cả các lệnh trong khối này. Chương trình ứng dụng được xử lý bắt đầu từ chương trình chính, các lệnh được xử lý lần lượt từ trên xuống dưới và chỉ một lần ở mỗi vòng quét. Trong S7-200 chương trình được chứa trong khối OB1. 6.2.2 Chương trình con SUB (subroutine) Các lệnh viết trong chương trình con chỉ có thể được xử lý khi chương trình con được gọi (Call) từ chương trình chính, từ một chương trình con khác hoặc từ một chương trình ngắt. Sử dụng chương trình con khi chúng ta muốn phân chia nhiệm vụ điều khiển. Mỗi một chương trình con viết cho một nhiệm vụ nhỏ hoặc khi có các yêu cầu điều khiển tương tự nhau (ví dụ: điều khiển băng tải 1, điều khiển băng tải 2…) thì chúng ta chỉ cần tạo ra chương trình con một lần và có thể gọi ra nhiều lần từ chương trình chính. Sử dụng chương trình con có một số ưu điểm sau:
(Bạn đọc xem phần ví dụ và cách sử dụng chương trình con ở chương “phép toán nhị phân”). 6.2.3 Chương trình ngắt INT(interruptroutine) Chương trình ngắt được thiết kế để sử dụng cho một sự kiện ngắt được định nghĩa trước. Bất cứ khi nào sự kiện ngắt xác định xảy ra, thì S7-200 thực hiện chương trình ngắt. Chương trình ngắt không được gọi bởi chương trình chính mà theo sự kiện ngắt xảy ra. Chương trình ngắt sẽ chỉ được xử lý mỗi khi sự kiện ngắt xảy ra. (Phần chương trình ngắt sẽ được trình bày chi tiết ở tập 2). 6.2.4 Khối hệ thống (systemblock) System block cho phép ta cấu hình các tùy chọn phần cứng khác nhau cho S7-200. 6.2.5 Khối dữ liệu (data block)Data block lưu trữ các giá trị biến khác nhau (vùng nhớ V) được sử dụng trong chương trình. Giá trị ban đầu của các dữ liệu có thể nhập vào trong khối dữ liệu. (Phần khối dữ liệu sẽ được trình bày chi tiết ở tập 2). 6.3 Ngôn ngữ lập trìnhĐể có thể soạn thảo chương trình cho các PLC S7-200, chúng ta dùng phần mềm Step7 MicroWin. Và cũng giống như PLC của các hãng khác, chúng ta có 3 dạng soạn thảo thông dụng là dạng LAD, FBD và STL. Việc chọn dạng soạn thảo nào để viết chương trình điều khiển là do người dùng tùy chọn. 6.3.1 Dạng hình thang : LAD (Ladder logic)Ở dạng soạn thảo này chương trình được hiển thị gần giống như sơ đồ nối dây một mạch trang bị điện dùng các relay và contactor. Chúng ta xem như có một dòng điện từ một nguồn điện chạy qua một chuỗi các tiếp điểm logic ngõ vào từ trái qua phải để tới ngõ ra. Chương trình điều khiển được chia ra làm nhiều Network, mỗi một Network thực hiện một nhiệm vụ nhỏ và cụ thể. Các Network được xử lý lần lượt từ trên xuống dưới và từ trái sang phải. Các phần tử chủ yếu dùng trong dạng soạn thảo này là: Dạng soạn thảo này có một số ưu điểm:
6.3.2 Dạng khối chức năng : FBD (Function Block Diagram)Dạng soạn thảo FBD hiển thị chương trình ở dạng đồ họa tương tự như sơ đồ các cổng logic. FBD không sử dụng khái niệm đường nguồn cung cấp trái và phải; do đó khái niệm “dòng điện” không được sử dụng. Thay vào đó là logic ”1”. Không có tiếp điểm và cuộn dây như ở dạng LAD, nhưng có các cổng logic và các hộp chức năng. Các cổng logic như AND, OR, XOR…sẽ tương ứng với các tiếp điểm logic nối tiếp hay song song… Ví dụ: Đầu ra của các cổng logic hay hộp chức năng có thể được sử dụng để nối tiếp với đầu vào của các cổng logic hay các hộp chức năng khác. Với dạng soạn thảo này có một số điểm chính sau:
6.3.3 Dạng liệt kê lệnh : STL (StaTementList) Đây là dạng soạn thảo chương trình dạng tập hợp các câu lệnh. Người dùng phải nhập các câu lệnh từ bàn phím, giữa lệnh và toán hạng (toán hạng có thể là địa chỉ, dữ liệu) có khoảng trắng và mỗi lệnh chiếm một hàng. Ở dạng soạn thảo này sẽ có một số chức năng mà ở dạng soạn thảo LAD hay FBD không có. Ví dụ: Dạng sọan thảo này có một số điểm chính:
6.4 Soạn thảo chương trình với phần mềm STEP7- Micro/Win V4.0 SP66.4.1 Mở màn hình soạn thảo chương trìnhĐể mở STEP 7–Micro/WIN, nhấp đúp chuột vào biểu tượng STEP 7- Micro/WIN trên màn hình desktop, hoặc chọn Start > SIMATIC > STEP 7 MicroWIN V4.0. Giao diện màn hình có dạng (hình 6.1).6.4.1.1 Vùng soạn thảo chương trình Vùng soạn thảo chương trình chứa chương trình và bảng khai báo biến cục bộ của khối chương trình đang được mở. Chương trình con (viết tắt là SUB) và chương trình ngắt (viết tắt là INT) xuất hiện ở cuối cửa sổ soạn thảo chương trình. Tùy thuộc vào việc nhấp chuột ở mục nào mà cửa sổ màn hình soạn thảo chương trình tương ứng sẽ được mở. Cây lệnh hiển thị tất cả các đối tượng của dự án và các lệnh để viết chương trình điều khiển. Có thể sử dụng phương pháp “drag and drop” (kéo và thả) từng lệnh riêng từ cửa sổ cây lệnh vào chương trình, hay nhấp đúp chuột vào một lệnh mà muốn chèn nó vào vị trí con trỏ ở màn hình soạn thảo chương trình. 6.4.1.3 Thanh chức năng Thanh chức năng chứa một hóm các biểu tượng để truy cập các đặc điểm chương trình khác nhau của STEP 7–Micro/WIN.
Nhắp đúp chuột vào biểu tượng này để mở ra cửa sổ soạn thảo các chương trình ứng dụng (OB1, SUB hoặc INT)
Bảng ký hiệu (Symbol table) cho phép người dùng mô tả các địa chỉ sử dụng trong chương trình dưới dạng các tên gọi gợi nhớ. Điều này giúp cho việc đọc hiểu chương trình dễ dàng và khi viết chương trình ít bị sai sót do sử dụng trùng địa chỉ. Bảng trạng thái (Status chart) cho phép người dùng giám sát trạng thái các ngõ vào và thay đổi trạng thái từng ngõ ra. Sử dụng bảng trạng thái để kiểm tra nối dây phần cứng và xem nội dung các vùng nhớ. Trong đó: + Cột Address: Cho phép nhập địa chỉ các biến hay vùng nhớ + Cột Format: Cho phép chọn dạng dữ liệu của địa chỉ + Cột Current Value: Hiển thị giá trị hiện hành của địa chỉ + Cột New Value: Cho phép thay đổi trạng thái ngõ ra hay nội dung vùng nhớ Data Block: Sử dụng Data Block như một vùng nhớ để đặt trước dữ liệu cho các biến thuộc vùng nhớ V. Có thể tạo ra các Data block khác nhau và đặt tên theo dữ lliệu chương trinh. Ví dụ: * System Block : Đây là khối chức năng hệ thống, khi mở System Block chúng ta có thể cài đặt các chức năng như:
Bảng tham chiếu cho biết những địa chỉ vùng nhớ nào (Byte, bit, word hay DWord, timer, counter…) đã sử dụng và ví trí (location) trong chương trình cũng như chức năng của chúng. Một ví dụ bảng cross reference được cho ở hình 6.2. Tại cột Element, nhắp đúp vào địa chỉ nào thì trình soạn thảo sẽ mở cho chúng ta cửa sổ chương trình có chứa địa chỉ tương ứng. Việc này giúp cho chúng ta dễ dàng kiểm tra hay thay đổi địa chỉ khi có nhu cầu. Các biểu tượng này khi kích hoạt sẽ mở ra hộp thoại cho phép chúng ta cài đặt các giao tiếp với máy tính như: chọn cổng giao tiếp, địa chỉ CPU, tốc độ truyền. Đây là bước cần thực hiện khi bắt đầu giao tiếp giữa PLC với máy tính. Hình 6.4: Cửa sổ Set PG/PC Interface. 6.4.2 Thanh công cụ (Toolbar) trong STEP7-Micro/WINTrong phần mềm có đặt sẵn nhiều công cụ giúp người lập trình dễ dàng trong việc sử dụng. Các công cụ có ý nghĩa như sau: 6.4.4 Thư viện Thư viện (Libraries) được sử dụng để lưu trữ các khối chương trình con có truyền tham số được sử dụng để lập trình. Các khối có thể copy vào trong một thư viện từ một dự án có sẵn hoặc chúng có thể được tạo ra trực tiếp trong thư viện độc lập với các dự án. Khi cài đặt STEP 7-Micro/WIN thì các khối chưa được cài đặt vào trong thư viện. Để cài đặt thư viện chuẩn có thể download thư viện S7-200 từ trang www.siemens.com hoặc sử dụng đĩa phần mềm STEP 7–Micro/WIN Add-on: STEP 7–Micro/WIN 32 Instruction Library, V1.1 (CD-ROM). Có thể chèn thêm hoặc xóa bỏ bớt các khối chương trình trong thư viện sử dụng File > Add/Remove Libraries và sau đó chọn thẻ Add để chọn khối chương trình thư viện mong muốn đưa vào thư viện. Để mở thư viện, vào Cây Lệnh chọn mục Libraries, chọn các khối chương trình cần sử dụng. Việc tạo thêm các khối chương trình con truyền tham số được sử dụng để làm thư viện có thể được tạo ra từ File > Create Library và chọn chương trình con cần làm thư viện. 6.4.5 Hệ thống trợ giúp trong STEP 7-Micro/WINTrường hợp gặp khó khăn trong lập trình cũng như cần tìm hiểu rõ hơn về một thông tin nào đó trong phần mềm ta có thể sử dụng công cụ trợ giúp. Có nhiều cách khác nhau để mở trợ giúp:
Hình 6.8: Màn hình trợ giúp
Khi nhấp chuột vào các từ được nổi lên có màu xanh và gạch chân (hotwords) sẽ xuất hiện các trợ giúp chi tiết hơn. 6.4.6 Xóa bộ nhớ CPUKhi xóa PLC thì PLC phải đặt ở chế độ STOP và reset PLC theo chuẩn nhà máy, ngoại trừ địa chỉ PLC, tốc độ truyền, và đồng hồ thời gian (time-of- date clock). Để xóa chương trình trong PLC thực hiện như sau:
6.4.7 Mở một dự án đang tồn tại sẵnMở một dự án tồn tại (tập tin có phần mở rộng .mwp) hay thành phần của dự án và bắt đầu một phần soạn thảo mới bằng cách sử dụng các phương pháp sau:
Để mở các dự án được tạo với các phiên bản trước của STEP 7- Micro/WIN hay STEP 7-Micro/DOS thì nhấp chuột vào Open hay chọn File>Open và chọn tập tin mong muốn.Chú ý: – Dự án đã tạo bằng các phiên bản trước của STEP 7-Micro/WIN hay STEP 7-Micro/DOS có thể chứa một hay nhiều cấu trúc logic mà STEP 7- Micro/WIN, Version 3.0 và cao hơn không hỗ trợ. Để mở được dự án, ta phải sử dụng phiên bản cũ đã tạo dự án và lưu lại dự án theo thủ tục sau:
6.4.8 Kết nối truyền thông S7-200 với thiết bị lập trìnhĐể kết nối truyền thông S7-200 với thiết bị lập trình thì cần phải có cáp kết nối (xem chương 4). Việc kết nối truyền thông thực hiện theo các bước sau:
Hình 6.9: Màn hình thiết lập truyền thông
6.4.9 Tải dự án từ PLCCó thể sử dụng biểu tượng trên toolbar hoặc menu File để tải (upload) chương trình từ PLC về máy tính khi sử dụng phần mềm STEP 7-Micro/WIN. Cần lưu ý là PLC đã được kết nối truyền thông với thiết bị lập trình. 6.4.9.1 Tải một khối hoặc ba khối Có thể tải khối chương trình (OB1, chương trình con, chương trình ngắt), System Block, và Data Block hay chọn lựa một trong ba khối này từ PLC về máy tính. Chương trình trong PLC không chứa các địa chỉ ký hiệu hay thông tin status chart. Do đó, ta không thể tải một bảng Symbol Table hay Status Chart. 6.4.9.2 Tải vào một dự án mới hoặc dự án rỗng Để tải chương trình về máy tính thì một cách không làm ảnh hưởng đến các chương trình đang mở là đóng nó lại và tạo một dự án mới, vì dự án mới là rỗng nên không thể vô tình phá hủy dữ liệu. Đây là cách thức an toàn để lấy khối chương trình, system block hoặc thông tin data block. Nếu muốn lấy sử dụng bảng ký hiệu (symbol table) hoặc status chart đã được tạo cho dự án này, thì có thể mở dự án cũ ở màn hình STEP 7-Micro/WIN khác và copy các thông tin này vào dự án được upload về. 6.4.9.3 Tải vào một dự án tồn tại Đây là một cách để viết đè tất cả các phần của chương trình hiện hành bằng chương trình đã được nạp vào PLC trước đó. 6.4.9.4 Thủ tục tải dự án từ PLC về thiết bị lập trình Để thực hiện tải, thực hiện các bước sau:
Hình 6.10: Hộp thoại Upload 4. STEP 7-Micro/WIN hiển thị chú ý sau: Nhấn Yes để chấp nhận việc upload. STEP 7-Micro/WIN hiển thị một thông báo khi upload các khối thành công từ PLC về thiết bị lập trình hoặc máy tính PC. 6.4.10 Nạp (download) một dự án vào PLC Khi cho phép kết nối truyền thông giữa PC và PLC, ta có thể download chương trình vào PLC. Cần lưu ý rằng khi download một program block, data block hay system block vào PLC thì nội dung của các khối được download vào sẽ viết đè lên các khối hiện hành trong PLC. Các bước thực hiện như sau:
Trong trường hợp không dùng phần mềm thì chuyển công tắc chọn chế độ cho PLC về vị trí STOP.
File > Download. Hộp Download xuất hiện.
Download Successful. Tiếp tục đến bước 12.
6.4.11.1 Menu Option Có thể định nghĩa một đường dẫn mặc định đến một thư mục tập tin xác định để mở và lưu các dự án STEP 7-Micro/WIN. Ta sử dụng menu lệnh Tools > Options. Ngoài ra, để truy cập trực tiếp Option cho từng thành phần trong cây lệnh (Instruction tree) thì trỏ chuột vào thành phần mong muốn và nhấp chuột phải, sau đó chọn mục option. Hình 6.12: Cửa sổ Options General Options
Program Editor Options
6.4.11.2 Menu Custommize Menu custommize cho phép ta thay đổi sự xuất hiện nội dung trong toolbar và thêm vào các công cụ được sử dụng thường xuyên vào menu Tools. Hình 6.13: Cửa sổ custommize. Chọn menu lệnh Tools > Customize để thiết lập các lựa chọn sau:
– Chọn Show Tooltips nếu muốn các nút nhấn hiển thị các thông tin về nó khi con trỏ chuột dừng trên nút nhấn. – Chọn Show Flat Buttons nếu muốn các nút nhấn xuất hiện ở dạng phẳng thay vì xuất hiện ở dạng 3-D.
Thẻ Add-On Tools: Thêm một công cụ vào menu Tools. Đặc điểm này được dự định để tiết kiệm thời gian đối với các công cụ được sử dụng thường xuyên. Để thêm một công cụ, nhấp vào thẻ Add-On Tools, nhấp vào nút và điền vào các vùng ở dưới:Bất kỳ lệnh được yêu cầu được bắt đầu và kết thúc bởi dấu ngoặc kép khi nhập vào vùng command(ví dụ: “xxx xxx”).
Sử dụng nút để tìm các tập tin và thư mục.Khi thêm vào một công cụ thành công, trong menu Tools xuất hiện công cụ đã thêm. 6.4.12 Soạn thảo chương trìnhTrước khi soạn thảo chương trình, các bước sau đây cần phải hoàn thành:
Trường hợp không có PLC, thì ta chỉ có thể soạn thảo chương trình và lưu trữ lại. Còn nếu muốn kiểm tra thì cần phải có phần mềm mô phỏng S7-200 Các bước để soạn thảo một dự án mới:
Để hiểu được phần mềm STEP 7-Micro/WIN dễ dàng, chúng ta nên viết một ví dụ đơn giản được cho ở hình 6.14 và bảng thiết lập vào/ra cho ở bảng 6.1. Do mới bắt đầu, ta nên viết chương trình ở dạng LAD, rồi sau đó có thể xem ở dạng FBD hay STL. Các bước thực hiện: Bước 1: Mở màn hình soạn thảo chương trình Nhấp chuột vào biểu tượng Program Block để mở màn hình soạn thảo chương trình (hình 6.15). Chú ý cửa sổ cây lệnh (instruction tree) và vùng soạn thảo chương trình. Sử dụng cây lệnh để chèn các lệnh được biểu diễn ở dạng LAD vào các networks của màn hình soạn thảo chương trình bằng cách kéo và thả các lệnh từ cây lệnh vào các networks.Để có thể nhập đầy đủ các chú thích (comment), thì cần hiển thị các chú thích trong màn hình soạn thảo chương trình. Vào View > POU Comment để hiển thị dòng chú thích tiêu đề chương trình và View > Network comments để hiển thị dòng chú thích của từng network. Hình 6.16: Màn hình soạn thảo chương trình Bước 2: Nhập bảng ký hiệu Nhấp chuột vào biểu tượng Symbol Table để mở màn hình soạn thảo bảng ký hiệu (hình 6.17).Nhập các thông tin (chữ không dấu) ở bảng 6.1 vào bảng Symbol Table. Với:
Sau khi nhập xong, ta có bảng ký hiệu như hình 6.18. Trong quá trình lập trình có thể phát sinh thêm các địa chỉ mới. Khi phát sinh thêm địa chỉ mới, ta nên bổ sung địa chỉ đó vào trong bảng ký hiệu để dễ dàng cho quá trình tìm và xử lý lỗi sau này. Bước 3: Nhập chương trình Nhấp chuột vào biểu tượng Program Block để mở lại màn hình soạn thảo chương trình (hình 6.15).
Khi ấn nút nhấn S_Right (I0.1), thì tiếp điểm I0.1 đóng, nút nhấn S_Stop là thường đóng nên ngõ vào I0.0 luôn luôn có điện hay tiếp điểm I0.0 cũng đóng, và bình thường ngõ ra Q0.1 cũng không có điện (0) nên tiếp điểm này cũng đóng. Kết hợp 3 tiếp điểm này sẽ có dòng điện cung cấp cho cuộn dây Q0.0 (nối với K1). Contactor K1 có điện đóng tiếp điểm động lực của nó để cấp nguồn cho động cơ quay phải. Tiếp điểm Q0.0 (song song I0.1) đóng duy trì dòng cung cấp cho Q0.0 khi nút nhấn S_Right hở ra. Nhập các dòng chú thích như đã cho trong hình 6.14. Nhập các tiếp điểm như sau:
Bước 4: Lưu chương trình Sau khi nhập hai network lệnh, ta đã nhập xong chương trình. Khi lưu chương trình, ta tạo một dự án bao gồm loại CPU S7-200 và các tham số khác. Để lưu một dự án, thực hiện như sau:
Bước 5: Download chương trình vào CPU Sau khi lưu dự án, ta có thể download chương trình vào S7-200. Mỗi dự án được liên kết với một loại CPU (CPU 221, CPU 222, CPU 224, CPU 224XP, hoặc CPU 226). Nếu kiểu dự án không phù hợp với CPU đang kết nối, thì STEP 7–Micro/WIN báo lỗi không tương thích và các đường dẫn để ta tiếp tục công việc. Nếu điều này xảy ra, chọn “Continue Download”. Thực hiện download chương trình như sau:
File > Download để download chương trình.
Bước 6: Đặt S7-200 ở chế độ RUN Đối với phần mềm STEP 7-Micro/WIN để đặt CPU S7-200 vào chế độ RUN |