BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
NGUYỄN THỊ THANH TÚ
NGHIÊN CỨU VÀ XÂY DỰNG BỘ CÔNG CỤ
PHÁT TRIỂN PHẦN MỀM HỖ TRỢ
GIÁM SÁT, ĐIỀU KHIỂN SỬ DỤNG OPC UA
CHUYÊN NGÀNH: KỸ THUẬT PHẦN MỀM
MÃ SỐ: 62480103
TÓM TẮT LUẬN ÁN TIẾN SĨ KỸ THUẬT PHẦN MỀM
HÀ NỘI - 2014
Công trình được hoàn thành tại:
Trường Đại học Bách Khoa Hà Nội
Người hướng dẫn khoa học:
1. PGS.TS. Huỳnh Quyết Thắng
2. PGS.TS. Bùi Quốc Khánh
Phản biện 1: PGS.TS. Đào Thanh Tĩnh
Phản biện 2: PGS.TS. Ngô Quốc Tạo
Phản biện 3: TS. Nguyễn Huy Phương
Luận án sẽ được bảo vệ trước Hội đồng chấm luận án cấp Trường, họp tại
Trường Đại học Bách Khoa Hà Nội
Vào hồi: …… giờ, ngày …… tháng …… năm ……
Có thể tìm hiểu luận án tại:
1. Thư viện Tạ Quang Bửu – Trường Đại học Bách Khoa Hà Nội
2. Thư viện Quốc gia
1
MỞ ĐẦU
1. Lý do nghiên cứu, mục đích luận án
Với mục tiêu công nghiệp hóa, hiện đại hóa nền kinh tế thì việc ứng
dụng công nghệ thông tin vào hoạt động sản xuất công nghiệp là tất yếu
và cũng là động lực thúc đẩy sự phát triển, hiện đại hóa trong sản xuất.
Mục đích bước đầu tìm hiểu và làm chủ công nghệ, tạo bước đột phá
trong nghiên cứu, phát triển và ứng dụng CNTT vào công nghiệp, luận
án sẽ hướng tới các mục tiêu: (1) Nghiên cứu, đánh giá và triển khai hệ
thống phần mềm giám sát, điều khiển tiến trình trong công nghiệp. (2)
Cùng với sự công nghiệp hoá và hiện đại hoá, nhu cầu về các phần
mềm giám sát điều khiển là rất khả quan và cấp thiết. (3) Thực tế thị
trường ở Việt Nam chưa phát triển hệ thống hoàn thiện về giám sát và
điều khiển, mà đa phần được triển khai và cài đặt từ các sản phẩm được
phát triển ở nước ngoài. Mục tiêu của luận án là đề xuất và phát triển
các thành phần của OPC UA dựa trên các đặc tả mới nhất của OPC
Foundation và những vấn đề còn hạn chế của các giải pháp đã được đề
xuất dùng cho các hệ thống giám sát, điều khiển trong công nghiệp. Kết
quả nghiên cứu của luận án sẽ là bộ công cụ OPC UA Client-Server
SDK đã được tối ưu hoá và phát triển thành các thành phần. Hệ thống
đề xuất này sẽ khắc phục được những hạn chế của các hệ thống cũ dựa
trên các đặc tả trước đó của OPC Foundation.
2. Mục tiêu nghiên cứu của luận án
OPC Foundation đang phát triển bộ công cụ (toolkit) cho các nhà phát
triển phát triển và thực thi các ứng dụng phần mềm trong công nghiệp.
Bộ toolkit hứa hẹn sẽ cung cấp các thư viện (libraries), lớp (classes),
phương thức (methods) và giao diện tham khảo (reference interfaces)
cho những nhà phát triển và lập trình ứng dụng [1]. Tuy nhiên, bộ
toolkit này thực sự không đủ cho các nhà phát triển và lập trình vì sự
phức tạp của các hệ thống giám sát và điều khiển, các tác vụ trong giám
sát và điều khiển liên quan, và những hạn chế của bộ toolkit. Do đó
việc nghiên cứu và phát triển các thành phần của OPC UA dựa trên các
đặc tả mới nhất OPC UA, SOA, webservices, XML là cần thiết và vẫn
là thách thức. Nó sẽ giúp các nhà phát triển và lập trình tiết kiệm được
thời gian, chi phí cho việc phát triển các ứng dụng phần mềm trong
công nghiệp, đặc biệt là các hệ thống giám sát và điều khiển. Các nỗ
lực của các nhà phát triển và lập trình sẽ được giảm bớt trong quá trình
nghiên cứu và phát triển các công nghệ mới, mặt khác, các thành phần
2
của OPC UA cho phép các kiến trúc sư hệ thống, thiết kế thực hiện các
phân tích phụ thuộc cho sự phát triển các ứng dụng thực tế trong giám
sát và điều khiển trong công nghiệp. Mục tiêu nghiên cứu là đề xuất và
phát triển các thành phần của OPC UA dựa trên các đặc tả mới nhất của
OPC Foundation và những vấn đề còn hạn chế của các giải pháp đã
được đề xuất dùng cho các hệ thống giám sát và điều khiển trong công
nghiệp. Sau đó đưa kết quả nghiên cứu áp dụng vào các bài toán thực tế
cho các hệ thống giám sát và điều khiển để đánh giá tính khả thi, hiệu
quả của những kết quả đạt được.
3. Ý nghĩa khoa học và thực tiễn của luận án
Ở Việt Nam, các nghiên cứu về các đặc tả của OPC và đề xuất các giải
pháp thiết kế, phát triển và triển khai vào các hệ thống phần mềm trong
công nghiệp còn khá mới mẻ, nên nghiên cứu có những ý nghĩa: (1)
Bước đầu triển khai nghiên cứu những đặc tả của OPC UA ở Việt Nam.
(2) Thiết kế, lập trình, và chạy thử nghiệm hệ thống đề xuất để đánh giá
khả năng ứng dụng của OPC UA vào trong các bài toán trong công
nghiệp nói chung và cho các hệ thống thu thập dữ liệu và điều khiển
nói riêng. (3) Tài liệu hoá ở góc độ phân tích và thiết kế hệ thống, giúp
cho các nhà phát triển ứng dụng, các công ty tin học có thể phát triển hệ
thống một cách khoa học và dễ dàng. (4) Đóng góp một phần vào quá
trình nghiên cứu và làm chủ các giải pháp công nghệ cho phần mềm
công nghiệp, một mảng được cho là khó và mới mẻ ở Việt Nam.
4. Đối tượng và phạm vi nghiên cứu
Hướng giải quyết, cách tiếp cận: (i) tiếp cận dựa trên đặc tả mới nhất
OPC UA, (ii) dựa trên những mặt hạn chế, điểm yếu của các công trình
đã nghiên cứu nhằm đề xuất giải pháp cho hệ thống phần mềm công
nghiệp trong tương lai, (iii) lập trình, triển khai, kiểm thử hệ thống
nhằm đánh giá và chỉ ra những mặt mạnh, khả năng đáp ứng của nó.
Những nghiên cứu trong lĩnh vực của luận án sẽ bao gồm: (i) nghiên
cứu những đặc tả của OPC, đặc biệt chú trọng đến đặc tả OPC UA, (ii)
xem xét những nghiên cứu hiện tại của thế giới, tìm ra những mặt còn
hạn chế và giới hạn của chúng, (iii) đề xuất một kiến trúc mới cho hệ
thống phần mềm công nghiệp ở góc độ tổng quát với mục đích có thể
áp dụng được cho nhiều bài toán cụ thể và cải thiện được những mặt
hạn chế hiện tại của các nghiên cứu đã công bố, (iv) nghiên cứu và đề
xuất giải pháp cho vấn đề ghép nối các thiết bị vào OPC UA Server, (v)
phát triển, triển khai hệ thống đề xuất và chạy thử nghiệm, (vi) ước
3
lượng, đánh giá, và đề xuất áp dụng cho các bài toán thực tế trong công
nghiệp.
5. Phương pháp nghiên cứu
Phương pháp nghiên cứu, kỹ thuật sử dụng: (1) Phân tích, thiết kế, và
triển khai thử nghiệm. (2) Phân tích, thiết kế bài toán giám sát và điều
khiển tiến trình dùng trong công nghiệp nói chung, dựa trên phương
pháp phân tích phạm vi lĩnh vực (domain analysis) và thiết kế dựa trên
phạm vi lĩnh vực (domain design), đưa ra giải pháp tổng thể cho bài
toán và xây dựng hệ thống nhằm đảm bảo bảy tiêu chí như sau: đáp
ứng những yêu cầu chung, phương pháp luận, mềm dẻo, khả năng mở
rộng, khả năng sử dụng lại, sự mở và khả năng thích ứng. Sản phẩm sẽ
được kiểm thử và triển khai thử nghiệm dạng mô phỏng tại Viện CNTT
& TT, Viện KTĐK & TĐH, Trường ĐH Bách Khoa HN, đánh giá hiệu
quả và tính khả khi của hệ thống đã phát triển.
6. Các đóng góp của luận án
Luận án có những đóng góp nhất định như sau: (1) Đề xuất bộ công cụ
OPC UA Client-Server SDK ứng dụng vào các hệ thống giám sát và
điều khiển trong các nhà máy, xí nghiệp và toà nhà dựa trên đặc tả
mới nhất OPC UA. (2) Thử nghiệm ứng dụng bộ công cụ đề xuất OPC
UA Client-Server SDK vào bài toán quan trắc môi trường (EMA). (3)
Thử nghiệm ứng dụng bộ công cụ đề xuất OPC UA Client-Server SDK
vào bài toán giám sát và điều khiển hệ thống điều hòa nhiệt độ dựa trên
Modbus. (4) Thử nghiệm ứng dụng bộ công cụ đề xuất OPC UA
Client-Server SDK vào bài toán giám sát và điều khiển quá trình trong
công nghiệp. Kết quả của luận án sẽ được tiếp tục triển khai và áp dụng
vào các bài toán thực tế cho các hệ thống giám sát và điều khiển các
thiết bị và hệ thống. Nó cũng góp một phần nhỏ trong quá trình đào tạo
và chuyển giao công nghệ giữa Viện CNTT & TT, Đại học Bách Khoa
HN và các đơn vị, tổ chức nghiên cứu ngoài trường, các học viên cao
học
7. Bố cục luận án
Luận án bao gồm 4 chương chính cùng phần mở đầu, phần kết luận
được trình bày trong 96 trang thuyết minh; 63 tài liệu tham khảo; 7 bài
báo khoa học có liên quan đến luận án đã công bố và 1 đề tài nghiên
cứu khoa học cấp Bộ đã được nghiệm thu.
Chương 1. Tổng quan; Chương 2. Dựa trên đặc tả OPC UA và những
hạn chế của các hệ thống đã và đang phát triển, tác giả đề xuất và phát
triển bộ công cụ OPC UA Client-Server SDK; Chương 3. Dựa vào bộ
4
công cụ OPC UA Client-Server SDK đã phát triển ở chương 2. Hai bài
toán giám sát, điều khiển hệ thống quan trắc môi trường và hệ thống
giám sát, điều khiển điều hòa nhiệt độ được đề xuất, áp dụng và phát
triển. Hai hệ thống đã phát triển minh họa khả năng áp dụng và phát
triển tiếp của OPC UA SDK đã đề xuất; Chương 4. Dựa trên bộ công
cụ OPC UA Client-Server SDK đã phát triển và kết quả đạt được của
chương 3, thì bài toán giám sát và điều khiển quá trình trong công
nghiệp được đề xuất, áp dụng và phát triển. Kết quả thể hiện bộ công
cụ OPC UA Client-Server SDK không chỉ áp dụng được vào 3 bài toán
trên, mà còn có khả năng áp dụng vào các hệ thống lớn của dầu khí,
hóa chất, công nghệ thực phẩm
CHƯƠNG 1. TỔNG QUAN
1.1. Hệ thống điều khiển tự động hóa trong công nghiệp
Một hệ thống giám sát và điều khiển có thể được hiểu là hệ thống tích
hợp chức năng giám sát, điều khiển quá trình một cách liên tục, kiểm
soát sự kiện, báo cáo và xử lý các trạng thái bất thường của hệ thống.
1.1.1. Thiết bị điều khiển khả trình (PLC)
Các bộ điều khiển khả trình PLC (Programmable Logic Controller)
được phát triển trong lĩnh vực điện, ban đầu nhằm thay thế các bảng
mạch rơ le. Các thiết bị PLC có ưu điểm là tốc độ xử lý các tín hiệu
logic nhanh (cỡ mili giây) tuy nhiên khả năng xử lý các tín hiểu analog
lại kém.
1.1.2. Hệ thống điều khiển phân tán (DCS)
DCS (Distributed Control System) được dùng để chỉ lớp các hệ thống
điều khiển sử dụng phương pháp điều khiển phân tán [21]. Thế mạnh
DCS là khả năng xử lý các tín hiệu tương tự và thực hiện chuỗi quá
trình phức tạp, khả năng tích hợp dễ dàng. Các hệ thống DCS ngày nay
thường bao gồm các bộ điều khiển, hệ thống mạng truyền thông và
phần mềm hệ điều hành hệ thống tích hợp.
1.1.3. Hệ thống điều khiển lai (HCS)
Hệ điều khiển lai (Hybrid Control System) [21] do ra đời sau, kế thừa
nền tảng công nghệ của cả PLC và DCS nên hệ lai là sự pha trộn thuộc
tính của hệ PLC và hệ DCS. Các hệ lai cũng cung cấp việc sử dụng
công nghệ Bus trường bao gồm Forudation Fieldbus, AS-i, Profibus và
DeviceNet. Các hệ lai thường hỗ trợ các chuẩn mở như là OPC, XML,
ODBC. Hạn chế ứng dụng của hệ thống điều khiển lai là do các thiết bị
5
điều khiển nhỏ dẫn lưu lượng truyền thông lớn và nó sẽ hạn chế về số
lượng điểm vào/ra. Với cơ sở dữ liệu hạn chế, các hệ lai cũng không đủ
phục vụ cho các ứng dụng lớn.
1.1.4. Điều khiển tập trung và điều khiển phân tán
Có rất nhiều định nghĩa về hệ điều khiển phân tán, hầu hết các nhà
cung cấp giải pháp điều khiển, các nhà tích hợp hệ thống đều có những
định nghĩa riêng cho mình về điều khiển phân tán. Dưới góc độ của nhà
nghiên cứu và kỹ thuật trong lĩnh vực điều khiển thì khái niệm điều
khiển phân tán được sử dụng để phân biệt với điều khiển tập trung
truyền thống [21]. Điều khiển phải tập trung và cơ sở dữ liệu phải
thống nhất để đảm bảo khả năng đáp ứng tốt nhất đối với yêu cầu công
nghệ. Khác với điều khiển tập trung, điều khiển phân tán có quá trình
tính toán điều khiển là quá trình tính toán phân tán.
1.2. Lịch sử phát triển của các chuẩn kết nối
1.2.1. OLE
Object Linking and Embedding (OLE) ra đời năm 1990, là một công
nghệ được phát triển bởi Microsoft cho phép nhúng và liên kết các tài
liệu và các đối tượng khác nhau [24]. Chính vì vậy, OLE đã ra đời thay
thế cho DDE. Ưu điểm của OLE là hiển thị trực quan dữ liệu từ server,
và tạo ra một tập tin thống nhất. OLE được sử dụng không chỉ cho việc
quản lý dữ liệu mà còn để truyền dữ liệu giữa các ứng dụng khác nhau
[9].
1.2.2. COM/DCOM
Componet Object Model (COM) là một nền tảng mạnh được phát triển
bởi Microsoft. Năm 1992, Microsoft đã phát triển OLE lên về tính năng
và đặt tên là COM (1995). COM là sự đặc tả và là một tập hợp các dịch
vụ cho phép tạo ứng dụng không phụ thuộc ngôn ngữ, khả năng
module hóa, hướng đối tượng, phân tán, tùy biến, nâng cấp được. Mô
hình này xác định cơ chế giao tiếp giữa các đối tượng bao gồm dữ liệu
và ứng dụng. Dữ liệu về các đối tượng được lưu trữ và có thể truy cập
một cách dễ dàng [24]. COM/DCOM là công nghệ được OPC sử dụng
để đặc tả định nghĩa một tập chuẩn cho đối tượng, giao diện và phương
thức để sử dụng trong quá trình kiểm soát và ứng dụng tự động hóa sản
xuất.
1.2.3. XML
Extensible Markup Language (XML) được W3C thông qua vào tháng
2/1998, là tập các quy ước chuẩn về cách phân chia một tài liệu thành
nhiều phần, đánh dấu từng phần theo đặc trưng của nó rồi ghép lại [24].
6
XML là ngôn ngữ dùng để định nghĩa dữ liệu, người dùng có thể tự
định nghĩa các thẻ [50, 51]. XML là công nghệ được OPC sử dụng
trong OPC XML-DA, OPC XML-DA là nền tảng độc lập đầu tiên của
OPC Specification thay thế COM/DCOM bằng HTTP/SOAP và công
nghệ Web Serivice.
1.2.4. SOA
Service Oriented Architecture (SOA) ra đời năm 2002, là một tập các
quy tắc và phương pháp thiết kế, phát triển phần mềm theo hình thức
dịch vụ tương tác [24, 50]. Các dịch vụ này được thiết kế rõ ràng,
tương ứng với các chức năng nghiệp vụ cụ thể. Dịch vụ đóng vai trò là
các thành phần của phần mềm và có khả năng sử dụng lại tùy theo mục
đích cụ thể. Để truy cập đến các dịch vụ, SOA thường sử dụng XML
(eXtensible Markup Language) để giao tiếp.
1.2.5. Web Services
Web Services hiểu một cách đơn giản là các dịch vụ được cung cấp
trên nền tảng web. Web Service cung cấp các dịch vụ cho khách hàng
thông qua Internet, Intranet bằng cách sử dụng URL. Web Service dựa
trên các chuẩn web: HTTP, SOAP, XML [24]. Ưu điểm của Web
Services là có thể cài đặt với bất kỳ ngôn ngữ nào, trên bất kỳ nền tảng
nào. Web Services cung cấp cơ chế gọi phương thức từ xa, cho phép
kết nối giữa các công ty khác nhau, giữa các thiết bị, giữa các ứng dụng
và client khác nhau.
1.3. Tổng quan về OPC
OPC (Openness, Productivity, and Collaboration), trước đó là “OLE for
Process Control”. OPC là một dạng chuẩn phần mềm tích hợp hệ
thống, dựa trên mô hình đối tượng DCOM (Distributed Component
Object Model) của Microsoft [2, 9, 11, 38]. OPC định nghĩa thêm các
giao diện giúp cho việc khai thác dữ liệu từ các quá trình kĩ thuật, làm
cơ sở để xây dựng các hệ DCS (Distributed Control System – các hệ
thống điều khiển phân tán) và SCADA (Supervisory Control and Data
Acquisition – các hệ thống điều khiển và thu thập dữ liệu). Được thành
lập từ năm 1996 nhằm đề xuất những tiêu chuẩn cho phát triển các
phần mềm công nghiệp, đặc tả đầu tiên được đề xuất là OPC DA (data
access) đã được triển khai và ứng dụng rộng rãi trên thế giới [2, 37]. Từ
năm 2006, OPC Foundation đề xuất đặc tả mới là OPC UA [1, 7, 11,
12]. Mục đích của đặc tả này là tổng hợp tất cả những chức năng mà
các đặc tả trước đó đã cung cấp như OPC DA, OPC HDA, OPC AE
dựa trên, XML, SOA và công nghệ Web để đảm bảo hệ thống phần
7
mềm công nghiệp chạy trên bất kỳ hệ điều hành nào như Windows,
Unix, Linux.
1.4. Các đặc tả của OPC
1.4.1. Đặc tả OPC DA (Data Access)
Giao diện OPC Data Access cho phép đọc, viết và giám sát những biến
dữ liệu của quá trình hiện hành [1, 63]. Các trường hợp sử dụng chính
là chuyển dữ liệu thời gian thực từ PLCs, DCSs và các thiết bị điều
khiển khác như HMIs và các Client hiển thị khác. Trong OPC thì OPC
DA là interface quan trọng nhất. Ngày nay, nó được triển khai đến 99%
trong các sản phẩm sử dụng công nghệ OPC.
1.4.2. Đặc tả XML-DA
OPC XML-DA là nền tảng độc lập đầu tiên của OPC Specification mà
thay thế COM/DCOM bằng HTTP/SOAP và công nghệ Web Serivice.
Vì vậy, cấu trúc giao tiếp nền tảng trung lập của nhà cung cấp đã được
giới thiệu và chấp nhận rộng rãi bởi các chức năng của OPC Data được
giữ lại. OPC XML-DA được thiết kế cho việc truy cập Internet và tích
hợp doanh nghiệp. Nhưng dựa trên sự độc lập nền tảng, nó đã được
thực hiện chủ yếu trong hệ thống nhúng và trên các nền tảng không sử
dụng công nghệ của Microsoft. Tuy nhiên, do tiêu thụ nhiều tài nguyên
và hiệu suất hạn chế, nó đã không được thành công như mong đợi cho
loại ứng dụng kiểu này.
1.4.3. Đặc tả DX (Data eXchange)
OPC Data eXchange (DX) là phần mở rộng cho OPC DA. OPC DX
[59] quy định chi tiết việc trao đổi dữ liệu giữa Data Access Servers
bằng cách xác định hành vi của Client và giao diện cấu hình cho Client
bên trong một Server. OPC Data eXchange cho phép trao đổi thông tin
giữa các server với nhau, mở ra khả năng trao đổi thông tin giữa các
máy chủ của nhiều nhà cung cấp khác nhau thông qua mạng truyền
thông Etherner. Công cụ này cho phép ta thêm các chức năng định cấu
hình chẩn đoán và giám sát quản lý hệ thống từ xa.
1.4.4. Đặc tả HDA (Historical Data Access)
Trường hợp OPC Data Access cho phép truy cập thời gian thực, dữ liệu
thay đổi một cách liên tục, OPC Historical Data Access [61] cung cấp
truy cập dữ liệu mà đã được lưu trữ. Từ một dãy dữ liệu đơn giản như
đăng nhập hệ thống đến hệ thống SCADA phức tạp, dữ liệu lưu trữ lịch
sử có thể được truy cập theo một cách thống nhất. Đặc tả OPC HDA
xác định hai cấu trúc mà OPC HDA server có thể cung cấp cho client
đó là không gian tên và hệ thống phân cấp đối tượng. OPC HDA server
8
có thể chia thành 2 loại: các server xử lý các dữ liệu đơn giản, truy cập
vào dữ liệu thô và các server nén và phân tích xử lý các dữ liệu phức
tạp [1]. Không gian tên của OPC HDA server cũng được định nghĩa
tương tự như OPC DA server, có nghĩa là, nó được sử dụng để cấu trúc
dữ liệu hiện có và cung cấp chúng cho khách hàng.
1.4.5. Đặc tả OPC AE (Alarms and Events)
Giao diện OPC Alarm & Events cho phép tiếp nhận thông báo event và
các thông báo alarm [1, 60]. Các sự kiện là những cảnh báo đơn thông
báo cho Client về sự một sự kiện xảy ra. Các cảnh báo là những cảnh
báo mà thông báo cho Client về sự thay đổi của một điều kiện trong
quá trình. Như là một điều kiện về mực nước của thùng chứa. Trong ví
dụ này, một điều kiện thay đổi có thể xảy ra khi một mức độ nào đó
vượt quá hay giảm dưới mức tối thiểu. Nhiều alarm bao gồm các yêu
cầu mà các alarm phải được nhận biết. Sự nhận biết này là có thể nhờ
thông qua OPC Alarms & Events (OPC A&E) Interfaces. Do đó OPC
A&E cung cấp một giao diện linh hoạt để truyền Alarms quá trình và
các Events từ các nguồn khác nhau.
1.4.6. Đặc tả OPC Security
Tất cả các máy chủ OPC đều cung cấp dữ liệu có giá trị của nhà máy
mà nếu không được quản lý chặt chẽ đều có thể mang lại hậu quả đáng
tiếc. OPC Security sẽ định nghĩa cách thức truy nhập của client vào
máy chủ theo một phương thức nhằm bảo vệ các dữ liệu đó và ngăn cản
mọi hành động không được phép [46].
1.4.7. Đặc tả OPC Batch
OPC Batch ứng dụng triết lý OPC và các quá trình ứng dụng cụ thể có
tính chất theo lô [1].
1.5. Đặc tả OPC UA (Unified Architecture)
OPC UA [64] là chuẩn mới ra đời năm 2006, nhằm khắc phục những
điểm còn hạn chế của các đặc tả cũ của OPC. Mục tiêu của OPC UA là
để việc kết nối các thiết bị phần cứng không còn phải phụ thuộc vào
nền tảng hay công nghệ do nhà sản xuất sử dụng. Với chuẩn chung này,
việc kết nối hoàn toàn tự động, giảm được chi phí triển khai và thời
gian thực hiện: (1) Cách truy cập dữ liệu duy nhất đối với dữ liệu thời
gian thực, dữ liệu quá khứ và sự kiện: Trong OPC UA, không có sự
phân biệt giữa các loại thông tin kể trên, tất cả đều được mô tả dưới
dạng nút trong không gian địa chỉ. (2) Sự đảm bảo và đáng tinh cậy nhờ
thành công của chuẩn OPC trong quá khứ. (3) Khả năng truy cập đến
9
dữ liệu vượt qua tường lửa và qua mạng internet nhờ sử dụng chuẩn
Web Service. (4) Tạo ra sự thống nhất chung giữa các hãng phần cứng
nhờ một mô hình thông tin (information model) duy nhất. (5) Thống
nhất mô mô hình bảo mật dữ liệu duy nhất giữa các hãng thông qua cơ
chế chuẩn certificate (giấy chứng thực). (6) Một giải pháp có thể sử
dụng ngay trên những phần mềm nhúng, cho đến những hệ thống quản
lý doanh nghiệp. (7) Độc lập với các nền tảng khác nhau như Windows,
Linux, Mac. (8) Có nhiều lựa chọn cho việc truyền các bản tin: mã nhị
phân cho các ứng dụng đòi hỏi cao về hiệu suất, và XML cho những hệ
thống quản lý. (9) Tuy phức tạp, nhưng OPC UA có thể đóng gói tất cả
trong SDK, và điều đó tiết kiệm rất nhiều chi phí phát triển.
1.5.1. Mô hình Client – Server của OPC UA
OPC UA sử dụng một khái niệm client-server tương tự như OPC cổ
điển. Tuy nhiên sự khác biệt là có thể có nhiều UA server cũng như UA
client trong hệ thống. Một lý do là nhiều UA server sẽ được tích hợp
trực tiếp vào thiết bị. Một lý do khác là UA client cũng có thể là UA
server nhờ việc cấu hình thông qua OPC UA [4]. OPC UA không giới
hạn các ngôn ngữ lập trình và nền tảng phát triển, nhưng chỉ những môi
trường hiện đang được sử dụng để thực hiện OPC Foundation UA
Stack. Một ứng dụng OPC UA là một hệ thống truyền và nhận dữ liệu
thông qua OPC UA. Nó chứa các chức năng cụ thể cho các ứng dụng
và cách ánh xạ các chức năng này vào OPC UA bằng cách sử dụng
OPC UA Stack và OPC UA Software Development Kit (SDK). OPC
UA client hoặc server SDK thực hiện chung một chức năng là một
phần của lớp ứng dụng.
1.5. Phân tích và đánh giá các công trình liên quan
1.5.1. Hệ thống KSC
Eppler [8] đã đề xuất một vài tiêu chí cho việc xây dựng các ứng dụng
điều khiển để truyền tải dữ liệu một cách hiệu quả dựa trên giao thức
SOAP và hệ thống này dựa trên công nghệ XML. Hiện nay, công nghệ
này vẫn còn một số hạn chế ví dụ như việc sử dụng XQuery để tìm
kiếm trong các cơ sở dữ liệu tầm trung và lớn hiện nay còn chưa đạt
hiệu quả cao do việc tiêu thụ tài nguyên hệ thống quá lớn (CPU, bộ
nhớ).
1.5.2. Hệ thống OPC-EWS
Jia và Li [16] đã thiết kế một web server nhúng trên OPC XML-DA
dùng trong các hệ thống điều khiển tiến trình ví dụ như Distributed
10
Control Systems (DCSs). Tuy nhiên, thiết kế này chỉ phù hợp với các
mô hình nhỏ.
1.5.3. Giao thức trao đổi dữ liệu (Data Exchange Protocol)
Chilingaryan và Eppler [19] đã phát triển một giao thức trao dổi dữ liệu
trên nhiều nền tảng với hiệu năng cao. Tuy nhiên, giải pháp này không
được mô tả rõ ràng về mặt kiến trúc và hơn nữa hiệu năng của nó chưa
được đánh giá đầy đủ.
1.5.4. XML-DA Server nhúng (Embedded XML-DA Server)
Usami [32] đã phát triển một server nhúng XML-DA cho controller (bộ
điều khiển) của họ, server này vừa có thể nhận và gửi dữ liệu thay vì
chỉ là một thiết bị trường. Tuy nhiên kết quả cho thấy rằng nó cũng chỉ
phù hợp cho môi trường nhỏ, cũng được đánh giá là là khó triển khai
cũng như khả năng tái sử dụng là không cao, và đi kèm là sự khó khăn
khi triển khai trên môi trường internet.
1.5.5. SOCRADES, SIRENA và SODA
Souza đã giới thiệu một kiến trúc cho hệ thống dựa trên web service
(SOCRADES) – một kiến trúc được cho là bước tiến mới trong tương
lai cho các hệ thống tự động trong công nghiệp. Tuy nhiên, giải pháp
này chưa cung cấp một kiến trúc tổng thể để kiểm soát vòng đời của
một thiết bị. Kiến trúc căn bản của SIRENA là DPWS (Device profile
for web service) đang có một vai trò chính trong hệ điều hành Windows
[27]. Hiện nay, các kết quả của SIRENA và SODA đang được ứng
dụng trong dự án SOCRADES.
1.6. Cách tiếp cận và nhiệm vụ của luận án
OPC UA mới cung cấp các yêu cầu để xây dựng một hệ thống giám sát
và điều khiển tự động hóa trong công nghiệp. Từ những đặc tả (các yêu
cầu ban đầu), tác giả nghiên cứu, phát triển vào xây dựng một bộ công
cụ - SDK (OPC UA Client-Server SDK) giám sát và điều khiển hệ
thống tự động hóa trong công nghiệp. Vì hiện nay, ở Việt Nam trong
lĩnh vực xây dựng hệ thống giám sát và điều khiển tự động hóa trong
công nghiệp chưa có bất kỳ một công ty hay tập đoàn nào áp dụng OPC
UA vào xây dựng phần mềm giám sát vào điều khiển tự động hóa. Tác
giả có khảo sát thì ở Châu Á mới có 2 nước là Nhật Bản, Hàn Quốc
phát triển, xây dựng được hệ thống này nhưng vẫn là áp dụng OPC cổ
điển, còn lại mới chỉ dừng lại ở việc mua các sản phẩm trọn gói của các
hãng lớn ở nước ngoài về sử dụng trong đó hãng có uy tín nhất là ABB
với gói phần mềm Indutrial IT. Trên thế giới, OPC UA vẫn là một
chuẩn mới chưa hoàn thiện, chưa có sản phẩm chính thức, chỉ là các
11
sản phẩm Demo. Từ đó, luận án sẽ đề xuất một mô hình khoa học để
xây dựng phần mềm giám sát và điều khiển hệ thống trong công nghiệp
dưới dạng mã nguồn mở, áp dụng vào quy trình sản xuất tự động hóa
trong nhà máy, xí nghiệp. Luận án sẽ thực hiện các nhiệm vụ sau: (1)
Nghiên cứu các đặc tả về OPC và phiên bản nâng cấp OPC UA được tổ
chức OPC Foundation đưa ra vào năm 2006, những điểm mới của OPC
UA so với OPC cũ, lợi ích mang lại khi áp dụng OPC UA trong công
nghiệp ở Việt Nam. Nghiên cứu các hệ thống giám sát và điều khiển
trong công nghiệp đang tồn tại và phát triển trên thế giới và trong nước.
(2) Từ những nghiên cứu trên và nghiên cứu các hệ thống điều khiển
giám sát thực tế. Xây dựng bộ công cụ OPC UA Client-Server SDK
dùng cho phát triển phần mềm giám sát và điều khiển thiết bị tự động
hóa. (3) Từ hệ thống đã đề xuất và phát triển, ba bài toán giám sát và
điều khiển hệ thống đã được áp dụng để minh họa và đánh giá khả năng
của bộ công cụ OPC UA Client-Server SDK đề xuất.
Kết luận chương 1
Trong chương 1 đã trình bày tổng quan về hệ thống giám sát và điều
khiển trong công nghiệp, cũng như các công nghệ liên quan như OPC,
XML, SOA. Kết hợp với sự phân tích các công trình đã được công bố
trên thế giới, những hạn chế của các công trình này được tóm lược. Để
khắc phục những vấn đề còn tồn đọng như: chạy trên môi trường đa
nền tảng (multi-platform), hiệu năng cao, có tính bảo mật, có sự liên
kết giữa dữ liệu, các cảnh báo và sự kiện. Từ đó nhu cầu cấp thiết và
mục đích của nghiên cứu này là đề xuất, đưa ra lý do cần xây dựng một
bộ công cụ OPC UA Client-Server SDK ứng dụng vào các hệ thống
giám sát và điều khiển trong tự động hóa công nghiệp. Chương 2 sẽ
trình bày kiến trúc của bộ công cụ đề xuất OPC UA Client-Server SDK
dựa trên đặc tả OPC UA.
CHƯƠNG 2. XÂY DỰNG BỘ CÔNG CỤ OPC UA CLIENT-
SERVER SDK CHO HỆ THỐNG GIÁM SÁT VÀ ĐIỀU KHIỂN
2.1. Xây dựng bộ công cụ OPC UA Client-Server SDK
Nghiên cứu này định hướng xây dựng một OPC UA Client-Server SDK
tuân theo những đặc tả của OPC Foundation và viết ứng dụng để minh
họa những chức năng đã được hỗ trợ trong SDK. Từ đó, sử dụng OPC
UA Client-Server SDK (hình 2.1) trong 3 bài toán giám sát và điều
khiển: (1) hệ thống quan trắc môi trường; (2) hệ thống điều hòa nhiệt
12
độ; (3) hệ thống điều khiển quá trình trong công nghiệp để minh chứng
cho tính thực tế và hiệu quả của chuẩn OPC UA.
Bộ công cụ OPC UA Client-Server SDK cần có những chức năng
chính sau: Bảo mật kết nối. Quản lý phiên làm việc, đặt timeout cho
phiên làm việc. Quản lý và cho phép truy cập không gian địa chỉ. Quản
lý các đăng ký theo dõi dữ liệu (subscription). Các chức năng hỗ trợ:
Logging, bắt ngoại lệ (exception handling)…
Các chức năng cần có ở OPC UA client trong SDK: Kết nối với
server viết bởi cùng SDK. Quản lý kết nối và phiên làm việc. Truy
nhập, thao tác với không gian địa chỉ. Sử dụng chứng nhận (certificate)
trong bảo mật.
Các chức năng cần có ở OPC UA server trong SDK: Cho phép client
kết nối và sử dụng các chứng nhận trong kết nối. Quản lý các phiên làm
việc của client. Quản lý các đăng ký theo dõi thông tin nút
(subscription). Quản lý nút và thuộc tính. Kết nối với tầng thiết bị.
Hình 2.1. Mô hình của bộ công cụ OPC UA Client-Server SDK
Bước xây dựng chi tiết của bộ công cụ OPC UA Client-Server
SDK: Khi xây dựng OPC UA Client SDK, tác giả sử dụng phương
pháp phân tích, thiết kế hướng đối tượng, ngôn ngữ sử dụng là C#.
13
Thành phần của OPC UA Client SDK gồm các lớp: (1) Discovery
Component – Với chức năng cung cấp truy nhập vào các thiết bị đầu
cuối của server. (2) Session Manager – Đại diện cho một kết nối giữa
client và một server. (3) Subscription Manager – Đại diện cho một đăng
ký của client với server. (4) Model Manager – Cung cấp cách thức truy
nhập vào server thông qua ánh xạ đối tượng. (5) Monitoring Manager -
Để đăng ký theo dõi dữ liệu và sự kiện của một nút trong không gian
địa chỉ. (6) ApplicationInstance – Quản lý cấu hình ứng dụng. (7)
Cache Manager – Duy trì bộ nhớ cache trong không gian địa chỉ của
server.
Khi xây dựng OPC UA Server SDK, tác giả sử dụng phương pháp
phân tích, thiết kế hướng đối tượng, ngôn ngữ sử dụng là C#. Thành
phần của OPC UA Server SDK gồm các lớp: (1) ServerBase – Là lớp
mô hình hóa các hoạt động của server, người phát triển có thể kế thừa
lớp này để xây dựng ứng dụng. (2) IServerInternalData – Đây là giao
diện của server, đưa ra các dịch vụ cho client sử dụng. (3) ServiceHost
– Dùng để tạo điểm đầu và điểm cuối cho dịch vụ. (4)
MasterNodeManager và INodeManager – Lớp này thực thi tất cả các
dịch vụ liên quan đến truy nhập không gian địa chỉ. (5)
CoreNodeManager – Lớp này thực thi giao diện INodeManager. (6)
SessionManager – Thực thi những nhiệm vụ liên quan đến phiên làm
việc như khởi tạo, kích hoạt, đóng phiền làm việc. (7) Session – Là một
phiên làm việc của client và server. (8) SubscriptionManager – Quản lý
các đăng ký, thu thập thông tin và theo dõi thông tin. (9)
SessionPublicQueue – Là một hàng đợi của các Subcription trong một
phiên làm việc. (10) Subcription – Đây là một đăng ký thu thập thông
tin của một nút. (11) MonitoredItem – Theo dõi một nút để lấy dữ liệu.
2.2. Giải pháp về bảo mật cho hệ thống
Hiện nay, OPC UA cho hệ thống giám sát điều khiển sử dụng cơ sở
truyền thông tuân thủ theo XML, web services và SOA. Chính vì vậy
để đảm bảo tính bảo mật cho hệ thống ta có thể sử dụng chữ ký XML.
Có hai phương pháp có thể sử dụng đó là khóa công khai và khóa bí
mật. Trong luận án này tác giả đã sử dụng phương pháp khóa công khai
RSA với độ lớn khóa là 1024 bit và 2048 bit. Khi OPC UA Client SDK
gửi yêu cầu kích hoạt phiên làm việc thì OPC UA Server SDK cần xác
thực các thông tin sau: chứng thực của client và chứng thực thông tin
người dùng. Điều này không được định nghĩa sẵn trong SDK mà phụ
14
thuộc vào người phát triển ứng dụng. Vì thế, OPC UA Client-Server
SDK đưa ra giao diện ISercurityHelper và lớp trừu tượng
SercurityHelperBase. Khi xây dựng OPC UA Client-Server SDK, tác
giả muốn cung cấp sự linh hoạt cho người dùng SDK, vì vậy người
phát triển ứng dụng có thể tự định nghĩa một lớp kế thừa từ
SercurityHelperBase và xác thực theo cách của họ. Sau khi xác nhận
các thông tin là hợp lệ, OPC UA Server SDK sẽ kích hoạt phiên làm
việc. Kể từ lúc này, OPC UA Client và OPC UA Server SDK có thể
trao đổi các thông tin của hệ thống [65]. Khi OPC UA Client SDK kết
nối đến server. Server sẽ gửi yêu cầu xác nhận cho client. Client tạo ra
một giấy chứng nhận [2] và mã hóa bằng khóa công khai của server và
gửi cho server, server sẽ xác nhận OPC UA client SDK. Thông điệp
này sẽ được giải mã bởi khóa riêng của OPC UA server SDK, và chữ
ký số sẽ được xác minh bởi khóa công khai của OPC UA client SDK.
Nếu thông điệp đáng tin cậy, OPC UA server SDK sẽ gửi lại đáp ứng
yêu cầu kết nối. Client sẽ lưu lại giấy chứng nhận và lần sau không cần
tạo lại.
Kết luận chương 2
Chương 2 đề xuất và xây dựng, phát triển bộ công cụ OPC UA Client-
Server SDK và mô hình kiến trúc hệ thống giám sát và điều khiển trong
công nghiệp. Bộ công cụ OPC UA Client-Server SDK được phát triển
độc lập với nền tảng và ngôn ngữ lập trình. Chúng có thể do các nhà
cung cấp khác nhau, sử dụng các công cụ lập trình, ngôn ngữ lập trình,
nền tảng khác nhau. Nhưng Client vẫn có thể sử dụng các dịch vụ mà
Server cung cấp. Trong đó, dữ liệu được thu thập từ các thiết bị phần
cứng lên Server, nơi cung cấp các dịch vụ cho Client. Client cung cấp
giao diện giao tiếp cho người dùng. Qua Client người dùng có thể gửi
các yêu cầu đến Server. Do vậy, chương 2 trình bày nghiên cứu và phát
triển các thành phần của bộ công cụ OPC UA Client-Server SDK dựa
trên các đặc tả mới nhất OPC UA, SOA, webservices, XML. Nó sẽ
giúp các nhà phát triển và lập trình tiết kiệm được thời gian, chi phí cho
việc phát triển các ứng dụng phần mềm trong công nghiệp, đặc biệt là
các hệ thống giám sát và điều khiển.
CHƯƠNG 3. ỨNG DỤNG BỘ CÔNG CỤ OPC UA CLIENT-
SERVER SDK CHO BÀI TOÁN GIÁM SÁT VÀ ĐIỀU KHIỂN
3.1. Bài toán 1: Ứng dụng bộ công cụ OPC UA Client-Server SDK
trong hệ thống quan trắc môi trường [42]
15
Ô nhiễm môi trường đang là mối quan tâm lớn của mọi người vì ảnh
hưởng trực tiếp đến đời sống hàng ngày. Từ thực tế đó, nghiên cứu này
trình bày một hệ thống quan trắc môi trường từ xa dựa trên nền tảng
công nghệ 2,5G – 3G với các thông số môi trường nước bề mặt được
đo tại các địa điểm có khả năng gây ra ô nhiễm môi trường và dữ liệu
được gửi lên trung tâm để lưu trữ, phân tích và đưa ra những biện pháp
cơ bản để cải thiện môi trường.
3.1.1. Ứng dụng cho hệ thống quan trắc môi trường
Thiết bị đo gắn tại sông hồ ở địa phương sẽ đo thông số nước liên tục
và gửi dữ liệu về server trung tâm. Phần mềm trạm theo dõi tại địa
phương yêu cầu server trung tâm gửi các dữ liệu mới nhất, vẽ đồ thị dữ
liệu thời gian thực để người quản lý có thể theo dõi. Phần mềm có khả
năng cảnh báo nếu có đột biến về thông số để người quản lý có các biện
pháp xử lý kịp thời.
3.1.1.1. Phần cứng của hệ thống EMA
Cảm biến pH (Hana, HI1230), cảm biến DO (Hana, HI76409), cảm
biến độ dẫn, cảm biến ánh sáng là IC photodiode (OPT101), độ đục,
cảm biến đo độ đục, cảm biến đo độ sâu, cảm biến áp suất là
MPXV7035, cảm biến nhiệt độ là LM35. Vi điều khiển ATmega128,
SIM là SIM548C.
3.1.1.2. Ứng dụng bộ công cụ đề xuất vào bài toán 1
Hình 3.1 bao gồm 2 phần: phía trên là OPC UA Server SDK, phần dưới
kế thừa bộ công cụ đã xây dựng ở chương 2 để phát triển ứng dụng của
OPC UA server trong hệ thống quan trắc môi trường. Trong đó,
EMAControllerType lưu trữ thông tin các thiết bị và có chức năng điều
khiển thiết bị (Báo cáo). Ngoài ra, ControllerEventType làm nhiệm vụ
cảnh báo khi có sự cố bất thường ở hệ thống.
16
Hình 3.4. Cách xây dựng controller trong ứng dụng bài toán 1
3.1.2. Kết quả thực nghiệm
Hệ thống EMA cung cấp chức năng cho việc thực hiện đo các thông số
bao gồm độ gồm pH, DO, ORP, nhiệt độ, độ dẫn, độ đục, độ sâu và ánh
sáng Những thông tin này được gửi tới OPC UA server và sau đó
được thể hiện tại OPC UA client. Kết quả thực nghiệm chứng minh khả
năng của bộ công cụ OPC UA Client-Server SDK đã được đề xuất cho
việc phát triển ứng dụng cụ thể trong việc giám sát và điều khiển.
3.2. Bài toán 2: Ứng dụng bộ công cụ OPC UA Client-Server SDK
cho hệ thống giám sát và điều khiển hệ thống điều hòa [43]
3.2.1. Modbus
Giao thức Modbus là một cấu trúc truyền thông điệp được phát triển
bởi Modicon năm 1979 được sử dụng để thiết lập giao tiếp master-
slave/client-server giữa những thiết bị thông minh [39].
3.2.2. Thiết kế kiến trúc phần mềm theo chuẩn OPC UA Client-
Server SDK kết nối giao thức theo chuẩn Modbus
3.2.2.1. Kết nối thiết bị với OPC UA server thông qua Modbus
17
OPC UA Server: Dựa trên kiến trúc OPC UA client-server, nghiên
cứu này hướng tới mục tiêu triển khai thành công kiến trúc OPC server-
client. Trong đó, OPC Server kiểm tra trạng thái về nhiệt độ, độ ẩm, sự
tương tác với các thiết bị sử dụng Modbus thông qua điều kiện nhiệt độ
để thực hiện hoạt động điều khiển (OPC Server kết nối đến thiết bị
Sensor dùng Modbus của thiết bị điều hòa nhiệt độ…). OPC UA Server
dùng các hàm chức năng để thực hiện việc truy vấn dữ liệu từ các
Sensors này để đưa ra các điều kiện về nhiệt độ, độ ẩm của môi trường
theo chuẩn Modbus. OPC UA Client: OPC Client kết nối tới server để
giám sát các thông số của thiết bị đồng thời kiểm tra OPC Server và gọi
các phương thức cho phép trên không gian địa chỉ. Người quản lí OPC
Client chịu trách nhiệm theo dõi các hoạt động của hệ thống cũng như
đưa ra các quyết định bật, tắt hay điều khiển nhiệt độ, độ ẩm trong tòa
nhà. Bảng điều khiển được hiện lên thông qua client. OPC UA Client
được thiết kế để giám sát một hoặc nhiều thiết bị điều hòa nhiệt độ
trong hệ thống Modbus, đặt giá trị nhiệt độ, độ ẩm cũng như gọi các
phương thức trên Server được cung cấp bởi OPC Server thông qua các
dịch vụ. Sự phát triển của hệ thống bao gồm 2 chức năng: Chức năng
giám sát: dùng để giám sát nhiệt độ, độ ẩm và thời gian hoạt động,
lượng điện tiêu thụ, trạng thái bật tắt và định mức nhiệt độ, độ ẩm của
các thiết bị điều hòa nhiệt độ trong tòa nhà. Chức năng quản lý: quản
lý nhiệt độ, độ ẩm để thay đổi sao cho phù hợp với yêu cầu và nhiệt độ
môi trường; để tắt, bật các thiết bị điều hòa nhiệt độ.
3.2.2.2. Ứng dụng OPC UA Client-Server SDK vào bài toán 2
Hình 3.2 bao gồm 2 phần: phía trên là OPC UA Server SDK, phần dưới
kế thừa bộ công cụ đã xây dựng ở chương 2 để phát triển ứng dụng của
OPC UA server trong hệ thống điều hòa nhiệt độ. Trong đó,
AirConditionerControllerType lưu trữ thông tin các thiết bị và có chức
năng điều khiển thiết bị (Bật, tắt, Trạng thái). Ngoài ra,
ControllerEventType làm nhiệm vụ cảnh báo khi có sự cố bất thường
về nhiệt độ ở hệ thống.
18
Hình 3.10. Cách xây dựng controller trong ứng dụng bài toán số 2
3.2.2.3. Kết quả thực nghiệm
Hệ thống được triển khai trên mô hình hoàn chỉnh OPC UA Server và
OPC UA Client kết nối với thiết bị Modbus, ở đây là các sensors của
thiết bị điều hòa nhiệt độ. Truyền thông với modbus qua RS485 và với
Client qua giao thức TCP/IP. Giao diện trên OPC UA Client của hệ
thống để hiển thị thông tin về nhiệt độ, độ ẩm được tải từ Sensor
thông qua OPC UA Server và giao thức Modbus. Hệ thống được thiết
kế để giám sát các thiết bị điều hòa nhiệt độ trong một tòa nhà hoặc xí
nghiệp. Các thiết bị tầng dưới giao tiếp theo chuẩn Modbus với OPC
Server, đưa ra các thông tin về nhiệt độ, độ ẩm và trạng thái của thiết bị
điều hòa nhiệt độ, từ đó người giám sát có thể ra quyết định thích hợp
để điều chỉnh nhiệt độ hoặc tắt mở các thiết bị từ xa mà không cần
tương tác vật lý trực tiếp với thiết bị. Hệ thống có thể mở rộng với đa
số các thiết bị sử dụng giao thức Modbus hiện nay. Nghiên cứu đã
thành công trong việc thiết kế ra một Modbus Master hoàn chỉnh để kết
nối với các thiết bị chuẩn Modbus, thành công trong việc thu thập các
thông tin từ các thiết bị Modbus Slaves bao gồm các thông số của
19
Sensor và hỗ trợ chức năng điều khiển thiết bị. Mô hình OPC Client-
Server kết nối thành công với các thiết bị chuẩn Modbus sẽ phát triển
kiến trúc OPC UA và sự tác động của nó đối với nền công nghiệp và có
thể được mở rộng đối với các thiết bị sử dụng giao thức Modbus hay
chuẩn công nghiệp.
Kết luận chương 3
Chương 3 minh họa việc phát triển hệ thống đề xuất cho hai bài toán
ứng dụng trong việc: (1) Với hệ thống quan trắc môi trường OPC
UA Server cung cấp các thông tin về môi trường nước như pH, DO,
ORP, nhiệt độ, độ dẫn, độ đục, độ sâu và ánh sáng. OPC UA Client thể
hiện các thông số ở dạng đồ thị nhằm cung cấp cho người vận hành
cách nhìn trực quan. Bằng việc sử dụng hệ thống đã đề xuất chúng ta có
những lợi ích sau: Mô hình không gian địa chỉ linh hoạt, sẵn sàng cho
việc bổ sung thêm các cảm biến mới. Việc cập nhật dữ liệu được tối ưu,
nhiều loại thông tin như thông tin số đo, các cảnh báo đều có thể được
gửi cùng trong một gói tin cập nhật. Sử dụng lại các dịch vụ và cơ chế
bảo mật đã phát triển trong bộ công cụ OPC UA Client-Server SDK
một cách hiệu quả. (2) Với hệ thống giám sát và điều khiển điều hòa
nhiệt độ dựa trên Modbus, hệ thống đã đề xuất minh chứng tính linh
hoạt và khả năng tái sử dụng cho nhiều hệ thống khác nhau trong công
nghiệp, dân sự. Mô hình hệ thống đề xuất OPC UA Client-Server SDK
kết nối tới thiết bị Modbus thành công chứng tỏ tính mềm dẻo và tương
thích với các chuẩn trong công nghiệp của OPC UA. Điều này giúp cho
các nhà phát triển phần mềm có thể mở rộng đối với các thiết bị sử
dụng giao thức Modbus nói riêng và các chuẩn công nghiệp khác như
DeviceNet, ControlNet, Fieldbus nói chung.
CHƯƠNG 4. ỨNG DỤNG BỘ CÔNG CỤ OPC UA CLIENT-
SERVER SDK VÀO HỆ THỐNG ĐIỀU KHIỂN QUÁ TRÌNH
TRONG CÔNG NGHIỆP
4.1. Mô hình thực nghiệm điều khiển quá trình trong công nghiệp
Trong quá trình khảo sát thực tế về tình hình áp dụng OPC tại Việt
Nam. Tác giả thấy rằng cần phải có một ứng dụng thực tế trong luận
án. Để giúp hiểu rõ hơn về OPC hoạt động trong công nghiệp như thế
nào. Được sự hỗ trợ của Viện kỹ thuật Điều khiển và Tự động hóa, tác
giả đã được cung cấp một mô hình thực nghiệm điều khiển quá trình
(điều khiển nước) [40, 41].
20
4.2. Ứng dụng bộ công cụ OPC UA Client-Server SDK vào hệ
thống giám sát và điều khiển quá trình trong công nghiệp [70]
Hình 4.2. Mô hình ứng dụng điều khiển quá trình
(i) Devices: Gồm các thiết bị giả lập là 3 sensor đại diện cho 3 đường
ống dẫn nước nóng lạnh và ấm để đo nhiệt độ và gửi lên cho server. (ii)
OPC UA Server: Là chương trình viết theo chuẩn OPC UA dựa trên bộ
công cụ OPC UA Client-Server SDK có nhiệm vụ nhận dữ liệu từ thiết
bị và trao đổi dữ liệu với OPC UA client. (iii) OPC UA Client: Là
chương trình viết theo chuẩn OPC UA dựa trên bộ công cụ OPC UA
Client-Server SDK có nhiệm vụ trao đổi dữ liệu với OPC UA server và
phát tín hiệu điều khiển thiết bị.
4.2.1. Sử dụng bộ công cụ OPC UA Client-Server SDK vào bài toán 3
Hình 4.2 bao gồm 2 phần: phía trên là OPC UA Server SDK, phần dưới
kế thừa bộ công cụ đã xây dựng ở chương 2 để phát triển ứng dụng của
OPC UA server trong hệ thống giám sát và điều khiển quá trình trong
công nghiệp. Trong đó, OngNuocConditionerControllerType và
BinhTronControllerType lưu trữ thông tin các thiết bị và có chức năng
điều khiển thiết bị. ControllerEventType làm nhiệm vụ cảnh báo khi có
sự cố bất thường về nhiệt độ và dung lượng ở hệ thống.
21
Hình 4.4. Cách xây dựng controller trong bài toán 3
4.2.2. Kết quả thực nghiệm
Hình 4.5. Giao diện mô hình hệ thống giám sát và điều khiển quá trình
22
Hệ thống được triển khai trên mô hình hoàn chỉnh OPC UA Server và
OPC UA Client kết nối với mô hình điều khiển quá trình trộn nước
trong công nghiệp. Trong đó, OPC UA Server kết nối với mô hình điều
khiển quá trình trộn nước trong công nghiệp sử dụng controller, chế độ
truyền TCP/IP, kết nối qua cổng Com 3 của controller. OPC UA server
kiểm tra trạng thái về nhiệt độ, thông lượng, dung lượng và tương tác
với các thiết bị thông qua controller để thực hiện hoạt động điều khiển.
OPC UA Client kết nối tới server để giám sát các thông số của thiết bị
đồng thời kiểm tra OPC UA server và gọi các phương thức cho phép
trên không gian địa chỉ. Người quản lý OPC UA client chịu trách
nhiệm theo dõi các hoạt động của hệ thống cũng như đưa ra các quyết
định bật, tắt hay điều khiển thông lượng của các đường ống. Bảng điều
khiển được hiện lên thông qua client. OPC UA client được thiết kế để
giám sát và điều khiển một hoặc nhiều mô hình điều khiển quá trình
trộn nước trong công nghiệp (xem hình 4.3).
Sau khi kết nối với server, cứ sau 5 giây client sẽ lấy dữ liệu của các
thiết bị từ server và hiển thị các thông số đó trên một giao diện mô hình
hệ thống như hình 4.3: Gồm có 5 đường ống: Đường ống 1 chứa dẫn
nước nóng từ bình nóng lạnh vào bình trộn. Đường ống 2 dẫn nước
lạnh từ bình chứa vào bình trộn. Đường ống 3 dẫn nước trộn từ bình
trộn trở lại bình chứa tạo thành chu trình khép kín. Đường ống 4 dẫn
nước từ bình chứa vào bình nóng lạnh. Đường ống 5 dùng trong trường
hợp xảy ra sự cố bình trộn đầy thì nước sẽ được dẫn vào bình chứa để
chống tràn nước ra ngoài. Trên mỗi đường ống 1, 2, 3 có một van để
đóng ngắt dòng nước, một van điều khiển thông lượng của dòng nước,
một cảm biến để đo nhiệt độ của dòng nước. Trên bình trộn có một cảm
biến nhiệt độ, và thước đo thể tích của bình, các thông số của bình trộn
sẽ được hiển thị trên các textbox tương ứng. Trong trường hợp nhiệt độ
hoặc dung lượng của bình chứa vượt quá một giá trị điều kiện (được
thiết lập ở server) thì server sẽ phát cảnh báo cho client. Client sau khi
nhận được cảnh báo sẽ báo hiệu cho người vận hành bằng các nhấp
nháy textbox ghi hiển thị số liệu tương ứng (textbox hiển thị thông số
nhiệt độ và dung lượng của bình trộn). Client cung cấp một bảng điều
khiển để người vận hành điều khiển các thiết bị phần cứng với các chức
năng như khóa, mở đường ống, thiết lập giá trị thông lượng cho đường
ống. Với hệ thống này, có thể mở rộng bài toán cho n mô hình điều
phối nước.
Kết luận chương 4
23
Dựa vào bộ công cụ OPC UA Client-Server SDK xây dựng ở chương
2, mang đến những lợi ích sau khi ứng dụng vào bài toán 3 như sau:
Mô hình không gian địa chỉ linh hoạt, sẵn sàng cho việc bổ sung thêm
các thiết bị mới. Việc cập nhật dữ liệu được tối ưu, nhiều loại thông tin,
các cảnh báo đều có thể được gửi cùng trong một gói tin cập nhật. Sử
dụng lại các dịch vụ có sẵn, cơ chế bảo mật có sẵn trong SDK.
KẾT LUẬN
Trên cơ sở tìm hiểu, nghiên cứu về đặc tả của OPC, đặc biệt là đặc tả
mới nhất OPC UA và các hệ thống giám sát, điều khiển trong công
nghiệp. Từ đó, luận án đã phát triển và xây dựng bộ công cụ OPC UA
Client-Server SDK. Cụ thể như sau:
1. Xây dựng bộ công cụ ứng dụng vào các bài toán giám sát và điều
khiển dựa trên OPC UA có tên là OPC UA Client-Server SDK. Các
thành phần của bộ công cụ OPC UA Client-Server SDK cho phép các
kiến trúc sư hệ thống, thiết kế, phát triển thêm các đặc tính mới cho gói
phần mềm của mình thay vì phát triển một loạt các Driver độc quyền
cho các thiết bị phần cứng.
2. Tính mềm dẻo và linh hoạt của bộ công cụ OPC UA Client-Server
SDK đề xuất đã được áp dụng vào ba bài toán:
Bài toán 1 – Quan trắc môi trường EMA: Với hệ thống quan trắc môi
trường OPC UA Server cung cấp các thông tin về môi trường nước như
pH, DO, ORP, nhiệt độ, độ dẫn, độ đục, độ sâu và ánh sáng. OPC UA
Client thể hiện các thông số ở dạng đồ thị nhằm cung cấp cho người
vận hành cách nhìn trực quan.
Bài toán 2 – Hệ thống giám sát và điều khiển điều hòa nhiệt độ dựa
trên Modbus, hệ thống đã đề xuất minh chứng tính linh hoạt và khả
năng tái sử dụng cho nhiều hệ thống khác nhau trong công nghiệp, dân
sự. Mô hình hệ thống đề xuất OPC UA Client-Server SDK kết nối tới
thiết bị Modbus thành công chứng tỏ tính mềm dẻo và tương thích với
các chuẩn trong công nghiệp của OPC UA. Điều này giúp cho các nhà
phát triển phần mềm có thể mở rộng đối với các thiết bị sử dụng giao
thức Modbus nói riêng và các chuẩn công nghiệp khác như DeviceNet,
ControlNet, Fieldbus nói chung.
Bài toán 3 – Hệ thống giám sát và điều khiển quá trình trong công
nghiệp: Hệ thống được triển khai trên mô hình hoàn chỉnh OPC UA
Server và OPC UA Client kết nối với mô hình điều khiển quá trình trộn
nước trong công nghiệp. OPC UA Server kết nối với Controller qua