Lập trình thang cho xLogic: Hướng dẫn theo phong cách S7-200 với ngân sách Micro PLC

Đây là một lời thú nhận từ một người có kinh nghiệm: Tôi đã học kỹ thuật điều khiển trên S7-200, và tôi vẫn nghĩ bằng các bit SM. Vì vậy, khi tôi tìm thấy trình soạn thảo xLadder sử dụng cùng một họ lệnh — bộ nhớ đặc biệt SM, ngắt ATCH/DTCH, bộ đếm CTU/CTD, thanh ghi ngắt SMB34 và SMB35 — cảm giác như trở về nhà. Nếu bạn đã học trên Siemens, điều nàyMicro PLCnói tiếng của bạn.

Gói xLadder bao gồm các CPU dòng SR và PR. Phiên bản mới thậm chí còn thêm Văn bản có cấu trúc — lập trình ST với ngân sách Nano-PLC. Đó không phải là điều mà các thương hiệu lớn đưa ra ở mức giá này.

Tập lệnh quan trọng

Đừng để kích thước nhỏ đánh lừa bạn. Cây thang bao gồm logic bit (mở/đóng, I/O ngay lập tức, cạnh lên và xuống, đặt/reset, SR/RS, NOP), bộ hẹn giờ, bộ đếm, chức năng so sánh cho byte, số nguyên, số nguyên đôi, số thực và thậm chí cả chuỗi, cộng với một thư viện chuyển đổi đầy đủ — BCD, ROUND, TRUNC, ASCII, ATH/HTA, DECO/ENCO, mã bảy đoạn.

Sau đó là những người nặng ký: phép toán số thực (ADD-R qua SIN, COS, LN, EXP), toán học số nguyên, một khối PID, điều khiển ngắt (ENI, DISI, ATCH, DTCH), các phép toán logic (INV, WAND, WOR, WXOR), lệnh di chuyển bao gồm BLKMOV và SWAP, và điều khiển chương trình với vòng lặp FOR/NEXT.

So sánh chuỗi trên mộtMicro PLC. Hãy để điều đó ngấm trong một giây. Điều đó từng là lãnh thổ HMI.

Ví dụ cụ thể: PID trên bàn thử nghiệm

Lấy một vòng lặp PID nhiệt độ đơn giản. Trong xLadder bạn kết nối tín hiệu cặp nhiệt vào đầu vào tương tự, điều chỉnh nó với khối chuyển đổi, đưa nó vào lệnh PID, và điều khiển đầu ra của bộ gia nhiệt qua một kênh có khả năng PWM. Tổng số bậc: khoảng một tá. Tổng thời gian để vòng lặp đầu tiên hoạt động: một buổi chiều, bao gồm cả thời gian nghỉ cà phê.

Biểu đồ trạng thái và công cụ tham chiếu chéo làm cho việc gỡ lỗi trở nên dễ chịu. Bạn có thể xem các bit SM lật trong thời gian thực trong khi PLC chạy — trình theo dõi trực tuyến miễn phí thực hiện công việc mà không cần giấy phép SCADA riêng.

Cách nó kết nối

Cài đặt giao tiếp theo mẫu S7-200: chọn cổng, đặt địa chỉ, tải xuống. Cáp RS232 và USB được cách ly quang điện — sự cách ly đó bảo vệ CPU khi ai đó nối 220V vào nơi 24V nên có. Các mẫu PR có khả năng Ethernet tải xuống qua mạng, có nghĩa là bạn có thể cập nhật một máy mà không cần mở tủ. Hoặc một chiếc laptop với cáp, nếu bạn thích những điều cổ điển.

Lập trình thang có phải là lựa chọn đúng ở đây không?

Câu trả lời trung thực: đối với logic boolean thuần túy, có. Đối với bất kỳ điều gì có tỷ lệ tương tự và toán học, FBD trong xLogicSoft nhẹ hơn. Nhưng đây là điều cần xem xét trong thực tế — đội ngũ bảo trì của khách hàng của bạn. Nếu họ biết lập trình thang, hãy gửi dự án thang. Tính tương thích với kỹ năng đã cài đặt là một tính năng không bao giờ xuất hiện trên bảng dữ liệu.

Hỗ trợ cho các dòng SR-12 và SR-22 đã có trong các phiên bản xLadder sau này, vì vậy hãy kiểm tra phiên bản trước khi bạn hứa hẹn với khách hàng bất kỳ điều gì. V2.0.0.8 đã thêm SR-22, V2.0.0.9 đã thêm ST. Phiên bản quan trọng, và không ai đọc ghi chú phát hành cho đến khi có điều gì đó bị hỏng.

Di chuyển từ các dự án S7-200 thực sự

Nếu bạn đến từ nền tảng S7-200 chính hãng, việc chuyển đổi sẽ suôn sẻ hơn bạn mong đợi — và khó khăn hơn ở đúng một chỗ. Các ký hiệu lệnh, bản đồ bộ nhớ SM, các khái niệm ngắt, thói quen trình soạn thảo thang: tất cả đều quen thuộc. Chỗ mà nó gây khó khăn là việc chuyển đổi địa chỉ. Các chương trình S7-200 được viết dựa trên các bản đồ I/O cụ thể và bố cục bộ nhớ V; chương trình xLadder của bạn phải được chuyển địa chỉ lại cho bản đồ riêng của CPU SR hoặc PR — đầu vào, đầu ra, cờ, tương tự — trước khi một bậc đơn chạy đúng.

Hãy coi dự án đầu tiên như một bản viết lại, không phải là một bản sao. Đi qua từng bậc cũ một cách tuần tự, ghi chú ý định logic, và xây dựng lại dựa trên bản đồ địa chỉ mới. Các mẫu logic chuyển giao một cách sạch sẽ; các địa chỉ thì không, và giả vờ ngược lại sẽ tạo ra một chương trình biên dịch hoàn hảo nhưng không chạy được gì. Tôi đã chứng kiến thất bại đó hai lần, và cả hai lần kỹ sư đều đổ lỗi cho công cụ. Đó là các địa chỉ.

Khi bản đồ đã được xác định, phần còn lại sẽ nhanh chóng: tập lệnh bao gồm logic bit, bộ hẹn giờ, bộ đếm, so sánh, chuyển đổi, toán học, ngắt và điều khiển chương trình theo kiểu S7-200, vì vậy việc dịch thuật là cơ học. Dự toán dự án đầu tiên gấp đôi thời gian, dự án thứ hai ở mức bình thường, và dự án thứ ba ở mức một nửa — đó là đường cong di chuyển thực tế.

Hộp công cụ gỡ lỗi

Gỡ lỗi thang mà không có trạng thái trực tiếp là khảo cổ học. Với trình theo dõi trực tuyến và biểu đồ trạng thái, đó là cuộc trò chuyện: bạn theo dõi các bit SM lật, các bộ đếm tăng lên, và các đầu ra thay đổi trong khi máy chạy. Biểu đồ trạng thái hiển thị các giá trị bạn đã yêu cầu, và công cụ tham chiếu chéo trả lời câu hỏi kết thúc hầu hết các phiên gỡ lỗi — "còn nơi nào khác mà bit này được tác động?"

Câu hỏi đó là câu mà những người mới học thang thường quên hỏi. Một cuộn dây được viết ở hai nơi hoạt động khác với một cuộn dây được viết ở một nơi, và công cụ tham chiếu chéo tìm thấy việc viết đôi trong vài giây. Trên một bảng rơ le, lỗi đó có nghĩa là phải theo dõi dây; ở đây có nghĩa là một cú nhấp chuột vào công cụ, đó chính là lý do tại sao trải nghiệm gỡ lỗi phần mềm vượt trội hơn phần cứng.

Thiết lập kỷ luật tải xuống ngay từ đầu: biên dịch sạch sẽ, tải xuống, xác minh phiên bản hiển thị trên CPU, và chỉ sau đó đóng cửa tủ. Một máy chạy trên một chương trình cũ là một máy có một câu chuyện mà bạn sẽ nghe về trong một tháng, từ một khách hàng không cười.

Một yêu cầu gửi đến đội ngũ R&D, vì tôi có một micro công khai: hãy cho chúng tôi một cái nhìn tham chiếu chéo thích hợp mà nhảy thẳng đến toán hạng. Cái mà chúng tôi có thì ổn, nhưng ổn thì không tuyệt vời. Đó là sự khác biệt giữa một công cụ mà mọi người sử dụng và một công cụ mà mọi người yêu thích.