a, Điều khiển trình tự và ưu thế nổi bật của ngôn ngữ lập trình SFC
Điều khiển trình tự là một mảng quan trọng và có vai trò không nhỏ trong điều khiển tự động. Có thể gặp rất nhiều ví dụ về điều khiển trình tự trong công nghiệp, trong dân dụng cũng như trong nhiều lĩnh vực khác. Các hệ thống trạm trộn, lò phản ứng, một dây chuyền sản xuất xi măng hay một máy giặt và cụ thể hơn là hệ thống trạm trộn bê tông được trình bày trong đồ án này là một ví dụ khá điển hình cho điều khiển trình tự. Đặc biệt trong công nghiệp, điều khiển trình tự thường giữ vai trò chính điều khiển các công đoạn, các quá trình theo trình tự trong một dây chuyền sản xuất.
Kể từ sau sự xuất hiện của các PLC và các hệ DCS đầu tiên, các ngôn ngữ lập trình điều khiển như LAD, FBD, IL…đã trở nên phổ biến và được sử dụng rộng rãi trong thực tế. Đây là những ngôn ngữ lập trình điều khiển mạnh, được hỗ trợ rất hoàn chỉnh trong hầu hết các hệ thống PLC và DCS hiện nay. Tuy nhiên các ngôn ngữ này lại tỏ ra không phù hợp cho lập trình điều khiển trình tự bởi những lý do sau:
- Khó hình dung, thiếu trực quan
- Sử dụng các ngôn ngữ lập trình này sẽ gặp nhiều khó khăn, phức tạp - Dễ mắc lỗi, khó phát hiện và sửa lỗi
- Kém linh hoạt, khó mở rộng
Nguyên nhân cơ bản của các khó khăn trên là do bản chất của các ngôn ngữ lập trình này không phù hợp để mô tả các hệ thống hoạt động theo trình tự. Ngôn ngữ lập trình SFC tỏ ra rất thích hợp cho điều khiển trình tự.
Ngôn ngữ SFC là sự cụ thể hóa của Grafcet, có tính đến các yếu tố kỹ thuật và chức năng điều khiển, đã được chuẩn hóa. Ngôn ngữ SFC đã được sử dụng trong một số hệ thống PLC và DCS hiện nay như các sản phẩm của Siemens, Emerson, Mitsubishi… với những ưu điểm nổi trội sau:
- Có sự tương ứng và giống với biểu đồ quá trình hoạt động của hệ thống
- Dễ dàng chuyển từ sơ đồ công nghệ hay mô tả quá trình hoạt động của hệ thống sang SFC - Lập trình trực quan, đơn giản
- Thuận lợi cho phân tích, tìm hiểu hệ thống
- Hạn chế khả năng mắc lỗi. Dễ dàng tìm và phát hiện các lỗi nếu có - Linh hoạt, dễ dàng them, bớt hay sửa đổi quá trình hoạt động
b, Các yếu tố cơ bản của ngôn ngữ lập trình SFC
Các yếu tố cơ bản của SFC là bước (Step), chuyển tiếp (Transition) và hành động (Action).
- Bước: diễn tả một trạng thái mà tại đó, ứng xử của hệ thống được xác định trước bởi các hành động gắn với bước đó. Một bước có thể tích cực hoặc không tích cực. Tại một thời điểm bất kỳ, trạng thái của hệ thống được xác định bởi tập hợp các bước tích cực và các giá trị biến nội tại và biến ra. Mỗi mạng SFC chỉ có chính xác duy nhất một bước bắt đầu (initial step), xác định trạng thái ban đầu của hệ thống. Một bước được thể hiện dạng đồ họa bằng một khối hình chữ nhật có một đầu vào và một đầu ra. Bước bắt đầu được biểu diễn bằng hình chữ nhật với đường bao là nét đôi.
Step 1
Bước thường Bước bắt đầu Hình 3.4. Bước trong lập trình SFC
- Chuyển tiếp: thể hiện một điều kiện chuyển trạng thái của hệ thống, từ một hay nhiều bước phía trước xuống một hay nhiều bước phía sau. Mỗi chuyển tiếp được gắn với một điều kiện chuyển tiếp mà giá trị logic của nó sẽ điều khiển sự thực hiện của quá trình chuyển tiếp. Các bước phải được nối với nhau thông qua các chuyển tiếp. Có 3 loại chuyển tiếp được quy định trong chuẩn là: chuyển tiếp đơn giản, chuyển tiếp phân nhánh cạnh tranh, chuyển tiếp phân nhánh song song.
Chương 3.Giới thiệu PLC Mitsubishi FX3U và ngôn ngữ lập trình SFC
Hình 3.5. Chuyển tiếp trong lập trình SFC
- Hành động: là tập hợp các luật ứng xử cảu hệ thống được thực hiện khi bước mà nó gắn với được tích cực. Một hành động có thể đơn giản chỉ là một biến, cũng có thể là một đoạn chương trình viết bằng một trong các ngôn ngữ lập trình đã định nghĩa trong chuẩn. Các hành động không gắn trực tiếp với các bước mà gián tiếp thông qua các khối hành động. Một khối hành động chỉ gắn với một hành động duy nhất và một bước duy nhất. Mỗi khối hành động có một cờ xác định cách thức hoạt động của nó.
Bảng dưới đây tóm tắt ý nghĩa của các cờ đã được quy định trong chuẩn.
Cờ Ý nghĩa Cờ Ý nghĩa
Trống Giống như N P Xung
N Không lưu trữ SD Lưu trữ và trễ thời gian
R Xoá DS Trễ thời gian và lưu trữ
S Lưu trữ (đặt) SL Lưu trữ và giới hạn thời gian L Giới hạn về thời gian P1 Sườn lên
D Trễ thời gian P0 Sườn xuống
Bảng 3.2 – Ý nghĩa các cờ trong lập trình PLC
tích cực và điều kiện chuyển tiếp được thỏa mãn. Quá trình chuyển tiếp diễn ra theo trình tự sau:
+ Tất cả các bước ở phía trước chuyển tiếp và nối trực tiếp với chuyển tiếp đồng thời mất tích cực
+ Tất cả các bước ở phía sau chuyển tiếp và nối trực tiếp với chuyển tiếp đồng thời tích cực + Sau khi đã được tích cực đồng thời, các bước ở phía sau chuyển tiếp sẽ hoạt động độc lập với nhau.