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

Phương pháp công nghiệp để thiết kế theo hướng đối tượng phần điều khiển cho các hệ thống động lực lai

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 (884.16 KB, 90 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
---------------------------------------

PHAN ĐÌNH HUÂN

PHƯƠNG PHÁP CÔNG NGHIỆP ĐỂ THIẾT KẾ THEO
HƯỚNG ĐỐI TƯỢNG PHẦN ĐIỀU KHIỂN
CHO CÁC HỆ THỐNG ĐỘNG LỰC LAI

Chuyên ngành : KỸ THUẬT MÁY & THIẾT BỊ THỦY KHÍ

LUẬN VĂN THẠC SĨ KHOA HỌC
……………………………

NGƯỜI HƯỚNG DẪN KHOA HỌC :
TS. NGÔ VĂN HIỀN

Hà Nội – 2010
1


LỜI CAM ĐOAN
Luận văn tốt nghiệp cao học của tôi là kết quả của quá trình nghiên cứu miệt
mài và sự hướng dẫn tận tình của thầy giáo Ngô Văn Hiền. Những nội dung và kết
quả của các tài liệu của các tác giả khác được trích dẫn cụ thể theo đúng quy định.
Luận văn này đến nay chưa được bảo vệ tại bất kỳ hội đồng bảo vệ luận văn thạc sĩ
nào và cũng chưa được công bố trên bất kỳ các kênh thông tin đại chúng nào. Tôi
xin cam đoan những gì tôi trình bày trên đây là hoàn toàn chính xác, nếu sai tôi xin
chịu trách nhiệm.


Hà nội, ngày 20 tháng 10 năm 2010
Tác giả luận văn

Phan Đình Huân

2


MỤC LỤC
Trang
TRANG PHỤ BÌA…………………………………………………………………..1
LỜI CAM ĐOAN .......................................................................................................2 
DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT..............................................6 
DANH MỤC CÁC BẢNG..........................................................................................7 
DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ .....................................................................8 
MỞ ĐẦU ...................................................................................................................11 
Chương 1- GIỚI THIỆU CHUNG VỀ HỆ THỐNG ĐỘNG LỰC LAI ..................13 
1.1  Phân loại hệ thống điều khiển công nghiệp và cấu trúc lai ............................13 
1.1.1  Phân loại các hệ thống điều khiển công nghiệp ....................................13 
1.1.2  Cấu trúc lai ............................................................................................14 
1.2  Giới thiệu HDS trong điều khiển công nghiệp...............................................15 
Chương 2- TỔNG QUAN VỀ MÔ HÌNH HÓA, MÔ PHỎNG VÀ THỰC THI
CÁC HỆ THỐNG ĐỘNG LỰC LAI ........................................................................18 
2.1  Mô hình hóa ứng xử hệ thống động lực lai ....................................................18 
2.1.1  Automate lai ..........................................................................................18 
2.1.2  Grafcet ...................................................................................................20 
2.1.3  Mạng Petri (Petri Net) ...........................................................................21 
2.2  Công nghệ hướng đối tượng trong việc phát triển HDS ................................22 
2.2.1  Lập trình hướng đối tượng.....................................................................22 
2.2.2  Phân tích và thiết kế hướng đối tượng...................................................22 

2.2.3  Ngôn ngữ mô hình hóa hợp nhất trong thời gian thực ..........................25 
2.3  Một số phương pháp mô phỏng và thực thi ...................................................27 
2.3.1  Modelica ................................................................................................27 
2.3.2  Matlab & Simulink ................................................................................29 
2.3.3  Mô hình khối chức năng ........................................................................32 
Chương 3- QUY TRÌNH PHẦN TÍCH VÀ THIẾT KẾ HDS VỚI REAL TIME
UML ..........................................................................................................................37 

3


3.1  Mô tả Automate lai trong HDS, giả thiết tính thực thi và chu trình phát triển
lặp cho HDS ..........................................................................................................37 
3.1.1  Mô tả Automate lai trong HDS .............................................................37 
3.1.2  Các giải thuyết thực thi Automate lai với HDS ....................................38 
3.1.3  Đặc tả chu trình lặp thực thi HDS công nghiệp ....................................39 
3.2  Phân tích hệ thống động lực lai công nghiệp .................................................40 
3.2.1  Nhận biết các trường hợp sử dụng ........................................................40 
3.2.2  Xác định máy trạng thái toàn cục ..........................................................41 
3.2.3  Xác định sơ đồ khối chức năng mở rộng...............................................42 
3.2.4  Xác định Automate lai ...........................................................................42 
3.2.5  Xác định lớp biên và các đối tượng thực thể .........................................44 
3.2.6  Cấu trúc hệ động lực lai ứng với Automate lai trong sơ đồ cộng tác các
đối tượng ...........................................................................................................44 
3.3  Thiết kế hệ thống động lực lai công nghiệp ...................................................46 
3.3.1  Cấu trúc kết nối toàn cục .......................................................................47 
3.3.2  Tiến trình thực thi Automate lai ............................................................47 
3.3.3  Đặc tả các gói cơ bản của HDS công nghiệp ........................................49 
3.3.4  Mô tả chi tiết đặc tính các gói cơ bản ....................................................51 
3.3.5  Kiểm tra mô hình thiết kế ......................................................................52 

3.3.6  Nguyên tắc tái sử dụng các gói..............................................................52 
3.3.7  Lựa chọn ngôn ngữ công nghiệp để thực thi HDS công nghiệp ...........54 
Chương 4- ÁP DỤNG PHÂN TÍCH THIẾT KẾ HỆ THỐNG ĐIỀU TỐC ĐIỆN TỬ
THỦY LỰC VỚI REALTIME UML .......................................................................56 
4.1  Mô hình phân tích của EHG...........................................................................57 
4.1.1  Mô hình trường hợp sử dụng của EHG .................................................57 
4.1.2  Ứng xử động của các trường hợp sử dụng ............................................58 
4.1.3  Sơ đồ khối chức năng của EHG ............................................................63 
4.1.4  Automate lai của hệ thống EHG............................................................67 
4.1.5  Lớp biên và các lớp thực thể của EHG..................................................71 
4.2  Mô hình thiết kế của EHG .............................................................................72 

4


4.2.1  Gói của phần liên tục .............................................................................75 
4.2.2  Gói IGCB...............................................................................................77 
4.2.3  Gói của phần rời rạc ..............................................................................78 
4.2.4  Gói giao diện bên trong .........................................................................79 
4.2.5  Gói giao diện bên ngoài .........................................................................80 
4.3  Mô hình mô phỏng EHG ................................................................................81 
4.3.1  Luật chuyển đổi các gói sang Matlab & Simulink ................................82 
4.3.2  Các kết quả của EHG trong Matlab & Simulink ...................................82 
KẾT LUẬN VÀ KIẾN NGHỊ...................................................................................86 
TÀI LIỆU THAM KHẢO .........................................................................................88 

5


DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT

Ký hiệu
viết tắt

Viết đầy đủ

Ý nghĩa

DAE

Differential Algebraic Equation Phương trình đại số vi phân.

EHG

Electro-Hydraulic Governor

Máy điều tốc điện tử thủy lực.

HDS

Hybrid Dynamic Systerms

Hệ thống động lực lai.

IEC

International Electrotechnical
Commission

Ủy ban kỹ thuật điện quốc tế.


IGCB

Instantaneuos Global
Continuous Behavior

Ứng xử liên tục toàn cục tức
thời

ODE

Ordinary Differential Equation

Hệ phương trình vi phân thường

Real Ttime
UML

Real Time Unified Modeling
Language

Ngôn ngữ mô hình hóa hợp nhất
trong thời gian thực.

UML

Unified Modeling Language

Ngôn ngữ mô hình hóa hợp
nhất.


SFC

Sequential Function Charts

Sơ đồ hằng số diễn tiến.

6


DANH MỤC CÁC BẢNG
Bảng 3.1 Nguyên tắc tái sử dụng của các gói. ..........................................................53 
Bảng 4.1 Các thông số cụ thể của các dòng liên tục toàn cục. .................................69 

7


DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ
Hình 1.1 Hệ thống chủ động lại, hệ thống thời gian thực và hệ thống động lực lai .14 
Hình 1.2 Sơ đồ khối tổng quan của hệ thống động lực lai công nghiệp ...................16 
Hình 2.1 Bộ giới hạn tín hiệu (Limiter) ....................................................................19 
Hình 2.2 Automate lai trong bộ giới hạn tín hiệu .....................................................19 
Hình 2.3 Ví dụ về các gói, các cổng và giao thức.....................................................26 
Hình 2.4 Đặc tính khối chức năng ............................................................................33 
Hình 2.5 Mô hình thực thi khối chức năng ...............................................................35 
Hình 2.6 Thời gian thực thi tương ứng với Hình 2.5 ................................................35 
Hình 3.1 Ví dụ về một sơ đồ chức năng mở rộng .....................................................38 
Hình 3.2 Chu trình vòng đời lặp của HDS ................................................................39 
Hình 3.3 Ví dụ về mô hình trường hợp sử dụng (A) và sơ đồ diễn tiến (B) .............40 
Hình 3.4 Máy trạng thái tương ứng với sơ đồ diễn tiến trong Hình 3.3B.................41 
Hình 3.5 Sơ đồ cộng tác đối tượng trong HDS công nghiệp ....................................44 

Hình 3.6 Sơ đồ cấu trúc gói của HDS công nghiệp ..................................................47 
Hình 3.7 Ví dụ về Automate lai ................................................................................48 
Hình 3.8 Chuyển đổi Automate lai với sự kiện bên trong Ei ....................................48 
Hình 3.9 Sơ đồ cạnh tranh thời gian toàn cục của các gói cơ bản ............................49 
Hình 3.10 Sơ đồ diễn tiến của Automate lai đưa ra cho chu kỳ cụ thể [2T - 3T]
tương ứng với Hình 3.9 .............................................................................................51 
Hình 4.1 Mô hình trường hợp sử dụng của EHG ......................................................57 
Hình 4.2 Sơ đồ diễn tiến trong trường hợp sử dụng: “Cấu hình” ............................58 
Hình 4.3 Máy trạng thái trong trường hợp sử dụng: “Cấu hình”..............................58 
Hình 4.4 Sơ đồ diễn tiến của trường hợp sử dụng: “Vận hành” – trong trường hợp:
EHG không kết nối với ECS .....................................................................................59 
Hình 4.5 Sơ đồ diễn tiến của trường hợp sử dụng: “Vận hành” – trong trường hợp:
EHG không kết nối với ECS .....................................................................................59 
Hình 4.6 Máy trạng thái của trường hợp sử dụng: “Vận hành” ................................60 
Hình 4.7 Sơ đồ diễn tiến trường hợp sử dụng: “Bảo trì” ..........................................60 
8


Hình 4.8 Sơ đồ diễn tiến trong trường hợp sử dụng: “An toàn” – trong trường hợp:
EHG bị quá tải ...........................................................................................................61 
Hình 4.9 Sơ đồ diễn tiến trong trường hợp sử dụng: “An toàn” – trong trường hợp:
EMS bị lỗi .................................................................................................................61 
Hình 4.10 Sơ đồ diễn tiến trong trường hợp sử dụng: “An toàn”– trong trường hợp:
EHG bị lỗi .................................................................................................................62 
Hình 4.11 Máy trạng thái của trường hợp sử dụng: “An toàn”– trong trường hợp:
khi EHG bị lỗi ...........................................................................................................62 
Hình 4.12 Máy trạng thái toàn cục của EHG ............................................................63 
Hình 4.13 Sơ đồ khối chức năng của EHG ...............................................................63 
Hình 4.14 Máy trạng thái của bộ giới hạn ................................................................64 
Hình 4.15 Máy trạng thái toàn cục hoàn thiện của EHG, khi các sự kiện bên trong

được kết nối ...............................................................................................................65 
Hình 4.16 Sơ đồ hàm truyền đạt của EHG................................................................66 
Hình 4.17 Đặc trưng Automate lai của EHG với các sự kiện bên trong được sinh ra
là Eii ...........................................................................................................................70 
Hình 4.18 Các lớp thực thể tương ứng với các phần tử liên tục (A); Lớp thực thể
tương ứng với các dòng liên tục (IGCB) (B) ............................................................72 
Hình 4.19 Lớp biên của giao diện bên trong (A); lớp biên của giao diện bên ngoài
(B)..............................................................................................................................72 
Hình 4.20 Sơ đồ cấu trúc các gói cơ bản của EHG ...................................................73 
Hình 4.21 Sơ đồ lớp của các gói cơ bản trong EHG .................................................73 
Hình 4.22 Sơ đồ diễn tiến toàn cục của EHG – trong trường hợp: sự kiện bên ngoài
được xử lý; sự kiện bên trong được sinh ra...............................................................74 
Hình 4.23 Sơ đồ cấu trúc của gói phần liên tục ........................................................75 
Hình 4.24 Sơ đồ lớp của gói phần liên tục của EHG ................................................75 
Hình 4.25 Sơ đồ diễn tiến của gói phần liên tục .......................................................76 
Hình 4.26 Máy trạng thái của gói phần liên tục của EHG ........................................76 
Hình 4.27 Sơ đồ lớp của gói IGCB ...........................................................................77 

9


Hình 4.28 Máy trạng thái của gói IGCB ...................................................................77 
Hình 4.29 Sơ đồ lớp của gói phần rời rạc .................................................................78 
Hình 4.30 Máy trạng thái của gói phần rời rạc .........................................................78 
Hình 4.31 Máy trạng thái ứng dụng “Evolution” tương ứng với Hình 4.30 .............79 
Hình 4.32 Sơ đồ lớp của gói giao diện bên trong .....................................................80 
Hình 4.33 Máy trạng thái của gói giao diện bên trong .............................................80 
Hình 4.34 Sơ đồ lớp của gói giao diện bên ngoài của EHG .....................................81 
Hình 4.35 Máy trạng thái của gói giao diện bên ngoài .............................................81 
Hình 4.36 Sơ đồ cấu trúc hệ thống con cơ bản và mối liên hệ truyền đạt giữa chúng

của EHG ....................................................................................................................83 
Hình 4.37 Các phần tử trong gói phần liên tục của EHG .........................................83 
Hình 4.38 Quá trình quá độ trong trường hợp EHG không đồng bộ và ứng với ba
ứng xử của bộ giới hạn ..............................................................................................84 
Hình 4.39 Quá trình quá độ trong trường hợp EHG đồng bộ và ứng với ba ứng xử
của bộ giới hạn ..........................................................................................................85 

10


MỞ ĐẦU
Ngày nay, phát triển các ứng dụng điều khiển công nghiệp đã trở thành một
phần tất yếu trong cuộc sống. Trong sự phát triển của ngành điểu khiển công
nghiệp, các phương pháp phát triển hướng mô hình hóa hướng đối tượng đã cho
phép tạo ra các bản thiết kế trực quan và có khả năng đáp ứng được các yêu cầu
thay đổi của các hệ thống. Tổ chức quản trị đối tượng OMG (Object Management
Group) đã hợp nhất các phương pháp này và thông qua một số các chuẩn mô hình
hóa chung như: ngôn ngữ mô hình hoá hợp nhất UML

(Unified Modeling

Language), khả năng siêu hướng đối tượng MOF (Meta Object Facility), siêu mô
hình kho dữ liệu chung CWM (Common Warehouse Metamodel) v.v... Cũng theo
thông tin mà OMG cung cấp thì đến nay nhiều tổ chức lớn trên thế giới đã ứng dụng
thành công mô hình hóa hướng đối tượng như: I-Logix, Telelogic, công ty hàng
không Lockheed Martin của Mỹ v.v…
Luận văn này được thực hiện nhằm mục đích nghiên cứu về phương pháp
công nghiệp để thiết kế theo hướng đối tượng phần điều khiển cho các hệ thống
động lực lai và minh họa việc áp dụng lý thuyết nghiên cứu vào việc phát triển một
hệ thống điều khiển công nghiệp thực tế.

Luận văn đưa ra các giả thuyết, mô hình hóa, thiết kế hướng đối tượng và mô
phỏng Automate lai cho các hệ thống động lực lai công nghiệp nhằm đánh giá chất
lượng điều khiển của các hệ thống đó. Minh họa được áp dụng cho một phần chức
năng điều khiển chính của “Hệ thống Điều tốc Điện tử - Thủy Lực”.
Nội dung luận văn bao gồm các phần chính sau:
-

Phần 1: Giới thiệu chung về hệ thống động lực lai.

-

Phần 2: Tổng quan về mô hình hóa, mô phỏng và thực thi các hệ thống động
lực lai.

-

Phần 3: Quy trình phân tích, thiết kế phần điều khiển hệ thống động lực lai
công nghiệp (Hybrid Dynamic Systems) với ngôn ngữ mô hình hóa hợp nhất
trong thời gian thực (Real time UML).

11


-

Phần 4: Áp dụng phân tích thiết kế hệ thống điều tốc điện tử thủy lực với
Real Time UML.
Luận văn cao học của tôi đã hoàn chỉnh, đạt được yêu cầu và kết quả đưa ra.

Tôi bày tỏ lòng biết ơn sâu sắc tới TS. Ngô Văn Hiền, người đã hướng dẫn tận tình

cho tôi hoàn thành luận văn này. Tôi cũng xin chân thành cảm ơn các giảng viên
Viện cơ khí động lực đã tạo điều kiện cho tôi tra cứu thông tin tài liệu. Đặc biệt, tôi
xin cảm ơn Ban lãnh đạo Tổng công ty Cơ điện Xây dựng Nông nghiệp và Thủy lợi
và các đồng nghiệp tạo điều kiện thời gian cho tôi theo học khóa học và làm luận
văn. Cuối cùng, tôi xin cảm ơn gia đình và bạn bè đã động viên tinh thần giúp cho
tôi làm tốt luận văn.

12


Chương 1- GIỚI THIỆU CHUNG VỀ HỆ THỐNG ĐỘNG LỰC LAI
1.1 Phân loại hệ thống điều khiển công nghiệp và cấu trúc lai
1.1.1 Phân loại các hệ thống điều khiển công nghiệp
Hiện nay, các hệ thống điều khiển tự động công nghiệp có thể phân loại theo
các loại sau: hệ thống chủ động lại, hệ thống thời gian thực và hệ thống động lực
lai.
- Hệ thống chủ động lại (Reactive System - RS) [5], [23]: là hệ thống có
thể nhận tất cả sự kiện và tín hiệu đầu vào; nó xử lý các sự kiện và tín hiệu này một
cách cạnh tranh có ưu tiên để đưa ra các tín hiệu và sự kiện đầu ra một cách đồng
bộ.
- Hệ thống thời gian thực (Real Time System - RTS) [5], [23]: là hệ thống tự
chủ động lại có kèm theo chu trình xử lý các sự kiện và tín hiệu đầu vào, đầu ra gắn
với điều kiện ràng buộc về khoảng thời gian và thời điểm thực thi. Ngoài ra, trong
hệ thống thời gian thực có thể phát sinh các sự kiện và tín hiệu bên trong phụ thuộc
vào thời gian. Ví dụ: Hệ thống điều khiển điện thủy lực nhằm duy trì mức chất lỏng
và áp suất không đổi trong 1 bể chứa, khi nguồn tiêu thụ môi chất thay đổi lưu
lượng.
- Hệ thống động lực lai (Hybrid Dynamic System - HDS) [13], [16]: là hệ
thống thời gian thực, nó bao gồm phần liên tục, phần rời rạc, và sự tương tác giữa
chúng. Ngoài ra, trong hệ thống động lực lai có thể phát sinh các sự kiện bên trong

không theo thời gian. Ví dụ: Các hệ thống điều khiển điện thủy lực trong máy nâng
chuyển, hệ thống lái tự động trong tàu thủy hoặc máy bay, hệ thống theo dõi đối
tượng trên thiết bị cầu thang cuốn v.v…
Hình 1.1 giới thiệu mối liên kết tổng quan giữa các hệ thống đã giới thiệu ở
trên; trong đó: RS: hệ thống chủ động lại, RTS: hệ thống thời gian thực, HDS: hệ
thống động lực lai.

13


Hình 1.1 Hệ thống chủ động lại, hệ thống thời gian thực và hệ thống động lực lai
Trong nội dung nghiên cứu, chúng tôi quan tâm tới việc phân tích thiết kế và
mô phỏng hệ thống động lực lai công nghiệp; bởi hệ thống điều khiển hiện tại và cơ
cấu chấp hành có xét tới các mô hình với dữ kiện rời rạc và mô hình ứng xử liên
tục. Những mô hình ứng xử này được phân tán thành các mô hình hoạt động khác
nhau; chúng được kết hợp với các quá trình làm thay đổi tác nhân với các trường
hợp sử dụng (Use cases) như là: người thiết kế, người tư vấn, người bảo trì
v.v…Hơn nữa, các hệ thống điều khiển luôn luôn không có ứng xử giống nhau; do
đó, nó sẽ được kết hợp với giả thuyết hợp lý để kiểm tra tại mọi thời điểm. Ứng xử
của các hệ thống này là khá phức tạp. Trong luận văn này, chúng tôi chỉ xét đến hệ
điều khiển công nghiệp đó là hệ thống động lực lai (HDS) và được mô hình hóa
bằng Automate lai (Hybrid automata).
1.1.2 Cấu trúc lai
Một cách tổng quát ta có thể xem hệ thống động lực lai bao gồm 3 phần [13]:
- Phần liên tục,
- Phần rời rạc,
- Phần tương tác giữa liên tục và rời rạc.
Các thành phần này được đặc tả trong một sơ đồ trộn. Tuy nhiên, các sơ đồ
trộn này không cho phép nghiên cứu đối tượng điều khiển và bộ điều khiển một
cách tổng hợp, nó cần làm rõ một vài yếu tố về mô hình hóa về các phần tử lai.

Phần liên tục:

14


Để nghiên cứu phần liên tục cần phải đưa ra các kí hiệu mô hình hóa nhằm
xây dựng một mô hình cho phần thực thi, các mô hình toán tổng quát. Nó liên quan
tới phương trình vi phân, mô hình hàm truyền đạt hoặc hệ phương trình trạng thái.
Phần rời rạc:
Để nghiên cứu phần rời rạc của hệ thống động lực lai, chúng ta có thể dùng
các ngôn ngữ hình thức như: Grafcet, Petri Net, máy trạng thái v.v… [9], nhằm đặc
tả ứng xử động của hệ thống. Chúng ta có thể sử dụng cách tiếp cận mà nó cho phép
lập mối quan hệ giữa máy trạng thái (State machine) với mỗi tổ hợp các biến liên
tục để thực thi hệ thống. Ở đây, các biến liên tục tham gia vào quá trình thực thi của
các trạng thái rời rạc thông qua các điều kiện hợp lệ và dịch chuyển trạng thái dưới
sự kiểm soát của đại lượng bất biến. Ngoài ra, tổ hợp các phương trình vi phân có
thể được liên kết với các trạng thái rời rạc của máy trạng thái để mô hình hóa sự
thực thi ứng xử của các biến liên tục.
Phần tương tác liên tục và rời rạc:
Cho phép kết nối các trạng thái rời rạc của phần rời rạc với các tổ hợp biến
liên tục tương ứng. Sự liên kết các giá trị liên tục của hệ thống qua các trạng thái rời
rạc có thể được biểu diễn qua hàm bước nhảy (Jumps) [13].
1.2 Giới thiệu HDS trong điều khiển công nghiệp
Trong luận văn này, chúng tôi nghiên cứu sâu về phân tích thiết kế và mô
phỏng hệ thống động lực lai công nghiệp. Hệ thống này bao gồm phần điều khiển
lai và cơ cấu chấp hành lai, hai phần này liên kết với nhau bởi sự trao đổi các tín
hiệu và sự kiện theo chu kỳ và không theo chu kỳ. Các sự kiện không theo chu kỳ
có thể là sự kiện bên trong hoặc bên ngoài, ta có sơ đồ khối tổng quan của hệ thống
động lực lai công nghiệp như Hình 1.2:


15


Hình 1.2 Sơ đồ khối tổng quan của hệ thống động lực lai công nghiệp
Trong đó:
 Eveo: sự kiện đầu ra,
 Evei: sự kiện đầu vào,
 Sigo: tín hiệu đầu ra,
 Sigi: tín hiệu đầu vào,
 ΔT: khoảng thời gian lấy mẫu của mô hình thực thi,
 Actor1, Actor2, Actor3… Actorm: tổ hợp con người hoặc hệ thống tác động
đến hệ thống thi hành (phần điều khiển lai và cơ cấu chấp hành lai) [16].
Hệ thống thi hành và tác nhân trao đổi các thông điệp không theo chu kỳ ở
dưới dạng không đồng bộ, và được thực hiện qua máy trạng thái. Mặt khác, cơ cấu
chấp hành lai có thể được thực thi bởi nhiều mô hình điều khiển khác nhau và tồn
tại sự tương tác giữa các mô hình này, vậy sự tương tác này có thể được mô hình
hóa thông qua ngôn ngữ hình thức như: Automate, Grafcet, biểu đồ trạng thái (State
chats) v.v…
Tóm lại, trong chương này chúng tôi đã giới thiệu cách khái quát về các hệ
thống điều khiển công nghiệp hiện nay: hệ thống chủ động lại, hệ thống thời gian
thực và hệ thống động lực lai. Trên thực tế rất nhiều hệ thống điều khiển công

16


nghiệp mang đặc tính của hệ thống động lực lai (HDS); bởi nó bao gồm phần liên
tục, phần rời rạc và phần tương tác giữa liên tục và rời rạc. Do vậy, trong chương
tiếp theo chúng tôi sẽ đưa ra các phương pháp mô hình hóa, mô phỏng và thực thi
HDS.


17


Chương 2- TỔNG QUAN VỀ MÔ HÌNH HÓA, MÔ PHỎNG VÀ THỰC THI
CÁC HỆ THỐNG ĐỘNG LỰC LAI
2.1 Mô hình hóa ứng xử hệ thống động lực lai
2.1.1 Automate lai
Một hệ Automate lai được xác định bằng hàm số sau [10]:
H = {Q, X, , A, Inv, F, q0, x0}
Trong đó:
 Q: tổ hợp của các vị trí mô tả các mô hình hoạt động (chế độ hoạt động)
của hệ thống,
 q0: trạng thái ban đầu,
 X: không gian trạng thái liên tục hiện tại của Automate, X  n,
 x0: giá trị ban đầu của trạng thái liên tục hiện tại của Automate,
 : tập hợp hữu hạn của các sự kiện,
 A: tập hợp các dịch chuyển được xác định bởi {q, Guard, , Jump, q’} và
được biểu diễn bởi một cung giữa các trạng thái, trong đó:
-

q Q, q’ Q,

-

Guard: một tổ hợp điều kiện cho phép thực hiện dịch chuyển,

-

Jump: giá trị bước nhảy giữa hai không gian trạng thái liên tục của hai


vị trí liền kề nhau,
-

  : tổ hợp các sự kiện cho phép dịch chuyển vị trí.

 Inv: đại lượng bất biến, dùng để theo dõi trạng thái liên tục phải được duy
trì; cụ thể là khi vị trí là q thì trạng thái liên tục phải được xác định theo
xinv(q),
 F: hàm liên tục tổng thể (dòng liên tục) được xác định theo từng vị trí của
hệ thống; nó là tổng hợp từ các phần tử liên tục của hệ thống theo một sơ đồ
điều khiển đã được xác định, tiến trình của trạng thái liên tục được xuất hiện
khi trạng thái hoạt động. F thường được biểu diễn bởi hệ phương trình vi
phân hoặc hệ phương trình trạng thái hoặc hàm truyền đạt.

18


Thông thường để mô hình hệ thống điều khiển, người ta sử dụng biểu đồ
diễn tiến chức năng; nhưng để mô hình hóa cấu trúc và ứng xử các HDS thì chúng
ta sử dụng Automate lai bởi vì:
-

Chỉ duy nhất một ứng xử liên tục tại một thời điểm được xác định,

-

Có đại lượng bất biến để kiểm tra lại giả thuyết về trạng thái liên tục trong
Automate lai,

-


Automate lai được bắt nguồn từ Automate nên mô hình ứng xử động của hệ
thống tương thích các ứng dụng tương tác sẵn có,

-

Nó có thể sử dụng được các công cụ phần mềm mô phỏng.
Ví dụ về Automate lai: Chúng ta hãy xem xét một bộ giới hạn tín hiệu (trạng
thái bão hòa) được thể hiện như sau Hình 2.1.

Hình 2.1 Bộ giới hạn tín hiệu (Limiter)
Trong đó : S+ và S-, là điểm giới hạn của bộ giới hạn tín hiệu.
Automate lai trong bộ giới hạn tín hiệu này thể hiện như sau Hình 2.2:

Hình 2.2 Automate lai trong bộ giới hạn tín hiệu
Chúng ta cũng có thể sử dụng Automate lai để mô hình các ứng xử HDS
phức tạp. Nhưng nếu chúng ta muốn sử dụng ngôn ngữ hình thức này để thực thi
một HDS điều khiển công nghiệp, thì chúng ta phải đưa thêm vào các điều kiện
ràng buộc như: các biến liên tục và các dữ kiện đầu vào/ đầu ra.

19


2.1.2 Grafcet
Khi thiết kế hệ thống phải tính đến các phương thức làm việc khác nhau để
đảm bảo an toàn và xử lý kịp thời các hư hỏng trong quá trình hoạt động của nó,
phải luôn luôn có phương án can thiệp trực tiếp của người vận hành đến việc dừng
máy khẩn cấp, xử lý tắc nghẽn vật liệu và các hiện tượng nguy hiểm khác v.v…
Grafcet là công cụ rất hữu ích để thiết kế và thực hiện đầy đủ các yêu cầu của hệ tự
động hóa các quá trình công nghệ.

Grafcet là từ viết tắt của tiếng pháp (GRAphe Fonctionnel de Commande
Etaps/Transitions), là một biểu đồ chức năng cho phép mô tả các trạng thái làm việc
của hệ thống và biểu diễn quá trình điều khiển với các trạng thái chuyển biến từ
trạng thái này sang trạng thái khác, đó là một graphe định hướng và được xác định
bởi các phần tử sau [9]:
G = {E, T, A, M}
Trong đó:
-

E = {E1, E2,..., En}: một tập hữu hạn các trạng thái của hệ thống, được ký

hiệu bằng các hình vuông. Mỗi trạng thái ứng với tác động nào đó của phần điều
khiển và trong mỗi trạng thái các hành vi điều khiển là không thay đổi. Một trạng
thái có thể là chủ động hoặc bị động. Điều khiển chính là thực hiện các mệnh đề
logic chứa các biến vào và các biến ra để hệ thống có được một trạng thái xác định,
-

T = {t1, t2,…, ti}: tập hữu hạn các dịch chuyển trạng thái được biểu hiện bằng

gạch ngang “-”. Hàm Boole gắn với mỗi dịch chuyển trạng thái được gọi là “một
tiếp nhận”,
-

A = {a1, a2,…, an}: tập các cung định hướng nối giữa một trạng thái với một

dịch chuyển hoặc ngược lại,
-

M = {m1, m2,…, mn}: tập các giá trị (0, 1). Nếu mi = 1 thì trạng thái i là hoạt


động, nếu mi = 0 thì trạng thái i là không hoạt động.
Grafcet cho một quá trình luôn luôn là một đồ hình khép kín từ trạng thái đầu
đến trạng thái cuối và từ trạng thái cuối đến trạng thái đầu.

20


2.1.3 Mạng Petri (Petri Net)
Mô hình mạng Petri được Carl Adam Petri đề xuất vào năm 1962, trải qua
hơn 40 năm phát triển, từ một mạng Petri đơn giản ban đầu, những người quan tâm
nghiên cứu đã cho ra đời một loạt các loại mạng Petri mức cao (Coloured Petri Net,
Predicate Petri Net v.v…) có thể mô phỏng cũng như phân tích hiệu năng cho các
hệ thống từ đơn giản đến phức tạp.
Mạng Petri lai hoặc trộn là một giải pháp mở rộng của mạng Petri chuẩn,
trong đó các phương trình có thể được gắn hoặc liên kết với vị trí hệ thống mà các
chức năng được gắn vào mối quan hệ dịch chuyển.
Một mạng Petri lai được định nghĩa phương trình toán [9], [16]:
{R, PC, IH, M0, x0}
Trong đó:
-

R: tổ hợp mạng Petri mà nó có thể đồng bộ qua các bộ phận sự kiện bên

trong như là: biểu đồ trạng thái, mỗi sự dịch chuyển có thể kèm theo sự kiện đúp là
rẽ nhánh hoặc phát sinh ra các lệnh rẽ nhánh,
-

PC: phần liên tục của mô hình mà nó được hiểu là tổ hợp các biến liên tục và

các phương trình vi phân đại số; nó nhằm mô phỏng các ứng xử liên tục khác nhau

của hệ thống. Các biến toàn cục, giá trị của nó được truy cập tại mọi nơi trong mô
hình tại mọi thời điểm.
-

IH: giao diện lai kết nối giữa phần liên tục và mạng petri.

-

M0: giá trị ban đầu của R.

-

X0: giá trị ban đầu của biến liên tục.
Tuy rằng mạng Petri có thể mô hình hóa ứng xử và cấu trúc của HDS một

cách rõ ràng, nhưng trên thực tế để thực thi phần điều khiển của HDS thì việc kết
nối giữa mô hình mô phỏng và mô hình triển khai là rất khó. Nó thường dùng trong
việc nghiên cứu mô hình lý thuyết của hệ thống.

21


2.2 Công nghệ hướng đối tượng trong việc phát triển HDS
2.2.1 Lập trình hướng đối tượng
Lập trình hướng đối tượng được coi là phương pháp lập trình chuẩn hiện nay
bởi nó có nhiều ưu điểm lớn so với các phương pháp cổ điển. Mục tiêu mà lập trình
hướng đối tượng đặt ra là:
-

Đơn giản hóa việc xây dựng và sử dụng các thư viện.


-

Cho phép dùng lại mã. Nếu hàm thư viện không phù hợp với yêu cầu của

người lập trình thì người lập trình có khả năng sửa đổi dễ dàng mà không cần tìm
hiểu ngọn nguồn, không cần phải có mã nguồn của hàm đó trong tay. Mã sinh ra từ
thực nghiệm dễ dàng được dùng lại trong mã chính thức. Nói khác đi, người lập
trình có điều kiện để thoải mái sáng tạo.
-

Cải thiện khả năng bảo trì của mã, mà phải dễ hiểu, dễ sửa đổi. Trên thực tế,

việc biên soạn tài liệu bao giờ cũng đi sau khá xa so với mã được viết ra.
-

Cho phép tạo ra chương trình dễ mở rộng. Có thể thêm chức năng cho

chương trình mà không ảnh hưởng dây chuyền đến mã đã viết.
Lập trình hướng đối tượng phải được thực hiện thông qua ngôn ngữ lập trình
hướng đối tượng. Để đạt được các mục tiêu trên, mọi ngôn ngữ lập trình hướng đối
tượng đều thể hiện ba khái niệm: đóng gói (Encapsulation, packaging), đa hình
(Polymorphism) và thừa kế (Inheritance). Các ngôn ngữ lập trình hướng đối tượng
thông dụng là C++, Java, Ada v.v…[1].
2.2.2 Phân tích và thiết kế hướng đối tượng
Theo dòng phát triển công nghệ thông tin, phương pháp lập trình đã phát
triển từ lập trình không có cấu trúc lên lập trình có cấu trúc và tới nay là lập trình
hướng đối tượng. Phương pháp phân tích, thiết kế phần mềm cũng đi theo các bước
tiến hóa này. Trước đây, người ta phân tích, thiết kế phần mềm theo kiểu hướng thủ
tục (Procedure-oriented) hoặc hướng dữ liệu (Data-oriented). Theo phương pháp

này, phần mềm cần xây dựng được chia thành giải thuật và cấu trúc dữ liệu. Trong
quá trình phân tích, giải thuật được phân chia thành các giải thuật con đơn giản hơn,
22


cấu trúc dữ liệu lớn được chia thành những cấu trúc nhỏ hơn. Quá trình tương tự
cũng được tiến hành trong quá trình thiết kế.
Phương pháp phân tích, thiết kế hướng thủ tục hoặc hướng dữ liệu có ưu
điểm đơn giản, nhanh chóng tạo ra kết quả (do tiến hành theo kiểu từ trên xuống)
nhưng kết quả tạo ra không phản ánh bản chất thực, dẫn đến cứng nhắc, khó thay
đổi khi yêu cầu đặt ra thay đổi, khó mở rộng khi hệ thống phát triển [1].
Phương pháp phân tích, thiết kế phần mềm tiên tiến hiện nay là hướng đối
tượng (Object-oriented), trong đó khối cơ bản để xây dựng nên phần mềm là đối
tượng hay lớp. Nói một cách đơn giản, đối tượng là sự phản ánh thế giới tự nhiên
xung quanh.
Trong các hệ thống điều khiển, các đối tượng có thể đại diện các thành phần
hệ thống như:
-

Các thuật toán điều khiển,

-

Xử lý sự kiện và báo động,

-

Xử lý mệnh lệnh,

-


Quan sát và chuẩn đoán,

-

Cấu hình vào/ra,

-

Mô phỏng,

-

Thông tin thiết kế.
Việc trừu tượng hóa thế giới tự nhiên thành các lớp đối tượng như vậy được

gọi là mô hình hóa hướng đối tượng. Dựa trên mô hình đối tượng thu được, phương
pháp phân tích, thiết kế phần mềm hướng đối tượng sẽ bổ sung thêm các liên kết và
lớp đối tượng mới, tinh chỉnh lại v.v… để tạo ra một mô hình đối tượng chi tiết của
phần mềm. Cuối cùng, người lập trình sử dụng một ngôn ngữ lập trình nào đó
(không nhất thiết phải là ngôn ngữ hướng đối tượng) thể hiện mô hình đối tượng chi
tiết thành mã nguồn. Ưu điểm lớn nhất của phân tích, thiết kế phần mềm hướng đối
tượng không phải nằm ở chỗ tạo ra chương trình nhanh tốn ít công sức, mà nằm ở
chỗ nó gần với thực tế và do đó thúc đẩy việc tái sử dụng lại những thành quả đã
xây dựng được như mã lệnh hay bản thiết kế.

23


2.2.3.1 Ngôn ngữ mô hình hóa hợp nhất

Để phục vụ cho công việc mô hình hóa vốn là cốt lõi của phân tích, thiết kế
phần mềm hướng đối tượng, ngôn ngữ UML (Unified Modeling Language) được sử
dụng rộng rãi. UML - một ngôn ngữ quốc tế được chuẩn hóa bởi tổ chức OMG [1],
[23], là một ngôn ngữ đồ họa dùng để trực quan hóa, đặc tả, xây dựng và tư liệu hóa
hệ thống thiên về phần mềm. UML đem lại cho người sử dụng phương pháp chuẩn
để viết bản thiết kế hệ thống bao trùm từ những thứ cụ thể như các lớp viết bằng
một ngôn ngữ lập trình nào đó, các thành phần phần mềm có thể tái sử dụng v.v…
cho đến những yếu tố trừu tượng như chức năng của toàn bộ hệ thống. Vì lý do này,
ngôn ngữ UML không chỉ được sử dụng để mô tả, xây dựng kiến trúc và thiết kế
của các hệ thống phần được sử dụng để mô tả, xây dựng kiến trúc và thiết kế của
các hệ thống phần mềm, mà còn là một công cụ mô hình hóa thích hợp cho các hệ
thống kỹ thuật nói chung và các hệ thống điều khiển nói riêng. UML là một ngôn
ngữ mô hình hóa rất mạnh, rất đa năng.
2.2.3.2 Mẫu thiết kế
Mẫu thiết kế [8] là sự hình thức hóa của cách tiếp cận tới một vấn đề thường
gặp trong ngữ cảnh cụ thể. Mỗi mẫu thiết kế mô tả một giải pháp cho một vấn đề
thiết kế cụ thể trong một ngữ cảnh xác định. Giải pháp này đã được chứng minh là
hợp lý, sử dụng nhiều lần đem lại kết quả tốt và do đó được trừu tượng hóa thành
một mẫu. Nói một cách ngắn gọn, mẫu thiết kế là kinh nghiệm thiết kế đúc kết lại.
Bằng cách dùng các mẫu thiết kế, người thiết kế không phải thiết kế hệ thống của
mình từ đầu mà sử dụng lại kinh nghiệm đã có từ trước, dẫn đến chất lượng thiết kế
tốt hơn, tăng tính tái sử dụng của bản thiết kế.
2.2.3.3 Phần mềm thành phần
Phần mềm thành phần [1] (Component software) là một hướng đi mới, phát
triển trên cơ sở phương pháp lập trình hướng đối tượng. Lập trình hướng đối tượng
cho phép sử dụng lại phần mềm dưới dạng các lớp (Class) vào giai đoạn biên dịch
(Compile-time); trong khi đó phần mềm thành phần cho phép sử dụng lại phần mềm
dưới dạng các thành phần (Component) vào cả giai đoạn biên dịch và giai đoạn thực

24



thi (Run-time). Do vậy, theo tư tưởng phần mềm thành phần, ngôn ngữ lập trình
cũng như “lớp” là thứ yếu, giao diện mới là quan trọng. Nói như vậy tức là một
thành phần mềm là các phần mềm có thể được viết ở các ngôn ngữ khác nhau, đã
được hoàn chỉnh, biên dịch và đóng gói, có các giao diện chuẩn để có thể sử dụng
thuận tiện, linh hoạt trong nhiều ứng dụng khác nhau mà không cần biên dịch lại.
Thậm chí trong một số trường hợp, việc sử dụng các thành phần phần mềm có sẵn
không đòi hỏi lập trình. Ví dụ người soạn thảo một văn bản có thể sử dụng kết hợp
các thành phần phần có sẵn như soạn thảo công thức, vẽ đồ thị v.v… mà cảm tưởng
như tất cả đều nằm trong chương trình soạn thảo văn bản.
Có thể nói, hầu hết các hệ thống phát triển ứng dụng trong các hệ điều khiển
lai hiện nay thực hiện triệt để tư tưởng hướng đối tượng và phần mềm thành phần.
Tư tưởng sử dụng khối hàm, các khối đồ họa, các khối chương trình trong nhiều hệ
thống là những ví dụ tiêu biểu.
2.2.3 Ngôn ngữ mô hình hóa hợp nhất trong thời gian thực
Ngôn ngữ mô hình hóa trong thời gian thực (Real Time UML) được phát
triển và chuẩn hóa bởi OMG [5], [6], [23]. Nó dùng để đặc tả, trực quan, xây dựng
và lập tài liệu các thành phần của các ứng dụng phần mềm điều khiển trong các hệ
thống thời gian thực và hệ thống nhúng (Embedded system). Real Time UML bao
gồm tất cả các ký hiệu mô hình hóa của UML, ngoài ra nó còn đưa ra các ký hiệu
mô hình hóa: gói (Capsule), cổng (Port) và giao thức (Protocol) nhằm mô hình hóa
các hệ thống điều khiển trong công nghiệp.
2.3.2.1 Gói
Gói là một lớp có kiểu mở rộng được đặc trưng «capsule». Các gói có nhiều
đặc tính giống nhau như là các lớp; ví dụ: Chúng có thể có nhiều thao tác
(Operation) và thuộc tính (Attributes). Tuy nhiên, chúng cũng có một vài tính chất
đặc biệt như là các cổng dùng chung, thao tác riêng, thông điệp thông qua giao thức
truyền đạt ứng xử.


25


×