Báo cáo TÌM HIỂU VỀ KHỐI, MÃ LỆNH TRONG TIA PORTAL
TÌM HIỂU VỀ KHỐI MÃ LỆNH TRONG TIA PORTAL: Việc cấu trúc chương trình người dùng: Khi tạo chương trình người dùng cho nhiệm vụ tự động, ta chèn lệnh chương trình vào khối mã: - Khối tổ chức (OB), đáp ứng kiện xác định CPU ngắt thực thi chương trình Mặc định thực thi theo chu trình chương trình người dùng (OB 1) cung cấp cấu trúc dành cho chương trình khối mã yêu cầu chương trình Nếu ta bao hàm OB khác chương trình, OB ngắt thực thi OB Các OB khác thực hàm đặc trưng, ví dụ cho tác vụ khởi động, cho việc xử lý ngắt lỗi, hay cho việc thực thi mã chương trình đặc trưng khoảng thời gian dừng riêng biệt - Khối chức (FB), đoạn chương trình thực thi gọi từ khối mã khác (OB, FB hay FC) Khối gọi chuyển tiếp thơng số đến FB nhận dạng khối liệu đặc trưng mà khối liệu lưu trữ liệu cho lần gọi riêng hay cho giá trị mẫu FB Việc thay đổi DB mẫu cho phép FB chung điều khiển hoạt động tổ hợp thiết bị Ví dụ, FB điều khiển vài máy bơm hay van, với DB mẫu chứa thông số vận hành riêng biệt máy bơm hay van - Mã chức (FC), chương trình mà thực thi gọi từ khối mã khác (OB, FB hay FC) FC khơng có DB mẫu có liên quan Khối gọi chuyển tiếp thông số đến FC Các giá trị ngõ từ FC phải ghi đến địa nhớ hay đến DB toàn cục Việc chọn kiểu cấu trúc cho chương trình người dùng Dựa yêu cầu ứng dụng, ta chọn cấu trúc thẳng hay cấu trúc kiểu khối kết cấu để tạo chương trình - Chương trình thẳng thực thi tất lệnh tác vụ tự động theo tuần tự, lệnh theo sau lệnh Thơng thường, chương trình thẳng đặt tất lệnh chương trình vào OB dành cho việc thực thi theo chu trình chương trình (OB 1) - Chương trình khối kết cấu gọi khối mã đặc trưng mà khối mã thực tác vụ riêng biệt Để tạo cấu trúc theo khối kết cấu, ta chia tác vụ thành nhiều tác vụ phụ nhỏ phù hợp với chức mặt kỹ thuật tiến trình Mỗi khối mã cung cấp đoạn chương trình cho tác vụ phụ Ta cấu trúc chương trình cách gọi số khối mã từ khối khác - Ta tạo khối hàm sử dụng lại dành cho tác vụ tiêu chuẩn, dành cho điều khiển máy bơm hay động Ta lưu trữ khối hàm chung thư viện sử dụng ứng dụng hay giải pháp khác - Khi ta cấu trúc chương trình vào thành phần kiểu kết cấu có liên quan đến tác vụ chức năng, thiết kế chương trình hiểu quản lý dễ dàng Các thành phần kiểu kết cấu khơng giúp tiêu chuẩn hóa thiết kế chương trình mà giúp thực việc cập nhật hay chỉnh sửa mã chương trình nhanh dễ dàng - Việc tạo thành phần kiểu kết cấu làm đơn giản việc gỡ rối chương trình Bằng cách cấu trúc chương trình hồn chỉnh tổ hợp phận chương trình kiểu kết cấu, ta kiểm tra chức khối mã hàm phát triển - Việc tạo thành phần kiểu kết cấu có liên quan đến chức công nghệ đặc trưng giúp làm đơn giản rút gọn thời gian dành cho thực ứng dụng hoàn chỉnh 2 Sử dụng khối cấu trúc chương trình: Bằng cách thiết kế FB FC để thực tác vụ chung, ta tạo khối mã kiểu kết cấu Sau cấu trúc chương trình cách làm cho khối mã khác gọi module sử dụng lại Khối gọi chuyển tiếp thông số đặc trưng thiết bị đến khối gọi A Khối gọi B Khối gọi (hay ngắt) Sự thực thi chương trình Sự vận hành gọi khối khác Sự thực thi chương trình Kết thúc khối (trở lại khối gọi) Khi khối mã gọi khối mã khác, CPU thực thi mã chương trình khối gọi Sau thực thi khối gọi hồn thành, CPU khơi phục lại thực thi khối gọi Việc xử lý tiếp tục với thực thi lệnh theo sau việc gọi khối Ta xếp việc gọi khối lồng vào cấu trúc kiểu kết cấu phức tạp Khởi động chu trình Độ sâu lồng vào Tạo ra khối mã sử dụng lại Sử dụng hộp thoại “Add new block” mục “Program blocks” chọn ngôn ngữ lập trình cho khối Khơng lựa chọn ngơn ngữ lập trình cho DB lưu trữ liệu 2.1 Khối tổ chức (OB): Các khối tổ chức cung cấp cấu trúc cho chương trình Chúng đóng vai trò giao diện hệ điều hành chương trình người dùng Các OB điều khiển theo kiện Một kiện, ví dụ ngắt chẩn đốn hay khoảng thời gian dừng, làm cho CPU thực OB Một vài OB có kiện khởi động cách hoạt động định trước OB chu kỳ chương trình chứa chương trình người dùng Ta bao gồm nhiều OB chu kỳ chương trình chương trình Trong suốt chế độ RUN, OB chu kỳ chương trình thực thi mức ưu tiên thấp bị ngắt tất việc xử lý chương trình khác OB khởi động không ngắt OB chu kỳ chương trình CPU thực thi OB khởi động trước vào chế độ RUN Sau hoàn thành việc xử lý OB chu kỳ chương trình, CPU thực thi lần OB chu kỳ chương trình Việc xử lý theo chu kỳ dạng “bình thường” kiểu xử lý sử dụng cho điều khiển logic khả trình Đối với nhiều ứng dụng, chương trình người dùng tồn định vị OB chu kỳ chương trình đơn lẻ Ta tạo OB khác để thực hàm đặc trưng, ví dụ tác vụ khởi động, dành cho việc xử ký ngắt lỗi, hay dành cho thực thi mã chương trình đặc trưng khoảng thời gian dừng riêng biệt Các OB ngắt việc thực thi OB chu kỳ chương trình Sử dụng hộp thoại “Add new block” để tạo OB chương trình Tùy thuộc vào mức độ ưu tiên tương ứng, DB ngắt OB khác Việc xử lý ngắt luôn điều khiển theo kiện Khi kiện xuất hiện, CPU ngắt thực thi chương trình người dùng gọi OB vừa cấu hình để thực thi kiện Sau hồn thành thực thi OB ngắt, CPU khôi phục thực thi chương trình người dùng điểm ngắt CPU xác định mệnh lệnh dành cho việc xử lý kiện ngắt mức ưu tiên gán đến OB Mỗi kiện ngắt có mức ưu tiên phục vụ riêng biệt Một vài kiện ngắt tổ hợp vào lớp ưu tiên Tạo OB bổ sung nằm lớp OB Ta tạo nhiều OB dành cho chương trình, cho chu kỳ chương trình lớp OB khởi động Sử dụng hộp thoại “Add new block” để tạo OB Nhập vào tên cho OB nhập vào số hiệu OB lớn 200 Nếu ta tạo nhiều OB chu kỳ chương trình dành cho chương trình, COU thực thi OB chu kỳ chương trình theo trình tự số, bắt đầu với OB chu kỳ chương trình (mặc định: OB 1) Ví dụ: sau OB chu kỳ chương trình (OB 1) hoàn thành, CPU thực thi OB chu kỳ chương trình thứ hai (ví dụ OB 200) Hàm (FC): 2.2 Một hàm (FC) khối mã mà thơng thường thực vận hành đặc trưng hệ thống giá trị ngõ vào FC lưu trữ kết hoạt động vùng nhớ Sử dụng FC để thực tác vụ sau đây: • Để thực hoạt động tiêu chuẩn tái sử dụng, ví dụ dành cho phép tốn • Để thực hàm cơng nghệ, ví dụ dành cho điều khiển cá thể sử dụng phép logic bit Một FC gọi nhiều lần điểm khác chương trình Việc sử dụng lại làm đơn giản hóa lập trình tác vụ lặp lại cách thường xun Một FC khơng có khối liệu (DB) mẫu liên quan FC sử dụng nhóm liệu cục dành cho liệu tạm thời sử dụng để tính tốn Dữ liệu tạm thời khơng lưu lại Để lưu trữ liệu lâu dài, gán giá trị ngõ đến khu vực nhớ toàn cục, nhớ M hay đến DB toàn cục 2.3 Khối hàm (FB): Khối hàm khối mã sử dụng khối liệu mẫu cho thông số liệu tĩnh Các FB có nhớ biến đặt khối liệu (DB), hay DB “mẫu” DB mẫu cung cấp khối nhớ có liên quan đến giá trị mẫu (hay lần gọi) FB lưu trữ liệu sau FB hồn thành Ta kết hợp DB mẫu khác với lần gọi FB khác Các DB mẫu cho phép ta sử dụng FB chung để điều khiển nhiều thiết bị Ta cấu trúc chương trình cách cho khối mã thực việc gọi đến FB DB mẫu CPU sau thực thi mã chương trình FB đó, lưu trữ thơng số khối liệu cục tĩnh DB mẫu Khi thực thi FB hoàn thành, CPU trả khối mã gọi FB DB mẫu giữ lại giá trị cho giá trị mẫu FB Các giá trị có sẵn cho lần gọi theo đến khối hàm chu kỳ quét hay chu kỳ quét khác Các khối mã sử dụng lại với nhớ có liên quan Thơng thường ta sử dụng FB để điều khiển vận hành tác vụ mà chúng khơng hồn thành việc vận hành chu kỳ quét Để lưu trữ thơng số vận hành để từ chúng truy xuất cách dễ dàng từ lần quét đến lần quét tiếp theo, FB chương trình người dùng có hay nhiều DB mẫu Khi gọi FB, ta rõ DB mẫu chứa thông số khối liệu cục tĩnh cho việc gọi hay cho “mẫu” FB DB mẫu trì liệu sau FB hoàn tất thực thi Bằng cách thiết kế FB cho tác vụ điều khiển chung, ta sử dụng lại FB cho nhiều thiết bị cách lựa chọn DB mẫu khác lần gọi FB khác Một FB lưu trữ thông số ngõ vào (IN), thông số ngõ (OUT) thông số vào/ra (IN_OUT) DB mẫu Gán giá trị ban đầu Nếu thông số ngõ vào, ngõ hay vào/ra khối hàm (FB) không gán giá trị, giá trị lưu trữ khối liệu (DB) mẫu sử dụng Trong vài trường hợp, ta phải gán giá trị thông số Ta gán giá trị ban đầu vào thông số giao diện FB Các giá trị truyền đến DB mẫu có liên quan Nếu ta không gán giá trị thông số, giá trị thời lưu trữ DB mẫu sử dụng Sử dụng FB đơn lẻ với DB Hình sau thể OB mà OB gọi FB lần, cách sử dụng khối liệu khác cho lần gọi Cấu trúc cho phép FB chung điều khiển nhiều thiết bị giống nhau, ví dụ động cơ, cách gán khối liệu mẫu khác cho lần gọi thiết bị khác Mỗi DB mẫu lưu trữ liệu (như tốc độ, thời gian tăng lên, tổng thời gian hoạt động) cho thiết bị riêng lẻ Trong ví dụ này, FB 22 điều khiển thiết bị riêng biệt, với DB 201 lưu trữ liệu hoạt động cho thiết bị đầu tiên, DB 202 lưu trữ liệu hoạt động cho thiết bị thứ hai, DB 202 lưu trữ liệu hoạt động cho thiết bị thứ ba 2.4 Khối liệu (DB): Ta tạo khối liệu (DB) chương trình người dùng để lưu trữ liệu cho khối mã Tất khối chương trình truy xuất liệu DB toàn cục, DB mẫu lưu trữ liệu cho khối hàm (FB) đặc trưng Ta xác định DB đóng vai trò đọc Các liệu lưu trữ DB không bị xóa thực thi khối mã có liên quan kết thúc Có hai kiểu DB: • DB tồn cục lưu trữ liệu cho khối mã chương trình Bất kỳ OB, FB hay FC truy xuất liệu DB toàn cục • DB mẫu lưu trữ liệu cho FB đặc trưng Cấu trúc liệu DB mẫu phản ánh thông số (IN, OUT IN_OUT) liệu tĩnh FB (Bộ nhớ Temp cho FB khơng lưu trữ DB mẫu) Lưu ý Mặc dù DB mẫu phản ánh liệu cho FB đặc trưng, nhiên mã hàm truy xuất liệu DB mẫu 3 Tìm hiểu khối tổ chức OB: 3.1 Program cycle: Một khối Program cycle thực thi cách theo chu kì khối chương trình Trong khối đặt dẫn để điều khiển hệ thống gọi khối khác bổ sung Có thể tạo nhiều khối Program cycle Các Main OB gọi theo thứ tự 3.2 Startup: Khối Startup chạy lần chế độ hoạt động PLC thay đổi từ STOP sang RUN Sau chạy xong khối Startup khối Program cycle bắt 3.3 đầu chạy Time delay interrupt: Khối Time delay interrupt làm gián đoạn chương trình theo khoảng thời gian định Thời gian trễ định tham số đầu vào 3.4 lệnh “SRT_DINT” Cycle interrupt: Khối Cycle interrupt cho phép bạn khởi động chương trình theo khoảng thời gian định kỳ, độc lập với việc thực chương trình Các khoảng thời gian ngắt xác định hộp thoại 3.5 thuộc tính OB (Liên quan đến PID) Hardware interrupt: Khối Hardware interrupt làm gián đoạn trình thực thi chương trình để phản ứng với tín hiệu từ kiện phần cứng Các kiện phải 3.6 xác định thuộc tính phần cứng cấu hình Time error interrupt: Khối Time error interrupt làm gián đoạn thực chương trình vượt thời gian chu kỳ tối đa cho phép Thời gian chu kỳ tối đa 3.7 xác định thuộc tính CPU Chỉ tạo khối Diagnostic error interrupt: Khối Diagnostic error interrupt làm gián đoạn trình thực thi chương trình mơ-đun có khả chẩn đốn kích hoạt ngắt chẩn 3.8 3.9 3.10 3.11 3.12 đoán phát lỗi lỗi Chỉ tạo khối Pull or plug of modules: Khối gọi sau gỡ bỏ chèn thêm mơ-đun cấu hình Chỉ tạo khối Time of day: Khối Time of day bắt đầu lần thời điểm cụ thể định kì dùng thời gian thực Status: Khi hệ điều hành gọi khối Status nhận trạng thái ngắt Điều xảy Slave thay đổi chế độ hoạt động Chỉ tạo khối Update: Khối Update hệ điều hành gọi nhận ngắt Update Xảy sử đổi tham số Slave thiết bị Chỉ tạo khối Profile: Hệ điều hành gọi khối quy định ngắt cụ thể nhà sản xuất cấu hình 3.13 Chỉ tạo khối MC-Servo: Khối dùng để điều khiển động với chức truy cập I/O, nhận 3.14 dạng tín hiệu, điều khiển vị trí Khơng viết vào khối này, cho phép read-only MC-PreServo MC-PortServo: Khối gọi trước khối MC-Servo Chỉ tạo khối ... kiện khởi động cách hoạt động định trước OB chu kỳ chương trình chứa chương trình người dùng Ta bao gồm nhiều OB chu kỳ chương trình chương trình Trong suốt chế độ RUN, OB chu kỳ chương trình