Tải bản đầy đủ (.pdf) (9 trang)

Điều khiển, giám sát hệ thống mạng PLC điều khiển lò mở lò nhiệt và máy xếp hàng tự động, chương 9 pps

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (111.11 KB, 9 trang )

Chương 9: Soạn thảo giá trò cho từng biến
(ngôn ngữ) đầu ra
Tương tự như đã khai báo hay sửa đổi giá trò cho biến
vào, việc khai báo các giá trò (tập mờ) cho biến ra cũng
được bắt đầu bằng cách kích đôi chuột trái tại biểu tượng
của biến đầu ra. Muốn soạn thảo hay sửa đổi giá trò ngôn
ngữ tập mờ cho 1 biến đầu ra nào đó, ta kích đôi chuột trái
tại biểu tượng của biến đó.
Ví dụ để soạn thảo giá trò cho biến ra Output01, ta
nháy kép vào biểu tượng của nó. Khi đó cửa sổ soạn thảo
sẽ hiện ra. Tiếp tục ta kích chuột vào phím Insert để khai
báo số các tập mờ cho biến Output01.
Chú ý là FCPA chỉ cho phép khai báo tối đa 9 giá trò
cho mỗi biến ra.
Sau khi khai báo xong số các giá trò (tập mờ) cho
biến ra Output01 ta ấn phím OK để vào màn hình soạn
thảo. Khác với biến ngôn ngữ đầu vào, giá trò (tập mờ) của
các biến ra chỉ có duy nhất 1 dạng singleton.
Muốn sửa đổi giá trò ngôn ngữ nào, ta tích cực nó bằng
cách chọn tên tập mờ của giá trò đó trong bảng danh mục
hiện ra khi ấn phím . FCPA sẽ báo trạng thái tích cực
của hàm thuộc tập mờ được chọn bằng cách chuyển nó
sang màu đỏ và thêm 1 hình khuyên ở chính giữa
Để sửa đổi hàm thuộc dạng singleton, đơn giản ta chỉ
cần sửa đổi tạo độ của nó bằng cách đưa con trỏ vào hình
khuyên, giữ phím chuột trái rồi kéo sang phải/trái, hoặc
trực tiếp ghi toạ độ mới vào ô Point của cửa sổ màn hình
soạn thảo.
3.2.6 Soạn thảo luật hợp thành
Sau khi khai báo xong biến ngôn ngữ vào/ra và các
giá trò (tập mờ) cho chúng, chẳng hạn như ta đã khai báo m


biến vào Input1,…, Inputm với các giá trò A
i1,…,
A
im
và s
biến ra Output1=B
n1,…,
Outputs với các giá trò B
i1
,… B
is
, bước
tiếp theo là ta xây dựng luật hợp thành. Để vào chế độ xây
doing luật hợp thành có cấu trúc:
R1: Nếu Input1=A
11
và… và Inputm=A
1m
thì Output1=B
11
và…
và Outputs=B
1s
Hàm thuộc
(dạng
singleton)
của tập mờ
đang được
tích cực
Toạđộ hàm thuộc

(singleton) của tập mờ
đang được tích cực
Bảng
danh
mục tên
các tập
mờ
R2: Nếu Input1=A
21
và… và Inputm=A
2m
thì Output1=B
21
và…
và Outputs=B
2s
Rn: Nếu Input1=A
n1
và… và Inputm=A
nm
thì Output1=B
n1
và…
và Outputs=B
ns
Ta nháy kép phím trái chuột tại ô if…then

Khi đó sẽ xuất hiện cửa sổ màn hình soạn thảo dạng:
Nháy chuột vào đây để vào chế
độ soạn thảo luật hợp thành

Để soạn thảo luật hợp thành ta soạn thảo từng mệnh
đề hợp thành. n phím
Insert để chèn thêm 1 mệnh đề
hợp thành trong luật. Mệnh đề hợp thành được chèn
thêmsẽ là 1 cột gồm các ô trống. Số các ô trống này được
qui đònh bởi số các biến ngôn ngữ vào/ra mà ta đã khai báo
từ trước. Mỗi ô trống ứng với 1 biến ngôn ngữ. Tiếp theo,
nếu ta nháy chuột tại ô trống của biến ngôn ngữ nào, trên
màn hình sẽ hiện ra bảng các giá trò (tập mờ) của biến
ngôn ngữ đó để ta chọn. Ví dụ ở màn hình soạn thảo phía
trên, mệnh đề hợp thành thứ nhất mà ta vừa soạn thảo
bằng cách chọn giá trò cho nó từ bảng các giá trò chính là:
Nếu Input01=n_small và Input02=p_small thì
Output01=n_small.
3.2.7. Chọn động cơ suy diễn
FCPA chỉ cung cấp 1 động cơ suy diễn là MAX_MIN
nên ta không có khả năng chọn 1 động cơ suy diễn khác.
3.2.8. Chọn phương pháp giải mơ
ø
Khi nháy chuột tại ô này bảng danh mục các giá
tròcho biến ngôn ngữ Output01 sẽ hiện ra. Chọn 1
giá trò trong bảng đó.
FCPA chỉ cung cấp 1 phương pháp giải mờ duy nhất là
phương pháp điểm trọng tâm. Bởi vậy trện màn hình soạn
thảo bộ điều khiển của FCPA không có phím lựa chọn
phương pháp giải mờ.
3.2.9. Quan sát hệ vào ra của bộ điều khiển mờ
Sau khi soạn thảo xong luật hợp thành, ta ấn phím
OK để quay về cửa sổ màn hình chính của FCPA.
Để quan sát 1 cách trực quan quan hệ vào/ra của bộ

điều khiển mờ vừa soạn thảo ta chọn
Debug 3D
Graphic Display,
khi đó trên màn hình xuất hiện đồ thò
mô tả quan hệ vào/ra của bộ điều khiển mờ như sau:
3.3. Sử dụng DB mờ với FB30 (Fuzzy Control)
3.3.1 Các tham biến hình thức của FB30
Bộ điều khiển mờ được soạn thảo xong cần phải được
cất giữ vào Project bằng lệnh
File Save. Nó sẽ được
lưu trữ vào Project dưới dạng 1 khối DB mà ta đã đặt tên.
Khối dũ liệu mờ này được sử dụng cùng với khối hàm
FB30 đã được lấy từ Project
FuzConEx trong thư viện
của Simatic Manager khi cài đặt chương trình
Fuzzy/FB.
Bởi vậy khi sử dụng khối dữ liệu mờ ta phải kết thúc
FCPA bằng lệnh
FileExit và quay trở lại Simatic
Manager
để viết lệnh sử dụng theo cấu trúc:
Cú pháp
CALL FB30,DBx
Trong đó DBx là tên khối dữ liệu mờ. Khối FB30
(
Fuzzy Control) có 8 biến đầu vào INPUT1 -:- INPUT8
kiểu số thực, 5 biến ra gồm OUTPUT1 -:- OUTPUT4 cũng
kiểu số thực và INFO kiểu byte. Khi thực hiện lệnh gọi
khối FB30 như trên, toàn bộ 8 biến hình thức đầu vào và 5
biến đầu ra sẽ hiện trên màn hình chờ ta tham trò:

CALL FB30, DBx
INPUT1 :=
INPUT2 :=
INPUT3 := Chỉ gán tham trò cho những biến
ngôn ngữ đầu INPUT4
:= vào nào đã được khai báo trong DBx nhờ phần
INPUT5 := mềm FCPA
INPUT6 :=
INPUT7 :=
INPUT8 :=
OUTPUT1 :=
OUTPUT2 := Chỉ gán tham trò cho những biến ngôn
ngữ đầu ra
OUTPUT3 := nào đã được khai báo trong DBx
nhờ phần mềm
OUTPUT4 := FCPA
INFO :=
//Thanh ghi báo trạng thái làm việc
của FB30
3.3.2. Thanh ghi báo trạng thái làm việc của FB30
Giá trò trả về có tên INFO với kích thước 1 byte là mã
báo trạng thái thực hiện công việc của khối hàm FB30. nó
được qui đònh như sau:
B#16#00 Khối hàm FB30 đã được thực hiện bình
thường
B#16#01 Khối hàm FB30 không được thực hiện. Giá
trò trả về đầu ra vẫn là những giá trò cũ.
B#16#11 Không tìm thấy khối DB mờ đã chỉ thò. Có
thể khối DB mờ này đã không được đổ vào
CPU.

B#16#21 Khối dữ liệu DB mờ được gọi theo hàm
FB30 không cùng kích thước về biến
vào/ra. Ví dụ như khối DB mờ đã được
soạn thảo cho 4 biến vào và 2 biến ra,
nhưng khi gọi cùng với FB30 lại khai báo
cho 5 biến vào và 2 biến ra.
Liên quan tới mã B#16#01 báo FB30 không làm việc
là nộu dung từ kép có tên
START_STOP trong DB mờ đã
được soạn thảo bằng FCPA. Từ kép này có tác dụng như 1
biến điều kiện để thực hiện để thực hiện lệnh CALL
FB30, DBx
- Nếu START_STOP=W#16#0000 lệnh sẽ được
thực hiện.
- Nếu
START_STOP≠W#16#0000 lệnh không được
thực hiện.

×