PLC (Programmable Logic Controller) là thiết bị điều khiển khả trình (có khả năng lập trình được) 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 nào đó. Có 3 ngôn ngữ lập trình được sử dụng phổ biến trong các thiết bị PLC là LAD, FBD, STL. Cùng tìm hiểu kỹ hơn về chúng trong nội dung bài viết dưới đây.
Mục lục nội dung
1. Ngôn ngữ lập trình STL
Là phương pháp thể hiện chương trình dưới dạng tập hợp các câu lệnh. Để tạo ra một chương trình bằng STL, người lập trình cần phải hiểu rõ phương thức sử dụng 9 bit trong ngăn xếp (stack) logic của S7 200.
Ngăn xếp là một khối 9 bit chồng lên nhau từ S0÷S8, nhưng tất cả các thuật toán liên quan đến ngăn xếp đều làm việc với bit đầu tiên và bit thứ hai (S0 và S1) của ngăn xếp, giá trị logic mới có thể được gửi hoặc nối thêm vào ngăn xếp. Hai bit S0 và S1 phối hợp với nhau thì ngăn xếp được kéo lên một bit.
2. Ngôn ngữ lập trình LAD
LAD là một ngôn ngữ lập trình kiểu đồ họa, việc hiển thị của nó sẽ được dựa trên các sơ đồ mạch điện.
Các phần tử của một sơ đồ mạch điện, như các tiếp điểm thường đóng hay thường mở và các cuộn dây được nối với nhau để tạo thành các mạng. Để tạo ra sơ đồ logic cho các thực thi phức tạp, ta có thể chèn vào các nhánh để tạo ra các mạch logic song song. Các nhánh song song được mở ra theo hướng xuống hay được kết nối trực tiếp đến thanh dẫn tín hiệu. Ta kết thúc các nhánh theo hướng lên trên.
Cần chú ý đến các quy tắc sau đây khi tạo ra một mạng LAD:
• Mỗi mạng LAD phải kết thúc bằng một cuộn dây hay một lệnh dạng hộp. Không được kết thúc một mạng với cả lệnh so sánh (Compare) hay lệnh phát hiện ngưỡng (ngưỡng dương hay ngưỡng âm).
• Ta không thể tạo ra một nhánh mà có thể đưa lại kết quả là một dòng tín hiệu theo chiều ngược lại.
• Ta không thể tạo ra một nhánh mà có thể gây nên ngắn mạch.
3. Ngôn ngữ lập trình FBD
Giống như ngôn ngữ LAD, ngôn ngữ FBD cũng là một ngôn ngữ lập trình kiểu đồ họa. Sự hiển thị của mạch logic được dựa trên các biểu tượng logic đồ họa sử dụng trong đại số Boolean.
Các hàm toán học và các hàm phức khác có thể được thể hiện một cách trực tiếp trong sự kết hợp với các hộp logic. Để tạo ra logic cho các vận hành phức tạp, ta chèn các nhánh song song giữa các hộp.
Việc hiểu biết về EN và ENO cho các lệnh “hộp”
Cả ngôn ngữ LAD và FBD đều sử dụng “dòng tín hiệu” (EN và ENO) đối với một vài lệnh “hộp”. Các lệnh cố định (như lệnh toán học và lệnh di chuyển) hiển thị các thông số cho EN và ENO. Các thông số này liên quan đến dòng tín hiệu và xác định khi nào lệnh được thực thi trong suốt lần quét đó.
• EN (Enable In) là một ngõ vào Boolean cho các hộp trong ngôn ngữ LAD và FBD. Dòng tín hiệu (EN = 1) phải được hiện diện tại ngõ vào này để cho lệnh hộp được thực thi. Nếu ngõ vào EN của một hộp LAD được kết nối trực tiếp đến thanh dẫn tín hiệu bên trái, hộp sẽ luôn luôn được thực thi.
• ENO (Enable Out) là một ngõ ra Boolean cho các hộp trong ngôn ngữ LAD và FBD. Nếu hộp có dòng tín hiệu tại ngõ vào EN và hộp thực thi các chức năng của nó mà không có lỗi, khi đó ngõ ra ENO sẽ cho dòng tín hiệu (ENO = 1) đi qua đến phần tử kế tiếp. Nếu một lỗi được phát hiện trong quá trình thực thi của lệnh hộp, dòng tín hiệu sau đó sẽ bị ngắt (ENO = 0) tại hộp lệnh đã sinh ra lỗi.
TỔNG KẾT
Phía trên là tổng hợp về 3 ngôn ngữ lập trình trong các thiết bị PLC và đặc điểm cụ thể của chúng. Các ngôn ngữ được sử dụng lập trình các chương trình điều khiển và thiết bị phù hợp với từng nhu cầu, mục đích của các doanh nghiệp khác nhau.