Local block của FB

Một phần của tài liệu Giáo trình kỹ thuật điều khiển lập trình (Trang 108 - 110)

b) Những khốiOB đặc biệt

3.3.3. Local block của FB

Nhược điểm của khối FC là nội dung các biến tạm thời kiểu TEMP khơng được lưu giữ lại cho những vịng quét sau.Điều này bắt buộc những khối FC cĩ sử dụng biến kiểu TEMP trong local block phải được thực hiện xong trong một vịng quét và do đĩ hạn chế miền sử dụng của chúng.

Khắc phục nhược điểm trên, S7-300/400 cung cấp một loại khối cĩ tính năng tương tự như khối FC nhưng lại cĩ khả năng lưu giữ lại được nội dung các biến tạm thời cho các vịng quét kế tiếp, được gọi là khối hàm FB. Loại biếnn tạm thời cĩ nội dung được lưu giữ lại này cĩ tên là STAT(viết tắt của static).

Phương thức giữ lại nội dung các biến loại STAT được hệ điều hành thực hiện nhờ một khối dữ liệu như sau (hình 3.6):

- Khi thực hiện lệnh gọi, hệ điều hành chuyển khối FB được gọi vào work memory, cấp phát cho nĩ trong work memory một local block như yêu cầu.Ghi các tham trị từ khối mẹ vào các tham biến hình thức loại IN, IN-OUT và nội dung các ơ nhớ tương ứng trong DB kèm theo vào biến loại STAT trong local block.

- Khi chương trình trong khối FB kết thúc, hệ điều hành chuyển nội dung của biến hình thức loại OUT, IN-OUT về cho khối mẹ và ghi lại các giá trị của biến thuộc loại STAT trong local block vào khối dữ liệu kèm theo, sau đĩ giải phĩng local block cùng khối FB ra khỏi work memory.

Hình 3-6: Thực hiện gọi khối FB1 kèm cùng với DB2 từ OB1

Về cơ bản, local block của khối FB cũng giống của khối FC, nhưng cĩ thêm biến loại STAT. Các loại biến của khối của FB cho trong bảng 3-3 dưới:

Loại biến ý nghĩa

IN Biến hình thức sử dụng để nhận tham trị từ biến mẹ lam sơ kiện chương trình trong biến con

OUT Biến hình thức dùng để trả tham trị từ khối con về khối mẹ.

IN-OUT Biến hình thức. Loại biến này vừa cĩ khả năng nhận,

vừa cĩ khả năng trả tham trị cho khối me.

STAT Nội dung của biến lại này cĩ khả năng được lưu giữ

lại khi kết thúc chương trình trong FB.

TEMP Biến tạm thời. Nội dung sẽ bị mất khi chương trình trong FB kết thúc.

Bảng 3-3: Các loại biến của khối của FB

Việc khai báo local block cho FB cũng hồn tồn tương tự như cho FC gồm: đặt tên biến, xác định loại biến (biến hình thức, STAT hay TEMP) và kiểu dữ liệu (nguyên, thực, ký tự...) cho từng biến.

Tên biến phải là những dãy ký tự hoặc số và khơng thuộc nhĩm ký tự khố (Đã Được dùng bởi hệ điều hành).

Chuyển FB1 vào work memory và cấp phát local

block và gán tham trị cho biến hình thức từ OB1 và cho biến loại STAT từ DB2

Trả tham trị về OB1. Ghi lại biến loại STAT.Xố FB1 và local block của nĩ khỏ work memory. OB1 . call FB1,DB2 . FB1 . . . BE DB2 DB2

Kiểu dữ liệu hợp lệ nhất cho tất cả các loại biến(kể cả biến hình thức, biến STAT và TEMP) đã cho trong bảng ở mục 4.1.1. Riêng đới với biến STAT ta cịn sử dụng được kiểu dữ liệu ARRAY, STRING.

Một phần của tài liệu Giáo trình kỹ thuật điều khiển lập trình (Trang 108 - 110)