trực tiếp cổng vào ra mà chỉ thông qua bộ đệm ảo của cổng trong vùng nhớ tham số. Việc truyền thông giữa bộ đệm ảo với ngoại vi trong các giai đoạn (1) và (4) do CPU quản lý. Khi gặp lệnh vào / ra ngay lập tức hệ thống sẽ cho dừng mọi công việc khác, ngay cả chương trình xử lý ngắt để thực hiện lệnh này trực tiếp với cổng vào và ra.
2.5.5 Ngôn ngữ lập trình của S7-200 CPU 224 Phương pháp lập trình Phương pháp lập trình
S7-200 biểu diễn chương trình dưới dạng một mạch logic cứng bằng một dãy các lệnh và khối chương trình theo thứ tự quy định. Các lệnh và khối này sẽ lần lượt được quét trong chương trình từ đầu đến cuối trong một vòng quét. PLC sẽ làm việc ngay tại vòng quét đầu tiên và từ đó thực hiện liên tục chu kỳ quét. Trong mỗi vòng quét nếu có một lệnh được gọi PLC sẽ nhận lệnh đó và thực hiện, nếu không quét kịp thì tại vòng quét tiếp theo sẽ thực hiện.
Có ba phương pháp lập trình cơ bản:
- Lập trình hình thang (LAB – Ladder Logic).
- Phương pháp khối hàm (FBD – Funtion Block Diagram). - Phương pháp liệt kê câu lệnh (STL – Statement List).
Nếu chương trình được viết theo kiểu LAD hoặc FBD thì có thể chuyển sang dạng STL nhưng không phải mọi chương trình viết bằng STL đều có thể chuyển sang hai dạng kia.
biểu diễn lệnh logic.
- Tiếp điểm: Mô tả các tiếp điểm dùng trong mạch relay, toán hạng của tiếp điểm dùng trong chương trình là bit. Có hai loại tiếp điểm: thường đóng và thường mở
- Cuộn dây: mô tả cuộn dây relay. Toán hạng sử dụng là bit.
- Hộp: Là biểu tượng mô tả các hàm khác nhau làm việc khi có tín hiệu đến kích. Những hàm thường được biểu diễn bằng hộp là các hàm tạo thời gian (Timer), hàm đếm (Counter) và các hàm toán học.
- Mạng LAD: Là đường nối các phần tử thành một mạch hoàn chỉnh. Thông thường các tín hiệu điện phải đi từ dây nóng qua thiết bị rồi đến dây trung hoà sau đó về nguồn, tuy nhiên trong phần mềm lập trình chỉ thể hiện dây nóng và bên trái và các đường nối đến thiết bị từ đó.
STL
Phương pháp liệt kê lệnh là phương pháp lập trình bằng cách tập hợp các câu lệnh, mỗi câu lệnh thể hiện một chức năng của chương trình.
Để tạo một chương trình dạng STL người lập trình cần phải hiểu rõ phương thức sử dụng ngăn xếp. Ngăn xếp logic là một khối gồm 9 bit chồng lên nhau từ S0 – S8. Tất cả các thuật toán liên quan đến ngăn xếp đều chỉ làm việc với bít đầu tiên (S0) và bit thứ hai (S1) của ngăn xếp. Giá trị logic mới đều có thể được gửi hoặc nối thêm vào ngăn xếp. Khi phối hợp hai bit đầu tiên của ngăn xếp thì ngăn xếp sẽ được kéo lên một bit.
Ngăn xếp và tên bit:
S0 Bit đầu tiên hay bit trên cùng của ngăn xếp S1 Bit thứ hai của ngăn xếp
S2 Bit thứ ba của ngăn xếp S3 Bit thứ tư của ngăn xếp S4 Bit thứ năm của ngăn xếp S5 Bit thứ sáu của ngăn xếp S6 Bit thứ bảy của ngăn xếp S7 Bit thứ tám của ngăn xếp S8 Bit thứ chín của ngăn xếp
Là phương pháp lập trình khối hàm mô phỏng các lệnh và khối làm việc trong mạch số. Các phần tử cơ bản trong phương pháp này là các khối lệnh được liên kết với nhau
Tập Lệnh S7-200
Tập lệnh của S7-200 chia làm ba nhóm:
- Các lệnh mà khi thực hiện thì làm việc độc lập không phụ thuộc vào giá trị logic của ngăn xếp.
- Các lệnh chỉ thực hiện khi bit đầu tiên của ngăn xếp có giá trị logic bằng 1.
- Các nhãn lệnh đánh dấu vị trí trong tập lệnh hay còn gọi là nhóm lệnh điều khiển chương trình.
Cả ba phương pháp đều sử dụng ký hiệu I để chỉ các lệnh làm việc tức thời, tức là giá trị được chỉ định trong lệnh vừa được chuyển vào thanh ghi ảo đồng thời được chuyển ngay đến tiếp điểm được chỉ dẫn ngay trong lệnh ngay khi được thực hiện chứ không phải chờ đến giai đoạn trao đổi với ngoại vi của vòng quét. Điều đó khác với lệnh không tức thời là giá trị chỉ chuyển vào thanh ghi ảo khi thực hiện lệnh.
Các nhóm lệnh được cho trong cây lệnh của S7-200: - Bit Logic: Tập lệnh làm việc với bit.
- Clock: Tập lệnh làm việc với thời gian của hệ thống. - Communication: Tập lệnh truyền thông.
- Compare: Tập lệnh so sánh. - Convert: Tập lệnh biến đổi. - Counter: Tập các bộ đếm.
- Floating-Point Math: Tập lệnh toán học làm việc với số thực. - Integer Math: Tập lệnh toán học làm việc với số nguyên. - Interupt: Tập lệnh làm việc với chương trình ngắt.
- Logical Operations: Tập lệnh các phép tính logic biến đổi. - Move: Tập lệnh di chuyển dữ liệu.
- Programe Control: Tập lệnh điều khiển chương trình. - Shift/Rotate: Tập lệnh dịch/quay làm việc với thanh ghi. - String: Tập lệnh làm việc với chuỗi.
- Call Subroutin: Tập lệnh gọi các chương trình con.
Các lệnh cơ bản được sử dụng trong S7-200 (Các lệnh sau đây chỉ được mô tả cho phương pháp lập trình LAD ):