Sự khác nhau giữa lập trình Logic bậc thang so với các ngôn ngữ lập trình khác

Trong bài viết hôm nay, chúng ta sẽ nói về Ladder Logic, thường được gọi là Sơ đồ bậc thang và so sánh nó với các ngôn ngữ lập trình PLC khác .

Như bạn có thể biết, PLC là máy tính chuyên dụng được thiết kế để giám sát và điều khiển các quy trình tự động. PLC được lập trình bằng các ngôn ngữ lập trình được xác định trong tiêu chuẩn IEC 61131-3.

Tiêu chuẩn này xác định 5 ngôn ngữ lập trình được gọi là Sơ đồ bậc thang , Sơ đồ khối chức năng , Văn bản có cấu trúc , Biểu đồ chức năng tuần tự và Danh sách lệnh được hầu hết các nhà sản xuất PLC hỗ trợ.

Bây giờ chúng ta đã biết những ngôn ngữ lập trình nào có sẵn cho PLC, hãy bắt đầu bằng cách nói về Sơ đồ bậc thang trước khi so sánh nó với các ngôn ngữ lập trình IEC 61131-3 khác.

Sơ đồ thang

Sơ đồ bậc thang là ngôn ngữ lập trình PLC phổ biến nhất vì đây là ngôn ngữ đầu tiên được giới thiệu.

Khi PLC lần đầu tiên được phát minh như một giải pháp thay thế có thể lập trình cho các rơle nối dây cứng trong bảng điều khiển, Sơ đồ bậc thang là ngôn ngữ lập trình duy nhất hiện có.

Sơ đồ bậc thang được thiết kế sao cho dễ hiểu đối với các kỹ sư điện sẽ sử dụng nó để lập trình tự động hóa.

Để dễ hiểu, Sơ đồ bậc thang là ngôn ngữ lập trình đồ họa cấp cao được thiết kế trông giống như sơ đồ điện.

Bởi vì nó là ngôn ngữ trực quan nên rất dễ hiểu và gỡ lỗi mã Sơ đồ bậc thang. Sơ đồ bậc thang giúp dễ dàng lập trình và giám sát logic Boolean phức tạp, chính xác là mục đích mà nó được thiết kế.

Tại đây, bạn có thể thấy một đoạn Sơ đồ bậc thang được sử dụng để điều khiển động cơ. Bạn có thể thấy việc xem đoạn mã này dễ dàng như thế nào và xác định những yếu tố đầu vào nào bị thiếu để làm cho động cơ chạy không?

Sơ đồ thang

Trong khóa học CODESYS 1: Giới thiệu về Lập trình PLC , chúng tôi giải thích cách lập trình PLC bằng Sơ đồ bậc thang để điều khiển các ứng dụng như thế này.

Nếu bạn muốn tìm hiểu thêm về lập trình PLC bằng Sơ đồ bậc thang, hãy xem tại liên kết này .

Bây giờ chúng ta đã biết Sơ đồ bậc thang là gì, hãy so sánh nó với các ngôn ngữ lập trình IEC 61131-3 khác.

Sơ đồ bậc thang và văn bản có cấu trúc

Văn bản có cấu trúc, hay ST, là ngôn ngữ lập trình PLC dựa trên văn bản.

Nó thường được những người có nền tảng lập trình truyền thống ưa thích vì tính tương tự của nó với các ngôn ngữ lập trình cấp cao hơn như Python.

Văn bản có cấu trúc tốt hơn nhiều so với Sơ đồ bậc thang cho các tác vụ cụ thể.

Để tính toán, các lệnh toán học có thể được xâu chuỗi lại với nhau để thực hiện các phép tính phức tạp trên một dòng. Trong Sơ đồ bậc thang, mỗi bước trong quá trình tính toán đều yêu cầu các hướng dẫn chuyên dụng khiến cho việc tính toán trở nên cồng kềnh.

Sơ đồ bậc thang so với văn bản có cấu trúc

Văn bản có cấu trúc cũng tốt hơn cho việc lặp qua các phần logic vì nó có các hướng dẫn tích hợp như FOR và WHILE được thiết kế để lặp. Trong Sơ đồ bậc thang, bạn phải tự xây dựng các cấu trúc vòng lặp.

Bất chấp những ưu điểm này, tôi không khuyên bạn nên sử dụng Văn bản có cấu trúc làm ngôn ngữ lập trình chính trong dự án.

Những người phải duy trì và gỡ lỗi mã của bạn thường không phải là lập trình viên máy tính và sẽ không thoải mái với các chương trình dựa trên văn bản.

Vì lý do này, tôi khuyên bạn nên sử dụng Sơ đồ bậc thang làm ngôn ngữ lập trình chính của mình và hạn chế sử dụng Văn bản có cấu trúc ở các phần của dự án có ý nghĩa như thao tác và tính toán dữ liệu nặng.

Sơ đồ bậc thang và sơ đồ khối chức năng

Sơ đồ khối chức năng, hay FBD, là một ngôn ngữ lập trình đồ họa cấp cao khác.

FBD thường được sử dụng trong ngành công nghiệp chế biến vì hình thức của nó tương tự như P&ID xác định cách bố trí thiết bị xử lý.

Trong ví dụ bên dưới, bạn có thể thấy logic tương tự để điều khiển băng tải được triển khai trong Sơ đồ khối chức năng và Sơ đồ bậc thang.

Sơ đồ bậc thang so với sơ đồ khối chức năng

Giống như Sơ đồ bậc thang, Sơ đồ khối chức năng là ngôn ngữ lập trình đồ họa cấp cao, dễ lập trình, giám sát và khắc phục sự cố.

Sơ đồ khối chức năng có thể giúp việc thực hiện điều khiển quá trình liên tục bằng vòng lặp PID trở nên dễ dàng hơn.

Nên sử dụng Sơ đồ khối chức năng thay vì Sơ đồ bậc thang trong các ngành công nghiệp chế biến nơi phổ biến việc kiểm soát liên tục.

Ngoài ngành công nghiệp quy trình, Sơ đồ khối chức năng rất giống với Sơ đồ bậc thang và việc lựa chọn sử dụng cái này hay cái kia sẽ tùy thuộc vào sở thích cá nhân, công ty và ngành.

Sơ đồ khối chức năng-PID

Sơ đồ bậc thang và biểu đồ hàm tuần tự

Biểu đồ hàm tuần tự, hay SFC, là một ngôn ngữ cấp cao khác trông giống như biểu đồ luồng.

Do tính chất tương tự như biểu đồ luồng, Biểu đồ hàm tuần tự là ngôn ngữ lập trình tuyệt vời để mô hình hóa các quy trình tuần tự ở mức cao.

Vì ở mức độ cao nên Biểu đồ hàm tuần tự chỉ nên dùng để mô hình hóa các tiến trình chứ không dùng để viết logic điều khiển.

Như bạn có thể thấy trong hình bên dưới, logic để điều khiển một băng tải đơn giản chiếm gần nửa màn hình khi được triển khai trong SFC và chỉ một bậc trong Sơ đồ bậc thang.

Sơ đồ bậc thang so với biểu đồ hàm tuần tự

Vì SFC được sử dụng cho mục đích khác nên không thể so sánh nó với Sơ đồ bậc thang.

Thay vào đó, bạn có thể coi nó như một ngôn ngữ lập trình bổ sung mà bạn có thể sử dụng cho các quy trình tuần tự.

Bạn có thể lập mô hình quy trình trong SFC, sau đó triển khai logic điều khiển trong Sơ đồ bậc thang.

Sơ đồ bậc thang & Biểu đồ hàm tuần tự

Sơ đồ bậc thang và danh sách hướng dẫn

Cuối cùng, Danh sách lệnh, hay IL, là ngôn ngữ lập trình dựa trên văn bản tương tự như ngôn ngữ hợp ngữ.

Danh sách lệnh khó viết và gỡ lỗi hơn Sơ đồ bậc thang hoặc bất kỳ ngôn ngữ lập trình IEC 61131-3 nào khác.

Có lẽ vì lý do đó mà ngôn ngữ lập trình Danh sách lệnh hiện không được dùng nữa.

Nếu bạn đang làm việc trên các dự án mới, bạn không nên sử dụng ngôn ngữ lập trình Danh sách lệnh. Tôi khuyên bạn nên sử dụng Sơ đồ bậc thang để thay thế.

Sơ đồ bậc thang so với danh sách hướng dẫn

khuyến nghị

Bây giờ chúng ta đã so sánh tất cả các ngôn ngữ lập trình IEC 61131-3 với Sơ đồ bậc thang, tôi muốn đưa ra một số đề xuất về ngôn ngữ lập trình mà bạn sử dụng trong công việc hàng ngày.

Đầu tiên, tôi khuyên mọi lập trình viên PLC nên học cách lập trình bằng ngôn ngữ lập trình Sơ đồ bậc thang và sử dụng nó làm ngôn ngữ lập trình mặc định của họ.

Tôi đưa ra khuyến nghị này vì Sơ đồ bậc thang là ngôn ngữ lập trình PLC được sử dụng, hiểu và chấp nhận rộng rãi nhất hiện nay.

Trong những tình huống cụ thể này, tôi khuyên bạn nên sử dụng các ngôn ngữ lập trình IEC 61131-3 khác:

– Để kiểm soát quá trình liên tục, hãy cân nhắc sử dụng Sơ đồ khối chức năng,

– Đối với các tính toán nặng, xử lý dữ liệu và lặp, hãy cân nhắc sử dụng Văn bản có cấu trúc,

– Để lập mô hình các quy trình tuần tự ở cấp độ cao và triển khai các trình sắp xếp trình tự, hãy cân nhắc sử dụng SFC

Phần kết luận

Trong bài viết này, tôi đã giới thiệu cho bạn tất cả các ngôn ngữ lập trình IEC 61131-3, giải thích điểm mạnh và điểm yếu của chúng so với Sơ đồ bậc thang và đưa ra khuyến nghị về thời điểm bạn sử dụng từng ngôn ngữ lập trình.

Mặc dù tôi khuyên bạn nên sử dụng ngôn ngữ lập trình Sơ đồ bậc thang chủ yếu nhưng tôi vẫn khuyến khích bạn học tất cả các ngôn ngữ lập trình IEC 61131-3.

Một lập trình viên PLC hoàn chỉnh có thể thành thạo tất cả các ngôn ngữ lập trình và có thể chọn ngôn ngữ tốt nhất để hoàn thành nhiệm vụ.

Nếu bạn chỉ biết một ngôn ngữ lập trình thì các lựa chọn của bạn sẽ bị hạn chế – như người ta vẫn nói, nếu tất cả những gì bạn có là một cái búa thì mọi thứ trông giống như một cái đinh.

CÔNG TY TNHH GIẢI PHÁP TỰ ĐỘNG HÓA CÔNG NGHIỆP VIỆT NAM

VIETNAM INDUSTRIAL AUTOMATIC SOLUTIONS CO., LTD - (VIASCO)

????  Địa chỉ: B28 Tập Thể Tiểu Đoàn 8, X. Tứ Hiệp, H. Thanh Trì, P. Hà Nội.

????  Website: https://viasco.com.vn

????  Email: info@viasco.com.vn

Leave a Reply

Your email address will not be published. Required fields are marked *