Lập trình STL cơ bản, cách đọc logic và viết chương trình
Tóm tắt nội dung
1. Các thiết bị và lệnh cơ bản trong một chương trình PLC
1.1. Khái niệm một chương trình
Chương trình là một chuỗi các lệnh nối tiếp nhau được viết theo một ngôn ngữ mà PC có thể hiểu được. Có 3 dạng chương trình đó là INSTRUCTION, LADDER, SFC/STL.
- Instruction: hệ thống gồm những dòng lệnh nhập liên tiếp nhau.
- Ladder: phương pháp xây dựng chương trình dạng đồ họa dùng các ký hiệu logic dạng role.
- SFC/STL: chương trình dạng lưu đồ.
Không phải tất cả các công cụ lập trình đều có thể làm việc được với cả 3 dạng trên. Nói chung bộ lập trình cầm tay chỉ làm việc được với dạng INSTRUCTION, trong khi hầu hết các công cụ lập trình đồ họa sẽ làm việc được với cả dạng INSTRUCTION và LADDER . Các phần mềm chuyên dùng sẽ cho phép làm việc với dang SFC.
1.2. Các thiết bị cơ bản cần có để lập trình
Có 6 thiết bị cơ bản dùng trong lập trình. Mỗi thiết bị có công dụng riêng. Để dễ dàng xác định thì mỗi thiết bị được gán cho một ký tự :
- X : dùng chỉ ngõ vào vật lý gắn trực tiếp vào PC.
- Y : dùng chỉ ngõ ra nối trực tiếp từ PC.
- T: dùng để xác định thiết bị định thì có trong PC.
- C: dùng để xác định thiết bị đếm có trong PC.
- M và S : dùng như là các cờ hoạt động bên trong PC.
1.3. Cách đọc logic của các chương trình Ladder
Logic Ladder rất gần với logic rơ le cơ bản. Các công tắc và cuộn dây được kết nối và điều khiển theo nhiều dạng mạch khác nhau, tuy vậy, nguyên tắc cơ bản không có gì khác.
Cuộn dây có thể được dùng để điều khiển trực tiếp ngõ ra từ PC ( ví dụ thiết bị Y ), hoặc nó có thể điều khiển bộ định thì, bộ đếm, hoặc cờ ( như là thiết bị T, C, M, S). Mỗi cuộn dây gắn với các công tắc hoặc tiếp điểm, các công tắc hoặc tiếp điểm này có thể là thường mở (NO – normal open ) hoặc thường đóng ( NC – normal close).
Thuật ngữ “thường” nói đến trạng thái các công tắc khi cuộn dây không có điện. Nếu role được dùng và cuộn dây giả sử là OFF, một công tắc NO sẽ không có điện, nghĩa là tải được nối với công tắc NO sẽ không hoạt động, còn công tắc NC thì có dòng điện đi qua, vì vậy tải được nối với công tắc sẽ hoạt động.
Khi cuộn dây được kích hoạt thì trạng thái của công tắc bị đảo ngược, nghĩa là có dòng trong công tắc NO và công tắc NC lại ngăn không cho dòng điện đi qua.
Các ngõ vào vật lý nối đến bộ điều khiển lập trình ( thiết bị X) không có cuộn dây có thể lập trình. Các thiết bị này chỉ có thể được dùng ở dạng công tắc (nhận tín hiệu) mà thôi loại tiếp điểm NO và NC
Ta có ví dụ như sau:
Vì có sự kết hợp với rơ le, các chương trình ladder có thể được đọc như dòng điện đi từ trái sang phải. Dòng này phải qua một loạt các tiếp điểm như X0 và X1 để bật cuộn dây ngõ ra Y0 lên ON. Do đó, trong ví dụ sau, nếu X0 được bật ON thì ngõ ra Y0 cũng được bật lên ON. Tuy nhiên, nếu công tắc hành trình X1 được kích hoạt thì ngõ ra Y0 bị tắt OFF vì sự nối kết giữa cột trái và cột phải bị đứt, nghĩa là không có dòng điện đi qua.
2. Lập trình STL Chương trình tuần tự trong PLC
Lập trình STL ( STep Ladder) là một trong những kiểu lập trình cơ bản có trong tất cả các họ FX. Lập trình STL rất đơn giản và dễ hiểu, cung cấp cho người sử dụng một kỹ thuật lập trình mạnh nhất. Sự hiệu quả của lập trình STL là nó cho phép người lập trình tạo ra một chương trình thực thi gần giống như ý đồ của người lập trình. Chương trình STL không hoàn toàn thay thế chương trình Ladder chuẩn.
STL thể hiện mặt mạnh của nó thông qua việc tổ chức một chương trình lớn thành những phần tử nhỏ hơn. Mỗi phần tử này gọi là một trạng thái hoặc một bước. Để nhận biết các trạng thái, mỗi trạng thái được gán một ký hiệu xác định duy nhất.
Mỗi trạng thái hoàn toàn tách biệt với các trạng thái khác trong chương trình. Cách tốt nhất để hình dung điều này là mỗi trạng thái xem như là một chương trình tách biệt và người sử dụng đạt từng phần chương trình này lại với nhau theo thứ tự hoạt động củ nó. Ngoài ra các trạng thái này có thể được dùng lại nhiều lần và theo thứ tự khác nhau. Điều này tiết kiệm được thời gian lập trình và hạn chế các lỗi lập trình.
2.1. Khởi động và kết thúc chương trình trong STL
a. Khởi động chương trình tuần tự
Để bắt đầu một lập trình tuần tự STL, ta phải bật trạng thái khởi tạo lên ON sao cho thích hợp. Có nhiều phương pháp điều khiển trạng thái khởi tạo.
Các cuộn dây trạng thái khởi tạo STL có thể được kích bằng xung, dùng lệnh SET hay với lệnh OUT. Thông thường ta chỉ dùng lệnh SET để chọn các trạng thái. Khi một trạng thái đã được kích hoạt thì có nghĩa là nó được đặt lên ON ( hình a).
Đối với một chương trình STL được kích hoạt khi vừa cấp điện cho bộ điều khiển, ta có thể dùng rơle phụ trợ M8002 để điều khiển việc xác lập trạng thái khởi tạo ( hình b). Khi chương trình STL đã được khởi tạo, CPU sẽ xử lý tất cả lệnh bên trong chương trình STL.
b. Kết thúc chương trình tuần tự
Bằng cách đặt lệnh RET (tập lệnh RETurn) ở câu lệnh cuối cùng của trạng thái STL cuối cùng, khi đó lệnh này sẽ trả sự điều khiển về cho Ladder . Sau đó, mạch khởi tạo đã lập trình sẽ được xử lý đúng như phần chương trình Ladder và không còn nằm trong phạm vi hoạt động trạng thái STL cuối cùng.
2.2. Lập bước giữa các trạng thái
Để kích hoạt một trạng thái STL, trước tiên người sử dụng phải tác động cuộn dây STL. Việc tác động lên cuộn dây đó giống như cách khởi động một chương trình STL, hay gọi là kích trạng thái khởi tạo. Tuy nhiên dùng lệnh OUT và lệnh SET để kích cuộn dây STL có sự khác biệt.
a. Dùng SET để kích cuộn STL
SET được dùng để kích trạng thái STL làm cho nó hoạt động. Khi trạng thái STL1 hiện hành kích hoạt tiếp trạng thái STL2 thì cuộn dây của STL1 bị Reset. Như vậy, chỉ cần dùng SET kích hoạt một trạng thái, các trạng thái kế tiếp được kích lại một cách tự động.
Lệnh SET được dùng để kích một trạng thái nằm trong lưu trình STL, các trạng thái có liên kết với trạng thái STL hiện hành. Lệnh SET được dùng để kích trạng thái STL thấp hơn trạng thái STL hiện hành ngay sau đó.
Để Reset một trạng thái STL, ta dùng lệnh RST hoặc ZRST ( ZRST : Zone ReSeT sẽ reset một chuỗi các ngõ ra nằm trong lệnh này). Tuy nhiên, lệnh ZRST chỉ Reset được trạng thái STL sau khi các trạng thái STL đã được thực hiện xong hết một chu kỳ của nó. Đây cũng chính là một nhược điểm của lệnh ZRST.
b. Dùng lệnh OUT để kích cuộn dây STL
Lệnh OUT có tính năng giống như lệnh SET, tuy nhiên có một điều lệnh OUT khác lệnh SET là lệnh OUT có thể cho phép người lập trình được nhảy cách khoảng, bỏ qua nhiều trạng thái STL.
3. Cấu trúc của một bước trong STL
Trong chương trình tuần tự sẽ có nhiều bước, nhưng mỗi bước đưa ra cần theo đúng cấu trúc của một bước như sau:
- Chỉ thị của bước thực hiện.
- Trạng thái xảy ra trong bước.
- Điều kiện để chuyển tiếp đến bước kế.
- Bước mới được chuyển đến.
Bài này xin phép được kết thúc tại đây, nếu bạn vẫn chưa nắm chắc các khái niệm cơ bản của lập trình PLC thì có thể xem lại bài viết sau: https://nghedien.com/kien-thuc/plc/plc-la-gi
Bài cùng chủ đề